/* Mobile-only compact hero. Desktop composition is preserved. */
@media(max-width:760px){
 #main .hero-final{height:auto;min-height:0;max-height:none;display:flex;align-items:flex-end;isolation:isolate}
 #main .hero-final .container{width:100%;max-width:none;min-width:0;margin:0;padding:clamp(190px,31svh,270px) 5% 25px}
 #main .hero-final .hero-copy{width:100%;max-width:560px;min-width:0}
 #main .hero-final .hero-bg{width:100%;height:100%;object-fit:cover;object-position:70% top}
 #main .hero-final:after{background:linear-gradient(0deg,#050505 0%,#050505fa 23%,#050505df 41%,#05050572 66%,#05050505 100%)}
 #main .hero-final .eyebrow{font-size:8px;font-weight:600;line-height:1.6;letter-spacing:2.5px;margin-bottom:14px}
 #main .hero-final h1{font-size:clamp(38px,10.4vw,60px);line-height:1.06;letter-spacing:-.055em;margin:0 0 18px}
 #main .hero-final h1>span{white-space:normal;overflow-wrap:anywhere}
 #main .hero-final .hero-description{font-size:14px;line-height:1.65;letter-spacing:-.15px;max-width:440px;margin-bottom:21px}
 #main .hero-final .hero-buttons{display:flex;align-items:center;flex-wrap:wrap;gap:14px 23px}
 #main .hero-final .hero-buttons .btn{min-height:52px;min-width:156px;font-size:14px;padding:12px 18px;gap:17px}
 #main .hero-final .hero-buttons .text-link{min-height:44px;display:inline-flex;align-items:center;max-width:100%;font-size:12px;line-height:1.5;gap:10px;padding-bottom:5px;white-space:normal}
 #main .hero-final .hero-bottom{margin-top:23px;font-size:7px;line-height:1.8;letter-spacing:1.8px;gap:12px;max-width:100%}
 #main .hero-final .hero-bottom:before{width:32px;flex-shrink:0}
 #main .hero-final .hero-service-label{top:17px;right:5%;bottom:auto;max-width:90%;padding:8px 12px;font-size:7px;line-height:1.7;letter-spacing:2.4px;border-radius:5px;background:#080807d9}
 #main .hero-final+.ticker{min-height:60px;height:auto;padding:18px 5%;font-size:8px;line-height:1.5;letter-spacing:1.6px}
}
@media(max-width:560px){
 #main .hero-final .container{padding-top:clamp(175px,30svh,240px);padding-bottom:23px}
 #main .hero-final h1{font-size:clamp(36px,10.4vw,55px)}
 #main .hero-final .hero-description{font-size:14px;max-width:370px}
 #main .hero-final .hero-bottom{font-size:7px;letter-spacing:1.5px}
}
@media(max-width:380px){
 #main .hero-final .container{padding-top:clamp(155px,27svh,205px)}
 #main .hero-final h1{font-size:clamp(34px,10.5vw,40px)}
 #main .hero-final .eyebrow{font-size:7px;letter-spacing:2px}
 #main .hero-final .hero-description{font-size:13px;line-height:1.65;margin-bottom:18px}
 #main .hero-final .hero-buttons{gap:12px 16px}
 #main .hero-final .hero-buttons .btn{min-width:140px;min-height:50px;font-size:13px;padding:12px 16px}
 #main .hero-final .hero-buttons .text-link{font-size:11px;gap:8px}
 #main .hero-final .hero-bottom{letter-spacing:1.1px;font-size:6.5px;margin-top:21px}
}
@media(max-width:760px) and (max-height:700px) and (orientation:portrait){
 #main .hero-final .container{padding-top:150px;padding-bottom:21px}
 #main .hero-final h1{font-size:clamp(34px,10vw,46px);margin-bottom:15px}
 #main .hero-final .eyebrow{margin-bottom:11px}
 #main .hero-final .hero-description{font-size:13px;margin-bottom:17px}
 #main .hero-final .hero-bottom{margin-top:19px}
}
@media(max-width:1050px) and (max-height:500px) and (orientation:landscape){
 #main .hero-final{min-height:0;height:auto;max-height:none;align-items:center}
 #main .hero-final .container{padding:28px 5%}
 #main .hero-final .hero-copy{width:61%;max-width:640px}
 #main .hero-final h1{font-size:clamp(34px,6.2vw,54px);margin-bottom:13px}
 #main .hero-final .eyebrow{font-size:8px;letter-spacing:2.2px;margin-bottom:11px}
 #main .hero-final .hero-description{font-size:13px;line-height:1.6;max-width:410px;margin-bottom:17px}
 #main .hero-final .hero-buttons{gap:18px;flex-wrap:wrap}
 #main .hero-final .hero-buttons .btn{min-height:46px;min-width:145px;padding:10px 16px;font-size:13px}
 #main .hero-final .hero-buttons .text-link{min-height:44px;font-size:11px}
 #main .hero-final .hero-bottom{font-size:7px;letter-spacing:1.5px;margin-top:19px}
 #main .hero-final .hero-bg{object-position:80% top}
 #main .hero-final:after{background:linear-gradient(90deg,#030303e8,#0303039c 45%,#03030305 75%)}
 #main .hero-final .hero-service-label{top:auto;bottom:21px;font-size:7px;padding:8px 11px;max-width:30%;letter-spacing:2px}
}
/* Basic vh fallback for browsers without small viewport units. */
@supports not (height:100svh){
 @media(max-width:760px){#main .hero-final .container{padding-top:clamp(190px,31vh,270px)}}
 @media(max-width:560px){#main .hero-final .container{padding-top:clamp(175px,30vh,240px)}}
 @media(max-width:380px){#main .hero-final .container{padding-top:clamp(155px,27vh,205px)}}
 @media(max-width:760px) and (max-height:700px) and (orientation:portrait){#main .hero-final .container{padding-top:150px}}
 @media(max-width:1050px) and (max-height:500px) and (orientation:landscape){#main .hero-final .container{padding-top:28px}}
}
