/* BabySizeFinder site shell (31 Oct 2026): header, footer, page titles and palette from the new homepage design.
   Loaded after each page's own CSS. Calculator layout is untouched; its colours come from these tokens. */
:root{
  --navy:#0f2f63; --navy-2:#173a73; --coral:#f0294f; --coral-dark:#d91e43; --pink-tint:#fff4f6; --blue-tint:#f0f8ff;
  --ground:#fbfcfe; --surface:#ffffff; --ink:#0f2f63; --text:#2d4162; --muted:#4d5e79; --line:#e7ebf1; --line-soft:#eef1f6;
  --brand:#d91e43; --accent:#d91e43; --on-accent:#ffffff; --accent-soft:#fff4f6; --result:#fff4f6;
  --display:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --body:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --serif:Georgia,"Times New Roman",serif;
  --sh-bg:rgba(255,255,255,.97); --sh-shadow:0 12px 34px rgba(25,49,86,.08);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --navy:#e8eef9; --ground:#111a2b; --surface:#18233a; --ink:#eef2f9; --text:#d3dbe8; --muted:#b4c0d3; --line:#2c3a54; --line-soft:#24314a;
    --brand:#ff5a78; --accent:#ff7a92; --on-accent:#111a2b; --accent-soft:#3a1f2c; --result:#2a1f2c; --pink-tint:#2a1f2c;
    --sh-bg:rgba(17,26,43,.96); --sh-shadow:0 12px 34px rgba(0,0,0,.35);
  }
}
:root[data-theme="dark"]{
  --navy:#e8eef9; --ground:#111a2b; --surface:#18233a; --ink:#eef2f9; --text:#d3dbe8; --muted:#b4c0d3; --line:#2c3a54; --line-soft:#24314a;
  --brand:#ff5a78; --accent:#ff7a92; --on-accent:#111a2b; --accent-soft:#3a1f2c; --result:#2a1f2c; --pink-tint:#2a1f2c;
  --sh-bg:rgba(17,26,43,.96); --sh-shadow:0 12px 34px rgba(0,0,0,.35);
}
html,body{margin:0}
body{background:var(--ground);font-family:var(--body);padding:0!important}
/* the page wrapper keeps the side and bottom spacing the body used to give it */
body>.wrap{padding:18px 16px 40px;box-sizing:content-box}
@media (min-width:1072px){body>.wrap{padding-inline:0}}
/* page titles in the homepage's serif */
.hero h1,.wrap>header h1,main>h1,h1{font-family:var(--serif);letter-spacing:-.025em;color:var(--navy)}
.wrap>section>h2,.guide>h2,.faq>h2,section.seo>h2{font-family:var(--serif);letter-spacing:-.015em;color:var(--navy)}
/* 7 Nov 2026: one page-title size and one section-heading style on every inner page (the homepage and About heroes keep their own) */
body>.wrap h1{font-family:var(--serif);font-size:clamp(2rem,5vw,2.7rem);font-weight:700;line-height:1.1;letter-spacing:-.025em}
body>.wrap .ab-hero h1{font-size:clamp(2.1rem,5.4vw,3.3rem);line-height:1.04}
.wrap>section>h2,.wrap main>section>h2,.ksec>h2,.card.finder>h2,.card.brandfind>h2{font-family:var(--serif);font-size:1.45rem;font-weight:700;line-height:1.2;letter-spacing:-.015em;color:var(--navy)}

