/*
Theme Name: Bed Stuy Kids
Theme URI: https://www.preschoolofbusiness.com
Author: Bed Stuy Kids, Inc.
Author URI: https://www.preschoolofbusiness.com
Description: Multi-page WordPress theme for Bed Stuy Kids, Inc. — Bed Stuy Kids Daycare (6 wks-2 yrs) and Preschool of Business (ages 2-5). Real pages, SEO metadata, ChildCare schema, and a lead-capturing tour form. Self-provisions its pages and menu on activation.
Version: 3.0.18
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
Text Domain: bedstuykids
*/

:root{
    --navy:#274374; --navy-2:#33518E; --navy-deep:#1C3156; --ink:#22304d;
    --apple-green:#6FBF44; --apple-orange:#E89B3C; --apple-red:#D64541;
    --peri:#6b78c2; --sky:#DCE9F7; --yellow:#f5c451;
    --cream:#F9F7F1; --white:#fff; --line:#E4E1D6;
    --radius:24px; --shadow:0 14px 40px rgba(34,48,77,.12);
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{font-family:'Outfit',-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;background:var(--cream);color:var(--ink);line-height:1.6}
  h1,h2,h3,h4{line-height:1.12;font-weight:800;letter-spacing:-.015em}
  img,svg{display:block;max-width:100%}
  a{color:inherit}
  button{font-family:inherit}

  .notice{background:#13213c;color:#fff;font-size:.82rem;text-align:center;padding:.52rem 1rem;letter-spacing:.01em}
  .notice b{color:#fff;background:rgba(245,196,81,.18);border:1px solid rgba(245,196,81,.38);border-radius:999px;padding:.08rem .42rem}

  header{position:sticky;top:0;z-index:50;background:rgba(255,253,247,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(34,48,77,.12);box-shadow:0 8px 26px rgba(34,48,77,.08)}
  .nav-wrap{max-width:1240px;margin:0 auto;display:flex;align-items:center;gap:.95rem;padding:.72rem 1.25rem;min-height:74px}
  .logo{display:flex;align-items:center;gap:.72rem;cursor:pointer;user-select:none;text-decoration:none;min-width:284px;flex:0 0 auto}
  .logo-mark{position:relative;display:block;width:118px;height:50px;flex:0 0 118px}
  .logo-crop{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 10px rgba(34,48,77,.18));transition:transform .22s ease}.logo:hover .logo-crop{transform:translateY(-2px)}
  .logo-mark-pob{width:54px;height:54px;flex-basis:54px;animation:logoSwitch .32s ease both}.logo-mark-pob .logo-crop{filter:drop-shadow(0 8px 10px rgba(34,48,77,.2))}.logo-mark-apples{animation:logoSwitch .32s ease both}@keyframes logoSwitch{from{opacity:.75;transform:translateY(-3px) scale(.96)}to{opacity:1;transform:none}}
  .logo-apple{position:absolute;bottom:2px;width:42px;height:42px;object-fit:contain;border-radius:0;filter:drop-shadow(0 7px 9px rgba(34,48,77,.18));transition:transform .22s ease}
  .logo-apple-green{left:0;transform:rotate(-7deg)}
  .logo-apple-orange{left:22px;z-index:2}
  .logo-apple-red{left:44px;transform:rotate(7deg)}
  .logo:hover .logo-apple-green{transform:translateY(-2px) rotate(-9deg)}
  .logo:hover .logo-apple-orange{transform:translateY(-4px)}
  .logo:hover .logo-apple-red{transform:translateY(-2px) rotate(9deg)}
  .logo-text{font-weight:900;font-size:1.02rem;line-height:1.05;color:var(--navy);letter-spacing:0}
  .logo-text small{display:block;font-weight:700;font-size:.64rem;color:#627096;letter-spacing:.04em;text-transform:uppercase;margin-top:.18rem}

  /* PROGRAM SWITCHER */
  .switcher{display:flex;background:#EDE9DD;border-radius:999px;padding:4px;margin-left:.1rem;border:1px solid rgba(34,48,77,.08)}
  .switcher a{border:none;background:transparent;text-decoration:none;font-weight:850;font-size:.84rem;padding:.5rem .9rem;border-radius:999px;cursor:pointer;color:#525b72;display:flex;align-items:center;gap:.38rem;transition:.18s;white-space:nowrap}
  .switcher a span{font-weight:750;font-size:.72rem;opacity:.82}
  .switcher a.on-daycare{background:var(--apple-green);color:#fff;box-shadow:0 5px 14px rgba(111,191,68,.32)}
  .switcher a.on-preschool{background:var(--navy);color:#fff;box-shadow:0 5px 14px rgba(39,67,116,.32)}

  nav{margin-left:auto;display:flex;align-items:center;gap:.18rem;flex-wrap:wrap}
  nav .navlink{background:none;text-decoration:none;border:none;font:inherit;font-weight:700;font-size:.88rem;color:var(--ink);padding:.52rem .66rem;border-radius:999px;cursor:pointer;transition:.15s}
  nav .navlink:hover{background:#EFEBDF}
  nav .navlink.active{background:var(--navy);color:#fff}
  .cta-btn{font:inherit;font-weight:850;font-size:.92rem;border:none;cursor:pointer;background:var(--yellow);color:#1c2540;padding:.62rem 1.15rem;border-radius:999px;box-shadow:0 6px 16px rgba(245,196,81,.35);transition:.15s;white-space:nowrap;position:relative;overflow:hidden;isolation:isolate}
  .cta-btn::after{content:"";position:absolute;top:-45%;bottom:-45%;left:-45%;width:34%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.48),transparent);transform:skewX(-22deg);opacity:.52;pointer-events:none;transition:transform .62s ease}.cta-btn:hover::after{transform:translateX(430%) skewX(-22deg)}
  .cta-btn:hover{transform:translateY(-2px)}
  .cta-btn.navy{background:var(--navy);color:#fff;box-shadow:0 6px 16px rgba(39,67,116,.35)}
  .cta-btn.green{background:var(--apple-green);color:#fff;box-shadow:0 6px 16px rgba(111,191,68,.35)}
  .cta-btn.red{background:var(--apple-red);color:#fff;box-shadow:0 6px 16px rgba(214,69,65,.35)}
  .cta-btn.ghost{background:transparent;box-shadow:none;border:2px solid currentColor}
  .book-hero .cta-btn.ghost,.navy-sec .cta-btn.ghost,.door.pob .cta-btn.ghost{color:#fff;border-color:rgba(255,255,255,.74);background:rgba(255,255,255,.08)}
  .book-hero .cta-btn.ghost:hover,.navy-sec .cta-btn.ghost:hover,.door.pob .cta-btn.ghost:hover{background:rgba(255,255,255,.16);border-color:#fff}

  @media(min-width:1121px){
    .nav-wrap{max-width:1380px;gap:.55rem;flex-wrap:nowrap}
    .logo{min-width:226px;gap:.55rem}
    .logo-mark{width:94px;flex-basis:94px}
    .logo-mark-pob{width:50px;height:50px;flex-basis:50px}
    .switcher a{font-size:.8rem;padding:.45rem .68rem}
    .switcher a span{font-size:.65rem}
    nav.site-nav{flex-wrap:nowrap;gap:.08rem;min-width:0}
    nav.site-nav .navlink{font-size:.82rem;padding:.48rem .48rem}
    nav.site-nav .cta-btn{font-size:.84rem;padding:.54rem .85rem;margin-left:.28rem}
  }

    @keyframes fadein{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
  .container{max-width:1220px;margin:0 auto;padding:0 1.2rem}
  section{padding:3.6rem 0}
  .kicker{display:inline-block;font-weight:800;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;background:var(--navy);color:#fff;padding:.32rem .9rem;border-radius:999px;margin-bottom:1rem}
  .kicker.green{background:var(--apple-green)}
  .kicker.red{background:var(--apple-red)}
  .kicker.sun{background:var(--yellow);color:var(--ink)}
  .kicker.peri{background:var(--peri)}
  .section-title{font-size:clamp(1.7rem,3.5vw,2.5rem);margin-bottom:.8rem;color:var(--navy-deep)}
  .lede{font-size:1.08rem;max-width:680px;color:#535b74}

  /* context banner on program pages */
  .context{display:flex;align-items:center;justify-content:center;gap:1rem;padding:.6rem 1rem;font-size:.85rem;font-weight:700;flex-wrap:wrap}
  .context.daycare{background:#EAF6E2;color:#3E7A22;border-bottom:2px solid var(--apple-green)}
  .context.preschool{background:var(--sky);color:var(--navy);border-bottom:2px solid var(--navy)}
  .context a{border:none;background:none;font:inherit;font-weight:800;cursor:pointer;text-decoration:underline;color:inherit}

  /* ============ HOME SPLIT HERO ============ */
  .split{display:grid;grid-template-columns:1fr 1fr;min-height:520px}
  .door{padding:3.5rem 3rem;text-decoration:none;color:inherit;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden;cursor:pointer;transition:.25s}
  .door:hover{filter:brightness(1.04)}
  .door.bsk{background:linear-gradient(170deg,#fff, #F1F7EA)}
  .door.pob{background:linear-gradient(160deg,var(--navy-2),var(--navy-deep));color:#fff}
  .door .tag{font-weight:800;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;margin-bottom:.8rem}
  .door.bsk .tag{color:var(--apple-green)}
  .door.pob .tag{color:#ffe27a;text-shadow:0 2px 8px rgba(0,0,0,.45)}
  .door h2{font-size:clamp(1.7rem,3vw,2.4rem)}
  .door p{margin:.7rem 0 1.3rem;max-width:420px;font-size:1rem}
  .door.bsk p{color:#535b74}
  .door.pob p{color:#dfe4f5}
  .door .img-wrap{margin:1.2rem 0 0}
  .door.bsk .img-wrap img{max-width:380px}
  .door.pob .img-wrap img{max-width:340px}.door.pob .door-book-art img{max-width:min(460px,100%);filter:drop-shadow(0 22px 26px rgba(0,0,0,.42))}.door.pob .door-joyful-art{display:block;width:min(520px,100%);border-radius:22px;overflow:hidden;background:#fbfaf5;border:1px solid rgba(255,255,255,.2);box-shadow:0 22px 34px rgba(0,0,0,.34)}.door.pob .door-joyful-art picture{display:block}.door.pob .door-joyful-art img{width:100%;max-width:none;aspect-ratio:16/9;object-fit:cover;object-position:center bottom;filter:none}
  .price-chip{display:inline-block;background:rgba(0,0,0,.06);border-radius:10px;padding:.3rem .75rem;font-weight:800;font-size:.82rem;margin-bottom:1rem}
  .door.pob .price-chip{background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.16)}
  .door .go{font-weight:900;font-size:1rem}
  .door.bsk .go{color:var(--apple-green)}
  .door.pob .go{color:#ffe27a;text-shadow:0 2px 8px rgba(0,0,0,.45)}


  /* rotating home program chooser */
  .program-fader{padding:0;background:var(--cream)}
  .fader-stage{position:relative;min-height:560px;overflow:hidden;background:#fff}
  .program-panel{position:absolute;inset:0;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);align-items:center;gap:2.2rem;text-decoration:none;color:inherit;padding:4rem max(3rem,calc((100vw - 1220px)/2 + 1.2rem));opacity:0;pointer-events:none;transform:scale(1.015);transition:opacity 1.2s ease,transform 1.2s ease;isolation:isolate}
  .program-panel::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(140deg,rgba(255,255,255,.98),rgba(249,247,241,.88) 48%,rgba(111,191,68,.12))}
  .program-panel.pob{color:#fff}
  .program-panel.pob::before{background:linear-gradient(140deg,var(--navy-2),var(--navy-deep) 58%,#152844)}
  .program-panel.active{opacity:1;pointer-events:auto;transform:none}
  .program-copy{max-width:600px;text-align:left}
  .program-panel .tag{display:inline-block;font-weight:900;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;border-radius:999px;padding:.34rem .82rem;margin-bottom:1rem}
  .program-panel.bsk .tag{background:var(--apple-green);color:#fff}
  .program-panel.pob .tag{background:var(--yellow);color:#1c2540;text-shadow:none}
  .program-panel h1{font-size:clamp(2.45rem,5vw,4.8rem);line-height:.98;margin:0 0 1rem;color:var(--navy-deep)}
  .program-panel.pob h1{color:#fff}
  .program-panel p{font-size:1.12rem;max-width:560px;margin:.75rem 0 1.35rem;color:#525b72}
  .program-panel.pob p{color:#dfe4f5}
  .program-panel .price-chip{margin:.1rem 0 .3rem}
  .program-panel.pob .price-chip{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.2);color:#fff}
  .program-panel .go{font-weight:950;font-size:1.02rem;color:var(--apple-green)}
  .program-panel.pob .go{color:#ffe27a;text-shadow:0 2px 8px rgba(0,0,0,.35)}
  .program-art{justify-self:center;display:flex;align-items:center;justify-content:center;width:100%}
  .program-apples{gap:1.2rem;align-items:flex-end}
  .program-apples img{width:clamp(92px,10vw,136px);filter:drop-shadow(0 18px 18px rgba(34,48,77,.18))}
  .program-apples img:nth-child(1){transform:rotate(-7deg)}
  .program-apples img:nth-child(3){transform:rotate(7deg)}
  .program-book-art img{width:min(560px,100%);filter:drop-shadow(0 28px 32px rgba(0,0,0,.38))}
  .program-fader-controls{position:absolute;left:max(3rem,calc((100vw - 1220px)/2 + 1.2rem));bottom:1.6rem;z-index:4;display:flex;gap:.5rem;background:rgba(255,255,255,.8);border:1px solid rgba(34,48,77,.12);border-radius:999px;padding:.36rem;box-shadow:0 12px 30px rgba(34,48,77,.12);backdrop-filter:blur(14px)}
  .program-fader-controls button{appearance:none;border:none;border-radius:999px;background:transparent;color:var(--navy-deep);font:inherit;font-size:.82rem;font-weight:950;padding:.55rem .95rem;cursor:pointer}
  .program-fader-controls button.active{background:var(--navy);color:#fff;box-shadow:0 8px 16px rgba(39,67,116,.22)}

  .age-strip{background:var(--yellow);padding:1.5rem 0;border-top:1px solid rgba(34,48,77,.14);border-bottom:1px solid rgba(34,48,77,.14)}
  .age-inner{max-width:1220px;margin:0 auto;padding:0 1.2rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:center}
  .age-inner b{font-size:1.05rem}
  .age-chip{border:none;background:#fff;text-decoration:none;color:var(--navy-deep);display:block;border-radius:999px;padding:.55rem 1.1rem;font-weight:800;font-size:.88rem;cursor:pointer;box-shadow:0 4px 10px rgba(34,48,77,.15);transition:.15s}
  .age-chip:hover{transform:translateY(-2px)}
  .age-chip small{display:block;font-weight:600;color:#8b8da8;font-size:.68rem}

  /* enrollment band */
  .enroll-band{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem;margin-top:2.2rem}
  .eb{border-radius:20px;padding:1.6rem;color:#fff}
  .eb:nth-child(1){background:var(--navy)}
  .eb:nth-child(2){background:var(--apple-green)}
  .eb:nth-child(3){background:var(--apple-red)}
  .eb b{display:block;font-size:1.08rem;margin-bottom:.3rem}
  .eb p{font-size:.88rem;opacity:.92}

  /* gallery */
  .gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem;margin-top:2.2rem}
  .moment{border-radius:20px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}
  .moment img{width:100%;aspect-ratio:4/3;object-fit:cover}
  .moment figcaption{padding:.8rem 1.1rem;font-weight:700;font-size:.88rem;color:var(--navy-deep)}

  /* features / pillars */
  .pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:1.3rem;margin-top:2.2rem}
  .pillars.three{grid-template-columns:repeat(3,1fr)}
  .pillar{border-radius:20px;padding:1.7rem;background:#fff;box-shadow:var(--shadow)}
  .pillar .emoji{font-size:1.8rem}
  .pillar h4{margin:.6rem 0 .4rem;font-size:1.08rem;color:var(--navy-deep)}
  .pillar p{font-size:.9rem;color:#535b74}
  .pillar.on-navy{background:rgba(255,255,255,.08);color:#fff;box-shadow:none;border:1px solid rgba(255,255,255,.16)}
  .pillar.on-navy h4{color:var(--yellow)}
  .pillar.on-navy p{color:#dfe4f5}

  /* detail rows */
  .detail{display:grid;grid-template-columns:230px 1fr;gap:1.8rem;border-radius:var(--radius);background:#fff;padding:2rem;margin-top:1.6rem;box-shadow:var(--shadow)}
  .detail .side{border-right:2px dashed var(--line);padding-right:1.6rem}
  .detail h3{font-size:1.3rem;color:var(--navy-deep)}
  .detail .ages{font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--peri);margin:.3rem 0 .8rem}
  .detail ul{list-style:none;margin-top:.8rem}
  .detail ul li{padding:.3rem 0 .3rem 1.7rem;position:relative;font-size:.94rem;color:#535b74}
  .detail ul li::before{content:"✓";position:absolute;left:0;color:var(--apple-green);font-weight:900}
  .pill2{display:inline-block;background:var(--cream);border:1.5px solid var(--line);border-radius:999px;padding:.3rem .8rem;font-weight:700;font-size:.78rem;margin:.15rem .15rem 0 0;color:var(--navy)}

  /* crew */
  .crew-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:1.6rem;margin-top:2.2rem;align-items:stretch}
  .crew-photo{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
  .crew-photo img{width:100%;height:100%;object-fit:cover}
  .crew-four{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}
  .mascot{background:#fff;border-radius:18px;box-shadow:var(--shadow);overflow:hidden;text-align:center}
  .mascot img{width:100%;aspect-ratio:3/2;object-fit:cover}
  .mascot .cap{padding:.7rem;font-weight:800;font-size:.88rem;color:var(--navy-deep)}
  .mascot .cap small{display:block;font-weight:600;color:#8b8da8;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase}

  /* timeline */
  .timeline{margin-top:2rem;border-left:3px solid rgba(255,255,255,.4);padding-left:1.6rem;max-width:660px}
  .tl-item{position:relative;padding-bottom:1.2rem}
  .tl-item::before{content:"";position:absolute;left:-2.05rem;top:.35rem;width:13px;height:13px;border-radius:50%;background:var(--yellow)}
  .tl-item b{display:block;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--yellow)}
  .tl-item span{color:#dfe4f5;font-size:.95rem}

  .band{background:linear-gradient(150deg,var(--navy-2),var(--navy-deep));color:#fff;border-radius:var(--radius);padding:3rem;text-align:center}
  .band.green{background:linear-gradient(150deg,var(--apple-green),#4E9427)}
  .band h2{font-size:clamp(1.6rem,3vw,2.3rem);color:var(--yellow);margin-bottom:.6rem}
  .band.green h2{color:#fff}
  .band p{color:#e8ecf8;max-width:600px;margin:0 auto 1.5rem}

  /* navy sections on preschool page */
  .navy-sec{background:linear-gradient(165deg,var(--navy-2),var(--navy-deep));color:#fff}
  .navy-sec .section-title{color:#fff}
  .navy-sec .lede{color:#dfe4f5}

  /* pricing cards (admissions) */
  .pricing{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;margin-top:2.2rem}
  .price-card{border-radius:var(--radius);background:#fff;box-shadow:var(--shadow);padding:2.2rem;border-top:8px solid var(--apple-green)}
  .price-card.pob{border-top-color:var(--navy)}
  .price-card .prog{font-weight:800;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--apple-green)}
  .price-card.pob .prog{color:var(--navy)}
  .price-card h3{font-size:1.4rem;margin:.3rem 0 .2rem;color:var(--navy-deep)}
  .price-card .big{font-size:2.6rem;font-weight:900;color:var(--navy-deep);margin:.6rem 0 .1rem}
  .price-card .big small{font-size:1rem;font-weight:700;color:#8b8da8}
  .price-card ul{list-style:none;margin:1rem 0 1.4rem}
  .price-card ul li{padding:.28rem 0 .28rem 1.7rem;position:relative;font-size:.93rem;color:#535b74}
  .price-card ul li::before{content:"✓";position:absolute;left:0;color:var(--apple-green);font-weight:900}

  .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2.3rem}
  .step{border-radius:var(--radius);padding:2rem 1.8rem 1.8rem;background:#fff;box-shadow:var(--shadow);position:relative}
  .step .num{position:absolute;top:-18px;left:1.5rem;width:38px;height:38px;border-radius:50%;background:var(--apple-red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900}
  .step:nth-child(2) .num{background:var(--apple-green)}
  .step:nth-child(3) .num{background:var(--navy)}
  .step h4{margin:.5rem 0 .4rem;color:var(--navy-deep)}
  .step p{font-size:.92rem;color:#535b74}

  .tour-form{border-radius:var(--radius);background:#fff;padding:2.3rem;margin-top:2.5rem;box-shadow:var(--shadow);max-width:700px;border-top:8px solid var(--yellow)}
  .tour-form .row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}
  .tour-form label{font-weight:700;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;display:block;margin-bottom:.3rem;color:var(--navy)}
  .tour-form input,.tour-form select,.tour-form textarea{width:100%;font:inherit;padding:.75rem .95rem;border:1.5px solid var(--line);border-radius:14px;background:var(--cream)}
  .form-note{font-size:.8rem;color:#8b8da8;margin-top:.8rem;font-style:italic}

  details{border-radius:16px;background:#fff;margin-top:.9rem;overflow:hidden;box-shadow:0 4px 16px rgba(34,48,77,.07)}
  summary{cursor:pointer;font-weight:700;padding:1rem 1.3rem;list-style:none;display:flex;justify-content:space-between;align-items:center;color:var(--navy-deep)}
  summary::after{content:"+";font-size:1.4rem;font-weight:900;color:var(--apple-red)}
  details[open] summary::after{content:"–"}
  details .answer{padding:0 1.3rem 1.2rem;color:#535b74;font-size:.95rem}

  .forms-list{list-style:none;margin-top:1.4rem;max-width:640px}
  .forms-list li{background:#fff;border-radius:14px;box-shadow:0 4px 16px rgba(34,48,77,.07);padding:.9rem 1.2rem;margin-bottom:.7rem;display:flex;gap:.8rem;align-items:center;font-weight:600;font-size:.95rem}
  .forms-list li::before{content:"📄"}

  .quote{border-radius:var(--radius);padding:2rem;background:#fff;box-shadow:var(--shadow);max-width:760px;margin-top:2rem}
  .quote .mark{font-size:3rem;color:var(--yellow);font-weight:900;line-height:.6;display:block;margin-bottom:.7rem}
  .quote p{font-size:1rem;color:#454c66}
  .quote .who{margin-top:1rem;font-weight:800;font-size:.8rem;color:var(--peri);letter-spacing:.05em;text-transform:uppercase}

  .team{display:grid;grid-template-columns:repeat(4,1fr);gap:1.3rem;margin-top:2.2rem}
  .member{text-align:center}
  .avatar{width:104px;height:104px;border-radius:50%;margin:0 auto .8rem;display:flex;align-items:center;justify-content:center;font-size:1.9rem;font-weight:900;color:#fff;box-shadow:var(--shadow)}
  .member h5{font-size:.96rem;color:var(--navy-deep)}
  .member span{font-size:.8rem;color:#8b8da8}

  .loc-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start;margin-top:2rem}
  .map-ph{border-radius:var(--radius);height:290px;background:repeating-linear-gradient(45deg,#EFEBDF 0 18px,#fff 18px 36px);display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--peri);box-shadow:var(--shadow)}
  .info-list{list-style:none;margin-top:.4rem}
  .info-list li{padding:.55rem 0;border-bottom:1.5px dashed var(--line);font-size:.97rem;color:#454c66}
  .info-list b{color:var(--navy)}

  .media-band{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;margin-top:2.2rem}
  .media-card{border-radius:var(--radius);padding:2rem;color:#fff;box-shadow:var(--shadow)}
  .media-card.song{background:linear-gradient(140deg,var(--apple-red),#A33330)}
  .media-card.tube{background:linear-gradient(140deg,var(--peri),#4d59a3)}
  .media-card h4{font-size:1.2rem;margin-bottom:.4rem}
  .media-card p{font-size:.92rem;opacity:.92;margin-bottom:1.2rem}

  footer{background:var(--navy-deep);color:#c6cde6;margin-top:4rem;border-top:6px solid var(--yellow)}
  .foot-grid{max-width:1220px;margin:0 auto;padding:3rem 1.2rem 2rem;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:2rem}
  footer h5{color:#fff;margin-bottom:.8rem;font-size:.95rem}
  footer a.flink{background:none;text-decoration:none;border:none;color:#c6cde6;font:inherit;font-size:.88rem;cursor:pointer;display:block;padding:.22rem 0}
  footer a.flink:hover{color:var(--yellow)}
  .foot-bottom{border-top:1px solid #31446e;text-align:center;font-size:.75rem;padding:1.1rem;color:#8fa0cc}
  .socials{display:flex;gap:.7rem;margin-top:.8rem;font-size:.85rem;font-weight:700;flex-wrap:wrap}
  .socials span{background:rgba(255,255,255,.1);padding:.3rem .8rem;border-radius:999px}

  .swap-note{font-size:.78rem;color:#8b8da8;font-style:italic;margin-top:.8rem}

  /* apple design elements */
  .apple-row{display:flex;align-items:flex-end;gap:1.6rem;margin-top:1.4rem}
  .apple-row img{width:92px;filter:drop-shadow(0 10px 14px rgba(34,48,77,.18));transition:.2s}
  .apple-row img:nth-child(1){transform:rotate(-7deg)}
  .apple-row img:nth-child(3){transform:rotate(7deg)}
  .door.bsk:hover .apple-row img{transform:translateY(-6px)}
  .bite-card{background:#fff;border-radius:24px;box-shadow:var(--shadow);padding:1.8rem 1.6rem;text-align:center}
  .bite-card h4{color:var(--navy-deep);font-size:1.05rem;margin-bottom:1.2rem}
  .bite-seq{display:flex;align-items:flex-end;justify-content:center;gap:.9rem}
  .bite-seq .stage{display:flex;flex-direction:column;align-items:center;gap:.5rem;flex:1;max-width:92px}
  .bite-seq img{width:100%;filter:drop-shadow(0 8px 10px rgba(34,48,77,.15))}
  .bite-seq .lbl{font-weight:800;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--apple-green)}
  .bite-card .bite-note{margin-top:1.2rem;font-size:.85rem;color:#535b74}
  .float-apple{position:absolute;width:70px;filter:drop-shadow(0 8px 10px rgba(34,48,77,.15));pointer-events:none}
  .apple-mini{width:34px;vertical-align:middle;filter:drop-shadow(0 4px 6px rgba(34,48,77,.2))}



  /* v3.0.12 media-led program chooser */
  .program-panel{grid-template-columns:minmax(0,.94fr) minmax(420px,1.06fr);gap:3rem}
  .program-panel.bsk::before{background:linear-gradient(90deg,#fff 0%,#fafcf6 46%,rgba(111,191,68,.2) 78%,rgba(111,191,68,.08) 100%)}
  .program-panel.pob::before{background:linear-gradient(90deg,var(--navy-2) 0%,var(--navy-deep) 47%,rgba(28,49,86,.88) 76%,rgba(28,49,86,.55) 100%)}
  .program-photo-art{justify-content:flex-end}
  .program-visual-frame{position:relative;display:block;width:min(650px,100%);border-radius:30px;overflow:hidden;background:#fff;box-shadow:0 26px 44px rgba(28,49,86,.22);border:1px solid rgba(255,255,255,.32)}
  .program-visual-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.16),transparent 38%);pointer-events:none}
  .program-photo{width:100%;aspect-ratio:4/3;object-fit:cover}
  .bsk-photo-art .program-photo{object-position:center 40%}
  .pob-photo-art .program-photo{object-position:center 43%}
  .corner-apples{position:absolute;right:.85rem;bottom:.85rem;z-index:3;display:flex;gap:.22rem;align-items:flex-end;border-radius:999px;background:rgba(255,255,255,.78);padding:.34rem .48rem;box-shadow:0 12px 24px rgba(34,48,77,.18);backdrop-filter:blur(10px)}
  .corner-apples img{width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 6px 8px rgba(34,48,77,.18))}
  .corner-apples img:nth-child(1){transform:rotate(-7deg)}
  .corner-apples img:nth-child(3){transform:rotate(7deg)}
  .program-logo-badge{position:absolute;right:.9rem;bottom:.9rem;z-index:3;width:104px;height:104px;border-radius:50%;overflow:hidden;background:#fff;box-shadow:0 16px 26px rgba(0,0,0,.24);border:4px solid rgba(255,255,255,.82)}
  .program-logo-badge img{width:100%;height:100%;object-fit:cover}
  .program-book-overlay{position:absolute;left:-1.2rem;bottom:-1.5rem;z-index:4;width:min(250px,44%);filter:drop-shadow(0 18px 22px rgba(0,0,0,.34))}

  .reviews-live{background:#fff;padding:3.8rem 0}
  .reviews-live-inner{display:grid;grid-template-columns:minmax(0,.86fr) minmax(320px,1fr);gap:1.6rem;align-items:center}
  .reviews-copy .cta-btn{margin-top:1.25rem}
  .review-card-live{border-radius:24px;background:linear-gradient(180deg,#fff,#f8f5ec);border:1.5px solid var(--line);box-shadow:var(--shadow);padding:2rem}
  .review-card-live .review-stars{display:block;color:var(--yellow);font-size:1.3rem;letter-spacing:.08em;margin-bottom:1rem}
  .review-card-live p{font-family:'Fraunces',Georgia,serif;font-size:clamp(1.24rem,2vw,1.72rem);font-style:italic;line-height:1.34;color:var(--navy-deep)}
  .review-card-live b{display:block;margin-top:1rem;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#858ca3}

  @media(max-width:900px){
    .split,.crew-grid,.pricing,.loc-grid,.media-band{grid-template-columns:1fr}
    .pillars,.pillars.three,.gallery,.steps,.enroll-band{grid-template-columns:1fr 1fr}
    .team,.crew-four{grid-template-columns:1fr 1fr}
    .detail{grid-template-columns:1fr}
    .detail .side{border-right:none;border-bottom:2px dashed var(--line);padding:0 0 1.2rem}
    .foot-grid{grid-template-columns:1fr 1fr}
  }
  @media(max-width:600px){
    .pillars,.pillars.three,.gallery,.steps,.enroll-band{grid-template-columns:1fr}
    nav .navlink{display:none}
  }

  /* home hero */
  .home-hero{padding:3.4rem 0 2.4rem;text-align:center}
  .home-hero h1{font-size:clamp(2rem,4.6vw,3.2rem);color:var(--navy-deep);max-width:900px;margin:0 auto .8rem}
  .home-hero p{font-size:1.12rem;color:#535b74;max-width:640px;margin:0 auto}
  .page-hero{padding:3rem 0 1rem}
  .page-hero h1{font-size:clamp(2.1rem,4.8vw,3.4rem)}
  .navy-sec .page-hero h1{color:#fff}

  /* mobile nav toggle */
  .nav-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;margin-left:.3rem;background:var(--navy);color:#fff;border:none;border-radius:14px;font-size:1.15rem;line-height:1;cursor:pointer;box-shadow:0 10px 22px rgba(39,67,116,.22);transition:transform .16s ease,background .16s ease}
  .nav-toggle:hover{transform:translateY(-1px);background:var(--navy-deep)}
  @media(max-width:1120px){
    .nav-wrap{flex-wrap:wrap;gap:.72rem}
    .switcher{order:2;margin-left:auto}
    .nav-toggle{display:inline-flex;order:3}
    .site-nav{order:4;flex-basis:100%;display:none;flex-direction:column;align-items:stretch;gap:.22rem;padding:.7rem 0 .15rem}
    .site-nav.open{display:flex}
    nav.site-nav .navlink{padding:.72rem .85rem;border-radius:14px;background:#fff;border:1px solid rgba(34,48,77,.08)}
    nav.site-nav .navlink:hover{background:#EFEBDF}
    nav.site-nav .navlink.active{background:var(--navy);color:#fff;border-color:var(--navy)}
    nav.site-nav .cta-btn{text-align:center;margin-top:.45rem}
  }
  @media(max-width:700px){
    .notice{font-size:.74rem;line-height:1.35;padding:.45rem .7rem}
    .nav-wrap{padding:.62rem .82rem;gap:.56rem}
    .logo{flex:1 1 auto;min-width:0;gap:.55rem}
    .logo-text{font-size:.92rem}
    .logo-text small{font-size:.56rem;letter-spacing:.035em}
    .nav-toggle{order:2;margin-left:auto;width:42px;height:42px}
    .switcher{order:3;flex:1 0 100%;width:100%;margin-left:0;justify-content:center}
    .switcher a{flex:1;justify-content:center;padding:.48rem .62rem}
  }
  @media(max-width:430px){
    .logo-mark{width:88px;height:40px;flex-basis:88px}
    .logo-mark-pob{width:42px;height:42px;flex-basis:42px}
    .logo-crop{height:40px}
    .logo-apple{width:32px;height:32px}
    .logo-apple-orange{left:15px}
    .logo-apple-red{left:30px}
    .logo-text{font-size:.84rem}
    .logo-text small{font-size:.5rem}
    .switcher a span{font-size:.66rem}
  }

  /* success / error notices for the tour form */
  .form-flash{border-radius:14px;padding:1rem 1.2rem;margin-top:1.4rem;font-weight:700}
  .form-flash.ok{background:#EAF6E2;color:#3E7A22;border:1.5px solid var(--apple-green)}
  .form-flash.err{background:#FBE7E6;color:#A33330;border:1.5px solid var(--apple-red)}


  /* ============ v3: serif marriage + new sections ============ */
  .serif{font-family:'Fraunces',Georgia,serif}
  .section-title,.page-hero h1,.home-hero h1,.band h2{font-family:'Fraunces',Georgia,serif;letter-spacing:-.01em}
  .eyebrow{display:block;font-size:.8rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--sky);margin-bottom:1rem}

  /* book hero */
  .book-hero{background:linear-gradient(158deg,var(--navy-2),var(--navy-deep));color:#fff;position:relative;overflow:hidden;padding:3.4rem 0 3.8rem}
  .book-hero .container{display:grid;grid-template-columns:1.02fr .98fr;gap:2rem;align-items:center;position:relative;z-index:2}
  .book-hero .eyebrow{color:#9fb4e0}
  .bh-title{font-family:'Fraunces',Georgia,serif;font-weight:900;font-size:clamp(2.6rem,6.4vw,5.2rem);line-height:.96;letter-spacing:-.02em;margin:0}
  .bh-title .em{display:block;font-style:italic;color:#ffe27a;font-weight:700;text-shadow:0 3px 12px rgba(0,0,0,.4)}
  .bh-lead{font-size:1.08rem;color:#dfe4f5;max-width:520px;margin:1.2rem 0 1.7rem}
  .bh-ctas{display:flex;gap:.9rem;flex-wrap:wrap}
  .book-art{position:relative}
  .book-art img{width:100%;filter:drop-shadow(0 26px 34px rgba(0,0,0,.42))}
  .book-banner{position:absolute;top:4%;right:0;font-family:'Caveat',cursive;font-weight:700;color:#ffe27a;font-size:clamp(1.1rem,2.2vw,1.7rem);transform:rotate(-7deg);white-space:nowrap;text-shadow:0 3px 10px rgba(0,0,0,.62)}
  .book-star{position:absolute;top:12%;left:2%;color:var(--yellow);font-size:1.4rem}

  /* stat strip */
  .stat-strip{background:var(--cream);border-bottom:1px solid var(--line)}
  .stat-row{max-width:1220px;margin:0 auto;display:grid;grid-template-columns:repeat(6,1fr)}
  .stat{padding:1.35rem 1.1rem;border-right:1px solid var(--line)}
  .stat:last-child{border-right:none}
  .stat b{font-family:'Fraunces',Georgia,serif;display:block;font-size:1.12rem;color:var(--navy-deep);font-weight:700;margin-bottom:.15rem}
  .stat span{font-size:.82rem;color:#6b6f85;line-height:1.35;display:block}

  /* Industry Adventures carousel */
  .adv-scroll{display:flex;gap:1.1rem;overflow-x:auto;padding:1.1rem .2rem 1.4rem;scroll-snap-type:x proximity;scrollbar-width:thin}
  .adv-scroll::-webkit-scrollbar{height:8px}
  .adv-scroll::-webkit-scrollbar-track{background:#eee6d6;border-radius:99px}
  .adv-scroll::-webkit-scrollbar-thumb{background:var(--navy);border-radius:99px}
  .adv-card{flex:0 0 210px;scroll-snap-align:start;background:#fff;border:1.5px solid var(--line);border-radius:20px;padding:1.4rem;position:relative}
  .adv-card .mo{font-weight:800;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#9aa0b3}
  .adv-card .aemoji{font-size:2.1rem;margin:.55rem 0 .5rem}
  .adv-card h4{font-family:'Fraunces',Georgia,serif;font-size:1.25rem;color:var(--navy-deep);margin:0}
  .adv-card .animal{font-size:.9rem;color:#535b74;margin-top:.35rem}
  .adv-card.now{background:var(--navy);border-color:var(--navy);box-shadow:0 16px 30px -12px rgba(39,67,116,.6)}
  .adv-card.now .mo{color:var(--yellow)}
  .adv-card.now h4{color:#fff}
  .adv-card.now .animal{color:#dfe4f5}
  .adv-now-tag{position:absolute;top:-13px;left:1.1rem;background:var(--yellow);color:var(--ink);font-weight:800;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;padding:.25rem .7rem;border-radius:99px}
  .adv-hint{font-size:.82rem;color:#8b8da8;font-style:italic;margin-top:.2rem}

  /* photo gallery */
  .space-gallery{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem;margin-top:2.2rem}
  .space-card{position:relative;border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:var(--shadow)}
  .space-card img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#f4f1e8}
  .space-card figcaption{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(transparent,rgba(28,49,86,.92));color:#fff;padding:2.6rem 1.25rem 1.15rem;font-weight:800;font-family:'Fraunces',Georgia,serif;font-size:1.08rem}

  /* rotating crew rail */
  .crew-intro{max-width:640px}
  .crew-rail{display:flex;gap:1.2rem;overflow-x:auto;padding:1.4rem .2rem 1.6rem;scroll-snap-type:x proximity;scrollbar-width:thin}
  .crew-rail::-webkit-scrollbar{height:8px}
  .crew-rail::-webkit-scrollbar-thumb{background:var(--navy);border-radius:99px}
  .crew-toon{flex:0 0 210px;scroll-snap-align:center;text-align:center;background:linear-gradient(180deg,#fff,#F4F1E8);border-radius:22px;padding:1.2rem .8rem 1.3rem;box-shadow:var(--shadow)}
  .crew-toon .toon-img{height:210px;display:flex;align-items:flex-end;justify-content:center}
  .crew-toon img{max-height:210px;width:auto;filter:drop-shadow(0 14px 16px rgba(34,48,77,.22));animation:toonSpin 5.5s ease-in-out infinite}
  .crew-toon:nth-child(2) img{animation-delay:.7s}
  .crew-toon:nth-child(3) img{animation-delay:1.4s}
  .crew-toon:nth-child(4) img{animation-delay:2.1s}
  @keyframes toonSpin{0%,100%{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(3deg) translateY(-9px)}}
  .crew-toon .nm{font-family:'Fraunces',Georgia,serif;font-weight:700;font-size:1.15rem;color:var(--navy-deep);margin-top:.7rem}
  .crew-toon .role{font-size:.76rem;color:#8b8da8;text-transform:uppercase;letter-spacing:.06em;margin-top:.15rem}
  @media(prefers-reduced-motion:reduce){ .crew-toon img{animation:none} }

  @media(max-width:900px){
    .book-hero{padding:2.9rem 0 2.7rem}
    .book-hero .container{grid-template-columns:1fr}
    .book-art{max-width:520px;margin:0 auto}
    .stat-row{grid-template-columns:repeat(3,1fr)}
    .stat:nth-child(3n){border-right:none}
    .space-gallery{grid-template-columns:1fr}
    .space-card{border-radius:20px}
    .space-picker{grid-template-columns:1fr}
    .space-tabs{display:grid;grid-template-columns:repeat(2,1fr)}
  }
  @media(max-width:600px){
    .stat-row{grid-template-columns:1fr 1fr}
    .stat{padding:1.05rem .9rem}
    .book-hero{padding:2.35rem 0 2.2rem}
    .bh-title{font-size:clamp(2.35rem,14vw,3.6rem)}
    .bh-lead{font-size:1rem}
    .bh-ctas .cta-btn{width:100%;text-align:center}
    .crew-toon{flex-basis:180px}
    .crew-toon .toon-img{height:180px}
    .crew-toon img{max-height:180px}
    .space-card img{aspect-ratio:1.12}
    .space-stage,.space-stage-img{min-height:360px}
    .space-tabs{display:flex;overflow-x:auto;gap:.75rem;padding:.15rem .05rem .5rem;scroll-snap-type:x proximity}
    .space-tab{flex:0 0 190px;grid-template-columns:1fr;scroll-snap-align:start}
    .space-tab img{width:100%;height:92px}
  }


  /* selectable preschool space viewer */
  .space-showcase{background:#fff}
  .space-picker{margin-top:2rem;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(260px,.82fr);gap:1.25rem;align-items:stretch}
  .space-stage{position:relative;min-height:520px;border-radius:var(--radius);overflow:hidden;background:var(--navy-deep);box-shadow:var(--shadow)}
  .space-stage-img{width:100%;height:100%;min-height:520px;object-fit:contain;background:#f4f1e8}
  .space-stage-copy{position:absolute;left:0;right:0;bottom:0;padding:5.5rem 1.5rem 1.35rem;color:#fff;background:linear-gradient(transparent,rgba(28,49,86,.94))}
  .space-eyebrow{display:block;font-weight:850;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--yellow);margin-bottom:.35rem}
  .space-stage-title{font-family:'Fraunces',Georgia,serif;font-size:clamp(1.45rem,2.6vw,2.15rem);margin:0 0 .35rem;color:#fff}
  .space-stage-text{max-width:680px;color:#eef3ff;font-size:.96rem}
  .space-tabs{display:flex;flex-direction:column;gap:.72rem}
  .space-tab{appearance:none;border:1.5px solid var(--line);background:#f8f5ec;border-radius:18px;padding:.58rem;display:grid;grid-template-columns:98px 1fr;gap:.8rem;align-items:center;text-align:left;cursor:pointer;color:var(--navy-deep);box-shadow:0 6px 18px rgba(34,48,77,.06);transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}
  .space-tab:hover{transform:translateY(-2px);border-color:rgba(39,67,116,.35);box-shadow:0 12px 24px rgba(34,48,77,.1)}
  .space-tab.active{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 14px 28px rgba(39,67,116,.28)}
  .space-tab img{width:98px;height:66px;object-fit:cover;border-radius:12px;background:#fff}
  .space-tab span{font-weight:900;line-height:1.15}

  /* final responsive overrides for selectable space viewer */

  @media(max-width:900px){
    .space-picker{grid-template-columns:1fr}
    .space-tabs{display:grid;grid-template-columns:repeat(2,1fr);flex-direction:initial}
  }
  @media(max-width:600px){
    .space-stage,.space-stage-img{min-height:360px}
    .space-tabs{display:flex;overflow-x:auto;gap:.75rem;padding:.15rem .05rem .5rem;scroll-snap-type:x proximity}
    .space-tab{flex:0 0 190px;grid-template-columns:1fr;scroll-snap-align:start}
    .space-tab img{width:100%;height:92px}
  }


  .pob-hero-art{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);border-radius:24px;padding:1.5rem;display:flex;justify-content:center;align-items:center;min-height:340px}
  .pob-hero-art img{width:min(520px,100%)}

  /* tour picker row */
  .quick-signup{padding:1rem 0;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .tour-picker-inner{display:grid;grid-template-columns:minmax(190px,.72fr) minmax(0,2.1fr) auto;align-items:center;gap:1rem}
  .tour-picker-head{display:flex;align-items:flex-start;gap:.7rem;flex-direction:column;color:var(--navy-deep)}
  .mini-label{display:inline-flex;align-items:center;border-radius:999px;background:var(--yellow);color:#1c2540;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em;padding:.34rem .78rem}
  .tour-picker-head strong{font-family:'Fraunces',Georgia,serif;font-size:clamp(1.04rem,1.8vw,1.34rem);line-height:1.08}
  .tour-picker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.72rem}
  .picker-group{border:1.5px solid rgba(34,48,77,.1);border-radius:18px;background:#f8f5ec;padding:.64rem;box-shadow:0 8px 18px rgba(34,48,77,.06)}
  .picker-label{display:block;font-size:.68rem;font-weight:950;letter-spacing:.13em;text-transform:uppercase;color:#747b92;margin:0 0 .38rem .1rem}
  .picker-options{display:flex;flex-wrap:wrap;gap:.34rem}
  .picker-pill{appearance:none;position:relative;overflow:hidden;isolation:isolate;border:1.5px solid rgba(34,48,77,.1);border-radius:999px;background:#fff;color:var(--navy-deep);font:inherit;font-size:.78rem;font-weight:900;line-height:1;padding:.48rem .62rem;cursor:pointer;box-shadow:0 4px 12px rgba(34,48,77,.05);transition:transform .16s ease,background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}
  .picker-pill::after{content:"";position:absolute;top:-70%;bottom:-70%;left:-46%;width:30%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-22deg);opacity:.55;transition:transform .7s ease;pointer-events:none}
  .picker-pill:hover{transform:translateY(-1px);box-shadow:0 8px 16px rgba(34,48,77,.09)}
  .picker-pill:hover::after{transform:translateX(520%) skewX(-22deg)}
  .picker-pill.active{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 8px 18px rgba(39,67,116,.2)}
  .picker-pill.daycare.active{background:var(--apple-green);border-color:var(--apple-green)}
  .picker-pill.preschool.active{background:var(--navy);border-color:var(--navy)}
  .picker-pill small{display:block;font-size:.62rem;font-weight:850;margin-top:.18rem;opacity:.82}
  .picker-pill.kid{width:38px;height:38px;padding:0;display:inline-flex;align-items:center;justify-content:center}
  .tour-submit{min-height:58px;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:.12rem;text-align:center}
  .tour-submit span{display:block;font-size:.66rem;font-weight:800;opacity:.9;max-width:210px;white-space:normal;line-height:1.15}

  /* home character loop */
  .character-loop-section{background:#fff;overflow:hidden;padding:3.2rem 0 3.4rem}
  .character-loop-section .crew-intro{text-align:center;margin:0 auto}
  .character-loop{width:100%;overflow:hidden;margin-top:2rem;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
  .character-track{display:flex;align-items:stretch;gap:1.2rem;width:max-content;animation:characterMarquee 26s linear infinite}
  .character-loop:hover .character-track{animation-play-state:paused}
  .character-card{flex:0 0 280px;text-align:center;border-radius:22px;padding:1.2rem .9rem 1.25rem;background:linear-gradient(180deg,#fff,#f4f1e8);border:1.5px solid rgba(34,48,77,.08);box-shadow:0 14px 34px rgba(34,48,77,.1)}
  .character-portrait{height:286px;display:flex;align-items:flex-end;justify-content:center}
  .character-portrait img{max-height:286px;width:auto;filter:drop-shadow(0 16px 18px rgba(34,48,77,.24));animation:toonSpin 5.2s ease-in-out infinite}
  .character-card:nth-child(2n) .character-portrait img{animation-delay:.7s}
  .character-card:nth-child(3n) .character-portrait img{animation-delay:1.4s}
  .character-card .nm{font-family:'Fraunces',Georgia,serif;font-weight:800;font-size:1.35rem;color:var(--navy-deep);margin-top:.85rem}
  .character-card .role{font-size:.75rem;color:#7c8298;text-transform:uppercase;letter-spacing:.08em;font-weight:850;margin-top:.15rem}
  @keyframes characterMarquee{to{transform:translateX(calc(-50% - .6rem))}}

  /* preschool hero character cutout */
  .preschool-hero{padding-bottom:0;overflow:hidden}
  .preschool-hero > .container{align-items:end!important}
  .pob-hero-characters,.pob-hero-book,.pob-hero-photo,.pob-hero-cutout{align-self:end;background:transparent;border:none;border-radius:0;padding:0;min-height:0;overflow:visible;margin-bottom:-.2rem}
  .pob-hero-characters picture,.pob-hero-photo picture,.pob-hero-cutout picture{display:block;width:100%}
  .pob-hero-characters img{width:min(620px,100%);filter:drop-shadow(0 24px 26px rgba(0,0,0,.34));transform:translateY(8px)}
  .pob-hero-book img{width:min(620px,100%);filter:drop-shadow(0 24px 26px rgba(0,0,0,.38));transform:translateY(14px)}
  .pob-hero-photo{width:min(680px,100%);border-radius:28px;overflow:hidden;background:#fbfaf5;box-shadow:0 24px 34px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.18);transform:translateY(10px)}
  .pob-hero-photo img{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center bottom;filter:none}
  .pob-hero-cutout{width:min(760px,100%);transform:translateY(20px)}
  .pob-hero-cutout img{width:100%;filter:drop-shadow(0 26px 28px rgba(0,0,0,.42))}

  @media(max-width:900px){
    .tour-picker-inner{grid-template-columns:1fr;align-items:stretch}
    .tour-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .tour-submit{justify-self:start}
    .preschool-hero > .container{grid-template-columns:1fr!important}
    .program-panel{grid-template-columns:1fr;align-content:center;padding:3rem 1.2rem 5.8rem;gap:1.4rem}
    .program-art{justify-content:flex-start;max-width:650px}
    .program-fader-controls{left:1.2rem;bottom:1rem}
    .pob-hero-characters,.pob-hero-book,.pob-hero-photo,.pob-hero-cutout{max-width:760px;margin:1.5rem auto -.2rem}
  }
  @media(max-width:600px){
    .fader-stage{min-height:620px}
    .program-panel h1{font-size:clamp(2.1rem,12vw,3.45rem)}
    .program-apples{justify-content:flex-start}
    .reviews-live-inner{grid-template-columns:1fr}
    .program-logo-badge{width:86px;height:86px}
    .program-book-overlay{width:min(190px,42%)}
    .tour-picker-grid{grid-template-columns:1fr}
    .picker-group{padding:.58rem}
    .tour-submit{width:100%;justify-self:stretch}
    .character-card{flex-basis:224px}
    .character-portrait{height:224px}
    .character-portrait img{max-height:224px}
  }
  @media(prefers-reduced-motion:reduce){
    .character-track{animation:none;transform:none}
    .character-portrait img{animation:none}
  }

  /* v3.0.13 edge-to-edge program imagery */
  @media(min-width:901px){
    .fader-stage{min-height:590px}
    .program-panel{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:0;overflow:hidden}
    .program-copy{position:relative;z-index:5;max-width:590px}
    .program-photo-art{position:absolute;top:0;right:0;bottom:0;width:58%;height:100%;z-index:1;display:flex;align-items:stretch;justify-content:stretch;max-width:none;pointer-events:none}
    .program-visual-frame{position:relative;width:100%;height:100%;border:0;border-radius:0;overflow:hidden;background:transparent;box-shadow:none}
    .program-visual-frame picture{display:block;width:100%;height:100%}
    .program-photo{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
    .bsk-photo-art .program-photo{object-position:center 40%}
    .pob-photo-art .program-photo{object-position:center 45%}
    .program-visual-frame::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none}
    .bsk-photo-art .program-visual-frame::after{background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.96) 12%,rgba(250,252,246,.82) 30%,rgba(250,252,246,.3) 54%,rgba(250,252,246,0) 78%)}
    .pob-photo-art .program-visual-frame::after{background:linear-gradient(90deg,var(--navy-2) 0%,rgba(39,67,116,.98) 14%,rgba(28,49,86,.84) 34%,rgba(28,49,86,.25) 58%,rgba(28,49,86,0) 82%)}
    .corner-apples{right:1.4rem;bottom:1.4rem;z-index:4}
    .program-logo-badge{right:1.4rem;bottom:1.4rem;z-index:4}
    .program-book-overlay{left:1.2rem;bottom:1.2rem;z-index:4;width:min(270px,38%)}
    .program-fader-controls{z-index:8}
  }
  @media(max-width:900px){
    .program-photo-art{position:relative;top:auto;right:auto;bottom:auto;width:100%;height:auto;z-index:1;max-width:650px;pointer-events:auto}
    .program-visual-frame{width:100%;height:auto;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 20px 34px rgba(28,49,86,.18);border:1px solid rgba(255,255,255,.32)}
    .program-visual-frame picture{display:block;width:100%;height:auto}
    .program-photo{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
    .program-visual-frame::after{background:linear-gradient(90deg,rgba(255,255,255,.16),transparent 38%)}
    .program-book-overlay{left:-1rem;bottom:-1rem}
  }

  /* v3.0.14 preschool logo and hero polish */
  .program-visual-frame > picture.program-logo-badge{
    position:absolute!important;
    right:1.4rem!important;
    bottom:1.4rem!important;
    z-index:5!important;
    display:block!important;
    width:112px!important;
    height:112px!important;
    border-radius:50%;
    overflow:hidden;
    background:#fff;
    border:4px solid rgba(255,255,255,.86);
    box-shadow:0 18px 30px rgba(0,0,0,.26);
  }
  .program-visual-frame > picture.program-logo-badge img{display:block;width:100%;height:100%;object-fit:cover}
  .program-visual-frame > picture.program-logo-badge source{display:none}
  @media(min-width:901px){
    .pob-photo-art .program-visual-frame::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(28,49,86,.08),rgba(28,49,86,.28))}
    .program-panel.pob .program-photo{filter:saturate(.94) brightness(.88) contrast(1.04)}
    .program-panel.pob .program-book-overlay{left:1.35rem;bottom:1.15rem;width:min(245px,34%)}
    .preschool-hero{position:relative;padding:0;min-height:430px}
    .preschool-hero > .container{position:relative;min-height:430px;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important;gap:0!important;align-items:center!important}
    .preschool-hero > .container > div:first-child{position:relative;z-index:4;max-width:650px;padding:3rem 0}
    .pob-hero-book{position:absolute;top:0;right:0;bottom:0;width:58%;height:100%;z-index:1;display:block;margin:0;min-height:0;overflow:hidden;pointer-events:none}
    .pob-hero-book::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,var(--navy-2) 0%,rgba(39,67,116,.98) 16%,rgba(39,67,116,.62) 42%,rgba(39,67,116,0) 72%)}
    .pob-hero-book > img:first-child{position:absolute;right:3rem;bottom:-.4rem;z-index:2;width:min(660px,94%);max-height:97%;object-fit:contain;object-position:right bottom;filter:drop-shadow(0 28px 28px rgba(0,0,0,.38));transform:none}
    .pob-hero-logo-badge{position:absolute;right:1.35rem;bottom:1.25rem;z-index:5;display:block;width:112px;height:112px;border-radius:50%;overflow:hidden;background:#fff;border:4px solid rgba(255,255,255,.86);box-shadow:0 18px 30px rgba(0,0,0,.3)}
    .pob-hero-logo-badge img{display:block;width:100%;height:100%;object-fit:cover}
  }
  @media(max-width:900px){
    .program-visual-frame > picture.program-logo-badge{right:.9rem!important;bottom:.9rem!important;width:88px!important;height:88px!important}
    .preschool-hero{padding-bottom:0}
    .pob-hero-book{position:relative;display:flex;align-items:flex-end;justify-content:flex-end;overflow:visible;padding-top:1rem}
    .pob-hero-book > img:first-child{width:min(620px,100%);filter:drop-shadow(0 24px 26px rgba(0,0,0,.38));transform:translateY(10px)}
    .pob-hero-logo-badge{position:absolute;right:.9rem;bottom:1rem;z-index:5;display:block;width:88px;height:88px;border-radius:50%;overflow:hidden;background:#fff;border:3px solid rgba(255,255,255,.86);box-shadow:0 14px 24px rgba(0,0,0,.26)}
    .pob-hero-logo-badge img{display:block;width:100%;height:100%;object-fit:cover}
  }

  /* v3.0.15 Google review cards + preschool curriculum placement */
  .industry-adventures{background:#fff}
  .preschool-industry-adventures{padding-top:3.2rem;border-bottom:1px solid var(--line)}
  .home-industry-adventures{background:#fff}
  .google-review-feed{background:#fff;padding:3.8rem 0}
  .reviews-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,320px);gap:1.4rem;align-items:end;margin-bottom:1.6rem}
  .google-rating-card{justify-self:end;width:100%;border-radius:22px;background:var(--navy);color:#fff;padding:1.2rem 1.25rem;box-shadow:0 16px 30px rgba(39,67,116,.18)}
  .google-rating-card .review-stars{display:block;color:var(--yellow);letter-spacing:.08em;font-size:1.1rem}
  .google-rating-card strong{display:block;font-family:'Fraunces',Georgia,serif;font-size:2rem;line-height:1;margin:.3rem 0 .15rem}
  .google-rating-card span{display:block;color:#dfe4f5;font-size:.88rem}
  .google-rating-card a{display:inline-block;color:#ffe27a;font-weight:900;margin-top:.65rem;text-decoration:none}
  .review-feed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
  .review-feed-card{border-radius:22px;background:linear-gradient(180deg,#fff,#f8f5ec);border:1.5px solid var(--line);box-shadow:var(--shadow);padding:1.45rem;display:flex;flex-direction:column;min-height:260px}
  .review-feed-card .review-stars{color:var(--yellow);letter-spacing:.08em;font-size:1.02rem;margin-bottom:.85rem}
  .review-feed-card p{font-family:'Fraunces',Georgia,serif;font-size:1.08rem;line-height:1.38;color:var(--navy-deep);margin:0 0 1.15rem}
  .review-feed-card footer{margin-top:auto;border-top:1px solid var(--line);padding-top:.85rem;display:flex;flex-direction:column;gap:.12rem}
  .review-feed-card footer b{font-size:.9rem;color:var(--navy-deep)}
  .review-feed-card footer span{font-size:.78rem;color:#7c8298}
  .google-feed-note{margin:1rem 0 0;color:#747b92;font-size:.82rem}
  .google-feed-note code{background:#f4f1e8;border-radius:6px;padding:.1rem .28rem}
  @media(max-width:900px){
    .reviews-head,.review-feed-grid{grid-template-columns:1fr}
    .google-rating-card{justify-self:stretch}
    .review-feed-card{min-height:0}
  }

  /* v3.0.16 review card footer isolation */
  .review-feed-card footer{
    margin-top:auto;
    padding:.85rem 0 0;
    border-top:1px solid var(--line);
    background:transparent!important;
    color:inherit!important;
    box-shadow:none!important;
    display:flex;
    flex-direction:column;
    gap:.12rem;
  }


/* ============ REFERRAL PROGRAM (v3.0.18) ============ */
.visit-pref{background:rgba(111,191,68,.14);border:1px solid rgba(111,191,68,.42);color:#2f5d1e;font-weight:700;font-size:.92rem;padding:.7rem 1rem;border-radius:14px;margin-bottom:1rem}
.ref-code-field input{width:100%}
.refer-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:0 0 2rem}
.refer-steps .step{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.3rem;box-shadow:var(--shadow)}
.refer-steps .num{width:34px;height:34px;border-radius:999px;background:var(--apple-red);color:#fff;font-weight:900;display:flex;align-items:center;justify-content:center;margin-bottom:.6rem}
.refer-steps h4{font-family:'Fraunces',Georgia,serif;font-size:1.1rem;margin-bottom:.3rem;color:var(--navy-deep)}
.refer-steps p{font-size:.92rem;color:#535b74}
.refer-code-card{background:linear-gradient(160deg,#fff,#F4F8FF);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem;max-width:560px;text-align:center;margin:0 auto}
.refer-code-card .kicker{display:block;margin-bottom:.4rem}
.refer-code{font-family:'Fraunces',Georgia,serif;font-weight:900;font-size:clamp(1.8rem,6vw,2.8rem);letter-spacing:.06em;color:var(--apple-red);margin:.4rem 0 1.1rem;background:#fff;border:2px dashed rgba(214,69,65,.4);border-radius:16px;padding:.5rem 1rem;display:inline-block}
.refer-qr img{margin:0 auto;border-radius:14px;border:1px solid var(--line);background:#fff;padding:8px}
.refer-share{margin-top:1.4rem;text-align:left}
.refer-share label{display:block;font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:#8b8da8;margin-bottom:.35rem}
.refer-share-row{display:flex;gap:.5rem}
.refer-share-row input{flex:1;padding:.7rem .9rem;border:1px solid var(--line);border-radius:12px;font:inherit;background:#fff;color:var(--ink)}
.nav .navlink.refer,nav a.navlink[href$="/refer/"]{color:var(--apple-red);font-weight:800}
@media(max-width:720px){.refer-steps{grid-template-columns:1fr}.refer-share-row{flex-direction:column}}
