:root{
  --bg:#f6f5f1;--bg2:#ecede7;--accent:#0e6b5c;--text:#0f1c1a;--muted:#5d6b67;--paper:#0f1c1a;--paper-ink:#eef3f1;--band:#0e6b5c;--band-ink:#f1f7f5;--on-accent:#ffffff;
  --live:#e8775a;
  --serif:'InterDisplay','Inter',system-ui,sans-serif;--sans:'InterText','Inter',system-ui,sans-serif;--quote:'LoraItalic',Georgia,serif;
  --radius:999px;--r-panel:32px;--r-card:20px;
  --line:color-mix(in srgb,var(--text) 10%,transparent);
  --shadow:0 1px 2px color-mix(in srgb,var(--text) 6%,transparent),0 12px 32px -8px color-mix(in srgb,var(--text) 14%,transparent);
  --grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
body{font:400 16.5px/1.65 var(--sans);letter-spacing:-.006em;font-feature-settings:'cv11','ss01'}
body:after{content:'';position:fixed;inset:0;pointer-events:none;background:var(--grain);opacity:.035;z-index:1}
h1,h2,h3,h4{font-family:var(--serif);font-weight:600;letter-spacing:-.035em;line-height:1.02}
.h2{font-size:clamp(38px,5vw,68px);max-width:16ch}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:14px;color:var(--muted);margin-bottom:22px}
.eyebrow i{width:8px;height:8px;border-radius:50%;background:var(--live);box-shadow:0 0 0 0 color-mix(in srgb,var(--live) 60%,transparent);animation:pulse 2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 10px transparent}100%{box-shadow:0 0 0 0 transparent}}
.lead{font-size:19px;line-height:1.6;max-width:44ch;color:color-mix(in srgb,var(--text) 72%,var(--bg))}
.num{font-variant-numeric:tabular-nums}

