:root{--copper:#ff6b35;--electric:#61f4c2;--ink:#060b11}
body{font-family:'Inter',sans-serif}
h1,h2,h3{font-family:'Archivo',sans-serif;font-weight:700}
.brand span{font-family:'Archivo',sans-serif;font-size:1.95rem;font-weight:800;letter-spacing:.12em;line-height:.9}
.hero-gallery,.hero-slide{position:absolute;inset:0}
.hero-slide{background-image:var(--image);background-position:center;background-size:cover;opacity:0;transform:scale(1.08);transition:opacity 1.5s ease;animation:slowZoom 9s ease-in-out infinite alternate;will-change:transform,opacity}
.hero-slide.active{opacity:1;z-index:1}
@keyframes slowZoom{from{transform:scale(1.08) translate3d(0,0,0)}to{transform:scale(1.16) translate3d(-1.2%,.7%,0)}}
.hero-copy h1 span{display:inline-block;clip-path:inset(0 0 0 0);animation:titleIn 1.1s cubic-bezier(.16,1,.3,1) both}
.hero-copy h1 span:nth-child(3){animation-delay:.12s}
@keyframes titleIn{from{opacity:0;transform:translateY(80px);clip-path:inset(100% 0 0 0)}to{opacity:1;transform:none;clip-path:inset(0 0 0 0)}}
.slide-nav{position:absolute;z-index:4;right:4vw;top:50%;display:grid;gap:12px}
.slide-nav button{appearance:none;border:0;border-bottom:1px solid #ffffff55;background:transparent;color:#ffffff88;font:600 .66rem/1 'Inter';letter-spacing:.14em;padding:8px 0;width:35px;cursor:pointer;transition:.35s}
.slide-nav button.active{color:#fff;border-color:var(--copper);width:60px}
.moving-words{overflow:hidden;background:var(--ink);border-top:1px solid #ffffff18;border-bottom:1px solid #ffffff18;padding:1.3rem 0;white-space:nowrap}
.moving-words div{width:max-content;display:flex;align-items:center;gap:2rem;animation:words 15s linear infinite;color:#fff;font:800 clamp(2.6rem,7vw,8rem)/.9 'Archivo';letter-spacing:-.055em}
.moving-words span:nth-of-type(2n){color:transparent;-webkit-text-stroke:1px #ffffff80}
.moving-words b{font-weight:400;color:var(--copper)}
@keyframes words{to{transform:translateX(-42%)}}
.young-brands{position:relative;overflow:hidden;background:#ff6b35;color:#060b11;padding:9vw 7vw;display:grid;grid-template-columns:.7fr 2.1fr 1fr;gap:4vw;align-items:start}
.young-brands:before{content:"";position:absolute;width:38vw;height:38vw;border-radius:50%;right:-12vw;top:-19vw;background:#61f4c2;filter:blur(2px);mix-blend-mode:multiply;opacity:.9}
.young-brands .section-label{color:#060b11;position:relative}
.young-brands h2{position:relative;font-size:clamp(3.6rem,8vw,9rem);line-height:.82;letter-spacing:-.075em}
.young-brands h2 i{font-family:'Archivo',sans-serif;font-weight:800;font-style:normal;-webkit-text-stroke:2px #060b11;color:transparent}
.brand-tags{position:relative;display:flex;flex-wrap:wrap;gap:.55rem;align-content:flex-start;padding-top:.7rem}
.brand-tags span{border:1px solid #060b11;border-radius:999px;padding:.65rem .9rem;font-size:.72rem;font-weight:600;letter-spacing:.08em;background:rgba(255,255,255,.12);transition:.25s}
.brand-tags span:hover{background:#060b11;color:#fff;transform:rotate(-3deg) scale(1.05)}
.young-copy{grid-column:2;position:relative;max-width:620px;font-size:1.2rem;line-height:1.7;margin-top:1rem}
.visual-story{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);padding:7vw 4vw;gap:2vw}
.visual-panel{height:70vh;min-height:540px;margin:0;position:relative;overflow:hidden;background:#101923}
.visual-panel:nth-child(2){margin-top:12vw}
.visual-panel img{width:100%;height:115%;object-fit:cover;transition:transform 1.2s cubic-bezier(.16,1,.3,1),filter .7s;transform:scale(1.03)}
.visual-panel:hover img{transform:scale(1.1);filter:saturate(1.15)}
.visual-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,9,14,.9),transparent 58%)}
.visual-panel figcaption{position:absolute;z-index:2;left:3rem;bottom:3rem}
.visual-panel small{display:block;color:var(--copper);letter-spacing:.25em;margin-bottom:1rem}
.visual-panel strong{font:700 clamp(2.5rem,4.8vw,5.8rem)/.95 'Archivo';letter-spacing:-.045em}
.finishes{background:#f3f0e9;color:#091019;padding:10vw 5vw}
.finishes-head{display:grid;grid-template-columns:.8fr 1.8fr 1fr;gap:4vw;align-items:start;margin-bottom:5vw}
.finishes-head h2{font-size:clamp(2.8rem,5.8vw,6.6rem);line-height:.93;letter-spacing:-.065em}
.finishes-head h2 span{color:#93928d;font-weight:500}
.finishes-head>p:last-child{font-size:1.05rem;line-height:1.75;color:#555d64;margin-top:1rem}
.finish-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.7vw}
.finish-card{border-top:1px solid #aaa8a2;padding-top:1.2rem}
.finish-image{height:34vw;max-height:520px;min-height:370px;position:relative;overflow:hidden;background:#101923}
.finish-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1)}
.finish-card:hover .finish-image img{transform:scale(1.06)}
.finish-image span{position:absolute;top:1rem;right:1rem;background:#61f4c2;color:#091019;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-size:.72rem;font-weight:700}
.finish-image b{position:absolute;left:1rem;bottom:1rem;background:#ff6b35;color:#060b11;border-radius:999px;padding:.7rem .9rem;font:700 .68rem/1 'Inter';letter-spacing:.12em}
.finish-card h3{font-size:clamp(1.7rem,2.5vw,2.6rem);letter-spacing:-.04em;margin-top:1.5rem}
.finish-card>p{color:#555d64;line-height:1.65;min-height:5.3rem}
.finish-card ul{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:1.2rem 0 0}
.finish-card li{border:1px solid #bbb8b0;border-radius:99px;padding:.55rem .8rem;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}
.finish-card{border-radius:0 0 28px 28px;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.finish-card:hover{transform:translateY(-12px)}
.finish-image{border-radius:28px}
.national-reach{background:#fff;color:#060b11;padding:9vw 8vw;display:grid;grid-template-columns:.8fr 1.8fr 1.2fr;gap:4vw;align-items:start}
.national-reach h2{font-size:clamp(2.7rem,5.6vw,6.5rem);line-height:.94;letter-spacing:-.06em}
.national-reach h2 span{color:#ff6b35}
.national-reach>div{font-size:1.05rem;line-height:1.75;color:#4e565d}
.national-reach>div p:first-child{margin-top:.7rem}
.seo-services{background:#0d1824;color:#fff;padding:10vw 6vw}.seo-services-head{display:grid;grid-template-columns:.7fr 1.6fr 1fr;gap:4vw;align-items:start;margin-bottom:5vw}.seo-services-head h2,.faq h2{font-size:clamp(2.8rem,5.8vw,6.6rem);line-height:.93;letter-spacing:-.065em}.seo-services-head h2 span,.faq h2 span{color:var(--electric)}.seo-services-head>p:last-child{color:#b8c1c9;line-height:1.75;font-size:1.05rem}.seo-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ffffff25}.seo-service-card{background:#0d1824;padding:2.3rem;min-height:300px;display:flex;flex-direction:column;transition:.35s}.seo-service-card:hover{background:#14283a;transform:translateY(-6px)}.seo-service-card small{color:var(--copper);font-size:.65rem;letter-spacing:.18em;font-weight:700}.seo-service-card h3{font-size:clamp(1.55rem,2.4vw,2.35rem);line-height:1.05;margin:1.3rem 0}.seo-service-card p{color:#aeb8c1;line-height:1.65;margin:0 0 2rem}.seo-service-card span{margin-top:auto;color:var(--electric);font-size:.82rem;font-weight:700}.all-services-link{display:inline-flex;margin-top:2rem;border-bottom:1px solid var(--copper);padding:.8rem 0;font-weight:700}.all-services-link span{color:var(--copper);margin-left:1rem}.faq{background:#f3f0e9;color:#091019;padding:10vw 8vw;display:grid;grid-template-columns:1fr 1.25fr;gap:8vw}.faq-list{border-top:1px solid #aaa8a2}.faq details{border-bottom:1px solid #aaa8a2;padding:1.6rem 0}.faq summary{font:700 clamp(1.1rem,1.7vw,1.45rem)/1.3 'Archivo';cursor:pointer;list-style:none;padding-right:3rem;position:relative}.faq summary:after{content:'+';position:absolute;right:.2rem;color:var(--copper);font-size:1.6rem}.faq details[open] summary:after{content:'−'}.faq details p{color:#555d64;line-height:1.75;max-width:680px}.footer-links{display:flex;flex-wrap:wrap;gap:.55rem 1rem}.footer-links a{color:#b8c0c8}.footer-links a:hover{color:var(--copper)}
.service:hover{background:linear-gradient(90deg,rgba(97,244,194,.16),transparent);padding-right:20px}
.primary{border-radius:999px}.nav-cta{border:1px solid #ffffff40;border-radius:999px;padding:11px 16px}.nav-cta:hover{background:var(--electric);border-color:var(--electric);color:#071019}
.statement h2 span,.process h2 span,.contact h2 span{font-family:'Archivo',sans-serif;font-style:normal;font-weight:700}
.quote{background:radial-gradient(circle at 80% 20%,#18334c 0,transparent 35%),#060b11}
.quote blockquote{font-family:'Archivo',sans-serif}
.marquee{font-family:'Archivo',sans-serif}
.quote em{color:var(--electric)}
.service{position:relative;overflow:hidden}
.service:before{content:"";position:absolute;left:0;bottom:0;height:3px;width:0;background:var(--copper);transition:width .55s cubic-bezier(.16,1,.3,1)}
.service:hover:before{width:100%}
.button{position:relative;overflow:hidden;transition:color .35s,transform .3s}
.button:before{content:"";position:absolute;inset:0;background:var(--copper);transform:translateX(-102%);transition:transform .45s cubic-bezier(.16,1,.3,1);z-index:0}
.button:hover{transform:translateY(-3px)}.button:hover:before{transform:none}.button>*{position:relative;z-index:1}
.nav{position:fixed;background:linear-gradient(180deg,rgba(6,11,17,.8),transparent);transition:background .4s,backdrop-filter .4s}
.nav.scrolled{background:rgba(6,11,17,.88);backdrop-filter:blur(18px)}
.chat-widget{position:fixed;right:24px;bottom:24px;z-index:80;font-family:'Inter',sans-serif}
.chat-trigger{border:0;border-radius:999px;background:#61f4c2;color:#06100d;box-shadow:0 18px 55px rgba(0,0,0,.32);padding:15px 18px;display:flex;align-items:center;gap:10px;font:600 .9rem/1 'Inter';cursor:pointer;transition:transform .25s,box-shadow .25s}
.chat-trigger:hover{transform:translateY(-3px);box-shadow:0 22px 65px rgba(0,0,0,.42)}
.chat-trigger i{font-style:normal;font-size:1.1rem}.chat-dot{width:9px;height:9px;border-radius:50%;background:#0b7a4b;box-shadow:0 0 0 5px rgba(11,122,75,.13)}
.chat-panel{position:absolute;right:0;bottom:66px;width:min(370px,calc(100vw - 32px));background:#fff;color:#071019;border-radius:24px;box-shadow:0 24px 80px rgba(0,0,0,.4);overflow:hidden;animation:chatIn .3s cubic-bezier(.16,1,.3,1)}
@keyframes chatIn{from{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:none}}
.chat-head{background:#091019;color:#fff;padding:22px 22px 20px;display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
.chat-head span{display:block;color:#ff6b35;font-size:.65rem;font-weight:700;letter-spacing:.17em;margin-bottom:7px}.chat-head strong{font:700 1.12rem/1.25 'Archivo'}
.chat-close{border:0;background:#ffffff12;color:#fff;width:32px;height:32px;border-radius:50%;font-size:1.35rem;line-height:1;cursor:pointer}
.chat-message{margin:0;padding:20px 22px 12px;color:#4c555e;line-height:1.5;font-size:.92rem}
.chat-options{display:grid;gap:8px;padding:6px 14px 14px}.chat-options a{display:flex;justify-content:space-between;align-items:center;background:#f2f3f4;border-radius:13px;padding:14px 15px;font-size:.88rem;font-weight:600;transition:.2s}.chat-options a:hover{background:#ff6b35;color:#071019;transform:translateX(3px)}
.chat-panel>small{display:block;padding:0 22px 20px;color:#7b8288;font-size:.7rem}
@media(max-width:800px){.slide-nav{right:5vw;top:auto;bottom:28px;display:flex}.slide-nav button.active{width:42px}.visual-story{grid-template-columns:1fr;padding:14vw 5vw;gap:6vw}.visual-panel,.visual-panel:nth-child(2){height:62vh;min-height:440px;margin:0}.visual-panel figcaption{left:1.5rem;bottom:1.5rem}.moving-words{padding:.9rem 0}.young-brands{grid-template-columns:1fr;padding:20vw 6vw;gap:1.5rem}.young-brands:before{width:90vw;height:90vw}.young-copy{grid-column:1}.finishes{padding:20vw 5vw}.finishes-head{grid-template-columns:1fr;gap:1rem;margin-bottom:12vw}.finish-grid{grid-template-columns:1fr;gap:12vw}.finish-image{height:82vw;min-height:0}.finish-card>p{min-height:0}.national-reach{grid-template-columns:1fr;padding:20vw 6vw;gap:1.5rem}.seo-services{padding:20vw 5vw}.seo-services-head,.faq{grid-template-columns:1fr;gap:1.5rem}.seo-service-grid{grid-template-columns:1fr}.seo-service-card{min-height:245px;padding:1.7rem}.faq{padding:20vw 6vw}.footer-links{display:grid}}
@media(max-width:800px){.chat-widget{right:14px;bottom:14px}.chat-trigger{padding:14px 16px}.chat-panel{bottom:62px}.chat-panel>small{padding-bottom:16px}}
@media(prefers-reduced-motion:reduce){.hero-slide,.moving-words div,.hero-copy h1 span{animation:none}.hero-slide{transform:none}.reveal{transition:none}}
