[hidden]{display:none!important}

/* Layout: quiet, white-first pages; one soft hero panel; hairline section labels; blue used only as a small signal. */
:root{
  --bg:#FFFFFF; --soft:#F5F8FB; --tint:#EAF2FA; --surface:#FFFFFF;
  --ink:#10202F; --muted:#66727E; --line:#E6ECF1;
  --accent:#1F6FD1; --accent-soft:#DCEAF9; --on-accent:#FFFFFF;
  --save:#227A54;
  --f:"Geist","Helvetica Neue",Arial,sans-serif; --fm:"Geist Mono",ui-monospace,Menlo,monospace;
  --r:26px; --max:76rem;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#0A1118; --soft:#111A23; --tint:#14212D; --surface:#111A23;
  --ink:#ECF1F6; --muted:#9AA6B2; --line:#1F2A35;
  --accent:#6FA8F0; --accent-soft:#16283B; --on-accent:#0A1118; --save:#6CCB9C; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0A1118; --soft:#111A23; --tint:#14212D; --surface:#111A23;
  --ink:#ECF1F6; --muted:#9AA6B2; --line:#1F2A35;
  --accent:#6FA8F0; --accent-soft:#16283B; --on-accent:#0A1118; --save:#6CCB9C; color-scheme:dark}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(80px + env(safe-area-inset-top,0px))}
body{margin:0;background:var(--bg);color:var(--ink);font:400 1rem/1.6 var(--f);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3{margin:0;font-weight:400;letter-spacing:-.03em;text-wrap:balance}
p{margin:0}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:8px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

.wrap{max-width:var(--max);margin-inline:auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
@media(min-width:760px){.wrap{padding-left:max(32px,env(safe-area-inset-left,0px));padding-right:max(32px,env(safe-area-inset-right,0px))}}
.sec{padding-block:clamp(64px,9vw,120px)}
.sec.tight{padding-top:0}
.eyebrow{display:flex;align-items:center;gap:10px;font:500 .72rem/1 var(--fm);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.eyebrow::before{content:"";width:7px;height:7px;background:var(--accent);border-radius:1px;flex:none}
.eyebrow.rule::after{content:"";flex:1;height:1px;background:var(--line)}
.h2{font-size:clamp(2rem,4.4vw,3.4rem);line-height:1.04;font-weight:300}
.lead{color:var(--muted);font-size:1.0625rem;max-width:34rem}
.head{display:grid;gap:18px;margin-bottom:clamp(32px,4vw,56px)}
@media(min-width:900px){.head.split{grid-template-columns:minmax(0,1fr) minmax(0,24rem);align-items:end;column-gap:64px}}
.muted{color:var(--muted)}
.tnum{font-variant-numeric:tabular-nums}

.btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border-radius:999px;border:0;cursor:pointer;font:500 .9375rem/1 var(--f);background:var(--ink);color:var(--bg);transition:transform .2s}
.btn:hover{transform:translateY(-1px)}
.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.btn.ghost:hover{box-shadow:inset 0 0 0 1px var(--ink)}
.btn.sm{min-height:40px;padding:0 18px;font-size:.875rem}
.more{display:inline-flex;gap:6px;align-items:center;font-weight:500;background:none;border:0;padding:0;cursor:pointer}
.more::after{content:"→";transition:transform .2s}
.more:hover::after,a:hover .more::after{transform:translateX(3px)}
.textlink{font-weight:500;color:var(--accent);background:none;border:0;padding:0;cursor:pointer}
.textlink:hover{text-decoration:underline;text-underline-offset:3px}

/* announcement + nav */
.announce{background:var(--soft);color:var(--muted);font-size:.8125rem;text-align:center;padding-block:9px}
.announce a{color:var(--ink);font-weight:500;border-bottom:1px solid currentColor}
header.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:saturate(1.4) blur(14px)}
.navbar{display:flex;align-items:center;gap:24px;height:72px}
.brand{display:flex;align-items:center;flex:none}
.brand img{height:34px;width:auto}
.logo-dark{display:none}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .logo-light{display:none}:root:not([data-theme="light"]) .logo-dark{display:block}}
:root[data-theme="dark"] .logo-light{display:none}:root[data-theme="dark"] .logo-dark{display:block}
.navlinks{display:none;gap:22px;white-space:nowrap;flex:1;justify-content:center;font-size:.9375rem}
.navlinks a{color:var(--muted)}.navlinks a:hover,.navlinks a[aria-current="page"]{color:var(--ink)}
.navright{margin-left:auto;display:flex;gap:10px;align-items:center}
.navright .btn{display:none;min-height:42px;padding:0 18px;font-size:.875rem}
.iconbtn{all:unset;cursor:pointer;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 1px var(--line);position:relative}
.iconbtn svg{width:19px;height:19px}
.iconbtn:hover{box-shadow:inset 0 0 0 1px var(--ink)}
.iconbtn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.iconbtn .badge{position:absolute;top:-3px;right:-3px;min-width:19px;height:19px;border-radius:999px;background:var(--accent);color:var(--on-accent);font:600 .68rem/19px var(--f);text-align:center;padding:0 5px}
@media(min-width:1180px){.navlinks{display:flex}.navright{margin-left:0}.navright .btn{display:inline-flex}.menubtn{display:none}}

/* hero */
.hero{padding-top:8px}
.hero-panel{position:relative;border-radius:32px;overflow:hidden;background:linear-gradient(120deg,var(--soft) 0%,var(--tint) 100%);display:grid;min-height:clamp(480px,56vw,640px)}
@media(min-width:900px){.hero-panel{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}}
.hero-copy{position:relative;z-index:2;padding:clamp(28px,5vw,72px);display:grid;gap:24px;align-content:center;max-width:40rem}
.hero h1{font-size:clamp(2.6rem,6.4vw,5rem);line-height:1;font-weight:300}
.hero h1 em{font-style:normal;color:var(--accent)}
.hero p{color:var(--muted);font-size:1.125rem;max-width:28rem}
.hero .actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.hero-art{position:relative;min-height:340px}
.hero-art .p1,.hero-art .p2{position:absolute;bottom:0;width:auto;max-width:none}
.hero-art .p1{height:92%;left:4%;z-index:2}
.hero-art .p2{height:98%;right:6%;z-index:1}
.hero-art .pulse{position:absolute;left:-10%;top:44%;width:110%;height:90px;color:var(--accent);opacity:.35}
.pulse path{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.hero-note{position:absolute;z-index:3;right:20px;bottom:20px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-radius:18px;padding:14px 18px;display:grid;gap:4px}
.hero-note small{font:500 .66rem/1 var(--fm);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.hero-note b{font-weight:500;font-size:1.125rem}
.hero-note s{font-size:.8125rem;color:var(--muted)}
@media(max-width:899px){.hero-art{min-height:380px}.hero-copy{padding-bottom:8px}}

.trust{display:flex;flex-wrap:wrap;gap:12px 32px;padding-block:24px;border-bottom:1px solid var(--line);font-size:.875rem;color:var(--muted)}
.trust span{display:inline-flex;align-items:center;gap:8px}
.trust svg{width:17px;height:17px;color:var(--accent)}

/* tiles (home) */
.tiles{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:1000px){.tiles{grid-template-columns:repeat(4,minmax(0,1fr))}}
.tile{background:var(--soft);border-radius:22px;padding:24px;display:grid;gap:40px;align-content:space-between;min-height:220px;transition:background .2s}
.tile:hover{background:var(--tint)}
.tile .ico{width:46px;height:46px;border-radius:50%;background:var(--bg);display:grid;place-items:center;color:var(--accent)}
.tile .ico svg{width:22px;height:22px}
.tile h3{font-size:1.25rem;font-weight:500;letter-spacing:-.01em}
.tile p{color:var(--muted);font-size:.875rem;margin-top:4px}
.tile .from{font:400 .78rem/1 var(--fm);color:var(--muted);margin-top:12px}
@media(max-width:560px){.tile{min-height:0;gap:22px;padding:18px}.tile h3{font-size:1.0625rem}}

/* home package teaser */
.ptease{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media(min-width:800px){.ptease{grid-template-columns:repeat(3,minmax(0,1fr))}}
.pt{border-radius:var(--r);padding:28px;display:grid;gap:18px;align-content:start;background:var(--soft)}
.pt.dark{background:var(--ink);color:var(--bg)}
.pt.dark .eyebrow{color:color-mix(in srgb,var(--bg) 70%,var(--ink))}
.pt h3{font-size:1.75rem;font-weight:400}
.pt .pr{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.pt .pr b{font-weight:400;font-size:1.6rem;font-variant-numeric:tabular-nums}
.pt .pr s{font-size:.875rem;opacity:.6}
.pt ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:.9375rem}
.pt li{display:flex;gap:10px}.pt li::before{content:"✓";color:var(--accent)}
.pt.dark li::before{color:var(--accent-soft)}

/* duo (home) */
.duo{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media(min-width:800px){.duo{grid-template-columns:repeat(2,minmax(0,1fr))}}
.dcard{position:relative;border-radius:var(--r);overflow:hidden;min-height:340px;display:flex;align-items:flex-end;background:var(--tint)}
.dcard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dcard::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,20,32,.05) 20%,rgba(8,20,32,.72))}
.dcard .in{position:relative;z-index:1;padding:28px;display:grid;gap:10px;color:#fff}
.dcard .eyebrow{color:rgba(255,255,255,.8)}
.dcard h3{font-size:1.75rem;font-weight:400}
.dcard p{opacity:.88;max-width:26rem;font-size:.9375rem}
.dcard .more{color:#fff}

/* closing */
.closing{border-radius:32px;background:linear-gradient(120deg,var(--tint),var(--soft));padding:clamp(32px,6vw,80px);display:grid;gap:24px}
@media(min-width:900px){.closing{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:end}}
.closing h2{font-size:clamp(2rem,4.4vw,3.4rem);line-height:1.04;font-weight:300}
.closing address{font-style:normal;color:var(--muted)}
.closing .row{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}

/* page header */
.phead{padding-block:clamp(40px,6vw,80px) clamp(24px,4vw,48px)}
.crumb{font-size:.8125rem;color:var(--muted);margin-bottom:24px}
.crumb a:hover{color:var(--ink)}
.phead h1{font-size:clamp(2.4rem,5.6vw,4.25rem);line-height:1.02;font-weight:300;max-width:16ch}
.phead .lead{margin-top:18px}

/* packages page */
.seg{display:inline-flex;gap:4px;padding:5px;border-radius:999px;background:var(--soft)}
.seg button{all:unset;cursor:pointer;padding:10px 20px;border-radius:999px;font-weight:500;font-size:.9375rem;color:var(--muted)}
.seg button[aria-pressed="true"]{background:var(--bg);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.08)}
.pkgseg{margin-top:14px}.pkgseg button{padding:8px 18px;font-size:.875rem}
.seg button:focus-visible{outline:2px solid var(--accent)}
.pkgbar{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;margin-bottom:24px}
.pkgs{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media(min-width:720px){.pkgs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){.pkgs{grid-template-columns:repeat(3,minmax(0,1fr))}}
.pkg{background:var(--soft);border-radius:var(--r);padding:28px;display:grid;gap:16px;align-content:start;position:relative}
.pkg.feat{background:var(--tint)}
.pkg .tag{position:absolute;top:24px;right:24px;font:500 .64rem/1 var(--fm);letter-spacing:.12em;text-transform:uppercase;padding:6px 9px;border-radius:999px;background:var(--bg);color:var(--accent)}
.pkg .tier{font:500 .7rem/1 var(--fm);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.pkg h3{font-size:1.75rem;font-weight:400;margin-top:-6px}
.price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}
.price .now{font-weight:400;font-size:1.75rem;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.price s{color:var(--muted);font-size:.875rem}
.save{font:500 .7rem/1 var(--fm);color:var(--save)}
.pkg .who{font-size:.875rem;color:var(--muted);margin-top:-8px}
.pkg ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:.9375rem}
.pkg li{display:flex;gap:10px}.pkg li::before{content:"✓";color:var(--accent)}
.pkg .count{font:400 .78rem/1.4 var(--fm);color:var(--muted);border-top:1px solid var(--line);padding-top:14px}
.pkg .acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.stay{margin-top:12px;display:grid;gap:20px;background:var(--soft);border-radius:var(--r);padding:clamp(22px,3vw,36px)}
@media(min-width:900px){.stay{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:40px}}
.stay h3{font-size:1.6rem;font-weight:400}
.stay p{color:var(--muted)}
.stayimgs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.stayimgs figure{margin:0;position:relative;border-radius:14px;overflow:hidden;aspect-ratio:4/3}
.stayimgs figure.w{grid-column:span 2}
.stayimgs img{width:100%;height:100%;object-fit:cover}
.stayimgs figcaption{position:absolute;left:8px;bottom:8px;font:500 .62rem/1 var(--fm);letter-spacing:.1em;text-transform:uppercase;color:#fff;background:rgba(5,20,40,.45);backdrop-filter:blur(6px);padding:5px 7px;border-radius:999px}
details.compare{margin-top:12px;background:var(--soft);border-radius:var(--r)}
details.compare>summary{cursor:pointer;list-style:none;padding:22px 28px;font-weight:500;font-size:1.0625rem;display:flex;justify-content:space-between;gap:12px}
details.compare>summary::-webkit-details-marker{display:none}
details.compare>summary::after{content:"+";font-size:1.4rem;line-height:1;color:var(--muted)}
details.compare[open]>summary::after{content:"−"}
.tablewrap{overflow-x:auto;padding:0 16px 20px}
table.cmp{border-collapse:collapse;width:100%;min-width:720px;font-size:.875rem}
.cmp th,.cmp td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:center}
.cmp th:first-child,.cmp td:first-child{text-align:left;position:sticky;left:0;background:var(--soft)}
.cmp thead th{font-weight:500}
.cmp thead small{display:block;font:400 .75rem/1.3 var(--fm);color:var(--muted)}
.yes{color:var(--accent)}.no{color:var(--line)}

/* add button */
.add{all:unset;cursor:pointer;box-sizing:border-box;display:inline-flex;align-items:center;gap:8px;font-size:.875rem;font-weight:500;white-space:nowrap}
.add::before{content:"";width:22px;height:22px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--muted);transition:background .2s,box-shadow .2s}
.add[aria-pressed="true"]::before{background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/13px no-repeat;box-shadow:none}
.add:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:999px}

/* panels */
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.fchip{all:unset;cursor:pointer;box-sizing:border-box;padding:9px 16px;border-radius:999px;font-size:.875rem;color:var(--muted);background:var(--soft);flex:none}
.fchip:hover{color:var(--ink)}
.fchip[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
.fchip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.panels{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media(min-width:700px){.panels{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){.panels{grid-template-columns:repeat(3,minmax(0,1fr))}}
.panel{background:var(--soft);border-radius:20px;padding:22px;display:grid;gap:12px;align-content:start}
.panel .top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.panel h3{font-size:1.0625rem;font-weight:500;letter-spacing:-.01em}
.panel .pp{font:400 .9375rem/1.3 var(--fm);white-space:nowrap}
.panel .meta{font-size:.8125rem;color:var(--muted)}
.panel details summary{cursor:pointer;font-size:.8125rem;font-weight:500;color:var(--muted);list-style:none}
.panel details summary::-webkit-details-marker{display:none}
.panel details summary::after{content:" +"}.panel details[open] summary::after{content:" −"}
.panel details ul{margin:10px 0 0;padding-left:18px;font-size:.875rem;color:var(--muted);display:grid;gap:4px}
.addons{margin-top:10px;font-size:.8125rem}
.addons b{display:block;font:500 .66rem/1 var(--fm);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.addons div{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-top:1px solid var(--line)}
.panel .bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.panel .note{font-size:.75rem;color:var(--muted)}

/* price directory */
.dir-top{display:grid;gap:14px;margin-bottom:8px}
.search{display:flex;align-items:center;gap:10px;background:var(--soft);border-radius:999px;padding:0 6px 0 20px;height:56px}
.search svg{width:19px;height:19px;color:var(--muted);flex:none}
.search input{flex:1 1 0;width:0;min-width:0;border:0;background:transparent;font:inherit;font-size:1rem;color:var(--ink)}
.search input:focus{outline:none}
.search:focus-within{box-shadow:inset 0 0 0 1.5px var(--ink)}
.secs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}
.secs::-webkit-scrollbar{display:none}
.dir-sub{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;font-size:.875rem;color:var(--muted)}
.dir-sub select{font:inherit;font-size:.875rem;color:var(--ink);background:var(--soft);border:0;border-radius:999px;padding:9px 14px;max-width:100%}
.rgroup{font:500 .7rem/1 var(--fm);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);padding:28px 0 8px}
.prow{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px 24px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.prow .nm{min-width:0;overflow-wrap:anywhere}
.prow .nm small{display:block;color:var(--muted);font-size:.78rem;margin-top:2px}
.prow .pr{font:400 .875rem/1 var(--fm);white-space:nowrap}
.vincl{display:block}.vincl small{display:block;color:var(--muted);font-size:.78rem;margin-top:4px}.prow2 .pn .sides{display:flex;margin:8px 0 6px}
.prow .inclbtn{all:unset;cursor:pointer;display:inline-block;margin-top:6px;font-size:.8125rem;font-weight:600;color:var(--accent)}.prow .inclbtn:hover{text-decoration:underline}.prow .inclbtn:focus-visible{outline:2px solid var(--accent);border-radius:4px}
.prow mark{background:var(--accent-soft);color:inherit;border-radius:3px;padding:0 1px}
@media(max-width:520px){.prow{grid-template-columns:minmax(0,1fr) auto}.prow .add{grid-column:2;justify-self:end}.prow .pr{grid-row:1;grid-column:2;text-align:right}}
.dir-foot{padding-top:20px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;font-size:.8125rem;color:var(--muted)}
.empty{padding:40px 0;text-align:center;color:var(--muted)}

/* doctors */
.docs{display:grid;gap:32px}
@media(min-width:960px){.docs{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start}}
.docs .media{border-radius:var(--r);overflow:hidden;aspect-ratio:4/5;max-width:100%;background:linear-gradient(160deg,var(--soft),var(--tint));display:flex;justify-content:center;align-items:flex-end}
.docs .media img{height:94%;width:auto}
.spec{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));gap:0 32px;align-content:start}
.spec div{display:flex;justify-content:space-between;gap:12px;padding:15px 0;border-bottom:1px solid var(--line)}
.spec b{font:400 .875rem/1.6 var(--fm);white-space:nowrap}
.spec b.ask{font-family:var(--f);color:var(--muted);font-size:.8125rem}

/* home service */
.hs{display:grid;gap:32px}
@media(min-width:960px){.hs{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);align-items:start}}
.hs ol{margin:0;padding:0;list-style:none;display:grid;gap:22px;counter-reset:s}
.hs ol li{display:grid;grid-template-columns:auto 1fr;gap:14px;counter-increment:s}
.hs ol li::before{content:counter(s,decimal-leading-zero);font:400 .8125rem/1.6 var(--fm);color:var(--accent)}
.hs ol b{display:block;font-weight:500}.hs ol span{color:var(--muted);font-size:.9375rem}
.zt{overflow-x:auto;background:var(--soft);border-radius:var(--r)}
table.zone{border-collapse:collapse;width:100%;min-width:620px;font-size:.9rem}
.zone th,.zone td{padding:16px 18px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.zone thead th{font-weight:500}
.zone thead th small{display:block;font-size:.75rem;color:var(--muted);margin-top:4px;font-weight:400}
.zone td.p{font:400 .9375rem/1.3 var(--fm);white-space:nowrap}
.zone td b{display:block;font-weight:500}
.zone td small{color:var(--muted);font-size:.8125rem}
.zone tr:last-child td{border-bottom:0}

/* corporate */
.corp{display:grid;gap:12px}
@media(min-width:960px){.corp{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}
.corp .dcard{min-height:420px}
.corp .panels{grid-template-columns:minmax(0,1fr)}
@media(min-width:640px){.corp .panels{grid-template-columns:repeat(2,minmax(0,1fr))}}
.btn.onphoto{justify-self:start;background:#fff;color:#10202F;margin-top:6px}

/* prepare */
.prep{display:grid;gap:12px}
@media(min-width:960px){.prep{grid-template-columns:repeat(2,minmax(0,1fr))}}
.prepnote{display:flex;gap:12px;align-items:flex-start;padding:14px 18px;border-radius:14px;background:var(--soft);margin-bottom:20px;font-size:.9375rem}
.prepnote svg{width:20px;height:20px;flex:none;color:var(--accent);margin-top:2px}
.prepnote p{margin:0}.prepnote b{font-weight:600}
.prepmine{border:1px solid var(--line);border-radius:var(--r);padding:clamp(18px,2.4vw,28px);margin-bottom:28px;display:grid;gap:14px}
.prepmine h2{font-size:1.25rem;margin:0}
.pmgrid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.pmg{display:grid;gap:8px;align-content:start;padding:16px 18px;border-radius:16px;background:var(--soft)}
.pmg h3{margin:0;font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-family:var(--f)}
.pmg ul{margin:0;padding:0;list-style:none;display:grid;gap:8px;font-size:.9rem;line-height:1.4}
.pmg li{position:relative;padding-left:22px}
.pmg li::before{content:"";position:absolute;left:0;top:.2em;width:14px;height:14px;border-radius:4px;box-shadow:inset 0 0 0 1.5px var(--accent)}
.pmg li small{display:block;color:var(--muted);font-size:.75rem;margin-top:2px}
.prepmine .pmlist{display:grid;gap:10px}
.prepmine .pm{display:grid;grid-template-columns:minmax(0,180px) minmax(0,1fr);gap:4px 16px;padding-top:10px;border-top:1px solid var(--line);font-size:.9375rem}
.prepmine .pm b{font-weight:600}.prepmine .pm ul{margin:0;padding-left:18px;display:grid;gap:2px}
.prepmine .pm small{grid-column:2;color:var(--muted);font-size:.8125rem}
@media(max-width:640px){.prepmine .pm{grid-template-columns:1fr}.prepmine .pm small{grid-column:1}}
.prepcats{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:16px;scrollbar-width:none}
.prepcats::-webkit-scrollbar{display:none}
.prepcats button{all:unset;cursor:pointer;white-space:nowrap;padding:8px 14px;border-radius:999px;border:1px solid var(--line);font-size:.875rem;font-weight:500;color:var(--muted)}
.prepcats button[aria-selected="true"]{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.prepcats button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.prepgrid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));align-items:start}
.pc{background:var(--soft);border-radius:var(--r);padding:20px 22px;display:grid;gap:8px;align-content:start}
.pc .pcat{font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}
.pc h3{margin:0;font-size:1.125rem}
.pc .who{margin:0;font-size:.8125rem;color:var(--muted)}
.pc ul{margin:4px 0 0;padding-left:18px;display:grid;gap:4px;font-size:.9375rem}
.pc.none{background:none;border:1px dashed var(--line)}
.prepcard{background:var(--soft);border-radius:var(--r);padding:clamp(24px,3vw,36px);display:grid;gap:18px;align-content:start}
.prepcard h3{font-size:1.4rem;font-weight:400}
.prepcard ul{margin:0;padding:0;list-style:none;display:grid;gap:16px}
.prepcard li{display:grid;gap:2px;font-size:.9375rem;padding-left:18px;position:relative}
.prepcard li::before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--accent)}
.prepcard li b{font-weight:500}
.acc details{border-bottom:1px solid var(--line);padding:16px 0}
.acc details:first-child{padding-top:0}
.acc summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:12px;font-weight:500}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+";color:var(--muted);font-size:1.25rem;line-height:1;transition:transform .2s}
.acc details[open] summary::after{transform:rotate(45deg)}
.acc details p{color:var(--muted);margin-top:8px;font-size:.9375rem}
.faq{display:grid;gap:32px;margin-top:clamp(56px,7vw,96px)}
@media(min-width:960px){.faq{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}}
.faq .acc details{padding:20px 0}.faq .acc details:first-child{border-top:1px solid var(--line);padding-top:20px}
.faq summary{font-size:1.0625rem}

