/* Full-width aerial hero, with navigation layered over the photograph. */
.site-shell{position:relative}
.site-shell>.utility{position:absolute;inset:0 0 auto;z-index:40;background:transparent;color:#e1e8e2}
.utility button{color:#fff}
.utility .utility-line{border-color:#ffffff59}
#header{position:fixed;top:36px;left:0;right:0;z-index:50;background:transparent;color:#fff;border-bottom-color:#ffffff2b;transition:background .2s,top .2s,box-shadow .2s}
#header.is-scrolled{top:0;background:rgba(15,26,22,.96);box-shadow:0 4px 18px #0002;backdrop-filter:blur(12px)}
#header .brand-symbol{filter:invert(1)}
#header .brand-name{color:#fff}
#header .brand .brand-wordmark small{color:#e1e9dc}
#header nav a{color:#fff}
#header nav a:after{background:var(--lime)}
#header nav a:hover,#header nav a.active{color:var(--lime)}
#header .nav-cta{color:#fff;border-color:#ffffff80;background:#10201924}
#header .nav-cta:hover{color:#172014;background:var(--lime);border-color:var(--lime)}
#header .menu-toggle span{background:#fff}
.hero{position:relative;isolation:isolate;background:#111812;min-height:100svh;padding-top:122px;display:flex;flex-direction:column}
.hero::before,.hero::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:0}
.hero::before{background:url('/assets/jgaidc-aerial.png') center center/cover no-repeat}
.hero::after{background:linear-gradient(90deg,rgba(7,19,14,.78) 0%,rgba(7,19,14,.55) 37%,rgba(7,19,14,.1) 72%,rgba(7,19,14,.04) 100%),linear-gradient(180deg,rgba(5,15,15,.68) 0%,rgba(5,15,15,.12) 24%,transparent 60%,rgba(5,15,15,.82) 100%)}
.hero>.container{position:relative;z-index:1}
#main .hero-main{display:flex;flex:1;align-items:center;min-height:640px;padding-block:64px;gap:0}
.hero .hero-copy{width:100%;max-width:1100px;padding:0;container-type:inline-size}
.hero-headline-line{white-space:nowrap}
.hero .hero-copy h1{font-size:clamp(54px,5.1vw,82px);line-height:1.2;letter-spacing:-3.5px;margin:34px 0 28px;text-shadow:0 3px 24px #0004}
.hero .eyebrow.light,.hero .hero-copy p{color:#eef3e9}
.hero .hero-copy p{font-size:16px;line-height:1.9;text-shadow:0 1px 12px #0005}
.hero .hero-sub{color:#d0ddc5}
.hero .hero-foot{margin-top:0;border-top-color:#ffffff47;color:#e2eadb;min-height:92px}
.hero .hero-foot b{color:#fff}
.hero .text-link{border-color:#e0e9d6}
.hero .scroll-down{border-color:#c8d7b599;background:#111b124d}
@media(max-width:900px){
  #header nav{background:#101e19;border-color:#ffffff29;box-shadow:0 15px 25px #0002}
  #header nav a{border-color:#ffffff26}
  .hero{padding-top:112px}
  #main .hero-main{min-height:600px;padding-block:60px}
  .hero .hero-copy h1{font-size:clamp(42px,7.4vw,62px)}
  .hero::before{background-position:58% center}
}
@media(max-width:600px){
  #header{top:29px}
  #header.is-scrolled{top:0}
  .hero{padding-top:99px;min-height:100svh}
  #main .hero-main{min-height:570px;padding-block:52px}
  .hero .hero-copy h1{font-size:clamp(24px,10.5cqw,47px);letter-spacing:-1.4px;margin:26px 0 24px}
  .hero .hero-copy p{font-size:13px}
  .hero .hero-foot{min-height:78px}
  .hero::before{background-position:57% center}
  .hero::after{background:linear-gradient(90deg,rgba(7,19,14,.76),rgba(7,19,14,.28)),linear-gradient(180deg,rgba(5,15,15,.64),transparent 27%,transparent 65%,rgba(5,15,15,.84))}
}
/* The desktop mobile-preview switch uses the same compact layout. */
body.mobile-preview #header{left:50%;right:auto;transform:translateX(-50%);width:min(100%,430px);top:29px}
body.mobile-preview #header.is-scrolled{top:0}
body.mobile-preview #header nav{background:#101e19;border-color:#ffffff29;box-shadow:0 15px 25px #0002}
body.mobile-preview #header nav a{border-color:#ffffff26}
body.mobile-preview .hero{padding-top:99px;min-height:100svh}
body.mobile-preview #main .hero-main{min-height:570px;padding-block:52px;gap:0}
body.mobile-preview .hero .hero-copy h1{font-size:clamp(24px,10.5cqw,47px);letter-spacing:-1.4px;margin:26px 0 24px}
body.mobile-preview .hero .hero-copy p{font-size:13px}
body.mobile-preview .hero .hero-foot{min-height:78px;margin-top:0}
body.mobile-preview .hero::before{background-position:57% center}
body.mobile-preview .hero::after{background:linear-gradient(90deg,rgba(7,19,14,.76),rgba(7,19,14,.28)),linear-gradient(180deg,rgba(5,15,15,.64),transparent 27%,transparent 65%,rgba(5,15,15,.84))}
@media(prefers-reduced-motion:reduce){#header{transition:none}}
