:root {
  /* Primary teal — mid-teal baseline #2A8A93 */
  --seedling: #2A8A93;
  --seedling-d: #257F88;
  --seedling-dd: #0E2F33;
  --seedling-l: #D5E4E6;
  --seedling-mid: #0E96A2;
  --dark-seedling: #267A83;
  --dark-seedling-card: #216F77;

  /* Complimentary accents — greens, tans, browns, greys, silvers */
  --warm: #C58057;     /* tan — italic accent on white */
  --lime: #97C13D;
  --tan: #C58057;
  --peach: #E8B69D;
  --brown: #7B5237;
  --brown-d: #3A1F11;
  --gray: #555759;
  --silver: #D5D8D6;

  /* Buttons */
  --btn: #005e67;         /* button base */
  --btn-h: #00484f;       /* button hover */

  /* Brightr moodboard swatches */
  --ink-teal: #005057;    /* deep teal — dark grounds */
  --bright-teal: #00777E; /* saturated teal — accents */
  --chocolate: #4B3217;   /* dark cocoa — text/hover */
  --terracotta: #ae5a10;  /* terracotta — buttons */
  --sand: #AE9276;        /* warm taupe — soft grounds */

  --text: #0A2529;
  --muted: #6b6b6b;
  --cool: #848983;
  --white: #F5F3EF;

  /* Timeline dots — Brightr palette: sand → terracotta → chocolate → bright teal → ink teal */
  --dot-1: #AE9276;
  --dot-2: #AE5A10;
  --dot-3: #4B3217;
  --dot-4: #00777E;
  --dot-5: #005057;
  --dot-6: #003B41;

  /* Opacity variants */
  --white-80: rgba(255,255,255,.8);
  --white-70: rgba(255,255,255,.7);
  --white-60: rgba(255,255,255,.6);
  --white-50: rgba(255,255,255,.5);
  --white-33: rgba(255,255,255,.33);
  --white-30: rgba(255,255,255,.3);
  --white-20: rgba(255,255,255,.2);
  --white-10: rgba(255,255,255,0.10);
  --border-light: rgba(46,51,48,0.06);
  --seedling-line: rgba(42,138,147,.25);
  --seedling-tag: rgba(42,138,147,.12);

  --pure-white: #fff;

  /* Fonts */
  --ff: 'Fraunces', Georgia, serif;
  --fs: 'DM Sans', sans-serif;
  --sig: 'Dancing Script', 'Segoe Script', cursive;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;overflow-x:clip}
body{background:var(--seedling-mid);overflow-x:clip}
a{text-decoration:none}