/* book */
.steps{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:12px}
@media(min-width:760px){.steps{grid-template-columns:repeat(4,minmax(0,1fr))}}
.step{background:var(--soft);border-radius:20px;padding:20px;display:grid;gap:8px}
.step i{font:400 .75rem/1 var(--fm);font-style:normal;color:var(--accent)}
.step b{font-weight:500}
.step span{font-size:.8125rem;color:var(--muted)}
.book{display:grid;gap:12px}
@media(min-width:960px){.book{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start}}
.contact{background:var(--soft);border-radius:var(--r);padding:clamp(24px,3vw,36px);display:grid;gap:22px;align-content:start}
.cline small{display:block;font:500 .66rem/1.2 var(--fm);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.cline .v{font-size:1.0625rem}
.copy{all:unset;cursor:pointer;font-size:.75rem;font-weight:500;color:var(--accent);margin-left:8px}
.copy:focus-visible{outline:2px solid var(--accent)}
.formbox{background:var(--soft);border-radius:var(--r);padding:clamp(22px,3vw,40px);display:grid;gap:16px;min-width:0}
.formbox h3{font-size:1.5rem;font-weight:400}
.two{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}
@media(min-width:560px){.two{grid-template-columns:repeat(2,minmax(0,1fr))}}
#bform div{min-width:0}
.hf{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}
.f{display:grid;gap:6px;min-width:0}
.f label,.f .lbl{font-size:.8125rem;font-weight:500;color:var(--muted)}
.f input,.f select,.f textarea{font:inherit;color:var(--ink);background:var(--bg);border:1px solid transparent;border-radius:12px;padding:13px 14px;width:100%;max-width:100%;min-width:0}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--ink)}
.f textarea{min-height:100px;resize:vertical}
.f .err{font-size:.78rem;color:#C2362B}
.radios{display:flex;flex-wrap:wrap;gap:8px}
.radios label{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:var(--bg);font-size:.875rem;font-weight:500;color:var(--ink);cursor:pointer}
.radios input{accent-color:var(--accent);margin:0;width:auto;padding:0;background:none}
.radios label:has(input:checked){box-shadow:inset 0 0 0 1.5px var(--ink)}
.sel{background:var(--bg);border-radius:16px;padding:16px;display:grid;gap:8px;font-size:.875rem}
.sel .row{display:grid;grid-template-columns:minmax(0,1fr) auto 84px 24px;gap:10px;align-items:center}
.sel .row .lb{grid-column:1/3;min-width:0}
.sel .row .lb small{display:block;color:var(--muted);font-size:.75rem;font-weight:400}
.sel .row.xf{font-size:.875rem;color:var(--muted)}
.sel .row.xf .am{color:var(--ink)}
.sel .row.dl .am,.olines .dl span:last-child{color:var(--accent,#2f7d5b)}
.codebox{display:flex;gap:8px}
.schednote{margin:-4px 0 4px}
.codebox input{flex:1 1 0;width:0;text-transform:uppercase;letter-spacing:.04em}
.codebox .btn{flex:none}
#qdisc{flex-wrap:wrap;gap:6px}
#qdisc label{padding-inline:10px 12px;gap:6px}
#qdisc label.off{opacity:.45;cursor:not-allowed}
#qdidF{margin-top:10px}
.sel .row.xf .am{font-size:.8125rem}
.sel .row .nm,.oitem .nm{line-height:1.35;min-width:0}
.sel .row .am{text-align:right;white-space:nowrap}
.sel .row .nm small{display:block;color:var(--muted);font-size:.75rem;font-weight:400}
.qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;height:28px}
.qty button{all:unset;cursor:pointer;width:26px;height:26px;display:grid;place-items:center;border-radius:50%;color:var(--ink);font-size:1rem;line-height:1}
.qty button:hover:not(:disabled){background:var(--soft)}
.qty button:disabled{opacity:.35;cursor:default}
.qty button:focus-visible{outline:2px solid var(--accent,currentColor);outline-offset:1px}
.qty b{min-width:20px;text-align:center;font:600 .8125rem/1 var(--f);font-variant-numeric:tabular-nums}
.sel .tot{border-top:1px solid var(--line);padding-top:8px;font-weight:500}
.fine{font-size:.78rem;color:var(--muted)}
.done{display:grid;gap:14px}
.done pre{margin:0;white-space:pre-wrap;font:400 .8125rem/1.6 var(--fm);background:var(--bg);border-radius:14px;padding:16px;max-height:320px;overflow:auto}

/* footer */
footer.site{border-top:1px solid var(--line);padding-block:56px 32px;margin-top:clamp(40px,6vw,80px)}
.fgrid{display:grid;gap:32px}
@media(min-width:860px){.fgrid{grid-template-columns:1.4fr 1fr 1fr 1fr}}
.fgrid h4{font:500 .7rem/1 var(--fm);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 16px}
.fgrid ul{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:.9375rem}
.fgrid ul a{color:var(--muted)}.fgrid ul a:hover{color:var(--ink)}
.fgrid img{height:34px;width:auto;margin-bottom:16px}
.fgrid p{color:var(--muted);font-size:.9375rem;max-width:22rem}
.legal{margin-top:48px;padding-top:20px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;align-items:center;font-size:.8125rem;color:var(--muted)}
.legal-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:40px;font-size:.8125rem}.legal-links a{color:var(--muted)}.legal-links a:hover{color:var(--ink)}
.theme{display:inline-flex;gap:4px;align-items:center}
.theme button{all:unset;cursor:pointer;padding:5px 12px;border-radius:999px;font-size:.78rem;color:var(--muted);box-shadow:inset 0 0 0 1px var(--line)}
.theme button[aria-pressed="true"]{background:var(--ink);color:var(--bg);box-shadow:none}
.theme button:focus-visible{outline:2px solid var(--accent)}

/* sign-in menu */
.signin{position:relative;display:none}
@media(min-width:1180px){.signin{display:block}}
.signbtn{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:6px;height:42px;padding:0 14px;border-radius:999px;font-size:.875rem;font-weight:500;color:var(--muted)}
.signbtn:hover{color:var(--ink)}
.signbtn svg{width:14px;height:14px;transition:transform .2s}.signbtn[aria-expanded="true"] svg{transform:rotate(180deg)}
.signbtn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.dropdown{position:absolute;right:0;top:calc(100% + 10px);width:280px;background:var(--bg);border-radius:18px;padding:8px;box-shadow:0 20px 50px -12px rgba(0,0,0,.22),0 0 0 1px var(--line);display:grid;z-index:50}
.dropdown a{display:grid;gap:2px;padding:12px 14px;border-radius:12px}
.dropdown a:hover,.dropdown a:focus-visible{background:var(--soft);outline:none}
.dropdown b{font-weight:500;font-size:.9375rem}.dropdown small{color:var(--muted);font-size:.8125rem}

/* credentials strip */
.marquee{margin-top:clamp(28px,4vw,48px);overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.mq-track{display:flex;width:max-content;animation:mq 45s linear infinite}
.marquee:hover .mq-track{animation-play-state:paused}
.mq-set{display:flex;align-items:center;gap:56px;padding-right:56px}
.mq-item{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;color:var(--muted);font-weight:500;font-size:.9375rem}
.mq-item svg{width:22px;height:22px;color:var(--accent)}
.mq-item.word{font:500 .8125rem/1 var(--fm);letter-spacing:.16em}
@keyframes mq{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.mq-track{animation:none;width:auto}.mq-set+.mq-set{display:none}.mq-set{flex-wrap:wrap;justify-content:center;gap:16px 36px;padding:0}}

.hmos{margin-top:clamp(28px,4vw,48px);display:grid;gap:14px}
.mq-label{font:500 .7rem/1 var(--fm);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:center}
.hmos .marquee{margin-top:0}
.hmo{flex:none;display:grid;place-items:center;height:64px;min-width:150px;padding:0 22px;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 1px var(--line)}
.hmo img{max-height:40px;width:auto;max-width:170px}
.hmo.word{font:600 1rem/1 var(--f);letter-spacing:-.01em;color:#33414F}
.hmos .mq-set{gap:12px;padding-right:12px}
/* concerns */
.concerns{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:700px){.concerns{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1000px){.concerns{grid-template-columns:repeat(4,minmax(0,1fr))}}
.concern.ask{background:var(--ink);color:var(--bg)}.concern.ask .ci{background:color-mix(in srgb,var(--bg) 12%,var(--ink));color:var(--bg)}.concern.ask span:last-child{color:color-mix(in srgb,var(--bg) 70%,var(--ink))}
.concern{all:unset;box-sizing:border-box;cursor:pointer;background:var(--soft);border-radius:18px;padding:18px;display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:center;transition:background .2s}
.concern:hover{background:var(--tint)}
.concern:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.concern .ci{grid-row:span 2;width:40px;height:40px;border-radius:50%;background:var(--bg);display:grid;place-items:center;color:var(--accent)}
.concern .ci svg{width:20px;height:20px}
.concern b{font-weight:500}
.concern span:last-child{font-size:.8125rem;color:var(--muted)}
.concerns.sm{margin-top:12px}
.concerns.sm .concern{padding:12px 14px}
.concerns.sm .concern span:last-child{display:none}
.concerns.sm .concern .ci{grid-row:auto;width:32px;height:32px}
.cpk{background:var(--soft);border-radius:16px;padding:16px 18px;display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px}
.cpk b{display:block;font-weight:500}.cpk small{color:var(--muted);font-size:.8125rem}
.cpk .r{display:grid;justify-items:end;gap:6px}
.cpk .r span{font:400 .875rem/1 var(--fm)}
.sh-body .prow{grid-template-columns:minmax(0,1fr) auto auto}
/* HMO page */
.hmogrid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),1fr))}
.hmocard{background:#fff;border-radius:18px;box-shadow:inset 0 0 0 1px var(--line);padding:20px;display:grid;gap:12px;justify-items:center;text-align:center;min-height:150px;align-content:center}
.hmocard img{max-height:52px;width:auto;max-width:100%}
.hmocard .wm{font:600 1.15rem/1.2 var(--f);color:#24313E;letter-spacing:-.01em}
.hmocard small{color:#66727E;font-size:.78rem}
.hmohow{display:grid;gap:32px;margin-top:clamp(48px,6vw,88px)}
@media(min-width:900px){.hmohow{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}
.hmohow>*{min-width:0}
.hmosteps{list-style:none;margin:0;padding:0;display:grid;counter-reset:h}
.hmosteps li{counter-increment:h;display:grid;grid-template-columns:44px 1fr;gap:2px 12px;padding:20px 0;border-top:1px solid var(--line)}
.hmosteps li:last-child{border-bottom:1px solid var(--line)}
.hmosteps li::before{content:counter(h,decimal-leading-zero);grid-row:span 2;font:400 .8125rem/1.6 var(--fm);color:var(--accent)}
.hmosteps b{font-weight:500}.hmosteps span{color:var(--muted);font-size:.9375rem}
/* packages table */
.ptable-wrap{overflow-x:auto;border-radius:var(--r);background:var(--soft);-webkit-overflow-scrolling:touch}
table.ptable{border-collapse:separate;border-spacing:0;width:100%;min-width:860px;font-size:.875rem}
.ptable th,.ptable td{padding:10px 14px;border-bottom:1px solid var(--line);text-align:center;vertical-align:middle}
.ptable th:first-child,.ptable td:first-child{text-align:left;position:sticky;left:0;background:var(--soft);z-index:1;min-width:220px;max-width:280px}
.ptable thead th{vertical-align:top;padding:22px 14px 18px;background:var(--soft)}
.ptable thead .pn{display:block;font-size:1.25rem;font-weight:400;letter-spacing:-.02em}
.ptable thead .pt{display:block;font:500 .62rem/1 var(--fm);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.ptable thead .pw{display:block;font-size:.75rem;color:var(--muted);margin-top:4px}
.ptable thead .pp{display:block;font-size:1.125rem;font-variant-numeric:tabular-nums;margin-top:8px}
.ptable thead s{color:var(--muted);font-size:.75rem}
.ptable thead .add{margin-top:12px}
.ptable thead th.feat{background:var(--tint)}
.ptable td.feat{background:color-mix(in srgb,var(--tint) 55%,var(--soft))}
.ptable .y{color:var(--accent);font-weight:600}
.ptable .n{color:color-mix(in srgb,var(--muted) 40%,var(--soft))}
.ptable .lbl{font-size:.78rem;color:var(--ink)}
.ptable tfoot td{padding:18px 14px;border-bottom:0}
.ptable .eliteonly{display:inline-block;margin-left:6px;font:500 .58rem/1 var(--fm);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);padding:4px 6px;border-radius:999px;vertical-align:middle}

.ptools{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.ptable tr.gi.hide{display:none}
.ptable tr.grp{cursor:pointer}
.ptable tr.grp td{background:var(--bg);padding-top:14px;padding-bottom:14px}
.ptable tr.grp:hover td{background:var(--soft)}
.gbtn{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:10px;font:500 .72rem/1 var(--f2,var(--f));letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}
.gbtn::before{content:"+";font-size:1rem;color:var(--accent);width:12px;transition:transform .2s}
tr.grp.open .gbtn::before{content:"−"}
.gcount{font-size:.7rem;color:var(--muted);letter-spacing:0}
.gsum{font-size:.75rem;color:var(--muted)}
tr.grp.open .gsum{visibility:hidden}
/* apple-style compare */
.cmp2{margin-bottom:8px}
.cmp2-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:28px}
.cmpdiff{align-self:end}
.cmp2-head{display:grid;grid-template-columns:1fr 1fr;gap:clamp(12px,3vw,40px);position:sticky;top:72px;z-index:5;background:var(--bg);padding-block:12px;border-bottom:1px solid var(--line)}
.cside{display:grid;gap:12px;min-width:0;justify-items:center;text-align:center}
.cmpsel{font:inherit;font-size:.9375rem;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:2px;padding:12px 14px;width:100%;max-width:340px}
.cinfo{display:grid;gap:6px;justify-items:center}
.cinfo .cn{font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.4rem);line-height:1}
.cinfo .cp{font-family:var(--serif);font-size:1.5rem;font-weight:500}
.cinfo s{color:var(--muted);font-size:.8125rem}
.cinfo .cc{font-size:.8125rem;color:var(--muted)}
@media(max-width:600px){.cinfo .cc{display:none}.cmp2-head{top:64px}}
.cgrp{margin-top:28px}
.cgrp h4{margin:0 0 6px;text-align:center;font:500 .68rem/1 var(--f);letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}
.crow{display:grid;grid-template-columns:1fr 1fr;gap:clamp(12px,3vw,40px);border-bottom:1px solid var(--line)}
.ccell{padding:14px 6px;text-align:center;font-size:.9375rem;display:grid;gap:4px;justify-items:center;min-width:0;overflow-wrap:anywhere}
.ccell .ck{color:var(--accent);font-size:1rem}
.ccell.no{color:color-mix(in srgb,var(--muted) 55%,var(--bg))}
.ccell .lb{font-size:.78rem;color:var(--muted)}
.crow.same .ccell{color:var(--ink)}
dialog.sheet.wide{width:min(980px,100%)}
.pkgbar .cmpbtn{gap:8px}
.cmp2-head{top:0;padding-block:10px 14px}
.cside{gap:8px}
.cmpsel{padding:10px 12px;font-size:.875rem}
.cinfo{grid-template-columns:auto auto;align-items:baseline;justify-content:center;gap:2px 10px}
.cinfo .cn{grid-column:1/-1;font-size:clamp(1.3rem,2.4vw,1.7rem)}
.cinfo .cc{display:none}
.cinfo .cp{font-size:1.15rem}
.cinfo s{font-size:.75rem}
.cinfo br{display:none}
.cinfo .add{grid-column:1/-1;justify-self:center;margin-top:4px}
.cgrp{margin-top:20px}
.ccell{padding:10px 6px;font-size:.875rem;display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px 8px}
.ccell .lb{flex-basis:100%}
/* order page */
.order{display:grid;gap:28px}
@media(min-width:1000px){.order{grid-template-columns:minmax(0,1fr) 360px;align-items:start}}
.order>*{min-width:0}
.order-side{position:sticky;top:96px}
@media(max-width:999px){.order-side{display:none}}
.ordercard{background:var(--soft);border-radius:var(--r);padding:22px;display:grid;gap:14px}
.ordercard h3{font-size:1.25rem;font-weight:400;display:flex;justify-content:space-between;align-items:baseline}
.ordercard h3 small{font:400 .75rem/1 var(--fm);color:var(--muted)}
.oitems{display:grid;max-height:280px;overflow:auto}
.oitem{display:grid;grid-template-columns:minmax(0,1fr) auto 76px 24px;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:.875rem}
.oitem .am{font:400 .8125rem/1 var(--fm);white-space:nowrap;text-align:right}
.oitem .nm small{display:block;color:var(--muted);font-size:.75rem}
.oitem .rmx{all:unset;cursor:pointer;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;color:var(--muted)}
.oitem .rmx:hover{background:var(--bg);color:var(--ink)}
.oempty{font-size:.875rem;color:var(--muted);padding:6px 0}
.omode{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:999px;background:var(--bg)}
.omode button{all:unset;cursor:pointer;text-align:center;padding:9px 6px;border-radius:999px;font-size:.8125rem;font-weight:500;color:var(--muted)}
.omode button[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
.omode button:focus-visible{outline:2px solid var(--accent)}
.ordercard select{font:inherit;font-size:.875rem;color:var(--ink);background:var(--bg);border:0;border-radius:12px;padding:11px 12px;width:100%}
.olines{display:grid;gap:6px;font-size:.875rem}
.olines div{display:flex;justify-content:space-between;gap:10px}
.olines div span:last-child{font-family:var(--fm);white-space:nowrap}
.olines .tot{border-top:1px solid var(--line);padding-top:10px;font-weight:500;font-size:1rem}
.ordercard .btn{width:100%}
.ordercard .fine{text-align:center}
.prow .add{min-width:74px}
.add{padding:7px 14px 7px 8px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line)}
.add:hover{box-shadow:inset 0 0 0 1px var(--ink)}
.add[aria-pressed="true"]{background:var(--accent-soft);box-shadow:none}

/* doctors by specialty */
.docs2{display:grid;gap:24px}
@media(min-width:900px){.docs2{grid-template-columns:300px minmax(0,1fr);align-items:start}}
.docs2>*{min-width:0}
.speclist{display:grid;gap:2px}
@media(max-width:899px){.speclist{display:flex;overflow-x:auto;gap:8px;scrollbar-width:none}.speclist::-webkit-scrollbar{display:none}}
.specbtn{all:unset;cursor:pointer;box-sizing:border-box;display:flex;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:12px;font-size:.9375rem;color:var(--muted)}
.specbtn small{font:400 .75rem/1.6 var(--fm)}
.specbtn:hover{color:var(--ink);background:var(--soft)}
.specbtn[aria-selected="true"]{background:var(--ink);color:var(--bg)}
.specbtn:focus-visible{outline:2px solid var(--accent)}
@media(max-width:899px){.specbtn{flex:none;background:var(--soft);border-radius:999px;padding:9px 16px}.specbtn small{display:none}}
.specpanel{background:var(--soft);border-radius:var(--r);padding:clamp(22px,3vw,36px);display:grid;gap:20px;align-content:start}
.specpanel h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:300}
.spechead{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;align-items:flex-end}
.fee2{font:400 .875rem/1 var(--fm);color:var(--muted)}
.doclist{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr))}
.doccard{background:var(--bg);border-radius:18px;padding:18px;display:grid;grid-template-columns:52px 1fr;gap:4px 14px;align-items:center}
.doccard .av{grid-row:span 3;width:52px;height:52px;border-radius:50%;background:var(--tint);display:grid;place-items:center;font-weight:500;color:var(--accent);overflow:hidden}
.doccard .av img{width:100%;height:100%;object-fit:cover}
.doccard b{font-weight:500}.doccard small{color:var(--muted);font-size:.8125rem}
.docempty{background:var(--bg);border-radius:18px;padding:22px;display:grid;gap:8px}
.docempty b{font-weight:500}
.docempty span{color:var(--muted);font-size:.9375rem}
.specacts{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
/* statement */
.statement{padding-block:clamp(72px,10vw,140px) clamp(16px,3vw,32px)}
.statement .wrap{display:grid;gap:28px;justify-items:start}
.reveal{margin:0;max-width:22ch;font-size:clamp(2rem,4.8vw,3.8rem);line-height:1.1;letter-spacing:-.03em;font-weight:300;text-wrap:balance}
.reveal span{color:color-mix(in srgb,var(--ink) 22%,var(--bg));transition:color .35s ease}
.reveal span.on{color:var(--ink)}

/* why */
.why{list-style:none;margin:0;padding:0;display:grid;gap:24px;grid-template-columns:minmax(0,1fr)}
@media(min-width:700px){.why{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1080px){.why{grid-template-columns:repeat(4,minmax(0,1fr))}}
.why li{border-top:1px solid var(--ink);padding-top:20px;display:grid;gap:8px;align-content:start}
.why h3{font-size:1.2rem;font-weight:500;letter-spacing:-.01em}
.why p{color:var(--muted);font-size:.9375rem}

/* reviews */
.reviews{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media(min-width:800px){.reviews{grid-template-columns:repeat(3,minmax(0,1fr))}}
.review{margin:0;background:var(--soft);border-radius:20px;padding:24px;display:grid;gap:12px;align-content:start}
.review blockquote{margin:0;font-size:1rem;line-height:1.55}
.review figcaption{font-size:.8125rem;color:var(--muted)}
.stars{font-size:.8rem;letter-spacing:.12em;color:var(--accent)}

/* clinic block */
.clinic{display:grid;gap:12px}
@media(min-width:900px){.clinic{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}}
.clinic-media{position:relative;border-radius:var(--r);overflow:hidden;min-height:320px;background:var(--tint)}
.clinic-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pin{position:absolute;left:20px;bottom:20px;display:inline-flex;align-items:center;gap:8px;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(10px);border-radius:999px;padding:10px 16px;font-size:.875rem;font-weight:500}
.pin svg{width:18px;height:18px;color:var(--accent)}
.clinic-info{background:var(--soft);border-radius:var(--r);padding:clamp(24px,3vw,36px);display:grid;gap:22px;align-content:start}
.clinic-info dl{margin:0;display:grid;gap:16px}
.clinic-info dt{font:500 .66rem/1.2 var(--fm);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.clinic-info dd{margin:0}
.todo{color:var(--muted);font-style:italic}
.socials{display:flex;flex-wrap:wrap;gap:8px}
.socials a,.socials .soc{display:inline-flex;align-items:center;gap:8px;padding:8px 14px 8px 10px;border-radius:999px;background:var(--bg);font-size:.875rem}
.socials a:hover{box-shadow:inset 0 0 0 1px var(--ink)}
.socials svg{width:18px;height:18px}
.clinic .row{display:flex;flex-wrap:wrap;gap:10px}

/* price directory v2 */
.search{position:relative}
.clearq{all:unset;cursor:pointer;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:1.25rem;color:var(--muted)}
.clearq:hover{background:var(--bg);color:var(--ink)}
.dirblock{margin-top:clamp(32px,4vw,48px);display:grid;gap:4px}
.cats{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));margin-top:12px}
.catcard{all:unset;box-sizing:border-box;cursor:pointer;background:var(--soft);border-radius:18px;padding:20px;display:grid;gap:6px;align-content:start;transition:background .2s}
.catcard:hover{background:var(--tint)}
.catcard:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.catcard b{font-weight:500;font-size:1.0625rem}
.catcard span{color:var(--muted);font-size:.8125rem}
.catcard small{font:400 .75rem/1 var(--fm);color:var(--muted);margin-top:8px}
.dirbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:28px;font-size:.875rem}
.back::after{content:none}.back::before{content:"←";transition:transform .2s}.back:hover::before{transform:translateX(-3px)}
.dirtitle{font-size:clamp(1.6rem,3vw,2.25rem);font-weight:300;margin:18px 0 8px}
details.grpd{border-bottom:1px solid var(--line)}
details.grpd>summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 0;font-weight:500}
details.grpd>summary::-webkit-details-marker{display:none}
details.grpd>summary small{font:400 .75rem/1 var(--fm);color:var(--muted);margin-left:auto}
details.grpd>summary::after{content:"+";color:var(--muted);font-size:1.25rem;line-height:1;transition:transform .2s}
details.grpd[open]>summary::after{transform:rotate(45deg)}
details.grpd .prow:last-child{border-bottom:0}

/* home service calculator */
.calc{display:grid;gap:12px}
@media(min-width:900px){.calc{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr)}}
.calc-in{background:var(--soft);border-radius:var(--r);padding:clamp(22px,3vw,36px);display:grid;gap:22px}
.calc-in select{font:inherit;color:var(--ink);background:var(--bg);border:1px solid transparent;border-radius:12px;padding:14px;width:100%}
.opts{display:grid;gap:8px}
.opt{display:flex;gap:12px;align-items:flex-start;background:var(--bg);border-radius:14px;padding:14px 16px;cursor:pointer}
.opt input,.radios input{appearance:none;-webkit-appearance:none;flex:none;width:18px!important;height:18px;margin:3px 0 0;padding:0!important;border-radius:50%;background:var(--bg)!important;box-shadow:inset 0 0 0 1.5px var(--muted);cursor:pointer}
.radios input{margin:0}
.opt input:checked,.radios input:checked{box-shadow:inset 0 0 0 1.5px var(--accent),inset 0 0 0 5px var(--bg),inset 0 0 0 9px var(--accent)}
.opt input:focus-visible,.radios input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.opt b{display:block;font-weight:500}.opt small{color:var(--muted);font-size:.8125rem}
.opt:has(input:checked){box-shadow:inset 0 0 0 1.5px var(--ink)}
.calc-out{background:var(--ink);color:var(--bg);border-radius:var(--r);padding:clamp(24px,3vw,36px);display:grid;gap:14px;align-content:center}
.calc-out .eyebrow{color:color-mix(in srgb,var(--bg) 65%,var(--ink))}
.calc-out .fee{font-weight:300;font-size:clamp(2.2rem,5vw,3.4rem);letter-spacing:-.03em;line-height:1}
.calc-out .muted{color:color-mix(in srgb,var(--bg) 70%,var(--ink));font-size:.9375rem}
.calc-out .btn{background:var(--bg);color:var(--ink);justify-self:start;margin-top:6px}
.zone{min-width:620px}

