:root{--ink: #142523;--ink-soft: #3c4b48;--paper: #EFF3EE;--paper-raised: #FFFFFF;--teal: #0E4B48;--teal-deep: #0A3532;--maroon: #7C2140;--clay: #B85128;--clay-bright: #D2632F;--line: rgba(20,37,35,.14);--line-soft: rgba(20,37,35,.08);--dep-heart: #146356;--dep-heart-soft: #E4EEE9;--dep-ent: #7C2140;--dep-ent-soft: #F3E4E8;--dep-ortho: #233C63;--dep-ortho-soft: #E4E8F0;--dep-neuro: #4A2545;--dep-neuro-soft: #EDE3EB;--dep-gynae: #8E3B44;--dep-gynae-soft: #F1E4E4;--display: "Fraunces", serif;--body: "Inter", sans-serif;--mono: "IBM Plex Mono", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--display);font-weight:560;margin:0;letter-spacing:-.01em}p{margin:0}.wrap{max-width:1180px;margin:0 auto;padding:0 28px}::selection{background:var(--clay);color:#fff}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.in{opacity:1;transform:translateY(0)}.ribbon{background:var(--teal-deep);color:#edeae1;font-family:var(--mono);font-size:12.5px}.ribbon .wrap{display:flex;justify-content:space-between;align-items:center;padding:8px 28px;gap:12px;flex-wrap:wrap}.ribbon a{text-decoration:none;color:inherit}.ribbon .phone{color:#f3d9c4;font-weight:500}.ribbon .phone:hover{text-decoration:underline}.site header{position:sticky;top:0;z-index:50;background:#eff3eeeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;padding:16px 28px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}.brand-mark{width:40px;height:40px;border-radius:50%;background:var(--teal);display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--display);font-size:19px;font-weight:650}.brand-name{font-family:var(--display);font-size:19px;font-weight:650;color:var(--ink);line-height:1.1}.brand-sub{font-family:var(--mono);font-size:10.5px;color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase}nav.links{display:flex;gap:20px;align-items:center;flex-shrink:1;min-width:0}nav.links a:not(.btn){font-size:14.5px;text-decoration:none;color:var(--ink-soft);font-weight:500;position:relative;padding:4px 0;white-space:nowrap}nav.links a:not(.btn):after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0%;background:var(--clay);transition:width .25s ease}nav.links a:not(.btn):hover{color:var(--ink)}nav.links a:not(.btn):hover:after{width:100%}nav.links a.btn{flex-shrink:0;padding:11px 20px}nav.links a.btn-primary:hover{color:#fff}nav.links .nav-staff{font-family:var(--mono);font-size:12px;opacity:.7}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--body);font-weight:600;font-size:14.5px;padding:11px 20px;border-radius:3px;text-decoration:none;border:1.5px solid transparent;cursor:pointer;white-space:nowrap;min-height:44px;transition:background .15s,color .15s,border-color .15s}.btn-primary{background:var(--clay);color:#fff}.btn-primary:hover{background:var(--clay-bright)}.btn-ghost{border-color:var(--ink);color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:#fff}.btn-sm{padding:8px 14px;font-size:13px}.btn-lg{padding:14px 24px;font-size:16px}.btn-block{width:100%;justify-content:center}.hero{position:relative;overflow:hidden;padding:88px 0 70px;background:radial-gradient(700px 420px at 88% -10%,rgba(184,81,40,.1),transparent 60%),var(--paper);border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--maroon);display:flex;align-items:center;gap:10px;margin-bottom:22px}.eyebrow:before{content:"";width:26px;height:1.5px;background:var(--maroon)}.hero h1{font-size:clamp(38px,5vw,58px);line-height:1.04;font-weight:600;color:var(--ink)}.hero h1 em{font-style:italic;color:var(--teal);font-weight:450}.hero-lede{margin-top:22px;font-size:17.5px;color:var(--ink-soft);max-width:46ch;line-height:1.65}.hero-cta{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}.hero-meta{display:flex;gap:28px;margin-top:44px;padding-top:28px;border-top:1px solid var(--line);flex-wrap:wrap}.hero-meta div{display:flex;flex-direction:column;gap:3px}.hero-meta .n{font-family:var(--display);font-size:26px;color:var(--teal);font-weight:560}.hero-meta .l{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft)}.signpost{position:relative;background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;padding:26px;box-shadow:0 30px 60px -32px #14252359}.signpost-top{background:var(--teal);color:#fff;text-align:center;padding:16px 10px;border-radius:3px;font-family:var(--display);font-size:20px;font-weight:600;margin-bottom:16px}.signpost-top small{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;color:#cde3df;margin-top:6px;text-transform:uppercase}.signpost-rows{display:flex;flex-direction:column;gap:9px}.sp-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px;border-radius:3px;border:1px solid var(--line-soft);background:var(--paper);font-size:13.5px}.sp-row .tag{width:8px;height:8px;border-radius:50%;flex-shrink:0}.sp-row span.dep{font-weight:600;flex:1}.sp-row span.doc{font-family:var(--mono);font-size:11px;color:var(--ink-soft)}.dep-heart,.tag.dep-heart{background:var(--dep-heart)}.dep-heart-soft{background:var(--dep-heart-soft);color:var(--dep-heart)}.dep-heart-text{color:var(--dep-heart)}.dep-ent,.tag.dep-ent{background:var(--dep-ent)}.dep-ent-soft{background:var(--dep-ent-soft);color:var(--dep-ent)}.dep-ent-text{color:var(--dep-ent)}.dep-ortho,.tag.dep-ortho{background:var(--dep-ortho)}.dep-ortho-soft{background:var(--dep-ortho-soft);color:var(--dep-ortho)}.dep-ortho-text{color:var(--dep-ortho)}.dep-neuro,.tag.dep-neuro{background:var(--dep-neuro)}.dep-neuro-soft{background:var(--dep-neuro-soft);color:var(--dep-neuro)}.dep-neuro-text{color:var(--dep-neuro)}.dep-gynae,.tag.dep-gynae{background:var(--dep-gynae)}.dep-gynae-soft{background:var(--dep-gynae-soft);color:var(--dep-gynae)}.dep-gynae-text{color:var(--dep-gynae)}section{padding:86px 0}.sec-head{max-width:640px;margin-bottom:56px}.sec-head .eyebrow{margin-bottom:16px}.sec-head h2{font-size:clamp(28px,3.4vw,40px);color:var(--ink);font-weight:560}.sec-head p{margin-top:16px;color:var(--ink-soft);font-size:16px;max-width:56ch}.wall{border-top:1px solid var(--line)}.plaque{position:relative;border-bottom:1px solid var(--line);display:grid;grid-template-columns:64px 1fr 1.3fr;gap:0;padding-left:6px}.plaque:hover .plaque-strip{width:10px}.plaque-strip{position:absolute;left:0;top:0;bottom:0;width:6px;transition:width .25s ease}.plaque-num{font-family:var(--mono);font-size:12px;color:var(--ink-soft);padding:34px 0 34px 22px}.plaque-doc{padding:30px 24px 30px 0}.plaque-dept{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:500;margin-bottom:10px;display:inline-block;padding:4px 9px;border-radius:2px}.plaque-name{font-family:var(--display);font-size:23px;font-weight:600;color:var(--ink)}.plaque-cred{font-size:13.5px;color:var(--ink-soft);margin-top:6px;line-height:1.5}.plaque-role{font-size:13.5px;margin-top:8px;font-weight:600}.plaque-info{padding:30px 24px 30px 0}.plaque-services{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.chip{font-size:12.5px;padding:6px 12px;border-radius:20px;border:1px solid var(--line);color:var(--ink-soft);background:var(--paper-raised)}.plaque-note{margin-top:16px;font-size:12.5px;font-family:var(--mono);color:var(--ink-soft)}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--line);border:1px solid var(--line)}.why-card{background:var(--paper-raised);padding:34px 28px}.why-num{font-family:var(--mono);font-size:12px;color:var(--clay);margin-bottom:16px}.why-card h3{font-size:19px;font-weight:600;margin-bottom:10px}.why-card p{font-size:14.5px;color:var(--ink-soft)}.loc-band{background:var(--teal-deep);color:#edeae1}.loc-band .sec-head h2,.loc-band .sec-head p{color:#edeae1}.loc-band .eyebrow{color:#e0b08c}.loc-band .eyebrow:before{background:#e0b08c}.loc-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:stretch}.loc-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.14);border-radius:4px;padding:30px}.loc-line{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.12)}.loc-line:last-child{border-bottom:none}.loc-line .ic{font-family:var(--mono);font-size:11px;color:#e0b08c;width:76px;flex-shrink:0;padding-top:2px}.loc-line .v{font-size:14.5px;line-height:1.55}.loc-line a{text-decoration:none;color:#f3d9c4;font-weight:600}.map-embed{border-radius:4px;overflow:hidden;border:1px solid rgba(255,255,255,.14);min-height:340px}.map-embed iframe{width:100%;height:100%;min-height:340px;border:0;filter:grayscale(.15) contrast(1.05)}.cta-band{background:var(--clay);color:#fff;text-align:center;padding:70px 0}.cta-band h2{font-size:clamp(26px,3.4vw,36px);font-weight:600;max-width:20ch;margin:0 auto}.cta-band p{margin-top:14px;color:#ffffffd9;font-size:16px}.cta-band .hero-cta{justify-content:center;margin-top:30px}.cta-band .btn-ghost{border-color:#fff;color:#fff}.cta-band .btn-ghost:hover{background:#fff;color:var(--clay)}.cta-band .btn-primary{background:var(--teal-deep)}.cta-band .btn-primary:hover{background:var(--teal)}footer{background:var(--ink);color:#c9d2cf;padding:56px 0 26px;font-size:13.5px}.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,.1)}.foot-grid h4{color:#fff;font-family:var(--body);font-size:13px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;margin-bottom:16px}.foot-grid p,.foot-grid a{color:#aab6b2;text-decoration:none;display:block;margin-bottom:9px}.foot-grid a:hover{color:#fff}.foot-bottom{padding-top:22px;display:flex;justify-content:space-between;color:#8b9b96;flex-wrap:wrap;gap:10px}.float-call{position:fixed;bottom:22px;right:22px;z-index:60;background:var(--teal);color:#fff;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 14px 30px -10px #0e4b4899;animation:pulse-call 2.6s ease infinite}@keyframes pulse-call{0%,to{box-shadow:0 14px 30px -10px #0e4b4899}50%{box-shadow:0 14px 30px -6px #0e4b48d9,0 0 0 8px #0e4b481a}}.page-hero{padding:64px 0 48px;background:radial-gradient(600px 360px at 90% -20%,rgba(184,81,40,.08),transparent 60%),var(--paper);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(32px,4vw,48px);line-height:1.08;font-weight:600;max-width:20ch}.page-hero-lede{margin-top:18px;font-size:17px;color:var(--ink-soft);max-width:56ch;line-height:1.65}.section-light{background:var(--paper-raised)}.sec-head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}.sec-head-row .btn{flex-shrink:0}.preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.preview-card{display:block;text-decoration:none;color:inherit;background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:24px;transition:border-color .2s,box-shadow .2s}.preview-card:hover{border-color:var(--teal);box-shadow:0 12px 32px -16px #14252333}.preview-tag{display:block;width:8px;height:8px;border-radius:50%;margin-bottom:14px}.preview-card h3{font-size:18px;font-weight:600;margin-bottom:8px}.preview-name{font-family:var(--display);font-size:16px;font-weight:600;margin-bottom:4px}.preview-cred{font-size:12.5px;color:var(--ink-soft);line-height:1.5}.preview-more{margin-top:24px;font-size:14px;color:var(--ink-soft)}.preview-more a{color:var(--teal);font-weight:600}.service-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.service-preview-item{padding:16px 18px;background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;font-size:14px;font-weight:500}.sp-row-link{text-decoration:none;color:inherit;transition:background .15s}.sp-row-link:hover{background:var(--paper-raised)}.plaque-bio{font-size:14px;color:var(--ink-soft);margin-top:12px;line-height:1.6;max-width:52ch}.plaque-meta{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:12px}.plaque-timing,.plaque-fee{font-family:var(--mono);font-size:11px;color:var(--ink-soft)}.plaque-fee{color:var(--teal);font-weight:500}.when-to-visit{margin-bottom:14px}.when-to-visit ul{margin:8px 0 0;padding-left:18px;font-size:13.5px;color:var(--ink-soft);line-height:1.6}.dept-nav{display:flex;flex-wrap:wrap;gap:8px;padding:24px 28px}.dept-nav-item{padding:8px 14px;border-radius:20px;font-size:13px;font-weight:600;text-decoration:none;transition:opacity .15s}.dept-nav-item:hover{opacity:.85}.about-story{max-width:720px}.about-para{font-size:17px;color:var(--ink-soft);line-height:1.7;margin-bottom:20px}.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.step-card{background:var(--paper-raised);border:1px solid var(--line);padding:24px;border-radius:4px}.step-num{font-family:var(--mono);font-size:12px;color:var(--clay);display:block;margin-bottom:12px}.step-card h3{font-size:17px;font-weight:600;margin-bottom:8px}.step-card p{font-size:14px;color:var(--ink-soft);line-height:1.55}.diag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.diag-card{background:var(--paper);border:1px solid var(--line);padding:20px;border-radius:4px}.diag-dept{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--maroon)}.diag-card h3{font-size:16px;font-weight:600;margin:8px 0}.diag-card p{font-size:13.5px;color:var(--ink-soft)}.service-dept-header{margin-bottom:32px;max-width:720px}.service-dept-header h2{font-size:28px;margin:12px 0 6px}.service-dept-role{font-weight:600;color:var(--teal);font-size:14px}.service-dept-bio{margin-top:12px;color:var(--ink-soft);line-height:1.65}.service-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.service-detail-card{background:var(--paper-raised);border:1px solid var(--line);padding:20px;border-radius:4px}.section-light .service-detail-card{background:var(--paper)}.service-detail-card h3{font-size:16px;font-weight:600;margin-bottom:8px}.service-detail-card p{font-size:14px;color:var(--ink-soft);line-height:1.55}.service-dept-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;padding-top:16px;border-top:1px solid var(--line)}.service-dept-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.info-callout{background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--teal);padding:28px 32px;border-radius:4px;max-width:720px;margin:0 auto}.section-light .info-callout{background:var(--paper-raised)}.info-callout h3{font-size:20px;margin-bottom:10px}.info-callout p{color:var(--ink-soft);line-height:1.6}.info-callout a{color:var(--teal);font-weight:600}.timing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.timing-card{background:var(--paper-raised);border:1px solid var(--line);padding:24px;border-radius:4px}.timing-card h3{font-size:17px;margin-bottom:8px}.timing-detail{font-family:var(--display);font-size:18px;color:var(--teal);font-weight:600;margin:8px 0}.timing-card-highlight{border-color:var(--teal);background:var(--dep-heart-soft)}.directions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.direction-card{background:var(--paper-raised);border:1px solid var(--line);padding:24px;border-radius:4px}.direction-card h3{font-size:16px;margin-bottom:8px}.direction-card p{font-size:14px;color:var(--ink-soft);line-height:1.6}.faq-list{max-width:720px}.faq-item{border-bottom:1px solid var(--line);padding:16px 0}.faq-item summary{font-weight:600;cursor:pointer;font-size:15px;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:before{content:"+ ";color:var(--clay);font-weight:700}.faq-item[open] summary:before{content:"− "}.faq-item p{margin-top:12px;color:var(--ink-soft);font-size:14.5px;line-height:1.6;padding-left:18px}.testimonial-stats{display:flex;gap:48px;margin-bottom:48px;flex-wrap:wrap}.testimonial-stats .stat-n{font-family:var(--display);font-size:36px;color:var(--teal);font-weight:560;display:block}.testimonial-stats .stat-l{font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--ink-soft)}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.testimonial-card{background:var(--paper-raised);border:1px solid var(--line);padding:28px;border-radius:4px}.testimonial-stars{color:var(--clay);font-size:14px;margin-bottom:8px}.testimonial-dept{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--maroon);display:block;margin-bottom:12px}.testimonial-quote{font-size:15px;line-height:1.65;margin-bottom:16px}.testimonial-author{font-size:13px;color:var(--ink-soft)}.testimonial-preview p{font-size:14.5px;line-height:1.6;margin-bottom:12px}.page-inner{padding:48px 0 100px}.page-inner h1{font-size:clamp(28px,3vw,36px);margin-bottom:12px}.page-inner .lede{color:var(--ink-soft);margin-bottom:32px;max-width:56ch}.form{display:flex;flex-direction:column;gap:16px;max-width:480px}.form label{display:flex;flex-direction:column;gap:6px;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft)}.form input,.form select,.form textarea{padding:12px 14px;border:1px solid var(--line);border-radius:3px;font-family:var(--body);font-size:16px;background:var(--paper-raised);color:var(--ink)}.form input:focus,.form select:focus,.form textarea:focus{outline:2.5px solid var(--clay-bright);outline-offset:2px}.card{background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;padding:24px}.booking-wizard{max-width:520px}.booking-layout{display:grid;grid-template-columns:1fr 320px;gap:48px;align-items:start}.booking-sidebar{background:var(--paper-raised);border:1px solid var(--line);padding:24px;border-radius:4px;position:sticky;top:100px}.booking-expect-list{margin:16px 0 0;padding-left:20px;font-size:13.5px;color:var(--ink-soft);line-height:1.65}.booking-expect-list li{margin-bottom:12px}.booking-steps{display:flex;gap:8px;margin-bottom:32px}.booking-step{flex:1;height:4px;border-radius:99px;background:var(--line-soft)}.booking-step.active{background:var(--clay)}.booking-step.done{background:var(--teal)}.slot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.slot-btn{padding:12px;border:1px solid var(--line);border-radius:3px;background:var(--paper-raised);font-size:14px;cursor:pointer}.slot-btn:hover{border-color:var(--teal)}.slot-btn.selected{background:var(--teal);color:#fff;border-color:var(--teal)}.calendar{background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;padding:16px}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.calendar-day-label{font-family:var(--mono);font-size:11px;color:var(--ink-soft);padding:8px 0}.calendar-day{padding:10px;border:none;background:transparent;border-radius:3px;cursor:pointer;font-size:14px}.calendar-day:hover:not(:disabled){background:var(--paper)}.calendar-day.selected{background:var(--teal);color:#fff}.calendar-day:disabled{color:var(--line);cursor:not-allowed}.alert-error{background:#ffdad6;color:#ba1a1a;padding:12px;border-radius:3px;font-size:14px}.success-screen{text-align:center;padding:48px 0}.success-icon{font-size:64px;color:var(--teal);margin-bottom:16px}.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:10px;min-width:44px;min-height:44px;position:relative;z-index:46;flex-shrink:0}.menu-toggle span{display:block;width:22px;height:2px;background:var(--ink);margin:5px 0;transition:transform .2s,opacity .2s}.menu-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}body.menu-open{overflow:hidden}.nav-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:44;border:none;cursor:pointer;background:#14252373;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.portal-nav-backdrop{z-index:29}.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2.5px solid var(--clay-bright);outline-offset:2px}@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.signpost{order:-1}.preview-grid,.service-detail-grid,.testimonial-grid,.timing-grid,.directions-grid,.why-grid{grid-template-columns:1fr}.service-preview-grid,.steps-grid{grid-template-columns:1fr 1fr}.booking-layout{grid-template-columns:1fr}.booking-sidebar{position:static}.directions-grid{grid-template-columns:1fr}}@media(max-width:1024px){nav.links{position:fixed;top:64px;right:0;bottom:0;left:0;background:var(--paper);flex-direction:column;align-items:stretch;padding:30px 28px;gap:18px;transform:translate(100%);transition:transform .3s ease;overflow-y:auto;z-index:45;display:flex;box-shadow:-8px 0 32px #1425231f}nav.links.open{transform:translate(0)}nav.links a:not(.btn){font-size:18px;padding:6px 0}nav.links a.btn-primary{display:inline-flex;width:100%;justify-content:center;margin-top:8px}nav.links .nav-staff{opacity:1;font-size:14px;text-align:center;padding-top:16px;margin-top:8px;border-top:1px solid var(--line)}.menu-toggle{display:block}.brand-sub{display:none}}@media(max-width:760px){.plaque{grid-template-columns:44px 1fr}.plaque-info{grid-column:2;padding-top:0}.plaque-num{padding:24px 0 8px 16px}.plaque-doc{padding:0 16px 12px 0}.loc-grid,.why-grid,.foot-grid{grid-template-columns:1fr}section{padding:60px 0}}.portal-layout{display:flex;min-height:100vh;background:var(--paper);font-family:var(--body);overflow-x:hidden}.portal-sidebar{width:240px;background:var(--teal-deep);color:#edeae1;padding:24px;display:flex;flex-direction:column;gap:16px;position:fixed;top:0;left:0;bottom:0;z-index:40;overflow:hidden}.portal-brand{font-family:var(--display);font-size:18px;font-weight:650;color:#fff}.portal-user{font-size:13px;color:#aab6b2}.portal-user .badge{display:inline-block;margin-top:4px;padding:2px 8px;border-radius:99px;background:#ffffff1a;font-size:11px;text-transform:capitalize}.portal-nav{display:flex;flex-direction:column;gap:4px;flex:1;min-height:0;overflow-y:auto}.portal-nav a{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:3px;color:#cde3df;font-size:14px;text-decoration:none}.portal-nav a:hover{background:#ffffff14}.portal-nav a.active{background:var(--clay);color:#fff}.portal-sidebar-footer{margin-top:auto;padding-top:16px;border-top:1px solid rgba(255,255,255,.12);flex-shrink:0}.portal-logout{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 14px;border-radius:3px;border:1px solid rgba(255,255,255,.22);background:#ffffff0a;color:#edeae1;font-family:var(--body);font-size:14px;font-weight:600;cursor:pointer;min-height:44px;transition:background .15s,border-color .15s,color .15s}.portal-logout:hover{background:#ffffff1a;border-color:#ffffff59;color:#fff}.portal-logout:active{background:#ffffff24}.portal-logout-icon{flex-shrink:0;opacity:.9}.portal-content{flex:1;margin-left:240px;min-height:100vh;display:flex;flex-direction:column}.portal-main{flex:1;padding:32px}.portal-mobile-header,.portal-mobile-nav{display:none}.portal-page h1{font-family:var(--display);font-size:32px;font-weight:560;margin-bottom:4px}.portal-page .page-subtitle{color:var(--ink-soft);font-size:14px;margin-bottom:32px}.portal-help-box{background:var(--dep-heart-soft);border:1px solid rgba(20,99,86,.15);border-left:3px solid var(--teal);border-radius:4px;padding:14px 16px;margin:-12px 0 24px}.portal-help-box p{margin:0;font-size:14px;line-height:1.55;color:var(--ink-soft)}.field-label-wrap{display:flex;flex-direction:column;gap:4px}.field-label-title{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink);font-weight:600}.field-label-hint{font-size:12px;line-height:1.4;color:var(--ink-soft);margin-bottom:4px}.metric-desc{display:block;font-size:11px;line-height:1.35;color:var(--ink-soft);margin-top:6px}.section-intro{margin-bottom:16px}.section-intro-title{font-family:var(--display);font-size:20px;font-weight:600;margin:0 0 4px}.section-intro-desc{margin:0;font-size:13px;color:var(--ink-soft);line-height:1.45}.portal-loading{display:flex;align-items:center;justify-content:center;min-height:100vh}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--paper);padding:16px}.login-card{width:100%;max-width:400px}.login-brand{text-align:center;margin-bottom:32px}.login-brand .brand-mark{margin:0 auto 12px}.table{width:100%;border-collapse:collapse;background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;overflow:hidden;font-size:14px}.table th,.table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--line)}.table th{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);background:var(--paper)}.badge{display:inline-block;padding:4px 10px;border-radius:99px;font-size:12px;font-weight:600;text-transform:capitalize}.badge-pending{background:#fff3cd;color:#856404}.badge-confirmed{background:var(--dep-heart-soft);color:var(--dep-heart)}.badge-checked_in{background:#e4eee9;color:#146356}.badge-waiting{background:var(--paper);color:var(--ink-soft)}.badge-called{background:var(--dep-ortho-soft);color:var(--dep-ortho)}.badge-in_consultation{background:var(--dep-neuro-soft);color:var(--dep-neuro)}.badge-completed{background:var(--dep-heart-soft);color:var(--dep-heart)}.badge-cancelled{background:#ffdad6;color:#ba1a1a}.queue-list{display:flex;flex-direction:column;gap:8px}.queue-item{display:flex;align-items:center;gap:16px;padding:14px 16px;background:var(--paper-raised);border:1px solid var(--line);border-radius:4px}.token-badge{width:40px;height:40px;border-radius:50%;background:var(--paper);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.token-display{font-family:var(--display);font-size:48px;font-weight:800;color:var(--teal);line-height:1}.token-card{background:var(--paper-raised);border:2px solid var(--teal);border-radius:4px;padding:16px;text-align:center}.patient-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.portal-textarea{width:100%;margin-top:8px;border:1px solid var(--line);border-radius:3px;padding:10px;font-family:var(--body);font-size:14px;resize:vertical}.card-muted{background:var(--paper)}.empty-state{text-align:center;padding:3rem;color:var(--ink-soft)}.empty-state-icon{font-size:48px;color:var(--teal);margin-bottom:1rem}.empty-queue{padding:2rem;text-align:center}.queue-item-flat{border-radius:0;border:none;border-bottom:1px solid var(--line)}.stat-icon{width:48px;height:48px;border-radius:50%;background:var(--dep-heart-soft);color:var(--dep-heart);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700}.stat-icon-wait{background:var(--dep-ortho-soft);color:var(--dep-ortho)}.portal-section{margin-bottom:2rem}.section-title{font-family:var(--display);font-size:20px;font-weight:600;margin-bottom:1rem}.section-header-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;flex-wrap:wrap;gap:12px}.section-header-row .section-intro{flex:1;min-width:200px}.bento-side-header{padding-bottom:16px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:0}.bento-side-header .section-intro{flex:1}.consultation-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:1rem}.stat-card .metric-card{border:none;padding:0;background:transparent;flex:1}.stat-card .metric-value{font-size:1.75rem}.form label .field-label-hint{display:block;margin:4px 0 6px}.portal-select{padding:8px 12px;border-radius:3px;border:1px solid var(--line);font-family:var(--body);background:var(--paper-raised)}.portal-select-label{display:flex;flex-direction:column;gap:4px;font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--ink-soft)}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -4px;padding:0 4px}.table-wrap .table{min-width:640px}.table-mobile-hint{display:none;font-size:12px;color:var(--ink-soft);margin-bottom:8px;font-family:var(--mono)}.form-actions{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap;align-items:center}.doctor-picker-list{display:flex;flex-direction:column;gap:12px}.doctor-picker-name{font-size:18px}.form-actions .btn{flex:1;min-width:120px;justify-content:center}.queue-item-body{flex:1;min-width:0}.panel-empty-msg{padding:16px}.page-header-compact{margin-bottom:16px}.receipt{max-width:480px;margin:0 auto;background:var(--paper-raised);border:1px solid var(--line);padding:32px;border-radius:4px}.receipt-header h2{font-family:var(--display);color:var(--teal)}.bento-grid{display:grid;grid-template-columns:1fr;gap:24px}@media(min-width:1024px){.bento-grid{grid-template-columns:2fr 1fr}}.bento-main,.bento-side{background:var(--paper-raised);border:1px solid var(--line);border-radius:8px;padding:24px}.bento-side{display:flex;flex-direction:column;max-height:600px}.bento-side-body{flex:1;overflow-y:auto}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;margin-bottom:32px}.metric-card{background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;padding:24px;text-align:center}.metric-value{display:block;font-family:var(--display);font-size:32px;font-weight:560;color:var(--teal)}.metric-label{font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--ink-soft)}.stat-card{background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;padding:24px;display:flex;align-items:center;gap:16px}.stats-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:24px;margin-top:24px}.portal-action-row{display:flex;gap:1rem;flex-wrap:wrap}.portal-action-primary{flex:1;min-width:160px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;flex-wrap:wrap;gap:16px}.page-header-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px}.list-item{padding:14px 16px;background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;margin-bottom:8px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left;font:inherit}.portal-form-card{max-width:520px}.form label textarea{padding:12px 14px;border:1px solid var(--line);border-radius:3px;font-family:var(--body);font-size:16px;background:var(--paper-raised);resize:vertical}.list-item:hover,.list-item.active{border-color:var(--teal);border-left:3px solid var(--teal)}.row-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.list-item-with-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;text-align:left;font:inherit;padding:14px 16px;background:var(--paper-raised);border:1px solid var(--line);border-radius:4px;margin-bottom:8px}.list-item-with-actions .list-item-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;background:none;border:none;padding:0;cursor:pointer;text-align:left;font:inherit;color:inherit}.pharmacy-queue-main{flex-direction:row!important;align-items:center;gap:12px}.pharmacy-queue-item.list-item-with-actions{cursor:default}.detail-dl{display:flex;flex-direction:column;gap:12px;margin:0 0 20px}.detail-dl div{display:grid;gap:4px}.detail-dl dt{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft)}.detail-dl dd{margin:0;font-size:14px;line-height:1.45}.modal-section{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.modal-footer-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.modal-body .btn-sm{min-height:40px}.actions-cell{display:flex;flex-wrap:wrap;gap:4px}.btn-danger{background:var(--maroon);color:#fff}.btn-secondary{background:var(--btn-secondary-bg, #ebf3ff);color:var(--teal);border:1px solid var(--line)}.btn-outline{background:transparent;border:1px solid var(--line);color:var(--ink)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14252380;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal{background:var(--paper-raised);border-radius:4px;padding:24px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.modal-close{background:none;border:none;font-size:24px;cursor:pointer}.tabs{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}.tab{padding:8px 16px;border:1px solid var(--line);background:var(--paper-raised);border-radius:3px;cursor:pointer;font-size:14px;flex-shrink:0;min-height:40px}.tab.active{background:var(--teal);color:#fff;border-color:var(--teal)}.text-label{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft)}.text-body-sm{font-size:14px;color:var(--ink-soft)}.text-headline-sm{font-family:var(--display);font-size:20px;font-weight:600}.text-headline-md{font-family:var(--display);font-size:24px;font-weight:600}.text-headline-lg{font-family:var(--display);font-size:32px;font-weight:560}.rx-item{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:8px;margin-bottom:8px}.rx-item input{padding:8px;border:1px solid var(--line);border-radius:3px}.rx-form{display:flex;flex-direction:column;gap:16px}.rx-saved-panel{padding:16px}.rx-saved-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.rx-search{flex:1;min-width:180px;max-width:280px;padding:8px 12px;border:1px solid var(--line);border-radius:3px;font-family:var(--body);font-size:14px}.rx-saved-empty{margin:0;color:var(--ink-soft)}.rx-template-chips{display:flex;flex-wrap:wrap;gap:8px}.rx-template-chip{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:10px 14px;border:1px solid var(--line);border-radius:4px;background:var(--paper-raised);cursor:pointer;font:inherit;max-width:220px;transition:border-color .15s,background .15s}.rx-template-chip:hover{border-color:var(--teal);background:var(--dep-heart-soft)}.rx-template-chip strong{font-size:14px;color:var(--ink)}.rx-template-chip span{font-size:12px;color:var(--ink-soft);line-height:1.3}.rx-items{display:flex;flex-direction:column;gap:12px}.rx-item-card{padding:16px;display:flex;flex-direction:column;gap:12px}.rx-item-top{display:flex;justify-content:space-between;align-items:center}.rx-item-num{font-family:var(--mono);font-size:12px;color:var(--ink-soft)}.rx-field{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.rx-field-full{width:100%}.rx-field input,.rx-field select{padding:10px 12px;border:1px solid var(--line);border-radius:3px;font-family:var(--body);font-size:16px;background:var(--paper-raised);width:100%}.rx-field-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.rx-timing{display:flex;flex-direction:column;gap:8px}.rx-timing-chips{display:flex;flex-wrap:wrap;gap:8px}.rx-timing-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1.5px solid var(--line);border-radius:99px;font-size:13px;font-weight:500;cursor:pointer;background:var(--paper-raised);transition:border-color .15s,background .15s,color .15s;-webkit-user-select:none;user-select:none}.rx-timing-chip input{position:absolute;opacity:0;width:0;height:0}.rx-timing-chip.active{border-color:var(--teal);background:var(--dep-heart-soft);color:var(--teal-deep)}.rx-preview{margin:0;padding:8px 12px;background:var(--paper);border-radius:3px;color:var(--teal-deep);font-family:var(--mono);font-size:12px}.rx-advice{display:flex;flex-direction:column;gap:6px;margin-top:4px}.rx-table{width:100%;border-collapse:collapse;margin:16px 0;font-size:14px}.rx-table th,.rx-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--line)}.rx-table th{font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--ink-soft)}.consultation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.search-input{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:3px;margin-bottom:16px;font-size:16px}.cms-item-list{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.cms-item-card{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--line);border-radius:6px;background:var(--paper)}.cms-item-actions{display:flex;gap:8px;margin-top:2px}.inline-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.history-item{display:flex;gap:16px;padding:8px 0;border-bottom:1px solid var(--line);font-size:14px}.patient-search-results{display:flex;flex-direction:column;gap:8px}.patient-search-card{text-decoration:none;color:inherit;justify-content:space-between;align-items:center}.patient-search-arrow{color:var(--ink-soft);font-size:18px}.patient-profile-grid{display:grid;grid-template-columns:280px 1fr;gap:24px;align-items:start}.patient-profile-card h3{margin-bottom:16px}.profile-dl{display:flex;flex-direction:column;gap:12px;margin:0}.profile-dl div{display:grid;gap:2px}.profile-dl dt{font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--ink-soft)}.profile-dl dd{margin:0;font-size:14px}.patient-visits{display:flex;flex-direction:column;gap:12px}.patient-visits>h3{margin-bottom:4px}.visit-card{padding:16px}.visit-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.visit-card-notes p{margin:0 0 6px;font-size:14px}.visit-card-rx{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.visit-no-rx{margin-top:12px;padding:10px 12px;background:var(--paper);border-radius:3px;color:var(--ink-soft)}.rx-optional-hint{margin:12px 0 0;color:var(--ink-soft)}.visit-card-rx-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.rx-summary-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.rx-summary-list li{display:flex;flex-direction:column;gap:2px;font-size:14px}.rx-summary-list li span{color:var(--ink-soft);font-size:13px}.rx-summary-list li em{font-size:12px;color:var(--ink-soft);font-style:normal}.pharmacy-queue{display:flex;flex-direction:column;gap:8px}.pharmacy-queue-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;font:inherit;cursor:pointer}.pharmacy-detail{padding:16px}.pharmacy-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.alert-success{background:var(--dep-heart-soft);color:var(--dep-heart);padding:12px;border-radius:3px;margin-bottom:16px}.portal-two-panel{display:grid;grid-template-columns:1fr;gap:24px;margin-bottom:32px}@media(min-width:1100px){.portal-two-panel{grid-template-columns:2fr 1fr}}.portal-panel{background:var(--paper-raised);border:1px solid var(--line);border-radius:8px;padding:24px}.portal-panel-side{max-height:640px;display:flex;flex-direction:column}.portal-panel-side .queue-list{flex:1;overflow-y:auto}.portal-filters{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px;align-items:flex-end}.portal-toolbar{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end;margin-bottom:20px}.portal-toolbar-search{flex:1;min-width:200px;max-width:420px;margin-bottom:0}.portal-toolbar-filters{margin-bottom:0;flex:1;min-width:180px}.portal-toolbar-count{margin:0 0 0 auto;color:var(--ink-soft);font-family:var(--mono);font-size:12px;white-space:nowrap}.bento-side-toolbar{padding:0 0 12px;display:flex;flex-direction:column;gap:8px}.bento-side-toolbar .search-input{margin-bottom:0;font-size:14px;padding:8px 12px}.bento-side-toolbar .portal-select{font-size:13px;padding:8px 10px}.cms-content-grid{display:grid;grid-template-columns:1fr;gap:24px}@media(min-width:900px){.cms-content-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1200px){.cms-content-grid{grid-template-columns:repeat(3,1fr)}}.cms-section-card{background:var(--paper-raised);border:1px solid var(--line);border-radius:8px;padding:20px}.quick-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.quick-link-card{display:flex;align-items:center;justify-content:center;min-height:80px;padding:20px;background:var(--paper-raised);border:1px solid var(--line);border-radius:8px;text-decoration:none;color:var(--ink);font-weight:600;text-align:center;transition:border-color .2s,box-shadow .2s}.quick-link-card:hover{border-color:var(--teal);box-shadow:0 4px 12px #14252314}.settings-fieldset{border:1px solid var(--line);border-radius:8px;padding:20px;margin-bottom:24px;background:var(--paper-raised)}.settings-fieldset legend{font-family:var(--display);font-size:18px;font-weight:600;padding:0 8px}.schedule-item{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid var(--line)}.schedule-item:last-child{border-bottom:none}.schedule-item select,.schedule-item input{padding:8px 10px;border:1px solid var(--line);border-radius:3px;font-family:var(--body)}.perm-group{margin-bottom:24px;padding:20px}.perm-matrix{display:flex;flex-direction:column;gap:0;border:1px solid var(--line);border-radius:4px;overflow-x:auto;-webkit-overflow-scrolling:touch}.perm-matrix-inner{min-width:520px}.perm-matrix-header,.perm-matrix-row{display:grid;grid-template-columns:1fr 100px 100px;gap:12px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--line)}.perm-matrix-header{background:var(--paper);font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--ink-soft)}.perm-matrix-row:last-child{border-bottom:none}.perm-matrix-row:nth-child(2n){background:var(--paper)}.perm-label-col{display:flex;flex-direction:column;gap:2px}.perm-role-col{text-align:center;text-transform:capitalize}.perm-toggle{display:flex;justify-content:center;cursor:pointer}.perm-toggle input{width:18px;height:18px;accent-color:var(--teal)}@media print{.no-print,.portal-sidebar,.float-call,.ribbon,header{display:none!important}.portal-main{margin-left:0}}@media(max-width:600px){.wrap{padding:0 18px}.ribbon .wrap{padding:8px 18px;font-size:11px}.nav{padding:12px 18px}.hero{padding:56px 0 48px}.hero-cta .btn{flex:1 1 100%;justify-content:center}.hero-meta{gap:20px;margin-top:32px;padding-top:20px}.page-hero{padding:48px 0 36px}.page-inner{padding:32px 0 72px}section{padding:48px 0}.sec-head{margin-bottom:36px}.sec-head-row{flex-direction:column;align-items:flex-start}.sec-head-row .btn{width:100%;justify-content:center}.service-preview-grid,.steps-grid{grid-template-columns:1fr}.slot-grid{grid-template-columns:repeat(2,1fr)}.booking-layout{gap:24px}.booking-sidebar,.card{padding:16px}.cta-band{padding:48px 0}.cta-band .hero-cta{flex-direction:column;align-items:stretch}.cta-band .btn{width:100%;justify-content:center}.float-call{bottom:max(16px,env(safe-area-inset-bottom));right:max(16px,env(safe-area-inset-right))}.dept-nav{padding:16px 18px}.service-dept-footer{flex-direction:column;align-items:flex-start}.service-dept-actions{width:100%}.service-dept-actions .btn{flex:1;justify-content:center}.testimonial-stats{gap:24px}.foot-bottom{flex-direction:column;text-align:center}}@media(max-width:1024px){.portal-sidebar{display:none}.portal-content{margin-left:0}.portal-mobile-header{display:flex;align-items:center;gap:12px;padding:12px 16px;padding-top:max(12px,env(safe-area-inset-top));background:var(--teal-deep);color:#edeae1;position:sticky;top:0;z-index:32}.portal-mobile-header .menu-toggle span{background:#edeae1}.portal-mobile-title{font-family:var(--display);font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-home-link{color:#f3d9c4;font-size:13px;text-decoration:none;flex-shrink:0}.portal-nav-backdrop{z-index:30;top:0}.portal-mobile-nav{display:flex;flex-direction:column;gap:4px;position:fixed;top:calc(52px + env(safe-area-inset-top,0px));left:0;right:0;bottom:0;z-index:31;padding:12px 16px 16px;padding-bottom:max(16px,env(safe-area-inset-bottom));background:var(--teal-deep);border-bottom:1px solid rgba(255,255,255,.1);overflow-y:auto;-webkit-overflow-scrolling:touch;box-shadow:0 12px 32px #0003}.portal-mobile-nav a{color:#cde3df;text-decoration:none;padding:12px 14px;border-radius:3px;font-size:15px;min-height:44px;display:flex;align-items:center}.portal-mobile-nav a.active{background:var(--clay);color:#fff}.portal-mobile-nav .portal-sidebar-footer{margin-top:auto;padding-top:12px}.portal-main{padding:16px;padding-bottom:max(16px,env(safe-area-inset-bottom))}.portal-page h1{font-size:clamp(22px,5vw,32px);line-height:1.15}.page-header{flex-direction:column;align-items:stretch;gap:12px}.page-header-actions{width:100%}.page-header-actions .btn{flex:1;min-width:0}.page-subtitle{font-size:13px;margin-bottom:20px!important}.portal-help-box{margin:0 0 20px}.metrics-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px}.metric-card{padding:14px 12px}.metric-value{font-size:22px}.metric-desc{font-size:10px}.quick-links{grid-template-columns:1fr 1fr;gap:10px}.quick-link-card{min-height:64px;padding:14px;font-size:13px}.table-mobile-hint{display:block}.table-wrap:not(.table-wrap--cards) .table{min-width:560px}.table-wrap--cards .table-mobile-hint{display:none}.table-wrap--cards .table{min-width:0;border:none;background:transparent}.table-wrap--cards thead{display:none}.table-wrap--cards tbody tr{display:block;margin-bottom:12px;padding:12px 14px;background:var(--paper-raised);border:1px solid var(--line);border-radius:4px}.table-wrap--cards tbody tr:last-child{margin-bottom:0}.table-wrap--cards td{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 0;border:none;border-bottom:1px solid var(--line-soft);text-align:right}.table-wrap--cards td:last-child{border-bottom:none}.table-wrap--cards td:before{content:attr(data-label);font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);text-align:left;flex-shrink:0;max-width:42%}.table-wrap--cards td.actions-cell{flex-direction:column;align-items:stretch;text-align:left}.table-wrap--cards td.actions-cell:before{max-width:none;margin-bottom:4px}.table-wrap--cards td.actions-cell .btn{width:100%;justify-content:center}.table-wrap--cards td[colspan]{display:block;text-align:left}.table-wrap--cards td[colspan]:before{display:none}.table th,.table td{padding:10px 12px;font-size:13px}.actions-cell{min-width:0}.actions-cell .btn{min-height:36px;padding:6px 10px;font-size:12px}.queue-item{flex-wrap:wrap;gap:10px;padding:12px;align-items:flex-start}.queue-item .actions-cell{width:100%;justify-content:flex-start}.pharmacy-queue-item{flex-wrap:wrap}.token-display{font-size:36px}.text-headline-lg{font-size:clamp(22px,6vw,32px)}.patient-header{flex-direction:column}.token-card{width:100%}.bento-main,.bento-side,.portal-panel{padding:16px}.bento-side{max-height:none}.bento-side-header{flex-direction:column;align-items:stretch}.bento-side-header .badge{align-self:flex-start}.portal-panel-side{max-height:none}.portal-toolbar{flex-direction:column;align-items:stretch;gap:10px}.portal-toolbar-search{max-width:none;width:100%}.portal-toolbar-count{margin-left:0;text-align:right}.portal-filters,.portal-filters .portal-select-label,.portal-filters .portal-select,.portal-filters input{width:100%}.section-header-row{flex-direction:column;align-items:stretch}.section-header-row .portal-select{width:100%}.portal-action-row{flex-direction:column;align-items:stretch}.portal-action-row .btn{width:100%;flex:none!important;justify-content:center}.modal{margin:0;max-height:100dvh;border-radius:8px 8px 0 0;align-self:flex-end;max-width:100%}.modal-overlay{align-items:flex-end;padding:0}.cms-content-grid,.two-col,.patient-profile-grid,.rx-item,.rx-field-row{grid-template-columns:1fr}.rx-search{max-width:none;width:100%;min-width:0}.rx-saved-header{flex-direction:column;align-items:stretch}.rx-template-chip{max-width:100%;width:100%}.inline-form{flex-direction:column;align-items:stretch}.inline-form .btn{width:100%}.history-item{flex-wrap:wrap;gap:6px 12px}.visit-card-header{flex-direction:column;align-items:flex-start}.visit-card-rx-head{flex-wrap:wrap;gap:8px}.list-item{flex-wrap:wrap;gap:8px;align-items:flex-start}.stats-row{grid-template-columns:1fr;gap:12px}.stat-card{padding:16px}.perm-matrix-header,.perm-matrix-row{padding:10px 12px}.perm-label-col strong{font-size:14px}.section-header-row .section-intro{min-width:0}.portal-toolbar-filters{flex-direction:column;align-items:stretch;width:100%}.portal-toolbar-filters .portal-select-label,.page-header-actions .portal-select{width:100%}.form-actions{flex-direction:column;align-items:stretch;margin-top:20px}.form-actions .btn{width:100%;flex:none;min-width:0}.booking-wizard{max-width:none}.calendar-header{flex-wrap:wrap;gap:8px}.doctor-picker-card{cursor:pointer}.doctor-picker-fee{margin-top:8px;font-family:var(--mono);font-size:13px}}@media(max-width:600px){.portal-main{padding:12px}.metrics-grid,.quick-links{grid-template-columns:1fr}.bento-grid,.portal-two-panel{gap:16px}.section-intro-title{font-size:18px}.portal-page .page-header-actions{flex-direction:column}.portal-page .page-header-actions .btn{width:100%}.pharmacy-detail .page-header{flex-direction:column;align-items:stretch}.patient-search-card{flex-direction:column;align-items:flex-start}.schedule-item{flex-direction:column;align-items:stretch}.schedule-item select,.schedule-item input{width:100%}.tabs{gap:6px}.tab{font-size:13px;padding:8px 12px}.table-wrap{margin:0;padding:0}}