/* ═══ Services Dropdown ═══ */
.s-nav-dropdown { position:relative; }
.s-nav-dropdown > [data-nav-link] { cursor:pointer; }
.s-nav-dropdown-menu {
  position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity 0.25s,transform 0.25s,visibility 0.25s;
  background:rgba(255,255,255,.96);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  border-radius:12px;padding:8px 0;min-width:200px;
  box-shadow:0 8px 32px rgba(0,0,0,.12),0 1px 3px rgba(0,0,0,.08);
}
.s-nav-dropdown:hover .s-nav-dropdown-menu,
.s-nav-dropdown.s-open .s-nav-dropdown-menu {
  opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0);
}
.s-nav-dropdown-menu a {
  display:block;padding:10px 20px;font-family:var(--fs);font-size:14px;font-weight:400;
  color:var(--text,#2C302A);text-decoration:none;transition:background 0.15s;
  white-space:nowrap;
}
.s-nav-dropdown-menu a:hover { background:rgba(0,0,0,.04); }
.s-nav-dropdown-menu a span {
  display:block;font-size:11.5px;font-weight:400;color:#999;margin-top:2px;
}

/* ═══ NAV ═══ */
.s-nav {
  position:fixed;top:0;left:0;right:0;z-index:100;
  padding:0 clamp(20px,4vw,48px);
  background:transparent;
  border-bottom:1px solid var(--white-10);
  transition:transform 0.35s cubic-bezier(.4,0,.2,1), background 0.35s, backdrop-filter 0.35s;
  will-change:transform;
}
.s-nav.s-nav--pinned { background:rgba(14,47,51,.92); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); }
.s-nav.s-nav--unpinned { transform:translateY(-100%); }
.s-nav-inner {
  max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:72px;
}
.s-nav-brand {
  font-family:var(--ff);font-size:22px;font-weight:400;text-decoration:none;
  display:inline-flex;align-items:center;gap:10px;
}
.s-nav-logo { height:30px;width:auto;display:block;flex-shrink:0; }
/* Hero seedling mark — right-aligned, resting just above the dunes */
.s-hero-sprout {
  position:absolute;right:clamp(32px,7vw,140px);bottom:clamp(44px,7vw,90px);
  height:clamp(120px,18vw,240px);width:auto;z-index:2;pointer-events:none;
}
@media (max-width:860px){ .s-hero-sprout{ display:none; } }
/* Hero blob cluster — right side, curving down-left, crossing the dune into white */
.s-hero-stack { position:relative; z-index:1; }
.s-blob-cluster {
  position:absolute;right:clamp(0px,1.5vw,36px);top:-24px;
  width:clamp(300px,33vw,410px);height:auto;display:block;z-index:-1;pointer-events:none;overflow:visible;
}
@media (max-width:1240px){ .s-blob-cluster{ display:none; } }
/* Blob below the 'Every stage of childhood' section — 60% width, photo + dark-teal accent */
.s-stage-blob { display:block;width:100%;max-width:380px;height:auto;margin:40px 0 0;overflow:visible; }
.s-nav-brand [data-brand-first] { color:var(--pure-white);transition:color 0.35s; }
.s-nav-brand [data-brand-second] { color:var(--seedling-dd);transition:color 0.35s; }
.s-nav--pinned .s-nav-brand [data-brand-first] { color:var(--pure-white); }
.s-nav--pinned .s-nav-brand [data-brand-second] { color:var(--seedling-l); }
.s-nav-links {
  display:flex;gap:36px;align-items:center;
}
.s-nav-links [data-nav-link] {
  color:var(--pure-white);font-size:16px;font-family:var(--fs);font-weight:400;
  text-decoration:none;transition:color 0.3s;
}
.s-nav--pinned .s-nav-links [data-nav-link] { color:var(--pure-white); }
.s-nav-links [data-nav-link]:hover { opacity:0.7; }
.s-nav-cta {
  background:var(--btn);color:var(--pure-white);
  padding:12px 26px;border-radius:999px;font-size:15px;
  font-family:var(--fs);font-weight:400;transition:all 0.3s;
  text-decoration:none;display:inline-block;
}
.s-nav-cta:hover { background:var(--btn-h); }
.s-hamburger {
  display:none;width:44px;height:44px;background:none;border:none;cursor:pointer;
  position:relative;padding:0;
}
.s-hamburger span {
  display:block;width:22px;height:2px;background:var(--pure-white);
  position:absolute;left:11px;transition:all 0.3s;
}
.s-nav--pinned .s-hamburger span { background:var(--text); }
.s-hamburger span:nth-child(1) { top:15px; }
.s-hamburger span:nth-child(2) { top:21px; }
.s-hamburger span:nth-child(3) { top:27px; }
.s-hamburger.s-open span:nth-child(1) { top:21px;transform:rotate(45deg); }
.s-hamburger.s-open span:nth-child(2) { opacity:0; }
.s-hamburger.s-open span:nth-child(3) { top:21px;transform:rotate(-45deg); }
.s-nav-mobile-row { display:none;align-items:center;gap:12px; }
.s-mobile-panel {
  display:none;flex-direction:column;padding:1rem clamp(20px,4vw,48px) 2rem;gap:0;
  background:rgba(220,227,224,.97);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
}
.s-mobile-panel.s-open { display:flex; }
.s-mobile-panel [data-nav-link] {
  color:var(--text);font-size:18px;font-family:var(--fs);font-weight:400;
  text-decoration:none;padding:14px 0;border-bottom:1px solid var(--border-light);
}

