:root{--bg:#F5F0EA;--surface:#FBF8F4;--sand:#E9E0D5;--ink:#2B2224;--mute:#6B5F5C;--crimson:#9B1C31;--wine:#4B0F1B;--on-crimson:#FBF8F4;--line:#D8CCBF}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#1D1517;--surface:#271C1F;--sand:#33262A;--ink:#F1E8E1;--mute:#B9A9A3;--crimson:#E0566B;--wine:#12080B;--line:#47363B;--on-crimson:#1D1517;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#1D1517;--surface:#271C1F;--sand:#33262A;--ink:#F1E8E1;--mute:#B9A9A3;--crimson:#E0566B;--wine:#12080B;--line:#47363B;--on-crimson:#1D1517;color-scheme:dark}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(env(safe-area-inset-top,0px) + 80px)}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.6 "Instrument Sans",system-ui,sans-serif}
h1,h2,h3{font-family:Newsreader,Georgia,serif;font-weight:400;line-height:1.12;margin:0 0 .5em;letter-spacing:-.01em}
h2{font-size:clamp(30px,4.4vw,48px)}h3{font-size:24px}
p{margin:0 0 1em;max-width:64ch}
a{color:inherit}
:focus-visible{outline:3px solid var(--crimson);outline-offset:3px}
.wrap{max-width:1100px;margin:auto;padding:0 20px}
.pad{padding:84px 0}
.sand{background:var(--sand)}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--bg);padding:8px 14px;z-index:50}.skip:focus{left:8px}

