/* Editorial homepage and scroll-linked image expansion. */
.hero{background:var(--color-bg);color:var(--color-text-primary)}
.hero-content{width:min(calc(100% - 3rem),80rem);margin:0 auto;padding:7rem 0 4.5rem}
.hero-intro-row{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(16rem,.9fr);align-items:center;gap:clamp(2rem,5vw,5rem);padding:.75rem 0 .5rem}
.hero-headline{padding:0}.hero-headline-underlined{text-decoration:underline;text-decoration-thickness:.06em;text-underline-offset:.08em;text-decoration-color:currentColor}.hero h1{max-width:none;margin:0;font:400 clamp(3rem,5vw,4.4rem)/1.06 Georgia,serif;letter-spacing:-.02em}
.hero-side-copy{max-width:26rem;font:clamp(1.15rem,1.75vw,1.55rem)/1.45 'Open Sans',Arial,sans-serif;transform:translateY(2rem)}.hero-side-copy p{margin:0}
.feature-card{position:relative;isolation:isolate;display:grid;width:100%;height:clamp(30rem,50vh,42rem);min-height:0;max-height:none;margin:7rem 0 0;place-items:center;overflow:hidden;border-radius:1.35rem;background:var(--color-dark) url('../images/hero-atlantic.jpg') center 54%/cover no-repeat;color:var(--color-white);text-align:center;will-change:width,margin-left,border-radius}
.feature-card:before{position:absolute;z-index:-1;inset:0;content:"";background:linear-gradient(180deg,rgba(5,12,20,.15),rgba(5,9,14,.68) 64%,rgba(5,9,14,.88))}
.feature-card-content{width:min(100% - 2rem,36rem);padding:3rem 1rem 2.5rem;text-shadow:0 1px 18px rgba(0,0,0,.18)}
.feature-card .eyebrow{color:rgba(255,255,255,.82)}.feature-title{margin:.45rem 0 .6rem;font:clamp(1.9rem,5vw,4rem)/1.08 Georgia,serif;letter-spacing:-.035em;white-space:nowrap}
.feature-card-content>p:not(.eyebrow,.feature-title){max-width:34rem;margin:0 auto 1.25rem;font:1.15rem/1.5 'Open Sans',Arial,sans-serif}
.feature-card .pill{min-height:2.35rem;padding:.38rem .95rem;gap:.45rem;margin-top:.25rem;border-radius:.55rem;border-color:var(--color-white);background:var(--color-bg);color:var(--color-text-primary);font-size:1.25rem;text-shadow:none}.feature-card .pill span{display:inline-flex;font:600 1.15em/1 'Open Sans',Arial,sans-serif;transition:transform .18s ease}.feature-card .pill:hover span,.feature-card .pill:focus-visible span{transform:translateX(3px)}.feature-card .pill:hover{background:transparent;color:var(--color-white)}
.feature-scroll-copy{width:min(100%,57rem);margin:2rem auto 0;padding:0 1.25rem 1rem;background:var(--color-bg)}.feature-scroll-copy .editorial-copy{max-width:none;padding:0}
.editorial-copy p{font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.55}.editorial-copy p+p{margin-top:var(--s3)}
@media(max-width:74.9375rem){.feature-card{height:clamp(22rem,50vh,40rem);max-height:none}}
@media(max-width:47.9375rem){.hero-content{width:calc(100% - 2rem);padding:2rem 0 3rem}.hero-intro-row{grid-template-columns:1fr;gap:1rem;padding:0 0 .75rem}.hero h1{max-width:none;font-size:clamp(2.75rem,11vw,4rem)}.hero-side-copy{max-width:100%;font-size:1.15rem;transform:none}.feature-card{height:28rem;max-height:none;margin-top:2rem;border-radius:1.35rem}.feature-card-content{padding-inline:.3rem}.feature-scroll-copy{margin-top:1.5rem;padding-inline:.5rem}}
@media(min-width:48rem) and (max-width:74.9375rem){.feature-card{margin-top:5rem}}

.feature-scroll-copy{margin-top:5rem}
@media(max-width:47.9375rem){.feature-scroll-copy{margin-top:2rem}}

/* Keep the feature-card CTA fully opaque on hover. */
.feature-card .pill:hover,.feature-card .pill:focus-visible{background:#faf9f5;border-color:#faf9f5;color:#111;opacity:1}


.feature-card .pill:hover,.feature-card .pill:focus-visible{background:#faf9f5!important;border-color:#faf9f5!important;color:#111!important;opacity:1!important}