/* ═══ FORMS (intake / contact / subscribe / agreements) ═══ */
.form-group { margin-bottom:18px; }
label {
  display:block;font-family:var(--fs);font-size:13px;font-weight:400;
  color:var(--text);margin-bottom:7px;letter-spacing:0.01em;
}
.form-control,
input[type="text"], input[type="email"], input[type="tel"], input[type="number"],
input[type="password"], input[type="date"], input[type="url"], input[type="search"],
textarea, select {
  width:100%;font-family:var(--fs);font-size:15px;color:var(--text);
  background:var(--pure-white);border:1px solid var(--seedling-line);
  border-radius:12px;padding:13px 16px;line-height:1.4;
  transition:border-color 0.2s, box-shadow 0.2s;
  -webkit-appearance:none;appearance:none;
}
.form-control::placeholder, input::placeholder, textarea::placeholder { color:var(--cool); }
.form-control:focus, input:focus, textarea:focus, select:focus {
  outline:none;border-color:var(--seedling);box-shadow:0 0 0 3px var(--seedling-tag);
}
textarea, textarea.form-control { min-height:130px;resize:vertical; }
.form-control-sm { padding:9px 12px;font-size:14px;border-radius:10px; }
select { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%232A8A93' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px; }

.btn {
  display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;
  font-family:var(--fs);font-size:15px;font-weight:400;border:none;text-decoration:none;
  padding:14px 30px;border-radius:999px;transition:background 0.25s, transform 0.1s;
}
.btn-primary { background:var(--btn);color:var(--pure-white); }
.btn-primary:hover { background:var(--btn-h); }
.btn-sm { padding:9px 18px;font-size:13px; }
.btn:active { transform:scale(0.985); }

.message {
  font-family:var(--fs);font-size:14px;line-height:1.6;color:var(--seedling-dd);
  background:var(--seedling-tag);border-radius:10px;padding:12px 16px;
}

/* Date input — native picker, tinted indicator */
input[type="date"]::-webkit-calendar-picker-indicator { cursor:pointer;opacity:0.55;transition:opacity 0.2s; }
input[type="date"]:hover::-webkit-calendar-picker-indicator { opacity:0.9; }

/* Checkbox & radio */
input[type="checkbox"], input[type="radio"] {
  appearance:none;-webkit-appearance:none;flex:0 0 20px;width:20px;height:20px;margin:0;
  background:var(--pure-white);border:1.5px solid var(--seedling-line);cursor:pointer;
  position:relative;vertical-align:middle;transition:border-color 0.2s, background 0.2s, box-shadow 0.2s;
}
input[type="checkbox"] { border-radius:6px; }
input[type="radio"] { border-radius:50%; }
input[type="checkbox"]:checked, input[type="radio"]:checked { background:var(--seedling);border-color:var(--seedling); }
input[type="checkbox"]:checked::after {
  content:"";position:absolute;left:6px;top:2px;width:5px;height:10px;
  border:solid var(--pure-white);border-width:0 2px 2px 0;transform:rotate(45deg);
}
input[type="radio"]:checked::after { content:"";position:absolute;inset:0;margin:auto;width:8px;height:8px;border-radius:50%;background:var(--pure-white); }
input[type="checkbox"]:focus-visible, input[type="radio"]:focus-visible { outline:none;box-shadow:0 0 0 3px var(--seedling-tag); }

/* Signature input — what you type renders in a script font */
.s-signature.form-control, input.s-signature {
  font-family:var(--sig);font-size:30px;font-weight:600;line-height:1.1;
  color:var(--text);padding-top:10px;padding-bottom:6px;letter-spacing:0.5px;
}
.s-signature.form-control::placeholder, input.s-signature::placeholder { font-family:var(--fs);font-size:15px;font-weight:400;letter-spacing:0;color:var(--cool); }

/* Option row + group (wraps input + text) */
label.s-opt {
  display:flex;align-items:center;gap:10px;margin-bottom:0;cursor:pointer;
  font-family:var(--fs);font-size:15px;font-weight:400;color:var(--text);padding:7px 0;
}
.s-opt-group { display:flex;flex-direction:column;gap:2px; }
.s-opt-inline { display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px; }
.s-opt-inline label.s-opt { padding:4px 0; }

/* Document / agreement form pages (legal text + intake) */
.s-form-page { padding:130px 24px 100px; }
.s-form-wrap { max-width:880px;margin:0 auto; }
.s-form-wrap > h2 { font-family:var(--ff);font-weight:400;color:var(--pure-white);font-size:clamp(26px,3.5vw,34px);margin:40px 0 8px;line-height:1.15; }
.s-form-wrap > h2:first-child { margin-top:0; }
.s-form-lead { font-family:var(--fs);color:var(--white-80);font-size:16px;margin-bottom:24px;max-width:620px; }
.s-doc-card {
  background:var(--pure-white);color:var(--text);border-radius:16px;
  padding:clamp(28px,4vw,44px);margin-bottom:20px;line-height:1.7;font-size:15px;
}
.s-doc-card h3 { font-family:var(--ff);font-weight:400;color:var(--seedling);font-size:19px;margin:24px 0 8px; }
.s-doc-card h3:first-child { margin-top:0; }
.s-doc-card p { margin-bottom:12px; }
.s-doc-card ul { margin:0 0 14px 22px; }
.s-doc-card li { margin-bottom:8px; }
.s-doc-card a { color:var(--seedling);text-decoration:underline; }
.s-doc-card hr { border:none;border-top:1px solid var(--border-light);margin:24px 0; }
.s-doc-card table { width:100%;border-collapse:collapse;margin:16px 0;font-size:14px; }
.s-doc-card th { background:var(--white);text-align:left;padding:11px 14px;font-weight:500;color:var(--text); }
.s-doc-card td { border-top:1px solid var(--border-light);padding:11px 14px; }
.s-doc-card td:last-child, .s-doc-card th:last-child { text-align:right;white-space:nowrap; }
.s-form-grid { display:grid;grid-template-columns:1fr 1fr;gap:20px; }
.s-form-grid-3 { display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px; }
.s-form-actions { display:flex;justify-content:flex-end;align-items:center;gap:18px;margin-top:28px;flex-wrap:wrap; }
.s-form-cancel { font-family:var(--fs);font-size:15px;color:var(--muted);text-decoration:none;cursor:pointer;background:none;border:none; }
.s-form-cancel:hover { color:var(--text); }
.s-form-sent { text-align:center;background:var(--pure-white);border-radius:16px;padding:56px 32px; }
.s-form-sent img { width:96px;height:auto;margin:0 auto 20px; }

/* ═══ Layout chrome: skip link, container, sections, FAQ, contact ═══ */
.skip-link { position:absolute;top:-100%;left:1rem;background:var(--seedling);color:#fff;padding:0.6rem 1rem;border-radius:8px;font-family:var(--fs);font-size:14px;z-index:10000;text-decoration:none; }
.skip-link:focus { top:1rem; }
.container { max-width:1280px;margin:0 auto;padding:0 clamp(20px,4vw,48px); }
.s-section-inner { max-width:1280px;margin:0 auto;padding:0 clamp(20px,4vw,48px); }
.s-section-label { font-family:var(--fs);font-size:13px;font-weight:400;color:var(--seedling);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:10px;text-align:center; }
.s-section-heading { font-family:var(--ff);font-weight:400;color:var(--text);font-size:clamp(28px,3.5vw,40px);line-height:1.12;text-align:center;margin-bottom:40px; }

.s-faq-section { background:var(--bg-white,#fff);padding:clamp(64px,9vw,120px) 0;position:relative;z-index:5; }
.s-faq-list { max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:12px; }
.s-faq-item { border:1px solid var(--border-light);border-radius:14px;background:var(--pure-white);overflow:hidden; }
.s-faq-item summary { list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;font-family:var(--ff);font-size:18px;color:var(--text); }
.s-faq-item summary::-webkit-details-marker { display:none; }
.s-faq-item summary i { position:relative;flex:0 0 18px;height:18px; }
.s-faq-item summary i::before, .s-faq-item summary i::after { content:"";position:absolute;background:var(--seedling);border-radius:2px;transition:transform 0.25s; }
.s-faq-item summary i::before { top:8px;left:0;width:18px;height:2px; }
.s-faq-item summary i::after { top:0;left:8px;width:2px;height:18px; }
.s-faq-item[open] summary i::after { transform:scaleY(0); }
.s-faq-a { padding:0 24px 22px;font-family:var(--fs);font-size:15px;color:var(--muted);line-height:1.7; }
.s-faq-a p { margin-bottom:10px; }

.s-contact-section { background:var(--ink-teal);padding:clamp(64px,9vw,110px) 0;position:relative;z-index:5; }
.s-contact-section h1, .s-contact-section h2, .s-contact-section h3, .s-contact-section label, .s-contact-section p { color:var(--pure-white); }

/* ═══ Insights listing (category) ═══ */
.s-insights-grid { display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(32px,5vw,64px);align-items:start; }
.s-article-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px; }
.s-article-card { display:block;text-decoration:none;color:inherit; }
.s-article-card .s-article-img { aspect-ratio:4/3;border-radius:14px;background:var(--seedling-l) center/cover no-repeat;margin-bottom:12px;transition:transform 0.3s; }
.s-article-card:hover .s-article-img { transform:translateY(-4px); }
.s-article-card .eyebrow { font-family:var(--fs);font-size:12px;color:var(--seedling);text-transform:uppercase;letter-spacing:0.04em;display:block;margin-bottom:4px; }
.s-article-card h3 { font-family:var(--ff);font-size:18px;color:var(--text);line-height:1.3;font-weight:400; }
.s-aside-widget { margin-bottom:32px; }
.s-aside-title { font-family:var(--fs);font-size:12px;text-transform:uppercase;letter-spacing:0.06em;color:var(--seedling);margin-bottom:12px; }
.s-aside-list a { display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--border-light);font-family:var(--fs);font-size:14px;color:var(--text);text-decoration:none;transition:color 0.2s; }
.s-aside-list a:hover { color:var(--seedling); }
.s-aside-list .badge { color:var(--cool);font-size:12px; }
.s-aside-feed a { display:flex;gap:12px;align-items:center;padding:9px 0;text-decoration:none;color:var(--text); }
.s-aside-feed img { width:52px;height:52px;border-radius:10px;object-fit:cover;flex:0 0 52px; }
.s-aside-feed h3 { font-family:var(--fs);font-size:14px;font-weight:400;color:var(--text);line-height:1.35; }
@media (max-width:860px){ .s-insights-grid{ grid-template-columns:1fr; } }

/* ═══ Article (post) page ═══ */
.s-article-content { font-family:var(--fs);font-size:17px;line-height:1.8;color:var(--text);max-width:720px; }
.s-article-content h2 { font-family:var(--ff);font-weight:400;font-size:clamp(24px,3vw,30px);color:var(--text);margin:36px 0 12px; }
.s-article-content h3 { font-family:var(--ff);font-weight:400;font-size:22px;color:var(--text);margin:28px 0 10px; }
.s-article-content p { margin-bottom:18px; }
.s-article-content ul, .s-article-content ol { margin:0 0 18px 22px; }
.s-article-content li { margin-bottom:8px; }
.s-article-content a { color:var(--seedling);text-decoration:underline; }
.s-article-content img { max-width:100%;height:auto;border-radius:14px;margin:20px 0; }
.s-article-content blockquote { border-left:3px solid var(--seedling-line);padding-left:20px;margin:22px 0;font-style:italic;color:var(--muted); }
.s-side-card { background:var(--pure-white);border:1px solid var(--border-light);border-radius:16px;padding:24px;margin-bottom:24px; }
.s-side-cta { background:var(--ink-teal);border:none;text-align:center; }
.s-side-cta h4 { font-family:var(--ff);font-weight:400;font-size:20px;color:var(--pure-white);margin-bottom:10px; }
.s-side-cta p { font-family:var(--fs);font-size:14px;color:var(--white-70);line-height:1.6;margin-bottom:16px; }
.s-side-author { text-align:center; }
.s-side-author img { width:88px;height:88px;border-radius:50%;object-fit:cover;margin:0 auto 12px;display:block; }
.s-side-author h5 { font-family:var(--ff);font-weight:400;font-size:18px;color:var(--text);margin-bottom:8px; }
.s-side-author p { font-family:var(--fs);font-size:13.5px;color:var(--muted);line-height:1.65;margin-bottom:16px; }

/* utilities the form views rely on */
.text-white { color:var(--pure-white) !important; }
.w-100 { width:100% !important; }

/* ═══ RESPONSIVE ═══ */
@media (max-width:768px) {
  .s-nav-links { display:none; }
  .s-nav-mobile-row { display:flex; }
  .s-hamburger { display:block; }
  .s-nav-cta-mobile { padding:8px 16px;font-size:13px; }
  .s-nav-inner { height:60px; }
  .s-nav-brand { font-size:18px; }

  /* Section padding */
  section { padding-left:20px !important; padding-right:20px !important; }
  footer { padding-left:20px !important; padding-right:20px !important; }

  /* Hero */
  section[style*="min-height:70vh"] { padding-top:100px !important; padding-bottom:80px !important; min-height:auto !important; }

  /* Grids → single column on mobile */
  [style*="grid-template-columns:1fr 1fr;gap:80px"],
  [style*="grid-template-columns:1fr 1.5fr"],
  [style*="grid-template-columns:1fr 1.4fr"],
  [style*="grid-template-columns:1fr 1fr 1fr;gap:18px"],
  [style*="grid-template-columns:1fr 1fr 1fr;gap:24px"],
  [style*="grid-template-columns:1fr 1fr 1fr;gap:16px"],
  [style*="grid-template-columns:1fr 1fr 1fr;gap:14px"],
  [style*="grid-template-columns:1fr auto"] {
    grid-template-columns:1fr !important;
    gap:24px !important;
  }

  /* Catch-all: any equal-fraction grid (2- or 3-col, any gap, and the
     space-normalised form the fade-in JS produces) → single column */
  [style*="grid-template-columns:1fr 1fr"],
  [style*="grid-template-columns: 1fr 1fr"] {
    grid-template-columns:1fr !important;
  }

  /* Footer columns */
  [style*="grid-template-columns:2fr 1fr 1fr 1fr"] {
    grid-template-columns:1fr 1fr !important;
    gap:24px !important;
  }

  /* Who We Help 2-col stack */
  .s-who-grid {
    grid-template-columns:1fr !important;
    gap:32px !important;
  }

  /* Section vertical padding */
  section { padding-top:64px !important; padding-bottom:64px !important; }

  /* Who We Help timeline columns */
  [style*="grid-template-columns:48px 1fr"] {
    grid-template-columns:36px 1fr !important;
  }

  /* Sticky → static on mobile (match both "position:sticky" and the
     space-normalised "position: sticky" the fade-in JS re-serialises) */
  [style*="position:sticky"], [style*="position: sticky"] { position:static !important; }

  /* Font clamping overrides */
  h1, [style*="font-size:clamp(44px"] { font-size:32px !important; }
  h2, [style*="font-size:clamp(30px"], [style*="font-size:clamp(28px"], [style*="font-size:clamp(26px"] { font-size:26px !important; }



  /* Bento image cards */
  [style*="grid-row:1/3"] { grid-row:auto !important; min-height:200px !important; }

  /* Bento grid */
  [style*="grid-template-columns:1fr 1fr 1fr;grid-template-rows"] {
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  /* Reset every bento card's explicit placement so they stack cleanly */
  [style*="grid-template-columns:1fr 1fr 1fr;grid-template-rows"] > div {
    grid-column:auto !important; grid-row:auto !important; min-height:auto !important;
  }

  /* CTA buttons wrap */
  [style*="display:flex;gap:14px;justify-content:center"] { flex-direction:column !important; align-items:center !important; }
  [style*="display:flex;gap:16px;align-items:center"] { flex-direction:column !important; align-items:flex-start !important; }
}

@media (max-width:480px) {
  .s-nav-brand [data-brand-second] { display:none; }
  [style*="grid-template-columns:2fr 1fr 1fr 1fr"] { grid-template-columns:1fr !important; }
}

/* ---- Profile view toggle: For adults / For kids ---- */
 .s-profile-toggle{display:flex;gap:8px;margin-bottom:32px;flex-wrap:wrap}
 .s-profile-toggle input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
 .s-profile-toggle label{font-family:var(--fs);font-size:14px;line-height:1;padding:11px 20px;border-radius:999px;border:1px solid rgba(0,0,0,0.15);color:var(--muted);cursor:pointer;transition:background .2s,color .2s,border-color .2s;user-select:none}
 .s-profile-toggle input:checked + label{background:var(--btn);border-color:var(--btn);color:#fff}
 .s-profile-toggle input:focus-visible + label{outline:2px solid var(--seedling);outline-offset:3px}
 .s-profile-panel{display:none}
 #s-panel-adults{display:block}                      /* no :has() support -> adults view, the default */
 .s-profile-views:has(#s-view-kids:checked) #s-panel-adults{display:none}
 .s-profile-views:has(#s-view-kids:checked) #s-panel-kids{display:block}
 .s-profile-views:has(#s-view-adults:checked) #s-panel-adults{display:block}
 .s-profile-views:has(#s-view-adults:checked) #s-panel-kids{display:none}
 @media (max-width:768px){ .s-profile-toggle label{padding:10px 16px;font-size:13px} }

/* ---- Clinic chooser: sits on the teal band, so light-on-dark ---- */
.s-clinic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0 4px}
.s-clinic-opt{display:flex;align-items:flex-start;gap:12px;padding:16px 18px;border:1px solid rgba(255,255,255,0.22);border-radius:12px;background:rgba(255,255,255,0.05);cursor:pointer;transition:background .18s ease,border-color .18s ease}
.s-clinic-opt:hover{background:rgba(255,255,255,0.11);border-color:rgba(255,255,255,0.45)}
.s-clinic-opt:has(input:checked){background:rgba(255,255,255,0.17);border-color:var(--seedling-l);box-shadow:inset 0 0 0 1px var(--seedling-l)}
.s-clinic-opt:has(input:focus-visible){outline:2px solid var(--seedling-l);outline-offset:3px}
.s-clinic-opt input{accent-color:var(--seedling-l);width:18px;height:18px;margin:2px 0 0;flex-shrink:0;cursor:pointer}
.s-clinic-name{font-family:var(--fs);font-size:15px;color:#fff;line-height:1.35;display:block}
.s-clinic-sub{font-family:var(--fs);font-size:12.5px;color:rgba(255,255,255,0.62);line-height:1.4;display:block;margin-top:3px}
@media(max-width:820px){.s-clinic-grid{grid-template-columns:1fr}}
.s-clinic-invalid .s-clinic-opt{border-color:#ffb4a8;box-shadow:inset 0 0 0 1px rgba(255,180,168,0.5)}
.s-clinic-invalid .s-clinic-opt:has(input:checked){border-color:var(--seedling-l);box-shadow:inset 0 0 0 1px var(--seedling-l)}
