.hero.visual-banner{aspect-ratio:16/9;min-height:550px;display:flex;position:relative;background:#f8f1e5}
.hero-media{position:absolute;inset:0;z-index:-2}
.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .8s ease;display:block}
.hero-slide.active{opacity:1}
.hero.visual-banner:before{content:"";display:block;position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#fff8eef5 0%,#fff8eeed 20%,#fff8eeaa 32%,transparent 48%);pointer-events:none}
.hero .banner-copy{padding-bottom:100px}
.hero .banner-copy h1,.hero .banner-copy p{max-width:36%}
.hero-controls{position:absolute;left:max(30px,calc((100% - 1220px)/2));bottom:28px;display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:24px;background:#fffffff0;color:#164c3a;font-size:.875rem;z-index:2}
.hero-controls button{background:transparent;color:#164c3a;min-width:32px;min-height:32px;padding:4px 8px;font-weight:700;border-radius:16px}
.hero-controls>button:first-child,.hero-controls>button:nth-last-child(2){font-size:1.6rem;line-height:1}
.hero-dots{display:flex;gap:4px}.hero-dots button{position:relative;min-width:28px;min-height:32px;padding:0}
.hero-dots button:after{content:"";display:block;margin:auto;width:7px;height:7px;border-radius:50%;background:#8baca0}
.hero-dots button[aria-current="true"]:after{background:#164c3a;width:18px;border-radius:5px}
@media(max-width:1000px){
 .hero.visual-banner{display:flex;flex-direction:column;aspect-ratio:auto;min-height:0}
 .hero.visual-banner:before{display:none}
 .hero .banner-copy{order:0;width:100%;padding:36px 24px 24px;background:#fff8ee}
 .hero .banner-copy h1,.hero .banner-copy p{max-width:none}
 .hero .banner-copy h1{font-size:2.2rem}
 .hero h1 br{display:none}.hero h1 em{display:block}
 .hero-media{position:relative;inset:auto;width:100%;aspect-ratio:16/9;order:1;z-index:0}
 .hero-controls{position:relative;left:auto;bottom:auto;order:2;margin:12px auto;background:white;gap:6px}
 .hero.visual-banner .image-caption{position:relative;inset:auto;order:3;background:#fff8ee;width:100%;text-align:right}
}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}
.hero-image-label{display:block;color:#164c3a;font-size:.8125rem;font-weight:650;letter-spacing:.04em;margin-bottom:16px}.hero .hero-image-label+.eyebrow{display:block}
.hero-art-caption{position:absolute;top:16px;right:18px;z-index:3;padding:5px 10px;border-radius:4px;background:#ffffffe6;color:#164c3a;font-size:.8125rem;font-weight:600;line-height:1.5;max-width:calc(100% - 32px)}@media(max-width:560px){.hero-art-caption{top:8px;right:8px;font-size:.6875rem;padding:3px 7px}}
.footer #companyContact a{margin-left:0;white-space:nowrap}.footer #companyContact{overflow-wrap:anywhere}
.brand .brand-slogan{display:block;max-width:255px;font-size:.75rem;line-height:1.6;color:#164c3a;white-space:normal}@media(min-width:851px) and (max-width:1150px){.header{flex-wrap:wrap}.header nav{width:100%;justify-content:center}}@media(max-width:850px){.header{gap:10px}.brand{flex:1;min-width:0;gap:8px}.brand img{width:45%;max-width:168px}.brand .brand-slogan{flex:1;min-width:0;max-width:230px;font-size:.6875rem;line-height:1.5}.mobile-menu{flex-shrink:0}}@media(max-width:420px){.brand .brand-slogan{font-size:.625rem}}

