:root{
  --corneal:#043018; --emerald:#0B5B43; --jade:#37A77A; --orange:#FD5B02; --amber:#EFA646;
  --mint:#EAF5F0; --ivory:#FBFAF7; --white:#FFFFFF; --charcoal:#17201B; --muted:#5D6761;
  --border:#d7e8df; --radius:22px; --radius-lg:30px;
  --font-head:'Manrope',system-ui,sans-serif; --font-body:'Inter',system-ui,sans-serif; --font-serif:'DM Serif Display',serif;
  --shadow-sm:0 2px 10px rgba(4,48,24,.07); --shadow-md:0 12px 40px rgba(4,48,24,.12);
  --header-h:82px; --ease:cubic-bezier(.22,.9,.3,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);color:var(--charcoal);background:var(--ivory);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--emerald);text-underline-offset:3px}
a:hover{color:var(--orange)}
h1,h2,h3,h4{font-family:var(--font-head);line-height:1.15;color:var(--corneal);font-weight:800}
h1{font-size:clamp(2.6rem,6vw,4.6rem);letter-spacing:-.02em}
h2{font-size:clamp(1.9rem,3.6vw,2.9rem);letter-spacing:-.015em}
h3{font-size:clamp(1.25rem,2.2vw,1.6rem)}
p{margin-bottom:1rem}
.container{width:min(100%,92%);margin-inline:auto}
.skip-link{position:absolute;left:-999px;top:0;background:var(--orange);color:#fff;padding:.7rem 1.2rem;z-index:999;border-radius:0 0 12px 0}
.skip-link:focus{left:0}
:focus-visible{outline:3px solid var(--orange);outline-offset:2px;border-radius:4px}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--font-head);font-weight:700;font-size:1rem;padding:.85rem 1.7rem;border-radius:999px;border:2px solid transparent;cursor:pointer;text-decoration:none;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s;line-height:1.2}
.btn-primary{background:var(--orange);color:#fff;box-shadow:0 8px 24px rgba(253,91,2,.32)}
.btn-primary:hover{background:#e04f00;color:#fff;transform:translateY(-2px);box-shadow:0 12px 30px rgba(253,91,2,.4)}
.btn-outline{border-color:var(--emerald);color:var(--emerald);background:transparent}
.btn-outline:hover{background:var(--emerald);color:#fff;transform:translateY(-2px)}
.btn-ghost{border-color:var(--border);color:var(--emerald);background:var(--white)}
.btn-ghost:hover{border-color:var(--jade);color:var(--corneal)}
.btn-sm{padding:.55rem 1.15rem;font-size:.9rem}
.btn-block{width:100%;justify-content:center}

/* ---------- Utility bar ---------- */
.utility-bar{background:var(--corneal);color:#cfe7db;font-size:.78rem;letter-spacing:.01em}
.util-inner{display:flex;align-items:center;gap:.9rem;padding:.45rem 0;flex-wrap:wrap}
.util-kicker{font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--amber);font-size:.66rem}
.util-item a{color:#fff;text-decoration:none}
.util-sep{width:1px;height:12px;background:rgba(255,255,255,.25)}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:200;background:rgba(251,250,247,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(215,232,223,.9);transition:box-shadow .3s,background .3s}
.site-header.scrolled{box-shadow:var(--shadow-md)}
.site-header.scrolled .header-inner{height:72px}
.header-inner{display:flex;align-items:center;gap:1.2rem;height:var(--header-h);transition:height .3s}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none}
.brand-text{display:flex;flex-direction:column;line-height:1.1}
.brand-name{font-family:var(--font-head);font-weight:800;color:var(--corneal);letter-spacing:.04em;font-size:1.02rem}
.brand-sub{font-size:.66rem;color:var(--muted);letter-spacing:.02em}
.main-nav{flex:1}
.main-nav>ul{display:flex;align-items:center;gap:.15rem;list-style:none;justify-content:center}
.main-nav a{display:block;padding:.58rem .68rem;text-decoration:none;color:var(--charcoal);font-weight:700;font-size:.86rem;border-radius:10px;transition:color .2s,background .2s}
.main-nav a:hover,.main-nav a.active{color:var(--emerald);background:var(--mint)}
.nav-caret{display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);vertical-align:3px;margin-left:3px}
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:10px}
.hamburger span{width:24px;height:2.5px;background:var(--corneal);border-radius:2px}

/* ---------- Mega menu ---------- */
.has-mega{position:static}
.mega-menu{position:absolute;left:0;right:0;top:100%;background:var(--white);border-top:1px solid var(--border);box-shadow:0 30px 60px rgba(4,48,24,.14);opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .3s var(--ease);pointer-events:none}
.has-mega:hover .mega-menu,.has-mega:focus-within .mega-menu{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.mega-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:2.8rem;padding:2.6rem 0}
.mega-links{display:grid;grid-template-columns:1.05fr repeat(2,1fr);gap:1.4rem 1.8rem}
.mega-intro{grid-row:span 2;padding:.4rem 1.2rem .6rem 0;border-right:1px solid var(--border)}
.mega-overline,.mega-preview-kicker{display:block;color:var(--orange);font-size:.68rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.mega-intro h2{font-size:1.45rem;line-height:1.15;margin:.7rem 0}
.mega-intro p{font-size:.84rem;line-height:1.55;color:var(--muted);max-width:17rem}
.mega-all-link{font:800 .85rem var(--font-head);text-decoration:none}
.mega-group-title{font-family:var(--font-head);font-weight:800;color:var(--corneal);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.6rem}
.edu-tag{font-weight:600;color:var(--muted);text-transform:none;letter-spacing:0;font-size:.7rem;border:1px solid var(--border);padding:.1rem .45rem;border-radius:99px}
.mega-group ul{list-style:none}
.mega-group li{margin-bottom:.15rem}
.mega-link{display:block;padding:.32rem .55rem;border-radius:9px;color:var(--charcoal);text-decoration:none;font-size:.92rem;border-left:3px solid transparent}
.mega-link:hover,.mega-link:focus{background:var(--mint);border-left-color:var(--orange);color:var(--corneal)}
.mega-conditions a{font-size:.86rem;color:var(--muted)}
.mega-preview{border-left:1px solid var(--border);padding-left:2.2rem;display:flex;flex-direction:column;gap:.55rem;background:linear-gradient(135deg,#fff 50%,var(--mint));padding-bottom:1rem}
.mega-preview-kicker{display:flex;align-items:center;gap:.45rem;color:var(--emerald)}
.preview-pulse{width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 5px rgba(253,91,2,.12)}
.arc-mask{border-radius:60% 40% 55% 45%/45% 55% 45% 55%;overflow:hidden;box-shadow:var(--shadow-sm)}
.mega-preview-media img{width:100%;aspect-ratio:13/9;object-fit:cover;transition:transform .5s var(--ease)}
.mega-preview:hover .mega-preview-media img{transform:scale(1.02)}
.mega-preview-title{font-size:1.15rem}
.mega-preview-summary{font-size:.92rem;color:var(--muted);margin:0}
.mega-preview-credential{font-size:.78rem;color:var(--jade);font-weight:600;margin:0}

/* ---------- Mobile drawer ---------- */
.mobile-drawer{position:fixed;inset:0;z-index:400;visibility:hidden}
.mobile-drawer.open{visibility:visible}
.mobile-drawer::before{content:"";position:absolute;inset:0;background:rgba(4,48,24,.5);opacity:0;transition:opacity .3s}
.mobile-drawer.open::before{opacity:1}
.mobile-drawer-panel{position:absolute;top:0;right:0;bottom:0;width:min(360px,88%);background:var(--white);transform:translateX(100%);transition:transform .35s var(--ease);overflow-y:auto;padding:1.2rem 1.4rem 6rem}
.mobile-drawer.open .mobile-drawer-panel{transform:none}
.mobile-drawer-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}
.drawer-close{font-size:2rem;border:0;background:none;cursor:pointer;color:var(--corneal);line-height:1}
.mobile-nav{list-style:none}
.mobile-nav>li{border-bottom:1px solid var(--border)}
.mobile-nav a{display:block;padding:.85rem .2rem;text-decoration:none;color:var(--charcoal);font-weight:600}
.acc-btn{width:100%;display:flex;justify-content:space-between;align-items:center;background:none;border:0;padding:.85rem .2rem;font:600 1rem var(--font-head);color:var(--charcoal);cursor:pointer}
.acc-icon{width:10px;height:10px;border-right:2px solid var(--emerald);border-bottom:2px solid var(--emerald);transform:rotate(45deg);transition:transform .3s}
.acc-btn[aria-expanded="true"] .acc-icon{transform:rotate(-135deg)}
.acc-panel{display:none;padding:0 0 .8rem .6rem}
.acc-panel.open{display:block}
.acc-group{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--jade);font-weight:700;margin:.6rem 0 .3rem}
.acc-panel ul{list-style:none}
.acc-panel a{font-size:.94rem;padding:.5rem .2rem;font-weight:500}
.mobile-drawer-cta{display:grid;gap:.7rem;margin-top:1.4rem}

/* ---------- Hero ---------- */
.hero{position:relative;min-height:94vh;display:flex;align-items:center;overflow:hidden;background:var(--corneal)}
.hero-backdrop{position:absolute;inset:0;z-index:0;background-image:linear-gradient(105deg,rgba(4,48,24,.94),rgba(4,48,24,.65)),url('/assets/images/corneal-focus-abstract.jpg');background-size:cover;background-position:center;opacity:.72}
.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(105deg,rgba(4,48,24,.95) 0%,rgba(4,48,24,.78) 45%,rgba(4,48,24,.35) 100%)}
.hero-inner{position:relative;z-index:10;display:grid;grid-template-columns:1.08fr .92fr;gap:4rem;align-items:center;padding:5.5rem 0}
.hero-copy{position:relative;z-index:11;display:block!important;visibility:visible!important;opacity:1!important;max-width:39rem}
.hero-copy>*{position:relative;z-index:12}
.hero-eyebrow{color:var(--amber);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.82rem;margin-bottom:1.1rem}
.hero h1{color:#fff}
.hero h1 .focal{color:var(--amber);position:relative;white-space:nowrap}
.hero h1 .focal::after{content:"";position:absolute;left:0;right:0;bottom:.08em;height:3px;background:var(--orange);border-radius:2px;transform-origin:left;animation:focalSweep 3.2s var(--ease) infinite}
@keyframes focalSweep{0%,15%{transform:scaleX(0)}45%,70%{transform:scaleX(1)}100%{transform:scaleX(0);transform-origin:right}}
.hero-lede{color:#d9ece3;font-size:1.15rem;max-width:34rem;margin:1.3rem 0 1rem}
.hero-quals{color:#9fd8c2;font-size:.95rem;font-weight:600;letter-spacing:.02em;margin-bottom:1.8rem}
.hero-ctas{display:flex;gap:1rem;flex-wrap:wrap}
.hero-ctas .btn-outline{border-color:rgba(255,255,255,.5);color:#fff}
.hero-ctas .btn-outline:hover{background:rgba(255,255,255,.12)}
.hero-assoc{margin-top:2rem;display:inline-flex;align-items:center;gap:.6rem;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);padding:.6rem 1.1rem;border-radius:999px;color:#cfe7db;font-size:.85rem;text-decoration:none}
.hero-assoc:hover{color:#fff;border-color:var(--jade)}
/* portrait slider */
.hero-visual{position:relative}
.hero-frame{position:relative;border-radius:46% 54% 50% 50%/52% 48% 55% 45%;overflow:hidden;box-shadow:0 40px 90px rgba(0,0,0,.45);border:1px solid rgba(159,216,194,.35);animation:heroFloat 7s ease-in-out infinite;background:var(--emerald)}
@keyframes heroFloat{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-8px) rotate(1.5deg)}}
.hero-frame img{width:100%;aspect-ratio:4/5;object-fit:cover}
.hero-chip{position:absolute;background:rgba(251,250,247,.95);border-radius:16px;padding:.6rem .95rem;box-shadow:var(--shadow-md);font-size:.8rem;font-weight:700;color:var(--corneal);display:flex;align-items:center;gap:.5rem}
.hero-chip svg{width:18px;height:18px;color:var(--jade)}
.chip-1{top:8%;left:-8%}.chip-2{bottom:16%;right:-6%}
.hero-dots{position:absolute;bottom:-2.4rem;left:50%;transform:translateX(-50%);display:flex;gap:.5rem;z-index:3}
.hero-dots button{width:34px;height:4px;border-radius:4px;border:0;background:rgba(255,255,255,.35);cursor:pointer;transition:background .3s}
.hero-dots button.active{background:var(--orange)}
.hero-arrows{position:absolute;top:50%;width:112%;left:-6%;display:flex;justify-content:space-between;transform:translateY(-50%);z-index:3}
.hero-arrows button{width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(4,48,24,.55);color:#fff;font-size:1.3rem;cursor:pointer;backdrop-filter:blur(6px)}
.hero-arrows button:hover{background:var(--orange);border-color:var(--orange)}
.hero-pause{position:absolute;top:-2.3rem;right:0;background:none;border:1px solid rgba(255,255,255,.4);color:#cfe7db;border-radius:99px;padding:.3rem .9rem;font-size:.78rem;cursor:pointer}

/* ---------- Sections common ---------- */
.section{padding:5.5rem 0}
.section-mint{background:var(--mint)}
.section-emerald{background:linear-gradient(160deg,var(--corneal),var(--emerald));color:#e6f3ec}
.section-emerald h2,.section-emerald h3{color:#fff}
.section-emerald p{color:#cfe7db}
.eyebrow{color:var(--orange);font-weight:800;letter-spacing:.13em;text-transform:uppercase;font-size:.78rem;margin-bottom:.8rem}
.section-head{max-width:46rem;margin-bottom:3rem}
.section-head.center{margin-inline:auto;text-align:center}
.section-head p{color:var(--muted);font-size:1.05rem}

/* ---------- Cred strip ---------- */
.cred-strip{background:var(--white);border-block:1px solid var(--border);padding:2.4rem 0}
.cred-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.cred-card{background:var(--ivory);border:1px solid var(--border);border-radius:var(--radius);padding:1.4rem 1.3rem;transition:transform .3s var(--ease),box-shadow .3s}
.cred-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.cred-card svg{width:34px;height:34px;color:var(--jade);margin-bottom:.8rem}
.cred-value{font-family:var(--font-head);font-weight:800;color:var(--corneal);font-size:1.02rem;margin-bottom:.25rem;line-height:1.3}
.cred-label{font-size:.8rem;color:var(--muted);margin:0}
.cred-actions{display:flex;gap:.8rem;flex-wrap:wrap;justify-content:center;margin-top:2rem}

/* ---------- About preview ---------- */
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:3.5rem;align-items:center}
.about-media{position:relative}
.about-main{border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) 8px;overflow:hidden;box-shadow:var(--shadow-md)}
.about-main img{width:100%;aspect-ratio:4/5;object-fit:cover}
.about-small{position:absolute;bottom:-2rem;right:-1.5rem;width:46%;border-radius:var(--radius);overflow:hidden;border:6px solid var(--ivory);box-shadow:var(--shadow-md)}
.about-small img{width:100%;aspect-ratio:1;object-fit:cover}
.about-copy .philosophy{border-left:4px solid var(--orange);padding:.4rem 0 .4rem 1.2rem;margin:1.6rem 0;font-family:var(--font-serif);font-size:1.35rem;font-style:italic;color:var(--corneal);line-height:1.5}
.expect-list{list-style:none;margin:1.2rem 0 1.8rem;display:grid;gap:.6rem}
.expect-list li{display:flex;gap:.7rem;align-items:flex-start;font-weight:500}
.expect-list svg{flex:none;width:22px;height:22px;color:var(--jade);margin-top:2px}

/* ---------- Expertise cards ---------- */
.exp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem}
.exp-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;text-decoration:none;display:flex;flex-direction:column;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.exp-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}
.exp-media{overflow:hidden}
.exp-media img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .6s var(--ease)}
.exp-card:hover .exp-media img{transform:scale(1.05)}
.exp-body{padding:1.6rem;display:flex;flex-direction:column;gap:.7rem;flex:1}
.exp-body p{color:var(--muted);font-size:.95rem;margin:0;flex:1}
.exp-tags{display:flex;flex-wrap:wrap;gap:.4rem}
.exp-tags span{font-size:.72rem;font-weight:700;color:var(--emerald);background:var(--mint);padding:.25rem .65rem;border-radius:99px}
.exp-cta{font-weight:800;font-family:var(--font-head);color:var(--orange);font-size:.95rem}
.exp-card:hover .exp-cta{color:#e04f00}

/* ---------- Spotlight (cornea) ---------- */
.spot-grid{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center}
.cornea-layers{position:relative;background:rgba(255,255,255,.06);border:1px solid rgba(159,216,194,.25);border-radius:var(--radius-lg);padding:2.5rem;display:grid;gap:1rem;overflow:hidden}
.spotlight-texture{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.18;mix-blend-mode:screen;pointer-events:none}
.cornea-layers .layer{position:relative;z-index:1}
.layer{display:flex;align-items:center;gap:1rem;background:rgba(255,255,255,.07);border:1px solid rgba(159,216,194,.2);border-radius:16px;padding:1rem 1.2rem;transition:transform .4s var(--ease)}
.cornea-layers:hover .layer:nth-child(1){transform:translateX(-6px)}
.cornea-layers:hover .layer:nth-child(3){transform:translateX(6px)}
.layer-num{width:36px;height:36px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;font-weight:800;font-family:var(--font-head);flex:none}
.layer strong{color:#fff;display:block;font-family:var(--font-head)}
.layer span{font-size:.83rem;color:#bfe3d2}
.concern-list{list-style:none;display:grid;gap:.65rem;margin:1.4rem 0 2rem}
.concern-list li{display:flex;gap:.7rem;color:#d9ece3}
.concern-list svg{flex:none;width:20px;height:20px;color:var(--amber);margin-top:3px}

/* ---------- Cataract blur scene ---------- */
.blur-scene{position:relative}
.blur-stage{position:relative;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}
.blur-stage img{width:100%;aspect-ratio:16/9;object-fit:cover}
.blur-layer{position:absolute;inset:0;backdrop-filter:blur(14px);background:rgba(234,245,240,.35);transition:opacity .1s linear}
.blur-caption{position:absolute;left:1.4rem;bottom:1.2rem;background:rgba(4,48,24,.82);color:#fff;padding:.7rem 1.2rem;border-radius:14px;font-size:.9rem;max-width:80%}
.steps-list{counter-reset:step;list-style:none;display:grid;gap:1rem;margin-top:1.6rem}
.steps-list li{counter-increment:step;display:flex;gap:1rem;background:var(--white);border:1px solid var(--border);border-radius:18px;padding:1.1rem 1.3rem}
.steps-list li::before{content:counter(step,decimal-leading-zero);font-family:var(--font-head);font-weight:800;color:var(--orange);font-size:1.3rem;flex:none}
.steps-list strong{display:block;color:var(--corneal);font-family:var(--font-head)}
.steps-list p{margin:0;font-size:.9rem;color:var(--muted)}

/* ---------- Vision comparison selector ---------- */
.vc-selector{display:flex;gap:.7rem;flex-wrap:wrap;margin-bottom:2rem}
.vc-tab{border:2px solid var(--border);background:var(--white);border-radius:99px;padding:.7rem 1.5rem;font:700 .95rem var(--font-head);color:var(--emerald);cursor:pointer;transition:all .25s}
.vc-tab[aria-selected="true"]{background:var(--emerald);border-color:var(--emerald);color:#fff}
.vc-panel{display:none;grid-template-columns:1fr 1fr;gap:2.5rem;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2.4rem}
.vc-panel.active{display:grid}
.vc-panel img{border-radius:var(--radius);width:100%;aspect-ratio:4/3;object-fit:cover}
.vc-table{width:100%;border-collapse:collapse;font-size:.92rem;margin:1rem 0}
.vc-table th{text-align:left;color:var(--corneal);font-family:var(--font-head);padding:.55rem .6rem .55rem 0;border-bottom:2px solid var(--mint);width:38%}
.vc-table td{padding:.55rem .6rem .55rem 0;border-bottom:1px solid var(--border);color:var(--muted)}
.vc-note{font-size:.82rem;color:var(--muted);background:var(--mint);border-radius:12px;padding:.8rem 1rem}

/* ---------- Pathway ---------- */
.pathway{position:relative}
.path-track{position:absolute;top:26px;left:4%;right:4%;height:3px;background:var(--border);border-radius:3px}
.path-line{position:absolute;top:26px;left:4%;height:3px;background:var(--orange);border-radius:3px;width:0;transition:width 1.4s var(--ease)}
.path-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem;position:relative}
.path-step{text-align:center;padding-top:0}
.path-dot{width:54px;height:54px;margin:0 auto 1rem;border-radius:50%;background:var(--white);border:3px solid var(--border);display:grid;place-items:center;font-family:var(--font-head);font-weight:800;color:var(--emerald);position:relative;z-index:2;transition:all .4s}
.path-step.lit .path-dot{background:var(--orange);border-color:var(--orange);color:#fff;box-shadow:0 0 0 8px rgba(253,91,2,.15)}
.path-step strong{display:block;font-family:var(--font-head);color:var(--corneal);font-size:.95rem;margin-bottom:.3rem}
.path-step p{font-size:.8rem;color:var(--muted);margin:0}
.path-panels{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;margin-top:3.5rem}
.path-panel{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:1.8rem}
.path-panel ul{margin:.8rem 0 0 1.1rem;color:var(--muted);font-size:.94rem}

/* ---------- Timeline / tabs ---------- */
.tabs-bar{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:2.2rem}
.tab-btn{border:2px solid var(--border);background:var(--white);padding:.65rem 1.4rem;border-radius:99px;font:700 .9rem var(--font-head);color:var(--emerald);cursor:pointer}
.tab-btn[aria-selected="true"]{background:var(--orange);border-color:var(--orange);color:#fff}
.tab-panel{display:none}
.tab-panel.active{display:block;animation:fadeUp .45s var(--ease)}
@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.timeline{position:relative;padding-left:2rem}
.timeline::before{content:"";position:absolute;left:8px;top:6px;bottom:6px;width:2px;background:var(--border)}
.tl-item{position:relative;margin-bottom:1.6rem}
.tl-item::before{content:"";position:absolute;left:-2rem;top:6px;width:14px;height:14px;border-radius:50%;background:var(--white);border:3px solid var(--jade)}
.tl-year{font:800 .8rem var(--font-head);color:var(--orange);letter-spacing:.06em}
.tl-item strong{color:var(--corneal);font-family:var(--font-head);display:block}
.tl-item p{font-size:.92rem;color:var(--muted);margin:.2rem 0 0}
.pub-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:1.4rem 1.6rem;margin-bottom:1rem}
.pub-card h3{font-size:1.1rem;margin-bottom:.4rem}
.pub-meta{font-size:.82rem;color:var(--jade);font-weight:600;margin-bottom:.5rem}
.pub-abs{font-size:.92rem;color:var(--muted);margin:0}

/* ---------- Hospital association ---------- */
.assoc-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.assoc-visual{position:relative;min-height:530px}
.assoc-photo-main{position:absolute;inset:0 9% 7% 0;border-radius:34px 34px 34px 8px;overflow:hidden;box-shadow:var(--shadow-md);background:var(--corneal)}
.assoc-photo-main img{width:100%;height:100%;object-fit:cover;object-position:center 28%}
.assoc-photo-card{position:absolute;right:0;top:14%;width:43%;background:var(--white);padding:.45rem;border-radius:22px;box-shadow:var(--shadow-md);transform:rotate(3deg)}
.assoc-photo-card img{width:100%;aspect-ratio:1.18;object-fit:cover;border-radius:16px}
.assoc-photo-card span{display:block;font:800 .72rem var(--font-head);color:var(--corneal);padding:.5rem .35rem .25rem}
.assoc-logo-band{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2.2rem;text-align:center}
.assoc-visual .assoc-logo-band{position:absolute;left:8%;right:13%;bottom:0;z-index:2;box-shadow:0 18px 50px rgba(4,48,24,.14)}
.assoc-hospital-name{font-family:var(--font-head);font-weight:800;font-size:1.35rem;color:var(--emerald);letter-spacing:.02em}
.assoc-list{list-style:none;display:grid;gap:.7rem;margin-top:1.4rem}
.assoc-list a{display:flex;gap:.6rem;align-items:center;text-decoration:none;font-weight:600;color:var(--charcoal);background:var(--white);border:1px solid var(--border);padding:.85rem 1.1rem;border-radius:14px;transition:all .25s}
.assoc-list a:hover{border-color:var(--orange);transform:translateX(4px)}
.assoc-list svg{width:18px;height:18px;color:var(--orange);flex:none}

/* ---------- Forms ---------- */
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}
.form-span-2{grid-column:span 2}
.form-field label{display:block;font-weight:600;font-size:.88rem;color:var(--corneal);margin-bottom:.35rem}
.form-field input,.form-field select,.form-field textarea{width:100%;padding:.8rem 1rem;border:1.5px solid var(--border);border-radius:13px;font:400 .95rem var(--font-body);background:var(--white);color:var(--charcoal);transition:border-color .2s,box-shadow .2s}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--orange);box-shadow:0 0 0 4px rgba(253,91,2,.12);outline:none}
.form-field .error{font-size:.78rem;color:#c0392b;margin-top:.3rem;display:block}
.honeypot{position:absolute;left:-9999px;height:0;overflow:hidden}
.consent label{display:flex;gap:.6rem;font-size:.85rem;color:var(--muted);align-items:flex-start}
.consent input{width:18px;height:18px;margin-top:3px;accent-color:var(--orange)}
.form-status{font-weight:600;margin-top:.8rem}
.form-status.ok{color:var(--emerald)}
.form-status.err{color:#c0392b}
.form-note{font-size:.8rem;color:var(--muted)}

/* ---------- CTA band ---------- */
.cta-band{background:linear-gradient(120deg,var(--emerald),var(--corneal));border-radius:var(--radius-lg);padding:3.4rem 3rem;display:grid;grid-template-columns:1.4fr .6fr;gap:2rem;align-items:center;color:#fff;position:relative;overflow:hidden}
.cta-band::after{content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;border-radius:50%;border:2px solid rgba(253,91,2,.35)}
.cta-band h2{color:#fff;margin-bottom:.6rem}
.cta-band p{color:#cfe7db;margin:0}
.cta-band .btn{justify-self:end}

/* ---------- Footer ---------- */
.site-footer{background:var(--corneal);color:#b9d9c9;margin-top:5rem;position:relative}
.footer-focal-line{height:4px;background:linear-gradient(90deg,transparent,var(--orange),transparent)}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1.4fr;gap:2.4rem;padding:4rem 0 2.5rem}
.footer-title{font:800 .85rem var(--font-head);color:#fff;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1rem}
.footer-col ul{list-style:none}
.footer-col li{margin-bottom:.45rem}
.footer-col a{color:#b9d9c9;text-decoration:none;font-size:.9rem}
.footer-col a:hover{color:var(--amber)}
.footer-name{font:800 1.2rem var(--font-head);color:#fff;letter-spacing:.05em;margin:.8rem 0 .5rem}
.footer-desc{font-size:.86rem;line-height:1.65}
.footer-social{display:flex;gap:.6rem;margin-top:1rem}
.footer-social a{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.25);display:grid;place-items:center;color:#fff;text-decoration:none;font-size:.8rem;font-weight:700}
.footer-social a:hover{background:var(--orange);border-color:var(--orange)}
footer address{font-style:normal;font-size:.9rem;line-height:1.8}
.assoc-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:#7fb89f;margin:1.2rem 0 .4rem}
.hospital-logo-link{text-decoration:none}
.hospital-logo-text{display:inline-block;border:1px solid rgba(255,255,255,.3);border-radius:12px;padding:.6rem 1rem;color:#fff;font-family:var(--font-head);font-weight:700;font-size:.85rem}
.newsletter-form{margin-top:1.2rem}
.newsletter-form label{font-size:.78rem;display:block;margin-bottom:.4rem;color:#7fb89f}
.nl-row{display:flex;gap:.5rem}
.nl-row input{flex:1;padding:.6rem .9rem;border-radius:99px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff;font-size:.85rem}
.nl-row input::placeholder{color:#7fb89f}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.12);padding:1.3rem 0;font-size:.82rem}
.footer-legal{list-style:none;display:flex;gap:1.4rem}
.footer-legal a{color:#b9d9c9;text-decoration:none}
.footer-disclaimer{border-top:1px solid rgba(255,255,255,.08);padding:1rem 0 2rem}
.footer-disclaimer p{font-size:.74rem;color:#7fb89f;margin:0;max-width:70rem}

/* ---------- Floating actions ---------- */
.floating-actions{position:fixed;right:1.2rem;bottom:1.4rem;display:flex;flex-direction:column;gap:.7rem;z-index:300}
.float-btn{display:inline-flex;align-items:center;gap:.5rem;background:var(--corneal);color:#fff;border:0;border-radius:99px;padding:.75rem 1.3rem;font:700 .88rem var(--font-head);text-decoration:none;cursor:pointer;box-shadow:var(--shadow-md);transition:transform .25s var(--ease)}
.float-btn:hover{transform:translateY(-3px);color:#fff}
.float-book{background:var(--orange)}
.float-wa{background:#1faa53}
.float-top{background:var(--white);color:var(--corneal);border:1px solid var(--border);width:48px;height:48px;justify-content:center;padding:0}
.mobile-action-bar{display:none}

/* ---------- Breadcrumbs ---------- */
.breadcrumbs{background:var(--mint);padding:.8rem 0;font-size:.83rem}
.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem}
.breadcrumbs li+li::before{content:"/";margin-right:.5rem;color:var(--jade)}
.breadcrumbs a{text-decoration:none;color:var(--emerald);font-weight:600}

/* ---------- Treatment page ---------- */
.treat-hero{background:linear-gradient(120deg,var(--corneal),var(--emerald));color:#fff;padding:4.5rem 0 4rem;position:relative;overflow:hidden}
.treat-hero::after{content:"";position:absolute;right:-80px;bottom:-120px;width:380px;height:380px;border-radius:50%;border:2px solid rgba(253,91,2,.3)}
.treat-hero h1{color:#fff;max-width:56rem}
.treat-hero .lede{color:#cfe7db;font-size:1.12rem;max-width:44rem}
.treat-hero-meta{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.6rem}
.treat-hero-meta .btn-outline{border-color:rgba(255,255,255,.5);color:#fff}
.treat-hero-meta .btn-outline:hover{background:rgba(255,255,255,.12)}
.content-narrow{max-width:52rem}
.prose h2{margin:2.6rem 0 1rem;scroll-margin-top:110px}
.prose h3{margin:2rem 0 .8rem}
.prose p{color:#3c4741}
.prose ul,.prose ol{margin:0 0 1.2rem 1.3rem;color:#3c4741}
.prose li{margin-bottom:.4rem}
.prose .callout{background:var(--mint);border-left:4px solid var(--jade);border-radius:0 16px 16px 0;padding:1.1rem 1.4rem;margin:1.6rem 0;font-size:.94rem}
.prose .callout.warn{background:#fdf1ea;border-left-color:var(--orange)}
.disclaimer-box{background:#fdf6ef;border:1px solid #f3d9b8;border-radius:16px;padding:1.2rem 1.4rem;font-size:.85rem;color:#7a5a28;margin:2rem 0}
.faq-item{border:1px solid var(--border);border-radius:16px;margin-bottom:.8rem;background:var(--white);overflow:hidden}
.faq-q{width:100%;text-align:left;background:none;border:0;padding:1.1rem 1.3rem;font:700 1rem var(--font-head);color:var(--corneal);cursor:pointer;display:flex;justify-content:space-between;gap:1rem;align-items:center}
.faq-q::after{content:"+";font-size:1.4rem;color:var(--orange);transition:transform .3s}
.faq-item.open .faq-q::after{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s var(--ease)}
.faq-a p{padding:0 1.3rem 1.2rem;color:var(--muted);font-size:.93rem;margin:0}
.review-strip{display:flex;gap:1.5rem;flex-wrap:wrap;font-size:.78rem;color:var(--muted);border-top:1px solid var(--border);margin-top:3rem;padding-top:1.2rem}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.related-card{border:1px solid var(--border);border-radius:var(--radius);padding:1.3rem;background:var(--white);text-decoration:none;transition:all .3s var(--ease)}
.related-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--jade)}
.related-card strong{color:var(--corneal);font-family:var(--font-head);display:block;margin-bottom:.3rem}
.related-card span{font-size:.83rem;color:var(--muted)}

/* ---------- Modal ---------- */
.modal{position:fixed;inset:0;z-index:500;display:grid;place-items:center;padding:1rem}
.modal[hidden]{display:none}
.modal-backdrop{position:absolute;inset:0;background:rgba(4,48,24,.6);backdrop-filter:blur(4px)}
.modal-panel{position:relative;background:var(--white);border-radius:var(--radius-lg);padding:2.4rem;width:min(640px,100%);max-height:88vh;overflow-y:auto;box-shadow:0 40px 100px rgba(0,0,0,.35);animation:fadeUp .35s var(--ease)}
.modal-panel h2{font-size:1.6rem;margin-bottom:.4rem}
.modal-note{font-size:.85rem;color:var(--muted)}
.modal-close{position:absolute;top:1rem;right:1.2rem;font-size:2rem;border:0;background:none;cursor:pointer;color:var(--corneal);line-height:1}

/* ---------- Pages misc ---------- */
.page-hero{background:linear-gradient(120deg,var(--corneal),var(--emerald));color:#fff;padding:4.5rem 0}
.page-hero h1{color:#fff}
.page-hero p{color:#cfe7db;max-width:44rem;font-size:1.1rem}
.visual-strip{display:grid;grid-template-columns:1.2fr .8fr;gap:1.4rem;align-items:stretch}
.visual-strip img{width:100%;height:100%;min-height:18rem;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}
.visual-strip-copy{display:flex;flex-direction:column;justify-content:center;padding:2rem;background:var(--mint);border-radius:var(--radius-lg)}
.visual-strip-copy p{color:var(--muted)}
.photo-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.photo-card{margin:0;background:var(--white);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm)}
.photo-card img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.photo-card figcaption{padding:.85rem 1rem;color:var(--muted);font-size:.86rem;line-height:1.45}
.photo-gallery .photo-card:first-child{grid-column:span 2}
.photo-gallery .photo-card:first-child img{aspect-ratio:16/8}
.gallery-note{color:var(--muted);font-size:.92rem;max-width:48rem}
.generated-visual{border-radius:var(--radius-lg);overflow:hidden;background:var(--corneal);box-shadow:var(--shadow-md)}
.generated-visual img{width:100%;display:block;aspect-ratio:16/9;object-fit:cover}
.generated-visual figcaption{padding:1rem 1.2rem;color:#cfe7db;font-size:.86rem}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}
.card-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.info-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:1.7rem}
.info-card h3{margin-bottom:.5rem}
.info-card p{font-size:.92rem;color:var(--muted);margin:0}
.article-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;text-decoration:none;display:block;transition:all .3s var(--ease)}
.article-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.article-card img{width:100%;aspect-ratio:16/9;object-fit:cover}
.article-card-body{padding:1.3rem 1.4rem}
.article-card-body .cat{font-size:.72rem;font-weight:800;color:var(--orange);text-transform:uppercase;letter-spacing:.08em}
.article-card-body h3{margin:.35rem 0;font-size:1.1rem}
.article-card-body p{font-size:.88rem;color:var(--muted);margin:0}
.search-box{display:flex;gap:.6rem;max-width:34rem}
.search-box input{flex:1;padding:.9rem 1.2rem;border:1.5px solid var(--border);border-radius:99px;font-size:1rem}
.search-box button{border:0}
.results-list{list-style:none;margin-top:2rem}
.results-list li{padding:1.1rem 0;border-bottom:1px solid var(--border)}
.results-list a{font-family:var(--font-head);font-weight:700;font-size:1.1rem;text-decoration:none;color:var(--corneal)}
.results-list p{font-size:.88rem;color:var(--muted);margin:.3rem 0 0}
.verify-token{background:#fff3cd;color:#8a6d00;border-radius:6px;padding:.1rem .45rem;font-size:.72rem;font-weight:700;font-family:monospace}
.qa-panel{position:fixed;bottom:0;left:0;right:0;background:#fff3cd;color:#5c4a00;font:600 .8rem/1.5 monospace;padding:.6rem 1rem;z-index:600;text-align:center}

/* ---------- Prism (3D concept, CSS/SVG based) ---------- */
.prism-stage{position:relative;width:min(420px,90%);aspect-ratio:1;margin-inline:auto}
.prism-arc{position:absolute;inset:8%;border-radius:50% 50% 48% 52%/55% 52% 48% 45%;border:2px solid rgba(55,167,122,.5);animation:prismSpin 26s linear infinite}
.prism-arc.a2{inset:16%;border-color:rgba(253,91,2,.35);animation-duration:34s;animation-direction:reverse}
.prism-arc.a3{inset:24%;border-color:rgba(159,216,194,.5);animation-duration:42s}
@keyframes prismSpin{to{transform:rotate(360deg)}}
.prism-ray{position:absolute;top:50%;left:4%;width:44%;height:3px;background:linear-gradient(90deg,var(--amber),var(--orange));border-radius:3px;transform-origin:right center;animation:rayFocus 5s var(--ease) infinite;box-shadow:0 0 14px rgba(253,91,2,.6)}
.prism-ray-out{position:absolute;top:50%;right:4%;width:38%;height:3px;background:linear-gradient(90deg,var(--orange),var(--jade));border-radius:3px;transform-origin:left center;animation:rayOut 5s var(--ease) infinite}
@keyframes rayFocus{0%,100%{transform:rotate(6deg);opacity:.7}50%{transform:rotate(-4deg);opacity:1}}
@keyframes rayOut{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(3deg)}}
.prism-layers{position:absolute;inset:30%;display:grid;place-items:center;gap:.4rem;text-align:center}
.prism-layer{background:rgba(251,250,247,.92);border:1px solid var(--border);border-radius:14px;padding:.5rem .9rem;font:700 .75rem var(--font-head);color:var(--emerald);box-shadow:var(--shadow-sm);transition:transform .6s var(--ease)}
.prism-stage.spread .prism-layer:nth-child(1){transform:translateY(-14px)}
.prism-stage.spread .prism-layer:nth-child(3){transform:translateY(14px)}

/* ---------- Reveal animations ---------- */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal.in{opacity:1;transform:none}
.reveal-l{opacity:0;transform:translateX(-36px);transition:all .9s var(--ease)}
.reveal-l.in{opacity:1;transform:none}

/* ---------- Admin ---------- */
.admin-body{background:#f4f7f5;font-size:.95rem}
.admin-wrap{display:grid;grid-template-columns:240px 1fr;min-height:100vh}
.admin-side{background:var(--corneal);color:#b9d9c9;padding:1.6rem 1rem}
.admin-side a{display:block;color:#b9d9c9;text-decoration:none;padding:.6rem .9rem;border-radius:10px;font-weight:600;font-size:.9rem}
.admin-side a:hover,.admin-side a.active{background:rgba(255,255,255,.1);color:#fff}
.admin-main{padding:2rem 2.4rem}
.admin-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.8rem;flex-wrap:wrap;gap:1rem}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem;margin-bottom:2rem}
.stat-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:1.3rem}
.stat-num{font:800 2rem var(--font-head);color:var(--corneal)}
.stat-label{font-size:.8rem;color:var(--muted)}
.admin-table{width:100%;border-collapse:collapse;background:#fff;border-radius:14px;overflow:hidden;font-size:.88rem}
.admin-table th{background:var(--mint);text-align:left;padding:.8rem 1rem;font-family:var(--font-head);color:var(--corneal);font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}
.admin-table td{padding:.75rem 1rem;border-top:1px solid var(--border)}
.badge{display:inline-block;padding:.2rem .65rem;border-radius:99px;font-size:.72rem;font-weight:700}
.badge-new{background:#e3f2fd;color:#1565c0}.badge-contacted{background:#fff3e0;color:#e65100}
.badge-confirmed{background:#e8f5e9;color:#2e7d32}.badge-completed{background:#ede7f6;color:#5e35b1}
.badge-cancelled{background:#ffebee;color:#c62828}.badge-followup{background:#fffde7;color:#f9a825}
.login-card{width:min(420px,92%);margin:10vh auto;background:#fff;border-radius:var(--radius-lg);padding:2.6rem;box-shadow:var(--shadow-md)}

/* ---------- Responsive ---------- */
@media (max-width:1100px){
  .main-nav{display:none}
  .hamburger{display:flex}
  .btn-book{display:none}
  .cred-grid{grid-template-columns:repeat(2,1fr)}
  .path-grid{grid-template-columns:repeat(3,1fr);gap:1.6rem}
  .path-track,.path-line{display:none}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .hero-inner{grid-template-columns:1fr;padding:4rem 0 5rem;gap:3.5rem}
  .hero-visual{max-width:420px;margin-inline:auto;width:100%}
  .chip-1{left:0}.chip-2{right:0}
  .about-grid,.spot-grid,.assoc-grid,.two-col,.vc-panel{grid-template-columns:1fr}
  .visual-strip{grid-template-columns:1fr}
  .photo-gallery{grid-template-columns:1fr 1fr}
  .photo-gallery .photo-card:first-child{grid-column:span 2}
  .exp-grid,.card-grid-3,.related-grid{grid-template-columns:1fr 1fr}
  .cta-band{grid-template-columns:1fr;text-align:center}
  .cta-band .btn{justify-self:center}
  .mega-grid{grid-template-columns:1fr}
  .mega-links{grid-template-columns:repeat(2,1fr)}
  .mega-intro{grid-row:auto;border-right:0;border-bottom:1px solid var(--border);padding:0 0 1rem}
  .mega-preview{border-left:0;padding-left:0;border-top:1px solid var(--border);padding-top:1.6rem}
  .form-grid{grid-template-columns:1fr}
  .form-span-2{grid-column:span 1}
}
@media (max-width:640px){
  body{font-size:16px}
  .util-inner{font-size:.74rem;gap:.5rem}
  .utility-bar .util-item:nth-child(n+4){display:none}
  .section{padding:3.8rem 0}
  .exp-grid,.card-grid-3,.related-grid,.path-grid,.path-panels,.cred-grid{grid-template-columns:1fr}
  .photo-gallery{grid-template-columns:1fr}
  .photo-gallery .photo-card:first-child{grid-column:auto}
  .photo-gallery .photo-card:first-child img{aspect-ratio:16/10}
  .footer-grid{grid-template-columns:1fr;gap:1.8rem}
  .floating-actions .float-book,.floating-actions .float-wa{display:none}
  .mobile-action-bar{display:grid;grid-template-columns:1fr 1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:350;background:var(--corneal);box-shadow:0 -6px 24px rgba(0,0,0,.25)}
  .utility-bar .util-kicker,.utility-bar .util-sep{display:none}
  .site-header.scrolled .header-inner,.header-inner{height:68px}
  .mega-links{grid-template-columns:1fr}
  .assoc-visual{min-height:500px}
  .assoc-photo-card{width:46%;right:-1%}
  .assoc-visual .assoc-logo-band{left:3%;right:3%}
  .mab-item{display:flex;flex-direction:column;align-items:center;gap:.15rem;color:#fff;text-decoration:none;font:700 .72rem var(--font-head);padding:.7rem 0}
  .mab-book{background:var(--orange)}
  .mab-wa{background:#178f47}
  body{padding-bottom:58px}
  .stat-grid{grid-template-columns:1fr 1fr}
  .admin-wrap{grid-template-columns:1fr}
  .admin-side{position:static;display:flex;flex-wrap:wrap;gap:.2rem}
}
/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  html{scroll-behavior:auto}
  .hero-backdrop{opacity:.55}
  .reveal,.reveal-l{opacity:1;transform:none}
}
/* ---------- Print ---------- */
@media print{
  .site-header,.utility-bar,.floating-actions,.mobile-action-bar,.site-footer,.cta-band,.hero-backdrop{display:none!important}
  body{background:#fff;font-size:12px}
  .section{padding:1rem 0}
}