/* nav */
.k-nav{background:color-mix(in srgb,var(--bg) 82%,transparent);border-bottom:1px solid var(--line)}
.logo{font-family:var(--serif);font-weight:600;letter-spacing:-.03em;font-size:22px}
.logo .mark{width:34px;height:34px;border-radius:11px;background:var(--accent);color:var(--on-accent);display:grid;place-items:center}
.logo .mark svg{width:18px;height:18px;color:var(--on-accent)}
.links{gap:4px}
.links a{padding:8px 14px;border-radius:999px;font-weight:500;font-size:14.5px;letter-spacing:-.01em}
.links a:after{display:none}
.links a:hover{background:var(--bg2)}
.links a.on{background:var(--text);color:var(--bg)}
.nav-r{display:flex;align-items:center;gap:10px}
.em{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;padding:10px 14px;border-radius:999px;border:1px solid var(--line)}
.em i{width:7px;height:7px;border-radius:50%;background:var(--live)}
.btn{font:500 15px/1 var(--sans);letter-spacing:-.01em;padding:15px 24px}
.btn.ghost{background:transparent;color:var(--text);border-color:var(--line)}
.btn.ghost:hover{background:var(--bg2);color:var(--text)}
.burger{display:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:transparent;position:relative;cursor:pointer}
.burger span{position:absolute;left:13px;right:13px;height:1.5px;background:var(--text);transition:transform .25s}
.burger span:first-child{top:18px}.burger span:last-child{top:25px}
.burger[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.burger[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}

/* hero */
.hero{padding:56px 0 40px}
.hero .wrap{display:grid;grid-template-columns:1fr 1.02fr;gap:56px;align-items:center}
.hero h1{font-size:clamp(50px,7.2vw,104px);letter-spacing:-.05em;line-height:.95}
.hero .lead{margin:28px 0 36px}
.hero .meta{display:flex;gap:28px;margin-top:40px;padding-top:26px;border-top:1px solid var(--line)}
.hero .meta b{display:block;font-family:var(--serif);font-size:30px;letter-spacing:-.04em;font-weight:600}
.hero .meta span{font-size:13.5px;color:var(--muted)}
.canvas{position:relative;aspect-ratio:1/1.02;border-radius:var(--r-panel);background:
  radial-gradient(120% 80% at 80% 0%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 60%),
  radial-gradient(90% 70% at 0% 100%,color-mix(in srgb,var(--live) 14%,transparent),transparent 60%),var(--bg2);overflow:hidden;isolation:isolate}
.canvas:before{content:'';position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:44px 44px;mask:radial-gradient(circle at 60% 40%,#000,transparent 75%);-webkit-mask:radial-gradient(circle at 60% 40%,#000,transparent 75%)}
.card{position:absolute;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(14px);border:1px solid color-mix(in srgb,#fff 50%,var(--line));border-radius:var(--r-card);box-shadow:var(--shadow);padding:18px 20px;opacity:0;transform:translateY(18px);animation:rise .9s cubic-bezier(.2,.7,.2,1) forwards}
@keyframes rise{to{opacity:1;transform:none}}
.c-appt{left:7%;top:8%;width:64%;animation-delay:.15s}
.c-vitals{right:6%;top:42%;width:52%;animation-delay:.45s}
.c-report{left:9%;bottom:9%;width:56%;animation-delay:.75s}
.c-rate{right:9%;top:9%;animation-delay:1s;padding:12px 16px}
.card small{display:block;font-size:12.5px;color:var(--muted)}
.card .row{display:flex;align-items:center;gap:12px}
.card b{font-family:var(--serif);font-weight:600;letter-spacing:-.02em}
.av{width:46px;height:46px;border-radius:14px;flex:none;overflow:hidden}
.av svg{width:100%;height:100%;display:block}
.slots{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.slots span{font-size:13px;font-weight:500;padding:7px 11px;border-radius:999px;border:1px solid var(--line)}
.slots span.on{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.ecg{width:100%;height:64px;margin-top:8px}
.ecg path{fill:none;stroke:var(--accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:420;stroke-dashoffset:420;animation:ecg 2.6s linear infinite}
@keyframes ecg{60%{stroke-dashoffset:0}100%{stroke-dashoffset:-420}}
.bpm{font-family:var(--serif);font-size:38px;font-weight:600;letter-spacing:-.04em;line-height:1}
.bpm em{font:400 14px var(--sans);color:var(--muted);font-style:normal}
.tick{width:34px;height:34px;border-radius:50%;background:color-mix(in srgb,var(--accent) 14%,var(--bg));color:var(--accent);display:grid;place-items:center;flex:none}
.tick svg{width:16px;height:16px}
@media (prefers-reduced-motion:reduce){.card{animation:none;opacity:1;transform:none}.ecg path{animation:none;stroke-dashoffset:0}.eyebrow i{animation:none}}

/* ribbon */
.ribbon{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;padding:18px 0;white-space:nowrap}
.ribbon .track{display:inline-flex;gap:56px;animation:slide 40s linear infinite;font-family:var(--serif);font-weight:500;letter-spacing:-.02em;font-size:20px;color:var(--muted)}
.ribbon .track span:before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:18px;vertical-align:4px}
@keyframes slide{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.ribbon .track{animation:none}}

/* bento */
.bento{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:minmax(240px,auto);gap:16px;margin-top:56px}
.tile{position:relative;border-radius:var(--r-card);background:var(--bg2);padding:30px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--line)}
.tile h3{font-size:28px;max-width:16ch}
.tile p{color:var(--muted);font-size:15.5px;max-width:38ch;margin-top:10px}
.tile .go{font-weight:500;font-size:14.5px;display:inline-flex;gap:8px;align-items:center;margin-top:18px}
.tile .go:after{content:'';width:16px;height:1.5px;background:currentColor;transition:width .25s}
.tile:hover .go:after{width:26px}
.t-a{grid-column:span 4;grid-row:span 2;background:var(--paper);color:var(--paper-ink);border:0}
.t-a p{color:color-mix(in srgb,var(--paper-ink) 70%,var(--paper))}
.t-b{grid-column:span 2;grid-row:span 2;background:var(--accent);color:var(--on-accent);border:0}
.t-b p{color:color-mix(in srgb,var(--on-accent) 80%,var(--accent))}
.t-c,.t-d,.t-e{grid-column:span 2}
.week{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:30px}
.week div{border-radius:14px;padding:12px 8px;text-align:center;background:color-mix(in srgb,var(--paper-ink) 7%,transparent);font-size:12.5px}
.week div b{display:block;font-family:var(--serif);font-size:22px;letter-spacing:-.03em;font-weight:600}
.week div.on{background:var(--paper-ink);color:var(--paper)}
.week-slots{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.week-slots span{font-size:13px;padding:8px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--paper-ink) 22%,transparent)}
.week-slots span.x{opacity:.35;text-decoration:line-through}
.big-num{font-family:var(--serif);font-weight:600;font-size:clamp(72px,8vw,120px);letter-spacing:-.06em;line-height:.9}
.phone{margin-top:20px;align-self:flex-start;width:100%;max-width:280px;background:var(--bg);border-radius:18px;padding:14px;box-shadow:var(--shadow);font-size:13px}
.phone b{font-size:14px}
.phone .bubble{margin-top:8px;background:color-mix(in srgb,#25d366 14%,var(--bg));border-radius:12px 12px 12px 4px;padding:10px 12px}
.icon{width:48px;height:48px;border-radius:14px;background:var(--bg);display:grid;place-items:center;color:var(--accent);margin-bottom:22px}
.icon svg{width:24px;height:24px}

/* journey */
.journey{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:56px;counter-reset:j}
.journey li{list-style:none;border-top:1.5px solid var(--text);padding-top:22px;counter-increment:j}
.journey li:before{content:'0' counter(j);font-family:var(--serif);font-weight:600;font-size:14px;color:var(--accent);letter-spacing:0}
.journey h3{font-size:24px;margin:10px 0 8px}
.journey p{color:var(--muted);font-size:15px}

/* doctor cards */
.rail{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:48px}
.doc{border-radius:var(--r-card);background:var(--bg2);overflow:hidden;border:1px solid var(--line);display:flex;flex-direction:column}
.doc .portrait{aspect-ratio:4/4.4}
.doc .portrait svg{width:100%;height:100%;display:block}
.doc .body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:4px;flex:1}
.doc h3{font-size:22px}
.doc .role{color:var(--accent);font-weight:500;font-size:14px}
.doc .q{font-size:13.5px;color:var(--muted)}
.doc .tags{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 16px}
.doc .tags span{font-size:12px;padding:5px 10px;border-radius:999px;background:var(--bg)}
.doc .foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid var(--line)}
.doc .fee{font-family:var(--serif);font-weight:600;font-size:20px;letter-spacing:-.03em}
.doc .fee small{font:400 12.5px var(--sans);color:var(--muted)}
.doc .btn{padding:11px 16px;font-size:14px}

/* quote */
.quote-big{font-family:var(--quote);font-style:italic;font-size:clamp(30px,3.8vw,50px);line-height:1.22;letter-spacing:-.01em;max-width:24ch}
.quote-by{display:flex;align-items:center;gap:14px;margin-top:34px;font-size:15px}
.quote-by .av{width:52px;height:52px}

/* cta band */
.cta{border-radius:var(--r-panel);background:var(--paper);color:var(--paper-ink);padding:clamp(40px,6vw,80px);position:relative;overflow:hidden;display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:end}
.cta:before{content:'';position:absolute;right:-10%;top:-40%;width:60%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 60%,transparent),transparent 65%);opacity:.6}
.cta h2{font-size:clamp(40px,5vw,72px);position:relative}
.cta p{color:color-mix(in srgb,var(--paper-ink) 72%,var(--paper));position:relative}
.cta .cta-row{position:relative;justify-content:flex-end}
.cta .btn{background:var(--paper-ink);color:var(--paper);border-color:var(--paper-ink)}
.cta .btn.ghost{background:transparent;color:var(--paper-ink);border-color:color-mix(in srgb,var(--paper-ink) 30%,transparent)}

/* inner page head */
.phead{padding:72px 0 30px}
.phead h1{font-size:clamp(48px,7vw,96px);letter-spacing:-.05em;line-height:.95;max-width:14ch}
.phead .lead{margin-top:22px}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chips button{font:500 14.5px var(--sans);padding:10px 16px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--text);cursor:pointer}
.chips button[aria-pressed=true]{background:var(--text);color:var(--bg);border-color:var(--text)}

/* services page */
.svc{display:grid;grid-template-columns:260px 1fr;gap:70px;align-items:start}
.svc nav{position:sticky;top:110px;display:grid;gap:2px}
.svc nav a{padding:10px 14px;border-radius:12px;font-weight:500;font-size:15px;color:var(--muted)}
.svc nav a:hover,.svc nav a.on{background:var(--bg2);color:var(--text)}
.dept{padding:10px 0 70px;border-bottom:1px solid var(--line);margin-bottom:60px;scroll-margin-top:110px}
.dept h2{font-size:clamp(34px,4vw,54px);margin-bottom:16px}
.dept .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}
.dept .grid div{background:var(--bg2);border-radius:16px;padding:20px;border:1px solid var(--line)}
.dept .grid b{display:block;font-family:var(--serif);font-weight:600;letter-spacing:-.02em;font-size:18px;margin-bottom:4px}
.dept .grid span{font-size:14px;color:var(--muted)}
.pk-toggle{display:inline-flex;background:var(--bg2);border-radius:999px;padding:4px;margin:26px 0 40px}
.pk-toggle button{border:0;background:transparent;font:500 14.5px var(--sans);padding:10px 18px;border-radius:999px;cursor:pointer;color:var(--muted)}
.pk-toggle button[aria-pressed=true]{background:var(--bg);color:var(--text);box-shadow:var(--shadow)}
.pk{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pkc{border-radius:var(--r-card);border:1px solid var(--line);padding:30px;background:var(--bg);display:flex;flex-direction:column}
.pkc.hot{background:var(--paper);color:var(--paper-ink);border:0}
.pkc.hot .muted,.pkc.hot li{color:color-mix(in srgb,var(--paper-ink) 78%,var(--paper))}
.pkc .badge{align-self:flex-start;font-size:12px;font-weight:500;padding:5px 10px;border-radius:999px;background:var(--live);color:#fff;margin-bottom:14px}
.pkc h3{font-size:26px}
.pkc .price{font-family:var(--serif);font-weight:600;font-size:52px;letter-spacing:-.05em;margin:18px 0 4px;line-height:1}
.pkc .price s{font:400 16px var(--sans);opacity:.5;margin-left:8px;letter-spacing:0}
.pkc ul{list-style:none;display:grid;gap:9px;margin:22px 0 28px;font-size:15px}
.pkc li{display:flex;gap:10px}
.pkc li:before{content:'';flex:none;width:18px;height:18px;margin-top:3px;border-radius:50%;background:color-mix(in srgb,var(--accent) 16%,transparent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230e6b5c' stroke-width='3'%3E%3Cpath d='M6 12l4 4 8-8'/%3E%3C/svg%3E") center/11px no-repeat}
.pkc .btn{margin-top:auto}
.pkc.hot .btn{background:var(--paper-ink);color:var(--paper);border-color:var(--paper-ink)}

/* booking stepper */
.book{display:grid;grid-template-columns:1fr 380px;gap:40px;align-items:start}
.steps{display:flex;gap:6px;margin-bottom:34px}
.steps span{flex:1;height:4px;border-radius:4px;background:var(--bg2);overflow:hidden;position:relative}
.steps span:after{content:'';position:absolute;inset:0;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .4s}
.steps span.done:after{transform:none}
.stage{display:none;animation:rise .45s cubic-bezier(.2,.7,.2,1) forwards}
.stage.on{display:block}
.stage h2{font-size:clamp(30px,3.6vw,44px);margin-bottom:8px}
.stage>p{color:var(--muted);margin-bottom:26px}
.opts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.opt{text-align:left;border:1px solid var(--line);background:var(--bg);border-radius:18px;padding:18px;cursor:pointer;font:inherit;color:inherit;transition:border-color .2s,box-shadow .2s}
.opt:hover{border-color:color-mix(in srgb,var(--accent) 50%,transparent)}
.opt[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.opt b{display:block;font-family:var(--serif);font-weight:600;letter-spacing:-.02em;font-size:18px;margin-top:12px}
.opt small{color:var(--muted);font-size:13.5px}
.opt .icon{margin:0;width:40px;height:40px;background:var(--bg2)}
.opt.docopt{display:flex;gap:14px;align-items:center}
.opt.docopt b{margin-top:0}
.dates{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}
.dates .opt{text-align:center;padding:14px 6px}
.dates .opt b{margin-top:2px;font-size:26px}
.dates .opt[disabled]{opacity:.35;cursor:not-allowed}
.slot-grp h3{font-family:var(--sans);font-weight:500;font-size:14px;letter-spacing:0;color:var(--muted);margin:18px 0 10px}
.slot-grp .chips button[disabled]{opacity:.35;text-decoration:line-through;cursor:not-allowed}
.nav-btns{display:flex;justify-content:space-between;margin-top:34px}
.summary{position:sticky;top:110px;border-radius:var(--r-card);background:var(--bg2);border:1px solid var(--line);padding:28px}
.summary h3{font-size:22px;margin-bottom:18px}
.summary dl{display:grid;grid-template-columns:auto 1fr;gap:12px 18px;font-size:15px}
.summary dt{color:var(--muted)}
.summary dd{text-align:right;font-weight:500}
.summary .fee{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--line);margin-top:20px;padding-top:18px;font-family:var(--serif);font-weight:600;font-size:30px;letter-spacing:-.04em}
.summary .fee span{font:400 14px var(--sans);letter-spacing:0;color:var(--muted)}
.ticket{border-radius:var(--r-card);background:var(--paper);color:var(--paper-ink);padding:36px;max-width:520px;position:relative}
.ticket .tok{font-family:var(--serif);font-weight:600;font-size:96px;letter-spacing:-.06em;line-height:1;margin:10px 0}
.ticket dl{display:grid;grid-template-columns:auto 1fr;gap:10px 18px;margin-top:22px;font-size:15px}
.ticket dt{opacity:.65}.ticket dd{text-align:right}

/* contact */
.hours{width:100%;border-collapse:collapse;font-size:15.5px}
.hours td{padding:14px 0;border-bottom:1px solid var(--line)}
.hours td:last-child{text-align:right;font-variant-numeric:tabular-nums}
.hours tr.today td{color:var(--accent);font-weight:500}
.emerg{border-radius:var(--r-card);background:var(--live);color:#fff;padding:34px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;scroll-margin-top:110px}
.emerg b{font-family:var(--serif);font-weight:600;font-size:clamp(30px,4vw,48px);letter-spacing:-.04em;display:block}
.emerg .btn{background:#fff;color:var(--live);border-color:#fff}
.map{border-radius:var(--r-panel);overflow:hidden;background:var(--bg2);aspect-ratio:16/10;position:relative;border:1px solid var(--line)}
.map svg{position:absolute;inset:0;width:100%;height:100%}
.map .btn{position:absolute;left:24px;bottom:24px}
.faq details{border-bottom:1px solid var(--line);padding:22px 0}
.faq summary{font-family:var(--serif);font-weight:600;letter-spacing:-.02em;font-size:21px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:'';flex:none;width:28px;height:28px;border-radius:50%;background:var(--bg2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f1c1a' stroke-width='2'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/14px no-repeat;transition:transform .25s}
.faq details[open] summary:after{transform:rotate(45deg)}
.faq details p{margin-top:12px;color:var(--muted);max-width:62ch}

.k-form input,.k-form select,.k-form textarea{border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:var(--bg);font:400 16px var(--sans)}
.k-form input:focus,.k-form select:focus,.k-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}
.k-form label{letter-spacing:0;font-weight:500;color:var(--text);font-size:14px}
.k-foot h4{font-family:var(--serif);font-weight:600;letter-spacing:-.02em;font-size:16px}
.k-info dt{font-family:var(--sans);font-style:normal;font-weight:500;font-size:14px;color:var(--muted)}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}

@media(max-width:1000px){
 .em{display:none}
 .hero .wrap,.cta,.book,.svc{grid-template-columns:1fr}
 .canvas{aspect-ratio:1/1.1}
 .bento{grid-template-columns:1fr 1fr}.t-a,.t-b{grid-column:span 2;grid-row:auto}.t-c,.t-d,.t-e{grid-column:span 2}
 .rail,.journey{grid-template-columns:1fr 1fr}
 .pk,.dept .grid,.opts{grid-template-columns:1fr}
 .svc nav{position:static;display:flex;overflow-x:auto}
 .summary{position:static}
 .cta .cta-row{justify-content:flex-start}
}
@media(max-width:900px){
 .burger{display:block}.k-nav .btn{display:none}
 .links.open{display:flex;position:absolute;top:76px;left:0;right:0;flex-direction:column;gap:4px;background:var(--bg);border-bottom:1px solid var(--line);padding:12px 20px 20px}
 .links.open a{padding:14px 16px;font-size:17px}
}
@media(max-width:700px){
 .rail,.journey{grid-template-columns:1fr}
 .dates{grid-template-columns:repeat(4,1fr)}
 .hero .meta{gap:18px}
 .card{padding:14px 15px}.c-appt{width:80%}.c-vitals{width:62%}.c-report{width:72%}
}
