/* V13 — Interactive physician website motion + auth polish */
:root{
    --v13-ease:cubic-bezier(.2,.8,.2,1);
    --v13-spring:cubic-bezier(.16,1,.3,1);
    --v13-glow:rgba(92,151,105,.18);
}
html{scroll-padding-top:104px}
body.doctor-public-v9{overflow-x:hidden}

/* Reading progress gives the long one-page site a sense of movement. */
.scroll-progress-v13{position:fixed;z-index:220;inset-inline-start:0;top:0;width:0;height:3px;background:linear-gradient(90deg,var(--secondary),var(--accent),var(--primary));box-shadow:0 0 16px rgba(107,170,107,.38);pointer-events:none;transition:width .08s linear}

/* Header changes state instead of remaining visually frozen. */
.doctor-header-v9{transition:background .35s var(--v13-ease),box-shadow .35s var(--v13-ease),border-color .35s var(--v13-ease)}
.doctor-header-v9.is-scrolled{background:rgba(255,255,255,.9)!important;border-color:rgba(25,70,52,.1);box-shadow:0 16px 48px rgba(15,54,39,.09);backdrop-filter:blur(20px) saturate(145%)}
.doctor-header-v9 .doctor-nav-v9{transition:min-height .3s var(--v13-ease)}
.doctor-header-v9.is-scrolled .doctor-nav-v9{min-height:72px}
.doctor-desktop-nav-v9>a{position:relative;transition:color .25s ease,transform .25s ease}
.doctor-desktop-nav-v9>a:after{content:"";position:absolute;inset-inline:50% 50%;bottom:-9px;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--secondary),var(--primary));transition:inset .3s var(--v13-spring),opacity .3s;opacity:0}
.doctor-desktop-nav-v9>a:hover,.doctor-desktop-nav-v9>a.is-current{color:var(--primary);transform:translateY(-1px)}
.doctor-desktop-nav-v9>a:hover:after,.doctor-desktop-nav-v9>a.is-current:after{inset-inline:12% 12%;opacity:1}

/* Premium button micro-interaction */
.doctor-public-v9 .btn{position:relative;isolation:isolate;overflow:hidden;transition:transform .28s var(--v13-spring),box-shadow .28s ease,border-color .28s ease}
.doctor-public-v9 .btn:before{content:"";position:absolute;z-index:-1;top:-80%;left:-35%;width:28%;height:260%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.36),transparent);transform:rotate(16deg) translateX(-240%);transition:transform .72s var(--v13-ease)}
.doctor-public-v9 .btn:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(17,60,43,.15)}
.doctor-public-v9 .btn:hover:before{transform:rotate(16deg) translateX(620%)}
.doctor-public-v9 .btn:active{transform:translateY(0) scale(.985)}

