

/* Headings: Young Serif (OFL) with the lowercase o and capital O counters rotated 18° so the letters stand upright. */
@font-face{font-family:"Young Serif Ibolit";src:url(/assets/fonts/ysi.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
/* Layout: Carbon-style clinic site. Paper-white pages, olive bands, pastel brand-tinted cards, pill CTAs, one page shown at a time via hash routes. Single light theme by design: this is a brand site. */
:root{
  /* Brand palette (approved Oct 17, 2026). Green = primary, Terracotta = secondary, Ivory & Gold = backgrounds/fills */
  --green:#506146; --olive:#4C5442; --olive-deep:#3A4233; --sage:#B1B8A7; --sage-10:#DADED3;
  --terra:#9E6041; --terra-600:#865036; --brown:#6D432E; --brown-10:#EDD8CB;
  --paper:#FBF9F6; --cream:#F3F0EC; --line:#E6E0D9; --gold-10:#E6E0D9; --sand:#CFC3A5; --gold:#BAA775; --gold-bright:#E6C566; --gold-label:#E6CD8A;
  --ink:#262C21; --muted:#5E6656; --cream-2:#ECE8E2;
  /* Interface defaults */
  --field:#8F8A7C; --placeholder:#6B7064; --disabled-bg:#ECE8E2; --disabled-tx:#9A978F;
  /* Status colors: background / border / icon / text */
  --success-bg:#E8F0E6; --success-bd:#A9C6A6; --success-ic:#5E8F5A; --success-tx:#36622F;
  --warning-bg:#FAF1DA; --warning-bd:#E6CD8A; --warning-ic:#C99A2E; --warning-tx:#7A5A12;
  --error-bg:#F8E5E1; --error-bd:#E2AEA5; --error-ic:#B4473A; --error-tx:#8E2F25;
  --info-bg:#E5EDF1; --info-bd:#AFC5D2; --info-ic:#557E96; --info-tx:#2F566C;
  --display:"Young Serif Ibolit", "Young Serif", Georgia, "Times New Roman", serif;
  --body:"Crimson Pro", "Spectral", Georgia, "Times New Roman", serif;
  --r-lg:28px; --r-md:20px; --r-sm:12px;
  --logo:url(/assets/img/logo_tag.png); --mark:url(/assets/img/mark.png);
  --il-chiro:url(/assets/img/il_chiro.webp); --il-massage:url(/assets/img/il_massage.webp); --il-rehab:url(/assets/img/il_rehab.webp); --il-laser:url(/assets/img/il_laser.webp);
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:19px;line-height:1.38;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:#fff}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;line-height:1.12;margin:0;text-wrap:balance;color:var(--olive)}
p{margin:0}
ul{margin:0;padding:0}
.wrap{max-width:1200px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.sec{padding-block:clamp(56px,8vw,104px)}
.sec.tight{padding-block:clamp(40px,5vw,64px)}
.bg-cream{background:var(--cream)}
.bg-linen{background:var(--line)}
.bg-green{background:var(--green);color:var(--cream)}
.bg-green .sec-head h2{color:var(--cream)}
.bg-green .sec-head .lede{color:rgba(243,240,236,.88)}
.bg-green .sec-head .eyebrow{color:var(--gold-label)}
.bg-green .svc{border-color:transparent}
.bg-green :focus-visible{outline-color:var(--gold-bright)}
.bg-white{background:#fff}
.stack{display:flex;flex-direction:column;gap:16px}
.stack-lg{display:flex;flex-direction:column;gap:28px}
.row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.eyebrow{font-weight:600;font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:var(--terra-600)}
.display{font-size:clamp(2.05rem,3.6vw,3.2rem);letter-spacing:-.01em}
.h2{font-size:clamp(1.9rem,3.2vw,2.75rem)}
.h3{font-size:1.32rem;line-height:1.2}
.lede{font-size:clamp(1.15rem,1.6vw,1.32rem);color:var(--muted);max-width:62ch}
.muted{color:var(--muted)}
.small{font-size:16px;line-height:1.34}
.sec-head{display:flex;flex-direction:column;gap:14px;max-width:760px;margin-bottom:clamp(32px,4vw,52px)}
.sec-head.center{text-align:center;margin-left:auto;margin-right:auto;align-items:center}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--body);font-weight:600;font-size:18px;line-height:1;padding:15px 26px;border-radius:999px;border:2px solid transparent;text-decoration:none;cursor:pointer;transition:background .18s,color .18s,border-color .18s,transform .18s;white-space:nowrap}
.btn svg{width:18px;height:18px}
.btn-primary{background:var(--green);color:#fff}
.btn-primary:hover{background:var(--olive-deep)}
.btn-ghost{background:transparent;color:var(--olive);border-color:var(--olive)}
.btn-ghost:hover{background:var(--olive);color:#fff}
.btn-light{background:var(--cream);color:var(--olive)}
.btn-light:hover{background:#fff}
.btn-line-light{background:transparent;color:var(--cream);border-color:rgba(243,240,236,.6)}
.btn-line-light:hover{border-color:var(--cream);background:rgba(243,240,236,.1)}
.btn-sm{font-size:16px;padding:11px 20px}
.btn:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--terra);outline-offset:2px}
.link-arrow{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--green);text-decoration:none;font-size:18px}
.link-arrow svg{width:18px;height:18px;transition:transform .18s}
.link-arrow:hover svg{transform:translateX(4px)}

/* Icons */
.ic{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ic-tile{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;flex:none}
.ic-tile .ic{width:28px;height:28px}

/* Logo (single-color mask so it takes any brand color) */
.logo{display:block;aspect-ratio:900/295;width:178px;background:var(--olive);-webkit-mask:var(--logo) center/contain no-repeat;mask:var(--logo) center/contain no-repeat}
.mark{display:block;aspect-ratio:420/606;background:var(--olive);-webkit-mask:var(--mark) center/contain no-repeat;mask:var(--mark) center/contain no-repeat}

/* Hand-drawn service illustrations (olive line art on transparent ground) */
.il{display:block;background:center/contain no-repeat;width:100%;height:100%}
.il-chiro{background-image:var(--il-chiro)} .il-massage{background-image:var(--il-massage)} .il-rehab{background-image:var(--il-rehab)} .il-laser{background-image:var(--il-laser)}
.card.svc .illus{height:auto;aspect-ratio:5/4;padding:14px;max-width:100%}
.card.c-sage .illus,.card.c-gold .illus,.card.c-brown .illus,.card.c-cream .illus{background:rgba(255,255,255,.6)}
.dd-menu .ic-tile.il-tile{width:52px;height:52px;padding:4px;background:var(--cream)}
.hero-illus{display:grid;place-items:center}
.hero-illus .frame{background:var(--cream);border-radius:50%;width:min(400px,100%);aspect-ratio:1;padding:9%;box-shadow:0 30px 60px rgba(0,0,0,.18)}
@media (max-width:900px){.hero-illus .frame{width:min(280px,80%)}}

/* Prototype bar */
.proto{background:var(--olive-deep);color:var(--cream);font-size:15px}
.proto .wrap{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-block:7px;flex-wrap:wrap}
.proto b{font-weight:600;color:var(--gold)}
.toggle{display:inline-flex;align-items:center;gap:10px;cursor:pointer;user-select:none}
.toggle input{appearance:none;width:38px;height:22px;border-radius:999px;background:rgba(243,240,236,.25);position:relative;cursor:pointer;margin:0;transition:background .18s}
.toggle input::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--cream);transition:transform .18s}
.toggle input:checked{background:var(--gold-bright)}
.toggle input:checked::after{transform:translateX(16px)}

/* Header */
.hdr{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:#fff;border-bottom:1px solid var(--line)}
.hdr .wrap{display:flex;align-items:center;gap:20px;min-height:78px}
.hdr .brand{flex:none;text-decoration:none}
.nav{display:flex;align-items:center;gap:4px;margin-left:auto}
.nav > a,.nav .dd > button{font-family:var(--body);font-size:18px;font-weight:500;color:var(--ink);text-decoration:none;padding:5px 11px;white-space:nowrap;border-radius:999px;background:none;border:0;cursor:pointer;display:inline-flex;align-items:center;gap:4px}
.nav > a:hover,.nav .dd > button:hover{background:var(--cream)}
.nav a.on,.nav .dd.on > button{color:var(--green);box-shadow:inset 0 0 0 1.5px var(--green);border-radius:999px;background:none}
.nav a.on:hover,.nav .dd.on > button:hover{background:none}
.nav .dd{position:relative}
.nav .dd > button .ic{width:16px;height:16px}
.dd-menu{position:absolute;top:calc(100% + 8px);left:-8px;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);box-shadow:0 18px 40px rgba(38,44,33,.12);padding:10px;width:300px;display:none;flex-direction:column;gap:2px}
.dd:hover .dd-menu,.dd:focus-within .dd-menu{display:flex}
.dd-menu::before{content:"";position:absolute;inset:-10px 0 auto;height:10px}
.dd-menu a{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;text-decoration:none;font-weight:500}
.dd-menu a:hover{background:var(--cream)}
.dd-menu .ic-tile{width:38px;height:38px;border-radius:12px}
.dd-menu .ic-tile .ic{width:20px;height:20px}
.hdr .cta{flex:none}
.burger{display:none;margin-left:auto;background:none;border:0;padding:10px;cursor:pointer;color:var(--olive)}
.burger .ic{width:28px;height:28px}
.mnav{display:none}
@media (max-width:1240px){
  .nav,.hdr .cta{display:none}
  .burger{display:inline-flex}
  .mnav.open{display:block;position:fixed;inset:calc(env(safe-area-inset-top,0px) + 78px) 0 0;background:#fff;z-index:49;overflow:auto;padding-block:16px 120px}
  .mnav .wrap{display:flex;flex-direction:column;gap:2px}
  .mnav a{font-family:var(--display);font-size:24px;color:var(--olive);text-decoration:none;padding:12px 0;border-bottom:1px solid var(--line)}
  .mnav a.sub{font-family:var(--body);font-size:19px;padding-left:18px;color:var(--ink)}
  .mnav .btn{margin-top:20px;font-family:var(--body);font-size:18px;border-bottom:0;color:#fff;padding:16px}
}

/* Pages */
[data-page]{display:none}
[data-page].show{display:block;animation:pageIn .35s ease both}
@keyframes pageIn{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}

/* Hero */
/* Page hero: full-width brand band. To use a photo later, set --hero-img on the section, e.g. style="--hero-img:url(provider.jpg)"; the green stays on top as an overlay so text keeps its contrast. */
.hero,.page-hero{position:relative;overflow:hidden;color:var(--cream);background-color:var(--olive-deep);
  background-image:linear-gradient(100deg,rgba(58,66,51,.97) 0%,rgba(58,66,51,.86) 48%,rgba(76,84,66,.55) 100%),var(--hero-img,none);
  background-size:cover;background-position:center}
/* Home hero: rotating photo slideshow on the right, matte green layer on the left for the text */
.hero{padding-block:clamp(56px,8vw,120px);background-image:none;background-color:var(--olive-deep)}
/* The photo area starts just right of the text column (tracking the centered content on wide screens) and feathers into the green, so there is no visible edge at any width. */
.hero-slides{position:absolute;top:0;bottom:0;right:0;left:max(28%,calc((100% - 1200px) / 2 + 330px));z-index:0;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.12) 12%,rgba(0,0,0,.4) 24%,rgba(0,0,0,.75) 36%,#000 50%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.12) 12%,rgba(0,0,0,.4) 24%,rgba(0,0,0,.75) 36%,#000 50%)}
.hero-slides::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(58,66,51,.6) 0%,rgba(58,66,51,.3) 35%,rgba(58,66,51,.12) 65%,rgba(58,66,51,.06) 100%)}
.hero-slide{position:absolute;inset:0;background-size:cover;background-repeat:no-repeat;opacity:0;transition:opacity 1.6s ease-in-out}
.hero-slide.on{opacity:1}
.hs1{background-image:url(/assets/img/hs1.jpg);background-position:68% 22%}
.hs2{background-image:url(/assets/img/hs2.jpg);background-position:58% 30%}
.hs3{background-image:url(/assets/img/hs3.jpg);background-position:70% 25%}
.hs4{background-image:url(/assets/img/hs4.jpg);background-position:66% 22%}
.hs5{background-image:url(/assets/img/hs5.jpg);background-position:70% 30%}
.hs6{background-image:url(/assets/img/hs6.jpg);background-position:64% 22%}
.hs7{background-image:url(/assets/img/hs7.jpg);background-position:70% 20%}
.hs8{background-image:url(/assets/img/hs8.jpg);background-position:68% 25%}
.hero > .wrap{position:relative;z-index:2}
@media (max-width:900px){.hero-slides{left:0;-webkit-mask-image:none;mask-image:none}.hero-slides::after{background:linear-gradient(rgba(58,66,51,.84),rgba(58,66,51,.9))}}
@media (prefers-reduced-motion:reduce){.hero-slide{transition:none}}
.hero-copy .jump{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.hero-copy .jump a{font-size:16px;font-weight:500;color:var(--cream);text-decoration:none;padding:6px 14px;border-radius:999px;border:1px solid rgba(243,240,236,.4)}
.hero-copy .jump a:hover{background:rgba(243,240,236,.12)}
.hero h1,.page-hero h1{color:var(--cream)}
.hero .lede,.page-hero .lede{color:rgba(243,240,236,.88)}
.hero .eyebrow,.page-hero .eyebrow{color:var(--gold-label)}
.hero .stars{color:var(--gold-bright)}
.hero-copy .btn-primary{background:var(--cream);color:var(--olive)}
.hero-copy .btn-primary:hover{background:#fff}
.hero-copy .btn-ghost{color:var(--cream);border-color:rgba(243,240,236,.6)}
.hero-copy .btn-ghost:hover{background:rgba(243,240,236,.12);color:#fff;border-color:var(--cream)}
.hero .appt,.page-hero .appt,.hero .card,.page-hero .card{color:var(--ink)}
.hero-mark{display:grid;place-items:center}
.hero-mark .mark{width:min(240px,60%);background:var(--cream);opacity:.9}
@media (max-width:900px){.hero-mark{display:none}}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(28px,4vw,56px);align-items:start}
.hero-copy{display:flex;flex-direction:column;gap:22px;min-width:0}
.hero-copy .row{margin-top:6px}
.page-hero{padding-block:clamp(48px,7vw,104px)}
.page-hero .hero-grid{align-items:center}
@media (max-width:900px){.hero-grid{grid-template-columns:minmax(0,1fr)}}

/* Photo placeholder */
.photo{position:relative;border-radius:var(--r-lg);overflow:hidden;min-height:260px;background:
  radial-gradient(120% 90% at 85% 10%,rgba(186,167,117,.35),transparent 55%),
  radial-gradient(90% 80% at 10% 100%,rgba(80,97,70,.35),transparent 60%),
  linear-gradient(135deg,var(--sage-10),var(--sage));display:flex;align-items:flex-end;padding:20px;max-width:100%}
.why-media{position:relative;padding:0 0 28px 28px}
.why-photo{min-height:0;aspect-ratio:1/1;background:var(--olive-deep) url(/assets/img/why.jpg) 50% 35%/cover no-repeat;box-shadow:0 24px 50px rgba(38,44,33,.14)}
.why-badge{position:absolute;left:0;bottom:0;width:clamp(104px,11vw,148px);aspect-ratio:1;border-radius:50%;background:var(--cream);border:6px solid var(--paper);box-shadow:0 12px 30px rgba(38,44,33,.18);display:grid;place-items:center}
.why-badge .mark{width:56%;background:var(--green)}
@media (max-width:520px){.why-media{padding:0 0 20px 16px}}
.photo .cap{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.88);color:var(--olive);border-radius:999px;padding:7px 14px;font-size:15px;font-weight:500}
.photo .cap .ic{width:18px;height:18px}
.photo .ghost{position:absolute;right:-30px;bottom:-40px;width:58%;max-width:260px;opacity:.16;background:var(--olive)}
.photo.tall{min-height:420px}
.adv-photo{border-radius:var(--r-lg);min-height:440px;max-width:100%;background:url(/assets/img/adv.jpg) 55% 35%/cover no-repeat;box-shadow:0 20px 50px rgba(38,44,33,.12)}
@media (max-width:900px){.adv-photo{min-height:300px}}
.since{position:absolute;top:18px;left:18px;display:flex;align-items:center;gap:10px;background:#fff;border-radius:16px;padding:10px 14px 10px 10px;box-shadow:0 10px 30px rgba(38,44,33,.12)}
.since .mark{width:30px}
.since b{font-family:var(--display);font-weight:400;color:var(--olive);font-size:17px;display:block;line-height:1.1}
.since span{font-size:14px;color:var(--muted)}

/* Appointment card */
.appt{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 24px 60px rgba(38,44,33,.10);padding:clamp(22px,3vw,32px);display:flex;flex-direction:column;gap:18px;min-width:0}
.appt h2{font-size:1.75rem}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative}
.chip input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.chip span{display:inline-flex;align-items:center;gap:6px;padding:9px 15px;border-radius:999px;border:1.5px solid var(--line);background:var(--paper);font-size:16.5px;font-weight:500;line-height:1.1;cursor:pointer;transition:all .15s}
.chip input:checked + span{background:var(--olive);border-color:var(--olive);color:#fff}
.chip input:focus-visible + span{outline:3px solid var(--terra);outline-offset:2px}
.hero :focus-visible,.page-hero :focus-visible,.band :focus-visible,.final :focus-visible,.ftr :focus-visible,.c-olive :focus-visible,.skip:focus-visible{outline-color:var(--gold-bright)}
.chip:hover span{border-color:var(--sage)}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fgrid .full{grid-column:1/-1}
@media (max-width:520px){.fgrid{grid-template-columns:minmax(0,1fr)}}
.field{display:flex;flex-direction:column;gap:5px;min-width:0}
.field label,.flabel{font-size:15.5px;font-weight:600;color:var(--olive)}
.field label i{font-style:normal;font-weight:400;color:var(--muted)}
.field input,.field select,.field textarea{font-family:var(--body);font-size:18px;color:var(--ink);background:var(--paper);border:1.5px solid var(--field);border-radius:12px;padding:11px 13px;width:100%;min-width:0}
.field textarea{min-height:92px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green);background:#fff;outline:none;box-shadow:0 0 0 3px rgba(80,97,70,.15)}
.field input::placeholder,.field textarea::placeholder{color:var(--placeholder);opacity:1}
::selection{background:var(--sand);color:var(--ink)}
.btn[aria-disabled="true"],.btn:disabled{background:var(--disabled-bg);color:var(--disabled-tx);border-color:var(--disabled-bg);cursor:not-allowed}
details.more{border-top:1px dashed var(--line);padding-top:12px}
details.more summary{cursor:pointer;font-weight:600;color:var(--green);list-style:none;display:flex;align-items:center;gap:6px}
details.more summary::-webkit-details-marker{display:none}
details.more summary .ic{width:18px;height:18px;transition:transform .2s}
details.more[open] summary .ic{transform:rotate(180deg)}
details.more .fgrid{margin-top:12px}
.fineprint{font-size:15px;line-height:1.34;color:var(--muted)}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:16px;line-height:1.34}
.consent input{width:20px;height:20px;margin-top:2px;accent-color:var(--green);flex:none}
.warn{display:flex;gap:10px;background:var(--warning-bg);color:var(--warning-tx);border:1px solid var(--warning-bd);border-radius:12px;padding:12px 14px;font-size:16px;line-height:1.34}
.warn .ic{width:20px;height:20px;margin-top:2px}
.done{display:flex;flex-direction:column;gap:12px;align-items:flex-start;padding:8px 0}
.done .ic-tile{background:var(--success-bg);color:var(--success-tx);border:1px solid var(--success-bd)}
.err{color:var(--error-tx);font-size:15.5px;font-weight:500}

/* Trust strip */
.trust{border-block:1px solid var(--line);background:#fff}
.trust .wrap{padding-block:22px;display:flex;flex-direction:column;gap:10px}
.trust ul{list-style:none;display:flex;justify-content:flex-start;align-items:center;flex-wrap:wrap;gap:14px 56px}
.trust:not(.six) li{white-space:nowrap}
.trust.six ul{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
.trust li{display:flex;align-items:center;gap:10px;font-weight:600;color:var(--olive);font-size:17.5px;line-height:1.25}
.trust li .ic{color:var(--green);width:26px;height:26px}
.trust .q{font-size:14.5px;color:var(--muted)}
@media (max-width:900px){.trust.six ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.trust:not(.six) ul{flex-direction:column;align-items:flex-start;gap:14px}.trust:not(.six) li{white-space:normal}}
@media (max-width:640px){.trust.six ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:420px){.trust li{font-size:16px}}

/* Card grids */
.grid{display:grid;gap:clamp(14px,1.8vw,22px)}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g5{grid-template-columns:repeat(5,minmax(0,1fr))}
.g5.mc-grid .card{padding:clamp(20px,1.8vw,26px)}
@media (max-width:1180px){.g5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.g5{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.g5{grid-template-columns:minmax(0,1fr)}}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:1000px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.g4,.g3,.g2{grid-template-columns:minmax(0,1fr)}}
.card{border-radius:var(--r-lg);padding:clamp(22px,2.4vw,30px);display:flex;flex-direction:column;gap:14px;min-width:0}
.card p{color:var(--muted)}
/* Home "Accident recovery, made clear": ivory cards, Ibolit Green icon tiles */
.mc-grid .card{background:var(--cream)} .mc-grid .card .ic-tile{background:var(--green);color:var(--cream)}
.mc-grid.mc-terra .card{background:#F7EEE8} .mc-grid.mc-terra .card .ic-tile{background:var(--terra);color:#fff}
.c-sage{background:var(--sage-10)} .c-sage .ic-tile{background:var(--sage);color:var(--olive-deep)}
.c-gold{background:var(--gold-10)} .c-gold .ic-tile{background:var(--gold);color:#fff}
.c-brown{background:var(--brown-10)} .c-brown .ic-tile{background:var(--terra);color:#fff}
.c-cream{background:var(--cream)} .c-cream .ic-tile{background:var(--green);color:var(--cream)}
.c-white{background:#fff;border:1px solid var(--line)} .c-white .ic-tile{background:var(--cream);color:var(--green)}
.c-olive{background:var(--olive);color:var(--cream)} .c-olive h3,.c-olive h2{color:var(--cream)} .c-olive p{color:rgba(243,240,236,.82)}

.svc{text-decoration:none;transition:transform .2s,box-shadow .2s}
.svc:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(38,44,33,.10)}
.svc .link-arrow{margin-top:auto;padding-top:6px}
/* Home services: dark green cards on the Linen band */
.bg-linen .card.svc.c-white{background:var(--olive);border-color:var(--olive)}
.bg-linen .card.svc.c-white h3{color:var(--cream)}
.bg-linen .card.svc.c-white p{color:rgba(243,240,236,.86)}
.bg-linen .card.svc.c-white .link-arrow{color:var(--gold-label)}
.bg-linen .card.svc.c-white:hover{background:var(--olive-deep);border-color:var(--olive-deep)}
.bg-linen .card.svc.c-white:focus-visible{outline-color:var(--olive-deep)}
.svc .illus{height:130px;border-radius:18px;display:grid;place-items:center;margin-bottom:4px}
.svc .illus .ic{width:56px;height:56px;stroke-width:1.2}
.c-sage .illus{background:var(--sage);color:var(--olive-deep)}
.c-gold .illus{background:var(--gold);color:#fff}
.c-brown .illus{background:var(--terra);color:#fff}
.c-cream .illus{background:var(--green);color:var(--cream)}

/* Steps */
.steps{display:grid;gap:clamp(14px,1.8vw,22px);counter-reset:s}
.step{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:26px 24px 24px;display:flex;flex-direction:column;gap:10px;min-width:0}
.step .n{width:42px;height:42px;border-radius:50%;background:var(--olive);color:var(--cream);font-family:var(--display);font-size:19px;display:grid;place-items:center;font-variant-numeric:tabular-nums}
.step p{color:var(--muted)}
.bg-cream .step{border-color:transparent}
/* Process band: steps on the left over matte green, photo on the right fading into the green */
.process-band{position:relative;overflow:hidden;background:var(--olive-deep);color:var(--cream)}
.pb-photo{position:absolute;top:0;bottom:0;right:0;left:max(34%,calc((100% - 1200px) / 2 + 480px));z-index:0;
  background:url(/assets/img/proc.jpg) 40% 30%/cover no-repeat;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.2) 10%,rgba(0,0,0,.6) 22%,rgba(0,0,0,.9) 34%,#000 44%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.2) 10%,rgba(0,0,0,.6) 22%,rgba(0,0,0,.9) 34%,#000 44%)}
.pb-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(58,66,51,.55) 0%,rgba(58,66,51,.25) 40%,rgba(58,66,51,.1) 100%)}
.process-band > .wrap{position:relative;z-index:1}
.pb-content{max-width:540px;display:flex;flex-direction:column;gap:18px}
.process-band .eyebrow{color:var(--gold-label)}
.process-band h2{color:var(--cream)}
.pb-steps{list-style:none;margin:6px 0 4px;padding:0;display:flex;flex-direction:column}
.pb-steps li{display:grid;grid-template-columns:46px minmax(0,1fr);gap:18px;position:relative;padding-bottom:24px}
.pb-steps li:last-child{padding-bottom:0}
.pb-steps li::before{content:"";position:absolute;left:22px;top:50px;bottom:4px;width:2px;background:rgba(243,240,236,.22)}
.pb-steps li:last-child::before{display:none}
.pb-steps .n{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-size:19px;color:var(--ink);font-variant-numeric:tabular-nums}
.pb-steps .n{background:#DADED3}
.pb-steps h3{margin:10px 0 4px;font-family:var(--display);font-weight:400;font-size:1.3rem;line-height:1.2;color:var(--cream)}
.pb-steps p{color:rgba(243,240,236,.84);font-size:17.5px}
.process-band :focus-visible{outline-color:var(--gold-bright)}
@media (max-width:900px){.pb-photo{left:0;-webkit-mask-image:none;mask-image:none}.pb-photo::after{background:linear-gradient(rgba(58,66,51,.86),rgba(58,66,51,.92))}}

.steps-grad .step:nth-child(1) .n{background:var(--sage);color:var(--ink)}
.steps-grad .step:nth-child(2) .n{background:#6C7B60;color:#fff}
.steps-grad .step:nth-child(3) .n{background:var(--green);color:#fff}
.steps-grad .step:nth-child(4) .n{background:var(--olive-deep);color:#fff}
.steps.line{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1000px){.steps.line{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.steps.line{grid-template-columns:minmax(0,1fr)}}

/* Split sections */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
.split.top{align-items:start}
@media (max-width:900px){.split{grid-template-columns:minmax(0,1fr)}}
.checks{list-style:none;display:grid;gap:10px}
.checks li{display:flex;gap:12px;align-items:flex-start;font-size:18.5px}
.checks li::before{content:"";flex:none;width:22px;height:22px;margin-top:3px;border-radius:50%;background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F3F0EB' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/14px no-repeat}
.checks.two{grid-template-columns:1fr 1fr;column-gap:24px}
@media (max-width:640px){.checks.two{grid-template-columns:minmax(0,1fr)}}
.pills{display:flex;flex-wrap:wrap;gap:10px}
.pill{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;background:#fff;border:1.5px solid var(--line);font-weight:500;font-size:17.5px;color:var(--ink);text-decoration:none;transition:all .15s}
a.pill:hover{border-color:var(--green);background:var(--sage-10)}
a.pill .ic{width:16px;height:16px;color:var(--green)}

/* Values list */
.values{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,72px);align-items:start}
.values .sec-head{position:sticky;top:120px}
.values-mark{width:clamp(130px,14vw,180px);margin-bottom:10px}
/* Values: mark + heading row, five value cards underneath, light green ground */
.crumb{display:inline-flex;align-items:center;gap:8px;color:rgba(243,240,236,.85);text-decoration:none;font-size:16px;font-weight:600;margin-bottom:-4px}
.crumb .ic{width:16px;height:16px;transform:scaleX(-1)}
.crumb:hover{color:var(--cream);text-decoration:underline}
.kids-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(16px,3vw,32px);align-items:center;background:var(--sage-10);border-radius:var(--r-lg);padding:clamp(24px,3.5vw,40px);text-decoration:none;color:var(--ink);transition:background .2s}
.kids-card:hover{background:#CFD4C6}
.kids-card .ic-tile{background:var(--green);color:var(--cream)}
.kids-card .h3{font-family:var(--display);font-weight:400;line-height:1.2;font-size:clamp(1.3rem,2.2vw,1.7rem);color:var(--olive)}
@media (max-width:640px){.kids-card{grid-template-columns:minmax(0,1fr)}}
/* Got Into a Crash? page */
.crash-hero{background-image:none!important;background-color:var(--olive-deep)!important;min-height:clamp(560px,48vw,700px);display:flex;align-items:center}
.crash-hero > .wrap{position:relative;z-index:2;width:100%}
.crash-hero .hero-copy{max-width:600px}
.crash-hero .hl{color:var(--cream);font-weight:600}
.crash-hero .hero-sub{color:rgba(243,240,236,.78);max-width:52ch}
.ch-photo{position:absolute;top:0;bottom:0;right:0;left:max(30%,calc((100% - 1200px) / 2 + 380px));z-index:0;background:url(/assets/img/crash.jpg) 55% 40%/cover no-repeat;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.12) 12%,rgba(0,0,0,.4) 24%,rgba(0,0,0,.75) 36%,#000 50%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.12) 12%,rgba(0,0,0,.4) 24%,rgba(0,0,0,.75) 36%,#000 50%)}
.ch-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(58,66,51,.6) 0%,rgba(58,66,51,.3) 35%,rgba(58,66,51,.12) 65%,rgba(58,66,51,.06) 100%)}
@media (max-width:900px){.ch-photo{left:0;-webkit-mask-image:none;mask-image:none;background-position:60% 40%}.ch-photo::after{background:linear-gradient(rgba(58,66,51,.86),rgba(58,66,51,.92))}}
.safety{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px 22px;align-items:start;background:var(--error-bg);border:1.5px solid var(--error-bd);border-left:6px solid var(--error-ic);border-radius:var(--r-md);padding:clamp(20px,3vw,30px)}
.safety h2{color:var(--error-tx)}
.safety p{color:var(--ink);max-width:80ch}
.safety b{color:var(--error-tx)}
.safety-ic{width:48px;height:48px;border-radius:50%;background:var(--error-ic);color:#fff;display:grid;place-items:center}
.safety-ic .ic{width:26px;height:26px;stroke-width:2.2}
.qs{display:flex;flex-wrap:wrap;gap:8px}
.qs span{background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:10px 14px;font-size:17.5px;color:var(--olive);font-family:var(--display);line-height:1.2}
.overwhelm{gap:14px;box-shadow:0 18px 40px rgba(38,44,33,.08)}
.overwhelm p{color:var(--ink)}
.crash-steps .step p b{color:var(--olive)}
.crash-quote{margin:clamp(32px,4vw,48px) auto 0;max-width:760px;text-align:center;font-family:var(--display);font-size:clamp(1.4rem,2.3vw,1.85rem);line-height:1.25;color:var(--green);text-wrap:balance}
.crash-quote span{color:var(--sage)}
.honest-band .wrap{position:relative;z-index:2}
.honest-band .statement{max-width:560px}
.honest-band .hb-goal{color:#F6DFC6;font-weight:600}
.hb-photo{position:absolute;top:0;bottom:0;right:0;left:max(36%,calc((100% - 1200px) / 2 + 460px));z-index:0;background:url(/assets/img/honest.jpg) 62% 35%/cover no-repeat;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.15) 12%,rgba(0,0,0,.45) 24%,rgba(0,0,0,.8) 38%,#000 52%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.15) 12%,rgba(0,0,0,.45) 24%,rgba(0,0,0,.8) 38%,#000 52%)}
.hb-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(134,80,54,.55) 0%,rgba(134,80,54,.25) 40%,rgba(134,80,54,.08) 100%)}
@media (max-width:900px){.hb-photo{left:0;-webkit-mask-image:none;mask-image:none}.hb-photo::after{background:linear-gradient(rgba(134,80,54,.88),rgba(134,80,54,.92))}}
.spirit-band .wrap{position:relative;z-index:2;display:flex;justify-content:flex-end}
.sb-copy{max-width:520px}
.spirit-band .spirit-lines li{color:var(--cream)}
.spirit-band .sb-goal{color:var(--gold-label);font-weight:600}
.sb-photo{position:absolute;top:0;bottom:0;left:0;right:max(28%,calc((100% - 1200px) / 2 + 470px));z-index:0;background:url(/assets/img/spirit.jpg) 58% 30%/cover no-repeat;
  -webkit-mask-image:linear-gradient(270deg,transparent 0%,rgba(0,0,0,.1) 14%,rgba(0,0,0,.35) 28%,rgba(0,0,0,.75) 44%,#000 58%);
  mask-image:linear-gradient(270deg,transparent 0%,rgba(0,0,0,.1) 14%,rgba(0,0,0,.35) 28%,rgba(0,0,0,.75) 44%,#000 58%)}
.sb-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(270deg,rgba(58,66,51,.55) 0%,rgba(58,66,51,.25) 40%,rgba(58,66,51,.08) 100%)}
@media (max-width:900px){.sb-photo{right:0;-webkit-mask-image:none;mask-image:none}.sb-photo::after{background:linear-gradient(rgba(58,66,51,.88),rgba(58,66,51,.92))}.spirit-band .wrap{justify-content:flex-start}}
.chiro-hero{min-height:clamp(480px,42vw,600px)}
.chiro-photo{background-image:url(/assets/img/chiro_hero.jpg);background-position:58% 35%}
@media (max-width:900px){.chiro-photo{background-position:62% 30%}}
.listen-band{position:relative;overflow:hidden;background:var(--line)}
.listen-band > .wrap{position:relative;z-index:2}
.lb-copy{max-width:600px}
.lb-copy .checks li{font-size:18px}
.lb-photo{position:absolute;top:0;bottom:0;right:0;left:max(40%,calc((100% - 1200px) / 2 + 560px));z-index:0;background:url(/assets/img/listen.jpg) 42% 28%/cover no-repeat;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.15) 12%,rgba(0,0,0,.45) 24%,rgba(0,0,0,.8) 38%,#000 52%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.15) 12%,rgba(0,0,0,.45) 24%,rgba(0,0,0,.8) 38%,#000 52%)}
.lb-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(230,224,217,.5) 0%,rgba(230,224,217,.15) 40%,rgba(230,224,217,0) 100%)}
@media (max-width:900px){.lb-photo{position:relative;display:block;left:auto;right:auto;height:300px;margin-top:-1px;-webkit-mask-image:linear-gradient(180deg,#000 70%,transparent);mask-image:linear-gradient(180deg,#000 70%,transparent)}.listen-band{display:flex;flex-direction:column-reverse}}
.kids-band{position:relative;overflow:hidden;background:var(--warning-bg)}
.kids-band > .wrap{position:relative;z-index:2}
.kb-copy{max-width:560px;gap:16px}
.kids-band .lede{color:var(--ink)}
.btn-ghost-dark{background:transparent;color:var(--olive);border-color:var(--olive)}
.btn-ghost-dark:hover{background:var(--olive);color:var(--cream)}
.kb-photo{position:absolute;top:0;bottom:0;right:0;left:max(38%,calc((100% - 1200px) / 2 + 520px));z-index:0;background:url(/assets/img/kids_band.jpg) 62% 35%/cover no-repeat;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.15) 12%,rgba(0,0,0,.45) 24%,rgba(0,0,0,.8) 38%,#000 52%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.15) 12%,rgba(0,0,0,.45) 24%,rgba(0,0,0,.8) 38%,#000 52%)}
@media (max-width:900px){.kids-band{display:flex;flex-direction:column-reverse}.kb-photo{position:relative;left:auto;height:300px;-webkit-mask-image:linear-gradient(180deg,#000 70%,transparent);mask-image:linear-gradient(180deg,#000 70%,transparent)}}
.mfit-steps{display:flex;flex-direction:column;gap:14px;margin-top:18px;padding-top:24px;border-top:1px solid rgba(243,240,236,.2)}
.mfs{display:grid;grid-template-columns:38px minmax(0,1fr);gap:14px;align-items:start}
.mfs .n{width:38px;height:38px;border-radius:50%;background:rgba(243,240,236,.14);border:1px solid rgba(230,205,138,.55);color:var(--gold-label);font-family:var(--display);font-size:17px;display:grid;place-items:center}
.mfs h3{font-family:var(--display);font-weight:400;font-size:1.2rem;line-height:1.2;color:var(--cream);margin:2px 0 4px}
.mfs p{margin:0;color:rgba(243,240,236,.82);font-size:17.5px;line-height:1.4}
.final-full{background:linear-gradient(115deg,#45543C 0%,#4D5839 50%,#5E5A30 100%);color:var(--cream);padding-block:clamp(36px,4.2vw,52px);text-align:center}
.final-full .wrap{display:flex;flex-direction:column;align-items:center;gap:20px}
.final-full h2{color:var(--cream);font-size:clamp(1.7rem,2.8vw,2.3rem);margin:0}
.final-full .wrap{gap:14px}
.final-full p{color:rgba(243,240,236,.88);max-width:62ch;margin:0}
.final-full .row{justify-content:center;margin-top:8px}
.final-full .eyebrow{color:var(--gold-label)}
.final-full .small{font-size:15.5px}
.final-full :focus-visible{outline-color:var(--gold-bright)}
.plan-band{background:var(--olive-deep);color:var(--cream);min-height:clamp(440px,36vw,540px);display:flex;align-items:center}
.plan-band > .wrap{width:100%}
.plan-band .lb-copy{max-width:520px}
.plan-band .h2,.plan-band .flabel{color:var(--cream)}
.plan-band .lede{color:rgba(243,240,236,.85)}
.plan-band .eyebrow{color:var(--gold-label)}
.plan-photo{background-image:url(/assets/img/rehab_plan.jpg);background-size:cover;background-position:72% 35%}
.plan-photo::after{background:linear-gradient(90deg,rgba(58,66,51,.55) 0%,rgba(58,66,51,.15) 40%,rgba(58,66,51,0) 100%)}
@media (max-width:900px){.plan-band{flex-direction:column-reverse;align-items:stretch;min-height:0}.plan-photo{background-position:70% 35%;margin-top:12px;height:320px;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 22%,#000 72%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0%,#000 22%,#000 72%,transparent 100%)}}
.mfit-band{min-height:clamp(420px,36vw,520px);display:flex;align-items:center;background:#3E372E;color:var(--cream)}
.mfit-band > .wrap{width:100%}
.mfit-band .lb-copy{max-width:540px}
.mfit-band .h2{color:var(--cream)}
.mfit-band .eyebrow{color:var(--gold-label)}
.mfit-photo{background-image:url(/assets/img/massage_band.jpg);background-size:cover;background-position:60% 52%}
.mfit-photo::after{background:linear-gradient(90deg,rgba(62,55,46,.55) 0%,rgba(62,55,46,.15) 40%,rgba(62,55,46,0) 100%)}
.mfit-band .pill{background:rgba(243,240,236,.1);border-color:rgba(243,240,236,.32);color:var(--cream)}
@media (max-width:900px){.mfit-band{display:flex;flex-direction:column-reverse;align-items:stretch;min-height:0}.mfit-photo{background-position:58% 55%;margin-top:12px;height:340px;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 22%,#000 72%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0%,#000 22%,#000 72%,transparent 100%)}}
.laser-photo{background-image:url(/assets/img/laser_hero.jpg);background-position:22% 45%}
@media (max-width:900px){.laser-photo{background-position:50% 45%}}
.advh-photo{background-image:url(/assets/img/adv_hero.jpg);background-position:40% 30%}
@media (max-width:900px){.advh-photo{background-position:52% 30%}}
.atth-photo{background-image:url(/assets/img/att_hero.jpg);background-position:52% 55%}
@media (max-width:900px){.atth-photo{background-position:55% 55%}}
.rehab-photo{background-image:url(/assets/img/rehab_hero.jpg);background-position:38% 30%}
@media (max-width:900px){.rehab-photo{background-position:44% 30%}}
.lx-benefits{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:12px}
.lx-benefits li{position:relative;padding-left:22px;font-size:18px;line-height:1.4;color:var(--muted,#5E6656)}
.lx-benefits li::before{content:"";position:absolute;left:0;top:.5em;width:9px;height:9px;border-radius:50%;background:var(--terra)}
.lx-benefits b{color:var(--olive);font-weight:600}
.lx-checks{gap:14px}
.lx-checks li{font-size:17.5px;line-height:1.4;color:var(--muted,#5E6656)}
.lx-checks b{color:var(--ink);font-weight:600}
.ab-photo{background-image:url(/assets/img/adv_band.jpg);background-position:38% 35%}
@media (max-width:900px){.ab-photo{background-position:58% 35%}}
.ab-note{display:flex;gap:12px;align-items:flex-start;margin-top:10px;padding:14px 16px;border-radius:14px;background:rgba(243,240,236,.08);border:1px solid rgba(243,240,236,.22);font-size:16px;line-height:1.45;color:rgba(243,240,236,.85)}
.ab-note svg.ic{flex:none;width:20px;height:20px;color:var(--gold-label);margin-top:2px}
.ab-note b{color:var(--cream)}
@media (max-width:760px){br.br-d{display:none}}
.ce-band{background:var(--terra-600);color:#fff;min-height:clamp(480px,40vw,600px);display:flex;align-items:center}
.ce-band > .wrap{width:100%}
.ce-band .lb-copy{max-width:560px}
.ce-band .h2{color:#fff}
.ce-band .lede{color:rgba(255,255,255,.88)}
.ce-band .eyebrow{color:#F6DFC6}
.ce-services{display:flex;flex-direction:column;gap:14px;margin-top:10px;padding-top:22px;border-top:1px solid rgba(255,255,255,.25)}
.checks.on-terra{column-gap:24px}
.checks.on-terra li{color:#fff;font-size:17.5px}
.checks.on-terra li::before{background-color:#F6DFC6;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23865036' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E")}
.ce-photo{background-image:url(/assets/img/att_band.jpg);background-size:cover;background-position:28% 45%}
.ce-photo::after{background:linear-gradient(90deg,rgba(134,80,54,.55) 0%,rgba(134,80,54,.15) 40%,rgba(134,80,54,0) 100%)}
@media (max-width:900px){.ce-band{flex-direction:column-reverse;align-items:stretch;min-height:0}.ce-photo{background-position:15% 45%;margin-top:12px;height:300px;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 22%,#000 72%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0%,#000 22%,#000 72%,transparent 100%)}}
.lx-photo{background-image:url(/assets/img/laser_band.jpg);background-position:46% 40%}
@media (max-width:900px){.lx-photo{background-position:50% 45%}}
.massage-photo{background-image:url(/assets/img/massage_hero.jpg);background-position:55% 30%}
.contact-photo{background-image:url(/assets/img/contact_hero.jpg);background-position:60% 30%}
@media (max-width:900px){.contact-photo{background-position:58% 30%}}
.bg-mgreen{background:var(--green);color:var(--cream)}
.bg-mgreen .h2{color:var(--cream)}
.bg-mgreen .eyebrow{color:var(--gold-label)}
.bg-mgreen .lede{color:rgba(243,240,236,.9)}
.bg-mgreen .card{border-color:transparent}
.bg-mgreen :focus-visible{outline-color:var(--gold-label)}
.crash-steps .step .n{background:var(--green);color:var(--cream)}
.checks.on-dark li{color:rgba(243,240,236,.92)}
.checks.on-dark li::before{background-color:var(--gold-label);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233A4233' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E")}
.band .help-lbl{color:var(--gold-label);font-size:15px;letter-spacing:.12em;text-transform:uppercase;font-weight:600}
.crash-ph{min-height:520px;height:100%;max-width:100%;border-radius:var(--r-lg);background:var(--olive-deep) url(/assets/img/phone.jpg) 30% 40%/cover no-repeat;box-shadow:0 24px 50px rgba(38,44,33,.12)}
.split.stretch{align-items:stretch}
@media (max-width:900px){.crash-ph{min-height:0;height:auto;aspect-ratio:4/3}}
.callout-line{font-family:var(--display);font-size:1.3rem;line-height:1.3;color:var(--olive);border-left:4px solid var(--gold-label);padding-left:16px}
.distinction{background:var(--cream);border-radius:var(--r-md);padding:18px 20px;display:flex;flex-direction:column;gap:6px}
.distinction p{color:var(--ink);font-weight:600}
.crash-values .vcard{background:var(--cream)}
.crash-values .ic-tile{background:var(--green);color:var(--cream)}
.crash-values .vcard h3{font-family:var(--body);font-weight:400;font-size:17.5px;line-height:1.4;color:var(--ink)}
.spirit-lines{list-style:none;margin:4px 0;padding:0;display:flex;flex-direction:column;gap:2px}
.spirit-lines li{font-family:var(--display);font-size:1.3rem;color:var(--olive)}
.final-big{grid-template-columns:minmax(0,1fr);padding:clamp(40px,6vw,72px)}
.final-big h2{font-size:clamp(2.1rem,4vw,3.2rem)}
.final-big p{max-width:62ch}
.bg-lichen{background:var(--sage-10)}
/* Kids & Teens page: sunny theme (butter yellows + gold, terracotta orange accents, brand greens). Scoped to this page. */
[data-page="kids-chiropractic"] .page-hero .eyebrow{color:var(--gold-label)}
[data-page="kids-chiropractic"] .hero-copy .btn-primary{background:var(--gold-bright);color:var(--ink)}
[data-page="kids-chiropractic"] .hero-copy .btn-primary:hover{background:#F0D27E}
[data-page="kids-chiropractic"] .bg-cream{background:var(--warning-bg)}
[data-page="kids-chiropractic"] .bg-lichen{background:#F6E3A8}
[data-page="kids-chiropractic"] .checks li::before{background-color:var(--terra)}
[data-page="kids-chiropractic"] .split + .split .checks li::before{background-color:var(--green)}
[data-page="kids-chiropractic"] .pill{border-color:var(--warning-bd)}
[data-page="kids-chiropractic"] .disclaim{border-left-color:var(--gold-bright)}
[data-page="kids-chiropractic"] .card.c-gold{background:var(--warning-bg);border:1.5px solid var(--warning-bd)}
[data-page="kids-chiropractic"] .steps .step:nth-child(1) .n{background:var(--gold-bright);color:var(--ink)}
[data-page="kids-chiropractic"] .steps .step:nth-child(2) .n{background:#E3A86B;color:var(--ink)}
[data-page="kids-chiropractic"] .steps .step:nth-child(3) .n{background:var(--terra);color:#fff}
[data-page="kids-chiropractic"] .steps .step:nth-child(4) .n{background:var(--green);color:#fff}
[data-page="kids-chiropractic"] .steps .step:nth-child(5) .n{background:var(--olive-deep);color:#fff}
[data-page="kids-chiropractic"] .band .eyebrow{color:var(--gold-label)}
[data-page="kids-chiropractic"] .values-mark{background:var(--terra)}
[data-page="kids-chiropractic"] .faq summary .pm{background:var(--warning-bg)}
[data-page="kids-chiropractic"] .faq details[open] summary .pm{background:var(--gold-bright)}
/* Kids hero: photo on the right feathering into a matte terracotta-brown layer, same build as the Home hero */
.kids-hero{background-image:none!important;background-color:var(--olive-deep)!important;min-height:clamp(460px,44vw,620px);display:flex;align-items:center}
.kids-hero > .wrap{position:relative;z-index:2;width:100%}
.kids-hero .hero-copy{max-width:560px}
.kh-photo{position:absolute;top:0;bottom:0;right:0;left:max(28%,calc((100% - 1200px) / 2 + 330px));z-index:0;
  background:url(/assets/img/kids_hero.jpg) 62% 40%/cover no-repeat;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.12) 12%,rgba(0,0,0,.4) 24%,rgba(0,0,0,.75) 36%,#000 50%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.12) 12%,rgba(0,0,0,.4) 24%,rgba(0,0,0,.75) 36%,#000 50%)}
.kh-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(58,66,51,.6) 0%,rgba(58,66,51,.3) 35%,rgba(58,66,51,.12) 65%,rgba(58,66,51,.06) 100%)}
@media (max-width:900px){.kh-photo{left:0;-webkit-mask-image:none;mask-image:none;background-position:70% 40%}.kh-photo::after{background:linear-gradient(rgba(58,66,51,.84),rgba(58,66,51,.9))}}
.split-wide{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr)}
.split-wide .checks.two{column-gap:32px}
@media (max-width:900px){.split-wide{grid-template-columns:minmax(0,1fr)}}
.kids-card{background:var(--warning-bg);border:1.5px solid var(--warning-bd)}
.kids-card:hover{background:#F6E7BF}
.kids-card .ic-tile{background:var(--terra)}

.vwrap{display:flex;flex-direction:column;gap:clamp(28px,4vw,48px)}
.vhead{display:flex;align-items:center;gap:clamp(20px,3vw,36px);flex-wrap:wrap}
.vhead .values-mark{width:clamp(110px,11vw,150px);margin:0;flex:none}
.vhead .h2{font-size:clamp(2.2rem,4vw,3.3rem)}
.vgrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.vcard{background:#fff;border-radius:var(--r-md);padding:22px 20px;display:flex;flex-direction:column;gap:8px;min-width:0}
.vcard .ic-tile{margin-bottom:6px}
.vcard .k{font-size:13.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--terra-600);font-weight:600}
.vcard h3{margin:0;font-family:var(--display);font-weight:400;font-size:1.2rem;line-height:1.22;color:var(--ink)}
.vcard p{color:var(--muted);font-size:16.5px}
@media (max-width:1100px){.vgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.vgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.vgrid{grid-template-columns:minmax(0,1fr)}.vhead{flex-direction:column;align-items:flex-start}}

@media (max-width:900px){.values{grid-template-columns:minmax(0,1fr)}.values .sec-head{position:static}}
.vlist{display:flex;flex-direction:column}
.vitem{display:grid;grid-template-columns:56px minmax(0,1fr);gap:20px;padding:26px 0;border-top:1px solid var(--line)}
.vitem:last-child{border-bottom:1px solid var(--line)}
.vitem .k{font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:var(--terra-600);font-weight:600}
.vitem h3{font-size:1.45rem;margin:4px 0 6px}
.vitem p{color:var(--muted)}

/* Bands */
.band{background:var(--olive-deep);color:var(--cream);position:relative;overflow:hidden}
.band h2,.band h3{color:var(--cream)}
.band .lede,.band p{color:rgba(243,240,236,.86)}
.band .eyebrow{color:var(--gold-label)}
.band-terra{background:var(--terra-600)}
.band-terra h2{color:#fff}
.band-terra .eyebrow{color:#F6DFC6}
.band-terra .btn-light{color:var(--terra-600)}
.band-terra .lede{color:rgba(251,246,240,.92)}
.band .ghost{position:absolute;right:-40px;bottom:-60px;width:min(340px,40vw);background:#fff;opacity:.06}
.band .wrap{position:relative}
.statement{max-width:860px;display:flex;flex-direction:column;gap:20px}
.statement h2{font-size:clamp(2rem,3.6vw,3.1rem)}

/* Reviews */
.rev{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:24px;display:flex;flex-direction:column;gap:14px;min-width:0}
.stars{display:flex;gap:2px;color:var(--gold)}
.stars .ic{width:20px;height:20px;fill:currentColor;stroke:none}
.skel{display:flex;flex-direction:column;gap:8px}
.skel i{display:block;height:10px;border-radius:6px;background:var(--cream-2)}
.skel i:nth-child(2){width:92%}.skel i:nth-child(3){width:96%}.skel i:nth-child(4){width:64%}
.rev .meta{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-size:15.5px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}
.rev .meta b{color:var(--ink);font-weight:600}
.tag{display:inline-block;font-size:14px;font-weight:600;padding:4px 10px;border-radius:999px;background:var(--sage-10);color:var(--olive)}
.rev .ph{font-size:15.5px;color:var(--muted);font-style:italic}
/* Elfsight Google Reviews widget stand-in (the real widget replaces this in Webflow) */
.eg{position:relative;background:#fff;border:1.5px dashed var(--sage);border-radius:var(--r-lg);padding:46px clamp(16px,3vw,28px) 26px;display:flex;flex-direction:column;gap:22px;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:#222}
.eg-slot{position:absolute;top:14px;left:18px;right:18px;font:600 12px/1.2 system-ui,sans-serif;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.eg-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:#F5F5F3;border-radius:12px;padding:16px 20px}
.eg-bar-l{display:flex;align-items:center;gap:8px 18px;flex-wrap:wrap}
.eg-src{font-weight:700;font-size:16px}
.eg-rate{display:flex;align-items:center;gap:8px}
.eg-rate b{font-weight:700;text-transform:uppercase;letter-spacing:.03em;font-size:14.5px}
.eg-num{font-weight:700;font-size:18px}
.eg-stars{display:inline-flex;gap:1px;color:#F2B01E}
.eg-stars .ic{width:17px;height:17px;fill:currentColor;color:#F2B01E}
.eg-count{font-size:14.5px;color:#666}
.eg-write{background:var(--olive);color:#fff;text-decoration:none;font-weight:600;font-size:15px;padding:11px 20px;border-radius:999px;white-space:nowrap}
.eg-write:hover{background:var(--olive-deep)}
.eg-track-wrap{display:flex;align-items:center;gap:10px}
.eg-track{display:grid;gap:16px;flex:1;min-width:0}
.eg-slider .eg-track{grid-template-columns:repeat(4,minmax(0,1fr))}
.eg-grid .eg-track{grid-template-columns:repeat(3,minmax(0,1fr))}
.eg-card{background:#F5F5F3;border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:12px;min-width:0}
.eg-head{display:flex;align-items:center;gap:12px}
.eg-av{width:40px;height:40px;border-radius:50%;background:var(--sage-10);flex:none}
.eg-who,.eg-lines{display:flex;flex-direction:column;gap:7px;flex:1}
.eg-card i{display:block;height:10px;border-radius:5px;background:#E2E2DE}
.eg-card i.sm{height:8px;background:#EAEAE6}
.eg-lines i{height:8px}
.eg-card .eg-stars .ic{width:15px;height:15px}
.eg-more{font-size:14px;color:#888}
.eg-arrow{flex:none;width:36px;height:36px;border-radius:50%;border:1px solid #DDD;background:#fff;color:#444;font-size:22px;line-height:1;cursor:default;padding:0}
.eg-dots{display:flex;justify-content:center;gap:6px}
.eg-dots i{width:7px;height:7px;border-radius:50%;background:#D5D5D0}
.eg-dots i.on{background:var(--olive)}
.eg-loadwrap{display:flex;justify-content:center}
.eg-load{border:1px solid #CFCFCA;border-radius:999px;padding:10px 22px;text-decoration:none;color:#333;font-weight:600;font-size:15px}
@media (max-width:1000px){.eg-slider .eg-track,.eg-grid .eg-track{grid-template-columns:repeat(2,minmax(0,1fr))}.eg-slider .eg-card:nth-child(n+3){display:none}}
@media (max-width:600px){.eg{padding-top:64px}.eg-slider .eg-track,.eg-grid .eg-track{grid-template-columns:minmax(0,1fr)}.eg-slider .eg-card:nth-child(n+2),.eg-grid .eg-card:nth-child(n+4){display:none}.eg-arrow{display:none}.eg-bar{flex-direction:column;align-items:flex-start}}
.summary-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px}
.rating-chip{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-size:17px;color:inherit}
.rating-chip .stars .ic{width:17px;height:17px}
.rating-chip b{font-weight:700}
.hero .rating-chip{color:rgba(243,240,236,.92)}
.bars{display:grid;gap:6px;font-size:15px;color:var(--muted);font-variant-numeric:tabular-nums}
.bars div{display:grid;grid-template-columns:14px minmax(0,1fr) 34px;gap:10px;align-items:center}
.bars i{display:block;height:8px;border-radius:6px;background:var(--cream-2);overflow:hidden}
.bars i b{display:block;height:100%;background:var(--gold);border-radius:6px}
.mentions{display:flex;flex-wrap:wrap;gap:6px}
.mentions span{font-size:15px;padding:4px 10px;border-radius:999px;background:var(--cream);color:var(--olive)}
.bg-cream .mentions span{background:#fff;border:1px solid var(--line);padding:6px 12px;font-size:16px}
.rev .lbl{font-size:14px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--terra-600)}
.rev .sum{color:var(--ink);font-size:18px;line-height:1.4}
.rev .qmark{font-family:var(--display);font-size:64px;line-height:.6;color:var(--sage);height:30px}
.rev .readon{margin-top:auto;font-weight:600;color:var(--green);text-decoration:none;font-size:16px;display:inline-flex;gap:6px;align-items:center}
.rev .readon .ic{width:16px;height:16px}
.rev.more{background:var(--olive);border-color:var(--olive);color:var(--cream);justify-content:center}
.rev.more h3{color:var(--cream)}
.rev.more p{color:rgba(243,240,236,.85)}
.hours{display:grid;grid-template-columns:auto 1fr;gap:4px 18px;margin:0;font-variant-numeric:tabular-nums}
.hours dt{font-weight:600;color:var(--olive)}
.hours dd{margin:0;color:var(--muted)}
.summary-card .score{font-family:var(--display);font-size:3.4rem;color:var(--olive);line-height:1}
@media (max-width:720px){.summary-card{grid-template-columns:minmax(0,1fr)}}

/* Brand story */
.story{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(24px,4vw,56px);align-items:center}
.portrait{background:var(--cream);border-radius:var(--r-lg);aspect-ratio:4/5;max-width:100%;display:grid;place-items:center;position:relative;overflow:hidden}
.portrait .mark{width:66%;background:var(--green)}
.portrait .lbl{position:absolute;bottom:16px;left:16px;right:16px;text-align:center;font-size:15px;color:var(--muted)}
.duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
@media (max-width:900px){.story{grid-template-columns:minmax(0,1fr)}}
@media (max-width:520px){.duo{grid-template-columns:minmax(0,1fr)}}

/* FAQ */
.faq{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 4px;font-family:var(--display);font-size:1.2rem;color:var(--olive);line-height:1.3}
.faq summary::-webkit-details-marker{display:none}
.faq summary .pm{flex:none;width:34px;height:34px;border-radius:50%;background:var(--cream);display:grid;place-items:center;transition:transform .2s,background .2s}
.faq summary .pm .ic{width:18px;height:18px}
.faq details[open] summary .pm{transform:rotate(180deg);background:var(--sage)}
.faq .ans{padding:0 4px 22px;color:var(--muted);max-width:70ch;display:flex;flex-direction:column;gap:10px}
.faq .ans ul{padding-left:20px}
.faq-wrap{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(28px,5vw,72px);align-items:start}
@media (max-width:900px){.faq-wrap{grid-template-columns:minmax(0,1fr)}}
.faq-cat{display:flex;flex-direction:column;gap:14px}
.faq-cat + .faq-cat{margin-top:44px}
.faq-cat h2{font-size:1.6rem}
.cat-nav{position:sticky;top:120px;display:flex;flex-direction:column;gap:6px}
.cat-nav a{text-decoration:none;padding:10px 16px;border-radius:12px;font-weight:500;color:var(--ink)}
.cat-nav a:hover{background:var(--cream)}
@media (max-width:900px){.cat-nav{position:static;flex-direction:row;flex-wrap:wrap}.cat-nav a{background:var(--cream);border-radius:999px}}

/* Final CTA */
/* Home closing CTA: copy on matte green at the top, team photo below rising out of the green */
.team-cta{position:relative;overflow:hidden;background:var(--olive-deep);color:var(--cream)}
.tc-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;padding-top:clamp(56px,7vw,96px)}
.tc-copy h2{color:var(--cream);font-size:clamp(2rem,3.6vw,3.1rem);max-width:20ch}
.tc-copy p{color:rgba(243,240,236,.88);font-size:clamp(18px,1.5vw,20px);max-width:58ch}
.tc-copy .row{justify-content:center;margin-top:10px}
.tc-photo{position:relative;z-index:1;margin-top:clamp(-150px,-8vw,-60px);aspect-ratio:2.3/1;background:url(/assets/img/team.jpg) 50% 24%/cover no-repeat;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.35) 10%,rgba(0,0,0,.85) 20%,#000 28%);
  mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.35) 10%,rgba(0,0,0,.85) 20%,#000 28%)}
.tc-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(58,66,51,.45) 0%,rgba(58,66,51,.08) 40%,rgba(58,66,51,0) 70%,rgba(58,66,51,.25) 100%)}
.team-cta :focus-visible{outline-color:var(--gold-bright)}
@media (max-width:700px){.tc-photo{aspect-ratio:1.75/1;background-position:50% 45%;margin-top:-24px}.tc-copy .row{flex-direction:column;align-items:stretch;width:100%}}
.final{background:linear-gradient(115deg,#45543C 0%,#4D5839 50%,#5E5A30 100%);color:var(--cream);border-radius:var(--r-lg);padding:clamp(36px,5vw,64px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;position:relative;overflow:hidden}
.final h2{color:var(--cream);font-size:clamp(1.9rem,3.2vw,2.8rem)}
.final p{color:rgba(243,240,236,.86);margin-top:12px;max-width:56ch}
.final .ghost{position:absolute;right:24%;top:-30px;width:170px;background:#fff;opacity:.07}
.final .row{position:relative}
@media (max-width:820px){.final{grid-template-columns:minmax(0,1fr)}.final .ghost{right:-30px}}

/* Notes / placeholders */
.note{display:none;gap:10px;align-items:flex-start;background:var(--warning-bg);border:1.5px dashed var(--warning-ic);color:var(--warning-tx);border-radius:12px;padding:10px 14px;font-size:15.5px;line-height:1.34}
.note b{font-weight:700}
.pending{display:inline-block;font-family:var(--body);font-weight:600;background:var(--gold-10);color:var(--brown);border:1px dashed var(--gold);border-radius:8px;padding:1px 8px;font-size:.9em}
.badge-d{display:none;font-family:var(--body);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:6px;padding:2px 7px;margin-left:8px;vertical-align:middle}
.badge-d.draft{background:var(--gold-10);color:var(--brown)}
.badge-d.pend{background:var(--brown);color:var(--cream)}
/* Legal pages: sticky contents list + readable single column */
.legal{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:start}
.legal-toc{position:sticky;top:110px;display:flex;flex-direction:column;gap:2px;max-height:calc(100vh - 140px);overflow:auto;padding-right:6px}
.legal-toc .flabel{margin-bottom:8px}
.legal-toc a{font-size:16px;line-height:1.3;color:var(--muted);text-decoration:none;padding:6px 10px;border-radius:8px}
.legal-toc a:hover{background:var(--cream);color:var(--olive)}
.legal-body{max-width:820px;display:flex;flex-direction:column;gap:8px;min-width:0}
.legal-sec{display:flex;flex-direction:column;gap:12px;padding-block:22px;border-top:1px solid var(--line)}
.legal-sec:first-of-type{border-top:0;padding-top:4px}
.legal-sec h2{font-size:1.55rem}
.legal-sec h3{font-size:1.15rem;margin-top:8px;color:var(--olive)}
.legal-sec p,.legal-sec li{color:var(--ink);font-size:18px;line-height:1.5}
.legal-sec ul,.legal-sec ol{padding-left:22px;display:flex;flex-direction:column;gap:4px}
.legal-sec a,.legal-callout a{color:var(--green);font-weight:600}
.legal-sec a.btn{color:var(--olive)}
.legal-sec a.btn-ghost:hover{color:#fff}
.legal-related{margin-top:28px;padding-top:24px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:12px}
.skip{position:fixed;left:max(12px,env(safe-area-inset-left,0px));top:calc(env(safe-area-inset-top,0px) + 8px);z-index:100;transform:translateY(-200%);background:var(--olive);color:#fff;border:0;border-radius:999px;padding:10px 18px;font:600 16px var(--body);cursor:pointer}
.skip:focus{transform:none}
main:focus{outline:none}
.legal-callout{background:var(--gold-10);border:1px solid var(--gold);border-radius:var(--r-md);padding:18px 22px;font-size:18px;line-height:1.5;color:var(--ink)}
@media (max-width:900px){.legal{grid-template-columns:minmax(0,1fr)}.legal-toc{position:static;max-height:none;flex-direction:row;flex-wrap:wrap;gap:6px}.legal-toc .flabel{width:100%}.legal-toc a{background:var(--cream);border-radius:999px}}
.disclaim{font-size:15.5px;color:var(--muted);border-left:3px solid var(--sage);padding-left:14px;max-width:72ch}

/* Therapist cards */
.bg-charcoal{background:#3A3B37;color:var(--cream)}
.bg-charcoal .h2{color:var(--cream)}
.bg-charcoal .sec-head .eyebrow{color:var(--gold-label)}
.dc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2.4vw,28px)}
.dc{background:#fff;border-radius:var(--r-lg);padding:clamp(20px,2.2vw,28px);display:grid;grid-template-columns:clamp(110px,11vw,150px) minmax(0,1fr);column-gap:clamp(16px,2vw,24px);row-gap:18px;align-items:center;align-content:start;min-width:0}
.dc-photo{aspect-ratio:4/5;border-radius:var(--r-md);background-color:var(--sage-10);background-size:cover;background-repeat:no-repeat}
.dc-chen{background-image:url(/assets/img/dc_chen.jpg);background-position:50% 22%}
.dc-flores{background-image:url(/assets/img/dc_flores.jpg);background-position:50% 40%}
.dc-head{display:flex;flex-direction:column;gap:8px;min-width:0}
.dc-head .eyebrow{font-size:13px}
.dc-head h3{font-family:var(--display);font-weight:400;font-size:clamp(1.4rem,1.9vw,1.7rem);line-height:1.15;color:var(--olive);margin:0}
.dc-lang{align-self:flex-start;display:inline-flex;align-items:center;gap:7px;font-size:15px;font-weight:600;padding:5px 12px;border-radius:999px;background:var(--sage-10);color:var(--olive);line-height:1.25}
.dc-lang svg.ic{width:16px;height:16px;flex:none}
.dc-bio{grid-column:1 / -1;margin:0;color:var(--ink)}
.dc-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ec-marty{background-image:url(/assets/img/ec_marty.jpg);background-size:150% auto;background-position:50% 17%}
.ec-keenan{background-image:url(/assets/img/ec_keenan.jpg);background-size:150% auto;background-position:52% 6%}
.ec-third{background-image:url(/assets/img/ec_third.jpg);background-size:150% auto;background-position:50% 24%}
.dc-grid-3 .dc{grid-template-columns:clamp(96px,8.5vw,124px) minmax(0,1fr)}
.dc-grid-3 .dc-head h3{font-size:clamp(1.25rem,1.6vw,1.5rem);overflow-wrap:break-word}
.dc-grid-3 .dc-head .eyebrow{font-size:12px}
.dc-ph{display:grid;place-items:end center;overflow:hidden;color:var(--green)}
.dc-ph svg.ic{width:70%;height:auto;aspect-ratio:1;fill:currentColor;stroke:none;opacity:.5;margin-bottom:-8%}
@media (max-width:1100px){.dc-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.dc-grid,.dc-grid-3{grid-template-columns:minmax(0,1fr)}}
@media (max-width:480px){.dc{grid-template-columns:96px minmax(0,1fr)}.dc-lang{font-size:13.5px;border-radius:12px;padding:5px 10px}}
.lmt-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.lmt{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;display:flex;flex-direction:column;min-width:0}
.lmt-photo{aspect-ratio:4/5;max-width:100%;background:linear-gradient(160deg,var(--sage-10),var(--sage));display:grid;place-items:center}
.lmt-photo.has-img{aspect-ratio:2/3;background-size:120% auto;background-position:50% 22%;background-repeat:no-repeat}
.lmt-photo span{font-family:var(--display);font-size:2.4rem;color:var(--olive);opacity:.55;letter-spacing:.04em}
.lmt-name{font-family:var(--display);font-weight:400;font-size:1.12rem;line-height:1.25;color:var(--olive);padding:14px 16px 16px;margin:0}
.lmt-sm{flex-direction:row;align-items:center;gap:12px;padding:14px 16px}
.lmt-sm .lmt-name{padding:0;font-size:1.05rem}
.lmt-ic{width:44px;height:44px;border-radius:50%;background:var(--sage-10);color:var(--green);display:grid;place-items:center;flex:none}
.lmt-ic{overflow:hidden;align-items:end}
.lmt-grid .lmt-ic svg.ic{width:38px;height:38px;fill:currentColor;stroke:none;opacity:.8;margin-bottom:-4px}
@media (max-width:1000px){.lmt-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.lmt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lmt-grid-sm{grid-template-columns:minmax(0,1fr)}}
.ther{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;display:flex;flex-direction:column;gap:14px;min-width:0}
.ther .head{display:flex;gap:16px;align-items:center}
.ther .shot{width:76px;height:76px;border-radius:50%;background:var(--sage-10);display:grid;place-items:center;flex:none}
.ther .shot .ic{width:30px;height:30px;color:var(--green)}
.ther dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 14px;margin:0;font-size:16.5px}
.ther dt{font-weight:600;color:var(--olive)}
.ther dd{margin:0;color:var(--muted)}
.ther .btn{margin-top:auto;align-self:flex-start}

/* Contact */
.cared-photo{background-image:url(/assets/img/cared.jpg);background-position:40% 18%}
.phone-pill{display:inline-flex;align-items:center;gap:14px;align-self:flex-start;margin-top:6px;padding:12px 28px 12px 12px;border-radius:999px;background:var(--cream);color:var(--olive-deep);font-family:var(--body);font-weight:700;font-size:clamp(1.5rem,2.4vw,1.85rem);letter-spacing:.01em;text-decoration:none;box-shadow:0 8px 20px rgba(0,0,0,.18);transition:transform .15s,background .15s}
.phone-pill .pp-ic{width:48px;height:48px;border-radius:50%;background:var(--green);color:var(--cream);display:grid;place-items:center;flex:none}
.phone-pill .pp-ic .ic{width:22px;height:22px}
.phone-pill:hover{background:#fff;transform:translateY(-1px);text-decoration:none}
.map-embed{border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);height:clamp(300px,32vw,420px);background:var(--sage-10)}
.map-embed{position:relative}
.map-embed iframe{position:relative;z-index:1;width:100%;height:100%;border:0;display:block;background:transparent}
.map-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--olive);font-weight:600;text-decoration:none}
.map-fallback .ic-tile{background:var(--terra);color:#fff;border-radius:50%}
.after-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.after-steps li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:16px;align-items:start;padding:18px 0;border-top:1px solid var(--line)}
.after-steps li:first-child{border-top:0;padding-top:4px}
.after-steps .n{width:42px;height:42px;border-radius:50%;background:var(--olive);color:var(--cream);font-family:var(--display);font-size:19px;display:grid;place-items:center}
.after-steps h3{font-family:var(--display);font-weight:400;font-size:1.3rem;line-height:1.2;color:var(--olive);margin:6px 0 4px}
.after-steps p{margin:0;color:var(--muted,#5E6656)}
.after-sec{padding-block:clamp(48px,6vw,80px);border-bottom:1px solid var(--line)}
.after-steps.after-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.after-steps.after-row li{grid-template-columns:42px minmax(0,1fr);border-top:0;border-left:1px solid var(--line);padding:4px clamp(18px,2.4vw,32px)}
.after-steps.after-row li:first-child{border-left:0;padding-left:0}
@media (max-width:860px){.after-steps.after-row{grid-template-columns:minmax(0,1fr)}.after-steps.after-row li{border-left:0;border-top:1px solid var(--line);padding:18px 0}.after-steps.after-row li:first-child{border-top:0;padding-top:4px}}
.sister{display:flex;flex-direction:column;gap:3px;margin-top:10px;padding:16px 18px;border-left:3px solid var(--terra);background:#fff;border-radius:0 14px 14px 0;font-size:17px}
.sister .eyebrow{font-size:13px;margin-bottom:4px}
.sister b{font-family:var(--display);font-weight:400;font-size:1.2rem;color:var(--olive)}
.sister a{color:var(--green)}
.tm-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2vw,22px)}
.tm{margin:0;display:flex;flex-direction:column;gap:12px;min-width:0}
.tm-photo{position:relative;aspect-ratio:2/3;border-radius:var(--r-lg);background:linear-gradient(160deg,var(--sage-10),var(--sage));display:grid;place-items:end center;overflow:hidden;color:var(--green)}
.tm-photo svg.ic{width:72%;height:auto;aspect-ratio:1;fill:currentColor;stroke:none;opacity:.5;margin-bottom:-8%}
.tm-ph{position:absolute;top:12px;left:12px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--olive);background:rgba(255,255,255,.75);padding:4px 10px;border-radius:999px}
@media (max-width:520px){.tm-ph{font-size:10.5px;padding:3px 8px;left:8px;top:8px;white-space:nowrap}}
.tm-chen,.tm-lisa{background-size:cover;background-position:50% 30%;background-repeat:no-repeat}
.tm-chen{background-image:url(/assets/img/tm_chen.jpg)}
.tm-lisa{background-image:url(/assets/img/tm_lisa.jpg)}
.tm figcaption b{display:block;font-family:var(--display);font-weight:400;font-size:1.3rem;color:var(--olive);line-height:1.2}
.tm figcaption span{font-size:15px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--terra-600)}
.contact-col{display:flex;flex-direction:column;gap:clamp(24px,3vw,36px)}
.talk-card.talk-wide{flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px 28px}
.talk-card.talk-wide .tw-copy{display:flex;flex-direction:column;gap:10px;flex:1 1 320px;min-width:0}
.talk-card.talk-wide .h2{font-size:clamp(1.7rem,2.6vw,2.2rem)}
.talk-card.talk-wide .phone-pill{align-self:center;margin-top:0}
.talk-card .tw-hours{display:flex;align-items:flex-start;gap:8px;flex-wrap:nowrap;line-height:1.45;font-size:16px;color:rgba(243,240,236,.85)}
.talk-card .tw-hours .ic{width:18px;height:18px;color:var(--gold-label);flex:none;margin-top:2px}
.talk-card .tw-hours b{color:var(--gold-label);font-weight:600}
#leave.plan-band{min-height:clamp(300px,24vw,380px);padding-block:clamp(36px,4vw,56px)}
.after-block{display:flex;flex-direction:column;gap:14px;padding-top:8px}
.after-block .h2{font-size:clamp(1.5rem,2.2vw,1.9rem)}
.crash-hero.contact-hero{min-height:clamp(400px,32vw,500px)}
.addr-copy{display:inline-flex;align-self:flex-start;width:fit-content;align-items:center;gap:10px;flex-wrap:wrap;margin-top:6px;padding:10px 12px 10px 16px;border-radius:999px;background:rgba(243,240,236,.1);border:1px solid rgba(243,240,236,.3);color:var(--cream);font-size:17px;max-width:100%}
.addr-copy > .ic{width:18px;height:18px;color:var(--gold-label);flex:none}
.copy-btn{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:999px;background:var(--cream);color:var(--olive-deep);font:600 14px/1 var(--body);padding:8px 12px;cursor:pointer}
.copy-btn .ic{width:16px;height:16px}
.copy-btn:hover{background:#fff}
.copy-btn.done{background:var(--gold-label)}
@media (max-width:600px){.addr-copy{border-radius:18px;font-size:16px}}
.talk-card{background:var(--olive-deep);color:var(--cream);border-radius:var(--r-lg);padding:clamp(26px,3vw,38px);display:flex;flex-direction:column;gap:14px}
.talk-card .h2{color:var(--cream)}
.talk-card p{color:rgba(243,240,236,.85);margin:0}
.big-phone{display:inline-flex;align-items:center;gap:16px;align-self:flex-start;text-decoration:none;color:var(--cream);margin-top:6px}
.big-phone .bp-ic{width:58px;height:58px;border-radius:50%;background:var(--gold-label);color:var(--olive-deep);display:grid;place-items:center;flex:none}
.big-phone .bp-ic .ic{width:26px;height:26px}
.big-phone small{display:block;font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--gold-label)}
.big-phone b{display:block;font-family:var(--display);font-weight:400;font-size:clamp(2rem,3.4vw,2.6rem);line-height:1.05;color:#fff}
.big-phone:hover b{text-decoration:underline;text-underline-offset:4px}
.loc-photo{position:relative;display:block;justify-self:end;align-self:center;width:min(100%,460px);aspect-ratio:2/3;border-radius:var(--r-lg);overflow:hidden;background:url(/assets/img/storefront.jpg) 50% 45%/cover no-repeat;box-shadow:0 20px 50px rgba(38,44,33,.12);text-decoration:none}
.loc-photo .lp-cap{position:absolute;left:14px;right:14px;bottom:14px;display:flex;align-items:center;justify-content:center;gap:8px;background:rgba(255,255,255,.94);color:var(--olive);font-weight:600;font-size:16px;border-radius:999px;padding:10px 16px;text-align:center}
.loc-photo .lp-cap .ic{width:18px;height:18px;color:var(--terra);flex:none}
.loc-photo:hover .lp-cap{background:#fff}
@media (max-width:900px){.loc-photo{justify-self:center;width:min(100%,420px)}}
.contact-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.citem{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:18px}
.citem .ic-tile{width:48px;height:48px;border-radius:14px;background:var(--cream);color:var(--green)}
.citem b{display:block;font-family:var(--display);font-weight:400;color:var(--olive);font-size:1.15rem}
@media (max-width:520px){.contact-list{grid-template-columns:minmax(0,1fr)}}
.mapbox{border-radius:var(--r-lg);min-height:300px;background:
  repeating-linear-gradient(0deg,transparent 0 46px,rgba(76,84,66,.08) 46px 48px),
  repeating-linear-gradient(90deg,transparent 0 46px,rgba(76,84,66,.08) 46px 48px),var(--sage-10);display:grid;place-items:center;position:relative;max-width:100%}
.mapbox .pin{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--olive);font-weight:600}
.mapbox .pin .ic-tile{background:var(--terra);color:#fff;border-radius:50%}

/* Filters */
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.filters button{font-family:var(--body);font-size:17px;font-weight:500;padding:9px 16px;border-radius:999px;border:1.5px solid var(--line);background:#fff;color:var(--ink);cursor:pointer}
.filters button[aria-pressed="true"]{background:var(--olive);color:#fff;border-color:var(--olive)}

/* Footer */
.ftr{background:#2F302D;color:var(--cream);border-top:4px solid var(--gold-label)}
.ftr .wrap{padding-block:56px 32px;display:flex;flex-direction:column;gap:40px}
.ftr-top{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr));gap:32px}
.ftr-brand{display:inline-flex;align-items:center;gap:14px;text-decoration:none}
.ftr-mark{display:block;height:104px;aspect-ratio:255/360;background:var(--cream);-webkit-mask:url(/assets/img/ftr_mark.png) center/contain no-repeat;mask:url(/assets/img/ftr_mark.png) center/contain no-repeat}
.ftr-word{display:block;height:56px;aspect-ratio:641/224;background:var(--cream);-webkit-mask:url(/assets/img/wordmark.png) center/contain no-repeat;mask:url(/assets/img/wordmark.png) center/contain no-repeat}
.ftr a.ftr-brand:hover{text-decoration:none}
.ftr h4{font-family:var(--body);font-weight:600;font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-label);margin-bottom:12px}
.ftr ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.ftr a{text-decoration:none;color:rgba(243,240,236,.86)}
.ftr a:hover{color:#fff;text-decoration:underline}
.ftr a.btn{background:var(--green);color:var(--cream);border-color:var(--green)}
.ftr a.btn:hover{text-decoration:none;background:#6C7B60;border-color:#6C7B60;color:#fff}
.ftr p{color:rgba(243,240,236,.8);font-size:17px}
.ftr .pending{background:rgba(230,205,138,.14);color:#E6CD8A;border-color:rgba(230,205,138,.6)}
.ftr-bot{border-top:1px solid rgba(243,240,236,.15);padding-top:24px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px 24px;align-items:center;font-size:15px;color:rgba(243,240,236,.7)}
.ftr-bot .ftr-legal{justify-self:end;text-align:right}
.ftr-bot .toggle{grid-column:1 / -1;justify-self:start}
@media (max-width:760px){.ftr-bot{grid-template-columns:minmax(0,1fr)}.ftr-bot .ftr-legal{justify-self:start;text-align:left}}
.ftr .ftr-fine{font-size:15px;color:rgba(243,240,236,.7);margin-top:-24px}
.ftr .ftr-fine-2{margin-top:-34px}
.emerg{display:flex;gap:14px;align-items:flex-start;background:#43302C;border-left:5px solid #B4473A;border-radius:14px;padding:16px 20px;font-size:16.5px;color:#fff}
.emerg p{color:rgba(255,255,255,.9);font-size:16.5px;line-height:1.45}
.emerg b{color:#fff;font-weight:700}
.emerg-ic{flex:none;width:30px;height:30px;border-radius:50%;background:#B4473A;color:#fff;display:grid;place-items:center;margin-top:-2px}
.emerg-ic .ic{width:20px;height:20px;stroke-width:2.4}
@media (max-width:900px){.ftr-top{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.ftr-top{grid-template-columns:minmax(0,1fr)}}

/* Stacked photo bands on mobile: photo sits under the text, fades in at its top edge and runs flush to the next section */
@media (max-width:900px){.lb-photo,.kb-photo{-webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.35) 12%,rgba(0,0,0,.8) 24%,#000 34%);mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.35) 12%,rgba(0,0,0,.8) 24%,#000 34%)}.listen-band{padding-bottom:0}}
/* Animated portrait mark in "Care built on trust" (plays when scrolled into view) */
.values-mark-anim{display:block;flex:none;width:clamp(110px,11vw,150px)}
.values-mark-anim svg{display:block;width:100%;height:auto}
.values-mark-anim:not(.play) svg *{animation-play-state:paused!important}
/* Mobile call button lives in the hamburger menu (no sticky bar) */
.mnav-call{display:grid;grid-template-columns:minmax(0,1fr);padding-top:24px;padding-bottom:8px}
.mnav-call .btn{width:100%}

/* Location tag under page intros */
.loc-tag{display:inline-flex;align-items:flex-start;gap:10px;align-self:flex-start;max-width:100%;margin:2px 0 4px;padding:10px 18px 10px 14px;border-radius:14px;border:1px solid rgba(230,205,138,.55);background:rgba(38,44,33,.45);color:var(--cream);font-size:15.5px;line-height:1.35;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.loc-tag .ic{width:18px;height:18px;color:var(--gold-label);flex:none;margin-top:1px}
.loc-tag .lt{display:flex;flex-direction:column;gap:1px}
.loc-tag .lt b{font-weight:600;color:var(--cream)}
.loc-tag .lt span{color:rgba(243,240,236,.82)}
/* Footer phone pill + service-area box */
.ftr a.btn.ftr-phone{background:var(--green);border:1.5px solid var(--green);color:var(--cream);font-weight:700;letter-spacing:.01em}
.ftr a.btn.ftr-phone:hover{background:#6C7B60;border-color:#6C7B60;color:#fff}
.ftr .ftr-area{display:flex;align-items:flex-start;gap:8px;margin-top:4px;padding:10px 14px;border:1px solid rgba(230,205,138,.5);border-radius:12px;background:rgba(230,205,138,.08);color:var(--gold-label);font-size:15px;line-height:1.35;max-width:300px}
.ftr .ftr-area .ic{width:16px;height:16px;flex:none;margin-top:1px}
/* Laser session panel inside the dark band */
.lx-session{margin-top:8px;padding:18px 20px;border-radius:14px;border:1px solid rgba(243,240,236,.22);background:rgba(243,240,236,.06)}
.lx-session h3{font-size:1.25rem;margin-bottom:6px;color:var(--cream)}
/* 404 */
.nf{min-height:60vh;display:flex;align-items:center}
.nf .wrap{display:grid;gap:clamp(28px,4vw,48px)}
.nf-copy{max-width:720px;gap:16px}
.nf-links{display:flex;flex-direction:column;gap:12px}

/* Home slideshow pause control */
.hero-pause{position:absolute;z-index:3;right:max(16px,calc((100% - 1200px) / 2));bottom:clamp(16px,2.4vw,28px);display:inline-flex;align-items:center;gap:8px;font:inherit;font-size:15px;font-weight:600;color:var(--cream);background:rgba(38,44,33,.55);border:1px solid rgba(243,240,236,.55);border-radius:999px;padding:8px 14px 8px 10px;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.hero-pause:hover{background:rgba(38,44,33,.75);border-color:var(--cream)}
.hero-pause .ic{width:18px;height:18px}
.hero-pause{width:44px;height:44px;padding:0;justify-content:center;gap:0}
.hero-pause .hp-lbl{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.hero-pause .ic-play{display:none}
.hero-pause.paused .ic-play{display:block}
.hero-pause.paused .ic-pause{display:none}
@media (prefers-reduced-motion:reduce){.hero-pause{display:none}}

/* Home: crash steps strip above the hero */
.crash-strip{display:block;background:#A3352A;color:#fff;text-decoration:none}
.crash-strip:hover{text-decoration:none}
.crash-strip .wrap{display:flex;align-items:center;gap:12px 16px;flex-wrap:wrap;padding-block:12px;font-size:17px;line-height:1.35}
.crash-strip .cs-ic{flex:none;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.16);display:grid;place-items:center}
.crash-strip .cs-ic .ic{width:30px;height:30px;margin-top:2px;stroke-width:1.7}
.crash-strip .cs-txt{flex:0 1 auto;min-width:0}
.crash-strip .cs-txt b{font-weight:700}
.crash-strip .cs-cta{display:inline-flex;align-items:center;gap:6px;font-weight:700;white-space:nowrap;padding:6px 14px;border:1.5px solid rgba(255,255,255,.75);border-radius:999px;transition:background-color .25s ease,color .25s ease,border-color .25s ease}
.crash-strip .cs-cta:hover{background:#fff;color:#A3352A;border-color:#fff}
.crash-strip .cs-cta .ic{width:16px;height:16px}
.crash-strip:focus-visible{outline:3px solid var(--gold-bright);outline-offset:-3px}
@media (max-width:560px){.crash-strip .wrap{font-size:15.5px;padding-block:10px}.crash-strip .cs-ic{display:none}.crash-strip .cs-cta{padding:4px 12px}}

/* Crash strip at the top of the mobile menu */
.mnav a.crash-strip{font-family:var(--body);font-size:15.5px;color:#fff;padding:0;border-bottom:0;margin:-16px 0 10px}
.mnav .crash-strip .wrap{flex-direction:row;align-items:center;gap:10px 14px;padding-block:12px}

/* Mobile bar: keep both buttons inside the screen on small phones */
.mbar .btn{min-width:0}
@media (max-width:400px){.mbar{grid-template-columns:minmax(0,1fr);gap:8px}.mbar .btn{font-size:15.5px;padding:13px 8px;gap:6px}}
@media (max-width:340px){.mbar .btn{font-size:14.5px;padding:13px 6px}}

/* Full-width header: logo at the left edge, links and phone at the right edge */
.hdr .wrap{max-width:none;padding-left:max(32px,env(safe-area-inset-left,0px));padding-right:max(32px,env(safe-area-inset-right,0px))}
@media (max-width:760px){.hdr .wrap{padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}}
/* "We speak Spanish / Russian" line */
.lang-line{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0;font-size:16.5px;line-height:1.35}
.lang-line .ic{width:18px;height:18px;flex:none}
.lang-line .sep{opacity:.6}
/* Crimson Pro has no Cyrillic, so Russian falls back to Spectral, scaled to match Crimson Pro's letter height */
.lang-line [lang="ru"]{font-family:"Spectral",var(--body);font-size:.93em}
.hero-lang{color:rgba(243,240,236,.92)}
.hero-lang .ic{color:var(--gold-label)}
.ftr .ftr-lang{display:grid;grid-template-columns:auto 1fr;column-gap:10px;row-gap:2px;color:var(--gold-label);font-size:16px}
.ftr .ftr-lang .ic{grid-row:span 2;margin-top:2px}
.ftr .ftr-lang .sep{display:none}

.ftr .ftr-247{color:var(--gold-label);font-weight:600}


/* Green phone banner: 24/7 Call Center badge beside the phone number */
.talk-card.talk-wide .tw-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.cc-badge{display:inline-flex;align-items:center;gap:14px;padding:12px 26px 12px 12px;border-radius:999px;background:#B9561F;color:#fff;line-height:1.1}
.cc-badge .cc-ic{width:48px;height:48px;border-radius:50%;background:#fff;color:#B9561F;display:grid;place-items:center;flex:none}
.cc-badge .cc-ic .ic{width:24px;height:24px}
.cc-badge .cc-txt{display:flex;flex-direction:column;gap:3px}
.cc-badge .cc-txt b{font-size:clamp(1.3rem,2vw,1.55rem);font-weight:700;letter-spacing:.01em}
.cc-badge .cc-txt span{font-size:17px;font-weight:600;opacity:.95}

/* "The Spirit of Ibolit": letters light up one by one when the section scrolls into view */
.spirit-glow .gl{display:inline-block;white-space:pre}
.spirit-glow.glow-on .gl{animation:spiritGlow 2.2s ease-out both;animation-delay:calc(var(--i) * 70ms)}
@keyframes spiritGlow{
  0%{text-shadow:none}
  30%{color:#E07A1F;text-shadow:0 0 4px rgba(255,200,110,1),0 0 12px rgba(255,170,60,.95),0 0 26px rgba(255,160,50,.8),0 0 44px rgba(255,150,40,.55)}
  100%{text-shadow:0 0 10px rgba(240,170,70,.45)}
}
@media (prefers-reduced-motion:reduce){.spirit-glow.glow-on .gl{animation:none;text-shadow:0 0 8px rgba(235,175,75,.35)}}

/* Footnote marker for same-day/next-day availability */
.fn-ref{color:inherit;text-decoration:none;font-weight:700;font-size:.85em;vertical-align:super;line-height:1;margin-left:1px;padding:0 2px}
.fn-ref:hover{text-decoration:underline}
.ftr .ftr-fn{margin-top:-30px}
.ftr .ftr-fn:focus{outline:2px solid var(--gold-bright);outline-offset:4px;border-radius:4px}

.fn-link{color:inherit;text-decoration:none;cursor:pointer}
.fn-link:hover{text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}
.fn-link .fn-star{font-weight:700;font-size:.85em;vertical-align:super;line-height:1;margin-left:2px}
.sr-note{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.fn-ref{padding:0 4px;margin-left:0}

/* Same-day availability note: shown only on the Home page; elsewhere the * markers are hidden */
body:not([data-current="home"]) #fn-availability{display:none}
body:not([data-current="home"]) .fn-star,body:not([data-current="home"]) .fn-ref,body:not([data-current="home"]) .fn-link .sr-note{display:none}
body:not([data-current="home"]) .fn-link{pointer-events:none;text-decoration:none}

/* Crash page: free consultation call-out */
.free-consult{margin-top:clamp(28px,3.5vw,44px);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px 36px;background:#B9561F;color:#fff;border-radius:var(--r-lg);padding:clamp(24px,3.2vw,40px)}
.free-consult .fc-copy{flex:1 1 440px;min-width:0;display:flex;flex-direction:column;gap:12px}
.free-consult .fc-tag{align-self:flex-start;font-size:14px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;background:#fff;color:#9A4415;border-radius:999px;padding:5px 12px}
.free-consult h3{font-family:var(--display);font-weight:400;font-size:clamp(1.6rem,2.6vw,2.2rem);line-height:1.15;color:#fff;margin:0}
.free-consult p{margin:0;font-size:18px;line-height:1.5;color:#fff}
.free-consult .fc-247{display:flex;gap:10px;align-items:flex-start;font-weight:600}
.free-consult .fc-247 .ic{width:20px;height:20px;flex:none;margin-top:3px}
.free-consult .fc-actions{display:flex;flex-direction:column;gap:12px;flex:0 1 auto}
.free-consult .btn{justify-content:center;white-space:nowrap}
.free-consult .fc-call{background:#fff;color:#9A4415;border-color:#fff;font-weight:700}
.free-consult .fc-call:hover{background:#FCEFE6;color:#7E3610}
.free-consult .fc-req{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.85)}
.free-consult .fc-req:hover{background:rgba(255,255,255,.12);color:#fff}
.free-consult :focus-visible{outline-color:#fff}
@media (max-width:560px){.free-consult .fc-actions{width:100%}.free-consult .btn{white-space:normal}}

/* Chiropractic: free Tuesdays band right after the hero */
.tuesday-band{background:#B9561F;color:#fff}
.tuesday-band .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 36px;padding-block:clamp(26px,3.2vw,40px)}
.tuesday-band .tb-copy{flex:1 1 460px;min-width:0;display:flex;flex-direction:column;gap:10px}
.tuesday-band .tb-tag{align-self:flex-start;font-size:14px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;background:#fff;color:#9A4415;border-radius:999px;padding:5px 12px}
.tuesday-band h2{font-family:var(--display);font-weight:400;font-size:clamp(1.5rem,2.5vw,2.1rem);line-height:1.15;color:#fff;margin:0}
.tuesday-band p{margin:0;font-size:18px;line-height:1.5;color:#fff}
.tuesday-band .tb-call{align-self:flex-start;margin-top:6px;background:#fff;color:#9A4415;border-color:#fff;font-weight:700;white-space:nowrap}
.tuesday-band .tb-call:hover{background:#FCEFE6;color:#7E3610}
.tuesday-band :focus-visible{outline-color:#fff}

/* Kids page: "No one-size-fits-all adjustments" over a clinic photo */
.band.gentle-band{background-color:var(--olive-deep);background-image:linear-gradient(90deg,rgba(38,44,33,.94) 0%,rgba(38,44,33,.84) 40%,rgba(38,44,33,.38) 72%,rgba(38,44,33,.18) 100%),url(/assets/img/kids_gentle.jpg);background-size:cover;background-position:68% 28%;background-repeat:no-repeat}
.band.gentle-band .statement{max-width:600px}
.band.gentle-band .wrap.sec{padding-block:clamp(64px,7vw,110px)}
@media (max-width:900px){.band.gentle-band{background-image:linear-gradient(rgba(38,44,33,.80),rgba(38,44,33,.86)),url(/assets/img/kids_gentle.jpg);background-position:72% 40%}}

/* Cookie preferences bar (shown until the visitor chooses; reopen from "Cookie Settings" in the footer) */
.cookie-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;padding:0 max(16px,env(safe-area-inset-right,0px)) calc(16px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));pointer-events:none}
.cookie-bar .cb-inner{pointer-events:auto;max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;background:#2E322B;color:var(--cream);border:1px solid rgba(243,240,236,.18);border-radius:18px;padding:16px 20px;box-shadow:0 12px 32px rgba(0,0,0,.28)}
.cookie-bar .cb-text{flex:1 1 460px;min-width:0;margin:0;font-size:16px;line-height:1.45;color:rgba(243,240,236,.92)}
.cookie-bar .cb-text b{color:#fff}
.cookie-bar .cb-text a{color:var(--gold-label);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.cookie-bar .cb-actions{display:flex;flex-wrap:wrap;gap:10px}
.cookie-bar .cb-btn{background:transparent;color:var(--cream);border:1.5px solid rgba(243,240,236,.7);font-weight:700;cursor:pointer;min-width:150px;justify-content:center}
.cookie-bar .cb-btn:hover{background:rgba(243,240,236,.1)}
.cookie-bar .cb-accept{background:var(--cream);color:var(--olive-deep);border-color:var(--cream)}
.cookie-bar .cb-accept:hover{background:#fff}
.cookie-bar :focus-visible{outline:3px solid var(--gold-bright);outline-offset:2px}
@media (max-width:760px){.cookie-bar{bottom:calc(72px + env(safe-area-inset-bottom,0px));padding-bottom:10px}.cookie-bar .cb-text{font-size:15px}.cookie-bar .cb-actions{width:100%}.cookie-bar .cb-btn{flex:1 1 0;min-width:0}}
.cookie-open{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-decoration:none}
.cookie-open:hover{text-decoration:underline;color:#fff}

.ftr .ftr-spirit{color:var(--gold-label);margin-top:-4px}

/* ===== Brand guide page (hidden, /brand) ===== */
.br-jump{background:var(--cream);border-bottom:1px solid var(--line)}
.br-jump-in{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;padding-top:18px;padding-bottom:18px}
.br-jump-k{font-size:13.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--terra-600);font-weight:600;margin-right:6px}
.br-jump-a{display:inline-flex;align-items:center;padding:8px 16px;border-radius:999px;background:#fff;border:1.5px solid var(--line);font-size:16.5px;font-weight:500;color:var(--ink);text-decoration:none;transition:border-color .18s ease,background-color .18s ease}
.br-jump-a:hover{border-color:var(--green);background:var(--paper)}
.br-intro-note{display:flex;gap:12px;align-items:flex-start;max-width:760px;padding:14px 18px;border-radius:14px;background:rgba(243,240,236,.08);border:1px solid rgba(243,240,236,.22);color:rgba(243,240,236,.88);font-size:16.5px;line-height:1.45}
.br-intro-note b{color:var(--cream)}
.br-sub{display:flex;flex-direction:column;gap:10px;margin-top:clamp(40px,5vw,64px);margin-bottom:22px;max-width:760px}
.br-sub-h{font-family:var(--display);font-weight:400;font-size:clamp(1.45rem,2.2vw,1.85rem);line-height:1.15;color:var(--olive);margin:0}
.br-sub-p{color:var(--muted);font-size:18px;line-height:1.45;margin:0}
.br-k{font-size:13.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--terra-600);font-weight:600}
.br-glow{color:var(--gold-label)}
.br-words,.br-photo-rules{margin-top:clamp(12px,1.4vw,16px)}
.br-big{font-family:var(--display);font-weight:400;font-size:clamp(1.35rem,2vw,1.7rem);line-height:1.25;color:var(--ink);margin:0;text-wrap:balance}
.br-card-p{color:var(--muted);font-size:17.5px;line-height:1.45;margin:0}
.br-chips{display:flex;flex-wrap:wrap;gap:8px}
.br-chip{display:inline-flex;align-items:center;padding:6px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:16px;color:var(--ink)}
.br-chip-no{display:inline-flex;align-items:center;padding:6px 14px;border-radius:999px;background:#F8E5E1;border:1px solid #E2AEA5;font-size:16px;color:#8E2F25;text-decoration:line-through;text-decoration-color:rgba(142,47,37,.45)}
.br-list{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px;color:var(--ink);font-size:17.5px;line-height:1.4}
/* Story flow */
.br-flow{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-bottom:clamp(28px,3vw,40px)}
.br-flow-s{display:inline-flex;align-items:center;padding:9px 16px;border-radius:999px;background:var(--olive-deep);color:var(--cream);font-weight:600;font-size:16.5px}
.br-flow-a{color:var(--terra);font-size:20px;line-height:1}
/* BrandScript canvas */
.br-ci{display:flex;flex-direction:column;gap:10px;padding:clamp(22px,2.6vw,32px);border-radius:var(--r-lg);background:var(--olive-deep);color:var(--cream);margin-bottom:clamp(14px,1.6vw,18px)}
.br-ci-k{font-size:13.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-label);font-weight:600}
.br-ci-v{font-family:var(--display);font-weight:400;font-size:clamp(1.8rem,3.4vw,2.8rem);line-height:1.08;color:var(--cream);margin:0}
.br-canvas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,16px);align-items:stretch}
.br-cv{display:flex;flex-direction:column;gap:14px;padding:clamp(18px,1.8vw,22px);border-radius:var(--r-md);background:#fff;border:1px solid var(--line);min-width:0}
.br-cv-head{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.br-cv-ic{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--olive-deep);color:var(--cream)}
.br-cv-ic .ic{width:21px;height:21px}
.br-cv-t{font-family:var(--display);font-weight:400;font-size:1.18rem;line-height:1.15;color:var(--ink);margin:0;flex:1 1 auto;min-width:0}
.br-cv-n{font-family:var(--display);font-size:1.5rem;line-height:1;color:var(--terra);flex:none}
.br-cv-f{display:flex;flex-direction:column;gap:7px}
.br-cv-l{font-size:14px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--olive);margin:0}
.br-cv-v{background:var(--cream);border-radius:12px;padding:12px 14px;font-size:17px;line-height:1.42;color:var(--ink);margin:0}
.br-cv-v b{font-weight:700}
.br-cv-01{grid-column:1/2;grid-row:1/2}
.br-cv-02{grid-column:1/2;grid-row:2/4}
.br-cv-03{grid-column:2/3;grid-row:1/3}
.br-cv-04{grid-column:2/3;grid-row:3/4}
.br-cv-05{grid-column:3/4;grid-row:1/3}
.br-cv-06a{grid-column:4/5;grid-row:1/2;background:#E8F0E6;border-color:#A9C6A6}
.br-cv-06b{grid-column:4/5;grid-row:2/3;background:#F8E5E1;border-color:#E2AEA5}
.br-cv-07{grid-column:3/5;grid-row:3/4;background:var(--warning-bg);border-color:var(--gold-label)}
.br-cv-06a .br-cv-v,.br-cv-06b .br-cv-v,.br-cv-07 .br-cv-v{background:rgba(255,255,255,.7)}
.br-cv-06a .br-cv-ic{background:#5E8F5A}
.br-cv-06b .br-cv-ic{background:#B4473A}
.br-cv-07 .br-cv-ic{background:var(--gold);color:#fff}
.br-steps{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.br-steps li{display:flex;gap:12px;align-items:flex-start;background:var(--cream);border-radius:12px;padding:12px 14px;font-size:17px;line-height:1.42;color:var(--ink)}
.br-steps-n{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-weight:700;font-size:15px;margin-top:1px}
/* Messaging */
.br-quote{display:flex;flex-direction:column;gap:14px;padding:clamp(26px,3vw,40px);border-radius:var(--r-lg);background:var(--green);color:var(--cream)}
.br-quote-k{font-size:13.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-label);font-weight:600}
.br-quote-v{font-family:var(--display);font-weight:400;font-size:clamp(1.55rem,2.6vw,2.2rem);line-height:1.18;color:var(--cream);margin:0;text-wrap:balance}
.br-quote-p{color:rgba(243,240,236,.85);font-size:17px;line-height:1.45;margin:0}
.br-rules{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,16px)}
.br-rule{display:flex;flex-direction:column;gap:12px;padding:20px;border-radius:var(--r-md);background:#fff;border:1px solid var(--line)}
.br-rule-n{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--olive-deep);color:var(--cream);font-family:var(--display);font-size:19px}
.br-rule-t{font-family:var(--display);font-weight:400;font-size:1.2rem;line-height:1.2;color:var(--ink);margin:0}
.br-sb{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(12px,1.4vw,16px)}
.br-sb-c{display:flex;flex-direction:column;gap:10px;padding:20px;border-radius:var(--r-md);background:var(--cream);border-top:4px solid var(--terra)}
.br-sb-v{font-family:var(--display);font-weight:400;font-size:1.16rem;line-height:1.25;color:var(--ink);margin:0}
.br-tool{display:flex;flex-direction:column;gap:12px}
.br-tool-job{display:inline-flex;align-self:flex-start;padding:5px 12px;border-radius:999px;background:var(--olive-deep);color:var(--gold-label);font-size:14px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.br-tool-v{font-size:18px;line-height:1.5;color:var(--ink);margin:0}
.br-tool-t{font-family:var(--display);font-weight:400;font-size:1.6rem;line-height:1.15;color:var(--olive);margin:0}
/* Logo tiles */
.br-logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.4vw,16px)}
.br-logo{display:flex;flex-direction:column;border-radius:var(--r-md);overflow:hidden;border:1px solid var(--line);background:#fff}
.br-logo-stage{display:grid;place-items:center;min-height:220px;padding:28px}
.br-logo-meta{display:flex;flex-direction:column;gap:4px;padding:14px 18px;border-top:1px solid var(--line);background:#fff}
.br-logo-name{font-weight:700;font-size:16.5px;color:var(--ink);margin:0}
.br-logo-use{font-size:15.5px;line-height:1.4;color:var(--muted);margin:0}
.br-st-paper{background:var(--paper)}
.br-st-forest{background:var(--olive-deep)}
.br-st-green{background:var(--green)}
.br-st-peach{background:var(--brown-10)}
.br-st-lichen{background:var(--sage-10)}
.br-st-ivory{background:var(--cream)}
.br-logo-lockup{width:min(250px,80%)}
.br-rev{display:flex;align-items:center;gap:16px}
.br-rev .ftr-mark{height:96px}
.br-rev .ftr-word{height:50px}
.br-mark-olive{width:96px;background:var(--olive)}
.br-mark-terra{width:96px;background:var(--terra)}
.br-mark-white{width:96px;background:#fff}
.br-mark-green{width:96px;background:var(--green)}
.br-appicons{display:flex;align-items:flex-end;gap:22px}
.br-appicon{width:96px;height:96px;border-radius:22px;box-shadow:0 10px 24px rgba(38,44,33,.16);display:block}
.br-favicon{width:32px;height:32px;display:block}
.br-favwrap{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:14px;color:var(--muted)}
/* Palette */
.br-pal{display:flex;flex-direction:column;gap:22px}
.br-pal-g{display:flex;flex-direction:column;gap:10px}
.br-pal-h{font-size:14px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--olive);margin:0}
.br-pal-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.br-sw{display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:#fff;border:1px solid var(--line);min-width:0}
.br-sw-chip{display:block;height:92px;box-shadow:inset 0 -1px 0 rgba(38,44,33,.1)}
.br-sw-meta{display:flex;flex-direction:column;gap:2px;padding:10px 12px 12px}
.br-sw-name{font-weight:700;font-size:15.5px;color:var(--ink);margin:0}
.br-sw-hex{font-size:14.5px;color:var(--muted);letter-spacing:.04em;margin:0}
.br-sw-use{font-size:14px;line-height:1.35;color:var(--muted);margin:0}
.br-c-green{background:#506146}.br-c-olive{background:#4C5442}.br-c-forest{background:#3A4233}.br-c-sage{background:#B1B8A7}.br-c-lichen{background:#DADED3}.br-c-mist{background:#EEF0EA}
.br-c-paper{background:#FBF9F6}.br-c-ivory{background:#F3F0EC}.br-c-linen{background:#E6E0D9}.br-c-sand{background:#CFC3A5}
.br-c-peach{background:#EDD8CB}.br-c-terra{background:#9E6041}.br-c-cinnamon{background:#865036}.br-c-saddle{background:#6D432E}
.br-c-label{background:#E6CD8A}.br-c-antique{background:#BAA775}.br-c-sun{background:#E6C566}.br-c-butter{background:#FAF1DA}
.br-c-lichen,.br-c-mist,.br-c-paper,.br-c-ivory,.br-c-linen,.br-c-butter{box-shadow:inset 0 0 0 1px rgba(38,44,33,.16)}
.br-c-ink{background:#262C21}.br-c-muted{background:#5E6656}.br-c-red{background:#A3352A}
/* Typography */
.br-type{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.4vw,16px)}
.br-tspec{display:flex;flex-direction:column;gap:14px;padding:clamp(22px,2.4vw,30px);border-radius:var(--r-lg);background:#fff;border:1px solid var(--line)}
.br-tspec-aa{font-family:var(--display);font-size:5.2rem;line-height:1;color:var(--olive);margin:0}
.br-tspec-aa2{font-family:var(--body);font-size:5.2rem;line-height:1;color:var(--olive);margin:0;font-weight:500}
.br-tspec-n{font-family:var(--display);font-size:1.6rem;line-height:1.1;color:var(--ink);margin:0}
.br-tspec-s{font-family:var(--display);font-size:1.5rem;line-height:1.25;color:var(--ink);margin:0}
.br-tspec-b{font-size:19px;line-height:1.45;color:var(--ink);margin:0}
.br-scale{display:flex;flex-direction:column;border-radius:var(--r-md);overflow:hidden;border:1px solid var(--line);background:#fff;margin-top:clamp(12px,1.4vw,16px)}
.br-scale-r{display:grid;grid-template-columns:200px minmax(0,1fr);gap:18px;align-items:center;padding:16px 20px;border-bottom:1px solid var(--line)}
.br-scale-r:last-child{border-bottom:0}
.br-scale-k{display:flex;flex-direction:column;gap:2px;font-size:14.5px;color:var(--muted)}
.br-scale-k b{color:var(--ink);font-size:15.5px}
.br-scale-h1{font-family:var(--display);font-size:clamp(2.05rem,3.6vw,3.2rem);line-height:1.08;color:var(--olive);margin:0}
.br-scale-h2{font-family:var(--display);font-size:clamp(1.9rem,3.2vw,2.75rem);line-height:1.12;color:var(--olive);margin:0}
.br-scale-h3{font-family:var(--display);font-size:1.32rem;line-height:1.2;color:var(--ink);margin:0}
.br-scale-lede{font-size:clamp(1.15rem,1.6vw,1.32rem);line-height:1.4;color:var(--muted);margin:0}
.br-scale-body{font-size:19px;line-height:1.38;color:var(--ink);margin:0}
.br-scale-lab{font-weight:600;font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:var(--terra-600);margin:0}
/* Signature elements */
.br-sig{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.4vw,16px)}
.br-demo{display:grid;place-items:center;min-height:200px;border-radius:16px;padding:22px;text-align:center}
.br-demo-dark{background:var(--olive-deep)}
.br-demo-light{background:var(--sage-10)}
.br-demo-anim{width:120px;display:block}
.br-demo-anim svg{display:block;width:100%;height:auto}
.br-demo-anim:not(.play) svg *{animation-play-state:paused!important}
.br-demo-col{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}
.br-replay{font:inherit;font-size:14.5px;font-weight:600;color:var(--green);background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:6px 14px;cursor:pointer;transition:border-color .18s ease}
.br-replay:hover{border-color:var(--green)}
.br-demo-fade{position:relative;overflow:hidden;background:var(--olive-deep);padding:0;min-height:200px}
.br-fade-ph{position:absolute;top:0;bottom:0;right:0;left:30%;background-image:url(/assets/img/listen.jpg);background-size:cover;background-position:50% 30%;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.15) 12%,rgba(0,0,0,.45) 24%,rgba(0,0,0,.8) 38%,#000 52%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.15) 12%,rgba(0,0,0,.45) 24%,rgba(0,0,0,.8) 38%,#000 52%)}
.br-demo-strip{display:flex;flex-direction:column;align-items:flex-start;gap:10px;width:100%;padding:14px 16px;border-radius:12px;background:#A3352A;color:#fff;text-align:left;font-size:16px;line-height:1.35}
.br-demo-strip b{font-weight:700}
.br-demo-cta{display:inline-flex;padding:4px 12px;border:1.5px solid rgba(255,255,255,.75);border-radius:999px;font-weight:700;font-size:15px}
.br-demo-ics{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.br-demo-ics .ic-tile{width:52px;height:52px;border-radius:16px}
.br-ic-a{background:var(--terra);color:#fff}.br-ic-b{background:var(--green);color:var(--cream)}.br-ic-c{background:var(--gold);color:#fff}.br-ic-d{background:var(--sage);color:var(--olive-deep)}
.br-ills{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:100%}
.br-ill{aspect-ratio:1;border-radius:14px;background:#EEF0EA;padding:2px;overflow:hidden}
.br-ill .il{background-size:contain}
/* Photography */
.br-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.4vw,16px)}
.br-photo{display:flex;flex-direction:column;gap:10px;margin:0}
.br-photo-img{display:block;aspect-ratio:4/3;border-radius:var(--r-md);background-size:cover;background-position:center}
.br-photo-cap{font-size:16.5px;line-height:1.4;color:var(--ink);margin:0}
.br-ph-1{background-image:url(/assets/img/proc.jpg)}
.br-ph-2{background-image:url(/assets/img/hs4.jpg)}
.br-ph-3{background-image:url(/assets/img/adv.jpg)}
.br-ph-4{background-image:url(/assets/img/hs6.jpg)}
.br-ph-5{background-image:url(/assets/img/phone.jpg)}
.br-ph-6{background-image:url(/assets/img/kids_band.jpg)}
.br-moods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:clamp(12px,1.4vw,16px)}
.br-mood{display:flex;flex-direction:column;gap:6px;padding:16px 18px;border-radius:16px;background:var(--cream)}
.br-mood-t{font-family:var(--display);font-size:1.25rem;color:var(--olive);margin:0}
/* Scent */
.br-scent{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(20px,3vw,40px);align-items:center;padding:clamp(26px,3.4vw,44px);border-radius:var(--r-lg);background:var(--olive-deep);color:var(--cream)}
.br-scent-name{font-family:var(--display);font-weight:400;font-size:clamp(2rem,3.6vw,3rem);line-height:1.05;color:var(--cream);margin:0}
.br-scent-k{font-size:13.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-label);font-weight:600}
.br-scent-p{color:rgba(243,240,236,.88);font-size:18px;line-height:1.5;margin:0}
.br-scent-notes{display:flex;flex-wrap:wrap;gap:8px}
.br-scent-note{display:inline-flex;padding:6px 14px;border-radius:999px;background:rgba(243,240,236,.1);border:1px solid rgba(243,240,236,.25);color:var(--cream);font-size:15.5px}
.br-scent-list{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px;color:rgba(243,240,236,.9);font-size:17px;line-height:1.4}
.br-foot{display:flex;flex-direction:column;gap:8px;align-items:flex-start}
/* Spirit of Ibolit section */
.br-spirit-h{max-width:none}
[data-glow-loop] .br-w{display:inline-block;white-space:nowrap}
.br-story{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,4vw,56px);align-items:center;margin-top:8px}
.br-story-art{display:flex;flex-direction:column;align-items:center;gap:16px;padding:clamp(28px,4vw,48px);border-radius:var(--r-lg);background:#fff}
.br-story-anim{width:min(240px,62%)}
.br-story-cap{margin:0;color:var(--muted);font-size:15px;line-height:1.4;text-align:center;max-width:300px}
.br-story-copy{display:flex;flex-direction:column;gap:14px}
.br-story-p{margin:0;font-size:18px;line-height:1.6;color:var(--ink)}
.br-anim{display:block}
.br-anim svg{display:block;width:100%;height:auto}
.br-anim:not(.play) svg *{animation-play-state:paused!important}
.br-tag{align-self:flex-start;margin-top:auto;font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--olive-deep);background:var(--cream);border-radius:999px;padding:5px 11px}
.br-sb-w{background:#fff}
.br-spirit-q{margin-top:clamp(40px,5vw,64px)}
@media (max-width:1000px){
  .br-story{grid-template-columns:minmax(0,1fr)}
  .br-canvas{grid-template-columns:repeat(2,minmax(0,1fr))}
  .br-cv-01,.br-cv-02,.br-cv-03,.br-cv-04,.br-cv-05,.br-cv-06a,.br-cv-06b{grid-column:auto;grid-row:auto}
  .br-cv-07{grid-column:1/3;grid-row:auto}
  .br-rules{grid-template-columns:repeat(2,minmax(0,1fr))}
  .br-sb{grid-template-columns:repeat(2,minmax(0,1fr))}
  .br-pal-row{grid-template-columns:repeat(3,minmax(0,1fr))}
  .br-sig{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .br-canvas{grid-template-columns:minmax(0,1fr)}
  .br-cv-07{grid-column:auto}
  .br-rules,.br-sb,.br-logos,.br-type,.br-sig,.br-photos{grid-template-columns:minmax(0,1fr)}
  .br-pal-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .br-moods{grid-template-columns:repeat(2,minmax(0,1fr))}
  .br-scent{grid-template-columns:minmax(0,1fr)}
  .br-scale-r{grid-template-columns:minmax(0,1fr);gap:6px}
  .br-tspec-aa,.br-tspec-aa2{font-size:4rem}
}
/* ===== /brand css ===== */

/* static site */
html{scroll-padding-top:100px}
