/* Native typography keeps the hero crisp at any display density. */
.hero-native{position:relative;isolation:isolate;overflow:hidden;background:#fff;min-height:clamp(360px,31.25vw,600px);display:flex;align-items:center;justify-content:center;padding:72px 9%}
.hero-native-copy{position:relative;z-index:1;text-align:center;width:100%;max-width:1400px}
.hero-native h1{margin:0;color:#009DAD;font-size:clamp(36px,4.1vw,80px);font-weight:800;line-height:.98;letter-spacing:-.025em;text-wrap:balance}
.hero-native h1 em{color:#FF8000;font-style:normal;font-weight:inherit}
.hero-native-line{display:block}
#site-shell .hero-native-copy>p{max-width:min(100%,58vw);margin:22px auto 0;color:#363436;font-size:clamp(14px,1.1vw,18px);line-height:1.45;text-wrap:balance}
.hero-symbol{position:absolute;z-index:0;height:auto;pointer-events:none;width:clamp(190px,20vw,380px);will-change:transform}
.hero-symbol-orange{right:-3%;top:-8%;animation:hero-orange-float 16s ease-in-out infinite}
.hero-symbol-teal{left:-3%;bottom:-8%;animation:hero-teal-float 14s ease-in-out infinite;animation-delay:-5s}
@keyframes hero-orange-float{0%,100%{transform:translate(0,0) rotate(0)}50%{transform:translate(-13px,19px) rotate(2.5deg)}}
@keyframes hero-teal-float{0%,100%{transform:translate(0,0) rotate(0)}50%{transform:translate(14px,-21px) rotate(-2.5deg)}}
.intro-loading .hero-symbol{animation-play-state:paused}
.clinic-gallery.section-space{padding-block:52px}
#site-shell .gallery-copy h2{color:#07A2B5;font-size:clamp(43px,4.2vw,60px);max-width:500px;line-height:1.05}
.gallery-copy>p:not(.eyebrow):not(.gallery-note){font-size:15px;line-height:1.55;margin-top:22px}
.founder-copy>p:not(.eyebrow):not(.professional-line),.procedure-panel p{font-size:15px}
.diagnostic-intro>p:not(.eyebrow){font-size:17px}
#site-shell .amaris-promise{font-size:16px;line-height:1.5;max-width:620px;margin:24px auto;color:#fff}
.service-icon{width:24px;height:24px;flex:0 0 24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.procedure-menu button{gap:14px}.procedure-menu button[aria-selected=true] .service-icon{color:#007787}

@media(max-width:850px){.hero-native{padding:70px 7%;min-height:350px}.hero-native h1{font-size:clamp(32px,4.7vw,42px)}.hero-symbol-orange{top:-6%;right:-5%}.hero-symbol-teal{bottom:-6%;left:-5%}}
@media(max-width:620px){.hero-native{padding:58px 24px;min-height:360px}.hero-native h1{font-size:clamp(30px,7.8vw,42px);line-height:1.02}.hero-native-line{display:inline}.hero-native-line+.hero-native-line::before{content:' '}
 #site-shell .hero-native-copy>p{font-size:14px;line-height:1.5;margin-top:20px;max-width:370px}
 .hero-symbol{width:150px}.hero-symbol-orange{width:140px;top:-35px;right:-24px}.hero-symbol-teal{bottom:-24px;left:-28px}
 .clinic-gallery.section-space{padding-block:36px}.gallery-layout{gap:25px}#site-shell .gallery-copy h2{font-size:42px;max-width:340px}
 .gallery-copy>p:not(.eyebrow):not(.gallery-note){font-size:14px;margin-top:18px}
 .founder-copy>p:not(.eyebrow):not(.professional-line),.procedure-panel p{font-size:14px}
 #site-shell .amaris-promise{font-size:15px;max-width:400px}.diagnostic-intro>p:not(.eyebrow){font-size:16px}
 .service-icon{width:21px;height:21px;flex-basis:21px}.procedure-menu button{gap:12px}
}
@media(prefers-reduced-motion:reduce){.hero-symbol{animation:none;will-change:auto}}

/* Revision 21: tighter title rhythm and a teal header slogan. */
.nav-wrap .brand-slogan{color:#07A2B5}
#site-shell h2,#site-shell .gallery-copy h2,#site-shell .human-copy h2,#site-shell .human-copy h2 strong{line-height:1}
#site-shell h2 .word-wrap,#site-shell .human-copy h2 .word-wrap{line-height:inherit;vertical-align:baseline}

/* Revision 22: exact two-line mobile hero and compact animated titles. */
#site-shell #gallery-title,#site-shell #human-title,#site-shell #human-title strong,#site-shell #amaris-title,#site-shell #amaris-title strong{line-height:.94}
#site-shell #gallery-title .word-wrap,#site-shell #human-title .word-wrap,#site-shell #amaris-title .word-wrap{line-height:inherit;vertical-align:top}
@media(max-width:620px){
 .hero-native{padding-inline:18px}
 .hero-native h1{font-size:clamp(18px,5.65vw,34px);line-height:1.04}
 .hero-native-line{display:block;white-space:nowrap}
 .hero-native-line+.hero-native-line::before{content:none}
 #site-shell .hero-native-copy>p{max-width:330px;font-size:13px;line-height:1.45;margin-top:18px}
}

/* Footer address beneath the brand slogan. */
#site-shell .footer-identity .footer-address{margin:6px 0 0;font-family:Gilroy,sans-serif;font-size:12px;font-style:normal;font-weight:300;line-height:1.5;letter-spacing:0;color:#e9e7e8;-webkit-text-stroke:0}
#site-shell .footer-address span{display:inline-block;margin-bottom:4px;font-size:11px;font-weight:300}