/* Hero gets depth instead of being a static photo + text block. */
.doctor-hero-v12{position:relative;isolation:isolate;background:
 radial-gradient(circle at 15% 18%,rgba(168,207,116,.16),transparent 28%),
 radial-gradient(circle at 82% 25%,rgba(64,122,91,.13),transparent 30%),
 linear-gradient(155deg,#fbfdfb 0%,#f1f7f3 55%,#edf5ef 100%)}
.doctor-hero-v12:before,.doctor-hero-v12:after{content:"";position:absolute;z-index:-1;border-radius:999px;filter:blur(2px);pointer-events:none}
.doctor-hero-v12:before{width:520px;height:520px;inset-inline-start:-170px;top:-190px;border:1px solid rgba(52,105,77,.11);box-shadow:0 0 0 70px rgba(58,114,83,.03),0 0 0 145px rgba(58,114,83,.018);animation:v13Orbit 16s ease-in-out infinite alternate}
.doctor-hero-v12:after{width:300px;height:300px;inset-inline-end:6%;bottom:-170px;background:radial-gradient(circle,rgba(201,149,54,.12),rgba(201,149,54,0) 70%);animation:v13Drift 10s ease-in-out infinite alternate}
.doctor-hero-v12 .doctor-hero-grid-v9{min-height:760px}
.doctor-hero-v12 .doctor-hero-copy-v9{position:relative;z-index:3}
.doctor-kicker-v9{box-shadow:0 10px 28px rgba(18,58,44,.06);backdrop-filter:blur(8px)}
.doctor-hero-copy-v9 h1{background:linear-gradient(120deg,#0c2b20 20%,#19513b 65%,#8b712d 130%);-webkit-background-clip:text;background-clip:text;color:transparent!important}
.v12-hero-value-text{font-size:17px!important;line-height:2!important;max-width:800px!important}
.doctor-quick-facts-v9>div{transition:transform .3s var(--v13-spring),background .3s ease,border-color .3s ease}
.doctor-quick-facts-v9>div:hover{transform:translateY(-4px);background:rgba(255,255,255,.78);border-color:rgba(46,105,76,.14)}

.motion-enabled .doctor-hero-copy-v9>*{opacity:0;transform:translateY(24px);filter:blur(5px)}
.motion-enabled.hero-ready .doctor-hero-copy-v9>*{opacity:1;transform:none;filter:none;transition:opacity .78s var(--v13-ease),transform .78s var(--v13-spring),filter .78s ease}
.motion-enabled.hero-ready .doctor-hero-copy-v9>*:nth-child(1){transition-delay:.05s}
.motion-enabled.hero-ready .doctor-hero-copy-v9>*:nth-child(2){transition-delay:.13s}
.motion-enabled.hero-ready .doctor-hero-copy-v9>*:nth-child(3){transition-delay:.2s}
.motion-enabled.hero-ready .doctor-hero-copy-v9>*:nth-child(4){transition-delay:.27s}
.motion-enabled.hero-ready .doctor-hero-copy-v9>*:nth-child(5){transition-delay:.34s}
.motion-enabled.hero-ready .doctor-hero-copy-v9>*:nth-child(6){transition-delay:.41s}
.motion-enabled.hero-ready .doctor-hero-copy-v9>*:nth-child(7){transition-delay:.48s}
.motion-enabled.hero-ready .doctor-hero-copy-v9>*:nth-child(8){transition-delay:.55s}
.motion-enabled .doctor-portrait-column-v9{opacity:0;transform:translate3d(28px,18px,0) scale(.97)}
[dir="rtl"] .motion-enabled .doctor-portrait-column-v9{transform:translate3d(-28px,18px,0) scale(.97)}
.motion-enabled.hero-ready .doctor-portrait-column-v9{opacity:1;transform:translate3d(var(--v13-parallax-x,0),var(--v13-parallax-y,0),0) scale(1);transition:opacity .9s .2s ease,transform .28s ease-out}
.doctor-portrait-frame-v9{will-change:transform;animation:v13PortraitFloat 6.5s ease-in-out infinite;box-shadow:0 42px 120px rgba(12,48,35,.2),0 0 0 1px rgba(255,255,255,.8) inset}
.doctor-photo-v9 img{transition:transform 1.2s var(--v13-ease),filter .5s ease}
.doctor-portrait-frame-v9:hover .doctor-photo-v9 img{transform:scale(1.035);filter:saturate(1.03) contrast(1.02)}
.doctor-floating-card-v9{backdrop-filter:blur(14px);box-shadow:0 20px 55px rgba(20,62,46,.15)!important}
.doctor-floating-card-top-v9{animation:v13FloatA 5s ease-in-out infinite}
.doctor-floating-card-bottom-v9{animation:v13FloatB 5.8s .8s ease-in-out infinite}

/* Scroll reveal system */
.motion-enabled [data-v13-reveal]{opacity:0;transform:translate3d(0,34px,0);filter:blur(3px);transition:opacity .78s var(--v13-ease),transform .85s var(--v13-spring),filter .75s ease;transition-delay:var(--v13-delay,0ms);will-change:transform,opacity}
.motion-enabled [data-v13-reveal="left"]{transform:translate3d(-36px,20px,0)}
.motion-enabled [data-v13-reveal="right"]{transform:translate3d(36px,20px,0)}
.motion-enabled [data-v13-reveal="scale"]{transform:scale(.955) translateY(20px)}
.motion-enabled [data-v13-reveal].is-visible{opacity:1;transform:none;filter:none}

/* Cards react to the pointer and feel layered. */
.doctor-service-card-v9,.doctor-review-card-v9,.profile-panel-v9,.v12-info-card,.v12-audience-grid article,.v12-topic-card,.v12-clinic-card,.v12-plan-device,.v12-portal-ui{position:relative;isolation:isolate;overflow:hidden}
.doctor-service-card-v9:after,.doctor-review-card-v9:after,.profile-panel-v9:after,.v12-info-card:after,.v12-audience-grid article:after,.v12-topic-card:after{content:"";position:absolute;z-index:-1;width:230px;height:230px;border-radius:50%;left:var(--v13-spot-x,50%);top:var(--v13-spot-y,50%);transform:translate(-50%,-50%) scale(.25);background:radial-gradient(circle,var(--v13-glow),transparent 70%);opacity:0;transition:opacity .35s ease,transform .45s var(--v13-ease);pointer-events:none}
.doctor-service-card-v9:hover:after,.doctor-review-card-v9:hover:after,.profile-panel-v9:hover:after,.v12-info-card:hover:after,.v12-audience-grid article:hover:after,.v12-topic-card:hover:after{opacity:1;transform:translate(-50%,-50%) scale(1.4)}
.doctor-review-card-v9,.profile-panel-v9,.v12-topic-card{transition:transform .3s var(--v13-spring),box-shadow .3s ease,border-color .3s ease}
.doctor-review-card-v9:hover,.profile-panel-v9:hover,.v12-topic-card:hover{transform:translateY(-6px);box-shadow:0 24px 60px rgba(17,58,42,.1);border-color:rgba(67,125,91,.2)}

/* Trust strip and fake portal should visibly come alive when seen. */
.doctor-trust-strip-v9{position:relative;overflow:hidden;background:rgba(255,255,255,.92)}
.doctor-trust-strip-v9:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,rgba(112,174,120,.08) 45%,transparent 70%);transform:translateX(-120%);animation:v13TrustSweep 8s 1s ease-in-out infinite}
.doctor-trust-strip-grid-v9 strong{font-size:23px!important}
.doctor-trust-strip-grid-v9 span{font-size:11px!important;line-height:1.65!important}
.v12-progress-line i{transform-origin:inline-start;animation:v13Progress 2.4s var(--v13-spring) infinite alternate}
.v12-portal-cards span{position:relative;overflow:hidden}
.v12-portal-cards span:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent,rgba(255,255,255,.7),transparent);transform:translateX(-110%);animation:v13Skeleton 3.2s ease-in-out infinite}
.v12-plan-device{transition:transform .35s var(--v13-spring),box-shadow .35s ease}
.v12-plan-device:hover{transform:translateY(-8px) rotate(.35deg);box-shadow:0 42px 100px rgba(19,62,47,.16)}
.v12-meal-row div:after{animation:v13Bar 3.5s ease-in-out infinite alternate;transform-origin:inline-start}