/* header */
.site-header,.site-header *,.site-footer,.site-footer *{box-sizing:border-box}
.site-header{position:sticky;top:0;z-index:50;background:var(--sh-bg);border-bottom:1px solid var(--line);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.sh-inner,.sf-inner{width:min(calc(100% - 48px),1180px);margin-inline:auto}
.sh-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:28px;position:relative}
.site-header a,.site-footer a{text-decoration:none;color:inherit}
.brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;white-space:nowrap}
.brand-mark{width:34px;height:34px;color:var(--coral);flex:0 0 auto;display:block}
.brand-text{font-size:27px;line-height:1;letter-spacing:-.035em;font-family:Inter,ui-sans-serif,-apple-system,"Segoe UI",sans-serif}
.brand-text .baby{color:var(--navy)}
.brand-text .sizefinder{color:var(--coral)}
.desktop-nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:650;color:var(--navy)}
.desktop-nav a{padding:25px 0 22px;position:relative}
.desktop-nav a:hover{color:var(--coral)}
.desktop-nav a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:13px;height:3px;border-radius:99px;background:var(--coral)}
.site-header a:focus-visible,.site-footer a:focus-visible{outline:3px solid rgba(240,41,79,.35);outline-offset:4px;border-radius:8px}
.menu-toggle,.hamburger,.mobile-menu{display:none}

/* footer */
.site-footer{display:block;width:100%;max-width:none;margin:28px 0 0;padding:24px 0 30px;background:var(--surface);border-top:1px solid var(--line);font-size:16px;line-height:1.5;color:var(--text);clear:both}
.sf-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:32px}
.footer-brand .brand-text{font-size:22px}
.footer-brand .brand-mark{width:29px;height:29px}
.tagline{margin:4px 0 0 39px;color:var(--muted);font-size:14px}
.footer-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 22px;color:var(--text);font-size:14px;font-weight:600}
.footer-nav a:hover{color:var(--coral)}
.footer-nav a[aria-current="page"]{color:var(--accent)}
.copyright{text-align:right;color:var(--muted);font-size:13px;line-height:1.45}
.pagenotes .fine{opacity:1!important}
[data-units] small{opacity:1!important}
[data-units][aria-pressed="false"] small{color:var(--muted)}
.pagenotes{font-size:.88rem;color:var(--muted);max-width:75ch;display:grid;gap:10px}

@media (max-width:1100px){.desktop-nav{gap:17px;font-size:13px}}
@media (max-width:980px){
  .sf-inner{grid-template-columns:1fr;text-align:center}
  .footer-brand{justify-self:center}
  .tagline{margin-left:0}
  .copyright{text-align:center}
}
@media (max-width:900px){
  .sh-inner{min-height:64px}
  .brand-text{font-size:24px}
  .brand-mark{width:31px;height:31px}
  .desktop-nav{display:none}
  .menu-toggle{display:block;position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .hamburger{display:grid;width:48px;height:48px;place-items:center;border-radius:12px;color:var(--navy);cursor:pointer}
  .hamburger span,.hamburger::before,.hamburger::after{content:"";width:26px;height:3px;background:currentColor;border-radius:3px;transition:.2s ease;grid-column:1;grid-row:1}
  .hamburger::before{transform:translateY(-8px)}
  .hamburger::after{transform:translateY(8px)}
  .menu-toggle:focus-visible+.hamburger{outline:3px solid rgba(240,41,79,.35)}
  .menu-toggle:checked+.hamburger span{opacity:0}
  .menu-toggle:checked+.hamburger::before{transform:rotate(45deg)}
  .menu-toggle:checked+.hamburger::after{transform:rotate(-45deg)}
  .mobile-menu{display:none;position:absolute;left:0;right:0;top:64px;z-index:60;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--sh-shadow);padding:10px}
  .menu-toggle:checked~.mobile-menu{display:grid}
  .mobile-menu a{padding:13px 14px;color:var(--navy);font-weight:700;border-radius:12px}
  .mobile-menu a:hover,.mobile-menu a[aria-current="page"]{background:var(--pink-tint);color:var(--coral)}
}
@media (max-width:760px){
  .sh-inner,.sf-inner{width:calc(100% - 28px)}
  .site-header{position:relative}
  .sf-inner{display:block}
  .footer-brand{display:inline-flex}
  .tagline{margin:5px 0 16px}
  .footer-nav{gap:10px 18px;justify-content:center;max-width:420px;margin-inline:auto}
  .copyright{margin-top:18px;text-align:center}
}
@media (max-width:390px){.sh-inner,.sf-inner{width:calc(100% - 24px)}}
@media (prefers-reduced-motion:reduce){.hamburger span,.hamburger::before,.hamburger::after{transition:none}}