/* about */
.about-grid{display:grid;gap:32px}
@media(min-width:900px){.about-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center}}
.about-media{position:relative;border-radius:var(--r);background:linear-gradient(150deg,var(--soft),var(--tint));aspect-ratio:4/5;overflow:hidden;max-width:100%}
.about-media img{position:absolute;bottom:0;height:92%;width:auto;max-width:none}
.about-media img:first-child{right:6%;height:96%}.about-media img:last-child{left:4%}
.about-copy{display:grid;gap:18px;font-size:1.0625rem;color:var(--muted);max-width:36rem}
.big{font-size:clamp(1.3rem,2.2vw,1.65rem);line-height:1.4;letter-spacing:-.01em;color:var(--ink);font-weight:300}
.nums{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:clamp(40px,6vw,72px)}
@media(min-width:900px){.nums{grid-template-columns:repeat(4,minmax(0,1fr))}}
.nums div{border-top:1px solid var(--ink);padding-top:16px;display:grid;gap:4px}
.nums b{font-weight:300;font-size:clamp(2rem,4vw,3rem);letter-spacing:-.03em;line-height:1}
.nums span{color:var(--muted);font-size:.875rem}
.mv{display:grid;gap:12px;margin-top:clamp(40px,6vw,72px)}
@media(min-width:900px){.mv{grid-template-columns:1fr 1fr}}
.mvcard{background:var(--soft);border-radius:var(--r);padding:clamp(24px,4vw,48px);display:grid;gap:18px;align-content:start}
.teamrow{display:grid;gap:24px;grid-template-columns:minmax(0,1fr)}
@media(min-width:700px){.teamrow{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1080px){.teamrow{grid-template-columns:repeat(4,minmax(0,1fr))}}
.teamrow div{border-top:1px solid var(--line);padding-top:18px;display:grid;gap:6px}
.teamrow h3{font-size:1.125rem;font-weight:500}.teamrow p{color:var(--muted);font-size:.9375rem}
.group-card{margin-top:clamp(40px,6vw,72px);background:var(--soft);border-radius:var(--r);padding:clamp(24px,3vw,40px);display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;align-items:center}
.group-card>div{display:grid;gap:10px;max-width:36rem}
.group-card h3{font-size:1.5rem;font-weight:400}.group-card p{color:var(--muted)}

/* journal + prose */
.posts{display:grid;gap:32px 14px;grid-template-columns:minmax(0,1fr)}
@media(min-width:760px){.posts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){.posts{grid-template-columns:repeat(4,minmax(0,1fr))}}
.post{display:grid;gap:12px;align-content:start}
.post-media{border-radius:20px;overflow:hidden;aspect-ratio:4/3;background:linear-gradient(150deg,var(--soft),var(--tint));max-width:100%}
.post-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.post:hover .post-media img{transform:scale(1.03)}
.post h3{font-size:1.2rem;font-weight:500;letter-spacing:-.01em}
.post p{color:var(--muted);font-size:.9375rem}
article.prose{max-width:42rem;display:grid;gap:18px;font-size:1.0625rem;line-height:1.75}
article.prose h1{font-size:clamp(2.2rem,5vw,3.4rem);line-height:1.05;font-weight:300}
article.prose h2{font-size:1.4rem;font-weight:500;margin-top:16px}
article.prose p,article.prose li{color:color-mix(in srgb,var(--ink) 80%,var(--bg))}
article.prose ul{margin:0;padding-left:20px;display:grid;gap:8px}
article.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
article.prose mark{background:var(--accent-soft);color:inherit;padding:0 3px;border-radius:3px}
.draft{background:var(--soft);border-radius:14px;padding:14px 18px;font-size:.875rem;color:var(--muted)!important}
.note{font-size:.8125rem;color:var(--muted)!important;border-top:1px solid var(--line);padding-top:16px}
.more-posts{display:grid;gap:10px;margin-top:8px}
.more-posts a{text-decoration:none!important;color:var(--ink)!important}

/* login */
.login{display:grid;gap:12px}
@media(min-width:900px){.login{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start}}
.status{font-size:.9rem;color:var(--accent);min-height:1.2em}

/* form bits */
.hp{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.check{display:flex;gap:10px;align-items:flex-start;font-size:.875rem;color:var(--muted)}
.check input{margin-top:4px;accent-color:var(--accent)}
#qform .f input,#qform .f select,#qform .f textarea{background:var(--soft)}
#qform .radios label{background:var(--soft)}
#qform .sel{background:var(--soft)}

/* chat */
.chatfab{all:unset;cursor:pointer;position:fixed;z-index:44;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 18px;border-radius:999px;background:var(--ink);color:var(--bg);font-size:.875rem;font-weight:500;box-shadow:0 12px 30px -10px rgba(0,0,0,.35)}
.chatfab svg{width:19px;height:19px}
.chatfab:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
#chatLog{display:flex;flex-direction:column;gap:10px;padding-top:18px}
.msg{max-width:86%;padding:12px 16px;border-radius:18px;font-size:.9375rem;line-height:1.5;white-space:pre-wrap}
.msg.bot{background:var(--soft);border-bottom-left-radius:6px;align-self:flex-start}
.msg.me{background:var(--ink);color:var(--bg);border-bottom-right-radius:6px;align-self:flex-end}
.msg.wait{color:var(--muted)}
.sugg{display:flex;flex-wrap:wrap;gap:8px}
.cwrap{display:grid;gap:10px;margin-top:10px;white-space:normal}
.citems{display:grid;gap:6px}.citem{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:var(--bg);font-size:.8125rem}.citem span{min-width:0}.citem b{font-weight:600;white-space:nowrap}.citem .add{min-width:0;height:32px;padding:0 12px}
.cacts{display:flex;flex-wrap:wrap;gap:8px}
.progli{background:var(--accent-soft)}.progli .pgo{font-weight:600;color:var(--accent);white-space:nowrap;font-size:.8125rem}
.cact{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;min-height:36px;padding:8px 14px;line-height:1.3;border-radius:18px;font-size:.8125rem;font-weight:600;color:var(--ink);background:var(--bg);box-shadow:inset 0 0 0 1px var(--line)}.cact:hover{box-shadow:inset 0 0 0 1px var(--ink)}.cact.pri{background:var(--accent);color:#fff;box-shadow:none}
.dots{display:inline-flex;gap:4px;padding:4px 0}.dots i{width:7px;height:7px;border-radius:50%;background:var(--muted);opacity:.4;animation:dotb 1s infinite}.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}@keyframes dotb{0%,80%,100%{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
.sugg button{all:unset;cursor:pointer;padding:9px 14px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line);font-size:.8125rem}
.sugg button:hover{box-shadow:inset 0 0 0 1px var(--ink)}
.human{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;padding-top:4px}#chat .sh-foot{grid-template-columns:minmax(0,1fr);overflow:hidden}.human>span{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.hbtns{display:flex;flex-wrap:wrap;gap:8px}
.hb{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 14px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line);font-size:.8125rem;font-weight:600;color:var(--ink);background:var(--bg)}
.hb:hover{box-shadow:inset 0 0 0 1px var(--ink)}.hb:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hb svg{width:16px;height:16px;flex:none}
.human .hbtns{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -28px;padding:0 28px}.human .hbtns::-webkit-scrollbar{display:none}.human .hb{height:34px;padding:0 12px;flex:none}
.msg.bot .hbtns{margin-top:10px}.msg .hbn{display:block;margin-top:8px;font-size:.8125rem;color:var(--muted)}
.chatrow{display:flex;gap:8px}
.chatrow input{flex:1;min-width:0;font:inherit;color:var(--ink);background:var(--soft);border:0;border-radius:999px;padding:0 18px;height:48px}
.chatrow input:focus{outline:2px solid var(--accent)}
.chatrow .btn{width:auto!important;flex:none}

/* mobile bottom bar */
.mbar{display:none}
@media(max-width:760px){
  .chatfab{display:none}
  .mbar{display:flex;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:44;padding:10px max(16px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(14px);border-top:1px solid var(--line)}
  .mbar .btn:first-child{flex:1}
  .mbar .btn svg{width:18px;height:18px}
  .themefab{bottom:calc(84px + env(safe-area-inset-bottom,0px))}
  .vbar{bottom:calc(84px + env(safe-area-inset-bottom,0px))}
  .toast{bottom:calc(140px + env(safe-area-inset-bottom,0px))}
  footer.site{padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}
}
@media(min-width:761px){.vbar{left:auto;right:calc(max(16px,env(safe-area-inset-right,0px)) + 170px);transform:translateY(200%)}.vbar.show{transform:none}}

/* grid children never push the page wider */
.hero-panel>*,.hs>*,.corp>*,.book>*,.docs>*,.prep>*,.faq>*,.stay>*,.closing>*,.fgrid>*,.story>*,.clinic>*,.calc>*,.about-grid>*,.login>*,.mv>*{min-width:0}

.themefab{all:unset;cursor:pointer;position:fixed;z-index:44;left:max(16px,env(safe-area-inset-left,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px 0 12px;border-radius:999px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);box-shadow:inset 0 0 0 1px var(--line),0 8px 24px -12px rgba(0,0,0,.25);font-size:.8125rem;font-weight:500;color:var(--ink)}
.themefab svg{width:18px;height:18px}
.themefab:hover{box-shadow:inset 0 0 0 1px var(--ink)}
.themefab:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.themefab .moon{display:none}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .themefab .sun{display:none}:root:not([data-theme="light"]) .themefab .moon{display:block}}
:root[data-theme="dark"] .themefab .sun{display:none}:root[data-theme="dark"] .themefab .moon{display:block}
@media(max-width:560px){.themefab span{display:none}.themefab{width:44px;padding:0;justify-content:center}}
.theme .tl{margin-right:6px}
/* visit bar + sheets */
.vbar{position:fixed;z-index:45;left:50%;transform:translate(-50%,200%);visibility:hidden;bottom:calc(16px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;gap:14px;background:var(--ink);color:var(--bg);border-radius:999px;padding:8px 8px 8px 20px;box-shadow:0 16px 40px -12px rgba(0,0,0,.35);transition:transform .3s ease;max-width:calc(100% - 32px);width:max-content}
.vbar.show{transform:translate(-50%,0);visibility:visible}
.vbar .t{font-size:.875rem;white-space:nowrap}
.vbar button{all:unset;cursor:pointer;background:var(--bg);color:var(--ink);padding:9px 16px;border-radius:999px;font-size:.8125rem;font-weight:500;white-space:nowrap}
.vbar button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
dialog.sheet{border:0;padding:0;margin:0 0 0 auto;width:min(540px,100%);height:100%;max-height:100%;max-width:100%;background:var(--bg);color:var(--ink)}
dialog.sheet::backdrop{background:rgba(8,16,24,.4);backdrop-filter:blur(3px)}
.sh{display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr);height:100%}
.sh-top{padding:calc(24px + env(safe-area-inset-top,0px)) 28px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.sh-top h2{font-size:1.75rem;font-weight:400}
.sh-top p{color:var(--muted);font-size:.875rem;margin-top:4px}
.x{all:unset;cursor:pointer;flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 1px var(--line);font-size:1.25rem}
.x:focus-visible{outline:2px solid var(--accent)}
.sh-body{overflow:auto;padding:8px 28px 28px}
.sh-foot{padding:16px 28px calc(16px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);display:grid;gap:10px}
.sh-foot .btn{width:100%}
.grp{margin-top:22px}
.grp h4{font:500 .68rem/1 var(--fm);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 6px}
.grp ul{margin:0;padding:0;list-style:none}
.grp li{padding:9px 0;border-bottom:1px solid var(--line);font-size:.9375rem}
.vitem{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}
.vitem b{display:block;font-weight:500}
.vitem small{color:var(--muted);font-size:.8125rem}
.vitem .r{display:grid;justify-items:end;gap:4px}
.vitem .r span{font:400 .875rem/1 var(--fm)}
.rm{all:unset;cursor:pointer;font-size:.78rem;color:var(--muted);text-decoration:underline}
.due{display:flex;justify-content:space-between;font-weight:500}
.due span:last-child{font-family:var(--fm)}
dialog.mnav{border:0;padding:0;margin:0;width:100%;max-width:100%;height:100%;max-height:100%;background:var(--bg);color:var(--ink)}
.mn{display:flex;flex-direction:column;height:100%;padding:calc(14px + env(safe-area-inset-top,0px)) max(20px,env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px))}
.mn-top{display:flex;justify-content:space-between;align-items:center;height:52px}
.mn-top img{height:32px;width:auto}
.mn nav{display:grid;margin-top:20px}
.mn nav a{font-size:1.75rem;font-weight:300;letter-spacing:-.02em;padding:12px 0;border-bottom:1px solid var(--line)}
.mn .btn{margin-top:auto}
.toast{position:fixed;z-index:60;left:50%;transform:translateX(-50%);bottom:calc(84px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--bg);padding:10px 18px;border-radius:999px;font-size:.875rem}

/* ===== Modern identity: bright, visual, few words. Urbanist display echoes the rounded logo; ice-blue surfaces; brand blue + cyan as the only colour ===== */
:root{
  --bg:#FFFFFF; --soft:#F2F6FA; --tint:#E3EEF9; --surface:#FFFFFF;
  --ink:#0B1B2B; --muted:#5D6B79; --line:#E2E8EF;
  --accent:#1766D6; --cyan:#22B2EE; --accent-soft:#E2EEFC; --on-accent:#FFFFFF;
  --disp:"Urbanist","Helvetica Neue",Arial,sans-serif;
  --f:"Figtree","Helvetica Neue",Arial,sans-serif; --f2:var(--f); --fm:var(--f);
  --r:20px; --max:78rem;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#07111C;--soft:#0E1A27;--tint:#122336;--surface:#0E1A27;--ink:#EDF2F7;--muted:#97A6B5;--line:#1C2B3B;--accent:#5EA2FF;--cyan:#45C6F7;--accent-soft:#132A44;--on-accent:#07111C}}
:root[data-theme="dark"]{--bg:#07111C;--soft:#0E1A27;--tint:#122336;--surface:#0E1A27;--ink:#EDF2F7;--muted:#97A6B5;--line:#1C2B3B;--accent:#5EA2FF;--cyan:#45C6F7;--accent-soft:#132A44;--on-accent:#07111C}
body{font-family:var(--f)}
h1,h2,h3,.h2,.phead h1,.dirtitle,article.prose h1,.calc-out .fee,.nums b,.ptable thead .pn,.sh-top h2,.specpanel h2,.pt h3,.pkg h3,.stay h3,.group-card h3,.cinfo .cn,.ordercard h3,.formbox h3,.prepcard h3{font-family:var(--disp);font-weight:600;letter-spacing:-.025em}
.h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.02}
.phead h1{font-size:clamp(2.6rem,6vw,4.6rem);line-height:.98;font-weight:600}
.big{font-family:var(--disp);font-weight:500;letter-spacing:-.015em}
.eyebrow{font:600 .8rem/1 var(--f);letter-spacing:0;text-transform:none;color:var(--accent)}
.eyebrow::before{display:none}.eyebrow.rule::after{display:none}
.mq-label,.cline small,.clinic-info dt,.grp h4,.rgroup,.fgrid h4,.tier,.pkg .tier,.ptable thead .pt,.cgrp h4,.gbtn{font-family:var(--f);font-weight:600;letter-spacing:.06em}
.lead{font-size:1.0625rem}
/* buttons */
.btn{border-radius:14px;font:600 .9375rem/1 var(--f);letter-spacing:0;text-transform:none;min-height:52px;padding:0 26px}
.btn.sm{min-height:42px;font-size:.875rem;border-radius:12px}
.btn.accent,.hero .btn:not(.ghost),.navright .btn{background:var(--accent);color:var(--on-accent)}
.navright .btn{min-height:44px;font-size:.875rem;border-radius:12px}
.iconbtn{border-radius:12px}
.chatfab,.themefab,.vbar,.toast{border-radius:14px}.vbar button{border-radius:10px}
.fchip,.radios label,.socials a,.socials .soc,.chip,.add,.seg,.omode{border-radius:12px}
.seg button,.omode button{border-radius:9px}
.f input,.f select,.f textarea,.ordercard select,.calc-in select,.chatrow input,.cmpsel,.search{border-radius:14px}
.opt{border-radius:14px}
/* header */
.announce{background:linear-gradient(90deg,var(--accent),var(--cyan));color:#fff;font-size:.8125rem}
.announce a{color:#fff}
header.nav{border-bottom:0}
.navlinks{font-size:.9375rem;letter-spacing:0;text-transform:none;gap:24px;font-weight:500}
/* HERO */
.hero{padding-top:12px}
.hero-panel{border-radius:32px;min-height:clamp(540px,72vh,760px);background:radial-gradient(70% 90% at 85% 10%,color-mix(in srgb,var(--cyan) 30%,transparent),transparent 60%),linear-gradient(135deg,var(--soft),var(--tint));overflow:hidden}
@media(min-width:900px){.hero-panel{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}}
.hero-copy{padding:clamp(28px,5.5vw,80px);gap:26px;max-width:40rem}
.hero h1{font-family:var(--disp);font-weight:600;font-size:clamp(3rem,7.2vw,6rem);line-height:.92;letter-spacing:-.045em}
.hero h1 em{font-style:normal;background:linear-gradient(90deg,var(--accent),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-copy p{font-size:1.125rem;color:var(--muted);max-width:26rem}
.hero-art{background:none;border:0;min-height:380px}
.hero-art .pulse{display:none}
.hero-note{left:auto;right:24px;bottom:24px;border-radius:18px;background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(14px);box-shadow:0 20px 40px -24px rgba(11,27,43,.35)}
.hero-note b{font-family:var(--disp);font-size:1.4rem;font-weight:600}
.badges{display:flex;flex-wrap:wrap;gap:8px}
.badges span{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:color-mix(in srgb,var(--bg) 70%,transparent);font-size:.8125rem;font-weight:600}
.badges svg{width:15px;height:15px;color:var(--accent)}
/* HMO strip */
.hmos{margin-top:28px}
.mq-label{font-size:.75rem;text-transform:uppercase;color:var(--muted)}
.hmo{background:transparent;box-shadow:none;filter:grayscale(1);opacity:.7;transition:filter .3s,opacity .3s;height:56px}
.hmo:hover{filter:none;opacity:1}
.hmo.word{color:var(--muted);font-family:var(--disp);font-weight:600}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hmo{background:#fff;opacity:.85;border-radius:12px}}
:root[data-theme="dark"] .hmo{background:#fff;opacity:.85;border-radius:12px}
/* stats */
.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(min-width:900px){.stats{grid-template-columns:repeat(4,minmax(0,1fr))}}
.stat{border-radius:var(--r);background:var(--soft);padding:clamp(20px,3vw,32px);display:grid;gap:6px}
.stat b{font-family:var(--disp);font-weight:600;font-size:clamp(2.6rem,5.5vw,4.4rem);letter-spacing:-.05em;line-height:.9;background:linear-gradient(120deg,var(--ink) 30%,var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}
.stat span{color:var(--muted);font-size:.9375rem;font-weight:500}
/* section heads on home: title + link only */
.hhead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 24px;margin-bottom:clamp(24px,3vw,36px)}
.hhead .more{color:var(--accent)}
.hlinks{display:flex;gap:20px;flex-wrap:wrap}
.concerns.noask .concern.ask{display:none}
/* concerns: icon tiles */
.concern,.catcard,.panel,.review{background:var(--soft);box-shadow:none;border-radius:18px}
.concern:hover,.catcard:hover{background:var(--tint)}
.concern .ci{background:var(--bg)}
.concerns.big .concern{padding:22px;grid-template-columns:1fr;gap:16px;align-content:space-between;min-height:150px}
.concerns.big .concern .ci{width:48px;height:48px;grid-row:auto}
.concerns.big .concern .ci svg{width:24px;height:24px}
.concerns.big .concern b{font-family:var(--disp);font-size:1.15rem;font-weight:600}
.concerns.big .concern span:last-child{display:none}
.concerns.big .concern.ask{background:linear-gradient(135deg,var(--accent),var(--cyan));color:#fff}
.concerns.big .concern.ask .ci{background:rgba(255,255,255,.18);color:#fff}
@media(min-width:1000px){.concerns.big{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:560px){.concerns.big .concern{min-height:120px;padding:16px}}
.hero-art .hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:40% 50%}
.hero-panel{background:linear-gradient(135deg,var(--soft),var(--tint))}
@media(min-width:900px){.hero-art{margin:14px 14px 14px 0;border-radius:24px;overflow:hidden}}
@media(max-width:899px){.hero-art{margin:0 14px 14px;border-radius:22px;overflow:hidden;min-height:300px}}
.bento{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:200px}
@media(min-width:900px){.bento{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:240px}.bento .b1{grid-row:span 2}.bento .b2{grid-column:span 2}.bento .b5{grid-column:span 2}}
@media(max-width:899px){.bento .b1{grid-row:span 2}}
.bento figure{margin:0;position:relative;border-radius:22px;overflow:hidden;background:var(--tint)}
.bento img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.bento figure:hover img{transform:scale(1.03)}
.bento figcaption{position:absolute;left:14px;bottom:14px;background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:blur(10px);color:var(--ink);font-size:.8125rem;font-weight:600;padding:7px 12px;border-radius:999px}
/* visit v2 */
.visit2{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media(min-width:960px){.visit2{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}
.visit2>*{min-width:0}
.vpanel{position:relative;overflow:hidden;border-radius:32px;padding:clamp(28px,4vw,52px);color:#fff;display:grid;gap:22px;align-content:start;
  background:radial-gradient(120% 80% at 100% 0%,rgba(34,178,238,.55),transparent 55%),radial-gradient(90% 70% at 0% 100%,rgba(23,102,214,.6),transparent 60%),#0B1B2B}
.vpanel::after{content:"";position:absolute;right:-60px;bottom:-60px;width:260px;height:260px;border-radius:50%;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 40px rgba(255,255,255,.03),0 0 0 80px rgba(255,255,255,.02);pointer-events:none}
.vkick{font-weight:600;font-size:.8125rem;color:#9ED8F7}
.vpanel h2{font-family:var(--disp);font-weight:600;font-size:clamp(2.2rem,4.4vw,3.4rem);line-height:.98;letter-spacing:-.035em;color:#fff}
.vinfo{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.vinfo li{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:center}
.vi{width:44px;height:44px;border-radius:14px;background:rgba(255,255,255,.1);display:grid;place-items:center;color:#9ED8F7}
.vi svg{width:20px;height:20px}
.vinfo b{display:block;font-weight:600;font-size:1rem}
.vinfo small{color:rgba(255,255,255,.7);font-size:.875rem}
.vinfo .todo{color:rgba(255,255,255,.5)}
.vbtns{display:flex;flex-wrap:wrap;gap:10px;position:relative;z-index:1}
.btn.vlight{background:#fff;color:#0B1B2B}
.btn.vghost{background:rgba(255,255,255,.08);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.btn.vghost:hover{background:rgba(255,255,255,.15)}
.vsoc{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.75);font-size:.875rem;position:relative;z-index:1}
.vsoc a{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.1);color:#fff}
.vsoc a:hover{background:rgba(255,255,255,.2)}
.vsoc svg{width:18px;height:18px}
.vphotos{display:grid;gap:12px;grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1.4fr) minmax(0,1fr);height:clamp(440px,46vw,600px)}
.vphotos figure{min-height:0}
.vphotos figure{margin:0;position:relative;border-radius:28px;overflow:hidden;background:var(--tint)}
.vphotos img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.vphotos figure:hover img{transform:scale(1.04)}
.vp1{grid-column:span 2}
.vchip{position:absolute;left:16px;bottom:16px;display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);font-size:.8125rem;font-weight:600;color:var(--ink)}
.vchip svg{width:16px;height:16px;color:var(--accent)}
@media(max-width:600px){.vphotos{grid-template-rows:230px 140px;height:auto}}
.about-media.photo img{position:static;width:100%;height:100%;object-fit:cover;object-position:62% 50%;max-width:100%}
.hero-art .hero-photo{filter:blur(3px) saturate(.9);transform:scale(1.06);opacity:.55}
.hero-art::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,color-mix(in srgb,var(--tint) 35%,transparent),color-mix(in srgb,var(--soft) 75%,transparent) 70%,var(--soft))}
.hero-art .p1,.hero-art .p2{z-index:1}.hero-art .p1{z-index:2}
.hero-art .hero-note{z-index:3}
@media(max-width:899px){.hero-art{min-height:420px}}
.hsmedia{display:grid;gap:12px;margin-top:12px;grid-template-columns:minmax(0,1fr)}
@media(min-width:800px){.hsmedia{grid-template-columns:minmax(0,.42fr) minmax(0,1fr)}}
.hsmedia>*{min-width:0}
.hsvid{border-radius:var(--r);overflow:hidden;background:#0B1B2B;aspect-ratio:9/16;max-height:620px;justify-self:center;width:100%;max-width:360px}
.hsvid video{width:100%;height:100%;object-fit:cover;display:block}
.hsvan{position:relative;border-radius:var(--r);overflow:hidden;min-height:360px;display:flex;align-items:flex-end;background:#1766D6}
.hsvan img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hsvan::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,20,32,0) 40%,rgba(8,20,32,.7))}
.hsvan .in{position:relative;z-index:1;padding:28px;color:#fff;display:grid;gap:8px}
.hsvan .eyebrow{color:#9ED8F7}
.hsvan h3{font-family:var(--disp);font-weight:600;font-size:clamp(1.6rem,3vw,2.2rem);letter-spacing:-.03em}
.hsvan p{opacity:.85;max-width:30rem}
.fgroup{display:grid;gap:12px;padding:16px;border-radius:16px;background:color-mix(in srgb,var(--soft) 60%,var(--bg));box-shadow:inset 0 0 0 1px var(--line)}
.three{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media(min-width:560px){.three{grid-template-columns:repeat(3,minmax(0,1fr))}}
.f label small{font-weight:400;color:var(--muted)}
.tsearch{position:relative}
.tsbox{display:flex;align-items:center;gap:10px;background:var(--soft);border-radius:14px;padding:0 14px;border:1px solid transparent}
.tsbox:focus-within{border-color:var(--ink);background:var(--bg)}
.tsbox svg{width:18px;height:18px;color:var(--muted);flex:none}
#qform .tsbox input{border:0;background:transparent;padding:13px 0}
#qform .tsbox input:focus{border:0}
.tsres{position:absolute;left:0;right:0;top:calc(100% - 20px);z-index:10;margin:0;padding:6px;list-style:none;background:var(--bg);border-radius:16px;box-shadow:0 18px 40px -16px rgba(0,0,0,.3),0 0 0 1px var(--line);max-height:320px;overflow:auto}
.tsres li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;cursor:pointer}
.tsres li[aria-selected="true"],.tsres li:hover{background:var(--soft)}
.tsres li b{display:block;font-weight:500;font-size:.9375rem}.tsres li small{color:var(--muted);font-size:.78rem}
.tsres .tp{white-space:nowrap;font-weight:600;font-size:.875rem;font-variant-numeric:tabular-nums}
.tsres .tp em{font-style:normal;font-size:.75rem;color:var(--muted);margin-left:6px}.tsres .tp em.plus{color:var(--accent)}
.tsres li.none{cursor:default;color:var(--muted);font-size:.875rem}
.sel .rr{display:inline-flex;align-items:center;gap:6px}
.sel .rmx{all:unset;cursor:pointer;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;color:var(--muted)}
.sel .rmx:hover{background:var(--soft);color:var(--ink)}
.stayimgs{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(110px,12vw,170px)}
.stayimgs figure{aspect-ratio:auto}
.stayimgs figure.w{grid-column:span 2;grid-row:span 2}
@media(max-width:600px){.stayimgs{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:120px}}
/* package teaser cards */
.pt{border-radius:24px;background:var(--soft);box-shadow:none;padding:28px;gap:14px;transition:transform .25s}
.pt:hover{transform:translateY(-3px)}
.pt.dark{background:linear-gradient(150deg,#0B1B2B,#123a6b);color:#fff}
.pt .eyebrow{color:var(--accent)}.pt.dark .eyebrow{color:var(--cyan)}
.pt h3{font-size:2rem}
.pt .pr b{font-family:var(--disp);font-weight:600;font-size:2.6rem;letter-spacing:-.04em}
.pt .one{color:var(--muted);font-size:.9375rem}.pt.dark .one{color:rgba(255,255,255,.75)}
.pt .more{margin-top:6px}
.pt ul{display:none}
/* duo photo cards */
.dcard{border-radius:28px;min-height:440px}
.dcard h3{font-family:var(--disp);font-size:clamp(1.8rem,3vw,2.4rem);font-weight:600}
.dcard p{display:none}
.dcard .eyebrow{color:rgba(255,255,255,.85)}
/* clinic: photo with overlay card */
.visit{position:relative;border-radius:32px;overflow:hidden;min-height:clamp(420px,52vw,560px);display:flex;align-items:flex-end;background:var(--tint)}
.visit img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.visit .vcard{position:relative;z-index:1;margin:clamp(16px,3vw,32px);background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(16px);border-radius:24px;padding:clamp(22px,3vw,32px);display:grid;gap:14px;max-width:30rem}
.visit h2{font-family:var(--disp);font-weight:600;font-size:clamp(1.8rem,3vw,2.4rem);letter-spacing:-.03em}
.visit p{color:var(--muted)}
.visit .row{display:flex;flex-wrap:wrap;gap:10px}
.visit .socials a{background:var(--soft)}
/* page heads & components */
.phead{border-bottom:0;margin-bottom:0}
.ptable-wrap,.ordercard,.calc-in,.specpanel,.clinic-info{background:var(--soft);box-shadow:none;border-radius:var(--r)}
.ptable th:first-child,.ptable td:first-child,.ptable thead th{background:var(--soft)}
.ptable thead th.feat{background:var(--tint)}
.ptable td.feat{background:color-mix(in srgb,var(--tint) 50%,var(--soft))}
.ptable tr.grp td{background:var(--bg)}
.ptable thead .pp,.price .now,.cinfo .cp{font-family:var(--disp);font-weight:600;letter-spacing:-.02em}
.calc-out{border-radius:var(--r);background:linear-gradient(150deg,#0B1B2B,#123a6b)}
.calc-out .fee{font-weight:600}
.hmocard{border-radius:18px}
.why li::before{content:none}
footer.site{background:var(--soft);color:var(--muted);border-top:0}
footer.site .logo-light{display:block}footer.site .logo-dark{display:none}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) footer.site .logo-light{display:none}:root:not([data-theme="light"]) footer.site .logo-dark{display:block}}
:root[data-theme="dark"] footer.site .logo-light{display:none}:root[data-theme="dark"] footer.site .logo-dark{display:block}
.prow .pr,.oitem .am,.olines div span:last-child,.spec b,.zone td.p,.panel .pp,.fee2,.catcard small,.sel .row .am,.cpk .r span{font-family:var(--f);font-weight:600;font-variant-numeric:tabular-nums}
.pt ul,.pt li,.pkg ul,.pkg li{font-family:var(--f)}

/* ===== compact density pass ===== */
.sec{padding-block:clamp(40px,6vw,80px)}
.h2{font-size:clamp(1.6rem,3vw,2.4rem)}
.phead{padding-block:clamp(28px,4vw,56px) clamp(16px,2vw,28px)}
.phead h1{font-size:clamp(2.1rem,4.4vw,3.4rem)}
.head{margin-bottom:clamp(20px,2.5vw,32px);gap:12px}
.hhead{margin-bottom:clamp(16px,2vw,24px)}
.lead{font-size:1rem}
.panels{gap:0 28px;grid-template-columns:minmax(0,1fr);align-items:start}
@media(min-width:900px){.panels{grid-template-columns:repeat(2,minmax(0,1fr))}}
.corp .panels{grid-template-columns:minmax(0,1fr)!important}
details.prow2{border-bottom:1px solid var(--line)}
details.prow2>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto auto 16px;gap:14px;align-items:center;padding:12px 0}
details.prow2>summary::-webkit-details-marker{display:none}
.prow2 .pn b{display:block;font-weight:500;font-size:.9375rem}
.prow2 .pn small{color:var(--muted);font-size:.78rem}
.prow2 .pp{font-weight:600;font-size:.875rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.prow2 .chev{width:8px;height:8px;border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);transform:rotate(45deg);transition:transform .2s;justify-self:center}
.prow2[open] .chev{transform:rotate(-135deg)}
.prow2 .pbody{padding:0 0 14px;display:grid;gap:8px}
.prow2 .pbody ul{margin:0;padding-left:18px;font-size:.8125rem;color:var(--muted);columns:2;column-gap:20px}
@media(max-width:560px){.prow2 .pbody ul{columns:1}details.prow2>summary{grid-template-columns:minmax(0,1fr) auto 16px}.prow2 .add{grid-column:1/-1;grid-row:2;justify-self:start}}
.add{padding:5px 12px 5px 6px;font-size:.8125rem;gap:6px}
.add::before{width:18px;height:18px}
.filters{margin-bottom:8px}
.fchip{padding:7px 14px;font-size:.8125rem}
.concerns.big .concern{min-height:112px;padding:16px;gap:10px}
.concerns.big .concern .ci{width:38px;height:38px}
.concerns.big .concern b{font-size:1rem}
.pt{padding:22px;gap:10px}
.pt h3{font-size:1.5rem}.pt .pr b{font-size:2rem}
.stat{padding:clamp(16px,2vw,24px)}
.stat b{font-size:clamp(2.2rem,4.2vw,3.4rem)}
.dcard{min-height:340px}
.bento{grid-auto-rows:190px}
@media(min-width:900px){.bento{grid-auto-rows:210px}}
.catcard{padding:16px}
.prow{padding:10px 0}
.rgroup{padding:20px 0 6px}
.ptable thead th{padding:16px 12px 14px}
.ptable thead .pn{font-size:1.1rem}
.ptable thead .pp{font-size:1rem}
.ptable th,.ptable td{padding:8px 12px}
.hmocard{min-height:120px;padding:16px}
.hmosteps li{padding:14px 0}
.calc-in,.calc-out,.specpanel,.prepcard,.mvcard{padding:clamp(18px,2.4vw,28px)}
.calc-out .fee{font-size:clamp(1.9rem,4vw,2.8rem)}
.hero-panel{min-height:clamp(480px,62vh,660px)}
.hero h1{font-size:clamp(2.6rem,6vw,5rem)}
.visit2 .vpanel h2{font-size:clamp(1.9rem,3.6vw,2.8rem)}
.visit2{align-items:stretch}
.vphotos{height:auto;min-height:clamp(380px,38vw,520px)}
@media(max-width:959px){.vphotos{min-height:0;grid-template-rows:260px 170px}}

/* alignment pass */
@media(min-width:1000px){.concerns.big{grid-template-columns:repeat(7,minmax(0,1fr))}}
.ptease{align-items:stretch}
.pt{grid-template-rows:auto auto auto 1fr auto;align-content:stretch}
.pt .more{align-self:end}
.vphotos{min-height:0}
@media(min-width:960px){.vphotos{min-height:0;height:100%}}
.corp{align-items:stretch}
.corp .dcard{min-height:100%}
.stats .stat{align-content:space-between}
.vphotos img{position:absolute;inset:0}
@media(min-width:960px){.vphotos{height:auto;align-self:stretch}}
@media(min-width:1000px){.concerns.big{grid-template-columns:repeat(6,minmax(0,1fr))}}
.ptable th.corner{text-align:left;vertical-align:middle}
.cornerbox{display:grid;gap:10px;justify-items:start;padding:4px 6px;font-weight:400}
.cornerbox b{font-family:var(--disp);font-weight:600;font-size:1.15rem;line-height:1.15;letter-spacing:-.02em;color:var(--ink);max-width:14rem}
.cornerbox ul{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:.8125rem;color:var(--muted)}
.cornerbox li{display:flex;gap:8px}.cornerbox li::before{content:"✓";color:var(--accent);font-weight:700}
.badge20{display:inline-block;padding:4px 9px;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--cyan));color:#fff;font-size:.72rem;font-weight:600}
.cornerbox .textlink{font-size:.8125rem}
.ptable thead .pt{background:none!important;padding:0!important;border-radius:0;box-shadow:none;display:block;transform:none!important}
.vgrid{display:grid;grid-template-columns:minmax(0,1fr);column-gap:32px}
@media(min-width:1100px){.vgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.vgrid .prow{padding:9px 0}
.sides{display:inline-flex;gap:4px;margin-left:10px;vertical-align:middle;flex-wrap:wrap}
.side{all:unset;cursor:pointer;font-size:.72rem;font-weight:600;padding:3px 9px;border-radius:999px;background:var(--soft);color:var(--muted)}
.side[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
.side:focus-visible{outline:2px solid var(--accent)}
.vgrid .prow .nm small.sd{display:inline;margin-left:6px}
@media(max-width:560px){.sides{display:flex;margin:6px 0 0}}
.navdd{position:relative}
.navddbtn{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:4px;color:var(--muted);font:inherit}
.navddbtn:hover,.navddbtn[aria-expanded="true"],.navddbtn.cur{color:var(--ink)}
.navddbtn svg{width:14px;height:14px;transition:transform .2s}.navddbtn[aria-expanded="true"] svg{transform:rotate(180deg)}
.navddbtn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.mega{position:absolute;left:-20px;top:calc(100% + 14px);width:520px;display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:10px;background:var(--bg);border-radius:18px;box-shadow:0 24px 50px -16px rgba(0,0,0,.25),0 0 0 1px var(--line);z-index:60}
.mega a{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:12px;color:var(--ink)!important}
.mega a:hover,.mega a:focus-visible{background:var(--soft);outline:none}
.mega .mi{width:34px;height:34px;border-radius:10px;background:var(--soft);color:var(--accent);display:grid;place-items:center;flex:none}
.mega .mi svg{width:18px;height:18px}
.mega b{display:block;font-weight:600;font-size:.9rem}.mega small{color:var(--muted);font-size:.78rem}
.mnlbl{font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:16px 0 4px}
.mnsub{display:grid}.mnsub a{font-size:1.15rem!important;padding:9px 0 9px 12px!important}
.progs{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media(min-width:700px){.progs{grid-template-columns:repeat(2,minmax(0,1fr))}}
.prog{background:var(--soft);border-radius:var(--r);padding:clamp(20px,2.4vw,28px);display:grid;gap:12px;align-content:start;grid-template-rows:auto auto 1fr auto}
.prog h3{font-family:var(--disp);font-weight:600;font-size:1.35rem;letter-spacing:-.02em}
.prog p{color:var(--muted);font-size:.9375rem}
.prog ul{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:.875rem}
.prog li{display:flex;gap:8px}.prog li::before{content:"✓";color:var(--accent);font-weight:700}
.prog .btn{justify-self:start}
.ptabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}
.ptabs button{all:unset;cursor:pointer;display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;background:var(--soft);box-shadow:inset 0 0 0 1px transparent;transition:background .15s,box-shadow .15s}
.ptabs button:hover{box-shadow:inset 0 0 0 1px var(--accent)}
.ptabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.pt-ic{flex:none;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--bg);color:var(--accent)}.pt-ic svg{width:22px;height:22px}
.pt-t{display:grid;min-width:0}.pt-t b{font-weight:600;font-size:.98rem}.pt-t small{font-size:.78rem;color:var(--muted)}
.ptabs button[aria-selected="true"]{background:var(--accent);box-shadow:0 10px 24px rgba(46,107,214,.28)}.ptabs button[aria-selected="true"] b{color:#fff}.ptabs button[aria-selected="true"] small{color:rgba(255,255,255,.82)}.ptabs button[aria-selected="true"] .pt-ic{background:rgba(255,255,255,.16);color:#fff}
@media(max-width:720px){.ptabs{gap:8px}.ptabs button{flex-direction:column;gap:8px;padding:12px 6px;text-align:center;border-radius:16px}.pt-ic{width:36px;height:36px}.pt-t b{font-size:.8125rem;line-height:1.25}.pt-t small{display:none}}
.prog.more2{grid-column:1/-1}
.progs>.prog[data-ppanel][hidden]{display:none!important}
@media(min-width:900px){.prog.ger.wide,.prog.more2{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:36px;row-gap:12px;align-content:start}
.prog.ger.wide>.ger-art{grid-column:2;grid-row:1/span 7;align-self:stretch;display:grid;align-content:center}
.prog.ger.wide>:not(.ger-art){grid-column:1}.prog.ger.wide .prog-foot{align-self:end}
.prog.more2>.mx-art{grid-column:2;grid-row:1/span 6;margin-top:0}.prog.more2>:not(.mx-art){grid-column:1}.prog.more2>h3{align-self:end}}
.ger-art{position:relative;border-radius:20px;padding:22px;background:radial-gradient(110% 90% at 100% 0%,#ffe9d6 0%,rgba(255,233,214,0) 55%),radial-gradient(90% 90% at 0% 100%,#dfeafc 0%,rgba(223,234,252,0) 60%),linear-gradient(160deg,#fff8f1,#eef3fb);overflow:hidden;isolation:isolate}
.ger-art::after{content:"";position:absolute;width:240px;height:240px;right:-90px;bottom:-110px;border-radius:50%;border:1px solid rgba(46,107,214,.15);box-shadow:0 0 0 26px rgba(46,107,214,.04),0 0 0 56px rgba(46,107,214,.03);z-index:-1}
.ga-card{background:rgba(255,255,255,.92);border-radius:16px;padding:14px 16px;box-shadow:0 12px 30px rgba(20,38,63,.12),inset 0 0 0 1px rgba(20,38,63,.05);display:grid;gap:4px;color:#14263f;max-width:440px}
.ga-h{display:flex;align-items:center;gap:10px;padding-bottom:10px;margin-bottom:4px;border-bottom:1px solid #e9edf3}
.ga-h span:nth-child(2){flex:1;display:grid}.ga-h b{font-size:.9rem}.ga-h small{font-size:.75rem;color:#5b6577}
.ga-av{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:.8rem;color:#8a4b14;background:linear-gradient(135deg,#ffe3c7,#ffd0a3)}
.ga-h em{font-style:normal;font-size:.7rem;font-weight:700;color:#167a4c;background:#e3f5ec;padding:4px 9px;border-radius:99px}
.ga-row{display:flex;gap:10px;align-items:flex-start;padding:7px 0}
.ga-row i{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;color:#fff;background:#2e6bd6;margin-top:1px}.ga-row i svg{width:12px;height:12px}.ga-row i.soon{background:#f1a14a}
.ga-row span{display:grid}.ga-row b{font-size:.8125rem;font-weight:600}.ga-row small{font-size:.75rem;color:#5b6577}
.prog.ger .pprice{display:grid;gap:2px}.prog.ger .pprice small{font-size:.78rem;color:var(--save,#167a4c);font-weight:600}
.mx-art{grid-template-columns:minmax(0,1fr);position:relative;margin-top:8px;flex:1;min-height:250px;border-radius:20px;overflow:hidden;background:radial-gradient(120% 90% at 85% 0%,#2b5fd0 0%,rgba(43,95,208,0) 55%),radial-gradient(90% 80% at 0% 100%,#1c3a73 0%,rgba(28,58,115,0) 60%),linear-gradient(160deg,#0f2142,#0a1730);padding:18px 20px 20px;display:grid;gap:18px;align-content:space-between;isolation:isolate}
.mx-art::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.09) 1px,transparent 1px);background-size:16px 16px;mask-image:linear-gradient(180deg,#000,transparent 75%);-webkit-mask-image:linear-gradient(180deg,#000,transparent 75%);z-index:-1}
.mx-glow{position:absolute;width:220px;height:220px;right:-60px;top:-80px;border-radius:50%;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 28px rgba(255,255,255,.03),0 0 0 60px rgba(255,255,255,.02);z-index:-1}
.mx-top{display:flex;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.1)}.mx-top span:last-child{display:grid;color:#fff}.mx-top b{font-size:.875rem;font-weight:600}.mx-top small{font-size:.72rem;color:#b9c8e6;display:flex;align-items:center;gap:6px}.mx-top small i{width:7px;height:7px;border-radius:50%;background:#3ddc97;box-shadow:0 0 0 3px rgba(61,220,151,.2)}
.mx-flow{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
.mx-hi{justify-self:start;max-width:80%;font-size:.8125rem;line-height:1.4;color:#fff;padding:9px 13px;border-radius:4px 16px 16px 16px;background:rgba(255,255,255,.1);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.mx-chips{display:flex;flex-wrap:wrap;gap:6px}
.mx-try{display:grid;gap:8px;margin-top:10px}
.mx-qs{display:grid;gap:8px}
.mx-qs button{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:14px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line);font-size:.9rem;font-weight:500;color:var(--ink);transition:box-shadow .15s,transform .15s}
.mx-qs button svg{width:16px;height:16px;color:var(--accent);flex:none}
.mx-qs button:hover{box-shadow:inset 0 0 0 1px var(--accent);transform:translateX(2px)}
.mx-qs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.mx-human{font-size:.8125rem;color:var(--muted);margin:4px 0 0}
.mx-chips span{font-size:.72rem;font-weight:600;letter-spacing:.01em;color:#dbe6ff;padding:5px 10px;border-radius:99px;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);backdrop-filter:blur(6px)}
.mx-chips span:nth-child(2){background:rgba(91,147,240,.35);color:#fff}
.mx-chat{display:grid;gap:10px;grid-template-columns:minmax(0,1fr)}
.mx-me{justify-self:end;max-width:80%;font-size:.8125rem;line-height:1.4;color:#0b1b2b;background:#fff;padding:9px 13px;border-radius:16px 16px 4px 16px;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.mx-ai{display:flex;gap:10px;align-items:flex-start;max-width:92%;min-width:0}
.mx-av{flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#5b93f0,#2e6bd6);box-shadow:0 4px 14px rgba(46,107,214,.5)}.mx-av svg{width:15px;height:15px}
.mx-ai-b{display:grid;gap:7px;padding:11px 12px;border-radius:4px 16px 16px 16px;background:rgba(255,255,255,.1);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);backdrop-filter:blur(10px);color:#fff;min-width:0;flex:1}
.mx-ai-b b{font-size:.8125rem;font-weight:600}
.mx-rec{display:flex;align-items:center;gap:9px;padding:7px 9px;border-radius:10px;background:rgba(255,255,255,.95);color:#0b1b2b;font-size:.78rem}
.mx-rec i{flex:none;width:24px;height:24px;border-radius:7px;display:grid;place-items:center;background:#e6effd;color:#2e6bd6}.mx-rec i svg{width:14px;height:14px}
.mx-rec span{flex:1;min-width:0;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mx-rec em{font-style:normal;font-weight:600;color:#2e6bd6;font-variant-numeric:tabular-nums}
.prog.more2{grid-template-rows:auto auto auto;background:linear-gradient(135deg,var(--tint),var(--soft))}

/* ===== Refined palette: taken from the clinic (concierge navy, slat-wall sky, brushed silver, marble white) ===== */
:root{--navy:#14213D;--navy2:#1E3A64;--sky:#EAF2FB;--silver:#C9CED6;--save:#227A54;--warm:#F8F6F2}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--navy:#13233A;--navy2:#1B3354;--sky:#122336;--silver:#5B6675;--save:#4CC38A;--warm:#0B1622}}
:root[data-theme="dark"]{--navy:#13233A;--navy2:#1B3354;--sky:#122336;--silver:#5B6675;--save:#4CC38A;--warm:#0B1622}
/* 1 · buttons: blue = book/checkout, outline = secondary, navy = dark surfaces */
.btn:not(.ghost):not(.vlight):not(.vghost):not(.onphoto){background:var(--accent);color:var(--on-accent);box-shadow:none}
.btn:not(.ghost):not(.vlight):not(.vghost):not(.onphoto):hover{background:color-mix(in srgb,var(--accent) 86%,#000)}
.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 22%,transparent)}
.btn.ghost:hover{box-shadow:inset 0 0 0 1px var(--ink)}
.vbar,.chatfab,.toast{background:var(--navy);color:#fff;box-shadow:0 10px 30px rgba(20,33,61,.22)}
.vbar button{background:var(--accent);color:#fff}
.chatfab svg{color:#fff}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .vbar,:root:not([data-theme="light"]) .chatfab,:root:not([data-theme="light"]) .toast{box-shadow:inset 0 0 0 1px var(--line),0 10px 30px rgba(0,0,0,.4)}}
:root[data-theme="dark"] .vbar,:root[data-theme="dark"] .chatfab,:root[data-theme="dark"] .toast{box-shadow:inset 0 0 0 1px var(--line),0 10px 30px rgba(0,0,0,.4)}
/* 2 · navy panels with a silver hairline */
.announce{background:var(--navy);color:#fff}
.announce a{color:#fff;text-decoration-color:var(--silver)}
.pt.dark,.calc-out{background:linear-gradient(150deg,var(--navy),var(--navy2));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--silver) 40%,transparent)}
.pt.dark .eyebrow,.pt.dark .tier{color:var(--silver)}
.vpanel{background:linear-gradient(150deg,var(--navy),var(--navy2))!important}
.badge20{background:var(--save)}
.hero h1 em{background:none;-webkit-background-clip:initial;background-clip:initial;color:var(--accent)}
.stat b{background:none;-webkit-background-clip:initial;background-clip:initial;color:var(--ink)}
.concerns.big .concern.ask{background:var(--accent)}
/* marble-white footer */
footer.site{background:var(--warm)}
/* 3 · calmer details */
.hmo{height:56px;min-width:140px}
.hmo img{max-height:30px;max-width:128px;object-fit:contain}
.sel .row.dl .am,.olines .dl span:last-child{color:var(--save)}
/* 4 · tiles: soft blue icon circles */
.concern .ci{background:var(--accent-soft);color:var(--accent)}
.concern:hover{background:var(--sky)}

/* reviews: slim strip under Visit us */
.rvsec{padding-top:0!important}
.rv{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;border-radius:20px;padding:14px 16px 14px 24px;background:var(--warm);box-shadow:inset 0 0 0 1px var(--line)}
.rv-l{display:flex;align-items:center;gap:14px;flex:1 1 320px;min-width:0}
.rv-l p{margin:0;font-size:.9375rem}.rv-l b{font-weight:600}.rv-l span{color:var(--muted)}
.stars{display:flex;gap:2px;flex:none}.stars svg{width:18px;height:18px;fill:#F5B301}
.rv-btns{display:flex;gap:8px}
.rv-btns .btn{min-height:38px;padding:0 14px;font-size:.875rem}
.rv-btns .btn svg{width:16px;height:16px}
.rv-btns .gico{background:#fff;border-radius:50%;padding:1px;width:18px!important;height:18px!important}
.rv-qr{display:flex;align-items:center;gap:10px;margin:0;padding-left:20px;border-left:1px solid var(--line)}
.rv-qr figcaption{font-size:.75rem;line-height:1.3;color:var(--muted)}
.qrbox{width:76px;height:76px;padding:4px;background:#fff;border-radius:10px;display:grid;place-items:center;box-sizing:border-box}
.qrbox img{width:68px;height:68px}
@media(max-width:819px){.rv-qr{display:none}.rv{padding:16px}.rv-l{flex-basis:100%;flex-wrap:wrap;gap:6px 12px}.rv-btns{flex:1}.rv-btns .btn{flex:1}}

/* prepare: search first */
.prepfind{display:grid;gap:8px;margin-bottom:20px;max-width:640px}
.prepfind .tsbox input{border:0;background:transparent;padding:14px 0;width:100%;font:inherit;color:inherit;outline:none}
.prepfind .tsres{top:calc(100% - 0px)}
.prepfind:has(.pchip) .tsres,.prepfind:has([data-pload]) .tsres{top:76px}
.prepchips{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.prepchips:empty{display:none}
.pchip{display:inline-flex;align-items:center;gap:6px;padding:6px 6px 6px 12px;border-radius:999px;background:var(--accent-soft);color:var(--ink);font-size:.875rem;font-weight:500}
.pchip button{all:unset;cursor:pointer;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;color:var(--muted)}
.pchip button:hover{background:var(--bg);color:var(--ink)}
.pmconfirm{margin:0;padding-top:12px;border-top:1px solid var(--line)}
.prepall{margin-top:8px}
.prepall .prepcats{margin-top:16px}
.fbreak{display:block;font-size:.875rem;color:var(--muted);margin:2px 0}

/* doctors: compact specialty chips above the panel */
.docs2{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
.speclist{display:flex!important;flex-wrap:wrap;gap:8px;position:static!important;max-height:none!important}
.specbtn{flex:none;padding:8px 14px;border-radius:999px;background:var(--soft);font-size:.875rem}
.specbtn small{display:none}
.specbtn[aria-selected="true"]{background:var(--navy);color:#fff}
@media(max-width:899px){.speclist{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}}

/* good to know: one compact block with two tabs */
.gtk{margin-top:clamp(40px,6vw,72px);display:grid;gap:18px}
.gtk-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.gtk-head .h2{margin:0}
.gtk-faq,.gtk-gloss{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));margin:0}
.fq,.gtk-gloss>div{background:var(--soft);border-radius:16px;padding:14px 16px;display:grid;gap:4px;align-content:start}
.fq b,.gtk-gloss dt{font-weight:600;font-size:.9375rem}
.fq span,.gtk-gloss dd{margin:0;color:var(--muted);font-size:.875rem;line-height:1.45}
.gtk .fine{margin:0}

/* spacing pass: tighter, consistent rhythm */
.sec{padding-block:clamp(28px,4.5vw,64px)}
.sec.tight{padding-top:0}
#clinic{padding-bottom:12px}
.rvsec{padding-top:0!important;padding-bottom:clamp(28px,4vw,48px)!important}
footer.site{margin-top:0;padding-block:44px 28px}
.phead{padding-block:clamp(24px,3.5vw,48px) clamp(14px,2vw,24px)}
.hhead{margin-bottom:clamp(14px,1.8vw,20px)}
.faq{margin-top:clamp(36px,5vw,64px)}
.gtk{margin-top:clamp(32px,4.5vw,56px)}
.closing{margin-top:0}
@media(max-width:640px){.gtk-faq,.gtk-gloss{gap:0;background:var(--soft);border-radius:16px;padding:4px 14px}.fq,.gtk-gloss>div{background:none;border-radius:0;padding:12px 0;border-bottom:1px solid var(--line)}.fq:last-child,.gtk-gloss>div:last-child{border-bottom:0}}
/* review buttons: neutral white pills with official brand marks (blue stays reserved for booking) */
.rv-btns .btn{background:var(--bg)!important;color:var(--ink)!important;box-shadow:inset 0 0 0 1px var(--line),0 1px 2px rgba(20,33,61,.06)!important;gap:8px;font-weight:600}
.rv-btns .btn:hover{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 35%,transparent),0 4px 12px rgba(20,33,61,.08)!important;transform:translateY(-1px)}
.rv-btns .gico{background:none!important;padding:0!important;width:18px!important;height:18px!important}
.rv-btns .fico{color:#fff;background:#1877F2;border-radius:50%;padding:3px;width:18px!important;height:18px!important;box-sizing:border-box}
/* good to know tabs */
.gtk-tabs{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:var(--soft);box-shadow:inset 0 0 0 1px var(--line)}
.gtk-tabs button{all:unset;cursor:pointer;padding:8px 16px;border-radius:999px;font-size:.875rem;font-weight:500;color:var(--muted);white-space:nowrap}
.gtk-tabs button:hover{color:var(--ink)}
.gtk-tabs button[aria-selected="true"]{background:var(--bg);color:var(--ink);box-shadow:0 1px 3px rgba(20,33,61,.12)}
.gtk-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* prep: compact */
.pmhead{display:grid;gap:6px}
.pmhead h2{margin:0}
.pmbased{margin:0;display:flex;gap:8px;align-items:flex-start;font-size:.875rem;color:var(--muted)}
.pmbased svg{width:18px;height:18px;flex:none;color:var(--accent);margin-top:1px}
.pmbased b{color:var(--ink);font-weight:600}
.pmg ul{font-size:.875rem;gap:6px}
.pmg{padding:14px 16px}
.prepall .prepgrid{display:grid;gap:0 28px;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));margin-top:4px}
.pr{border-bottom:1px solid var(--line)}
.pr summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding:11px 2px}
.pr summary::-webkit-details-marker{display:none}
.pr summary>span{flex:1;min-width:0}
.pr summary::after{content:"+";color:var(--muted);font-size:1.1rem;flex:none}
.pr[open] summary::after{content:"–"}
.pr summary b{display:block;font-weight:600;font-size:.9375rem}
.pr summary small{display:block;color:var(--muted);font-size:.78rem;line-height:1.35;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pr[open] summary small{white-space:normal}
.pfast{flex:none;font-style:normal;font-size:.72rem;font-weight:600;padding:3px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent);white-space:nowrap}
.pfast.ok{background:color-mix(in srgb,var(--save) 14%,transparent);color:var(--save)}
.pr ul{margin:0 0 12px;padding-left:18px;display:grid;gap:4px;font-size:.875rem}
.prepall .prepcats{margin:14px 0 4px}
.prepall .prepcats button{padding:6px 12px;font-size:.8125rem}

/* cohesive cool neutrals: footer and review strip match the site's soft blue-grey */
footer.site{background:var(--soft)!important;border-top:1px solid var(--line)}
.rv{background:var(--soft)!important}
@media(min-width:761px){footer.site{padding-bottom:96px}}

/* program price lists */
#program-prices{padding-top:clamp(20px,3vw,40px)!important}
.plists{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:start}
.plist{background:var(--soft);border-radius:var(--r);padding:clamp(18px,2.4vw,26px)}
.plist-h{display:grid;gap:4px;margin-bottom:8px}.plist-h h3{margin:0;font-size:1.25rem}
.plist ul{list-style:none;margin:0;padding:0}
.plist li{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-top:1px solid var(--line)}
.plist li span{min-width:0}.plist li b{display:block;font-weight:600;font-size:.9375rem}
.plist li small{display:block;color:var(--muted);font-size:.8125rem;line-height:1.35;margin-top:2px}
.pinq{all:unset;cursor:pointer;flex:none;padding:7px 14px;border-radius:999px;font-size:.8125rem;font-weight:600;color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}
.pinq:hover{background:var(--accent);color:var(--on-accent)}
.pinq:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.plnote{margin:12px 0 0}
/* cohesive cool neutrals: footer + review strip match the site's soft blue-grey */
:root{--warm:#F2F6FA}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--warm:#0B1622}}
:root[data-theme="dark"]{--warm:#0B1622}
footer.site{background:var(--soft);border-top:1px solid var(--line)}
@media(min-width:761px){footer.site{padding-bottom:96px}}

/* deals + journal teaser */
.dj{display:grid;gap:clamp(20px,3vw,40px);grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
.djlist{display:grid;gap:8px}
.djrow{display:grid;gap:4px;padding:14px 16px;border-radius:16px;background:var(--soft);color:var(--ink);text-decoration:none;transition:background .2s}
.djrow:hover{background:var(--tint)}
.djrow b{font-weight:600;font-size:.9375rem;line-height:1.35}
.dtag{justify-self:start;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--save)}
.post2{grid-template-columns:64px minmax(0,1fr);align-items:center;gap:14px;padding:10px}
.post2 img{width:64px;height:64px;border-radius:12px;object-fit:cover}
.post2 span{display:grid;gap:2px}.post2 small{color:var(--muted);font-size:.75rem}
.deals{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.deal{background:var(--soft);border-radius:var(--r);padding:22px;display:grid;gap:8px;align-content:start}
.deal h3{margin:0;font-size:1.15rem}.deal p{margin:0;color:var(--muted);font-size:.9rem}
.deal .textlink{justify-self:start;margin-top:4px}

/* program inclusions */
.prog{grid-template-rows:none}
.incl-h{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.prog ul.incl{gap:0}
.prog ul.incl li{padding:9px 0;border-top:1px solid var(--line);gap:10px;align-items:flex-start}
.prog ul.incl li::before{margin-top:1px}
.prog ul.incl b{display:block;font-weight:600;font-size:.9rem}
.prog ul.incl small{display:block;color:var(--muted);font-size:.8rem;line-height:1.35}
.prog-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid var(--line);margin-top:auto}
.pprice{font-size:.875rem;color:var(--muted);font-weight:500}
.prog .prog-foot .btn{justify-self:auto}
.prog{display:flex!important;flex-direction:column}
.prog.more2 .btn{align-self:flex-start}

/* combined weight + peptide program */
.prog.wide{grid-column:1/-1;gap:18px}
.pw-top{display:grid;gap:6px}.pw-top p{max-width:46rem;margin:0}
.pw-body{display:grid;gap:20px}
@media(min-width:900px){.pw-body{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:32px}}
.pw-inc{display:grid;gap:10px;align-content:start}
.chk2{list-style:none;margin:0;padding:0;display:grid;gap:8px 16px;grid-template-columns:repeat(2,minmax(0,1fr));font-size:.9rem}
.chk2 li{display:flex;gap:8px}.chk2 li::before{content:"✓";color:var(--accent);font-weight:700}
@media(max-width:480px){.chk2{grid-template-columns:1fr}}
.pw-opts{display:grid;gap:10px;align-content:start}
.popt{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;background:var(--bg);border-radius:16px;padding:14px 16px;box-shadow:inset 0 0 0 1px var(--line)}
.popt b{display:block;font-weight:600}.popt small{display:block;color:var(--muted);font-size:.8rem}
.popt-r{display:flex;align-items:center;gap:12px}
.pp2{font-family:var(--disp);font-weight:600;font-size:1.25rem;white-space:nowrap}
.pp2 small{display:inline;font-family:var(--f);font-size:.75rem;font-weight:500;color:var(--muted)}
.pp2.ask{font-family:var(--f);font-size:.875rem;font-weight:500;color:var(--muted)}
.pfees,.psave{display:grid;gap:6px;padding:4px 2px 0}
.pfees div{display:flex;justify-content:space-between;gap:12px;font-size:.875rem;padding:6px 0;border-bottom:1px solid var(--line)}
.pfees div span{color:var(--muted)}.pfees div b{font-weight:600;text-align:right}
.psv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.psv span{display:grid;gap:2px;text-align:center;padding:10px 6px;border-radius:12px;background:color-mix(in srgb,var(--save) 10%,transparent);color:var(--save);font-size:.8125rem;font-weight:600}
.psv span b{color:var(--ink);font-weight:600;font-size:.8125rem}
.psave small{color:var(--muted);font-size:.75rem}
.psteps{list-style:none;margin:0;padding:0;display:grid;gap:10px;counter-reset:ps}
.psteps li{counter-increment:ps;display:grid;grid-template-columns:28px 1fr;gap:0 10px;font-size:.875rem}
.psteps li::before{content:counter(ps);grid-row:span 2;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-weight:700;font-size:.75rem}
.psteps b{font-weight:600}.psteps span{color:var(--muted)}

/* PhilHealth YAKAP help */
.yakap{display:grid;gap:12px}
.yhelp{background:var(--soft);border-radius:14px;padding:14px 16px;display:grid;gap:8px;font-size:.875rem}
.yhelp b{font-weight:600}
.yhelp ol{margin:0;padding-left:20px;display:grid;gap:6px}

.ytag{display:inline-block;font-style:normal;font-size:.65rem;font-weight:700;letter-spacing:.04em;padding:1px 6px;border-radius:6px;background:color-mix(in srgb,var(--save) 14%,transparent);color:var(--save);vertical-align:2px}
.ycov{margin:0 0 6px;color:var(--muted)}.ycov b{color:var(--ink)}

.gtable td small{display:block;margin-top:2px;font-size:.75rem;color:var(--muted);font-weight:400}
.hsloc-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.hsloc-row .btn{min-height:48px}
@media(max-width:560px){.hsloc-row{grid-template-columns:1fr}}
#hsLocMsg.ok{color:var(--ink)}#hsLocMsg.bad{color:#B42318}
.hero-copy .hshome svg{width:20px;height:20px;flex:none}
.hero-copy .herolink{display:inline-block;margin-top:-12px;font-size:.9375rem;font-weight:500}
@media(max-width:560px){.hero-copy .actions .btn{flex:1 1 100%}}
.wdone{display:grid;justify-items:center;text-align:center;gap:10px;padding:24px 4px 8px}
.wdone-ic{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.wdone-ic svg{width:28px;height:28px}
.wdone h3{margin:6px 0 0;font-size:1.25rem}
.wdone-l{list-style:none;margin:6px 0 0;padding:0;width:100%;display:grid;gap:8px}
.wdone-l li{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:12px;background:var(--soft);text-align:left;font-size:.875rem}
.wdone-l b{white-space:nowrap}
.wdone p{margin:4px 0 6px;font-size:.875rem;line-height:1.5;max-width:44ch}
.wdone-b{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}
@media(max-width:560px){.wdone-b{grid-template-columns:1fr}}
#bookd.lockhome .locpick,#bookd.lockhome .localt,#bookd.lockhome [data-step="1"]>.bst-h{display:none}
#bookd .pmlock{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin:0;padding:14px 16px;border-radius:14px;background:var(--accent-soft);font-size:.875rem}
#bookd .pmlock b{color:var(--ink)}
/* simpler booking */
#bookd .sper{display:grid;grid-template-columns:auto repeat(3,minmax(0,1fr));gap:8px}
#bookd .sper .anyt{justify-self:stretch;padding:8px 16px}
#bookd .sper button{all:unset;box-sizing:border-box;cursor:pointer;display:grid;gap:2px;align-content:center;justify-items:center;text-align:center;min-height:56px;padding:8px 10px;border-radius:14px;background:var(--soft);font-size:.875rem;color:var(--ink)}
#bookd .sper button small{font-size:.6875rem;color:var(--muted)}
#bookd .sper button[aria-pressed="true"]{background:var(--accent);color:#fff}#bookd .sper button[aria-pressed="true"] small{color:rgba(255,255,255,.85)}
#bookd .sper button:disabled{opacity:.45;cursor:not-allowed}
#bookd .sper button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
#bookd .slots .sgrp{margin-top:10px}
@media(max-width:560px){#bookd .sper{grid-template-columns:repeat(3,minmax(0,1fr))}#bookd .sper .anyt{grid-column:1/-1!important;justify-self:stretch;min-height:40px}}
#bookd .dmore{display:inline-flex;align-items:center;gap:6px;margin-top:8px;color:var(--accent);font-weight:600;font-size:.875rem;cursor:pointer;position:relative}
#bookd .dmore input{position:absolute;inset:0;opacity:0;pointer-events:none;width:100%}
#bookd .dmy{display:grid;grid-template-columns:1.4fr 1fr 1.1fr;gap:8px}
#qform:not(.nmopen) .nm4>.f.sfx,#qform:not(.nmopen) .nomid{display:none}
#qform:not(.nmopen) .nm4>.f:nth-child(3){grid-column:1/-1}
#qform.nmopen .nmx{display:none}
#bookd .nmx{justify-self:start;font-size:.8125rem;margin-top:-4px}
#bookd.inq .nmx{display:none}
#bookd details.pf2{display:block;margin-top:6px}#bookd details.pf2 summary{cursor:pointer;color:var(--accent);font-weight:600;list-style:none}#bookd details.pf2 summary::-webkit-details-marker{display:none}
#bookd details.pf2[open] summary{margin-bottom:6px}
#qpayfine{text-align:left!important}
#bookd .check.needed{border-radius:12px;box-shadow:0 0 0 2px #E5484D;animation:tmcShake .35s}
@keyframes tmcShake{50%{box-shadow:0 0 0 5px rgba(229,72,77,.25)}}
#bookd .quickbtn .qt small{display:inline}
#bookd .quickbtn{padding-top:10px;padding-bottom:10px}
#bookd button.ftot{all:unset;box-sizing:border-box;display:grid;cursor:default;flex:1 1 auto;min-width:0;line-height:1.2}
@media(max-width:760px){#bookd .bside{display:none}#bookd.showsum .bside{display:grid}#bookd button.ftot{cursor:pointer}#bookd button.ftot small::after{content:" · View";color:var(--accent);font-weight:600}#bookd.showsum button.ftot small::after{content:" · Hide"}#bookd .bnav:has(#qsubmit:not([hidden])) button.ftot small::after{content:""}}
#bookd .wherel{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:4px 10px;margin:0 0 4px;padding:12px 14px;border-radius:14px;background:var(--soft);font-size:.875rem}
#bookd .wherel svg{width:18px;height:18px;color:var(--accent);flex:none}@media(max-width:560px){#bookd .wherel button{grid-column:2;justify-self:start}}#bookd .wherel span{flex:1 1 auto;min-width:0}#bookd .wherel b{color:var(--ink)}
#bookd .mecard{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:16px;border-radius:16px;background:var(--accent-soft)}
#bookd .mecard[hidden]{display:none}
#bookd .mecard .mi{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--bg);color:var(--accent)}#bookd .mecard .mi svg{width:20px;height:20px}
#bookd .mecard div{display:grid;gap:2px;min-width:0}#bookd .mecard .muted{font-size:.75rem}#bookd .mecard b{font-size:1rem;color:var(--ink)}#bookd .mecard small{font-size:.8125rem;color:var(--muted);overflow-wrap:anywhere}
#bookd .mecard .mea{display:grid;gap:4px;justify-items:end;font-size:.875rem}
@media(max-width:560px){#bookd .mecard{grid-template-columns:auto 1fr}#bookd .mecard .mea{grid-column:1/-1;display:flex;gap:16px;justify-items:start}}
#qform.meon .fgroup:has(#qfirst),#qform.meon .two:has(#qmobile){display:none}
#bookd .otpbox input,#bookd .quickb input{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:12px 14px;min-height:48px;box-sizing:border-box;-webkit-appearance:none;appearance:none}
#bookd .otpbox input:focus,#bookd .quickb input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}
#otpC{flex:1 1 200px;letter-spacing:normal!important;font-weight:400!important;text-align:left!important}
#bookd .otpbox .qrow .btn{min-height:48px;border-radius:12px}
.otpbox .qrow{display:flex;gap:8px;flex-wrap:wrap}.otpbox .qrow .btn{flex:none}
/* general inquiry mode */
#qform .iq{display:none}
#qform.inq .iq{display:grid}
#qform.inq .bk,#bookd.inq .bk,#bookd.inq .bside,#bookd.inq .bsteps,#qform.inq #qhmoF,#qform.inq #qhomeF,#qform.inq #qcompanyF{display:none!important}
#bookd.inq .bstep{display:grid!important}
#bookd.inq .bst-h{display:none}
#qform.inq.iscorp #qcompanyF{display:grid!important}#qform.iscorp #qtopicF{display:none!important}
#bookd .cpkgs{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
#bookd .cpkg{position:relative;display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-radius:14px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line);cursor:pointer;transition:box-shadow .15s}
#bookd .cpkg input{position:absolute;opacity:0;pointer-events:none}
#bookd .cpkg b{font-size:.9375rem;color:var(--ink)}#bookd .cpkg small{font-size:.75rem;line-height:1.45;color:var(--muted)}
#bookd .cpkg:has(input:checked){box-shadow:inset 0 0 0 2px var(--accent);background:var(--accent-soft)}
#bookd .cpkg:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}
#bookd .cpkg .tag{align-self:flex-start;font-size:.6875rem;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--accent);color:#fff}
#bookd .caddons{display:flex;flex-wrap:wrap;gap:8px}
#bookd .cadd{position:relative;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:6px 14px;border-radius:999px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line);font-size:.8125rem;color:var(--ink);cursor:pointer;user-select:none}
#bookd .cadd input{position:absolute;opacity:0;pointer-events:none}
#bookd .cadd::before{content:"+";font-weight:600;color:var(--accent)}
#bookd .cadd:has(input:checked){background:var(--accent);color:#fff;box-shadow:none}#bookd .cadd:has(input:checked)::before{content:"✓";color:#fff}
#bookd .cadd:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}
#bookd .corpintro{margin:0 0 4px}
/* custom checkboxes */
.check input{appearance:none;-webkit-appearance:none;flex:none;width:20px;height:20px;margin:1px 0 0;border-radius:6px;background:var(--bg);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--ink) 30%,transparent);cursor:pointer;display:grid;place-items:center;transition:background .15s,box-shadow .15s}
.check input:hover{box-shadow:inset 0 0 0 1.5px var(--accent)}
.check input:checked{background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/14px no-repeat;box-shadow:none}
.check input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.check{cursor:pointer;line-height:1.5}

/* visible calendar icon on date fields */
input[type="date"]{position:relative;cursor:pointer}
input[type="date"]::-webkit-calendar-picker-indicator{opacity:1;cursor:pointer;width:22px;height:22px;padding:4px;margin-left:8px;border-radius:8px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231766D6' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='2.5'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4'/%3E%3Ccircle cx='8.5' cy='14.5' r='.6' fill='%231766D6'/%3E%3Ccircle cx='12' cy='14.5' r='.6' fill='%231766D6'/%3E%3Ccircle cx='15.5' cy='14.5' r='.6' fill='%231766D6'/%3E%3C/svg%3E") center/20px no-repeat;filter:none}
input[type="date"]::-webkit-calendar-picker-indicator:hover{background-color:var(--accent-soft)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) input[type="date"]::-webkit-calendar-picker-indicator{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235EA2FF' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='2.5'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4'/%3E%3Ccircle cx='8.5' cy='14.5' r='.6' fill='%235EA2FF'/%3E%3Ccircle cx='12' cy='14.5' r='.6' fill='%235EA2FF'/%3E%3Ccircle cx='15.5' cy='14.5' r='.6' fill='%235EA2FF'/%3E%3C/svg%3E") center/20px no-repeat}}
:root[data-theme="dark"] input[type="date"]::-webkit-calendar-picker-indicator{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235EA2FF' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='2.5'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4'/%3E%3Ccircle cx='8.5' cy='14.5' r='.6' fill='%235EA2FF'/%3E%3Ccircle cx='12' cy='14.5' r='.6' fill='%235EA2FF'/%3E%3Ccircle cx='15.5' cy='14.5' r='.6' fill='%235EA2FF'/%3E%3C/svg%3E") center/20px no-repeat}

/* ===== booking: 3 steps + summary panel ===== */
dialog.sheet#bookd{width:min(1080px,100%)}
dialog.sheet#bookd{overflow:hidden}#bookd .dmy,#bookd .f{position:relative}
#qform{display:grid;gap:14px;padding-top:12px}
.bstep{display:grid;gap:14px}
.bst-h{margin:0;font-size:1.15rem;font-weight:600}
.bsteps{list-style:none;margin:14px 0 0;padding:0;display:flex;gap:6px;counter-reset:bs}
.bsteps li{counter-increment:bs;display:flex;align-items:center;gap:8px;padding:6px 12px 6px 6px;border-radius:999px;background:var(--soft);font-size:.8125rem;font-weight:500;color:var(--muted);cursor:pointer;white-space:nowrap}
.bsteps li::before{content:counter(bs);width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--bg);font-size:.75rem;font-weight:700}
.bsteps li.on{background:var(--accent-soft);color:var(--ink)}.bsteps li.on::before{background:var(--accent);color:#fff}
.bsteps li.ok::before{content:"✓";background:var(--save);color:#fff}
.bgrid{display:grid;gap:20px;align-items:start}
@media(min-width:900px){.bgrid{grid-template-columns:minmax(0,1fr) 340px;gap:28px}.bside{position:sticky;top:12px;margin-top:12px}}
.bside{background:var(--soft);border-radius:18px;padding:18px;display:grid;gap:12px}
.bside h3{margin:0;font-size:1rem;font-weight:600}
.bmeta{margin:0;display:grid;gap:6px}
.bmeta div{display:flex;justify-content:space-between;gap:12px;font-size:.8125rem}
.bmeta dt{color:var(--muted)}.bmeta dd{margin:0;text-align:right;font-weight:500}
.bside .sel{background:var(--bg);border-radius:14px;padding:12px}
.bside .sel .row{grid-template-columns:minmax(0,1fr) auto 64px 22px;gap:8px;font-size:.875rem}
.bside .qty{height:26px}.bside .qty button{width:22px;height:22px}
.sched{display:grid;gap:14px}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:6px}
.slots button{all:unset;cursor:pointer;text-align:center;padding:9px 4px;border-radius:10px;background:var(--soft);font-size:.8125rem;font-weight:500;box-shadow:inset 0 0 0 1px transparent}
.slots button:first-child{grid-column:span 2}
.slots button:hover:not(:disabled){box-shadow:inset 0 0 0 1px var(--accent)}
.slots button[aria-checked="true"]{background:var(--accent);color:#fff}
.slots button:disabled{opacity:.35;cursor:not-allowed;text-decoration:line-through}
.slots button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.bnav{grid-template-columns:auto 1fr!important;display:grid}
.bnav .btn{width:100%}
.bnav #qback{width:auto;padding:0 22px}
.bnav #qback[hidden]+.btn,.bnav #qback[hidden]~#qsubmit{grid-column:1/-1}
#bookd.isdone .bside{display:none}
@media(max-width:899px){.bsteps li{padding:5px 10px 5px 5px;font-size:.75rem}.bsteps li:not(.on){font-size:0;gap:0;padding:5px}.bsteps li:not(.on)::before{font-size:.7rem}}
.pw-img{margin:calc(-1*clamp(20px,2.4vw,28px)) calc(-1*clamp(20px,2.4vw,28px)) 4px;border-radius:var(--r) var(--r) 0 0;overflow:hidden;aspect-ratio:21/7}
.pw-img img{width:100%;height:100%;object-fit:cover;object-position:55% 38%;display:block}
@media(max-width:640px){.pw-img{aspect-ratio:16/9}}

/* weight plan builder */
.wmb{grid-column:1/-1;margin-top:6px;padding:clamp(16px,2.2vw,24px);border-radius:18px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line);display:grid;gap:16px;scroll-margin-top:90px}
.wmb-h{display:grid;gap:4px}
.wconsent .check .textlink{display:inline;padding:0;font:inherit;font-weight:600;text-align:left;vertical-align:baseline}
.wsheet{box-shadow:none;padding:0;background:none;gap:18px}
.wprog{display:grid;gap:8px}.wbar{height:6px;border-radius:99px;background:var(--soft);overflow:hidden}.wbar i{display:block;height:100%;background:var(--accent);border-radius:99px;transition:width .25s}
.wstep{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:.8125rem;color:var(--muted)}.wstep b{font-size:1.05rem;color:var(--ink);font-weight:600}
.wbody{display:grid;gap:18px}
.wwho{display:grid;gap:8px}.wwho button{all:unset;cursor:pointer;display:grid;gap:3px;padding:14px 16px;border-radius:14px;background:var(--soft);box-shadow:inset 0 0 0 1px transparent}.wwho button small{color:var(--muted);font-size:.8125rem;line-height:1.45}.wwho button:hover{box-shadow:inset 0 0 0 1px var(--accent)}.wwho button[aria-checked="true"]{box-shadow:inset 0 0 0 2px var(--accent);background:var(--accent-soft)}.wwho button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.wnav{position:sticky;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0 4px;background:var(--bg);border-top:1px solid var(--line)}
.wgo{display:flex;align-items:center;gap:12px;margin-left:auto}.wgo .wneed{text-align:right;font-size:.78rem}
.wrev{display:grid;border-radius:14px;background:var(--soft);padding:4px 16px}.wrev>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line);font-size:.875rem}.wrev>div:last-child{border-bottom:0}.wrev span{color:var(--muted)}.wrev b{font-weight:600;text-align:right}
.wtot{display:flex;justify-content:space-between;align-items:baseline}.wtot span{color:var(--muted)}.wtot b{font-family:var(--disp);font-size:1.6rem;font-weight:600}
.gfacts{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:18px 0}.gfacts>div{background:var(--soft);border-radius:14px;padding:14px 16px;display:grid;gap:4px}.gfacts small{color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}.gfacts b{font-weight:600;font-size:.9375rem;line-height:1.45}.gfacts .tnum{color:var(--accent);white-space:nowrap}
.gcta a.btn{text-decoration:none}.gcta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:4px 0 18px}
.gfaq dt{font-weight:600;margin-top:14px}.gfaq dd{margin:4px 0 0;color:var(--muted)}
.gguides{margin-top:22px;display:grid;gap:10px}.gglinks{display:flex;flex-wrap:wrap;gap:8px}.gglinks a{padding:8px 14px;border-radius:999px;background:var(--soft);font-size:.8125rem;font-weight:500;color:var(--ink);text-decoration:none}.gglinks.pri a{background:var(--accent-soft);color:var(--accent);font-weight:600}.gtable{width:100%;border-collapse:collapse;font-size:.875rem}.gtable th,.gtable td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.gtable small{color:var(--muted)}.gtable .add{white-space:nowrap}
.gglinks a:hover{box-shadow:inset 0 0 0 1px var(--accent)}
.wsteps{margin:0;padding-left:18px;font-size:.875rem;display:grid;gap:4px}
.wprices summary{cursor:pointer;font-size:.8125rem;font-weight:600;color:var(--accent);margin-top:6px}
.wprices table{width:100%;border-collapse:collapse;font-size:.78rem;margin:8px 0}.wprices th,.wprices td{padding:6px 8px;border-bottom:1px solid var(--line);text-align:left}.wprices th{font-weight:600}
.wconsent{display:grid;gap:10px;padding:14px 16px;border-radius:14px;background:var(--soft)}
.wmb.compact .wconsent{background:var(--bg)}
.wc-h{display:flex;justify-content:space-between;align-items:center;gap:12px}
.wsign{display:grid;gap:6px;font-size:.8125rem;color:var(--muted)}
.wsign input{font:inherit;font-size:1rem;color:var(--ink);padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--bg)}
.wmb-go{display:grid;gap:6px;justify-items:end}
.wmb-go .wneed{text-align:right}
.lablist{display:flex;flex-wrap:wrap;gap:6px}
.cs-body{font-size:.875rem;line-height:1.6}.cs-body h4{margin:18px 0 6px;font-size:.9375rem}.cs-body p{margin:0 0 8px}.cs-body ul{margin:0 0 8px;padding-left:18px}.wmb-h h4{margin:0;font-family:var(--disp);font-size:1.25rem;font-weight:600}.wmb-h p{margin:0;color:var(--muted);font-size:.875rem}
.wmb-grid{display:grid;gap:16px}
@media(min-width:900px){.wmb-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 28px}}
.wmb-f{display:grid;gap:8px;align-content:start}
.wmb-f small{font-size:.78rem}
.wseg{display:flex;flex-wrap:wrap;gap:6px}
.wseg button{all:unset;cursor:pointer;padding:8px 12px;border-radius:10px;background:var(--soft);font-size:.8125rem;font-weight:500;box-shadow:inset 0 0 0 1px transparent}
.wseg button i{font-style:normal;font-size:.7rem;font-weight:700;color:var(--save);margin-left:4px}
.wseg button:hover{box-shadow:inset 0 0 0 1px var(--accent)}
.wseg button[aria-checked="true"]{background:var(--accent);color:#fff}.wseg button[aria-checked="true"] i{color:#fff}
.wseg button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.wseg.dose button{min-width:56px;text-align:center}
.wmb-sum{display:grid;gap:12px;padding-top:14px;border-top:1px solid var(--line)}
@media(min-width:900px){.wmb-sum{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px}}
.wmb-price{display:grid;gap:2px}.wmb-price b{font-family:var(--disp);font-size:1.6rem;font-weight:600;line-height:1.1}
.wmb-price small{color:var(--muted);font-size:.78rem;max-width:30ch}
.wmb-ok{font-size:.8125rem}
#wmAdd:disabled{opacity:.45;cursor:not-allowed;transform:none}
.rxnote{margin:4px 0 0;font-size:.75rem;color:var(--muted);padding:8px 10px;border-radius:10px;background:color-mix(in srgb,var(--accent) 7%,transparent)}

.wmb.compact{background:var(--soft);box-shadow:none;padding:16px}
.wmb.compact .wmb-grid{grid-template-columns:1fr!important;gap:12px}
.wmb.compact .wmb-sum{grid-template-columns:1fr!important}
.wmb.compact .wmb-h h4{font-size:1.05rem}
.wmb-cur{font-size:.8125rem;color:var(--ink)!important;background:color-mix(in srgb,var(--save) 10%,transparent);padding:6px 10px;border-radius:8px;justify-self:start}
.dose .wseg button{min-width:56px;text-align:center}
.tsres li.spres{background:color-mix(in srgb,var(--accent) 6%,transparent)}
.wmb.compact .wseg button{background:var(--bg)}
.wmb.compact .wseg button[aria-checked="true"]{background:var(--accent)}

/* pharmacy */
.phx{display:grid;gap:20px;align-items:start}
@media(min-width:900px){.phx{grid-template-columns:minmax(0,1fr) 360px;gap:28px}}
.phx-l{display:grid;gap:14px}
.phlist{display:grid}
.prow .pr small{display:block;font-size:.7rem;font-weight:400;color:var(--muted)}
.phempty{display:grid;gap:4px;padding:22px;border-radius:16px;background:var(--soft)}.phempty span{color:var(--muted);font-size:.9rem}
.phreq{background:var(--soft);border-radius:var(--r);padding:20px;display:grid;gap:12px}
.phreq h3{margin:0;font-size:1.15rem}.phreq p{margin:0}
.phreq .wseg button{background:var(--bg)}.phreq .wseg button[aria-checked="true"]{background:var(--accent)}
#phAdd:disabled{opacity:.45;cursor:not-allowed}

.phlic{display:flex;flex-wrap:wrap;gap:6px 18px;padding:12px 16px;border-radius:14px;background:var(--soft);font-size:.8125rem;color:var(--muted);margin-bottom:18px}
.phlic b{color:var(--ink);font-weight:600}
.phlic mark{background:var(--accent-soft);color:inherit;padding:0 4px;border-radius:4px}
.phreq select{width:100%}

/* licenses */
.lics{margin-top:clamp(36px,5vw,56px);display:grid;gap:14px;scroll-margin-top:90px}
.licgrid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.rtbl-wrap{overflow-x:auto;margin:12px 0 16px;border-radius:14px;box-shadow:0 0 0 1px var(--line)}
.rtbl{width:100%;border-collapse:collapse;font-size:.92rem;min-width:480px}
.rtbl th{text-align:left;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--soft);padding:10px 14px}
.rtbl td{padding:12px 14px;border-top:1px solid var(--line);vertical-align:top;line-height:1.5}
.rtbl td:first-child{width:58%}.rtbl .muted{font-size:.85rem}
.lic{background:var(--soft);border-radius:var(--r);padding:20px;display:grid;gap:8px;align-content:start}
.lic .lt{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}
.lic b{font-weight:600}
.lic dl{margin:0;display:grid;gap:4px}
.lic dl div{display:flex;justify-content:space-between;gap:12px;font-size:.875rem;padding:4px 0;border-bottom:1px solid var(--line)}
.lic dt{color:var(--muted)}.lic dd{margin:0;font-weight:600;text-align:right}
.lic small{color:var(--muted);font-size:.8rem;line-height:1.45}
.legal a{color:inherit;text-decoration:underline}
.phget{flex-wrap:nowrap}.phget button{flex:1;text-align:center;padding:9px 8px}

.birbadge{display:block;margin-top:16px;max-width:280px;border-radius:10px;overflow:hidden;box-shadow:0 0 0 1px var(--line)}
.birbadge img{display:block;width:100%;height:auto}
.lic.bir{margin-top:2px;max-width:560px}
.lic.bir img{width:100%;height:auto;border-radius:10px;display:block}

/* trust strip + licenses refresh */
.trust{margin-top:36px;padding:16px;border-radius:18px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}
.trust-l{display:flex;flex-wrap:wrap;gap:8px}
.tchip{display:flex;align-items:center;gap:10px;padding:8px 14px 8px 10px;border-radius:12px;background:var(--soft);color:var(--ink);text-decoration:none}
.tchip:hover{background:var(--tint)}
.tchip svg{width:22px;height:22px;color:var(--save);flex:none}
.tchip b{display:block;font-size:.8125rem;font-weight:600}
.tchip small{display:block;font-size:.72rem;color:var(--muted);font-variant-numeric:tabular-nums}
.trust .birbadge{display:block;margin:0;width:220px;flex:none;border-radius:10px;overflow:hidden;box-shadow:0 0 0 1px var(--line)}
.trust .birbadge img{display:block;width:100%;height:auto}
@media(max-width:700px){.trust-l{width:100%}.tchip{flex:1 1 100%}.trust .birbadge{width:100%;max-width:300px}}
.legal{margin-top:20px}
.licgrid{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))!important}
@media(min-width:760px){.licgrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
.lic b{min-height:0}
.lic{gap:10px}
.lic b{font-size:1rem;line-height:1.3;min-height:2.6em}
.lic dl div{flex-wrap:nowrap;align-items:baseline}.lic dt{flex:none}.lic dd{min-width:0}
.lic dd{font-size:.8125rem}
.lic.bir{max-width:none;margin:0}
.lic .birimg{display:block;border-radius:10px;overflow:hidden;box-shadow:0 0 0 1px var(--line)}
.lic .birimg img{display:block;width:100%;height:auto}
.lic.bir small{margin-top:-2px}
.tchip>span{display:grid;gap:1px;min-width:0}
.trust{display:grid!important;grid-template-columns:minmax(0,1fr) 220px;align-items:center}
.trust-l{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:8px}
.tchip{min-width:0}
@media(max-width:700px){.trust{grid-template-columns:1fr}.trust .birbadge{justify-self:start}}
.lic .birimg{max-width:300px}

/* trust strip v2: aligned list + badge */
.trust{grid-template-columns:minmax(0,1fr) auto!important;gap:24px!important;padding:18px 20px!important;background:var(--bg);align-items:center}
.trust-l{display:grid!important;grid-template-columns:none!important;gap:0!important}
.trust-h{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding-bottom:6px}
.trow{display:grid;grid-template-columns:20px 44px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 2px;border-top:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:.875rem}
.trow:hover b,.trow:hover span{color:var(--accent)}
.trow svg{width:18px;height:18px;color:var(--accent)}
.trow b{font-weight:700;font-size:.8125rem;letter-spacing:.02em}
.trow span{color:var(--muted)}
.trow code{font:600 .8125rem/1 var(--f);font-variant-numeric:tabular-nums;color:var(--ink);background:none;padding:0}
.trust .birbadge{width:260px!important;align-self:center}
@media(max-width:760px){.trust{grid-template-columns:1fr!important}.trow{grid-template-columns:20px 40px minmax(0,1fr)}.trow code{grid-column:3;font-size:.75rem;color:var(--muted)}.trust .birbadge{width:100%!important;max-width:320px}}

/* licenses v3: one clean table + BIR badge */
.lwrap{display:grid;gap:16px;align-items:start}
@media(min-width:980px){.lwrap{grid-template-columns:minmax(0,1fr) 320px;gap:24px}}
.ltable{background:var(--soft);border-radius:var(--r);padding:6px 20px}
.lrow{display:grid;grid-template-columns:52px minmax(0,1fr) 210px 110px;gap:16px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}
.lrow:first-child{border-top:0}
.lag{display:grid;place-items:center;height:30px;border-radius:8px;background:var(--bg);color:var(--accent);font-weight:700;font-size:.75rem;letter-spacing:.04em}
.lname b{display:block;font-weight:600;font-size:.9375rem}
.lname small{display:block;color:var(--muted);font-size:.78rem;line-height:1.4}
.lno,.lval{display:grid;gap:2px;font-weight:600;font-size:.875rem;font-variant-numeric:tabular-nums;text-align:right}
.lno small,.lval small{font-weight:500;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.lbir{background:var(--soft);border-radius:var(--r);padding:20px;display:grid;gap:10px}
.lbir .lt{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}
.lbir b{font-weight:600}
.lbir small{color:var(--muted);font-size:.8rem}
.lbir .birimg{display:block;border-radius:10px;overflow:hidden;box-shadow:0 0 0 1px var(--line);background:#fff}
.lbir .birimg img{display:block;width:100%;height:auto}
@media(max-width:700px){.ltable{padding:4px 14px}.lrow{grid-template-columns:44px minmax(0,1fr);gap:4px 12px}.lno,.lval{grid-column:2;text-align:left;display:flex;gap:6px;align-items:baseline}.lag{grid-row:span 3;align-self:start;margin-top:2px}}
/* footer trust: two columns of rows */
.trust-l{grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:28px!important}
.trust-h{grid-column:1/-1}
.trow:nth-child(2),.trow:nth-child(3){border-top:0}
@media(max-width:900px){.trust-l{grid-template-columns:1fr!important}.trow:nth-child(3){border-top:1px solid var(--line)}}

/* prescription upload */
.upl{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;border:1.5px dashed color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 5%,var(--bg));cursor:pointer;transition:background .2s}
.upl:hover{background:var(--accent-soft)}
.upl input{position:absolute;width:1px;height:1px;opacity:0}
.upl:focus-within{outline:2px solid var(--accent);outline-offset:2px}
.upl svg{width:24px;height:24px;color:var(--accent);flex:none}
.upl b{display:block;font-weight:600;font-size:.9rem;color:var(--ink)}.upl small{display:block;color:var(--muted);font-size:.75rem}
.rxlist{display:flex;flex-wrap:wrap;gap:8px}.rxlist:empty{display:none}
.rxf{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 6px;border-radius:10px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line);font-size:.8rem;max-width:100%;color:var(--ink);text-decoration:none}
.rxf img{width:36px;height:36px;object-fit:cover;border-radius:6px}
.rxf i{width:36px;height:36px;display:grid;place-items:center;border-radius:6px;background:var(--accent-soft);color:var(--accent);font-style:normal;font-weight:700;font-size:.65rem}
.rxf span{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rxf button{all:unset;cursor:pointer;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;color:var(--muted)}
.rxf button:hover{background:var(--soft);color:var(--ink)}
.rxdone{margin:12px 0;padding:14px;border-radius:14px;background:var(--soft);display:grid;gap:8px}.rxdone p{margin:0;font-size:.85rem}
#phUpl{display:grid;gap:8px;margin-top:8px}
.wrxup{display:grid;gap:8px;margin-top:10px}
.waddr{margin-top:6px;width:100%;box-sizing:border-box;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:.9rem}.waddr:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}
.wneed{color:var(--muted)}

/* reels */
.reels{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.reel{position:relative;margin:0;aspect-ratio:9/16;border-radius:20px;overflow:hidden;background:var(--navy);color:#fff}
.reel video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.reel figcaption{position:absolute;left:0;right:0;bottom:0;padding:40px 14px 14px;background:linear-gradient(180deg,transparent,rgba(8,20,32,.75));display:grid;gap:2px}
.reel figcaption b{font-weight:600;font-size:.95rem}
.reel figcaption a{color:#fff;opacity:.85;font-size:.78rem;text-decoration:underline}
.rplay{all:unset;cursor:pointer;position:absolute;top:12px;right:12px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.9);color:var(--navy)}
.rplay svg{width:18px;height:18px}
.rplay.on svg path{d:path("M7 5h4v14H7zM13 5h4v14h-4z")}
.rplay:focus-visible{outline:2px solid #fff;outline-offset:2px}
.reel.follow{display:grid;align-content:end;gap:8px;padding:20px;text-decoration:none;background:linear-gradient(160deg,var(--navy),var(--navy2))}
.reel.follow svg{width:34px;height:34px;margin-bottom:auto}
.reel.follow b{font-size:1.15rem;font-weight:600}.reel.follow span{opacity:.8;font-size:.875rem}
.reel.follow em{font-style:normal;font-weight:600;font-size:.875rem;justify-self:start;padding:8px 14px;border-radius:999px;background:#fff;color:var(--navy)}
@media(max-width:560px){.reels{grid-auto-flow:column;grid-auto-columns:62%;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}.reel{scroll-snap-align:start}}
/* reels carousel */
.reelwrap{position:relative}
.reels{display:grid!important;grid-auto-flow:column!important;grid-auto-columns:calc((100% - 36px)/4)!important;grid-template-columns:none!important;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth;gap:12px}
.reels::-webkit-scrollbar{display:none}
.reel{scroll-snap-align:start;text-decoration:none}
.reel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.reel figcaption span{opacity:.85;font-size:.78rem}
a.reel:hover img{transform:scale(1.03)}a.reel img{transition:transform .4s}
.rnav{all:unset;cursor:pointer;position:absolute;top:50%;z-index:2;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--bg);color:var(--ink);box-shadow:0 6px 20px rgba(20,33,61,.18)}
.rnav svg{width:20px;height:20px}.rnav.prev{left:-18px}.rnav.next{right:-18px}
.rnav:disabled{opacity:0;pointer-events:none}
.rnav:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:900px){.reels{grid-auto-columns:calc((100% - 24px)/3)!important}}
@media(max-width:560px){.reels{grid-auto-columns:64%!important}.rnav{display:none}}

/* reels v2: one card design */
.reel{border-radius:18px;box-shadow:0 10px 30px -18px rgba(11,27,43,.5)}
.reel figcaption{padding:56px 14px 14px;gap:8px;background:linear-gradient(180deg,transparent,rgba(8,20,32,.82) 55%)}
.reel figcaption b{font-size:.95rem;line-height:1.3}
.reel .rplay{top:50%;left:50%;right:auto;transform:translate(-50%,-50%);width:56px;height:56px}
.reel .rplay svg{width:22px;height:22px;margin-left:2px}
.reel .rplay.on{opacity:0}.reel:hover .rplay.on{opacity:1}
.rig{display:inline-flex;align-items:center;gap:6px;justify-self:start;padding:7px 12px;border-radius:999px;background:#fff;color:#0B1B2B!important;font-size:.78rem!important;font-weight:600;text-decoration:none!important;opacity:1!important}
.rig svg{width:14px;height:14px}
a.reel:hover .rig{background:var(--accent);color:#fff!important}
.reel video{background:#0B1B2B}

/* Instagram profile card */
.reel.igp{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--bg);color:var(--ink);box-shadow:0 10px 30px -18px rgba(11,27,43,.5),inset 0 0 0 1px var(--line)}
.igp-top{display:flex;align-items:center;gap:12px}
.igp-av{width:58px;height:58px;border-radius:50%;padding:3px;background:conic-gradient(from 210deg,#FEDA75,#FA7E1E,#D62976,#962FBF,#4F5BD5,#FEDA75);flex:none}
.igp-av img{position:static!important;width:100%;height:100%;border-radius:50%;border:3px solid var(--bg);object-fit:cover;transform:none!important}
.igp-id{display:grid;min-width:0}.igp-id b{font-weight:700;font-size:.95rem}.igp-id span{font-size:.8rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.igp-bio{margin:0;font-size:.8rem;line-height:1.45;color:var(--ink)}.igp-bio span{display:block;color:var(--muted)}
.igp-btn{display:block;text-align:center;padding:9px;border-radius:10px;background:#0095F6;color:#fff;font-weight:600;font-size:.85rem}
a.igp:hover .igp-btn{background:#1877F2}
.igp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin:auto -16px -16px;flex:1;align-content:end}
.igp-grid img{position:static!important;width:100%;aspect-ratio:1;object-fit:cover;transform:none!important}

.wnote{margin:8px 0 0;padding:10px 12px;border-radius:12px;background:var(--soft);font-size:.86rem;line-height:1.45}.wnote b{font-weight:600}
.cok{display:grid;gap:4px;padding:12px 14px;border-radius:14px;background:var(--soft)}.cok b{font-weight:600}.linkbtn{all:unset;cursor:pointer;color:var(--accent);font-weight:600;justify-self:start}
.paybill{margin:0;padding:12px 14px;border-radius:14px;background:var(--soft)}
.paych{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}
.payfine{display:grid;gap:10px;margin-top:4px;font-size:.875rem;line-height:1.5;color:var(--muted)}
.payfine p{margin:0}.pf-sec{display:flex;gap:10px;align-items:flex-start;color:var(--ink)}.pf-sec svg{width:18px;height:18px;flex:none;margin-top:2px;color:var(--accent)}
.pf-pol{background:var(--soft);border-radius:14px;padding:12px 14px;display:grid;gap:6px}.pf-pol>b{color:var(--ink);font-size:.875rem}
.pf-pol ul{list-style:none;margin:0;padding:0;display:grid}.pf-pol li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-top:1px solid var(--line)}.pf-pol li:first-child{border-top:0}
.pf-pol li span:last-child{color:var(--ink);font-weight:600;text-align:right}.pf-pol a{color:var(--accent);font-weight:600;font-size:.8125rem;text-decoration:none}
@media(max-width:520px){.pf-pol li{flex-direction:column;gap:0}.pf-pol li span:last-child{text-align:left}}
.pm-eyebrow{display:block;font-size:.8125rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin:6px 0 4px}
/* keep the dark summary card readable in dark mode: restore light-mode colour tokens inside it */
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .calc-out{--bg:#ffffff;--ink:#14263f;--muted:#5b6577;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}:root:not([data-theme="light"]) .calc-out .btn{background:#5b93f0;color:#0b1b2b}}
:root[data-theme="dark"] .calc-out{--bg:#ffffff;--ink:#14263f;--muted:#5b6577;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}:root[data-theme="dark"] .calc-out .btn{background:#5b93f0;color:#0b1b2b}
.pm-hero{display:grid;gap:28px;align-items:center}
@media(min-width:960px){.pm-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:48px}}
.pm-art{position:relative;margin:0;border-radius:28px;overflow:hidden;box-shadow:0 1px 0 var(--line),0 30px 60px -40px rgba(11,27,43,.55);aspect-ratio:16/9;background:#0c5bd0}
.pm-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 55%}
.pm-eta{position:absolute;left:16px;bottom:16px;z-index:1;display:flex;align-items:center;gap:12px;padding:12px 16px 12px 12px;border-radius:18px;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 14px 34px -16px rgba(11,27,43,.55);color:#0b1b2b;max-width:calc(100% - 32px)}
.pm-eta b{display:block;font-size:.9375rem;line-height:1.25}.pm-eta small{display:block;font-size:.78rem;color:#5b6577;margin-top:2px}
.pm-pin{width:40px;height:40px;flex:none;border-radius:12px;background:#e8f0fe;color:#065DD4;display:grid;place-items:center}.pm-pin svg{width:26px;height:26px}
.pm-tags{position:absolute;top:14px;right:14px;z-index:1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:70%}.pm-tags span{font-size:.75rem;font-weight:600;color:#fff;padding:5px 10px;border-radius:999px;background:rgba(11,27,43,.45);border:1px solid rgba(255,255,255,.25);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
@media(max-width:520px){.pm-tags{display:none}.pm-eta{left:10px;bottom:10px;padding:10px 12px 10px 10px}.pm-eta b{font-size:.875rem}}
.pm-chips{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.pm-chips li{font-size:.8125rem;font-weight:500;padding:7px 12px;border-radius:999px;background:var(--soft);color:var(--ink)}
.pm-chips li:last-child{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);font-weight:600}
.pm-logo{display:block;height:clamp(84px,13vw,138px);width:auto;margin:4px 0 2px}.pm-d{display:none}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pm-l{display:none}:root:not([data-theme="light"]) .pm-d{display:block}}
:root[data-theme="dark"] .pm-l{display:none}:root[data-theme="dark"] .pm-d{display:block}
.pm-lockup{display:inline-flex;flex-direction:column;max-width:100%}.pm-by{display:block;width:100%;height:auto;margin-top:clamp(4px,.8vw,8px);color:var(--ink);font-family:var(--disp)}
.pm-name{margin:0;font-size:clamp(3rem,8vw,5rem);line-height:.95;letter-spacing:-.045em}.pm-name>span:not(.sr){color:var(--accent)}
.pm-tag{margin:10px 0 0;font-family:var(--disp);font-size:clamp(1.4rem,3vw,2rem);font-weight:600;letter-spacing:-.02em;color:var(--ink)}
.hssum>.hsitems{display:grid;justify-content:stretch;gap:2px;padding-bottom:10px;border-bottom:1px solid color-mix(in srgb,var(--bg) 18%,transparent);max-height:300px;overflow:auto}
.hssum .hsitems .hsit{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;background:transparent;border-radius:0;padding:6px 0;border:0;font-size:.9375rem}
.hssum .hsitems .hsit .rmx{color:color-mix(in srgb,var(--bg) 60%,var(--ink));width:26px;height:26px}.hssum .hsitems .hsit .rmx:hover{background:color-mix(in srgb,var(--bg) 14%,transparent);color:var(--bg)}
.hssum .hsitems .hsit small{color:#ffb4a8}.hssum .hsitems .hsit.bad{box-shadow:none}
.hsempty{margin:0;padding:10px 0;opacity:.7;font-size:.9375rem;border-bottom:1px solid color-mix(in srgb,var(--bg) 18%,transparent)}
.calc-out{align-content:start}
.hstests{display:grid;gap:12px}.hsq{position:relative}.hsq .tsbox{background:var(--bg)}.hsq .tsbox input{border:0;background:transparent;padding:13px 0;font:inherit;color:var(--ink);width:100%;outline:0}.hsq .tsres{top:calc(100% + 6px)}.tsres li.none{cursor:default;color:var(--muted)}
.hslist{display:grid;gap:6px}.hsit{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;background:var(--bg);border-radius:12px;padding:10px 8px 10px 14px}.hsit small{display:block;color:var(--bad,#c2412d);font-size:.78rem}.hsit.bad{box-shadow:inset 0 0 0 1px var(--bad,#c2412d)}
.hsit .rmx{all:unset;cursor:pointer;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;color:var(--muted)}.hsit .rmx:hover{background:var(--soft);color:var(--ink)}
.hssum{display:grid;gap:8px;font-size:.9375rem}.hssum>div{display:flex;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid color-mix(in srgb,var(--bg) 18%,transparent)}.hssum small{display:block;font-size:.78rem;opacity:.7}
.hsrow{display:flex;justify-content:space-between;align-items:center;gap:14px;cursor:default}.hsrow>b{flex:none;font-size:1rem}.hsrow.on{box-shadow:inset 0 0 0 2px var(--accent)}
.hsfee{display:grid;gap:2px;min-height:52px;align-content:center;padding:10px 16px;border-radius:14px;background:var(--soft)}.hsfee b{font-size:1rem;color:var(--ink)}.hsfee small{font-size:.8125rem;color:var(--muted)}.hsfee small.warnt{color:var(--bad,#c2412d);margin-top:4px}
.paych .pc{display:grid;gap:2px;padding:12px 14px;border-radius:14px;box-shadow:inset 0 0 0 1px var(--line);cursor:pointer}
.paych .pc input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.paych .pc.on{box-shadow:inset 0 0 0 2px var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--bg))}
.paych .pc b{font-weight:600;font-size:.92rem}.paych .pc small{color:var(--muted);font-size:.8rem}
.paych .pc:focus-within{outline:2px solid var(--accent);outline-offset:2px}
.paynow{display:grid;gap:6px;margin-top:10px;justify-items:start}.paynow small{color:var(--muted);font-size:.8rem}
.payback{position:fixed;left:50%;top:16px;transform:translateX(-50%);z-index:90;display:flex;gap:12px;align-items:flex-start;max-width:min(560px,calc(100% - 32px));padding:14px 16px;border-radius:16px;background:var(--bg);box-shadow:0 20px 50px -18px rgba(11,27,43,.45),inset 0 0 0 1px var(--line)}
.payback.ok{box-shadow:0 20px 50px -18px rgba(11,27,43,.45),inset 0 0 0 2px #1f9d63}.payback div{display:grid;gap:2px}.payback span{color:var(--muted);font-size:.9rem}
.payback button{all:unset;cursor:pointer;font-size:1.3rem;line-height:1;padding:0 4px}
/* booking: for someone else, corporate, sent state */
.forother{padding:12px 14px;border-radius:14px;background:var(--soft);margin-bottom:12px}
.forother small{display:block;font-weight:400}
#qbookerF{margin-bottom:14px}
.roster{margin-top:4px}
.sent:empty{display:none}
.sent{display:flex;gap:14px;align-items:flex-start;padding:16px;border-radius:16px;margin-bottom:14px}
.sent.wait{background:var(--soft);align-items:center}
.sent.ok{background:color-mix(in srgb,#1f9d63 10%,var(--bg));box-shadow:inset 0 0 0 1px color-mix(in srgb,#1f9d63 35%,transparent)}
.sent.err{background:color-mix(in srgb,#d0632a 10%,var(--bg));box-shadow:inset 0 0 0 1px color-mix(in srgb,#d0632a 35%,transparent)}
.sent h3{margin:0 0 4px}.sent p{margin:0 0 4px}
.sent .ref{font-family:ui-monospace,Menlo,monospace;font-size:1.05em;letter-spacing:.04em}
.sent-mark{width:40px;height:40px;border-radius:50%;background:#1f9d63;color:#fff;display:grid;place-items:center;flex:none}.sent-mark svg{width:22px;height:22px}
.sent .spin{width:20px;height:20px;border-radius:50%;border:2.5px solid var(--line);border-top-color:var(--accent);animation:tmcSpin .8s linear infinite;flex:none}
@keyframes tmcSpin{to{transform:rotate(360deg)}}
.sentdet{margin-bottom:12px}.sentdet summary{cursor:pointer;color:var(--accent);font-weight:500;margin-bottom:8px}

.btn[disabled],.btn:disabled{opacity:.45;pointer-events:none;cursor:not-allowed}
.onote{font-size:.85rem;line-height:1.45;padding:10px 12px;border-radius:12px;background:var(--soft);margin:4px 0 2px}
.onote.warn{background:color-mix(in srgb,#d0632a 12%,var(--bg));box-shadow:inset 0 0 0 1px color-mix(in srgb,#d0632a 35%,transparent)}
.linkbtn{all:unset;cursor:pointer;color:var(--accent);font-weight:600;text-decoration:underline}

/* request sent v2 */
.sent.v2{display:grid;gap:16px;padding:22px;border-radius:20px;background:var(--bg);box-shadow:0 0 0 1px var(--line),0 18px 40px -28px rgba(11,27,43,.35)}
.sv-head{display:flex;gap:14px;align-items:flex-start}
.sv-head h3{font-size:1.35rem;margin:2px 0 4px}
.sent.v2 .sent-mark{width:44px;height:44px}
.sv-ref{display:flex;align-items:center;gap:8px;margin:0;color:var(--muted)}
.refchip{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font:600 .95rem/1 ui-monospace,Menlo,monospace;letter-spacing:.05em;color:var(--ink);background:var(--soft);padding:7px 10px;border-radius:10px}
.refchip svg{width:14px;height:14px;opacity:.6}.refchip:hover{box-shadow:inset 0 0 0 1px var(--line)}.refchip:focus-visible{outline:2px solid var(--accent)}
.sv-mail{margin:6px 0 0;color:var(--muted);font-size:.88rem}
.sv-sum{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:2px;margin:0;border-radius:14px;overflow:hidden;background:var(--line)}
.sv-sum div{background:var(--soft);padding:10px 14px}.sv-sum dt{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.sv-sum dd{margin:2px 0 0;font-weight:500;font-size:.92rem}
.sv-pay{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px 16px;padding:16px 18px;border-radius:16px;background:color-mix(in srgb,var(--accent) 8%,var(--bg));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent)}
.sv-pay small{display:block;color:var(--muted);font-size:.8rem}.sv-pay b{display:block;font-weight:700;font-size:1.65rem;line-height:1.15;letter-spacing:-.01em}
.sv-pay .btn{padding:14px 22px;font-size:1rem}.sv-pay .btn svg{width:18px;height:18px}
.sv-methods{grid-column:1/-1;font-size:.78rem;color:var(--muted)}
.sv-note{margin:0;padding:12px 14px;border-radius:12px;background:var(--soft);font-size:.9rem}
.sv-steps{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.sv-steps li{display:flex;gap:12px;align-items:flex-start}
.sv-steps .n{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;flex:none;font-size:.8rem;font-weight:600;background:var(--soft);color:var(--accent)}
.sv-steps b{display:block;font-weight:600;font-size:.95rem}.sv-steps span{color:var(--muted);font-size:.86rem}
.sv-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding-top:14px;border-top:1px solid var(--line);font-size:.86rem;color:var(--muted)}
.sv-foot a{color:var(--accent);font-weight:500}
@media(max-width:560px){.sv-pay{grid-template-columns:1fr}.sv-pay .btn{justify-content:center}.sent.v2{padding:18px}}
.reel.igembed{aspect-ratio:auto;background:var(--bg);overflow:auto;color:var(--ink)}
.reel.igembed iframe{border-radius:20px!important;min-width:0!important}
.pkgbar .seg{background:var(--soft);box-shadow:inset 0 0 0 1px var(--line)}
.pkgbar .seg button{color:var(--muted);font-weight:600}
.pkgbar .seg button:hover{color:var(--ink)}
.pkgbar .seg button[aria-pressed="true"]{background:var(--accent);color:#fff;box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 35%,transparent)}
a.hero-note{text-decoration:none;color:inherit;cursor:pointer;transition:transform .2s,box-shadow .2s}
a.hero-note:hover{transform:translateY(-3px);box-shadow:0 18px 40px -12px rgba(20,33,61,.35)}
a.hero-note:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.hn-go{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-size:.8125rem;font-weight:600;color:var(--accent)}
.hn-go svg{width:16px;height:16px;transition:transform .2s}a.hero-note:hover .hn-go svg{transform:translateX(3px)}
/* hero: dark mode */
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hero-art{background:#0E1C2E}}
:root[data-theme="dark"] .hero-art{background:#0E1C2E}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hero-art .hero-photo{opacity:.8;filter:blur(3px) saturate(.85) brightness(.55)}}
:root[data-theme="dark"] .hero-art .hero-photo{opacity:.8;filter:blur(3px) saturate(.85) brightness(.55)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hero-art::before{z-index:1;background:radial-gradient(60% 55% at 50% 38%,rgba(94,162,255,.20),transparent 70%),linear-gradient(180deg,rgba(11,22,34,.10) 0%,rgba(11,22,34,.35) 55%,rgba(11,22,34,.88) 100%)}}
:root[data-theme="dark"] .hero-art::before{z-index:1;background:radial-gradient(60% 55% at 50% 38%,rgba(94,162,255,.20),transparent 70%),linear-gradient(180deg,rgba(11,22,34,.10) 0%,rgba(11,22,34,.35) 55%,rgba(11,22,34,.88) 100%)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hero-art .p1,:root:not([data-theme="light"]) .hero-art .p2{z-index:2;filter:drop-shadow(0 18px 30px rgba(0,0,0,.45))}}
:root[data-theme="dark"] .hero-art .p1,:root[data-theme="dark"] .hero-art .p2{z-index:2;filter:drop-shadow(0 18px 30px rgba(0,0,0,.45))}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hero-art .p1{z-index:3}}
:root[data-theme="dark"] .hero-art .p1{z-index:3}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hero-art .hero-note{z-index:4;background:rgba(15,28,44,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 20px 40px -16px rgba(0,0,0,.6)}}
:root[data-theme="dark"] .hero-art .hero-note{z-index:4;background:rgba(15,28,44,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 20px 40px -16px rgba(0,0,0,.6)}
.motion .fu{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1)}
.motion .fu.in{opacity:1;transform:none}

/* richer dark hero */
:root[data-theme="dark"] .hero-panel{background:radial-gradient(80% 70% at 85% 0%,rgba(23,102,214,.35),transparent 60%),radial-gradient(60% 60% at 0% 100%,rgba(34,178,238,.18),transparent 60%),linear-gradient(135deg,#0D1B2E,#0A1626)!important}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hero-panel{background:radial-gradient(80% 70% at 85% 0%,rgba(23,102,214,.35),transparent 60%),radial-gradient(60% 60% at 0% 100%,rgba(34,178,238,.18),transparent 60%),linear-gradient(135deg,#0D1B2E,#0A1626)!important}}
:root[data-theme="dark"] .hero-art{background:#0F2440!important}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hero-art{background:#0F2440!important}}
:root[data-theme="dark"] .hero-art .hero-photo{opacity:1!important;filter:blur(2.5px) saturate(1.15) brightness(.62) contrast(1.05)!important}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hero-art .hero-photo{opacity:1!important;filter:blur(2.5px) saturate(1.15) brightness(.62) contrast(1.05)!important}}
:root[data-theme="dark"] .hero-art::before{z-index:1!important;background:radial-gradient(55% 50% at 50% 42%,rgba(94,162,255,.32),transparent 70%),linear-gradient(160deg,rgba(23,102,214,.35),rgba(10,22,38,.15) 45%,rgba(10,22,38,.85) 100%)!important}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hero-art::before{z-index:1!important;background:radial-gradient(55% 50% at 50% 42%,rgba(94,162,255,.32),transparent 70%),linear-gradient(160deg,rgba(23,102,214,.35),rgba(10,22,38,.15) 45%,rgba(10,22,38,.85) 100%)!important}}
.mnth{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0 4px;border-top:1px solid var(--line);margin-top:8px}
.mnth>span{font-size:.875rem;color:var(--muted)}
.mnth>div{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:var(--soft)}
.mnth button{all:unset;cursor:pointer;padding:7px 14px;border-radius:999px;font-size:.8125rem;font-weight:500;color:var(--muted)}
.mnth button[aria-pressed="true"]{background:var(--accent);color:#fff}
.mnth button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.theme button{padding:7px 14px}

/* motion polish: staggered cards + hero entrance (respects reduced motion via .motion) */
@keyframes tmcUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes tmcRise{from{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}
.motion .fu.in :is(.concerns,.bento,.progs,.deals,.panels,.posts,.pkgs,.stats,.ltable,.licgrid,.reels)>*{animation:tmcUp .55s cubic-bezier(.2,.7,.2,1) both}
.motion .fu.in :is(.concerns,.bento,.progs,.deals,.panels,.posts,.pkgs,.stats,.ltable,.licgrid,.reels)>*:nth-child(2){animation-delay:.06s}
.motion .fu.in :is(.concerns,.bento,.progs,.deals,.panels,.posts,.pkgs,.stats,.ltable,.licgrid,.reels)>*:nth-child(3){animation-delay:.12s}
.motion .fu.in :is(.concerns,.bento,.progs,.deals,.panels,.posts,.pkgs,.stats,.ltable,.licgrid,.reels)>*:nth-child(4){animation-delay:.18s}
.motion .fu.in :is(.concerns,.bento,.progs,.deals,.panels,.posts,.pkgs,.stats,.ltable,.licgrid,.reels)>*:nth-child(5){animation-delay:.24s}
.motion .fu.in :is(.concerns,.bento,.progs,.deals,.panels,.posts,.pkgs,.stats,.ltable,.licgrid,.reels)>*:nth-child(n+6){animation-delay:.3s}
.motion .hero-copy>*{animation:tmcUp .7s cubic-bezier(.2,.7,.2,1) both}
.motion .hero-copy>*:nth-child(2){animation-delay:.08s}.motion .hero-copy>*:nth-child(3){animation-delay:.16s}.motion .hero-copy>*:nth-child(4){animation-delay:.24s}
.motion .hero-art .p1{animation:tmcRise .9s .15s cubic-bezier(.2,.7,.2,1) both}
.motion .hero-art .p2{animation:tmcRise .9s .3s cubic-bezier(.2,.7,.2,1) both}
.motion .hero-art .hero-note{animation:tmcUp .7s .55s cubic-bezier(.2,.7,.2,1) both}

/* performance: no live blurs (pre-blurred image instead), solid glass surfaces, skip offscreen rendering */
.hero-art .hero-photo{filter:none!important;transform:none!important}
:root[data-theme="dark"] .hero-art .hero-photo{filter:saturate(1.15) brightness(.62)!important}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hero-art .hero-photo{filter:saturate(1.15) brightness(.62)!important}}
:not(dialog):not(header.nav):not(.hero-note):not(.bento figcaption):not(.vchip):not(.pin):not(.vcard):not(.stayimgs figcaption):not(.chatfab):not(.themefab):not(.rplay):not(.rnav):not(.mbar):not(.btn.vghost):not(.vsoc a){-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
header.nav{background:color-mix(in srgb,var(--bg) 97%,transparent)!important}
.hero-note,.bento figcaption,.vchip,.pin,.visit .vcard{background:color-mix(in srgb,var(--bg) 96%,transparent)!important}
:root[data-theme="dark"] .hero-art .hero-note{background:rgba(15,28,44,.96)!important}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hero-art .hero-note{background:rgba(15,28,44,.96)!important}}
.view>section.sec:not(:first-of-type),footer.site{content-visibility:auto;contain-intrinsic-size:auto 700px}
.mq-track{will-change:transform}

/* selective iPhone-style frosted glass: header + hero price card only */
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  header.nav{background:color-mix(in srgb,var(--bg) 72%,transparent)!important;-webkit-backdrop-filter:saturate(1.8) blur(14px)!important;backdrop-filter:saturate(1.8) blur(14px)!important;box-shadow:0 1px 0 color-mix(in srgb,var(--ink) 8%,transparent)}
  .hero-art .hero-note{background:color-mix(in srgb,var(--bg) 62%,transparent)!important;-webkit-backdrop-filter:saturate(1.8) blur(18px)!important;backdrop-filter:saturate(1.8) blur(18px)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.55),0 20px 40px -18px rgba(20,33,61,.35)!important}
  :root[data-theme="dark"] .hero-art .hero-note{background:rgba(15,28,44,.55)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12),0 20px 40px -16px rgba(0,0,0,.6)!important}
  :root[data-theme="dark"] header.nav{background:rgba(7,17,28,.72)!important}
}
@media (prefers-color-scheme:dark){@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  :root:not([data-theme="light"]) .hero-art .hero-note{background:rgba(15,28,44,.55)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12),0 20px 40px -16px rgba(0,0,0,.6)!important}
  :root:not([data-theme="light"]) header.nav{background:rgba(7,17,28,.72)!important}}}
@media (prefers-reduced-transparency:reduce){header.nav,.hero-art .hero-note{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:var(--bg)!important}}

/* real glass: translucent gradient, strong blur, light edge + specular sheen */
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .hero-art .hero-note{background:linear-gradient(135deg,rgba(255,255,255,.42),rgba(255,255,255,.14))!important;-webkit-backdrop-filter:blur(22px) saturate(1.9) brightness(1.05)!important;backdrop-filter:blur(22px) saturate(1.9) brightness(1.05)!important;border:1px solid rgba(255,255,255,.55);box-shadow:inset 0 1px 0 rgba(255,255,255,.75),inset 0 -1px 0 rgba(255,255,255,.18),0 24px 48px -20px rgba(20,33,61,.45)!important;overflow:hidden;isolation:isolate}
  .hero-art .hero-note::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(115deg,rgba(255,255,255,.55) 0%,rgba(255,255,255,0) 38%),radial-gradient(120% 80% at 0% 0%,rgba(255,255,255,.35),transparent 55%)}
  :root[data-theme="dark"] .hero-art .hero-note{background:linear-gradient(135deg,rgba(28,46,72,.62),rgba(12,24,40,.48))!important;border-color:rgba(255,255,255,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 24px 48px -16px rgba(0,0,0,.65)!important}
  :root[data-theme="dark"] .hero-art .hero-note::before{background:linear-gradient(115deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,0) 40%)}
  header.nav{background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 70%,transparent),color-mix(in srgb,var(--bg) 52%,transparent))!important;-webkit-backdrop-filter:blur(20px) saturate(1.9)!important;backdrop-filter:blur(20px) saturate(1.9)!important;box-shadow:inset 0 -1px 0 rgba(255,255,255,.35),0 1px 0 color-mix(in srgb,var(--ink) 7%,transparent)!important}
  :root[data-theme="dark"] header.nav{background:linear-gradient(180deg,rgba(7,17,28,.66),rgba(7,17,28,.46))!important;box-shadow:inset 0 -1px 0 rgba(255,255,255,.08)!important}
}
@media (prefers-color-scheme:dark){@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  :root:not([data-theme="light"]) .hero-art .hero-note{background:linear-gradient(135deg,rgba(28,46,72,.62),rgba(12,24,40,.48))!important;border-color:rgba(255,255,255,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 24px 48px -16px rgba(0,0,0,.65)!important}
  :root:not([data-theme="light"]) .hero-art .hero-note::before{background:linear-gradient(115deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,0) 40%)}
  :root:not([data-theme="light"]) header.nav{background:linear-gradient(180deg,rgba(7,17,28,.66),rgba(7,17,28,.46))!important;box-shadow:inset 0 -1px 0 rgba(255,255,255,.08)!important}}}
@media (prefers-reduced-transparency:reduce){header.nav,.hero-art .hero-note{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:var(--bg)!important}.hero-art .hero-note::before{display:none}}

/* glass on other photo overlays (static, so cheap) */
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .bento figcaption,.vchip,.pin,.visit .vcard,.stayimgs figcaption{background:linear-gradient(135deg,rgba(255,255,255,.5),rgba(255,255,255,.2))!important;-webkit-backdrop-filter:blur(16px) saturate(1.8)!important;backdrop-filter:blur(16px) saturate(1.8)!important;border:1px solid rgba(255,255,255,.55);box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 10px 24px -12px rgba(20,33,61,.35)!important;color:#0B1B2B!important}
  :root[data-theme="dark"] :is(.bento figcaption,.vchip,.pin,.visit .vcard,.stayimgs figcaption){background:linear-gradient(135deg,rgba(28,46,72,.62),rgba(12,24,40,.46))!important;border-color:rgba(255,255,255,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 12px 28px -12px rgba(0,0,0,.6)!important;color:#EDF2F7!important}
}
@media (prefers-color-scheme:dark){@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  :root:not([data-theme="light"]) :is(.bento figcaption,.vchip,.pin,.visit .vcard,.stayimgs figcaption){background:linear-gradient(135deg,rgba(28,46,72,.62),rgba(12,24,40,.46))!important;border-color:rgba(255,255,255,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 12px 28px -12px rgba(0,0,0,.6)!important;color:#EDF2F7!important}}}
@media (prefers-reduced-transparency:reduce){.bento figcaption,.vchip,.pin,.visit .vcard,.stayimgs figcaption{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:var(--bg)!important}}

/* glass on floating & on-photo controls (actions stay solid) */
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  :is(.chatfab,.themefab,.rplay,.rnav){background:linear-gradient(135deg,rgba(255,255,255,.62),rgba(255,255,255,.32))!important;-webkit-backdrop-filter:blur(16px) saturate(1.8)!important;backdrop-filter:blur(16px) saturate(1.8)!important;border:1px solid rgba(255,255,255,.6)!important;color:#0B1B2B!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 12px 30px -12px rgba(20,33,61,.35)!important}
  :root[data-theme="dark"] :is(.chatfab,.themefab,.rplay,.rnav){background:linear-gradient(135deg,rgba(40,60,90,.55),rgba(14,26,44,.45))!important;border-color:rgba(255,255,255,.16)!important;color:#EDF2F7!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 12px 30px -12px rgba(0,0,0,.6)!important}
  .btn.vghost,.vsoc a{background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.06))!important;-webkit-backdrop-filter:blur(12px) saturate(1.6)!important;backdrop-filter:blur(12px) saturate(1.6)!important;border:1px solid rgba(255,255,255,.22)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.25)!important;color:#fff!important}
  .btn.vghost:hover,.vsoc a:hover{background:linear-gradient(135deg,rgba(255,255,255,.26),rgba(255,255,255,.12))!important}
  .mbar{background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 62%,transparent),color-mix(in srgb,var(--bg) 78%,transparent))!important;-webkit-backdrop-filter:blur(14px) saturate(1.8)!important;backdrop-filter:blur(14px) saturate(1.8)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 -8px 24px -16px rgba(20,33,61,.3)!important;border-top:0!important}
  :root[data-theme="dark"] .mbar{background:linear-gradient(180deg,rgba(7,17,28,.6),rgba(7,17,28,.78))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important}
  .mbar .btn.ghost{background:linear-gradient(135deg,rgba(255,255,255,.62),rgba(255,255,255,.32))!important;-webkit-backdrop-filter:blur(16px) saturate(1.8)!important;backdrop-filter:blur(16px) saturate(1.8)!important;border:1px solid rgba(255,255,255,.6)!important;color:#0B1B2B!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 12px 30px -12px rgba(20,33,61,.35)!important}
  :root[data-theme="dark"] .mbar .btn.ghost{background:linear-gradient(135deg,rgba(40,60,90,.55),rgba(14,26,44,.45))!important;border-color:rgba(255,255,255,.16)!important;color:#EDF2F7!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 12px 30px -12px rgba(0,0,0,.6)!important}
}
@media (prefers-color-scheme:dark){@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  :root:not([data-theme="light"]) :is(.chatfab,.themefab,.rplay,.rnav),:root:not([data-theme="light"]) .mbar .btn.ghost{background:linear-gradient(135deg,rgba(40,60,90,.55),rgba(14,26,44,.45))!important;border-color:rgba(255,255,255,.16)!important;color:#EDF2F7!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 12px 30px -12px rgba(0,0,0,.6)!important}
  :root:not([data-theme="light"]) .mbar{background:linear-gradient(180deg,rgba(7,17,28,.6),rgba(7,17,28,.78))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important}}}
.rnav:disabled{opacity:0!important}
@media (prefers-reduced-transparency:reduce){:is(.chatfab,.themefab,.rplay,.rnav),.mbar,.btn.vghost,.vsoc a{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}:is(.chatfab,.themefab,.rplay,.rnav){background:var(--bg)!important}.mbar{background:var(--bg)!important}}

/* friendlier booking */
.qpick{display:grid;gap:8px}
.qchips{display:flex;flex-wrap:wrap;gap:8px}
.qc{all:unset;cursor:pointer;padding:9px 14px;border-radius:999px;background:var(--soft);font-size:.875rem;font-weight:500;box-shadow:inset 0 0 0 1px var(--line)}
.qc small{color:var(--muted);font-weight:500;margin-left:2px}
.qc:hover{box-shadow:inset 0 0 0 1px var(--accent)}
.qc.on{background:var(--accent-soft);box-shadow:inset 0 0 0 1.5px var(--accent);color:var(--ink)}
.qc:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.dchips{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 6px;scrollbar-width:thin;scroll-snap-type:x proximity}
.dchips button{all:unset;cursor:pointer;flex:none;scroll-snap-align:start;display:grid;justify-items:center;gap:2px;min-width:64px;padding:10px 8px;border-radius:14px;background:var(--soft);box-shadow:inset 0 0 0 1px transparent}
.dchips b{font-size:.8125rem;font-weight:600}.dchips small{font-size:.75rem;color:var(--muted)}
.dchips button:hover{box-shadow:inset 0 0 0 1px var(--accent)}
.dchips button[aria-checked="true"]{background:var(--accent);color:#fff}.dchips button[aria-checked="true"] small{color:rgba(255,255,255,.85)}
.dchips button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.dmore{display:inline-flex;align-items:center;gap:8px;font-size:.8125rem;color:var(--muted);margin-top:4px}
.dmore input{width:auto!important;padding:6px 10px!important;font-size:.8125rem}
.slots{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
.slots .anyt{justify-self:start;padding:9px 18px;grid-column:auto!important}
.sgrp{display:grid;gap:6px}.sgrp>span{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.sgrp>div{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:6px}
.slots .sgrp button:first-child{grid-column:auto}
.sendto{display:grid;gap:8px;margin:14px 0}
.sendbtns{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.sbtn{display:grid;gap:2px;padding:14px 16px;border-radius:14px;background:var(--accent);color:#fff;text-decoration:none}
.sbtn b{font-weight:600}.sbtn small{opacity:.85;font-size:.78rem}
.sbtn:hover{background:color-mix(in srgb,var(--accent) 86%,#000)}
#sViber{background:#7360F2}#sViber:hover{background:#5f4ee0}

/* chat button: solid, always visible */
html:root body button.chatfab.chatfab{background:linear-gradient(135deg,#3b7bf0,#1f5fd6)!important;color:#fff!important;border:0!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:0 14px 32px -8px rgba(31,95,214,.55),0 0 0 4px rgba(46,107,214,.12)!important;font-weight:600;height:50px;padding:0 20px 0 16px}
html:root body button.chatfab.chatfab svg{color:#fff!important;width:20px;height:20px}
html:root body button.chatfab.chatfab::after{content:"";position:absolute;top:9px;left:30px;width:9px;height:9px;border-radius:50%;background:#3ddc97;box-shadow:0 0 0 2px #1f5fd6}
html:root body button.chatfab.chatfab:hover{filter:brightness(1.06);transform:translateY(-1px)}

/* chat: premium assistant panel */
#chat .chat-top{background:radial-gradient(120% 140% at 100% 0%,#2b5fd0 0%,rgba(43,95,208,0) 60%),linear-gradient(160deg,#0f2142,#0a1730);color:#fff;border-bottom:0;align-items:center}
#chat .ct-id{display:flex;align-items:center;gap:12px}
#chat .ct-av{flex:none;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#5b93f0,#2e6bd6);box-shadow:0 6px 18px rgba(46,107,214,.5);color:#fff}#chat .ct-av svg{width:20px;height:20px}
#chat .chat-top h2{color:#fff;font-size:1.2rem;margin:0}
#chat .chat-top p{color:#b9c8e6;font-size:.8125rem;margin:2px 0 0;display:flex;align-items:center;gap:6px}
#chat .ct-dot{width:8px;height:8px;border-radius:50%;background:#3ddc97;box-shadow:0 0 0 3px rgba(61,220,151,.22)}
#chat .chat-top .x{background:rgba(255,255,255,.1);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}
#chat .msg.bot{position:relative;margin-left:38px;max-width:calc(86% - 38px)}
#chat .msg.bot::before{content:"";position:absolute;left:-38px;top:2px;width:28px;height:28px;border-radius:50%;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M12 2l1.8 5.6L19.5 9l-5.7 1.6L12 16l-1.8-5.4L4.5 9l5.7-1.4L12 2zm7 12l.9 2.6 2.6.9-2.6.9L19 21l-.9-2.6-2.6-.9 2.6-.9L19 14z'/%3E%3C/svg%3E") center/14px no-repeat,linear-gradient(135deg,#5b93f0,#2e6bd6)}
#chat .msg.me{background:var(--accent);color:#fff}
#chat .ct-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-left:38px}
#chat .ct-lbl{grid-column:1/-1;font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:6px 0 2px}
#chat .ct-cards button{all:unset;box-sizing:border-box;cursor:pointer;display:flex;gap:10px;align-items:flex-start;padding:12px;border-radius:14px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .15s,transform .15s}
#chat .ct-cards button:hover{box-shadow:inset 0 0 0 1px var(--accent);transform:translateY(-1px)}
#chat .ct-cards button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
#chat .ct-ic{flex:none;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}#chat .ct-ic svg{width:17px;height:17px}
#chat .ct-cards b{display:block;font-size:.8125rem;font-weight:600;line-height:1.3}#chat .ct-cards small{display:block;font-size:.72rem;color:var(--muted);margin-top:2px}
#chat .chatrow{display:flex;gap:8px;align-items:center;padding:6px 6px 6px 16px;border-radius:999px;background:var(--soft);box-shadow:inset 0 0 0 1px var(--line)}
#chat .chatrow:focus-within{box-shadow:inset 0 0 0 2px var(--accent)}
#chat .chatrow input{flex:1;min-width:0;border:0!important;background:transparent!important;box-shadow:none!important;outline:none;font-size:.9375rem;padding:8px 0}
#chat .ct-send{width:44px;height:44px;padding:0;border-radius:50%;display:grid;place-items:center;flex:none}#chat .ct-send svg{width:20px;height:20px}
#chat .human{margin-top:12px}#chat .human>span{font-size:.75rem;color:var(--muted);text-transform:none;letter-spacing:0;font-weight:500}
#chat .human .hbtns{flex-wrap:wrap;overflow:visible;margin:8px 0 0;padding:0;gap:6px}
#chat .human .hb{height:32px;padding:0 11px;font-size:.75rem}#chat .human .hb svg{width:15px;height:15px}
#chat .ct-note{margin:10px 0 0;font-size:.7rem;color:var(--muted);text-align:center}
html:root body #chat .ct-send{width:44px!important;min-width:44px!important;max-width:44px;height:44px!important;min-height:44px!important;max-height:44px!important;border-radius:50%!important;padding:0!important;aspect-ratio:1;flex:0 0 44px}
@media(max-width:600px){#chat .ct-cards{margin-left:0;gap:6px}#chat .ct-cards button{padding:10px;gap:8px}#chat .ct-cards small{display:none}#chat .ct-cards b{font-size:.78rem}#chat .ct-ic{width:26px;height:26px}
#chat .human .hbtns{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:6px -16px 0;padding:0 16px}#chat .human .hbtns::-webkit-scrollbar{display:none}#chat .human .hb{flex:none}#chat .ct-note{display:none}#chat .human{margin-top:8px}}
/* ---- booking flow v2: 4 steps ---- */
#bookd .locpick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#bookd .loc{position:relative;display:grid;gap:4px;padding:16px;border-radius:18px;background:var(--soft);cursor:pointer;box-shadow:inset 0 0 0 1.5px transparent;transition:box-shadow .15s,background .15s}
#bookd .loc input{position:absolute;opacity:0;pointer-events:none}
#bookd .loc .li{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--bg);color:var(--accent);margin-bottom:6px}
#bookd .loc .li svg{width:22px;height:22px}
#bookd .loc b{font-size:1rem;font-weight:600;color:var(--ink)}
#bookd .loc small{font-size:.8125rem;color:var(--muted)}
#bookd .loc:has(input:checked){background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}
#bookd .loc:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}
#bookd .localt{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin:-2px 0 0;font-size:.8125rem;color:var(--muted)}
#bookd .localt .textlink{font-size:.8125rem}
#bookd .localt [aria-pressed="true"]{font-weight:700}
#bookd .geo{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}
#bookd .geo .btn{width:auto;display:inline-flex;align-items:center;gap:8px}
#bookd .geo .btn svg{width:16px;height:16px}
#bookd .addx{display:flex;flex-wrap:wrap;gap:8px}
#bookd .chipbtn{font:inherit;font-size:.8125rem;font-weight:600;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:8px 12px;cursor:pointer}
#bookd .chipbtn:hover{border-color:var(--accent);color:var(--accent)}
#bookd .chipbtn[hidden]{display:none}
#bookd .nm4{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
#bookd .nm4>.f:nth-child(1),#bookd .nm4>.f:nth-child(2){grid-column:span 3}
#bookd .nm4>.f:nth-child(3){grid-column:span 4}
#bookd .nm4>.f.sfx{grid-column:span 2}
#bookd .nmhint{margin:-4px 0 4px}
#bookd .check.sm{font-size:.8125rem}
#qpayfine{display:block;text-align:justify;text-justify:inter-word;hyphens:auto;-webkit-hyphens:auto}
#qpayfine .pf2{display:block;margin-top:8px}
#bookd label.check:has(#qconsent){font-size:.8125rem;align-items:flex-start;margin-top:4px}
@media (max-width:480px){#bookd label.check:has(#qconsent)>span{text-align:left!important}}
#bookd label.check:has(#qconsent)>span{text-align:justify;text-justify:inter-word;hyphens:auto;-webkit-hyphens:auto}
#bookd .nmprev{padding:10px 12px;border-radius:12px;background:var(--accent-soft);font-size:.8125rem;color:var(--ink)}
#bookd .nmprev b{letter-spacing:.01em}
#bookd .qmore{border-radius:16px;background:var(--soft);padding:0}
#bookd .qmore>summary{list-style:none;cursor:pointer;padding:14px 16px;display:grid;gap:2px;font-weight:600;font-size:.9375rem;color:var(--ink);position:relative;padding-right:44px}
#bookd .qmore>summary::-webkit-details-marker{display:none}
#bookd .qmore>summary::after{content:"+";position:absolute;right:16px;top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:50%;background:var(--bg);display:grid;place-items:center;font-size:1rem;color:var(--accent)}
#bookd .qmore[open]>summary::after{content:"–"}
#bookd .qmore>summary small{font-weight:400;font-size:.75rem;color:var(--muted)}
#bookd .qmore-b{display:grid;gap:14px;padding:0 16px 16px}
#bookd .qmore-b .radios label{background:var(--bg)}
#bookd.inq .qmore{background:none}#bookd.inq .qmore>summary{display:none}#bookd.inq .qmore-b{padding:0}
#bookd.inq .bstep[data-step="2"],#bookd.inq .bstep[data-step="3"]{display:none!important}
#bookd.inq .nmhint,#bookd.inq .nomid,#bookd.inq .nm4 .sfx,#bookd.inq .nmprev{display:none!important}
#bookd.inq .nm4>.f:nth-child(3){grid-column:span 6}
#bookd .otpbox{padding:14px 16px;border-radius:16px;background:var(--accent-soft);display:grid;gap:10px;font-size:.875rem}
#bookd .otpbox.ok{background:color-mix(in srgb,var(--save) 14%,var(--bg))}
#bookd .otpbox .otprow{display:flex;gap:8px;flex-wrap:wrap}
#bookd .otpbox input{flex:1 1 140px;min-width:0;letter-spacing:.3em;font-weight:700;text-align:center}
#bookd .otpbox .btn{width:auto}
#bookd .otpbox b.nm{font-size:1rem}
.bnav{display:flex!important;align-items:center;gap:12px}
.bnav .ftot{flex:1 1 auto;display:grid;line-height:1.2;min-width:0}
.bnav .ftot b{font-size:1.125rem;font-family:var(--disp,inherit)}
.bnav .ftot small{font-size:.75rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bnav .ftot:empty{display:none}
.bnav #qnext,.bnav #qsubmit{flex:1 1 auto;width:auto}
.bnav .ftot:not(:empty)~#qnext,.bnav .ftot:not(:empty)~#qsubmit{flex:0 0 auto;min-width:168px}
#bookd.isdone .ftot{display:none}
#bookd .nm4{align-items:start}
@media(max-width:600px){#bookd .localt>span{display:none}#bookd .localt{flex-direction:column;align-items:flex-start}#bookd .loc{padding:14px}#bookd .loc .li{width:36px;height:36px}.bnav .ftot:not(:empty)~#qnext,.bnav .ftot:not(:empty)~#qsubmit{min-width:132px}}

/* ---- address search + map ---- */
#bookd .acf{position:relative}
#bookd .acbox{position:relative;display:flex;align-items:center}
#bookd .acbox>svg{position:absolute;left:14px;width:18px;height:18px;color:var(--muted);pointer-events:none}
#bookd .acbox input{padding-left:42px;padding-right:40px;width:100%}
#bookd .acx{position:absolute;right:8px;width:28px;height:28px;border:0;border-radius:50%;background:var(--soft);color:var(--muted);font-size:18px;line-height:1;cursor:pointer}
#bookd .acl{list-style:none;margin:4px 0 0;padding:6px;position:absolute;left:0;right:0;top:100%;z-index:30;background:var(--bg);border-radius:16px;box-shadow:0 18px 40px -16px rgba(11,27,43,.35),0 0 0 1px var(--line);max-height:300px;overflow:auto}
#bookd .acl li{display:grid;gap:1px;padding:10px 12px;border-radius:12px;cursor:pointer}
#bookd .acl li b{font-size:.9375rem;font-weight:600;color:var(--ink)}
#bookd .acl li small{font-size:.78rem;color:var(--muted)}
#bookd .acl li:hover,#bookd .acl li[aria-selected="true"]{background:var(--accent-soft)}
#bookd .acl li.acfoot{cursor:default;font-size:.75rem;color:var(--muted);padding:8px 12px 4px}
#bookd .acl li.acfoot:hover{background:none}
#bookd .qmapw{position:relative;height:260px;border-radius:18px;overflow:hidden;background:var(--soft);box-shadow:inset 0 0 0 1px var(--line)}
#bookd .qmap{position:absolute;inset:0;z-index:1}
#bookd .qpin{position:absolute;left:50%;top:50%;width:40px;height:50px;transform:translate(-50%,-100%);z-index:5;pointer-events:none;transition:transform .15s;filter:drop-shadow(0 6px 8px rgba(11,27,43,.35))}
#bookd .qpin svg{width:100%;height:100%}
#bookd .qmapw.moving .qpin{transform:translate(-50%,-115%)}
#bookd .qmapw::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:6px;border-radius:50%;background:rgba(11,27,43,.28);transform:translate(-50%,-50%);z-index:4;pointer-events:none}
#bookd .qgeo{position:absolute;right:12px;top:12px;z-index:6;display:inline-flex;align-items:center;gap:6px;border:0;border-radius:999px;background:var(--bg);color:var(--accent);font:inherit;font-size:.8125rem;font-weight:700;padding:9px 13px;box-shadow:0 4px 14px -4px rgba(11,27,43,.35);cursor:pointer}
#bookd .qgeo svg{width:16px;height:16px}
#bookd .qgeo.busy{opacity:.6}
#bookd .qhint{position:absolute;left:12px;bottom:12px;z-index:6;max-width:calc(100% - 24px);padding:7px 11px;border-radius:10px;background:var(--bg);font-size:.75rem;font-weight:600;color:var(--ink);box-shadow:0 4px 14px -6px rgba(11,27,43,.35)}
#bookd .qmap .leaflet-control-zoom{margin-top:56px}
#bookd .qmap .leaflet-control-attribution{font-size:9px}
#bookd .qout{margin-top:10px;padding:14px 16px;border-radius:14px;background:color-mix(in srgb,#E5484D 8%,var(--bg));box-shadow:inset 0 0 0 1px color-mix(in srgb,#E5484D 30%,transparent)}
#bookd .qout b{display:block;font-size:.9375rem;color:var(--ink)}#bookd .qout p{margin:4px 0 12px;font-size:.8125rem;color:var(--muted);line-height:1.5}
#bookd .qoutb{display:flex;flex-wrap:wrap;gap:8px}#bookd .qoutb .btn{min-height:40px;padding:8px 16px;font-size:.8125rem}
#bookd .qmis{margin:8px 0 0;color:#B54708}
#bookd .qplace{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:14px;background:var(--accent-soft)}
#bookd .qplace>svg{width:20px;height:20px;color:var(--accent);flex:none;margin-top:2px}
#bookd .qplace>div{display:grid;gap:2px;flex:1;min-width:0}
#bookd .qplace b{font-size:.875rem;font-weight:600;color:var(--ink)}
#bookd .qplace small{font-size:.78rem;color:var(--muted)}
#bookd .qplace .textlink{font-size:.78rem;white-space:nowrap}
#bookd .clinicinfo{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:14px 16px;border-radius:16px;background:var(--soft)}
#bookd .clinicinfo>div{flex:1 1 220px;display:grid;gap:2px}
#bookd .clinicinfo b{font-size:.9375rem;font-weight:600}
#bookd .clinicinfo small{font-size:.8125rem;color:var(--muted)}
#bookd .clinicinfo .chipbtn{text-decoration:none}
/* ---- More options: real fields, not floating text ---- */
#bookd .qmore-b select,#bookd .qmore-b input:not([type=checkbox]):not([type=radio]):not([type=file]),#bookd .qmore-b textarea{background:var(--bg)!important;box-shadow:inset 0 0 0 1px var(--line)!important;border-radius:12px!important}
#bookd .qmore-b select{width:100%;min-height:48px;padding:0 40px 0 14px}
#bookd .qmore-b .forother{background:var(--bg);border-radius:14px;padding:12px 14px;box-shadow:inset 0 0 0 1px var(--line)}
#bookd .qmore-b .radios label{box-shadow:inset 0 0 0 1px var(--line)}
#bookd .qmore-b .radios label:has(input:checked){box-shadow:inset 0 0 0 1.5px var(--accent);background:var(--accent-soft)}
#bookd .qmore-b>.bk:has(#qcodeToggle){background:var(--bg);border-radius:14px;padding:12px 14px;box-shadow:inset 0 0 0 1px var(--line)}
#bookd .qmore-b .lbl,#bookd .qmore-b label{color:var(--ink)}
/* ---- fill in my details ---- */
#bookd .fillme{display:flex;align-items:center;gap:10px;width:100%;text-align:left;font:inherit;font-size:.875rem;color:var(--ink);background:var(--accent-soft);border:0;border-radius:14px;padding:12px 14px;cursor:pointer}
#bookd .fillme svg{width:18px;height:18px;flex:none;color:var(--accent)}
#bookd .fillme b{color:var(--accent)}

/* success screen: one centered column, no empty sidebar space */
#bookd.isdone .bgrid{grid-template-columns:minmax(0,1fr)!important}
#bookd.isdone .bmain{width:100%;max-width:720px;margin:0 auto}

#bookd details.clinicinfo{display:block;padding:0;background:none}
#bookd .clinicinfo>summary{list-style:none;display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:.875rem;font-weight:600;color:var(--accent);padding:10px 14px;border-radius:999px;background:var(--accent-soft)}
#bookd .clinicinfo>summary::-webkit-details-marker{display:none}
#bookd .clinicinfo>summary svg{width:16px;height:16px}
#bookd .clinicinfo>summary::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:2px;transition:transform .15s}
#bookd .clinicinfo[open]>summary::after{transform:rotate(-135deg) translateY(-1px)}
#bookd .cidrop{margin-top:10px;display:grid;gap:4px;padding:14px 16px;border-radius:16px;background:var(--soft);font-size:.8125rem;color:var(--muted)}
#bookd .cidrop b{font-size:.9375rem;color:var(--ink)}
#bookd .cibtns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}
#bookd .cibtns .chipbtn{display:flex;justify-content:center;align-items:center;text-align:center;text-decoration:none;min-height:42px}
#bookd .selempty{display:grid;gap:10px;justify-items:start}
#bookd .selempty p{margin:0}
#bookd .selempty .btn{width:auto}
#bookd .selempty small{font-size:.78rem}
@media(max-width:899px){#bookd .bside:has(.selempty){display:none}}

/* address tools, optional map, toggles */
#bookd .addrtools{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:-4px}
#bookd .chipbtn.tool{display:inline-flex;align-items:center;gap:7px;color:var(--accent)}
#bookd .chipbtn.tool svg{width:16px;height:16px}
#bookd .chipbtn.tool.busy{opacity:.6}
#bookd .chipbtn.tool[hidden]{display:none}
#bookd .qmapw[hidden]{display:none}
#bookd .qclose{position:absolute;right:12px;top:12px;z-index:6;border:0;border-radius:999px;background:var(--accent);color:#fff;font:inherit;font-size:.8125rem;font-weight:700;padding:9px 16px;cursor:pointer;box-shadow:0 4px 14px -4px rgba(11,27,43,.35)}
#bookd .qmap .leaflet-control-zoom{margin-top:12px}
#bookd .qtiles{filter:saturate(.55) contrast(.92) brightness(1.04)}
#bookd .qplace .qpl{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
#bookd .localt [data-qtype]::after{content:"";display:inline-block;width:6px;height:6px;margin-left:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-3px);transition:transform .15s}
#bookd .localt [data-qtype][aria-pressed="true"]::after{transform:rotate(-135deg) translateY(-1px)}
#bookd .localt [data-qtype][aria-pressed="true"]{text-decoration:none}

/* returning patient quick fill */
#bookd .quick{display:grid;gap:10px}
#bookd .quick[hidden]{display:none}
#bookd .quickbtn{display:flex;align-items:center;gap:12px;width:100%;text-align:left;font:inherit;color:var(--ink);background:linear-gradient(135deg,var(--accent-soft),color-mix(in srgb,var(--accent-soft) 40%,var(--bg)));border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);border-radius:18px;padding:14px 16px;cursor:pointer}
#bookd .quickbtn[hidden]{display:none}
#bookd .quickbtn .qi{width:40px;height:40px;border-radius:12px;background:var(--bg);display:grid;place-items:center;color:var(--accent);flex:none}
#bookd .quickbtn .qi svg{width:22px;height:22px}
#bookd .quickbtn .qt{display:grid;gap:2px;flex:1;min-width:0}
#bookd .quickbtn b{font-size:.9375rem}
#bookd .quickbtn small{font-size:.8125rem;color:var(--muted)}
#bookd .quickbtn .chev{width:8px;height:8px;border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(45deg);margin-right:4px;transition:transform .15s}
#bookd .quickbtn[aria-expanded="true"] .chev{transform:rotate(-135deg)}
#bookd .quickb{display:grid;gap:8px;padding:14px;border-radius:16px;background:var(--soft)}
#bookd .quickb .qrow{display:flex;gap:8px}
#bookd .quickb .qrow[hidden]{display:none}
#bookd .quickb input{flex:1;min-width:0;background:var(--bg)!important;box-shadow:inset 0 0 0 1px var(--line)!important}
#bookd .quickb #qqCode{letter-spacing:.3em;font-weight:700;text-align:center}
#bookd .quickb .btn{width:auto;white-space:nowrap}
#bookd .quickb .fine{margin:0}
#bookd .quickok{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,var(--save) 12%,var(--bg));font-size:.875rem}
#bookd .quickok[hidden]{display:none}
#bookd .quickok svg{width:20px;height:20px;color:var(--save);flex:none}
#bookd .quickok span{flex:1}
#bookd .saved{display:grid;gap:8px}
#bookd .saved[hidden]{display:none}
#bookd .savedaddr{display:flex;align-items:center;gap:10px;width:100%;text-align:left;font:inherit;color:var(--ink);background:var(--bg);border:1.5px solid var(--line);border-radius:14px;padding:12px 14px;cursor:pointer}
#bookd .savedaddr svg{width:18px;height:18px;color:var(--accent);flex:none}
#bookd .savedaddr span{display:grid;gap:1px}
#bookd .savedaddr b{font-size:.875rem;font-weight:600}
#bookd .savedaddr small{font-size:.75rem;color:var(--muted)}
#bookd .savedaddr.on{border-color:var(--accent);background:var(--accent-soft)}
#bookd .savedaddr.new{color:var(--accent);font-weight:600;font-size:.875rem;border-style:dashed}

/* weight program: quick check */
.hcline{font-size:.875rem;color:var(--muted);margin-top:10px}.hcline a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.hc{display:grid;gap:0;border:1px solid var(--line);border-radius:20px;overflow:hidden;margin:8px 0 28px;background:var(--bg)}

.hc-in{padding:22px;display:grid;gap:14px;align-content:start}
.hc-in h2{margin:0!important;font-size:1.25rem!important}
.hc-in>p{font-size:.875rem;color:var(--muted);margin:0}
.hc-g{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(min-width:620px){.hc-g{grid-template-columns:1.3fr 1fr 1fr 1fr}.hc-g .hc-f.full:first-child{grid-column:auto}.hc-g .hc-f.full{grid-column:auto}}
.hc-f{display:grid;gap:6px}.hc-f.full{grid-column:1/-1}
.hc-f>span{font-size:.8125rem;font-weight:500}
.hc-f small{font-weight:400;color:var(--muted)}
.hc-i{position:relative;display:flex;align-items:center}
.hc-i input{width:100%;min-height:48px;border-radius:12px;border:1px solid var(--line);background:var(--bg);color:var(--ink);padding:0 44px 0 14px;font:inherit;font-size:1rem;-moz-appearance:textfield;appearance:none}
.hc-i input::-webkit-outer-spin-button,.hc-i input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.hc-i input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}
.hc-i em{position:absolute;right:14px;font-style:normal;font-size:.85rem;color:var(--muted);pointer-events:none}
.hc-sex{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.hc-sex label{position:relative}.hc-sex input{position:absolute;opacity:0;pointer-events:none}
.hc-sex span{display:grid;place-items:center;min-height:46px;border-radius:12px;box-shadow:inset 0 0 0 1px var(--line);cursor:pointer;font-size:.9375rem}
.hc-sex input:checked+span{box-shadow:inset 0 0 0 2px var(--ink);font-weight:500}
.hc-sex input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
.hc-links{font-size:.8125rem;color:var(--muted)}.hc-links a{color:var(--accent)}
.hc-out{padding:22px;background:var(--soft);display:grid;gap:14px;align-content:start;border-top:1px solid var(--line)}

.hc-empty{display:grid;justify-items:center;gap:10px;text-align:center;color:var(--muted);font-size:.875rem;padding:18px 0;transition:opacity .2s}
.hc-empty svg{width:180px;height:auto}
.hc-empty .nd{animation:hcN 3.2s ease-in-out infinite;transform-origin:90px 70px}
@keyframes hcN{0%,100%{transform:rotate(-34deg)}50%{transform:rotate(30deg)}}
.hc-res{display:grid;gap:14px}
.hc-res.in>*{animation:hcIn .5s cubic-bezier(.2,.8,.2,1) both}.hc-res.in>*:nth-child(2){animation-delay:.07s}.hc-res.in>*:nth-child(3){animation-delay:.14s}.hc-res.in>*:nth-child(4){animation-delay:.21s}.hc-res.in>*:nth-child(n+5){animation-delay:.28s}
@keyframes hcIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.hc-nums{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.hc-nums div{padding:12px 2px;display:grid;gap:2px}.hc-nums div+div{border-left:1px solid var(--line);padding-left:14px}
.hc-nums span{font-size:.75rem;color:var(--muted)}
.hc-nums b{font-size:1.9rem;font-weight:300;letter-spacing:-.03em;line-height:1.1}
.hc-nums small{font-size:.8rem;font-weight:500}
.hc-nums .good{color:#227A54}.hc-nums .warn{color:#94600A}.hc-nums .bad{color:#B23F2C}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hc-nums .good{color:#6CCB9C}:root:not([data-theme="light"]) .hc-nums .warn{color:#E8B95C}:root:not([data-theme="light"]) .hc-nums .bad{color:#F08E7C}}
:root[data-theme="dark"] .hc-nums .good{color:#6CCB9C}:root[data-theme="dark"] .hc-nums .warn{color:#E8B95C}:root[data-theme="dark"] .hc-nums .bad{color:#F08E7C}
.hc-say{font-size:1rem;line-height:1.5;color:var(--ink);margin:0}
.hc-tick{display:flex;gap:10px;align-items:flex-start;font-size:.85rem;color:var(--muted);cursor:pointer}
.hc-tick input{margin-top:3px;accent-color:var(--accent);width:18px;height:18px;flex:none}
.hc-go{justify-self:start;white-space:normal;text-align:center;line-height:1.25;padding-block:12px}
.hc-fine{font-size:.75rem;color:var(--muted);margin:0}
@media (prefers-reduced-motion:reduce){.hc-res.in>*,.hc-empty .nd{animation:none!important}}

/* programs: mini BMI check (same look as the BMI calculator) */
.bmim{display:grid;gap:16px;margin:14px 0 6px;padding:16px;border:1px solid var(--line);border-radius:20px;background:var(--bg)}
@media(min-width:720px){.bmim{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;padding:18px}}
.bmim-l{display:grid;gap:12px;align-content:start}
.bmim-h{display:grid;gap:2px}.bmim-h b{font-weight:600;font-size:1.0625rem}.bmim-h small{font-size:.78rem;color:var(--muted)}
.bmim-in{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.bmim-in label{display:grid;gap:5px;font-size:.8125rem;font-weight:500}
.bmim-s{font-size:.875rem;color:var(--muted);margin:0}
.bmim-acts{display:flex;flex-wrap:wrap;gap:8px}
.bmv{position:relative;isolation:isolate;overflow:hidden;border-radius:18px;padding:14px 16px 16px;color:#fff;display:grid;gap:6px;
  background:radial-gradient(120% 90% at 85% 0%,#2b5fd0 0%,rgba(43,95,208,0) 55%),radial-gradient(90% 80% at 0% 100%,#1c3a73 0%,rgba(28,58,115,0) 60%),linear-gradient(160deg,#0f2142,#0a1730);box-shadow:0 20px 40px -28px rgba(10,23,48,.7)}
.bmv::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.09) 1px,transparent 1px);background-size:16px 16px;-webkit-mask-image:linear-gradient(180deg,#000,transparent 70%);mask-image:linear-gradient(180deg,#000,transparent 70%);z-index:-1}
.bmv-ring{position:absolute;width:200px;height:200px;right:-70px;top:-90px;border-radius:50%;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 26px rgba(255,255,255,.03),0 0 0 56px rgba(255,255,255,.02);z-index:-1}
.bmv-c{position:relative;width:min(340px,100%);margin:0 auto}
.bmv-c svg{width:100%;height:auto;display:block;overflow:visible}
#bmSeg path{fill:none;stroke:#22365c;stroke-width:24;stroke-linecap:butt;transition:stroke .5s}
#bmSeg circle{fill:#22365c;transition:fill .5s}
#bmTk text{font:500 11px var(--f);fill:rgba(255,255,255,.55)}
.bmv-k{transform-origin:160px 162px;transform-box:view-box;transition:transform .9s cubic-bezier(.2,.9,.25,1.08),opacity .3s}
.bmv-k .h{fill:rgba(255,255,255,.14)}.bmv-k .d{fill:#fff;stroke:#fff;stroke-width:5;transition:stroke .4s}
.bmv.idle .bmv-k{opacity:0}
.bmv-ctr{position:absolute;left:0;right:0;top:38%;display:grid;justify-items:center;text-align:center;gap:2px}
.bmv-ctr span{font-size:.8rem;color:rgba(255,255,255,.72)}
.bmv-ctr b{font-size:clamp(2.2rem,8vw,2.9rem);font-weight:300;letter-spacing:-.04em;line-height:1.05}
.bmv.idle .bmv-ctr b{color:#F2B84B}
.bmv-ctr em{font-style:normal;font-size:.875rem;font-weight:600;min-height:1.2em}
.bmv-sub{text-align:center;font-size:.8125rem;color:rgba(255,255,255,.78)!important;margin:0}.bmv-sub b{color:#fff}
@media(max-width:719px){.bmim-l{display:contents}.bmim-h{order:1}.bmim-in{order:2}.bmv{order:3}.bmim-s{order:4}.bmim-acts{order:5}}
@media (prefers-reduced-motion:reduce){.bmv-k,#bmSeg *{transition:none!important}}
.hc-acts{display:flex;flex-wrap:wrap;gap:8px}

.wlabpkg{margin-top:-4px}
.wlp{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0 8px}
@media(max-width:420px){.wlp{grid-template-columns:1fr}.wlp.has .wlp-c:not(.on){display:none}}
.wlp-c{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:var(--bg)}
.wlp-c.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.wlp-h{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding-bottom:8px;margin-bottom:6px;border-bottom:1px solid var(--line)}
.wlp-h b{font-size:.875rem}.wlp-h span{font-size:.875rem;font-weight:600;color:var(--accent)}
.wlp ul{list-style:none;margin:0;padding:0;display:grid;gap:5px}
.wlp li{display:flex;justify-content:space-between;gap:8px;font-size:.8125rem}
.wlp li b{font-weight:600;color:var(--ink)}.wlp li small{color:var(--ink);text-align:right;font-size:.8125rem}.wlp li{padding:4px 0;border-bottom:1px dashed var(--line)}.wlp li:last-child{border-bottom:0}

/* programs: BMI beside the assistant; assistant in violet so the two panels differ */
.prog.more2{display:grid;gap:16px;grid-template-columns:minmax(0,1fr);align-items:stretch}
@media(min-width:900px){.prog.more2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto}.prog.more2>.bmim{grid-column:1;grid-row:1;margin:0;height:100%}.prog.more2>.mx-art{grid-column:2;grid-row:1;margin:0;height:100%;min-height:0}.prog.more2>.more2-btn{grid-column:1/-1;grid-row:2}}
.prog.more2>.bmim{grid-template-columns:minmax(0,1fr)!important;align-content:start}
.prog.more2>.bmim .bmim-l{display:contents}.prog.more2>.bmim .bmim-h{order:1}.prog.more2>.bmim .bmim-in{order:2}.prog.more2>.bmim .bmv{order:3}.prog.more2>.bmim .bmim-s{order:4}.prog.more2>.bmim .bmim-acts{order:5}
/* assistant panel in light blue (BMI card stays navy) */
.prog.more2 .mx-av{background:linear-gradient(135deg,#5b93f0,#2e6bd6)}.prog.more2 .mx-rec em{color:#2e6bd6}
.prog.more2>.mx-art{background:radial-gradient(110% 80% at 90% 0%,#cfe2fb 0%,rgba(207,226,251,0) 60%),linear-gradient(165deg,#f4f8fd 0%,#e4eefb 100%)!important;box-shadow:inset 0 0 0 1px #d7e4f5}
.prog.more2>.mx-art::before{background-image:radial-gradient(rgba(31,111,209,.12) 1px,transparent 1px)}
.prog.more2 .mx-glow{border-color:rgba(31,111,209,.14);box-shadow:0 0 0 28px rgba(31,111,209,.04),0 0 0 60px rgba(31,111,209,.025)}
.prog.more2 .mx-top{border-bottom-color:rgba(16,32,47,.08)}
.prog.more2 .mx-top span:last-child{color:#10202f}
.prog.more2 .mx-top small{color:#5b6b7e}
.prog.more2 .mx-hi{color:#10202f;background:#fff;box-shadow:0 1px 2px rgba(16,32,47,.06),inset 0 0 0 1px #dbe6f3}
.prog.more2 .mx-chips span{color:#1f4f99;background:rgba(255,255,255,.75);box-shadow:inset 0 0 0 1px #cfdcef}
.prog.more2 .mx-chips span:nth-child(2){background:#1F6FD1;color:#fff;box-shadow:none}
.prog.more2 .mx-me{color:#fff;background:#1F6FD1;box-shadow:0 8px 20px -8px rgba(31,111,209,.6)}
.prog.more2 .mx-ai-b{color:#10202f;background:rgba(255,255,255,.7);box-shadow:inset 0 0 0 1px #dbe6f3}
.prog.more2 .mx-rec{background:#fff;box-shadow:0 1px 2px rgba(16,32,47,.06)}
.more2-btn{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;padding:14px 18px;border-radius:16px;border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer;text-align:left;font:inherit;transition:border-color .2s,transform .2s}
.more2-btn span{display:grid;gap:2px}.more2-btn b{font-weight:600}.more2-btn small{font-size:.8125rem;color:var(--muted)}
.more2-btn svg{width:20px;height:20px;flex:none;color:var(--accent);transition:transform .2s}
.more2-btn:hover{border-color:var(--accent)}.more2-btn:hover svg{transform:translateX(3px)}
.bmv-tog{display:grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:999px;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);margin-top:6px}
.bmv-tog button{border:0;background:none;color:rgba(255,255,255,.82);min-height:36px;border-radius:999px;cursor:pointer;font:inherit;font-size:.8125rem;font-weight:500}
.bmv-tog button[aria-pressed="true"]{background:#fff;color:#0f2142}
/* order bar sits above the phone's bottom buttons */
@media(max-width:760px){.vbar{bottom:calc(84px + env(safe-area-inset-bottom,0px))!important;max-width:calc(100% - 24px)}.vbar .t{overflow:hidden;text-overflow:ellipsis}}
.sv-promo{margin:0;padding:12px 14px;border-radius:12px;background:#FAF0DC;color:#5c3d05;font-size:.875rem}
.bmim-hr{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.bmim-u{display:inline-grid;grid-auto-flow:column;border-radius:10px;box-shadow:inset 0 0 0 1px var(--line);overflow:hidden}
.bmim-u button{border:0;background:none;padding:6px 11px;font:inherit;font-size:.78rem;color:var(--muted);cursor:pointer;min-height:32px}
.bmim-u button+button{box-shadow:inset 1px 0 0 var(--line)}
.bmim-u button[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
.bmim-ft{display:grid;gap:5px;font-size:.8125rem;font-weight:500}
.bmim-pair{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.bmim-in [hidden]{display:none!important}
/* footer: two link columns on phones */
@media(max-width:859px){footer.site .fgrid{grid-template-columns:1fr 1fr;gap:28px 20px}footer.site .fgrid>div:first-child,footer.site .fgrid>div:last-child{grid-column:1/-1}footer.site .fgrid ul{font-size:.875rem;gap:10px}}

/* 2026-10-18 review: card label same size as the link, single clinic photo */
.dcard .eyebrow,.dcard .more{font-size:1.0625rem;font-weight:500}
.dcard .eyebrow{color:rgba(255,255,255,.92)}
.vphotos.single{display:block;height:auto;min-height:clamp(320px,34vw,520px)}
.vphotos.single figure{position:relative;height:100%;min-height:inherit}
@media (max-width:760px){.vphotos.single{min-height:300px}}
.vtour{position:absolute;right:16px;bottom:16px;background:rgba(11,27,43,.72);color:#fff;font-size:.8125rem;font-weight:600;padding:8px 14px;border-radius:999px}
.vp1[data-tour]:hover img{transform:scale(1.03)}.vp1[data-tour] img{transition:transform .6s}
dialog.tourd{border:0;padding:0;width:min(1100px,calc(100% - 32px));max-height:calc(100% - 32px);border-radius:24px;background:var(--bg);color:var(--ink);overflow:auto}
dialog.tourd::backdrop{background:rgba(8,16,24,.55)}
.tourd .thead{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:24px 24px 16px;position:sticky;top:0;background:var(--bg);z-index:2}
.tourd .thead .vkick{color:var(--muted,#5b6b7c);font-size:.8125rem;font-weight:600}
.tourd h2{margin:4px 0 0;font-size:clamp(1.5rem,2.4vw,2rem)}
.tourd .tclose{border:0;background:var(--tint,#eef3f8);color:var(--ink);width:40px;height:40px;border-radius:50%;display:grid;place-items:center;cursor:pointer;flex:none}.tourd .tclose svg{width:20px;height:20px}
.tourd .tgrid{display:grid;gap:12px;padding:0 24px;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:230px}
.tourd .tgrid figure:first-child,.tourd .tgrid figure:nth-child(2){grid-column:span 1}
.tourd figure{margin:0;position:relative;border-radius:18px;overflow:hidden;background:var(--tint,#eef3f8)}
.tourd figure img{width:100%;height:100%;object-fit:cover}
.tourd figcaption{position:absolute;left:12px;bottom:12px;background:rgba(255,255,255,.92);color:#0B1B2B;font-size:.8125rem;font-weight:600;padding:6px 12px;border-radius:999px}
.tourd .tfoot{display:flex;flex-wrap:wrap;gap:10px;padding:20px 24px 24px}
.tourd .btn.tprim{background:#1565D8!important;color:#fff!important}
.tourd .btn.tline{background:transparent!important;color:var(--ink)!important;box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--ink) 25%,transparent)!important}
.tourd figcaption{white-space:nowrap}
:root[data-theme="dark"] dialog.tourd{box-shadow:0 0 0 1px rgba(255,255,255,.12),0 30px 80px rgba(0,0,0,.6)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) dialog.tourd{box-shadow:0 0 0 1px rgba(255,255,255,.12),0 30px 80px rgba(0,0,0,.6)}}
@media (max-width:760px){.tourd figcaption{font-size:.75rem;left:8px;bottom:8px;padding:5px 10px}}
@media (max-width:760px){.tourd .tgrid{grid-template-columns:1fr 1fr;grid-auto-rows:150px;padding:0 16px}.tourd .thead{padding:20px 16px 12px}.tourd .tfoot{padding:16px}}
#clinic .vbtns{display:grid;grid-template-columns:1fr 1fr;max-width:440px}#clinic .vbtns .btn{min-width:0;padding-left:12px;padding-right:12px;justify-content:center;text-align:center;white-space:nowrap}
.dcard .dbtn{justify-self:start;display:inline-flex;align-items:center;gap:10px;margin-top:6px;background:#1565D8;color:#fff;font-size:1rem;font-weight:600;padding:14px 22px;border-radius:999px;box-shadow:0 10px 24px -10px rgba(21,101,216,.7);transition:background .2s,transform .2s}
.dcard .dbtn svg{width:18px;height:18px;transition:transform .2s}
.dcard:hover .dbtn{background:#0F55BC}.dcard:hover .dbtn svg{transform:translateX(3px)}
.dcard:focus-visible .dbtn{outline:2px solid #fff;outline-offset:3px}
@media (max-width:760px){.dcard .dbtn{padding:12px 18px;font-size:.9375rem}}
.mbar .morder{display:none}
@media(max-width:760px){
  .vbar,.vbar.show{display:none!important}
  .mbar.has .mbook{display:none}
  .mbar.has .morder{display:inline-flex;flex:1;align-items:center;justify-content:center;gap:10px}
  .mbar .mcount{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:#fff;color:#1565D8;font-size:.8125rem;font-weight:700}
  .mbar .mtot{opacity:.9;font-weight:500}
  .mbar .mtot::before{content:"·";margin-right:10px;opacity:.7}
}
@media(max-width:760px){footer.site{padding-bottom:calc(104px + env(safe-area-inset-bottom,0px))!important}}
@keyframes tmcBump{0%{transform:scale(1)}30%{transform:scale(1.06)}60%{transform:scale(.98)}100%{transform:scale(1)}}
@keyframes tmcPop{0%{transform:scale(1)}40%{transform:scale(1.35)}100%{transform:scale(1)}}
.mbar .morder.bump{animation:tmcBump .45s cubic-bezier(.2,.7,.2,1)}
.mbar .morder.bump .mcount{animation:tmcPop .45s cubic-bezier(.2,.7,.2,1)}
.vbar.bump{animation:tmcBump .45s cubic-bezier(.2,.7,.2,1)}
@media (prefers-reduced-motion:reduce){.mbar .morder.bump,.mbar .morder.bump .mcount,.vbar.bump{animation:none}}
#visitSheet .ordercard .oh{display:none}
#visitSheet .ordercard h3{justify-content:flex-end}
@media(max-width:560px){.oitem{grid-template-columns:auto minmax(0,1fr) 24px;row-gap:10px}.oitem>:nth-child(1){grid-column:1/3;grid-row:1}.oitem>:nth-child(4){grid-column:3;grid-row:1;align-self:start}.oitem>:nth-child(2){grid-column:1;grid-row:2}.oitem>:nth-child(3){grid-column:2/4;grid-row:2;font-size:.9375rem}}
#qmine{display:grid;gap:10px}
#qmine[hidden]{display:none}
#qmine .qmlist{background:var(--soft);border-radius:16px;padding:6px 14px;display:grid}
#qmine .row.it{padding:12px 0;border-bottom:1px solid var(--line);font-size:.9375rem}
#qmine .row.it:last-child{border-bottom:0}
#qmine .qmfee{display:flex;justify-content:space-between;gap:12px;margin:0;padding:0 4px;font-size:.875rem;color:var(--muted)}
#qmine .qmfee b{color:var(--ink);font-weight:600}#qmine .qmfee b.dl{color:var(--accent,#2f7d5b)}
#bookd.hasitems .tsearch{margin-top:6px}
#bookd.hasitems .qrail:not(.all){flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:2px 2px 6px;mask-image:linear-gradient(90deg,#000 85%,transparent)}
#bookd.hasitems .qrail:not(.all)::-webkit-scrollbar{display:none}
#bookd.hasitems .qrail:not(.all) .qc{white-space:nowrap;scroll-snap-align:start;flex:none}
.qpick .qph{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.qpick .qall{all:unset;cursor:pointer;color:var(--accent);font-size:.875rem;font-weight:600}
.qpick .qall[hidden]{display:none}
@media(min-width:900px){#bookd.hasitems .qrail:not(.all){flex-wrap:wrap;overflow:visible;mask-image:none}#bookd .qpick .qall{display:none}}
@media(max-width:560px){#qmine .row.it{grid-template-columns:auto minmax(0,1fr) 24px;row-gap:8px}#qmine .row.it>:nth-child(1){grid-column:1/3;grid-row:1}#qmine .row.it>:nth-child(4){grid-column:3;grid-row:1;align-self:start}#qmine .row.it>:nth-child(2){grid-column:1;grid-row:2}#qmine .row.it>:nth-child(3){grid-column:2/4;grid-row:2}}
@media(max-width:899px){#bookd.hasitems:has(.bstep[data-step="2"]:not([hidden])) .bside{display:none!important}}
@media(max-width:760px){#bookd.hasitems:has(.bstep[data-step="2"]:not([hidden])) button.ftot small::after{content:""!important}#bookd.hasitems:has(.bstep[data-step="2"]:not([hidden])) button.ftot{pointer-events:none}}
@keyframes tmcNudge{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(21,101,216,.45)}35%{transform:scale(1.04);box-shadow:0 0 0 10px rgba(21,101,216,0)}}
#qnext.nudge{animation:tmcNudge 1.1s ease-out 1}
@media (prefers-reduced-motion:reduce){#qnext.nudge{animation:none}}
@media(max-width:760px){#bookd:not(.hasitems) .qrail{display:grid;grid-template-columns:1fr 1fr;gap:8px}#bookd:not(.hasitems) .qrail .qc{display:grid;gap:2px;padding:12px 14px;border-radius:14px;font-size:.875rem;line-height:1.25}#bookd:not(.hasitems) .qrail .qc small{margin:0;font-size:.8125rem}}
#bookd.hasitems:has(.bstep[data-step="2"]:not([hidden])) #selBox .row.it{display:none}
#bookd.hasitems:has(.bstep[data-step="2"]:not([hidden])) .bside{display:none!important}
@media(min-width:900px){#bookd.hasitems:has(.bstep[data-step="2"]:not([hidden])) .bgrid{grid-template-columns:minmax(0,760px)}}
#qmine .row.qmtot{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:14px 0 12px;border-top:1px solid var(--line);font-weight:600;font-size:1rem}
#qmine .row.qmtot .lb small{display:block;font-weight:400;font-size:.75rem;color:var(--muted)}
#qmine .row.qmtot .am{font-size:1.125rem}
#qmine .row.it:nth-last-child(2){border-bottom:0}
.olines div>span:first-child{min-width:0}.olines div span small{display:block;margin-top:3px;color:var(--muted);font-size:.75rem;font-weight:400;line-height:1.35}
#bookd .rqup{display:grid;gap:10px}
#bookd .rqbtn{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:16px;background:var(--bg);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--accent) 35%,var(--line));cursor:pointer}
#bookd .rqbtn[hidden]{display:none}
#bookd .rqbtn:hover{box-shadow:inset 0 0 0 1.5px var(--accent)}
#bookd .rqbtn:focus-within{outline:2px solid var(--accent);outline-offset:2px}
#bookd .rqic{flex:none;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--accent-soft,#e8f0fd);color:var(--accent)}
#bookd .rqic svg{width:22px;height:22px}
#bookd .rqt{flex:1;min-width:0;display:grid;gap:2px}#bookd .rqt b{font-weight:600;font-size:.9375rem}#bookd .rqt small{color:var(--muted);font-size:.8125rem;line-height:1.35}
#bookd .rqgo{flex:none;background:#1565D8;color:#fff;font-weight:600;font-size:.875rem;padding:9px 14px;border-radius:999px}
#bookd .rqcard{background:var(--soft);border-radius:16px;padding:14px;display:grid;gap:12px}
#bookd .rqhd{display:flex;align-items:center;gap:12px}#bookd .rqhd img{width:48px;height:60px;object-fit:cover;border-radius:8px;flex:none;background:var(--bg)}
#bookd .rqhd>div{flex:1;min-width:0;display:grid;gap:2px}#bookd .rqhd b{font-weight:600}#bookd .rqhd small{color:var(--muted);font-size:.8125rem}
#bookd .rqspin{width:22px;height:22px;border-radius:50%;border:2.5px solid var(--line);border-top-color:var(--accent);animation:rqspin .8s linear infinite;flex:none}
@keyframes rqspin{to{transform:rotate(360deg)}}
#bookd .rqlist{list-style:none;margin:0;padding:0 12px;background:var(--bg);border-radius:12px}
#bookd .rqlist li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid var(--line);font-size:.9375rem}
#bookd .rqlist li:last-child{border-bottom:0}
#bookd .rqlist label{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:0;cursor:pointer}
#bookd .rqlist input{width:20px;height:20px;margin:2px 0 0;accent-color:#1565D8;flex:none}
#bookd .rqlist label>span,#bookd .rqlist li.miss>span{display:grid;gap:2px;min-width:0}
#bookd .rqlist small{color:var(--muted);font-size:.75rem;line-height:1.35}
#bookd .rqlist li.low small{color:#b45309}
#bookd .rqlist li.miss b{font-weight:500}
#bookd .rqlist .am{font-weight:600;white-space:nowrap}
#bookd .rqact{display:flex;gap:10px;flex-wrap:wrap}#bookd .rqact .btn{flex:1 1 auto}
#bookd .rqact .btn[disabled]{opacity:.5;pointer-events:none}
#bookd .rqcard .fine{margin:0;text-align:center}
#bookd .rqdone{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,#2f7d5b 10%,var(--bg))}
#bookd .rqdone>span:nth-child(2){flex:1;display:grid;gap:2px}#bookd .rqdone small{color:var(--muted);font-size:.8125rem;line-height:1.35}
#bookd .rqok{width:28px;height:28px;border-radius:50%;background:#2f7d5b;color:#fff;display:grid;place-items:center;font-weight:700;flex:none}

#bookd .paypick{display:grid;gap:10px;margin-top:6px}
#bookd .pchips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
#bookd .pchips button{all:unset;cursor:pointer;display:grid;gap:2px;padding:12px 14px;border-radius:14px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line)}
#bookd .pchips button b{font-weight:600;font-size:.9375rem}#bookd .pchips button small{color:var(--muted);font-size:.75rem}
#bookd .pchips button[aria-checked="true"]{box-shadow:inset 0 0 0 2px var(--accent);background:var(--accent-soft,#e8f0fd)}
#bookd .pchips button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
#bookd .ppx:empty{display:none}#bookd .ppx{display:grid;gap:8px}
#bookd .ppnote{margin:0;font-size:.875rem;color:var(--muted);line-height:1.45;background:var(--soft);border-radius:12px;padding:10px 12px}
@media(max-width:760px){#bookd .pchips{grid-template-columns:1fr 1fr}}
#qmine .row.qmtot .lb small.pay{color:var(--accent)}
#bookd .qfast{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:14px;background:var(--accent-soft,#e8f0fd)}
#bookd .qfast[hidden]{display:none}
#bookd .qfast.late{background:color-mix(in srgb,#f59e0b 14%,var(--bg))}
#bookd .qfast .qfi{flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--bg);color:var(--accent)}#bookd .qfast.late .qfi{color:#b45309}
#bookd .qfast .qfi svg{width:18px;height:18px}#bookd .qfast>div{display:grid;gap:3px}#bookd .qfast b{font-weight:600;font-size:.9375rem}#bookd .qfast small{color:var(--muted);font-size:.8125rem;line-height:1.4}
#qslots [data-per] .best{display:block;font-style:normal;font-size:.6875rem;font-weight:600;color:#1f7a4d;margin-top:2px}
#bookd .pkgsug{border-radius:16px;padding:14px;background:color-mix(in srgb,#f59e0b 12%,var(--bg));box-shadow:inset 0 0 0 1px color-mix(in srgb,#f59e0b 35%,transparent);display:grid;gap:12px}
#bookd .pkgsug[hidden]{display:none}
#bookd .pkh{display:flex;gap:12px;align-items:flex-start}#bookd .pki{flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#f59e0b;color:#fff;font-size:.9rem}
#bookd .pkh>div{display:grid;gap:3px}#bookd .pkh b{font-weight:600}#bookd .pkh small{color:var(--muted);font-size:.8125rem;line-height:1.45}
#bookd .pka{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
#bookd .pka .btn{background:#1565D8;color:#fff}
.sent .svprep{margin:6px 0 4px;padding-left:18px;display:grid;gap:4px;color:var(--muted);font-size:.875rem;line-height:1.45}
.sent .svacts{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 8px}
#qremindL{margin-top:4px}
#bookd .ppsteps{background:var(--soft);border-radius:12px;padding:10px 12px;font-size:.875rem}#bookd .ppsteps summary{cursor:pointer;color:var(--accent);font-weight:600}#bookd .ppsteps ol{margin:8px 0 6px;padding-left:20px;display:grid;gap:6px;color:var(--muted);line-height:1.45}

#bookd .paycur{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;margin:0;font-size:.9375rem;color:var(--muted)}
#bookd .paycur b{color:var(--ink);font-weight:600}
#bookd .paycur .textlink{text-align:left}
#bookd .paysum[hidden]{display:none}
#bookd .pchips[hidden]{display:none}
#bookd .pchips button{padding:10px 12px}
#bookd .ykq{display:flex;flex-wrap:wrap;gap:8px}
#bookd .ykq button{all:unset;cursor:pointer;padding:10px 14px;border-radius:999px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line);font-size:.875rem;font-weight:500}
#bookd .ykq button[aria-checked="true"]{box-shadow:inset 0 0 0 2px var(--accent);background:var(--accent-soft,#e8f0fd)}
#bookd .ykq button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
#qclinicF{display:none!important}
#bookd .payrow4{display:none!important}
#bookd .paysum{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;margin:0;padding:12px 14px;border-radius:14px;background:var(--soft);font-size:.9375rem;color:var(--muted)}
#bookd .paysum b{color:var(--ink);font-weight:600}
#qyakapF .f:has(#qyreg),#qyakapF .yhelp{display:none!important}
#qyakapF .two{grid-template-columns:1fr}
#qmine .row.ykco{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 0;border-top:1px solid var(--line);font-size:.9375rem}
#qmine .row.ykco .lb small{display:block;color:var(--muted);font-size:.75rem}
#qmine .row.ykco + .row.qmtot{border-top:1px solid var(--line)}
#bookd .pchips.pslim{display:flex;flex-wrap:wrap;gap:8px}
#bookd .pchips.pslim button{padding:10px 16px;border-radius:999px;display:inline-flex}
#bookd .pchips.pslim button b{font-size:.9375rem}
#bookd .paycur .lbl{color:var(--ink);font-weight:600}
#bookd .ykpanel{display:grid;gap:12px}
#bookd .ykpanel[hidden]{display:none}
#bookd .ykcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
#bookd .ykc{display:flex;align-items:center;gap:12px;padding:14px;border-radius:14px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line);cursor:pointer}
#bookd .ykc input{width:20px;height:20px;margin:0;accent-color:#1565D8;flex:none}
#bookd .ykc span{display:grid;gap:2px;flex:1;min-width:0}#bookd .ykc b{font-weight:600}#bookd .ykc small{color:var(--muted);font-size:.75rem;line-height:1.35}
#bookd .ykc em{font-style:normal;font-size:.75rem;font-weight:600;color:#1f7a4d;background:color-mix(in srgb,#1f7a4d 12%,transparent);padding:3px 8px;border-radius:999px}
#bookd .ykc.on{box-shadow:inset 0 0 0 2px var(--accent);background:var(--accent-soft,#e8f0fd)}
#bookd .ykreq{display:grid;gap:8px;padding:14px;border-radius:14px;background:var(--soft)}#bookd .ykreq[hidden]{display:none}
#bookd .ykmore summary{cursor:pointer;color:var(--accent);font-weight:600;font-size:.9375rem}#bookd .ykmore[open] summary{margin-bottom:8px}
#bookd.ykmode .qpick{display:none!important}
#bookd.ykmode:not(.ykother) #rqup,#bookd.ykmode:not(.ykother) .tsearch{display:none!important}
#bookd .ykc{padding:12px 14px}
#qmineList .row.it.ykhide{display:none}
#bookd .ykpanel .ykhead{margin:0}
@media(max-width:560px){#bookd .ykcards{grid-template-columns:1fr}}
.ykt{display:inline-block;font-style:normal;font-size:.6875rem;font-weight:600;padding:2px 8px;border-radius:999px;margin-left:6px;vertical-align:middle}
.ykt.yes{color:#1f7a4d;background:color-mix(in srgb,#1f7a4d 12%,transparent)}.ykt.no{color:#9a5b00;background:color-mix(in srgb,#f59e0b 16%,transparent)}
#qmineList .yknc{display:block;color:#9a5b00;font-size:.75rem;font-weight:500;margin-top:2px}
#qslots [data-per][aria-pressed="true"] .best{color:#fff;opacity:.95}
#qdocRow{display:none!important}
#qOrdL[hidden]{display:none}
#bookd .dmy{display:none!important}
#bookd .bdtxt{font:inherit;font-size:1rem;letter-spacing:.04em;color:var(--ink);background:var(--bg);border:0;border-radius:12px;box-shadow:inset 0 0 0 1px var(--line);padding:12px 14px;min-height:48px;width:100%;box-sizing:border-box}
#bookd .fgroup .bdtxt{background:var(--bg)}
#bookd .bdtxt:focus{outline:2px solid var(--accent);outline-offset:1px}
#bookd .bdtxt.bad{box-shadow:inset 0 0 0 1.5px #c2412d}
#qform:not(.nmopen) .nm4>.f:nth-child(2){display:none}
#qform:not(.nmopen) .nm4>.f:nth-child(1),#qform:not(.nmopen) .nm4>.f:nth-child(3){grid-column:span 3}
@media(max-width:560px){#qform:not(.nmopen) .nm4>.f:nth-child(1),#qform:not(.nmopen) .nm4>.f:nth-child(3){grid-column:1/-1}}
#qquick{display:none!important}
#qwhoL{display:none}
#bookd .qmore-ticks{display:grid;gap:8px}
@media(min-width:900px){#bookd:has(.bstep[data-step="1"]:not([hidden])) .bside:has(.selempty){display:none}#bookd:has(.bstep[data-step="1"]:not([hidden])):has(.bside .selempty) .bgrid{grid-template-columns:minmax(0,760px)}}
#bookd.ykclinic .locpick .loc:has(input[value="home"]){display:none}
#bookd.ykclinic .locpick{grid-template-columns:1fr}
#qloaF,#qpaycoF{display:none!important}
#bookd .ppx{display:grid;gap:12px}
#bookd .ppfile{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;box-shadow:inset 0 0 0 1px var(--line);background:var(--bg);color:var(--accent);font-weight:600;font-size:.875rem;cursor:pointer;width:fit-content;max-width:100%}
#bookd .ppfile svg{width:18px;height:18px;flex:none}
#bookd .ppfile small{color:var(--muted);font-weight:500}
#bookd .ppfile.on{color:#1f7a4d;box-shadow:inset 0 0 0 1px color-mix(in srgb,#1f7a4d 40%,transparent)}
#bookd .cocode{display:flex;gap:8px}
#bookd .cocode input{flex:1;min-width:0;text-transform:uppercase;letter-spacing:.06em}
#bookd .cocode input::placeholder{text-transform:none;letter-spacing:0}
#qcoapply{background:#1565D8;color:#fff;border:0;border-radius:12px;padding:0 20px;font:inherit;font-weight:600;min-height:48px;cursor:pointer;flex:none}
#qcoapply:disabled{opacity:.7}
#bookd .coacct{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:14px 16px;border-radius:14px;background:color-mix(in srgb,#1f7a4d 9%,var(--bg));box-shadow:inset 0 0 0 1px color-mix(in srgb,#1f7a4d 32%,transparent)}
#bookd .coacct span{display:grid;gap:2px}#bookd .coacct small{color:var(--muted);font-size:.8125rem}
#bookd .ykinfo ul{margin:8px 0;padding-left:20px;display:grid;gap:6px}
#bookd .ykinfo p{margin:6px 0 0}
#bookd .lonline{grid-column:1/-1;grid-template-columns:auto 1fr;column-gap:12px;align-items:center}
#bookd .lonline .li{grid-row:span 2}
@media(min-width:640px){#bookd .locpick{grid-template-columns:repeat(3,minmax(0,1fr))}#bookd .lonline{grid-column:auto;grid-template-columns:none}#bookd .lonline .li{grid-row:auto}}

#bookd .olpanel{display:grid;gap:12px}#bookd .olpanel[hidden]{display:none}
#bookd .olpanel,#bookd .olpanel .ykc span{min-width:0}
@media(max-width:560px){#bookd .olpanel .ykcards{grid-template-columns:minmax(0,1fr)}}
#bookd .olspec select{width:100%;min-width:0;font:inherit;font-size:.875rem;margin-top:4px;padding:8px 10px;border-radius:10px;border:0;box-shadow:inset 0 0 0 1px var(--line);background:var(--bg);color:var(--ink);max-width:100%}
#bookd.olmode #rqup,#bookd.olmode .tsearch,#bookd.olmode .qpick,#bookd.olmode #qpkgsug,#bookd.olmode .ykpanel{display:none!important}

#bookd .ollabs[hidden]{display:none}
#bookd label.check#qteleF{font-size:.8125rem;align-items:flex-start;margin-top:4px}#bookd label.check#qteleF[hidden]{display:none}
.bsteps li.lock{cursor:default;opacity:.55}
#bookd .ykq.need{border-radius:16px;box-shadow:0 0 0 2px #c2412d;padding:4px;margin:-4px}
#bookd .ppneed{display:block;margin-top:6px;font-size:.8125rem;font-weight:600}
#bookd .needpick{outline:2px solid #C2362B;outline-offset:6px;border-radius:14px}
#bookd .pickerr{display:block;margin:10px 0 0;font:600 .8125rem/1.4 inherit;font-family:inherit;color:#C2362B!important}
