.site-header{height:88px;border-bottom:0;padding-inline:6%}
.brand img{width:64px;height:64px;border:0;object-fit:contain;flex-shrink:0}
.brand strong{font-size:27px;font-weight:600}
.site-header nav a{position:relative}
.site-header nav a:after{content:"";position:absolute;bottom:-7px;left:0;right:100%;height:1px;background:var(--copper);transition:right .3s}
.site-header nav a:hover:after{right:0}
.hero{height:calc(91svh - 88px);min-height:610px;max-height:880px;color:white;background:#267f83;padding:45px 7% 130px}
.hero:after{background:linear-gradient(90deg,rgba(10,45,46,.66),rgba(10,45,46,.25) 53%,rgba(10,45,46,.02)),linear-gradient(0deg,rgba(7,40,41,.48),transparent 32%)}
.hero-scenes{position:absolute;inset:0}
.scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.09);transition:opacity 1.2s ease,transform 8s linear}
.scene.is-active{opacity:1;transform:scale(1)}
.hero-copy{max-width:800px}
.hero-copy .eyebrow{color:#fff5df;font-size:11px;display:flex;align-items:center;gap:10px;margin-bottom:26px}
.live-dot{width:7px;height:7px;border-radius:50%;background:#efd4a1;box-shadow:0 0 0 5px #fff2}
.hero h1{font-size:86px;font-weight:500;line-height:1;margin:0 0 22px}
.hero-copy .hero-statement{font-size:39px;line-height:1.18;color:white;max-width:none;margin-bottom:22px}
.hero-statement em{font-family:Georgia,serif;font-weight:400;color:#f7e2bc}
.hero-copy .hero-description{color:#fff;font-size:16px;line-height:1.65;max-width:470px;margin-bottom:28px}
.hero .primary{background:#fff;color:#17474a;border-radius:3px;min-height:58px;padding:12px 16px 12px 24px}
.hero .primary span{background:#eaf2ed;font-size:27px;display:grid;place-items:center;width:36px;height:36px;margin-left:18px}
.hero .primary:hover{background:#f6e8d3;transform:translateY(-3px)}
.scene-caption{position:absolute;right:7%;bottom:152px;z-index:2;display:grid;text-align:right;color:white}
.scene-caption>span:first-child{font-size:12px;margin-bottom:12px}
.scene-caption strong{font:italic 46px/1.2 Georgia,serif}
.scene-caption>span:last-child{font-size:13px;margin-top:8px}
.hero-bottom{bottom:28px;align-items:center;color:white;gap:35px;z-index:2}
.scene-controls{display:flex;gap:24px;align-items:center;width:min(640px,70%)}
.scene-tab{position:relative;background:none;color:white;border:0;padding:12px 0 18px;text-align:left;flex:1;font-size:14px;border-radius:0;white-space:nowrap}
.scene-tab>span{font-size:10px;opacity:.7;margin-right:10px}
.scene-tab:after,.scene-tab i{position:absolute;bottom:0;left:0;height:2px;content:"";width:100%;background:#ffffff4a}
.scene-tab i{z-index:1;background:white;transform:scaleX(0);transform-origin:left}
.scene-tab.is-active i{animation:scene-progress 7s linear forwards}
.hero.paused .scene-tab.is-active i{animation-play-state:paused}
#scene-pause{background:transparent;color:white;border:1px solid #ffffff66;border-radius:50%;width:38px;height:38px;flex-shrink:0;font-size:18px}
.hero-bottom .explore-link{background:none;color:white;padding:0;display:flex;align-items:center;gap:22px;font-size:12px}
.explore-link span{display:inline-block;font-size:25px;animation:scroll-invite 1.8s ease-in-out infinite}
.assurance{background:#f8faf7;padding-block:25px}
#offers{padding-top:70px}
.section-heading h2{font-size:48px;font-weight:500}
.offer-grid{gap:28px}
.offer-card{border:0;border-radius:0;box-shadow:none!important;background:transparent}
.offer-card:hover{transform:none}
.offer-image{border-radius:5px;aspect-ratio:.92}
.offer-card:nth-child(2){padding-top:44px}
.offer-card:nth-child(3){padding-top:88px}
.offer-body{padding:24px 0}
.offer-body h3{font-size:28px;max-width:320px;font-weight:500}
.offer-body .eyebrow{margin-bottom:10px}
.offer-footer{border-top:1px solid var(--line);padding-top:16px}
.badge{background:white;border-radius:2px;padding:7px 12px}
.request-section{background:#edf4f0}
.service-number{font:italic 64px/1 Georgia,serif;color:#ad7150;margin-bottom:25px}
.service-grid article:nth-child(2){transition-delay:.12s}
.service-grid article:nth-child(3){transition-delay:.24s}
.contacts h2{font-weight:500}
.instagram-link{display:grid;gap:6px;margin-top:12px;padding-top:20px;border-top:1px solid var(--line);max-width:440px}
.instagram-link strong{color:var(--blue);font-size:18px;font-weight:600}
.instagram-link>span{color:var(--muted);font-size:15px}
.instagram-link:hover strong{color:var(--copper)}
@keyframes scene-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes scroll-invite{0%,100%{transform:translateY(-4px)}50%{transform:translateY(5px)}}
@media(min-width:1500px){.hero h1{font-size:104px}.hero-copy .hero-statement{font-size:46px}.hero-copy .hero-description{font-size:18px}}
@media(max-width:1050px){.scene-caption{bottom:145px}.scene-caption strong{font-size:34px}.hero h1{font-size:74px}.hero-copy .hero-statement{font-size:33px}.scene-caption>span:last-child{max-width:150px}.scene-controls{gap:15px}.section-heading h2{font-size:40px}}
@media(max-width:780px){.site-header{height:78px;min-height:78px;flex-wrap:nowrap;padding:8px 5%}.brand img{width:48px;height:48px}.brand{gap:9px}.brand strong{font-size:21px}.header-phone{font-size:11px}.hero{height:calc(88svh - 78px);min-height:590px;max-height:740px;padding:35px 6% 126px;align-items:center}.hero h1{font-size:55px;margin-bottom:22px}.hero-copy .eyebrow{font-size:9px;margin-bottom:20px}.hero-copy .hero-statement{font-size:28px}.hero-copy .hero-description{font-size:14px;max-width:320px}.hero-copy .hero-description br{display:none}.hero:after{background:linear-gradient(90deg,#0c3d40a8,#0c3d4020),linear-gradient(0deg,#0c3d4066,transparent)}.hero .primary{font-size:13px;gap:6px;padding-left:16px}.hero .primary span{margin-left:10px}.scene-caption{display:none}.hero-bottom{left:6%;right:6%;bottom:26px}.scene-controls{width:100%;gap:13px}.scene-tab{font-size:12px}.scene-tab>span{display:inline;font-size:9px;margin-right:4px}.hero-bottom .explore-link{display:none}.hero-bottom span{display:inline}.section-heading h2{font-size:34px}.offer-card:nth-child(2),.offer-card:nth-child(3){padding-top:0}.offer-image{aspect-ratio:1.1}.offer-grid{gap:22px}#offers{padding-top:45px}.offer-body h3{font-size:27px}.assurance{gap:10px}.service-number{font-size:50px}}
@media(max-width:370px){.hero h1{font-size:48px}.hero-copy .hero-statement{font-size:25px}.brand strong{font-size:18px}.header-phone{font-size:10px}.scene-controls{gap:9px}.scene-tab{font-size:11px}}
@media(prefers-reduced-motion:reduce){.scene{transition:none}.scene-tab.is-active i{animation:none;transform:scaleX(1)}.explore-link span{animation:none}}
