/* Motion is an enhancement: all content remains visible without JavaScript. */
.hero-slides{position:absolute;inset:0;overflow:hidden}
.hero-slides .hero-image{opacity:0;transform:scale(1.025);transition:opacity 1.5s ease;pointer-events:none}
.hero-slides .hero-image.is-active{opacity:1}
.hero-slides .hero-image:first-child{object-position:center 48%}
.hero-slides .hero-image:nth-child(2){object-position:center 55%}
.hero-controls{display:none;position:absolute;right:32px;bottom:25px;z-index:3;align-items:center;gap:10px;color:#fff}
.motion-ready .hero-controls{display:flex}
.hero-controls button{display:grid;place-items:center;min-width:40px;height:40px;border:1px solid #ffffff70;border-radius:50%;background:#142c4e70;color:#fff;font:12px/1 var(--detail);transition:background .25s,border-color .25s}
.hero-controls button:hover,.hero-controls button[aria-pressed="true"]{background:var(--orange);border-color:var(--orange);color:var(--navy)}


.hero-bottom{right:260px}
.hero-bottom .hero-scroll{display:flex;align-items:center;gap:12px;padding:10px 0}
.hero-scroll-mark{height:24px;width:1px;background:#ffffff50;position:relative;overflow:hidden}
.hero-scroll-mark:after{content:"";position:absolute;inset:0;background:var(--orange);transform:translateY(-100%)}
.hero-title-line{display:block}
.page-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:50;background:var(--orange);transform:scaleX(var(--page-progress,0));transform-origin:left;pointer-events:none}
.motion-ready .motion-reveal{transition:opacity .8s ease,translate .9s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay,0ms)}
.motion-ready .motion-reveal.is-pending{opacity:0;translate:0 35px}
.motion-ready .motion-image{overflow:hidden}
.motion-ready .motion-image>img{transform:scale(1.06) translateY(var(--image-shift,0px));transition:transform .9s cubic-bezier(.16,1,.3,1)}
.motion-ready .medical-entry-photo,.motion-ready .about-image,.motion-ready .work-image{isolation:isolate}
.motion-ready .button .arrow,.motion-ready .text-link .arrow{display:inline-block;transition:transform .3s}
@media(hover:hover){.motion-ready .button:hover .arrow,.motion-ready .text-link:hover .arrow{transform:translate(4px,-4px)}.motion-ready .service{transition:background .35s}.motion-ready .service:hover{background:#fff8f0}.motion-ready .work-card:hover .work-image>img{transform:scale(1.09)}}
.motion-ready:not(.motion-paused) .hero-image.is-active{animation:hero-drift 9s ease-out both}
.motion-ready:not(.motion-paused) .hero-scroll-mark:after{animation:scroll-line 2.2s ease-in-out infinite}
.motion-ready:not(.motion-paused) .hero-content.hero-enter .hero-kicker{animation:hero-rise .9s .1s both}
.motion-ready:not(.motion-paused) .hero-content.hero-enter .hero-title-line{animation:hero-rise 1.15s .2s both}
.motion-ready:not(.motion-paused) .hero-content.hero-enter .hero-title-line:nth-child(2){animation-delay:.36s}
.motion-ready:not(.motion-paused) .hero-content.hero-enter .hero-description{animation:hero-rise 1s .5s both}
.motion-ready:not(.motion-paused) .hero-content.hero-enter>.button{animation:hero-rise 1s .65s both}
.motion-paused .motion-reveal{opacity:1!important;translate:none!important;transition:none!important}
.motion-paused .motion-image>img,.motion-paused .hero-slides .hero-image{transform:none!important;animation:none!important;transition:none!important}
.motion-paused .hero-content *,.motion-paused .hero-scroll-mark:after,.motion-paused .line-floating-link{animation:none!important}
.motion-paused .button .arrow,.motion-paused .text-link .arrow{transition:none!important;transform:none!important}
@keyframes hero-drift{from{transform:scale(1.14)}to{transform:scale(1.025)}}
@keyframes hero-rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes scroll-line{0%{transform:translateY(-100%)}65%,100%{transform:translateY(100%)}}
@media(max-width:800px){.hero-controls{right:20px;bottom:20px;gap:7px}.hero-bottom{right:auto;bottom:20px}.hero-bottom>span:first-child{display:none}}
@media(max-width:580px){.hero-controls button{min-width:36px;height:36px}.hero-controls{right:16px;bottom:17px}.hero-bottom{left:23px;bottom:17px}.hero-bottom .hero-scroll{font-size:8px;gap:8px}.hero-scroll-mark{height:20px}.hero-content{padding-bottom:80px}.motion-ready .motion-reveal.is-pending{translate:0 22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion-ready .motion-reveal{opacity:1!important;translate:none!important;transition:none!important}.motion-ready .motion-image>img,.motion-ready .hero-slides .hero-image{transform:none!important;animation:none!important;transition:none!important}.hero-content *,.hero-scroll-mark:after{animation:none!important}}
@media print{.motion-ready .motion-reveal{opacity:1!important;translate:none!important}.hero-controls,.page-progress{display:none}}

/* Keep slideshow controls clear of the fixed LINE and consultation buttons. */
.motion-ready .motion-reveal,.motion-ready .service.motion-reveal{transition:opacity 1s ease,translate 1.15s cubic-bezier(.16,1,.3,1),background .35s;transition-delay:var(--reveal-delay,0ms)}
.motion-ready .motion-reveal.is-pending{translate:0 48px}
.motion-ready .motion-image>img{transform:scale(1.1) translateY(var(--image-shift,0px))}
.motion-paused .service::before{transform:none!important;transition:none!important}
@media(max-width:580px){.motion-ready .motion-reveal.is-pending{translate:0 30px}}
@media(prefers-reduced-motion:reduce){.service::before{transform:none!important;transition:none!important}}
.hero-controls{left:7.3%;right:auto}.hero-bottom{left:auto;right:320px}.hero-bottom>span:first-child{display:none}@media(max-width:800px){.hero-controls{left:30px;right:auto}.hero-bottom{left:auto;right:28px}}@media(max-width:580px){.hero-controls{left:18px;right:auto}.hero-bottom{left:auto;right:20px}}