/* FAQ feels interactive, not like a static document. */
.faq-list-v9 details{transition:background .28s ease,border-color .28s ease,transform .28s var(--v13-spring),box-shadow .28s ease}
.faq-list-v9 details:hover{transform:translateY(-2px);border-color:#d2e1d8;box-shadow:0 12px 30px rgba(24,66,49,.07)}
.faq-list-v9 details summary b{transition:transform .3s var(--v13-spring),background .3s ease}
.faq-list-v9 details[open] summary b{transform:rotate(45deg);background:#e7f2eb}

/* Section rhythm and decorative atmosphere. */
.section-v9,.v12-section{position:relative}
.section-eyebrow-v9,.v12-section-head>span,.v12-split-head>div>span{position:relative}
.section-eyebrow-v9:after,.v12-section-head>span:after,.v12-split-head>div>span:after{content:"";display:inline-block;width:28px;height:1px;background:currentColor;vertical-align:middle;margin-inline-start:9px;opacity:.45;transition:width .45s var(--v13-spring)}
.is-visible .section-eyebrow-v9:after,.is-visible.v12-section-head>span:after,.is-visible.v12-split-head>div>span:after{width:48px}

/* Authentication now looks like part of the premium website. */
.auth-section-v13{position:relative;isolation:isolate;overflow:hidden;min-height:calc(100vh - 80px);background:linear-gradient(145deg,#eff6f1 0%,#fbfdfb 52%,#eef5f0 100%)}
.auth-ambient-v13{position:absolute;inset:0;z-index:-1;pointer-events:none}
.auth-ambient-v13 span{position:absolute;border-radius:999px;filter:blur(4px);opacity:.7}
.auth-ambient-v13 span:nth-child(1){width:420px;height:420px;top:-180px;inset-inline-start:-120px;background:radial-gradient(circle,rgba(116,176,119,.2),transparent 68%);animation:v13Drift 9s ease-in-out infinite alternate}
.auth-ambient-v13 span:nth-child(2){width:330px;height:330px;bottom:-130px;inset-inline-end:-70px;background:radial-gradient(circle,rgba(201,149,54,.14),transparent 68%);animation:v13Drift 11s 1s ease-in-out infinite alternate-reverse}
.auth-ambient-v13 span:nth-child(3){width:520px;height:520px;top:22%;left:50%;transform:translateX(-50%);border:1px solid rgba(45,100,73,.06);box-shadow:0 0 0 70px rgba(45,100,73,.025),0 0 0 140px rgba(45,100,73,.015)}
.auth-card-v13{position:relative;width:min(540px,100%);padding:48px!important;border:1px solid rgba(218,231,223,.9);border-radius:32px;background:rgba(255,255,255,.88);box-shadow:0 38px 100px rgba(16,58,41,.12);backdrop-filter:blur(18px);animation:v13AuthIn .8s var(--v13-spring) both}
.auth-card-v13 h1{font-size:clamp(30px,3vw,42px);line-height:1.3;margin:12px 0}
.auth-card-v13>p{font-size:14px;line-height:1.9;max-width:430px;margin-inline:auto}
.auth-card-v13 .form-stack{gap:17px}
.auth-card-v13 input{min-height:50px;background:rgba(251,253,251,.9);transition:border-color .22s ease,box-shadow .22s ease,background .22s ease}
.auth-card-v13 input:focus{background:#fff;box-shadow:0 0 0 4px rgba(107,170,107,.12),0 10px 25px rgba(31,82,58,.06)}
.auth-options-v13{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:-2px}
.forgot-password-link-v13,.auth-secondary-actions-v13 a{font-size:12px;font-weight:800;color:var(--primary);text-decoration:none;transition:color .2s,transform .2s}
.forgot-password-link-v13:hover,.auth-secondary-actions-v13 a:hover{color:var(--accent);transform:translateY(-1px)}
.auth-secondary-actions-v13{display:flex;justify-content:center;margin-top:24px}
.auth-password-hint-v13{display:block;color:var(--muted);font-size:11px;line-height:1.7;margin-top:-7px}

@keyframes v13PortraitFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(.25deg)}}
@keyframes v13FloatA{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-10px,0)}}
@keyframes v13FloatB{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(7px,-8px,0)}}
@keyframes v13Orbit{0%{transform:translate3d(0,0,0) rotate(0)}100%{transform:translate3d(32px,28px,0) rotate(12deg)}}
@keyframes v13Drift{0%{transform:translate3d(0,0,0) scale(.96)}100%{transform:translate3d(24px,-18px,0) scale(1.06)}}
@keyframes v13TrustSweep{0%,12%{transform:translateX(-120%)}45%,100%{transform:translateX(150%)}}
@keyframes v13Progress{from{transform:scaleX(.72)}to{transform:scaleX(1)}}
@keyframes v13Skeleton{0%,25%{transform:translateX(-110%)}70%,100%{transform:translateX(120%)}}
@keyframes v13Bar{from{transform:scaleX(.78)}to{transform:scaleX(1)}}
@keyframes v13AuthIn{from{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}

@media(max-width:980px){
    .doctor-hero-v12 .doctor-hero-grid-v9{min-height:auto;padding-block:52px 76px}
    .doctor-header-v9.is-scrolled .doctor-nav-v9{min-height:68px}
}
@media(max-width:760px){
    html{scroll-padding-top:78px}
    .scroll-progress-v13{height:2px}
    .doctor-hero-v12:before{width:320px;height:320px;top:-130px;inset-inline-start:-130px}
    .doctor-hero-v12:after{width:220px;height:220px;bottom:-100px}
    .doctor-hero-v12 .doctor-hero-grid-v9{padding-block:30px 58px}
    .doctor-portrait-frame-v9,.doctor-floating-card-v9{animation-duration:7s}
    .doctor-trust-strip-grid-v9 strong{font-size:18px!important}
    .doctor-trust-strip-grid-v9 span{font-size:10px!important}
    .auth-section-v13{padding:42px 14px 90px;min-height:calc(100vh - 68px)}
    .auth-card-v13{padding:30px 22px!important;border-radius:24px}
    .auth-card-v13 h1{font-size:30px}
    .auth-options-v13{align-items:flex-start;flex-direction:column;gap:8px}
}

/* Accessibility + battery-friendly motion. */
@media (prefers-reduced-motion:reduce){
    *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
    .motion-enabled [data-v13-reveal],.motion-enabled .doctor-hero-copy-v9>*,.motion-enabled .doctor-portrait-column-v9{opacity:1!important;transform:none!important;filter:none!important}
    .scroll-progress-v13{display:none}
}

/* Keep hover elevation after reveal has completed (same transform property). */
.motion-enabled .doctor-service-card-v9.is-visible:hover,
.motion-enabled .v12-info-card.is-visible:hover,
.motion-enabled .v12-audience-grid article.is-visible:hover{transform:translateY(-7px);box-shadow:0 24px 62px rgba(18,58,44,.12)}
