/* Homepage composition. Kept separate from shared subpage styles. */
.af-site:has(.af-hero){background:#fafaf7}
.af-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(40px,5vw,80px);width:min(1320px,calc(100% - 96px));min-height:0;margin:0 auto;padding:64px 0 58px;overflow:visible;background:none;align-items:center}
.af-hero-copy{display:block;position:relative;width:auto;min-height:0;margin:0;padding:0;color:#243c34;text-shadow:none;animation:none!important}
.af-hero .af-rating{color:#58635b;font-size:12px;gap:9px;padding:0;border:0}
.af-hero .af-rating span:first-child{color:#748453;letter-spacing:2px}
.af-hero .af-rating strong{color:#243c34;font-size:14px}
.af-hero-copy h1{font-family:AFInter,Arial,sans-serif;font-weight:500;font-size:clamp(48px,5.25vw,76px);letter-spacing:-.065em;line-height:1.07;margin:28px 0 30px;color:#243c34}
.af-hero-copy h1 span{color:#78856b;line-height:inherit}
.af-hero-copy h2{font-family:AFInter,Arial,sans-serif;color:#243c34;font-size:clamp(20px,1.7vw,24px);font-weight:500;letter-spacing:-.035em;line-height:1.45;max-width:490px;margin:0 0 16px}
.af-hero-copy .af-lead{color:#657068;font-size:16px;line-height:1.85;max-width:470px;margin:0}
.af-hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:18px;margin:28px 0 30px}
.af-hero .af-button{background:#2d4c37;border-color:#2d4c37;border-radius:3px;min-height:58px;padding:16px 20px;gap:30px;font-size:13px;box-shadow:none;transition:background .25s,transform .25s!important}
.af-hero .af-button:hover{background:#203b2a;transform:translateY(-3px)}
.af-hero .af-button svg{transition:transform .3s!important}.af-hero .af-button:hover svg{transform:translate(3px,-3px)}
.af-hero .af-text-link{display:inline-flex;align-items:center;gap:10px;font-size:14px;color:#314c3c;text-decoration:none;min-height:30px}
.af-hero .af-text-link:hover{text-decoration:underline}
.af-hero-copy .af-specialty{color:#738071;border-top:1px solid #dce1d6;max-width:470px;font-size:12px;padding-top:21px!important;gap:13px}
.af-hero .af-icon{width:19px;height:19px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.af-hero-photo.af-hero-video{position:relative;inset:auto;display:block;align-self:stretch;min-height:590px;margin:0;border-radius:3px 3px 70px 3px;overflow:hidden;background:#e3e5dd;animation:none;box-shadow:none}
.af-hero-video video{position:absolute;inset:0;display:block;width:100%;height:100%;min-height:100%;object-fit:cover;object-position:58% center;opacity:1;filter:saturate(.8);transform:none}
.af-hero-video:before{display:none}
.af-hero-video:after{content:"";position:absolute;inset:45% 0 0;pointer-events:none;background:linear-gradient(0deg,rgba(15,32,25,.8),transparent);z-index:1}
.af-hero-video figcaption{position:absolute;inset:auto 0 0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:32px 35px;background:none;gap:12px}
.af-hero-video .af-eyebrow{font-size:9px;letter-spacing:.15em;color:#e1e6dd;margin:0 0 7px}
.af-hero-video figcaption strong{color:#fff;font-family:AFInter,Arial,sans-serif;font-size:22px;font-weight:400;letter-spacing:-.04em}
.af-video-status{display:none}
.af-motion .af-hero-copy>*{animation:af-editorial-in .8s both cubic-bezier(.2,.7,.2,1)}
.af-motion .af-hero-copy>:nth-child(2){animation-delay:.08s}.af-motion .af-hero-copy>:nth-child(3){animation-delay:.16s}.af-motion .af-hero-copy>:nth-child(4){animation-delay:.24s}.af-motion .af-hero-copy>:nth-child(5){animation-delay:.32s}.af-motion .af-hero-copy>:nth-child(6){animation-delay:.4s}
.af-motion .af-hero-photo{animation:af-editorial-in 1s .15s both cubic-bezier(.2,.7,.2,1)}
@keyframes af-editorial-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.af-hero{padding-block:76px}.af-hero-actions{flex-direction:row;align-items:center;gap:22px}}
@media(max-width:1050px){.af-hero{width:calc(100% - 64px);gap:32px;padding-block:42px}.af-hero-copy h1{font-size:52px}.af-hero-photo.af-hero-video{min-height:570px}.af-hero-video figcaption{padding:25px}.af-hero-copy h2{font-size:20px}}
@media(max-width:760px){.af-hero{width:calc(100% - 40px);grid-template-columns:1fr;gap:30px;padding:34px 0 38px}.af-hero-copy{width:100%;padding:0;min-height:0}.af-hero-copy h1{font-size:clamp(44px,10.7vw,68px);margin:23px 0;line-height:1.06}.af-hero-copy h2{font-size:21px;max-width:500px}.af-hero-copy .af-lead{font-size:15px;line-height:1.75;max-width:510px}.af-hero-actions{margin:25px 0;gap:13px}.af-hero .af-button{width:100%;justify-content:space-between;font-size:13px;gap:10px}.af-hero-copy .af-specialty{max-width:100%;font-size:11px}.af-hero-photo.af-hero-video{min-height:0;height:390px;border-radius:3px 3px 48px 3px}.af-hero-video video{aspect-ratio:auto;object-position:center}.af-hero-video figcaption{padding:25px}.af-hero .af-rating{font-size:11px;gap:7px}}
/* Keep the moving image compact, with a soft edge toward the copy. */
.af-hero-photo.af-hero-video{align-self:center;min-height:0;height:500px;border-radius:3px 3px 56px 3px}
.af-hero-video:before{content:"";display:block;position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,#fafaf7 0%,rgba(250,250,247,.65) 3%,transparent 17%)}
.af-hero-video video{object-position:55% center}
@media(max-width:1050px) and (min-width:761px){.af-hero-photo.af-hero-video{height:460px}}
@media(max-width:760px){.af-hero-photo.af-hero-video{height:300px}.af-hero-video:before{background:linear-gradient(180deg,#fafaf7,rgba(250,250,247,.25) 7%,transparent 22%)}}

.af-hero .af-rating>span:last-child{color:#58635b}
