:root{--bg:#f2f6fb;--ink:#0a1e3f;--muted:#0a1e3f99;--accent:#1a56db;--accent2:#0e9bd8;--line:#0a1e3f24;--display:"Anton", sans-serif;--body:"Inter", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body[data-theme=teal]{background:#e7f1f8}body[data-theme=navy2]{background:#ecf2fa}body[data-theme=ember]{background:#fbf3e4}body[data-theme=navy]{background:#f2f6fb}body{background:var(--bg);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.6;transition:background 1.2s;overflow-x:hidden}a{color:inherit;text-decoration:none}button{color:inherit;cursor:pointer;background:0 0;border:none;font-family:inherit}::selection{background:var(--accent);color:var(--bg)}.eye-canvas{z-index:0;pointer-events:none;position:fixed;inset:0}@media (width<=700px){.eye-canvas{opacity:.55}}main{z-index:1;position:relative}.main--hidden{visibility:hidden}.loader{z-index:100;background:var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:1.2rem;transition:opacity .7s,visibility .7s;display:flex;position:fixed;inset:0}.loader--leaving{opacity:0;visibility:hidden}.loader__iris{border:2px solid #0000;border-top-color:var(--accent);border-right-color:var(--accent2);border-radius:50%;width:64px;height:64px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loader__label{letter-spacing:.35em;font-size:.72rem;font-weight:700}.loader__bar{background:var(--line);width:min(280px,60vw);height:2px;overflow:hidden}.loader__fill{background:linear-gradient(90deg, var(--accent), var(--accent2));height:100%;transition:width .15s}.loader__pct{letter-spacing:.25em;color:var(--muted);font-size:.72rem}.nav{z-index:50;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem clamp(1.2rem,4vw,3rem);transition:background .4s,-webkit-backdrop-filter .4s,backdrop-filter .4s;display:flex;position:fixed;top:0;left:0;right:0}.nav--scrolled{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#f2f6fbbf}.nav__logo{font-family:var(--display);letter-spacing:.08em;font-size:1.05rem}.nav__logo span{color:var(--accent2)}.nav__links{gap:clamp(.8rem,2vw,1.8rem);display:flex}.nav__links a{letter-spacing:.22em;color:var(--muted);font-size:.7rem;font-weight:600;transition:color .25s}.nav__links a:hover{color:var(--accent)}.nav__cta{letter-spacing:.2em;border:1px solid var(--accent);color:var(--accent);white-space:nowrap;border-radius:99px;padding:.65rem 1.2rem;font-size:.68rem;font-weight:700;transition:background .25s,color .25s}.nav__cta:hover{background:var(--accent);color:var(--bg)}@media (width<=820px){.nav__links{display:none}}.section{max-width:1400px;margin:0 auto;padding:clamp(5rem,14vh,9rem) clamp(1.2rem,6vw,6rem);position:relative}.section--full{padding:clamp(5rem,14vh,9rem) 0}.kicker{letter-spacing:.4em;color:var(--accent2);margin-bottom:2rem;font-size:.72rem;font-weight:700}.display{font-family:var(--display);letter-spacing:.01em;text-transform:uppercase;font-size:clamp(2.6rem,8.5vw,7rem);line-height:.98}.display--accent{-webkit-text-stroke:1.5px var(--ink);-webkit-text-fill-color:transparent;color:#0000}.reveal-line{display:block;overflow:hidden}.reveal-line>span{display:block}.interlude{max-width:42ch;color:var(--muted);margin-top:2rem;font-size:clamp(1rem,1.6vw,1.2rem)}.btn{letter-spacing:.22em;border-radius:99px;padding:.95rem 1.8rem;font-size:.72rem;font-weight:700;transition:transform .25s,background .25s,color .25s;display:inline-block}.btn:hover{transform:translateY(-2px)}.btn--solid{background:linear-gradient(100deg, var(--accent), var(--accent2));color:#fff}.btn--ghost{border:1px solid var(--line);color:var(--ink)}.btn--ghost:hover{border-color:var(--accent2);color:var(--accent2)}.hero{flex-direction:column;justify-content:center;min-height:100vh;padding-top:7rem;display:flex}.hero__title{font-family:var(--display);text-transform:uppercase;max-width:12ch;font-size:clamp(3rem,10vw,8.5rem);line-height:.96}.hero__title .reveal-line:last-child span{background:linear-gradient(95deg, var(--accent), var(--accent2));color:#0000;-webkit-background-clip:text;background-clip:text}.hero__slogan{letter-spacing:.4em;color:var(--accent);margin-top:1.6rem;font-size:.78rem;font-weight:700}.hero__descriptor{max-width:46ch;color:var(--muted);margin-top:1rem}.hero__cta{flex-wrap:wrap;gap:1rem;margin-top:2.4rem;display:flex}.hero__scroll{letter-spacing:.3em;color:var(--muted);font-size:.68rem;position:absolute;bottom:2rem;left:clamp(1.2rem,6vw,6rem)}.hero__arrow{animation:1.6s ease-in-out infinite bob;display:inline-block}@keyframes bob{50%{transform:translateY(6px)}}.name{flex-direction:column;justify-content:center;min-height:80vh;display:flex}.name__meaning{color:var(--accent);margin-top:1.4rem;font-size:clamp(1.2rem,2.6vw,1.8rem);font-style:italic}.anatomy{height:520vh;position:relative}.anatomy__sticky{height:100vh;position:sticky;top:0;overflow:hidden}.anatomy__kicker{position:absolute;top:6.5rem;left:clamp(1.2rem,6vw,6rem)}.anatomy__hint{letter-spacing:.3em;color:var(--muted);white-space:nowrap;font-size:.62rem;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.anatomy__card{border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;visibility:hidden;background:#f2f6fbb8;border-radius:12px;width:min(360px,82vw);padding:1.6rem;transition:opacity .5s,transform .5s,visibility .5s;position:absolute;top:50%;transform:translateY(-50%)translate(0)}.anatomy__card--left{left:clamp(1.2rem,7vw,8rem)}.anatomy__card--right{right:clamp(1.2rem,7vw,8rem)}.anatomy__card--active{opacity:1;visibility:visible;transform:translateY(-50%)translate(0)}.anatomy__card:not(.anatomy__card--active){transform:translateY(-46%)}.anatomy__index{letter-spacing:.3em;color:var(--accent2);margin-bottom:.8rem;font-size:.66rem}.anatomy__part{font-family:var(--display);margin-bottom:.6rem;font-size:clamp(1.8rem,4vw,2.8rem)}.anatomy__line{color:var(--ink);margin-bottom:.9rem}.anatomy__service{color:var(--muted);border-top:1px solid var(--line);padding-top:.9rem;font-size:.85rem}.clinic__cols{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2.5rem;max-width:900px;margin-top:3.5rem;display:grid}.clinic__label{letter-spacing:.3em;color:var(--accent);margin-bottom:.8rem;font-size:.7rem}.clinic__cols p{color:var(--muted)}.clinic__stats{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;margin-top:4rem;display:grid}.stat{background:var(--bg);flex-direction:column;gap:.6rem;padding:2rem 1.6rem;display:flex}.stat__value{font-family:var(--display);background:linear-gradient(120deg, var(--accent), var(--accent2));color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(2.5rem,5vw,4rem)}.stat__label{letter-spacing:.22em;color:var(--muted);font-size:.68rem}.team__founder{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:center;gap:3rem;margin-top:3.5rem;display:grid}.team__founder-tag{letter-spacing:.3em;color:var(--accent);font-size:.7rem;font-weight:700}.team__founder-name{font-family:var(--display);margin:.6rem 0 1rem;font-size:clamp(1.8rem,4vw,3rem)}.team__founder-line{color:var(--muted);max-width:48ch}.team__phoropter{text-align:center;justify-self:center;max-width:440px}.phoropter{width:100%;stroke:var(--ink);stroke-width:2.5px;fill:none;stroke-linecap:round}.phoropter__dial{animation:16s linear infinite dialSpin}.phoropter__dial:last-of-type{animation-direction:reverse}.phoropter__knob{animation:9s linear infinite reverse dialSpin}.phoropter__hub{fill:var(--accent);stroke:none}.phoropter__aperture--open{stroke:var(--accent);stroke-width:4px}.phoropter__eyepiece{stroke:var(--accent2);stroke-width:3.5px}@keyframes dialSpin{to{transform:rotate(360deg)}}.team__phoropter-caption{letter-spacing:.28em;color:var(--muted);margin-top:1rem;font-size:.62rem}.team__list{border-top:1px solid var(--line);margin-top:4rem;list-style:none}.team__row{border-bottom:1px solid var(--line);grid-template-columns:3rem 1fr auto;align-items:baseline;gap:1.5rem;padding:1.4rem .6rem;transition:background .3s,padding-left .3s;display:grid}.team__row:hover{background:#1a56db0f;padding-left:1.4rem}.team__index{letter-spacing:.25em;color:var(--accent2);font-size:.7rem}.team__name{font-family:var(--display);letter-spacing:.02em;font-size:clamp(1.4rem,3.4vw,2.4rem);transition:color .3s}.team__row:hover .team__name{color:var(--accent)}.team__role{letter-spacing:.22em;color:var(--muted);text-align:right;font-size:.7rem}@media (width<=700px){.team__row{grid-template-columns:2.2rem 1fr}.team__role{text-align:left;grid-column:2}}.services__grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.2rem;margin-top:3.5rem;display:grid}.service{border:1px solid var(--line);background:#ffffff8c;border-radius:12px;padding:1.8rem;transition:border-color .3s,transform .3s,background .3s}.service:hover{border-color:var(--accent);background:#1a56db0f;transform:translateY(-4px)}.service__num{letter-spacing:.3em;color:var(--accent2);font-size:.7rem}.service__title{font-family:var(--display);letter-spacing:.03em;margin:.8rem 0 .6rem;font-size:1.25rem}.service__body{color:var(--muted);font-size:.9rem}.snellen{text-align:center}.snellen .kicker{text-align:left}.snellen__chart{flex-direction:column;gap:1.6rem;padding:3rem 0 1rem;display:flex}.snellen__row{font-family:var(--display);letter-spacing:.35em;text-transform:uppercase;font-size:clamp(1rem, calc(11vw - var(--row) * 1.5vw), calc(7.5rem - var(--row) * 1rem));line-height:1.1;position:relative}.snellen__row:nth-child(n+5){color:var(--muted)}.snellen__row:last-child{color:var(--accent);letter-spacing:.2em}.snellen__ratio{font-family:var(--body);letter-spacing:.2em;color:var(--muted);font-size:.62rem;position:absolute;top:50%;left:0;transform:translateY(-50%)}@media (width<=700px){.snellen__ratio{display:none}}.carousel{max-width:560px;margin-top:3rem}.carousel__card{border:1px solid var(--line);background:#fff9;border-radius:16px;padding:2.5rem 2rem;animation:.5s cardIn}@keyframes cardIn{0%{opacity:0;transform:translateY(14px)}}.carousel__art{width:min(320px,70vw);stroke:var(--accent);stroke-width:3px;fill:none;stroke-linecap:round;stroke-linejoin:round}.carousel__name{font-family:var(--display);margin-top:1rem;font-size:clamp(2rem,5vw,3rem)}.carousel__note{color:var(--muted);margin-top:.4rem}.carousel__controls{align-items:center;gap:1.4rem;margin-top:1.6rem;display:flex}.carousel__controls button{border:1px solid var(--line);border-radius:50%;width:44px;height:44px;font-size:1.1rem;transition:border-color .25s,color .25s}.carousel__controls button:hover{border-color:var(--accent);color:var(--accent)}.carousel__count{letter-spacing:.25em;color:var(--muted);font-size:.72rem}.carousel__hint{letter-spacing:.25em;color:var(--muted);margin-top:1.4rem;font-size:.6rem}.branches__head{padding-bottom:3rem}.marquee{border-top:1px solid var(--line);white-space:nowrap;padding:1.2rem 0;overflow:hidden}.marquee+.marquee{border-bottom:1px solid var(--line)}.marquee__track{animation:28s linear infinite scroll;display:inline-flex}.marquee__track--reverse{animation-direction:reverse}@keyframes scroll{to{transform:translate(-50%)}}.marquee__item{font-family:var(--display);text-transform:uppercase;align-items:center;font-size:clamp(1.8rem,4.5vw,3.2rem);display:inline-flex}.marquee__dot{color:var(--accent2);margin:0 1.6rem}.marquee:nth-of-type(2) .marquee__item{-webkit-text-stroke:1px var(--muted);-webkit-text-fill-color:transparent}.branches__detail{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2.5rem;padding-top:3rem;display:grid}.branches__detail p{color:var(--muted);max-width:44ch}.contact__grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2.5rem;margin-top:3.5rem;display:grid}.contact__grid p{color:var(--muted)}.contact__grid a:not(.btn):hover{color:var(--accent2)}.contact__top{letter-spacing:.3em;color:var(--muted);margin-top:5rem;font-size:.72rem;font-weight:700;transition:color .25s}.contact__top:hover{color:var(--accent)}.footer{border-top:1px solid var(--line);letter-spacing:.18em;color:var(--muted);flex-direction:column;gap:.6rem;margin-top:3rem;padding-top:2rem;font-size:.66rem;display:flex}.footer__fine{opacity:.6}@media (prefers-reduced-motion:reduce){.hero__arrow,.marquee__track,.phoropter__dial,.phoropter__knob,.carousel__card{animation:none}}
