:root{--black:#101111;--ink:#171817;--charcoal:#202220;--soft:#f0eee8;--cream:#f7f5f0;--gold:#d6b774;--gold-deep:#a47e3c;--line:rgba(20,22,20,.15);--white:#fffdf7;font-family:DM Sans,Arial,sans-serif;color:var(--ink);background:var(--cream);scroll-behavior:smooth;font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
*{box-sizing:border-box}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}button{font:inherit}img,video{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}.wrap{width:min(calc(100% - 112px),1440px);margin-inline:auto}h1,h2,h3,.brand-name,.footer-brand{font-family:"Sora","Arial Narrow",Impact,sans-serif;font-stretch:condensed;text-transform:uppercase}h1,h2{font-weight:700;letter-spacing:.018em;line-height:.9}h1 em,h2 em{font-style:normal;color:var(--gold)}.eyebrow{color:var(--gold-deep);font-size:11px;font-weight:800;letter-spacing:.22em;line-height:1.5}.eyebrow.light{color:var(--gold)}
.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;color:var(--white);border-bottom:1px solid rgba(255,255,255,.18);background:linear-gradient(180deg,rgba(9,10,10,.68),rgba(9,10,10,.06))}.header-inner{width:min(calc(100% - 112px),1440px);height:98px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;align-items:center;gap:11px;flex:none}.brand-mark{width:58px;height:58px;display:block;overflow:hidden;background:#030303}.brand-mark img{width:100%;height:100%;object-fit:cover;object-position:center 68%;transform:scale(1.19)}.brand-name{font-size:22px;font-weight:800;letter-spacing:.11em;line-height:.9;white-space:nowrap}.brand-name b{display:block;color:var(--gold);font-weight:600;letter-spacing:.25em;font-size:13px;margin-top:5px}.primary-nav{display:flex;align-items:center;gap:35px}.primary-nav>a:not(.nav-contact){font-size:13px;font-weight:700;color:rgba(255,253,247,.88);transition:color .2s}.primary-nav>a:hover,.primary-nav>a[aria-current=page]{color:var(--gold)}.nav-contact{display:flex;align-items:center;gap:10px;padding:13px 16px;border:1px solid rgba(214,183,116,.65);font-size:12px;font-weight:800;white-space:nowrap;background:rgba(16,17,17,.25);transition:background .2s}.nav-contact:hover{background:rgba(214,183,116,.16)}.nav-contact svg,.btn svg,.footer-wa svg{width:20px;height:20px;color:#25d366;flex:none}.menu-toggle{display:none}
.hero{position:relative;min-height:720px;height:min(980px,100svh);overflow:hidden;display:flex;align-items:flex-end;background:#111;color:var(--white)}.hero-media,.hero-media video,.hero-shadow{position:absolute;inset:0;width:100%;height:100%}.hero-media video{object-fit:cover;object-position:center}.hero-shadow{pointer-events:none;background:linear-gradient(90deg,rgba(9,10,10,.05) 5%,rgba(9,10,10,.08) 45%,rgba(9,10,10,.65) 100%),linear-gradient(0deg,rgba(8,10,10,.82),rgba(8,10,10,.12) 57%,rgba(8,10,10,.08))}.hero-content{position:relative;z-index:1;width:min(calc(100% - 112px),1440px);margin:0 auto;padding:185px 0 106px;text-align:right;display:flex;align-items:flex-end;flex-direction:column;animation:rise .75s .1s both}.hero-content h1{max-width:900px;margin:17px 0 18px;font-size:clamp(5rem,8.8vw,9.5rem);text-shadow:0 4px 26px rgba(0,0,0,.18)}.hero-content>p:not(.eyebrow){max-width:530px;color:rgba(255,253,247,.84);font-size:16px;line-height:1.75}.hero-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:55px;padding:0 22px;font-size:12px;font-weight:800;letter-spacing:.02em;white-space:nowrap;transition:transform .2s,background .2s,border-color .2s}.btn:hover{transform:translateY(-2px)}.btn>span:last-child{margin-left:8px;font-size:17px;font-weight:500}.btn-gold{border:1px solid var(--gold);background:var(--gold);color:#171511}.btn-gold svg{color:#13874a}.btn-gold:hover{background:#e6ca8d}.btn-outline{border:1px solid rgba(255,253,247,.62);background:rgba(16,17,17,.3);color:var(--white);backdrop-filter:blur(10px)}.btn-outline:hover{border-color:var(--gold);background:rgba(214,183,116,.16)}.sound-toggle{position:absolute;z-index:2;right:56px;bottom:28px;display:flex;align-items:center;gap:9px;padding:9px 0;border:0;background:transparent;color:rgba(255,253,247,.85);font-size:10px;font-weight:800;letter-spacing:.14em;cursor:pointer}.sound-bars{display:flex;align-items:center;gap:2px;height:15px}.sound-bars i{width:2px;height:7px;background:var(--gold)}.sound-bars i:nth-child(2){height:13px}.sound-bars i:nth-child(3){height:9px}.sound-toggle[aria-pressed=true] .sound-bars i{animation:bars .7s infinite alternate}.sound-toggle[aria-pressed=true] .sound-bars i:nth-child(2){animation-delay:.2s}
.intro-section{display:grid;grid-template-columns:1.25fr .75fr;gap:10%;align-items:end;padding-block:120px 130px}.intro-section h2{margin-top:22px;font-size:clamp(3.6rem,5.6vw,6.4rem)}.intro-section>p{max-width:470px;padding-bottom:6px;color:#5e625e;font-size:16px;line-height:1.95}.services-section{padding:112px 0 120px;background:var(--soft)}.services-section--page{padding-top:0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:38px}.section-head h2{margin-top:14px;font-size:clamp(3.7rem,5.6vw,6.2rem)}.text-link{display:inline-flex;align-items:center;gap:20px;padding:0 0 8px;border-bottom:1px solid var(--gold-deep);font-size:12px;font-weight:800;white-space:nowrap;transition:gap .2s}.text-link:hover{gap:28px}.text-link span{font-size:18px}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.category-card{position:relative;display:block;aspect-ratio:1.15;overflow:hidden;background:#2d302d;color:var(--white)}.category-card img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.65,.25,1)}.category-card:hover img{transform:scale(1.045)}.category-card__shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(9,10,10,.91),rgba(9,10,10,.08) 68%)}.category-card__number{position:absolute;top:20px;left:22px;color:var(--gold);font-size:12px;font-weight:800;letter-spacing:.15em}.category-card__copy{position:absolute;right:65px;bottom:25px;left:22px;display:block}.category-card__copy strong{display:block;font-family:"Sora",Impact,sans-serif;font-size:clamp(1.9rem,2.4vw,3rem);font-weight:700;line-height:1;letter-spacing:.018em;text-transform:uppercase}.category-card__copy small{display:block;margin-top:10px;color:rgba(255,253,247,.76);font-size:12px;line-height:1.6}.category-card__arrow{position:absolute;right:22px;bottom:26px;color:var(--gold);font-size:25px;line-height:1}.image-note{margin-top:17px;color:#727570;font-size:11px;line-height:1.6}
.feature-section{display:grid;grid-template-columns:1.1fr .9fr;min-height:620px;background:var(--black);color:var(--white)}.feature-image{min-height:560px;overflow:hidden}.feature-image img{width:100%;height:100%;object-fit:cover}.feature-copy{display:flex;align-items:flex-start;justify-content:center;flex-direction:column;padding:85px clamp(45px,6vw,120px)}.feature-copy h2{margin-top:24px;font-size:clamp(4.2rem,6vw,7rem)}.feature-copy>p:not(.eyebrow){max-width:470px;margin:25px 0 34px;color:rgba(255,253,247,.72);font-size:15px;line-height:1.9}.contact-band{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:end;padding-block:128px}.contact-band h2{margin-top:20px;font-size:clamp(4rem,6vw,7rem)}.contact-band>div:last-child{max-width:470px}.contact-band>div:last-child p{margin-bottom:25px;color:#656964;line-height:1.85}
.site-footer{background:#101111;color:var(--white)}.footer-inner{width:min(calc(100% - 112px),1440px);margin:auto;display:grid;grid-template-columns:1.35fr .7fr 1fr 1fr;gap:45px;padding:85px 0 75px}.footer-inner>div{display:flex;flex-direction:column;align-items:flex-start;gap:13px}.footer-brand{font-size:35px;font-weight:800;letter-spacing:.08em;line-height:1}.footer-brand span{color:var(--gold)}.footer-inner p{max-width:250px;margin-top:4px;color:#a7a8a4;font-size:12px;line-height:1.75}.footer-inner strong{margin-bottom:9px;color:var(--gold);font-size:10px;letter-spacing:.2em}.footer-inner a:not(.footer-brand),.footer-inner span:not(.footer-brand span){color:#d0d0cc;font-size:12px;line-height:1.7}.footer-inner a:hover{color:var(--gold)}.footer-wa{display:inline-flex;align-items:center;gap:8px;margin-top:8px}.footer-bottom{width:min(calc(100% - 112px),1440px);margin:auto;display:flex;justify-content:space-between;gap:20px;padding:22px 0;border-top:1px solid rgba(255,255,255,.12);color:#8a8d88;font-size:10px;letter-spacing:.08em}
.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:10px;color:#818781;font-size:11px;line-height:1.6}.breadcrumbs a:hover{color:var(--gold-deep)}.crumb-sep{color:var(--gold-deep)}.plain-hero{min-height:520px;padding-top:155px;padding-bottom:95px}.plain-hero .eyebrow{margin-top:88px}.plain-hero h1{margin-top:18px;font-size:clamp(5.3rem,9vw,10.5rem)}.plain-hero>p:not(.eyebrow){max-width:680px;margin-top:23px;color:#676b65;font-size:17px;line-height:1.8}.plain-hero.not-found{min-height:73vh}.plain-hero.not-found .btn{margin-top:30px}.count-label{color:#858b83;font-size:11px;font-weight:800;letter-spacing:.13em}
.image-hero{position:relative;min-height:610px;display:flex;align-items:end;overflow:hidden;background:#202321;color:var(--white)}.image-hero>img,.image-hero__shade{position:absolute;inset:0;width:100%;height:100%}.image-hero>img{object-fit:cover}.image-hero__shade{background:linear-gradient(90deg,rgba(9,10,10,.82),rgba(9,10,10,.25) 70%),linear-gradient(0deg,rgba(9,10,10,.72),transparent 75%)}.image-hero__content{position:relative;z-index:1;padding-top:170px;padding-bottom:70px}.image-hero .breadcrumbs{color:rgba(255,253,247,.68);margin-bottom:65px}.image-hero h1{max-width:1040px;margin:20px 0;font-size:clamp(5rem,8vw,9rem)}.image-hero__content>p:last-child{max-width:670px;color:rgba(255,253,247,.8);font-size:16px;line-height:1.8}.list-section{padding-block:105px 80px}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:80px 1fr 45px;gap:10px;align-items:center;padding:27px 3px;border-bottom:1px solid var(--line);transition:padding .2s,background .2s}.service-row:hover{padding-left:15px;background:#eeece5}.service-row>span{color:var(--gold-deep);font-size:12px;font-weight:800}.service-row h2{font-size:clamp(2.1rem,3.3vw,3.8rem)}.service-row p{margin-top:7px;color:#757a74;font-size:13px}.service-row>b{justify-self:end;color:var(--gold-deep);font-size:24px;font-weight:400}.small-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:110px;padding:38px 45px;background:var(--black);color:var(--white)}.small-cta h2{font-size:clamp(2.4rem,3.5vw,4.2rem)}.small-cta p{max-width:330px;color:#aeb0aa;font-size:13px;line-height:1.7}.small-cta .btn{flex:none}
.detail-hero{padding-top:155px;padding-bottom:90px}.detail-hero__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:6%;align-items:center;margin-top:70px}.detail-hero h1{max-width:700px;margin:20px 0 24px;font-size:clamp(4.7rem,6.3vw,8rem)}.detail-hero__grid>div>p:not(.eyebrow){max-width:570px;color:#666b64;font-size:16px;line-height:1.85}.detail-hero .btn{margin-top:30px}.detail-hero figure{min-width:0}.detail-hero figure img{width:100%;max-height:550px;aspect-ratio:1.32;object-fit:cover}.detail-hero figcaption{padding-top:10px;color:#858b83;font-size:10px}.detail-body{display:grid;grid-template-columns:.9fr 1.1fr;gap:9%;padding-block:95px 105px;border-top:1px solid var(--line)}.detail-body h2{margin-top:23px;font-size:clamp(3.2rem,4.8vw,5.5rem)}.detail-body>div:last-child>p{max-width:680px;color:#656a63;font-size:16px;line-height:1.95}.detail-body h3{margin-top:42px;font-family:DM Sans,Arial,sans-serif;font-size:14px;font-weight:800;letter-spacing:.02em;text-transform:none}.detail-points{margin:17px 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}.detail-points li{display:flex;gap:25px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line);font-size:13px;font-weight:700}.detail-points li span{color:var(--gold-deep);font-size:11px}.faq-single{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:end;padding:50px 0 65px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.faq-single h2{max-width:600px;margin-top:18px;font-size:clamp(2.7rem,4vw,4.5rem)}.faq-single>p{max-width:560px;color:#656a63;font-size:15px;line-height:1.85}.related-section{padding-block:110px}.related-links{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.related-links a{display:flex;justify-content:space-between;gap:15px;align-items:center;min-height:120px;padding:25px;background:#ebe8df;font-size:14px;font-weight:800;transition:background .2s}.related-links a:hover{background:#e1d8c3}.related-links span{font-size:22px;color:var(--gold-deep)}
.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;padding-bottom:120px}.about-image{position:relative;aspect-ratio:1.08;overflow:hidden}.about-image img{width:100%;height:100%;object-fit:cover}.about-image small{position:absolute;bottom:15px;left:17px;padding:6px 9px;background:rgba(0,0,0,.65);color:#fff;font-size:10px}.about-layout h2{margin-top:22px;font-size:clamp(3.5rem,5vw,6rem)}.about-layout p:not(.eyebrow){max-width:570px;margin-top:22px;color:#676b65;font-size:15px;line-height:1.9}.about-layout .text-link{margin-top:25px}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;padding-bottom:130px}.contact-tile{display:flex;align-items:flex-start;flex-direction:column;gap:14px;min-height:240px;padding:35px;background:#ebe9e2;transition:background .2s}.contact-tile:hover{background:#e3ddcd}.contact-tile__label{color:var(--gold-deep);font-size:10px;font-weight:800;letter-spacing:.2em}.contact-tile strong,.contact-tile>a{font-family:"Sora",Impact,sans-serif;font-size:clamp(2rem,3vw,3.3rem);font-weight:700;line-height:1;overflow-wrap:anywhere}.contact-tile>span:last-child:not(.contact-tile__label){margin-top:auto;color:#666b65;font-size:13px}.contact-tile>span+span{color:#666b65;font-size:13px}
.reveal{opacity:1;transform:none;transition:transform .3s,box-shadow .3s}.reveal.is-visible{opacity:1;transform:none}@keyframes rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes bars{to{height:4px}}
@media(max-width:1150px){.header-inner,.wrap,.footer-inner,.footer-bottom{width:min(calc(100% - 64px),1440px)}.primary-nav{gap:22px}.hero-content{width:calc(100% - 64px)}.category-card__copy strong{font-size:2.2rem}.footer-inner{gap:25px}.small-cta{flex-wrap:wrap}}
@media(max-width:820px){.site-header{background:#101111}.header-inner{height:78px}.brand-mark{width:48px;height:48px}.brand-name{font-size:19px}.menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:46px;height:44px;border:1px solid rgba(255,255,255,.35);background:transparent;color:var(--white);cursor:pointer}.menu-toggle span{width:19px;height:1px;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.primary-nav{position:absolute;top:78px;right:0;left:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:16px 32px 25px;background:#101111;border-bottom:1px solid rgba(214,183,116,.35);box-shadow:0 20px 35px rgba(0,0,0,.22)}.primary-nav.is-open{display:flex}.primary-nav>a:not(.nav-contact){padding:16px 0;border-bottom:1px solid rgba(255,255,255,.1)}.primary-nav .nav-contact{justify-content:center;margin-top:17px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.intro-section{gap:6%}.feature-section{min-height:0}.feature-image{min-height:470px}.feature-copy{padding:60px 34px}.footer-inner{grid-template-columns:repeat(2,1fr);gap:48px 30px}.related-links{grid-template-columns:repeat(2,1fr)}.detail-hero__grid{gap:5%}}
@media(max-width:650px){.wrap,.header-inner,.footer-inner,.footer-bottom{width:calc(100% - 40px)}.site-header{position:relative}.header-inner{height:72px}.brand-mark{width:45px;height:45px}.brand-name{font-size:17px}.brand-name b{font-size:10px}.primary-nav{top:72px;padding-inline:20px}.hero{height:auto;min-height:0;display:block}.hero-media{position:relative;aspect-ratio:16/9;height:auto}.hero-media video{position:relative;width:100%;height:100%;object-fit:contain}.hero-shadow{display:none}.hero-content{width:100%;align-items:flex-start;padding:30px 20px 16px;text-align:left;background:#101111}.hero-content h1{font-size:clamp(3.75rem,13vw,6.5rem);margin-top:12px;line-height:.87}.hero-content>p:not(.eyebrow){max-width:400px;font-size:14px;line-height:1.7}.hero-actions{width:100%;justify-content:flex-start;margin-top:23px}.hero-actions .btn{flex:1 1 170px}.btn{min-height:52px;padding-inline:14px;font-size:11px}.sound-toggle{position:relative;right:auto;bottom:auto;margin:0 20px 16px 20px;color:var(--gold)}.intro-section{display:block;padding-block:76px 85px}.intro-section h2{font-size:clamp(3.45rem,11.8vw,5.3rem)}.intro-section>p{margin-top:26px;font-size:14px;line-height:1.85}.services-section{padding-block:75px 86px}.section-head{align-items:start;flex-direction:column;gap:19px;margin-bottom:27px}.section-head h2{font-size:clamp(3.5rem,11vw,5rem)}.category-grid{grid-template-columns:1fr;gap:13px}.category-card{aspect-ratio:1.25}.category-card__copy strong{font-size:clamp(2rem,9vw,3rem)}.feature-section{grid-template-columns:1fr}.feature-image{min-height:0;aspect-ratio:1.25}.feature-copy{padding:65px 20px 75px}.feature-copy h2{font-size:clamp(4rem,14vw,6rem)}.contact-band{display:block;padding-block:80px 90px}.contact-band h2{font-size:clamp(4rem,13vw,6rem)}.contact-band>div:last-child{margin-top:30px}.footer-inner{grid-template-columns:1fr 1fr;gap:40px 16px;padding-block:62px}.footer-inner>div:first-child{grid-column:1/-1}.footer-inner>div:nth-child(3){grid-column:1/-1}.footer-brand{font-size:30px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:5px}.plain-hero{min-height:0;padding-top:36px;padding-bottom:72px}.plain-hero .eyebrow{margin-top:75px}.plain-hero h1{font-size:clamp(2.9rem,11.5vw,6rem);overflow-wrap:anywhere}.plain-hero>p:not(.eyebrow){font-size:15px}.services-section--page{padding-top:0}.image-hero{min-height:520px}.image-hero__content{padding-top:80px;padding-bottom:55px}.image-hero .breadcrumbs{margin-bottom:70px}.image-hero h1{font-size:clamp(4.2rem,13vw,6.8rem)}.image-hero__content>p:last-child{font-size:14px}.list-section{padding-block:75px 65px}.service-row{grid-template-columns:32px 1fr 20px;padding-block:20px}.service-row h2{font-size:clamp(1.8rem,7.4vw,2.5rem)}.service-row p{font-size:12px}.small-cta{align-items:flex-start;flex-direction:column;margin-bottom:75px;padding:29px 25px}.small-cta h2{font-size:3rem}.small-cta .btn{max-width:100%;white-space:normal}.detail-hero{padding-top:36px;padding-bottom:65px}.detail-hero__grid{display:flex;flex-direction:column;align-items:stretch;gap:38px;margin-top:75px}.detail-hero h1{font-size:clamp(4rem,13vw,6.5rem)}.detail-hero__grid>div>p:not(.eyebrow){font-size:14px}.detail-hero figure img{aspect-ratio:1.2}.detail-body{display:block;padding-block:70px}.detail-body h2{font-size:clamp(3.4rem,11vw,5rem)}.detail-body>div:last-child{margin-top:30px}.detail-body>div:last-child>p{font-size:14px}.faq-single{display:block;padding-block:55px}.faq-single h2{font-size:clamp(2.7rem,9vw,4rem)}.faq-single>p{margin-top:22px;font-size:14px}.related-section{padding-block:75px}.related-links{grid-template-columns:1fr}.related-links a{min-height:90px}.about-layout{display:block;padding-bottom:80px}.about-layout>div:last-child{margin-top:45px}.about-layout h2{font-size:clamp(3.4rem,10vw,5rem)}.contact-grid{grid-template-columns:1fr;padding-bottom:85px}.contact-tile{min-height:195px;padding:27px}.contact-tile strong,.contact-tile>a{font-size:2.6rem}}
.primary-nav>a[href="/blog/"]{padding:9px 12px;border:1px solid rgba(214,183,116,.42);color:var(--gold)}
@media(max-width:820px){.primary-nav>a[href="/blog/"]{padding:16px 0;border:0;border-bottom:1px solid rgba(255,255,255,.1);color:rgba(255,253,247,.88)}}
h1,h2,h3{overflow-wrap:anywhere}
@media(max-width:650px){.image-hero h1{font-size:clamp(3rem,11.8vw,5rem)}.detail-hero h1{font-size:clamp(3rem,11.5vw,5rem)}}

/* Refined type and hero layout */
:root{font-family:Inter,Arial,sans-serif}
h1,h2,h3,.footer-brand,.category-card__copy strong,.contact-tile strong,.contact-tile>a{font-family:Archivo,Arial,sans-serif;font-stretch:normal}
h1,h2{font-weight:800;letter-spacing:-.045em;line-height:1.02}
.category-card__copy strong{font-size:clamp(1.45rem,1.8vw,2.2rem);letter-spacing:-.03em;line-height:1.12}
.footer-brand{font-size:27px;letter-spacing:-.035em}
.site-header{background:rgba(12,13,13,.42);border-bottom:1px solid rgba(255,255,255,.17);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.header-inner{height:96px;justify-content:flex-end}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.sr-only:focus{position:absolute;left:18px;top:18px;z-index:40;width:auto;height:auto;margin:0;padding:12px 16px;overflow:visible;clip:auto;background:#101111;color:#fff}
.hero::before{content:"";position:absolute;top:0;right:0;left:0;height:98px;background:url('/assets/hero-poster.jpg') center 13%/cover no-repeat;filter:blur(20px);transform:scale(1.03);pointer-events:none}
.hero-media{top:96px;bottom:0;height:auto}
.hero-media video{object-position:center 36%}
.hero-shadow{background:linear-gradient(90deg,rgba(8,10,10,.77),rgba(8,10,10,.42) 38%,rgba(8,10,10,.04) 75%),linear-gradient(0deg,rgba(8,10,10,.56),transparent 51%)}
.hero-content{width:min(calc(100% - 112px),1800px);align-items:flex-start;padding:145px 0 66px;text-align:left}
.hero-content h1{max-width:min(46vw,820px);margin:13px 0 18px;font-size:clamp(3.35rem,4.1vw,5rem);line-height:1.05;text-wrap:balance;text-shadow:0 3px 20px rgba(0,0,0,.23)}
.hero-content>p:not(.eyebrow){max-width:620px;font-size:15px;line-height:1.65}
.hero-actions{justify-content:flex-start;gap:12px;margin-top:27px}
.hero-actions .btn{min-height:54px;background:rgba(22,23,22,.4);-webkit-backdrop-filter:blur(11px);backdrop-filter:blur(11px)}
.hero-actions .btn-gold{background:rgba(214,183,116,.88)}
.hero-actions .btn-gold:hover{background:#e6ca8d}
.intro-section h2,.section-head h2,.about-layout h2{font-size:clamp(2.6rem,4.15vw,4.8rem)}
.feature-copy h2,.contact-band h2{font-size:clamp(2.9rem,4.6vw,5.2rem)}
.plain-hero h1{font-size:clamp(3.7rem,6.2vw,7.2rem)}
.image-hero h1{font-size:clamp(3.4rem,5.5vw,6.4rem)}
.detail-hero h1{font-size:clamp(3rem,4.7vw,5.5rem)}
.detail-body h2{font-size:clamp(2.5rem,3.7vw,4.25rem)}
.service-row h2{font-size:clamp(1.6rem,2.5vw,2.8rem)}
.faq-single h2{font-size:clamp(2.2rem,3.2vw,3.7rem)}
.small-cta h2{font-size:clamp(2rem,2.9vw,3.3rem)}
.contact-tile strong,.contact-tile>a{font-size:clamp(1.5rem,2vw,2.3rem);line-height:1.15;letter-spacing:-.035em}
@media(max-width:1150px){.hero-content{width:calc(100% - 64px)}.hero-content h1{max-width:56vw;font-size:clamp(3.05rem,5.1vw,4.7rem)}}
@media(max-width:820px){.site-header{background:rgba(16,17,17,.7)}.header-inner{height:78px}.hero::before{height:80px}.hero-media{top:78px}.hero-content{padding-bottom:75px}.hero-content h1{max-width:70vw}}
@media(max-width:650px){
  .site-header{position:relative;background:#101111;-webkit-backdrop-filter:none;backdrop-filter:none}
  .header-inner{height:62px}
  .primary-nav{top:62px}
  .hero::before{display:none}
  .hero-media{top:auto;bottom:auto;height:auto}
  .hero-media video{object-position:center}
  .hero-content{width:100%;padding:29px 20px 25px;align-items:flex-start;text-align:left}
  .hero-content h1{max-width:100%;margin:12px 0 16px;font-size:clamp(2.5rem,9.6vw,4.4rem);line-height:1.07}
  .hero-content>p:not(.eyebrow){font-size:13px;line-height:1.65}
  .hero-actions{width:100%;gap:9px;margin-top:23px}
  .hero-actions .btn{flex:1 1 155px;white-space:normal;text-align:center}
  .intro-section h2,.section-head h2,.about-layout h2{font-size:clamp(2.35rem,8.7vw,3.6rem)}
  .feature-copy h2,.contact-band h2{font-size:clamp(2.5rem,9.3vw,4rem)}
  .plain-hero h1,.image-hero h1,.detail-hero h1{font-size:clamp(2.45rem,9vw,4rem)}
  .detail-body h2{font-size:clamp(2.25rem,8.2vw,3.4rem)}
  .faq-single h2{font-size:clamp(2rem,7.4vw,3rem)}
  .small-cta h2{font-size:clamp(1.9rem,7.3vw,3rem)}
  .service-row h2{font-size:clamp(1.45rem,6.2vw,2.1rem)}
  .category-card__copy strong{font-size:clamp(1.55rem,7vw,2.3rem)}
  .contact-tile strong,.contact-tile>a{font-size:clamp(1.45rem,6vw,2rem)}
}

/* Editorial reference cards and the practical project guide */
.reference-card__image{aspect-ratio:4/3;background:#dedbd3}
.reference-card__image img{width:100%;height:100%;object-fit:cover;object-position:center}
.blog-preview,.blog-list,.related-articles{padding-block:78px 96px}
.blog-preview{background:#f7f5ef}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.blog-card{display:flex;min-width:0;flex-direction:column;background:#fff;color:var(--ink);border:1px solid rgba(20,22,20,.08);transition:transform .25s ease,box-shadow .25s ease;overflow:hidden}
.blog-card:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(20,22,20,.1)}
.blog-card__image{aspect-ratio:1.55;background:#e6e2d9;overflow:hidden}
.blog-card__image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.blog-card:hover .blog-card__image img{transform:scale(1.035)}
.blog-card__body{display:flex;flex:1;flex-direction:column;padding:22px 23px 24px}
.blog-card__body>span,.article-service-link>span,.article-aside>span{color:var(--gold-deep);font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.blog-card__body h2{margin-top:12px;font-size:clamp(1.25rem,1.7vw,1.8rem);line-height:1.16;letter-spacing:-.035em}
.blog-card__body p{margin-top:11px;color:#6e716a;font-size:13px;line-height:1.75}
.blog-card__body>b{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:23px;font-size:11px}
.blog-card__body>b i{font-style:normal;color:var(--gold-deep);font-size:18px}
.blog-article{padding-top:56px;padding-bottom:45px}
.article-header{max-width:1000px;margin-inline:auto}
.article-header .breadcrumbs{margin-bottom:56px}
.article-header>.eyebrow{margin-bottom:18px}
.article-header h1{max-width:900px;font-size:clamp(2.7rem,5.8vw,5.8rem);line-height:.98;letter-spacing:-.055em}
.article-lead{max-width:760px;margin-top:20px;color:#60645e;font-size:17px;line-height:1.75}
.article-cover{margin:35px 0 0;background:#e4e0d7}
.article-cover img{display:block;width:100%;max-height:570px;aspect-ratio:1.9;object-fit:cover}
.article-cover figcaption{padding:9px 12px;color:#777b74;font-size:10px}
.article-layout{display:grid;grid-template-columns:210px minmax(0,760px);justify-content:center;gap:70px;padding-top:56px}
.article-aside{position:sticky;top:28px;align-self:start;display:grid;gap:13px;padding-top:6px}
.article-aside a{color:#626760;font-size:12px;line-height:1.45}
.article-aside a:hover{color:var(--gold-deep)}
.article-content{min-width:0}
.article-section{scroll-margin-top:30px;margin-bottom:37px}
.article-section h2{margin-bottom:13px;font-size:clamp(1.45rem,2.2vw,2.15rem);line-height:1.17;letter-spacing:-.035em}
.article-section p,.article-section li{color:#535851;font-size:15px;line-height:1.9}
.article-section p+p{margin-top:12px}
.article-section ul{display:grid;gap:9px;margin:17px 0 0;padding:0;list-style:none}
.article-section li{position:relative;padding-left:20px}
.article-section li:before{position:absolute;top:.8em;left:0;width:6px;height:6px;background:var(--gold-deep);content:""}
.article-service-link{display:grid;gap:10px;margin-top:47px;padding:20px 22px;background:#f0ede5}
.article-service-link a{display:flex;justify-content:space-between;gap:20px;font-weight:800}
.article-service-link b{color:var(--gold-deep)}
.article-note{margin-top:18px;color:#777b74;font-size:11px;line-height:1.7}
.related-articles{padding-top:36px;border-top:1px solid var(--line)}
@media(max-width:820px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-layout{grid-template-columns:1fr;gap:25px}.article-aside{position:static;display:flex;flex-wrap:wrap;gap:10px 16px}.article-aside>span{width:100%}}
@media(max-width:650px){.reference-card__image{aspect-ratio:1.45}.blog-preview,.blog-list,.related-articles{padding-block:52px 64px}.blog-grid{grid-template-columns:1fr;gap:12px}.blog-card__image{aspect-ratio:1.6}.blog-card__body{padding:19px}.blog-card__body h2{font-size:1.45rem}.article-header .breadcrumbs{margin-bottom:37px}.blog-article{padding-top:34px}.article-header h1{font-size:clamp(2.15rem,9vw,3.5rem)}.article-lead{font-size:14px}.article-cover{margin-top:25px}.article-cover img{aspect-ratio:1.35;max-height:none}.article-layout{padding-top:32px}.article-section{margin-bottom:28px}.article-section h2{font-size:1.4rem}.article-section p,.article-section li{font-size:14px}.article-service-link{margin-top:33px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}


/* Mirador visual refinement v2 */
:root{font-family:"DM Sans",Arial,sans-serif;font-size:15px}
h1,h2,h3,.footer-brand{font-family:"Sora","DM Sans",Arial,sans-serif;font-stretch:normal;letter-spacing:-.035em}
h1,h2{line-height:.98;letter-spacing:-.045em}
.site-header{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:linear-gradient(180deg,rgba(9,10,10,.72),rgba(9,10,10,.34))}
.header-inner{justify-content:flex-end}
.hero{align-items:flex-end}
.hero-media{top:88px;height:calc(100% - 88px)}
.hero-shadow{z-index:1;background:linear-gradient(90deg,rgba(9,10,10,.60) 0%,rgba(9,10,10,.28) 46%,rgba(9,10,10,.40) 100%),linear-gradient(0deg,rgba(8,10,10,.68),rgba(8,10,10,.04) 58%,rgba(8,10,10,.10))}
.hero::before{content:"";position:absolute;z-index:2;top:0;left:0;right:0;height:190px;pointer-events:none;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);background:linear-gradient(180deg,rgba(12,12,12,.58),rgba(12,12,12,.22) 75%,transparent)}
.hero-content{z-index:3;width:min(46vw,820px);margin:0 auto 0 max(56px,calc((100% - 1440px)/2));padding:140px 0 110px;align-items:flex-start;text-align:left}
.hero-content h1{max-width:790px;margin:15px 0 16px;font-size:clamp(3.25rem,4.6vw,5.3rem);line-height:.96;letter-spacing:-.045em}
.hero-content>p:not(.eyebrow){max-width:510px;font-size:15px;line-height:1.75}
.hero-actions{justify-content:flex-start;margin-top:23px}
.sound-toggle{z-index:4}
.intro-section h2,.section-head h2,.plain-hero h1,.image-hero h1,.detail-hero h1,.detail-body h2,.faq-single h2,.about-layout h2{font-size:clamp(2.65rem,4.35vw,5rem)}
.feature-copy h2,.contact-band h2{font-size:clamp(3rem,4.8vw,5.4rem)}
.service-row h2{font-size:clamp(1.75rem,2.8vw,3rem)}
.category-card__copy strong{font-family:"Sora","DM Sans",Arial,sans-serif;font-size:clamp(1.35rem,1.9vw,2.25rem);letter-spacing:-.035em}
.contact-tile strong,.contact-tile>a{font-family:"Sora","DM Sans",Arial,sans-serif;font-size:clamp(1.6rem,2.25vw,2.55rem);letter-spacing:-.035em}
.hero-content>p:not(.eyebrow),.intro-section>p,.plain-hero>p:not(.eyebrow),.image-hero__content>p:last-child,.detail-hero__grid>div>p:not(.eyebrow),.detail-body>div:last-child>p,.faq-single>p,.about-layout p:not(.eyebrow){font-size:15px}
@media(max-width:1150px) and (min-width:651px){.hero-content{width:min(58vw,700px);margin-left:32px;padding-top:120px}.hero-content h1{font-size:clamp(3.2rem,5.5vw,5.4rem)}.header-inner{width:calc(100% - 64px)}}
@media(max-width:650px){
  .site-header{position:relative;background:rgba(16,17,17,.94)}
  .header-inner{justify-content:flex-end}
  .hero{align-items:stretch}
  .hero-media{top:auto;height:auto}
  .hero::before{display:none}
  .hero-shadow{display:none}
  .hero-content{width:100%;margin:0;padding:26px 20px 14px;align-items:flex-start;text-align:left}
  .hero-content h1{font-size:clamp(2.75rem,9.2vw,4.25rem);line-height:.98;margin:10px 0 13px}
  .hero-content>p:not(.eyebrow){font-size:14px}
  .hero-actions{margin-top:18px}
  .intro-section h2,.section-head h2,.plain-hero h1,.image-hero h1,.detail-hero h1,.detail-body h2,.faq-single h2,.about-layout h2{font-size:clamp(2.25rem,8.2vw,3.5rem)}
  .feature-copy h2,.contact-band h2{font-size:clamp(2.7rem,9vw,4rem)}
  .service-row h2{font-size:clamp(1.55rem,6vw,2.25rem)}
  .category-card__copy strong{font-size:clamp(1.5rem,7vw,2.35rem)}
  .contact-tile strong,.contact-tile>a{font-size:clamp(1.55rem,7vw,2.35rem)}
}

/* Mirador hero logo-safe v3 */
.site-header{backdrop-filter:none;-webkit-backdrop-filter:none;background:linear-gradient(180deg,rgba(9,10,10,.24),rgba(9,10,10,.06))}
.hero{align-items:flex-end}
.hero-media{top:0;height:100%}
.hero::before{display:none}
.hero-shadow{background:linear-gradient(90deg,rgba(9,10,10,.08) 0%,rgba(9,10,10,.18) 44%,rgba(9,10,10,.52) 100%),linear-gradient(0deg,rgba(8,10,10,.70),rgba(8,10,10,.06) 56%,rgba(8,10,10,.04))}
.hero-content{width:min(47vw,760px);margin:0 max(56px,calc((100% - 1440px)/2)) 0 auto;padding:0 0 112px;align-items:flex-end;text-align:right}
.hero-content h1{max-width:100%;font-size:clamp(3.05rem,4.2vw,5rem);line-height:.98;letter-spacing:-.045em}
.hero-content>p:not(.eyebrow){max-width:540px}
.hero-actions{justify-content:flex-end}
@media(max-width:1150px) and (min-width:651px){.hero-content{width:min(58vw,700px);margin-right:32px;padding-bottom:95px;align-items:flex-end;text-align:right}.hero-content h1{font-size:clamp(2.9rem,4.7vw,4.5rem)}}
@media(max-width:650px){.site-header{backdrop-filter:none;-webkit-backdrop-filter:none;background:#101111}.hero{align-items:stretch}.hero-media{top:auto;height:auto}.hero-shadow{display:none}.hero-content{width:100%;margin:0;padding:26px 20px 14px;align-items:flex-start;text-align:left}.hero-content h1{font-size:clamp(2.75rem,9.2vw,4.25rem);line-height:.98}.hero-actions{justify-content:flex-start}}
/* Mirador responsive and animated refinements v5 */
body{overflow-x:hidden}
.brand{display:flex;align-items:center;flex:none}
.brand-mark--transparent{width:78px;height:58px;overflow:visible;background:transparent}
.brand-mark--transparent img{width:100%;height:100%;object-fit:contain;object-position:center;transform:none;filter:drop-shadow(0 2px 12px rgba(0,0,0,.24))}
.header-inner{justify-content:space-between}
.hero{align-items:center}
.hero-content{width:min(42vw,660px);margin:0 auto 0 max(56px,calc((100% - 1440px)/2));padding:118px 0 54px;align-items:flex-start;text-align:left;animation:none}
.hero-content h1{font-size:clamp(2.9rem,4.6vw,5rem);line-height:.98;max-width:660px}
.hero-content>p:not(.eyebrow){max-width:470px}
.hero-actions{justify-content:flex-start}
.hero-shadow{background:linear-gradient(90deg,rgba(9,10,10,.42) 0%,rgba(9,10,10,.22) 38%,rgba(9,10,10,.08) 72%,rgba(9,10,10,.26) 100%),linear-gradient(0deg,rgba(8,10,10,.54),rgba(8,10,10,.04) 60%,rgba(8,10,10,.08))}
.hero-media video{object-position:center 54%}
.hero-content h1,.plain-hero h1,.image-hero h1,.detail-hero h1{font-size:clamp(2.8rem,4.4vw,4.8rem)}
.intro-section h2,.section-head h2,.feature-copy h2,.contact-band h2,.detail-body h2,.faq-single h2,.about-layout h2,.small-cta h2{font-size:clamp(2.25rem,3.7vw,4.15rem)}
.service-row h2{font-size:clamp(1.65rem,2.5vw,2.75rem)}
.category-card__copy strong{font-size:clamp(1.3rem,1.8vw,2.05rem)}
.contact-tile strong,.contact-tile>a{font-size:clamp(1.5rem,2vw,2.3rem)}
main p:not(.eyebrow){font-size:15px}
.motion-ready .motion-item{opacity:0;transform:translateY(16px);transition:opacity .72s cubic-bezier(.2,.65,.25,1),transform .72s cubic-bezier(.2,.65,.25,1);transition-delay:var(--motion-delay,0ms)}
.motion-ready .motion-item.is-visible{opacity:1;transform:translateY(0)}
@media(max-width:1150px) and (min-width:651px){.hero-content{width:min(52vw,620px);margin-left:32px;padding-top:112px}.hero-content h1{font-size:clamp(2.7rem,4.2vw,4.3rem)}}
@media(max-width:650px){
  .header-inner{height:66px;gap:14px}
  .brand-mark--transparent{width:64px;height:48px}
  .primary-nav{top:66px}
  .hero{height:auto;min-height:0;display:block}
  .hero-media{position:relative;top:auto;height:auto;aspect-ratio:16/9}
  .hero-media video{position:relative;width:100%;height:100%;object-fit:contain;object-position:center}
  .hero-shadow{display:none}
  .hero-content{width:100%;margin:0;padding:21px 16px 12px;align-items:flex-start;text-align:left}
  .hero-content h1{font-size:clamp(2.15rem,8vw,3.35rem);line-height:.98;margin:9px 0 12px}
  .hero-content>p:not(.eyebrow){font-size:14px;line-height:1.65}
  .hero-actions{width:100%;gap:8px;margin-top:16px}
  .hero-actions .btn{flex:1 1 145px;min-height:46px;padding-inline:11px;white-space:normal;font-size:10px}
  .sound-toggle{margin:0 16px 12px}
  .intro-section{padding-block:54px 60px}
  .intro-section h2,.section-head h2,.plain-hero h1,.image-hero h1,.detail-hero h1,.detail-body h2,.faq-single h2,.about-layout h2{font-size:clamp(1.95rem,7.6vw,3.1rem)}
  .intro-section>p,main p:not(.eyebrow){font-size:14px;line-height:1.75}
  .services-section{padding-block:54px 62px}
  .section-head{gap:13px;margin-bottom:22px}
  .category-grid{gap:10px}
  .category-card{aspect-ratio:1.35}
  .category-card__copy{right:48px;bottom:18px;left:16px}
  .category-card__copy strong{font-size:clamp(1.28rem,6vw,2rem)}
  .category-card__copy small{font-size:11px;line-height:1.5}
  .category-card__number{top:14px;left:16px;font-size:10px}
  .feature-image{aspect-ratio:1.4}
  .feature-copy{padding:48px 18px 55px}
  .feature-copy h2,.contact-band h2{font-size:clamp(2.4rem,8.7vw,3.7rem)}
  .contact-band{padding-block:58px 66px}
  .footer-inner{gap:30px 14px;padding-block:48px}
  .plain-hero{padding-top:30px;padding-bottom:55px}
  .plain-hero .eyebrow{margin-top:52px}
  .plain-hero h1,.image-hero h1,.detail-hero h1{font-size:clamp(2.2rem,8vw,3.6rem)}
  .image-hero{min-height:450px}
  .image-hero__content{padding-top:62px;padding-bottom:42px}
  .image-hero .breadcrumbs{margin-bottom:38px}
  .list-section{padding-block:56px 48px}
  .service-row{grid-template-columns:26px 1fr 18px;gap:7px;padding-block:16px}
  .service-row h2{font-size:clamp(1.3rem,5.8vw,1.9rem)}
  .small-cta{gap:15px;margin-bottom:54px;padding:23px 19px}
  .small-cta h2{font-size:clamp(1.8rem,7vw,2.5rem)}
  .detail-hero{padding-top:28px;padding-bottom:48px}
  .detail-hero__grid{gap:25px;margin-top:48px}
  .detail-body{padding-block:52px}
  .detail-body h2,.faq-single h2,.about-layout h2{font-size:clamp(2rem,7.5vw,3rem)}
  .faq-single{padding-block:40px}
  .related-section{padding-block:55px}
  .related-links a{min-height:76px;padding:18px}
  .about-layout>div:last-child{margin-top:30px}
  .about-layout{padding-bottom:58px}
  .contact-grid{gap:10px;padding-bottom:60px}
  .contact-tile{min-height:165px;padding:21px}
  .contact-tile strong,.contact-tile>a{font-size:clamp(1.35rem,6.3vw,2rem)}
}
@media(prefers-reduced-motion:reduce){.motion-ready .motion-item,.motion-ready .motion-item.is-visible{opacity:1;transform:none;transition:none}}
/* Mobile premium header and comfortable type v6 */
.brand--mark-only{gap:10px}
.brand-name{display:block;font-family:"Sora","DM Sans",Arial,sans-serif;font-size:13px;font-weight:700;letter-spacing:.14em;line-height:1.1;color:var(--white);white-space:nowrap}
.brand-name b{display:inline;color:var(--gold);font-size:inherit;font-weight:600;letter-spacing:inherit;margin:0}
@media(max-width:650px){
  .site-header{position:absolute;top:0;left:0;z-index:20;width:100%;background:linear-gradient(180deg,rgba(9,10,10,.62),rgba(9,10,10,.12));border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
  .header-inner{height:68px;width:calc(100% - 32px)}
  .brand--mark-only{gap:8px}
  .brand-mark--transparent{width:58px;height:42px}
  .brand-name{font-size:11px;letter-spacing:.12em}
  .menu-toggle{width:40px;height:40px}
  .hero-content{padding:20px 16px 10px}
  .hero-content h1{font-size:clamp(1.95rem,7.25vw,2.8rem);line-height:1.08;letter-spacing:-.04em;margin:8px 0 12px}
  .hero-content .eyebrow{font-size:9px;letter-spacing:.17em}
  .hero-content>p:not(.eyebrow){font-size:13px;line-height:1.65}
  .hero-actions{align-items:stretch;gap:8px;margin-top:15px}
  .hero-actions .btn-gold{width:100%;min-height:48px;flex:0 0 auto;white-space:nowrap;font-size:11px}
  .hero-actions .btn-outline{align-self:flex-start;min-height:37px;padding:7px 0;border:0;border-bottom:1px solid rgba(214,183,116,.58);background:transparent;backdrop-filter:none;font-size:11px}
  .intro-section h2,.section-head h2,.plain-hero h1,.image-hero h1,.detail-hero h1,.detail-body h2,.faq-single h2,.about-layout h2{font-size:clamp(1.85rem,7vw,2.7rem);line-height:1.06}
  .feature-copy h2,.contact-band h2{font-size:clamp(2.2rem,8vw,3.2rem);line-height:1.05}
  .section-head .eyebrow,.intro-section .eyebrow{font-size:9px}
  .intro-section{padding-block:48px 54px}
  .services-section{padding-block:48px 56px}
  .contact-band{padding-block:52px 58px}
}
/* Mobile header sits above the hero in normal flow, never on top of its video. */
@media(max-width:650px){
  .site-header{position:relative;top:auto;left:auto;background:#101111;border-bottom:1px solid rgba(214,183,116,.2);backdrop-filter:none;-webkit-backdrop-filter:none}
  .header-inner{height:60px}
  .primary-nav{top:60px}
}

/* Supplied reference projects, transparent pricing, FAQ, map and social details. */
.primary-nav{gap:clamp(16px,2vw,30px)}
.reference-highlight{padding-block:78px 92px}
.reference-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.reference-card{position:relative;display:block;min-width:0;background:#171918;color:var(--white);overflow:hidden}
.reference-card__image{overflow:hidden;background:#242522}
.reference-card__image img{display:block;width:100%;height:auto;object-fit:contain;transition:transform .55s cubic-bezier(.2,.65,.25,1)}
.reference-card:hover .reference-card__image img{transform:scale(1.025)}
.reference-card>span{display:block;padding:17px 48px 18px 18px;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.reference-card>b{position:absolute;right:17px;bottom:15px;color:var(--gold);font-size:20px}
.project-index{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.project-chip{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(214,183,116,.35);padding:9px 12px;color:var(--ink);font-size:11px;font-weight:700;transition:background .2s,border-color .2s}
.project-chip:hover{background:rgba(214,183,116,.14);border-color:var(--gold-deep)}
.project-chip span{color:var(--gold-deep);font-size:10px}
.project-group{padding-block:34px 60px;scroll-margin-top:24px}
.project-group__head,.map-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px}
.project-group__head h2,.map-heading h2{margin-top:12px;font-size:clamp(2rem,3.8vw,3.7rem)}
.project-masonry{columns:3;column-gap:12px}
.project-photo{position:relative;display:block;width:100%;break-inside:avoid;margin:0 0 12px;padding:0;border:0;background:#202220;cursor:zoom-in;text-align:left}
.project-photo img{display:block;width:100%;height:auto;object-fit:contain}
.project-photo>span{position:absolute;right:9px;bottom:9px;display:grid;place-items:center;width:32px;height:32px;background:rgba(16,17,17,.82);color:var(--gold);font-size:18px;opacity:0;transition:opacity .2s}
.project-photo:hover>span,.project-photo:focus-visible>span{opacity:1}
.gallery-lightbox{width:min(94vw,1400px);max-width:94vw;max-height:94svh;padding:20px;border:1px solid rgba(214,183,116,.35);background:#101111;color:var(--white)}
.gallery-lightbox::backdrop{background:rgba(0,0,0,.88);backdrop-filter:blur(8px)}
.gallery-lightbox form{display:flex;justify-content:flex-end}
.lightbox-close{border:0;background:transparent;color:var(--white);font:inherit;font-size:12px;cursor:pointer}
.lightbox-close span{margin-left:8px;color:var(--gold);font-size:24px;vertical-align:middle}
.gallery-lightbox>img{display:block;width:100%;height:min(78svh,900px);object-fit:contain}
.gallery-lightbox>p{padding-top:12px;color:rgba(255,253,247,.74);font-size:12px}
.service-price,.price-card{display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.service-price{margin-top:12px}
.service-price>span,.price-card>span{color:var(--gold-deep);font-size:9px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.service-price>strong{font-size:13px;font-weight:800;color:var(--ink)}
.service-price>small,.price-card>small{max-width:440px;color:#70736e;font-size:10px;line-height:1.55}
.price-card{margin-top:20px;padding:17px 19px;border-left:2px solid var(--gold);background:rgba(214,183,116,.13)}
.price-card>strong{color:var(--ink);font-size:clamp(16px,2vw,21px);font-weight:800;line-height:1.35}
.price-card>small{color:#585b56;font-size:11px}
.price-disclaimer{max-width:900px;margin:20px 0 0;color:#6e706b;font-size:11px;line-height:1.7}
.about-values{padding-block:64px 100px}
.about-values-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 44px;margin-top:20px;border-top:1px solid var(--line)}
.about-values-grid article{padding:25px 0;border-bottom:1px solid var(--line)}
.about-values-grid article>span{color:var(--gold-deep);font-size:10px;font-weight:800;letter-spacing:.15em}
.about-values-grid h2{margin:10px 0;font-size:clamp(1.1rem,2vw,1.5rem);line-height:1.2}
.about-values-grid p{max-width:470px;color:#626660;font-size:13px;line-height:1.8}
.faq-page{padding-block:0 80px}
.faq-group{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(0,1.3fr);gap:32px;padding:24px 0;border-top:1px solid var(--line)}
.faq-group>.eyebrow{padding-top:8px;letter-spacing:.12em}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{position:relative;padding:9px 38px 17px 0;list-style:none;color:var(--ink);font-size:15px;font-weight:700;line-height:1.5;cursor:pointer}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:2px;top:4px;color:var(--gold-deep);font-size:22px;font-weight:400}
.faq-item[open] summary::after{content:"−"}
.faq-item>p{max-width:720px;padding:0 28px 18px 0;color:#656963;font-size:13px;line-height:1.8}
.map-section{padding-block:12px 70px}
.map-frame{overflow:hidden;border:1px solid rgba(164,126,60,.25);background:#e4e1d9}
.map-frame iframe{display:block;width:100%;height:380px;border:0}
.map-note{margin-top:10px;color:#727570;font-size:11px;line-height:1.6}
.social-section{padding-block:15px 90px}
.social-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}
.social-links a{display:inline-flex;align-items:center;gap:18px;padding:15px 18px;border:1px solid var(--line);font-size:12px;font-weight:700;transition:border-color .2s,color .2s}
.social-links a:hover{border-color:var(--gold-deep);color:var(--gold-deep)}
.social-links span{color:var(--gold-deep);font-size:18px}
.footer-social a{display:inline-flex;align-items:center;gap:8px}

.project-intake{margin:0 auto 76px;padding:clamp(28px,5vw,64px);background:#ebe9e2;border:1px solid rgba(20,22,20,.1)}
.project-intake__head{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:34px}
.project-intake__head h2{margin-top:14px;font-size:clamp(2.8rem,5vw,5rem);line-height:.93}
.project-intake__head>p{max-width:340px;color:#686c65;font-size:14px;line-height:1.8}
.project-intake-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}
.project-intake-field{display:flex;flex-direction:column;gap:9px;min-width:0}
.project-intake-field label{color:#555a53;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.project-intake-field input,.project-intake-field select{width:100%;min-height:54px;padding:0 15px;border:1px solid rgba(20,22,20,.2);border-radius:0;background:rgba(255,253,247,.76);color:#171817;font:500 14px 'DM Sans',Arial,sans-serif}
.project-intake-field select:invalid{color:#777b74}
.project-intake-field input:focus,.project-intake-field select:focus{outline:2px solid var(--gold-deep);outline-offset:2px}
.project-intake-field input::placeholder{color:#777b74}
.project-intake-submit{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:5px;padding-top:21px;border-top:1px solid rgba(20,22,20,.13)}
.project-intake-submit p{max-width:430px;color:#686c65;font-size:12px;line-height:1.65}
.project-intake-submit .btn{min-height:54px;flex:none;cursor:pointer;font-family:inherit}
@media(max-width:650px){.project-intake{margin-bottom:54px;padding:26px 20px}.project-intake__head{display:block;margin-bottom:24px}.project-intake__head h2{font-size:clamp(2.55rem,10vw,3.5rem)}.project-intake__head>p{margin-top:18px;font-size:13px}.project-intake-form{grid-template-columns:minmax(0,1fr);gap:16px}.project-intake-field input,.project-intake-field select{min-height:50px;font-size:13px}.project-intake-submit{align-items:stretch;flex-direction:column;gap:14px}.project-intake-submit .btn{width:100%;white-space:normal}}
