
/* Eastern Slopes archival layout & dependency repair */
:root{--es-dark:#253340;--es-deep:#172735;--es-accent:#00b7ed}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{font-family:Arial,Helvetica,sans-serif;overflow-x:clip;background:#fff}
img{max-width:100%;height:auto}
a:focus-visible,button:focus-visible{outline:3px solid #66cfff;outline-offset:3px}
.header{background:rgba(23,39,53,.90);height:80px;position:fixed;top:0;left:0;right:0;z-index:100;transition:background .2s ease}
.header.scrolled{background:rgba(23,39,53,.98);box-shadow:0 4px 18px rgba(0,0,0,.12)}
.header .container{position:relative}
.header .logo{display:block;float:left;margin:0;width:125px;height:79px;background:none!important}
.header .logo .brand-link{display:block;width:118px;height:78px;background: url('logo_header_109x46_wht_red.png') no-repeat left center;background-size:109px 46px}
.header .main-nav{margin-top:15px}
.header .main-nav .nav .nav-item{display:block;color:white}
.header .main-nav .nav .nav-item>a{display:block;font-weight:600;padding:16px 13px;color:white}
.header .main-nav .nav .nav-item.active>a,.header .main-nav .nav .nav-item>a:hover{color:#2bd5eb}
.header .main-nav .nav .nav-item.nav-item-cta>a{background:var(--es-accent);border-radius:4px;padding:10px 20px;margin-top:6px;color:white!important}
.header .main-nav .nav .nav-item.nav-item-cta>a:hover{background:#0999be}
.bg-slider-wrapper{height:570px;overflow:hidden;position:absolute;top:0;left:0;right:0;background:#142a37}
.hero-photo{height:100%;background:linear-gradient(180deg,rgba(12,25,35,.58) 0%,rgba(12,25,35,.32) 42%,rgba(12,25,35,.58) 100%),url('../images/bg-header-0e.jpg') center 45%/cover no-repeat}
.homepagepromo{height:570px;padding:190px 16px 0;margin:0;display:flex;align-items:flex-start;justify-content:center}
.homepagepromo .title{font-size:clamp(34px,4.1vw,58px);line-height:1.17;max-width:960px;margin:0 auto 16px;text-wrap:balance}
.homepagepromo .intro{font-size:clamp(18px,2vw,24px);line-height:1.55;text-shadow:0 1px 8px rgba(0,0,0,.7)}
.sections-wrapper{position:relative;background:#fff}
.why .item{scroll-margin-top:100px}
.why .item .figure{margin-bottom:22px}
.why .item .figure img{display:block;width:100%;height:auto;border-radius:5px}
.why .item .desc{line-height:1.65}
.why .item .feature-lead{text-align:left!important}
.why .item .feature-lead a{min-width:150px;text-align:center}
.figure-caption{line-height:1.5}
.alert-info{font-size:16px!important;line-height:1.4;padding:8px 12px;margin:10px 0 18px;display:table;max-width:100%}
.press .press-list{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:18px;margin:20px auto 0;padding:0}
.press .press-list li{float:none;list-style:none;display:flex;justify-content:center;align-items:center;width:calc(20% - 22px);min-height:85px;padding:8px!important}
.press .press-list img{max-height:95px;width:auto;object-fit:contain;margin:auto}
.footer .contact-anchor{scroll-margin-top:110px}
.footer .contact .email a{overflow-wrap:anywhere}
.footer .inline-icon{display:inline-block;width:22px;font-size:20px;vertical-align:middle;color:#96b8c6}
.quotation-mark{font-size:43px;line-height:.8;color:#00b7ed;display:inline-block;vertical-align:top;margin-right:12px}
.bottom-bar .container{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.footer-legal{display:flex;gap:18px;flex-wrap:wrap}
.footer-legal a{color:#d8e1e7;font-size:13px}
.footer-legal a:hover{color:#fff}
#topcontrol{border-radius:5px;line-height:35px}
#topcontrol .inline-icon{display:block;color:white;font-size:24px;font-weight:bold}
.legal-page .header{position:sticky;top:0}
.legal-main{min-height:75vh;background:#fff}
.legal-banner{background:linear-gradient(115deg,rgba(23,39,53,.93),rgba(23,39,53,.75)),url('../images/bg-header-3.jpg') center 44%/cover no-repeat;padding:85px 0 60px;color:white}
.legal-banner h1{font-size:clamp(32px,4vw,46px);line-height:1.2;margin:0;font-weight:700}
.legal-section{padding:48px 0 80px}
.legal-copy{max-width:980px;margin:0 auto;color:#3a4249;font-size:16px;line-height:1.75}
.legal-copy p{margin:0 0 22px;line-height:1.75;overflow-wrap:break-word}
.legal-copy b{color:#253340}
@media (max-width:991px){
.header .main-nav .nav .nav-item{margin-right:0}
.header .main-nav .nav .nav-item>a{padding-left:10px;padding-right:10px}
.why .item .content,.why .item .figure{min-width:0}
}
@media (max-width:767px){
 html{scroll-padding-top:76px}
 .header{height:72px;background:#172735}
 .header .logo{height:72px;width:120px;float:left;margin:0}
 .header .logo .brand-link{height:72px;width:118px;background-size:104px auto}
 .header .main-nav{margin:0}
 .header .main-nav .navbar-toggle{top:17px;right:8px;border:1px solid rgba(255,255,255,.3);border-radius:4px;padding:9px 10px}
 .header .main-nav .navbar-toggle .icon-bar{background:#fff}
 .header .main-nav .navbar-collapse{position:absolute;left:0;right:0;top:72px;background:#172735;margin:0;padding:0 16px;max-height:calc(100vh - 72px);overflow-y:auto;border:none;box-shadow:0 18px 20px rgba(0,0,0,.15)}
 .header .main-nav .navbar-collapse:not(.in):not(.collapsing){display:none!important}
 .header .main-nav .navbar-nav{margin:10px 0 16px}
 .header .main-nav .nav .nav-item{margin:0}
 .header .main-nav .nav .nav-item>a{padding:13px 15px;font-size:14px}
 .header .main-nav .nav .nav-item.nav-item-cta>a{display:inline-block;margin:6px 0 10px}
 .bg-slider-wrapper{height:490px}
 .hero-photo{background-position:52% center}
 .homepagepromo{padding:160px 12px 0;height:490px;margin:0}
 .homepagepromo .title{font-size:clamp(28px,8.2vw,38px);line-height:1.2}
 .homepagepromo .intro{font-size:17px}
 .why .item{margin-top:35px;margin-bottom:35px}
 .why .item .figure{margin-top:18px;margin-bottom:12px}
 .why .item .content{padding-top:0}
 .why .item .feature-lead{text-align:center!important}
 .press .press-list{gap:8px}
 .press .press-list li{width:calc(50% - 8px);height:85px}
 .press .press-list img{max-height:85px}
 .footer .footer-col{padding-bottom:18px}
 .bottom-bar .container{justify-content:center;text-align:center;padding:13px}
 .footer-legal{justify-content:center}
 .legal-banner{padding:55px 0 40px}
 .legal-section{padding:32px 0 48px}
 .legal-copy{font-size:15px;line-height:1.7}
 .legal-copy p{line-height:1.7}
}
@media (max-width:350px){.homepagepromo .title{font-size:27px}.homepagepromo .intro{font-size:16px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