/* header */
header{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px)}
.bar{max-width:1100px;margin:auto;padding:10px 20px;display:flex;align-items:center;gap:14px 24px;justify-content:space-between;flex-wrap:wrap}
.logo{font-family:Newsreader,serif;font-size:22px;text-decoration:none;font-weight:600;display:flex;align-items:center;gap:12px}
.logo b{color:var(--crimson);font-weight:600}
.mark{height:42px;width:auto;display:block}
nav{display:flex;gap:6px 22px;flex-wrap:wrap;font-size:15px;align-items:center}
nav a{text-decoration:none;color:var(--mute);padding:4px 0;border-bottom:2px solid transparent}
nav a:hover{color:var(--crimson)}
nav a[aria-current="page"]{color:var(--ink);border-bottom-color:var(--crimson)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .logo .mark{background:#F5F0EA;border-radius:6px;padding:3px 8px}}
:root[data-theme="dark"] .logo .mark{background:#F5F0EA;border-radius:6px;padding:3px 8px}

/* buttons */
.btn{display:inline-block;background:var(--crimson);color:var(--on-crimson);padding:13px 24px;border-radius:6px;text-decoration:none;font:600 16px "Instrument Sans",sans-serif;border:1.5px solid var(--crimson);cursor:pointer}
.btn:hover{filter:brightness(1.1)}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn:disabled{opacity:.6;cursor:wait}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}

/* hub */
.doors{display:grid;grid-template-columns:1fr 1fr;min-height:calc(100svh - 70px)}
.door{position:relative;display:flex;flex-direction:column;justify-content:center;padding:64px clamp(24px,5vw,72px);overflow:hidden}
.door h2{font-size:clamp(38px,5.2vw,64px)}
.door p{font-size:19px}
.door svg{position:absolute;right:-20px;bottom:-10px;width:min(360px,70%);opacity:.18;pointer-events:none}
.door.home{background:var(--sand)}
.door.med{background:var(--wine);color:#FBF8F4}
.door.med p{color:#E8D9D3}
.door.med .btn{background:#FBF8F4;color:#4B0F1B;border-color:#FBF8F4}
.door .kicker{font-weight:600;color:var(--crimson);margin:0 0 10px}
.door.med .kicker{color:#E8A7B2}
.door ul{list-style:none;margin:0 0 24px;padding:0}
.door li{padding:6px 0;border-bottom:1px solid rgba(128,100,100,.35);max-width:420px}
.line-art{fill:none;stroke:currentColor;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}

/* home care hero */
.hc-hero{background:var(--sand);padding:72px 0}
.hc-hero .wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}
.hc-hero h1{font-size:clamp(40px,6.4vw,72px)}
.hc-hero p.lead{font-size:20px;color:var(--mute)}
.house{width:100%;max-width:380px;justify-self:center;color:var(--crimson)}
.house path{fill:none;stroke:currentColor;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:draw 1.8s cubic-bezier(.5,0,.2,1) forwards}
.house path:nth-child(2){animation-delay:.5s}.house path:nth-child(3){animation-delay:1s}.house path:nth-child(4){animation-delay:1.3s}
@keyframes draw{to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:reduce){.house path{animation:none;stroke-dashoffset:0}html{scroll-behavior:auto}}

/* medical scroll hero */
#hero{height:230vh;background:var(--wine);color:#FBF8F4}
.stage{position:sticky;top:var(--hh,66px);height:calc(100vh - var(--hh,66px));height:calc(100svh - var(--hh,66px));display:flex;align-items:center;overflow:hidden}
.stage .wrap{width:100%}
.stage svg{position:absolute;left:0;right:0;top:50%;width:100%;height:46%;transform:translateY(-50%);opacity:.5}
#pulse{fill:none;stroke:#E0566B;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.copy{position:relative;z-index:2;max-width:760px}
.copy h1{font-size:clamp(38px,7vw,78px);margin-bottom:.35em}
.copy p{font-size:20px;color:#E8D9D3}
.line{opacity:0;transform:translateY(14px);transition:opacity .6s,transform .6s}
.line.on{opacity:1;transform:none}
.cue{position:absolute;bottom:22px;left:20px;font-size:14px;color:#CDB8B1}
.static .line{opacity:1;transform:none}
.facts{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0 0;padding:0;list-style:none}
.facts li{border:1px solid #8a4452;padding:6px 14px;border-radius:99px;font-size:15px}
#hero .btn{background:#E0566B;border-color:#E0566B;color:#2B0A12}
#hero .btn.ghost{background:transparent;color:#FBF8F4;border-color:#FBF8F4}
@media (prefers-reduced-motion:reduce){.line{transition:none}}

/* content blocks */
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.rows{border-top:1.5px solid var(--ink)}
.rows>div{display:grid;grid-template-columns:240px 1fr;gap:24px;padding:20px 0;border-bottom:1px solid var(--line)}
.rows h3{font-size:22px;margin:0}.rows p{margin:0;color:var(--mute)}
.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.cols ul{margin:0;padding:0;list-style:none}.cols li{padding:7px 0;border-bottom:1px solid var(--line)}
.cols h3{font-size:21px;color:var(--crimson)}
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin:0;padding:0;list-style:none}
.steps li{counter-increment:s}
.steps li::before{content:counter(s);display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--crimson);color:var(--on-crimson);font:600 17px "Instrument Sans",sans-serif;margin-bottom:14px}
.steps h3{font-size:22px}.steps p{color:var(--mute)}
.checks{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 32px}
.checks li{padding-left:30px;position:relative}
.checks li::before{content:"";position:absolute;left:0;top:.35em;width:16px;height:16px;border-radius:50%;background:var(--crimson)}
.checks li::after{content:"";position:absolute;left:5px;top:.5em;width:4px;height:8px;border:solid var(--on-crimson);border-width:0 2px 2px 0;transform:rotate(40deg)}
.note{background:var(--surface);border-left:4px solid var(--crimson);padding:16px 20px;border-radius:0 6px 6px 0;max-width:64ch}
.jobs{border-top:1.5px solid var(--ink)}
.job{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}
.job span{color:var(--mute);font-size:15px}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.chip{background:transparent;color:var(--ink);border:1.5px solid var(--line);padding:7px 16px;border-radius:99px;font:500 15px "Instrument Sans",sans-serif;cursor:pointer}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.tag{font-family:Newsreader,serif;font-style:italic;color:var(--crimson);font-size:22px}

/* forms */
form{display:grid;gap:14px;background:var(--surface);padding:28px;border-radius:8px;border:1px solid var(--line)}
form h3{font-size:24px;margin:0}
label{font-weight:500;font-size:15px;display:grid;gap:5px}
input,select,textarea{font:inherit;padding:11px 12px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--ink);width:100%}
.hp{position:absolute;left:-9999px}
.ok,.err{display:none;padding:14px 16px;border-left:4px solid var(--crimson);background:var(--sand)}

/* footer */
footer{background:var(--wine);color:#E8D9D3;padding:44px 0;font-size:15px}
footer a{color:#FBF8F4}
.chip-logo{background:#F5F0EA;border-radius:8px;padding:8px 12px;display:inline-block;line-height:0;margin-bottom:18px}
.chip-logo img{height:56px;width:auto}
footer .cols2{display:flex;gap:24px 56px;flex-wrap:wrap;justify-content:space-between}
footer p{margin:0 0 6px}

@media (max-width:520px){.logo{font-size:18px;gap:8px}.mark{height:32px}nav{font-size:14px}}
@media (max-width:820px){
.doors,.split,.cols,.checks,.hc-hero .wrap,.steps{grid-template-columns:1fr}
.rows>div{grid-template-columns:1fr;gap:6px}
.pad{padding:60px 0}
.house{max-width:240px}
.door{padding:56px 24px}
}
