:root{--green:#B30F1A;--black:#000;--ink:#0C0C0C;--white:#fff;--light:#f4f4f4;--line:rgba(255,255,255,.13);--max:1260px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#0C0C0C;color:#fff;font-family:'Nunito Sans',sans-serif;overflow-x:hidden}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.container{width:min(var(--max),calc(100% - 48px));margin:auto}.site-header{position:absolute;top:0;left:0;width:100%;z-index:50;background:transparent;border-bottom:1px solid rgba(255,255,255,.08)}.nav-wrap{width:min(1480px,calc(100% - 40px));margin:auto;min-height:106px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;flex:0 0 auto}.brand img{width:200px;height:auto;max-height:82px;object-fit:contain}.nav{display:flex;align-items:center;gap:23px;margin-left:auto}.nav>a,.services-menu>button{font:800 14px/1 'Nunito Sans',sans-serif;letter-spacing:.065em;text-transform:uppercase;color:#fff;background:none;border:0;padding:18px 0;cursor:pointer;position:relative}.nav>a:after,.services-menu>button:after{content:'';position:absolute;left:0;right:100%;bottom:8px;height:2px;background:var(--green);transition:.25s}.nav>a:hover:after,.nav>a.active:after,.services-menu:hover>button:after{right:0}.services-menu{position:relative}.services-menu>button{display:flex;gap:6px;align-items:center}.nav-actions{display:flex;align-items:center;gap:12px}.lang-switch{display:flex;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:4px;background:rgba(0,0,0,.18);backdrop-filter:blur(10px)}.lang-switch button{border:0;background:transparent;color:#fff;padding:9px 11px;border-radius:999px;font:700 11px Montserrat,sans-serif;cursor:pointer;display:flex;gap:6px;align-items:center}.lang-switch button.active{background:var(--green)}.menu-toggle{display:none;color:#fff;background:transparent;border:0;font-size:23px}.hero{position:relative;min-height:820px;display:grid;place-items:center;overflow:hidden}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-gradient{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.06) 0%,rgba(0,0,0,.15) 32%,rgba(13,14,13,.56) 70%,#0C0C0C 100%)}.hero-content{position:relative;z-index:2;text-align:center;max-width:1180px;padding-top:90px}.eyebrow{font:900 12px/1.3 Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.22em;color:var(--green);margin-bottom:12px}.kicker-desc{font:600 13px/1.65 Montserrat,sans-serif;color:#aeaeae;margin:0 0 20px}.hero .eyebrow{color:#fff}.hero h1,.title-banner h1{font-size:clamp(52px,6.8vw,108px);line-height:.95;letter-spacing:-.045em;margin:0 auto 24px;font-weight:900;text-transform:uppercase}.hero h1 em,.section h2 em,.coming-card h2 em{font-style:normal;color:var(--green)}.hero p{max-width:880px;margin:0 auto 30px;font:500 18px/1.75 Montserrat,sans-serif;color:#f1f1f1}.btn-row{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 25px;border-radius:4px;border:1px solid rgba(255,255,255,.3);font:800 12px Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.09em;transition:.25s;position:relative;overflow:hidden}.btn:hover{transform:translateY(-3px);box-shadow:0 13px 28px rgba(0,0,0,.25)}.btn.green{background:var(--green);border-color:var(--green);color:#fff}.btn.outline{background:rgba(0,0,0,.18);backdrop-filter:blur(8px)}.section{padding:100px 0;background:#0C0C0C}.section.light,.why{background:#f4f4f4;color:#111}.section.dark{background:#080908}.intro{padding-top:70px}.intro-grid,.area-grid,.contact-grid,.service-landing,.cta-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.media-parallax,.landing-photo{height:620px;border-radius:4px;background-size:cover;background-position:center;background-attachment:fixed}.section-copy h2,.section-head h2,.mission-card h2,.coming-card h2{font-size:clamp(38px,4.5vw,70px);line-height:1.02;letter-spacing:-.04em;margin:0 0 24px;font-weight:900;text-transform:uppercase}.section-copy p,.mission-card p,.why-item p,.service-card p,.process-step p,.faq-answer p,.coming-card p{font:500 15px/1.8 Montserrat,sans-serif;color:#aeaeae}.light .section-copy p,.why .section-copy p,.why-item p{color:#5f5f5f}.icon-points{display:grid;gap:12px;margin:26px 0}.icon-points div,.feature-list div,.contact-bullets span{display:flex;gap:12px;align-items:center;font:700 13px Montserrat,sans-serif}.icon-points i,.feature-list i,.contact-bullets i{color:var(--green);width:22px}.section-head{display:grid;grid-template-columns:.75fr 1.25fr;gap:50px;align-items:end;margin-bottom:42px}.section-head.center{display:block;text-align:center;max-width:900px;margin:0 auto 50px}.service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.service-card{min-height:390px;border:1px solid rgba(255,255,255,.12);padding:26px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01));transition:.3s}.service-card:hover{transform:translateY(-8px);background:#111111;border-color:var(--green)}.svc-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:auto}.svc-top i{font-size:27px;color:var(--green)}.svc-top span{font:800 11px Montserrat,sans-serif;color:#aeaeae}.service-card h3{font-size:22px;line-height:1.1;text-transform:uppercase;margin:22px 0 10px}.service-card b{font:800 12px Montserrat,sans-serif;text-transform:uppercase;color:var(--green);margin-top:16px}.mission-section{background:#111111}.mission-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.mission-card{padding:50px;min-height:470px;background:#171717;border:1px solid rgba(255,255,255,.1)}.mission-card.vision{background:var(--green)}.mission-card.vision .eyebrow,.mission-card.vision .kicker-desc,.mission-card.vision p{color:#fff}.mission-card>i{font-size:36px;color:var(--green);margin-bottom:36px}.mission-card.vision>i{color:#fff}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.why-item{padding:30px;background:#fff;border:1px solid #dddddd;min-height:250px}.why-item i{font-size:28px;color:var(--green);margin-bottom:38px}.why-item h3{font-size:19px;text-transform:uppercase}.two-col{display:grid;grid-template-columns:.78fr 1.22fr;gap:80px}.faq{display:grid;gap:10px}.faq-item{border-bottom:1px solid rgba(255,255,255,.12)}.faq-item button{width:100%;display:flex;justify-content:space-between;align-items:center;border:0;background:transparent;color:#fff;padding:22px 0;text-align:left;font:800 16px Montserrat,sans-serif;cursor:pointer}.faq-item button i{color:var(--green);transition:.25s}.faq-answer{max-height:0;overflow:hidden;transition:.3s}.faq-item.open .faq-answer{max-height:180px}.faq-item.open button i{transform:rotate(45deg)}.map-card{height:480px;border:1px solid rgba(255,255,255,.13);overflow:hidden}.map-card.large{height:560px}.map-card iframe,.map-full iframe{width:100%;height:100%;border:0}.cta-form{padding:90px 0;background:var(--green)}.cta-form-grid{grid-template-columns:.75fr 1.25fr;gap:48px}.cta-copy{padding-left:0}.cta-form .eyebrow,.cta-form .kicker-desc,.cta-form .cta-copy p{color:#fff}.cta-form h2{font-size:clamp(38px,4.2vw,68px);line-height:1.02;text-transform:uppercase;margin:0 0 24px}.form-wrap,.form-shell{background:transparent!important}.form-shell{height:748px}.en-form{display:block}.city-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.city-chip{padding:22px;border:1px solid rgba(255,255,255,.12);font:700 13px Montserrat,sans-serif}.city-chip i{color:var(--green);margin-right:9px}.title-banner{min-height:520px;background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:160px 0 80px;position:relative}.title-banner:after{content:'';position:absolute;inset:0;background:transparent;pointer-events:none}.banner-copy{position:relative;z-index:2;max-width:900px;background:rgba(13,14,13,.74);padding:34px 38px;backdrop-filter:blur(5px)}.title-banner h1{font-size:clamp(42px,5.5vw,82px);margin:0 0 16px}.title-banner p{font:500 15px/1.7 Montserrat,sans-serif;color:#e7e7e7;max-width:760px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.process-step{padding:30px;border:1px solid rgba(255,255,255,.12)}.process-step span{font:900 50px/1 Nunito Sans,sans-serif;color:var(--green)}.process-step h3{text-transform:uppercase}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.portfolio-grid img{width:100%;height:430px;object-fit:cover}.portfolio-grid img:nth-child(2),.portfolio-grid img:nth-child(5){height:520px}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.info-card{background:#151515;border:1px solid rgba(255,255,255,.1);padding:28px;min-height:170px;display:flex;flex-direction:column;gap:12px}.info-card i{color:var(--green);font-size:23px}.info-card small{font:800 11px Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:#9c9c9c}.info-card strong{white-space:pre-line}.contact-bullets{display:grid;gap:14px;margin-top:25px}.estimate-note{margin-top:24px;padding:18px;border-left:3px solid var(--green);background:rgba(255,255,255,.04)}.map-full{height:520px}.coming{min-height:620px;display:grid;place-items:center}.coming-card{text-align:center;max-width:820px;margin:auto;border:1px solid rgba(255,255,255,.12);padding:60px}.coming-card>i{font-size:54px;color:var(--green);margin-bottom:22px}.service-copy .feature-list{display:grid;gap:14px;margin-top:28px}.landing-photo{background-attachment:scroll}.service-landing{align-items:stretch}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr 1.2fr 1fr;gap:45px;padding:65px 0 45px}footer{background:#f4f4f4;color:#0d0e0d}.footer-brand img{width:200px;margin-bottom:18px}.footer-brand p{font:500 13px/1.8 Montserrat,sans-serif;color:#626262;max-width:330px}footer h3{font-size:16px;text-transform:uppercase;margin:10px 0 18px}.footer-links{display:grid;gap:11px}.footer-links a,.footer-links span{font:600 12px/1.5 Montserrat,sans-serif;color:#484848;display:flex;gap:9px;align-items:flex-start}.footer-links i{color:var(--green);width:15px;margin-top:2px}.copyright{border-top:1px solid #d9d9d9;padding:20px max(24px,calc((100% - var(--max))/2));display:flex;justify-content:space-between;gap:20px;font:700 11px Montserrat,sans-serif;color:#5f5f5f}.float-tools{position:fixed;right:22px;bottom:22px;z-index:60;display:grid;gap:10px}.float-tools a,.float-tools button{width:50px;height:50px;border-radius:50%;border:0;display:grid;place-items:center;font-size:20px;cursor:pointer;box-shadow:0 12px 25px rgba(0,0,0,.25)}.whatsapp{background:var(--green);color:#fff}.to-top{background:#fff;color:#000;opacity:0;pointer-events:none;transition:.25s}.to-top.show{opacity:1;pointer-events:auto}.reveal{opacity:0;transform:translateY(34px);transition:opacity .85s ease,transform .85s ease}.reveal.visible{opacity:1;transform:none}.cursor-dot,.cursor-ring{position:fixed;left:0;top:0;pointer-events:none;z-index:9999;border-radius:50%;transform:translate(-50%,-50%)}.cursor-dot{width:7px;height:7px;background:var(--green)}.cursor-ring{width:34px;height:34px;border:1px solid var(--green);transition:width .2s,height .2s,background .2s}.cursor-ring.hover{width:52px;height:52px;background:rgba(179,15,26,.12)}
@media(max-width:1180px){.nav{gap:14px}.nav>a,.services-menu>button{font-size:12px}.lang-switch span{display:none}.service-grid{grid-template-columns:repeat(3,1fr)}.city-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.container{width:min(100% - 30px,var(--max))}.site-header{position:absolute}.nav-wrap{min-height:92px;width:calc(100% - 24px)}.brand img{width:170px}.menu-toggle{display:block}.nav{position:fixed;inset:92px 12px auto 12px;background:#0C0C0C;border:1px solid rgba(255,255,255,.12);padding:22px;display:none;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100vh - 110px);overflow:auto}.nav.open{display:flex}.nav>a,.services-menu>button{width:100%;padding:15px 2px;text-align:left}.hero{min-height:760px}.hero h1{font-size:clamp(48px,12vw,76px)}.intro-grid,.area-grid,.contact-grid,.service-landing,.cta-form-grid,.two-col,.section-head{grid-template-columns:1fr;gap:34px}.media-parallax{height:500px;background-attachment:scroll}.service-grid{grid-template-columns:repeat(2,1fr)}.mission-grid{grid-template-columns:1fr}.why-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}.city-grid{grid-template-columns:repeat(2,1fr)}.portfolio-grid{grid-template-columns:repeat(2,1fr)}.info-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.cursor-dot,.cursor-ring{display:none}}
@media(max-width:560px){.nav-wrap{min-height:82px}.brand img{width:145px}.nav{inset:82px 10px auto 10px}.hero{min-height:710px}.hero-content{padding-top:95px}.hero h1{font-size:45px}.hero p{font-size:15px}.section{padding:72px 0}.section-copy h2,.section-head h2,.mission-card h2,.coming-card h2{font-size:38px}.service-grid,.why-grid,.process-grid,.city-grid,.portfolio-grid,.info-grid,.footer-grid{grid-template-columns:1fr}.service-card{min-height:300px}.mission-card{padding:34px;min-height:auto}.title-banner{min-height:430px;padding:130px 0 55px}.banner-copy{padding:24px}.title-banner h1{font-size:42px}.portfolio-grid img,.portfolio-grid img:nth-child(2),.portfolio-grid img:nth-child(5){height:320px}.copyright{flex-direction:column}.form-shell{height:748px}.coming-card{padding:38px 24px}.map-card,.map-card.large{height:420px}.lang-switch button{padding:8px}.cta-form{padding:72px 0}}

/* 2026-10-01 refinement pass */
.topbar{height:38px;background:#B30F1A;color:#fff;position:relative;z-index:70;font-family:Montserrat,sans-serif}
.topbar-inner{width:min(1480px,calc(100% - 40px));height:100%;margin:auto;display:flex;align-items:center;justify-content:center;gap:26px;font-size:11px;font-weight:700;letter-spacing:.025em}
.topbar-inner a,.topbar-inner>span{display:flex;align-items:center;gap:7px;white-space:nowrap;transition:.25s}
.topbar-inner a:hover{opacity:.72}.topbar-inner i{font-size:11px}
.site-header{top:38px;background:transparent!important;border-bottom:1px solid rgba(255,255,255,.11)}
.brand img{width:200px!important;max-width:200px!important;height:auto!important}

/* Uiverse-inspired directional fill hover, adapted for a formal tax-services niche */
.btn{isolation:isolate;z-index:0;border-radius:2px;transition:transform .28s ease,border-color .28s ease,color .28s ease,box-shadow .28s ease}
.btn:before{content:"";position:absolute;z-index:-1;inset:0;background:#fff;transform:scaleX(0);transform-origin:right center;transition:transform .36s cubic-bezier(.76,0,.24,1)}
.btn:hover:before{transform:scaleX(1);transform-origin:left center}
.btn.green:hover{color:#000;border-color:#fff}.btn.outline:hover{color:#000;border-color:#fff}.btn:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,0,0,.25)}

/* Large editorial collage */
.intro-collage{height:650px;position:relative;min-width:0}
.intro-collage img{position:absolute;object-fit:cover;box-shadow:0 24px 60px rgba(0,0,0,.28)}
.intro-collage img:first-child{left:0;top:0;width:72%;height:82%;z-index:1}
.intro-collage img:last-child{right:0;bottom:0;width:58%;height:58%;z-index:2;border:10px solid #0C0C0C}

/* Mission / vision visual panel */
.mission-visual{position:relative;background-image:linear-gradient(rgba(0,0,0,.52),rgba(0,0,0,.7)),url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078ca729862f5fc5f27.jpg');background-size:cover;background-position:center;background-attachment:fixed;padding-top:95px}
.mission-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.42),rgba(0,0,0,.16));pointer-events:none}
.mission-visual>.container{position:relative;z-index:1}.mission-heading{margin-bottom:35px}.mission-heading h2{font-size:clamp(40px,4.8vw,74px);max-width:850px;line-height:1;letter-spacing:-.04em;text-transform:uppercase;margin:0}.mission-heading h2 em{font-style:normal;color:#B30F1A}.mission-heading .kicker-desc{max-width:720px;color:#ddd}
.mission-visual .mission-card{background:rgba(10,11,10,.84);backdrop-filter:blur(4px)}.mission-visual .mission-card.vision{background:rgba(179,15,26,.9)}

/* Flip cards */
.why-grid{align-items:stretch}.why-item.flip-card{padding:0;background:transparent;border:0;perspective:1100px;min-height:300px}.flip-inner{position:relative;width:100%;height:100%;min-height:300px;transition:transform .7s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d}.flip-card:hover .flip-inner,.flip-card:focus-within .flip-inner{transform:rotateY(180deg)}
.flip-front,.flip-back{position:absolute;inset:0;backface-visibility:hidden;border:1px solid #ddd;padding:30px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:#fff}.flip-front h3{font-size:clamp(24px,2vw,32px);line-height:1.03;margin:18px 0;text-transform:uppercase}.flip-front>i{font-size:34px;color:#B30F1A;margin:0}.flip-cue{font:800 11px Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.12em;color:#B30F1A;margin-top:20px}.flip-cue i{font-size:12px;margin:0}.flip-back{transform:rotateY(180deg);background:#B30F1A;border-color:#B30F1A}.flip-back p{color:#fff!important;font-size:15px;max-width:240px;margin:0}

/* FAQ visual / parallax */
.faq-section{position:relative;background-image:url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078bc0508bc7593d8ee.jpg')!important;background-size:cover!important;background-position:center!important;background-attachment:fixed!important;overflow:hidden}
.faq-section:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.76);z-index:0}.faq-section>.container{position:relative;z-index:1}

/* Full-width editorial sections */
.full-bleed-section{padding-left:0!important;padding-right:0!important}.full-bleed-section>.container{width:100%!important;max-width:none!important;margin:0!important}
.service-area-home .area-grid,.about-story-full .intro-grid,.about-area-full .area-grid{gap:0}
.service-area-home .section-copy,.about-story-full .section-copy,.about-area-full .section-copy{padding:80px clamp(28px,7vw,120px)}
.service-area-home .map-card,.about-area-full .map-card{height:620px;border:0}
.about-story-full .media-parallax{border-radius:0;height:680px}

/* Title banners: background video, clean typography, no content box */
.title-banner{overflow:hidden;min-height:540px;padding-top:190px;background:none!important;isolation:isolate}
.title-banner-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.title-banner:after{display:none!important}.banner-copy{background:transparent!important;padding:0!important;backdrop-filter:none!important;max-width:1050px;text-shadow:0 3px 18px rgba(0,0,0,.34)}
.banner-copy .eyebrow{color:#fff}.title-banner p{font-size:16px;color:#fff;max-width:800px}.title-banner h1{max-width:1000px}

/* Portfolio */
.portfolio-grid{grid-template-columns:repeat(4,1fr);gap:10px;align-items:start}.portfolio-grid img,.portfolio-grid img:nth-child(2),.portfolio-grid img:nth-child(5){height:360px!important;width:100%;object-fit:cover;cursor:zoom-in;transition:transform .35s ease,filter .35s ease}.portfolio-grid img:nth-child(5n+2),.portfolio-grid img:nth-child(5n+4){height:470px!important}.portfolio-grid img:hover{transform:scale(.985);filter:brightness(.8)}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.93);z-index:9998;display:grid;place-items:center;padding:50px;opacity:0;visibility:hidden;transition:.25s}.lightbox.open{opacity:1;visibility:visible}.lightbox img{max-width:min(1200px,92vw);max-height:88vh;object-fit:contain}.lightbox-close{position:absolute;top:24px;right:28px;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:#000;color:#fff;font-size:20px;cursor:pointer}

/* Contact hover */
.contact-info .info-card{transition:background .28s,border-color .28s,color .28s,transform .28s}.contact-info a.info-card:hover{background:#B30F1A;border-color:#B30F1A;color:#fff;transform:translateY(-5px)}.contact-info a.info-card:hover i,.contact-info a.info-card:hover small{color:#fff}
.footer-links a{transition:color .22s}.footer-links a:hover{color:#B30F1A}

/* Entry animation polish */
.reveal{opacity:0;transform:translateY(28px);filter:blur(3px);transition:opacity .78s ease,transform .78s cubic-bezier(.22,1,.36,1),filter .78s ease}.reveal.visible{opacity:1;transform:none;filter:blur(0)}

@media(max-width:900px){
 .topbar{height:36px}.topbar-inner{width:calc(100% - 24px);gap:18px;justify-content:space-between}.topbar-address,.topbar-hours{display:none!important}.site-header{top:36px}.brand img{width:200px!important}.nav{inset:128px 12px auto 12px}.intro-collage{height:520px}.mission-visual{background-attachment:scroll}.faq-section{background-attachment:scroll!important}.portfolio-grid{grid-template-columns:repeat(2,1fr)}.service-area-home .section-copy,.about-story-full .section-copy,.about-area-full .section-copy{padding:65px 28px}.about-story-full .media-parallax{height:520px}.lightbox{padding:24px}
}
@media(max-width:560px){
 .topbar-inner{font-size:10px}.topbar-inner a:nth-child(2){display:none}.brand img{width:180px!important;max-width:180px!important}.nav{inset:118px 10px auto 10px}.intro-collage{height:430px}.intro-collage img:first-child{width:82%;height:75%}.intro-collage img:last-child{width:66%;height:54%;border-width:7px}.mission-heading h2{font-size:38px}.portfolio-grid{grid-template-columns:repeat(2,1fr);gap:7px}.portfolio-grid img,.portfolio-grid img:nth-child(2),.portfolio-grid img:nth-child(5),.portfolio-grid img:nth-child(5n+2),.portfolio-grid img:nth-child(5n+4){height:230px!important}.title-banner{min-height:470px;padding-top:160px}.title-banner h1{font-size:40px}.flip-inner,.why-item.flip-card{min-height:270px}
}

/* ===== CABE CORP refinement v3 ===== */
/* Title banners: new MP4 + top-dark / bottom-clear gradient */
.title-banner{isolation:isolate}
.title-banner-video{z-index:-3!important}
.title-banner::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.48) 24%,rgba(0,0,0,.16) 58%,rgba(0,0,0,.04) 100%)}
.title-banner::after{display:none!important}

/* Header / footer logo parity */
.brand img,.footer-brand img{width:200px!important;max-width:200px!important;height:auto!important;object-fit:contain}

/* Full footer navigation + mobile alignment */
.footer-links a{width:max-content;max-width:100%}
@media(max-width:900px){
 footer,.footer-grid,.footer-brand,.footer-grid>div,.copyright{text-align:center}
 .footer-brand img{margin-left:auto!important;margin-right:auto!important}
 .footer-brand p{margin-left:auto;margin-right:auto}
 .footer-links{justify-items:center}
 .footer-links a,.footer-links span{justify-content:center;text-align:center;width:auto}
 .copyright{justify-content:center!important;align-items:center!important;gap:10px!important}
}

/* Animated large icons */
@keyframes cabeIconFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-7px) rotate(2deg)}}
@keyframes cabeIconPulse{0%,100%{filter:drop-shadow(0 0 0 rgba(179,15,26,0))}50%{filter:drop-shadow(0 8px 18px rgba(179,15,26,.28))}}
.why-item>i,.flip-front>i,.mission-card>i,.coming-card>i,.info-card>i,.process-step>i,.svc-top>i{animation:cabeIconFloat 3.2s ease-in-out infinite,cabeIconPulse 3.2s ease-in-out infinite;transform-origin:center}

/* Contact form image background */
.contact-form-visual{position:relative;background-image:url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078ca729862f5fc5f27.jpg')!important;background-size:cover!important;background-position:center!important;background-attachment:fixed!important;overflow:hidden}
.contact-form-visual::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.74);z-index:0}
.contact-form-visual>.container{position:relative;z-index:1}

/* About story: no vertical outer gap, fixed image requested, no parallax */
.about-story-tight{padding-top:0!important;padding-bottom:0!important}
.about-story-tight .media-parallax{background-image:url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078b4f420cdb45238d0.jpg')!important;background-attachment:scroll!important}

/* About coverage: no vertical outer gap */
.about-area-tight{padding-top:0!important;padding-bottom:0!important}

/* Process visual */
.process-visual{position:relative;background-image:url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/694030783909bce40a7e761b.jpg')!important;background-size:cover!important;background-position:center!important;background-attachment:fixed!important;overflow:hidden}
.process-visual::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.78);z-index:0}
.process-visual>.container{position:relative;z-index:1}
.process-visual .process-step{background:rgba(8,9,8,.7);backdrop-filter:blur(6px)}

/* Locations coverage: true full bleed, green background */
.locations-coverage-full{padding:0!important;background:#B30F1A!important}
.locations-coverage-full>.container{width:100%!important;max-width:none!important;margin:0!important}
.locations-coverage-full .area-grid{gap:0!important}
.locations-coverage-full .section-copy{padding:80px clamp(28px,7vw,120px)}
.locations-coverage-full .section-copy p,.locations-coverage-full .eyebrow,.locations-coverage-full .kicker-desc{color:#fff!important}
.locations-coverage-full .map-card{height:620px!important;border:0!important}

/* Home nearby section: eliminate top/bottom breathing gap while preserving internal layout */
.close-area-tight{padding-top:0!important;padding-bottom:0!important}

/* Home CTA: more editorial / striking */
.home-cta-visual{position:relative;overflow:hidden;background:#B30F1A!important;padding:0!important}
.home-cta-visual::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 25%,rgba(255,255,255,.14),transparent 34%),linear-gradient(120deg,rgba(0,0,0,.2),transparent 45%);pointer-events:none}
.home-cta-visual .cta-form-grid{position:relative;z-index:1;grid-template-columns:.68fr 1.32fr;gap:0;align-items:stretch}
.home-cta-visual .cta-copy{padding:90px clamp(28px,6vw,90px);display:flex;flex-direction:column;justify-content:center;position:relative}
.home-cta-visual .cta-copy::after{content:"";position:absolute;right:0;top:12%;bottom:12%;width:1px;background:rgba(255,255,255,.28)}
.home-cta-visual .form-wrap{padding:42px clamp(18px,4vw,62px);background:rgba(0,0,0,.14)!important}
.home-cta-visual h2{font-size:clamp(48px,5vw,78px);letter-spacing:-.045em}

/* Portfolio: balanced masonry with reliable click zoom */
.portfolio-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-auto-flow:dense;gap:10px!important;align-items:stretch!important}
.portfolio-grid .portfolio-img{height:340px!important;min-height:0!important;object-fit:cover!important;cursor:zoom-in!important;border-radius:2px;transition:transform .32s ease,filter .32s ease,box-shadow .32s ease}
.portfolio-grid .portfolio-img:nth-child(6n+2),.portfolio-grid .portfolio-img:nth-child(6n+5){grid-row:span 2;height:690px!important}
.portfolio-grid .portfolio-img:nth-child(9n+4){grid-column:span 2}
.portfolio-grid .portfolio-img:hover{transform:scale(.985);filter:brightness(.78);box-shadow:0 14px 35px rgba(0,0,0,.26)}

@media(max-width:900px){
 .contact-form-visual,.process-visual{background-attachment:scroll!important}
 .home-cta-visual .cta-form-grid{grid-template-columns:1fr}
 .home-cta-visual .cta-copy{padding:70px 28px;text-align:center}
 .home-cta-visual .cta-copy::after{display:none}
 .home-cta-visual .form-wrap{padding:20px 15px 45px}
 .portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .portfolio-grid .portfolio-img,.portfolio-grid .portfolio-img:nth-child(6n+2),.portfolio-grid .portfolio-img:nth-child(6n+5){height:300px!important;grid-row:auto!important}
 .portfolio-grid .portfolio-img:nth-child(9n+4){grid-column:auto!important}
 .locations-coverage-full .section-copy{padding:65px 28px;text-align:center}
 .locations-coverage-full .map-card{height:500px!important}
}
@media(max-width:560px){
 .portfolio-grid{gap:7px!important}
 .portfolio-grid .portfolio-img,.portfolio-grid .portfolio-img:nth-child(6n+2),.portfolio-grid .portfolio-img:nth-child(6n+5){height:230px!important}
}


/* ===== CABE CORP refinement v4 ===== */
.site-header{border-bottom:0!important;box-shadow:none!important}
.brand img,.footer-brand img{width:200px!important;max-width:200px!important}
.footer-links a:hover,.footer-links a:focus{color:#B30F1A!important}
.footer-lang-block{display:flex;flex-direction:column;gap:14px}
.footer-lang-block .lang-switch{width:max-content}
.float-tools{display:flex;flex-direction:column;gap:10px;align-items:flex-end}
.floating-lang-switch{background:rgba(13,14,13,.92)!important;border-color:rgba(255,255,255,.2)!important;box-shadow:0 14px 30px rgba(0,0,0,.28)}
.floating-lang-switch button{padding:8px 10px!important;font-size:10px!important;min-width:58px;justify-content:center}
@media(max-width:900px){.floating-lang-switch{transform:scale(.96);transform-origin:right bottom}.footer-lang-block,.footer-lang-block .lang-switch{margin-left:auto;margin-right:auto}}
.home-cta-visual h2 em{color:#000!important}
.flip-cue{margin-top:18px}.flip-cue i{font-size:16px;color:#B30F1A}.flip-back{gap:18px}.flip-back .back-icon{font-size:34px;color:#fff;animation:cabeIconFloat 3.2s ease-in-out infinite,cabeIconPulse 3.2s ease-in-out infinite}.flip-back p{max-width:260px}.flip-back .flip-cue{display:none}
.service-marquee{background:#B30F1A;overflow:hidden;padding:22px 0}.marquee-track{display:flex;align-items:center;gap:48px;white-space:nowrap;min-width:max-content;animation:serviceMarquee 24s linear infinite}.marquee-track span{font:900 clamp(22px,2.2vw,34px)/1 'Nunito Sans',sans-serif;text-transform:uppercase;color:#fff;letter-spacing:.04em}@keyframes serviceMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
/* Portfolio masonry cleanup */
.portfolio-grid{columns:4 260px!important;column-gap:10px!important;display:block!important}
.portfolio-grid .portfolio-img{display:block;width:100%!important;height:auto!important;margin:0 0 10px!important;break-inside:avoid;cursor:zoom-in!important;box-shadow:none!important;border-radius:2px}
.portfolio-grid .portfolio-img:nth-child(6n+2),.portfolio-grid .portfolio-img:nth-child(6n+5),.portfolio-grid .portfolio-img:nth-child(9n+4){grid-column:auto!important;grid-row:auto!important;height:auto!important}
.portfolio-grid .portfolio-img:hover{transform:scale(.985);filter:brightness(.82)}
@media(max-width:900px){.portfolio-grid{columns:2 220px!important;column-gap:8px!important}.portfolio-grid .portfolio-img{margin-bottom:8px!important}}
@media(max-width:560px){.portfolio-grid{columns:2 150px!important;column-gap:7px!important}.portfolio-grid .portfolio-img{margin-bottom:7px!important}}
/* Full-width landing sections */
.landing-band,.landing-contact{padding:0!important}.landing-band.light{background:#f4f4f4;color:#111}.landing-band.dark{background:#0C0C0C;color:#fff}.landing-band.green{background:#B30F1A;color:#fff}.landing-band .band-grid,.landing-contact .band-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch;width:100%}.landing-band .band-media{min-height:640px;background-size:cover;background-position:center}.landing-band .band-copy,.landing-contact .band-copy{padding:72px clamp(26px,6vw,88px);display:flex;flex-direction:column;justify-content:center}.landing-band.light .kicker-desc,.landing-band.light .band-copy p{color:#595959}.landing-band.dark .kicker-desc,.landing-band.dark .band-copy p,.landing-band.green .kicker-desc,.landing-band.green .band-copy p,.landing-band.green .band-copy .eyebrow,.landing-band.green .feature-list span{color:#fff}.landing-band.dark .eyebrow{color:#fff}.landing-band.light .feature-list span{color:#333}.landing-band.green h2 em{color:#000}.landing-feature-list{display:grid;gap:14px;margin-top:22px}.landing-feature-list div{align-items:flex-start}.landing-feature-list i{margin-top:2px}
.landing-contact{background:#080908;color:#fff}.landing-contact .landing-form-wrap{padding:30px clamp(18px,4vw,42px);display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.02)}.landing-contact .form-shell{width:100%;max-width:900px;height:748px;background:transparent!important}
.quick-links-grid{grid-template-columns:repeat(5,1fr)!important}
@media(max-width:1150px){.quick-links-grid{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:900px){.landing-band .band-grid,.landing-contact .band-grid{grid-template-columns:1fr}.landing-band .band-media{min-height:420px;order:0}.landing-band .band-copy,.landing-contact .band-copy{padding:58px 28px}.landing-contact .landing-form-wrap{padding:18px 14px 38px}.service-marquee{padding:16px 0}.marquee-track span{font-size:20px}.quick-links-grid{grid-template-columns:1fr!important}}


/* ===== CABE CORP targeted fixes v5 ===== */
/* Header logo: preserve requested 200px without height clamping */
.site-header .brand{width:200px;min-width:200px;overflow:visible}
.site-header .brand img{width:200px!important;max-width:200px!important;max-height:none!important;height:auto!important;transform:none!important}
.footer-brand img{width:200px!important;max-width:200px!important}
.site-header{border-bottom:0!important;box-shadow:none!important}

/* Meta-title language controls share the same language state */
/* Section titles: stronger entrance animation */
main h1.reveal,main h2.reveal{transform:translateY(42px) scale(.985);opacity:0;filter:blur(3px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.75,.2,1),filter .85s ease}
main h1.reveal.visible,main h2.reveal.visible{transform:none;opacity:1;filter:blur(0)}
.mission-heading h2,.mission-heading h2 em{font-weight:900!important}

/* Footer language selector directly below Information */
.footer-lang-block{margin-top:24px}
.footer-lang-block h3{margin-top:0}

/* Desktop floating translator: left side, vertical */
.float-tools{right:22px!important;left:auto!important}
.floating-lang-switch{position:fixed!important;left:18px!important;right:auto!important;bottom:28px!important;display:flex!important;flex-direction:column!important;border-radius:16px!important;padding:5px!important;gap:3px!important;align-items:stretch!important;z-index:90}
.floating-lang-switch button{width:54px!important;min-width:54px!important;height:38px!important;padding:0 7px!important;border-radius:11px!important;justify-content:center!important}

/* Locations: only the emphasized service-area phrase is black */
.locations-coverage-full .service-area-title em{color:#000!important;font-weight:900!important}

/* Mobile translator moves into topbar */
.topbar-mobile-lang{display:none}
@media(max-width:900px){
  .nav-actions>.lang-switch{display:none!important}
  .floating-lang-switch{display:none!important}
  .topbar-mobile-lang{display:flex!important;align-items:center!important;gap:3px!important;padding:2px!important;border:0!important;background:transparent!important;backdrop-filter:none!important;margin-left:auto}
  .topbar-mobile-lang button{padding:4px 6px!important;font-size:10px!important;border-radius:5px!important;min-width:auto!important;height:auto!important}
  .topbar-mobile-lang>span{color:#fff;opacity:.75;font:700 10px Montserrat,sans-serif}
  .topbar-inner{justify-content:flex-start!important}
  .topbar-inner>a:first-child{margin-right:auto}
  .site-header .brand{width:200px!important;min-width:200px!important}
  .site-header .brand img{width:200px!important;max-width:200px!important}
}
@media(max-width:560px){
  .site-header .brand{width:190px!important;min-width:190px!important}
  .site-header .brand img{width:190px!important;max-width:190px!important}
  /* requested two-by-two mobile layouts */
  .why-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .city-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .info-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .why-item.flip-card,.flip-inner{min-height:240px!important}
  .flip-front,.flip-back{padding:18px 12px!important}
  .flip-front h3{font-size:18px!important}
  .city-chip{padding:16px 12px!important;font-size:11px!important}
  .info-card{padding:18px 12px!important;min-height:150px!important;word-break:break-word}
  .topbar-inner{width:calc(100% - 18px)!important;gap:8px!important}
  .topbar-inner>a:first-child span{display:none}
}


/* ===== CABE CORP targeted fixes v6 ===== */
/* Landing titles match the main section title scale */
.landing-band .band-copy h2,.landing-contact .band-copy h2{
  font-size:clamp(38px,4.5vw,70px)!important;
  line-height:1.02!important;
  letter-spacing:-.04em!important;
  font-weight:900!important;
  text-transform:uppercase;
  margin:0 0 24px;
}

/* Landing contact: centered copy with form below */
.landing-contact .band-grid{
  grid-template-columns:1fr!important;
  text-align:center;
}
.landing-contact .band-copy{
  width:min(980px,calc(100% - 48px));
  margin:0 auto;
  padding:78px 24px 34px!important;
  align-items:center;
}
.landing-contact .band-copy>p{max-width:780px;margin-left:auto;margin-right:auto}
.landing-contact .contact-bullets{
  width:min(760px,100%);
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:28px auto 0;
  text-align:left;
}
.landing-contact .estimate-note{max-width:760px;width:100%;text-align:left}
.landing-contact .landing-form-wrap{
  width:min(980px,100%);
  margin:0 auto;
  padding:0 24px 52px!important;
  background:transparent!important;
}
.landing-contact .form-shell{margin:0 auto}

/* Full-width map directly above footer on service landings */
.landing-map-full{width:100%;height:520px;margin:0;padding:0;overflow:hidden;background:#0C0C0C}
.landing-map-full iframe{display:block;width:100%;height:100%;border:0;margin:0;padding:0}

@media(max-width:900px){
  /* More breathing room above hero content */
  .hero{align-items:start!important;padding-top:0}
  .hero-content{padding-top:220px!important;padding-bottom:70px!important}

  /* Move hamburger/menu control to the far right */
  .nav-wrap{gap:12px!important}
  .nav-actions{margin-left:auto!important;justify-content:flex-end!important}
  .menu-toggle{margin-left:auto!important;padding:10px 4px 10px 18px!important}
  .nav{left:64px!important;right:10px!important;inset-block-start:128px!important}

  /* More space above internal banner copy */
  .title-banner{padding-top:215px!important;padding-bottom:70px!important;align-items:flex-end!important}
  .banner-copy{padding-top:12px!important}

  /* Prevent home CTA overflow */
  .home-cta-visual,.home-cta-visual .cta-form-grid,.home-cta-visual .cta-copy,.home-cta-visual .form-wrap{min-width:0!important;max-width:100%!important;width:100%!important}
  .home-cta-visual .cta-copy{padding:64px 22px!important;overflow:hidden}
  .home-cta-visual h2{font-size:clamp(34px,10vw,48px)!important;line-height:1.02!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;max-width:100%!important}
  .home-cta-visual .cta-copy p{max-width:100%!important;overflow-wrap:break-word}
  .home-cta-visual .form-wrap{padding:16px 8px 38px!important;overflow:hidden}
  .home-cta-visual .form-shell,.home-cta-visual iframe{max-width:100%!important;width:100%!important}

  /* Landing contact remains stacked and centered on mobile */
  .landing-contact .band-copy{width:100%;padding:58px 22px 26px!important}
  .landing-contact .landing-form-wrap{width:100%;padding:0 8px 36px!important}
  .landing-contact .contact-bullets{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}
  .landing-map-full{height:430px}
}

@media(max-width:560px){
  /* Slightly smaller logo on phones */
  .site-header .brand{width:150px!important;min-width:150px!important}
  .site-header .brand img{width:150px!important;max-width:150px!important}
  .nav-wrap{width:calc(100% - 18px)!important}
  .menu-toggle{font-size:24px!important;padding-right:2px!important}
  .nav{left:56px!important;right:8px!important;inset-block-start:116px!important}

  .hero-content{padding-top:205px!important;padding-left:4px!important;padding-right:4px!important}
  .title-banner{padding-top:205px!important;padding-bottom:58px!important}
  .title-banner .container{width:calc(100% - 30px)!important}

  .landing-band .band-copy h2,.landing-contact .band-copy h2{font-size:clamp(36px,10.5vw,46px)!important}
  .landing-contact .contact-bullets{grid-template-columns:1fr!important;text-align:center}
  .landing-contact .contact-bullets span{justify-content:center}
  .landing-contact .estimate-note{text-align:center}
  .landing-map-full{height:380px}
}


/* ===== CABE CORP responsive refinement v7 ===== */
/* Requested hover states */
.landing-contact .contact-bullets a{
  display:flex;gap:12px;align-items:center;
  font:700 13px Montserrat,sans-serif;
  color:#fff;transition:color .25s ease,transform .25s ease;
}
.landing-contact .contact-bullets a i{color:#B30F1A;transition:color .25s ease}
.landing-contact .contact-bullets a:hover,.landing-contact .contact-bullets a:focus{color:#B30F1A;transform:translateY(-1px)}
.landing-contact .contact-bullets a:hover i,.landing-contact .contact-bullets a:focus i{color:#fff}
footer .footer-links a{transition:color .24s ease,transform .24s ease}
footer .footer-links a:hover,footer .footer-links a:focus{color:#B30F1A!important;transform:translateX(3px)}

/* About services ticker: clear separators, continuous loop preserved */
.service-marquee .marquee-track{gap:0!important}
.service-marquee .marquee-track span{display:inline-flex;align-items:center;gap:34px;margin-right:34px}
.service-marquee .marquee-track span::after{content:'•';display:inline-block;color:#fff;font-size:.75em;line-height:1;opacity:.9}

/* More breathing room above hero and inner-title content */
.hero-content{padding-top:clamp(150px,12vh,210px)!important}
.title-banner{padding-top:clamp(245px,20vh,320px)!important;padding-bottom:72px!important;align-items:flex-end!important}

/* Structural safeguards required by responsive brief */
html,body{max-width:100%}
img,video,iframe,svg{max-width:100%}
iframe{display:block}
.container,.nav-wrap,.band-grid,.cta-form-grid,.intro-grid,.area-grid,.contact-grid,.service-landing{min-width:0}
.section-copy,.band-copy,.cta-copy,.form-wrap,.landing-form-wrap,.service-copy{min-width:0}
.hero h1,.title-banner h1,.section-copy h2,.section-head h2,.mission-card h2,.coming-card h2,.landing-band h2,.landing-contact h2{
  overflow-wrap:normal;word-break:normal;hyphens:none;
}
.btn{max-width:100%;white-space:normal;text-align:center}
.form-shell,.form-shell iframe,.map-card,.map-card iframe,.map-full,.map-full iframe,.landing-map-full,.landing-map-full iframe{max-width:100%;width:100%}

/* Laptop / desktop fluidity */
@media (max-width:1440px){
  .nav-wrap{width:min(1380px,calc(100% - 28px));gap:18px}
  .nav{gap:16px}
  .nav>a,.services-menu>button{font-size:13px}
  .hero h1{font-size:clamp(54px,6.2vw,88px)}
  .section{padding-block:clamp(78px,7vw,100px)}
}

/* Activate responsive navigation before collisions on small laptops / zoom */
@media (max-width:1120px){
  .site-header{position:absolute}
  .nav-wrap{min-height:96px;width:calc(100% - 28px)}
  .menu-toggle{display:block}
  .nav-actions{margin-left:auto}
  .nav{
    position:fixed!important;
    top:132px!important;right:14px!important;left:auto!important;bottom:auto!important;
    width:min(390px,calc(100vw - 28px));
    max-height:calc(100dvh - 148px);
    overflow:auto;
    background:#0C0C0C;
    border:1px solid rgba(255,255,255,.12);
    padding:22px;
    display:none;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    box-shadow:0 22px 55px rgba(0,0,0,.32);
  }
  .nav.open{display:flex}
  .nav>a,.services-menu>button{width:100%;padding:15px 2px;text-align:left;font-size:13px}
  .nav-actions>.lang-switch{display:flex}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}
  .section-head{gap:34px}
}

/* Tablet landscape / intermediate widths */
@media (max-width:1024px){
  .container{width:min(var(--max),calc(100% - 36px))}
  .hero{min-height:min(820px,100svh)}
  .hero-content{padding-top:clamp(190px,24vh,245px)!important;padding-bottom:70px}
  .hero h1{font-size:clamp(48px,8vw,72px);line-height:.98}
  .hero p{font-size:16px;max-width:760px}
  .title-banner{min-height:560px;padding-top:clamp(250px,28vh,310px)!important}
  .title-banner h1{font-size:clamp(42px,7vw,66px)}
  .intro-grid,.area-grid,.contact-grid,.service-landing,.two-col{gap:44px}
  .section-copy h2,.section-head h2,.mission-card h2,.coming-card h2,.landing-band .band-copy h2,.landing-contact .band-copy h2{font-size:clamp(38px,5.6vw,58px)!important}
  .why-grid,.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .city-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .landing-band .band-media{min-height:540px}
  .map-card,.map-card.large{height:500px}
}

/* Tablet portrait: do not behave like desktop squeezed */
@media (max-width:900px){
  .container{width:min(var(--max),calc(100% - 30px))}
  .topbar{height:36px}
  .site-header{top:36px}
  .nav{top:128px!important;right:10px!important;width:min(380px,calc(100vw - 20px));max-height:calc(100dvh - 140px)}
  .hero{min-height:max(720px,100svh)}
  .hero-content{padding-top:230px!important;padding-bottom:72px!important}
  .title-banner{min-height:570px;padding-top:260px!important;padding-bottom:64px!important}
  .title-banner .container{width:calc(100% - 34px)}
  .intro-grid,.area-grid,.contact-grid,.service-landing,.cta-form-grid,.two-col,.section-head{grid-template-columns:1fr;gap:34px}
  .section-head{align-items:start}
  .media-parallax{height:480px;background-attachment:scroll}
  .mission-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .map-card,.map-card.large{height:440px}
  .form-shell{height:748px}

  /* Service landing image is ALWAYS above its copy on tablet/mobile */
  .landing-band .band-grid{grid-template-columns:1fr!important}
  .landing-band .band-media{order:0!important;min-height:440px}
  .landing-band .band-copy{order:1!important}
  .landing-band .band-copy{padding:58px 28px!important}
  .landing-contact .band-copy{padding-inline:28px!important}
}

/* Small tablet / large mobile */
@media (max-width:767px){
  .section{padding-block:72px}
  .hero h1{font-size:clamp(44px,10.5vw,62px)}
  .hero p{font-size:15px;line-height:1.65}
  .btn{min-height:50px;padding-inline:20px}
  .service-grid{grid-template-columns:1fr}
  .city-grid,.info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-grid{grid-template-columns:1fr;text-align:center}
  .footer-brand img{margin-inline:auto}
  .footer-brand p{margin-inline:auto}
  .footer-links{justify-items:center}
  .footer-links a,.footer-links span{justify-content:center;text-align:center}
  .copyright{justify-content:center;text-align:center;flex-direction:column}
  .landing-contact .contact-bullets{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .landing-contact .contact-bullets a,.landing-contact .contact-bullets>span{justify-content:center;text-align:center;min-width:0;overflow-wrap:anywhere}
  .service-marquee .marquee-track span{font-size:19px;gap:25px;margin-right:25px}
}

/* Mobile */
@media (max-width:599px){
  .container{width:calc(100% - 24px)}
  .topbar-inner{width:calc(100% - 18px)!important}
  .nav-wrap{width:calc(100% - 18px)!important;min-height:82px}
  .nav{top:118px!important;right:8px!important;width:calc(100vw - 16px);max-height:calc(100dvh - 126px);padding:18px}
  .site-header .brand{width:148px!important;min-width:148px!important}
  .site-header .brand img{width:148px!important;max-width:148px!important}
  .menu-toggle{font-size:24px}
  .hero{min-height:max(730px,100svh)}
  .hero-content{padding-top:235px!important;padding-inline:2px!important;padding-bottom:66px!important}
  .hero h1{font-size:clamp(40px,12vw,52px);line-height:.98;letter-spacing:-.035em}
  .hero p{font-size:14px}
  .title-banner{min-height:540px;padding-top:250px!important;padding-bottom:54px!important}
  .title-banner h1{font-size:clamp(38px,11vw,48px);line-height:1}
  .title-banner p{font-size:14px}
  .section-copy h2,.section-head h2,.mission-card h2,.coming-card h2,.landing-band .band-copy h2,.landing-contact .band-copy h2{font-size:clamp(34px,10vw,44px)!important;line-height:1.03!important}
  .section-copy p,.mission-card p,.why-item p,.service-card p,.process-step p,.faq-answer p,.coming-card p,.landing-band .band-copy p{font-size:14px}
  .why-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .city-grid,.info-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .why-item.flip-card,.flip-inner{min-height:235px!important}
  .flip-front,.flip-back{padding:16px 10px!important}
  .flip-front h3{font-size:17px!important}
  .city-chip{padding:15px 10px;font-size:11px}
  .info-card{padding:17px 11px;min-height:145px;overflow-wrap:anywhere}
  .landing-band .band-media{min-height:330px!important}
  .landing-band .band-copy{padding:48px 20px!important}
  .landing-contact .band-copy{padding:52px 18px 24px!important}
  .landing-contact .landing-form-wrap{padding:0 4px 32px!important}
  .landing-contact .contact-bullets{grid-template-columns:1fr!important}
  .landing-contact .form-shell{height:748px}
  .landing-map-full{height:360px}
  .map-card,.map-card.large,.map-full{height:360px}
  .portfolio-grid{columns:2 145px!important;column-gap:7px!important}
  .portfolio-grid .portfolio-img{margin-bottom:7px!important}
}

/* Small phones */
@media (max-width:430px){
  .site-header .brand{width:136px!important;min-width:136px!important}
  .site-header .brand img{width:136px!important;max-width:136px!important}
  .hero-content{padding-top:225px!important}
  .hero h1{font-size:clamp(37px,11.5vw,47px)}
  .title-banner{padding-top:240px!important}
  .section{padding-block:64px}
  .btn-row{gap:10px}.btn-row .btn{width:100%}
  .service-marquee .marquee-track span{font-size:17px;gap:20px;margin-right:20px}
}

@media (max-width:360px){
  .site-header .brand{width:126px!important;min-width:126px!important}
  .site-header .brand img{width:126px!important;max-width:126px!important}
  .hero-content{padding-top:218px!important}
  .hero h1{font-size:36px}
  .title-banner h1{font-size:36px}
  .why-grid,.city-grid,.info-grid{grid-template-columns:1fr!important}
  .portfolio-grid{columns:1 100%!important}
}

/* Landscape with limited vertical room: preserve design without clipping */
@media (orientation:landscape) and (max-height:620px){
  .hero{min-height:700px}
  .hero-content{padding-top:190px!important;padding-bottom:54px!important}
  .title-banner{min-height:510px;padding-top:220px!important;padding-bottom:48px!important}
  .nav{max-height:calc(100dvh - 115px)}
}

/* ===== CABE CORP refinement v8: wider home CTA ===== */
.home-cta-visual .cta-form-grid{
  width:min(1660px,calc(100% - 56px))!important;
  max-width:none!important;
  grid-template-columns:minmax(520px,.92fr) minmax(620px,1.08fr)!important;
  gap:0!important;
}
.home-cta-visual .cta-copy{
  padding:88px clamp(34px,4.2vw,72px)!important;
}
.home-cta-visual .cta-copy h2{
  max-width:720px!important;
  font-size:clamp(48px,4.45vw,74px)!important;
  line-height:1.02!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
.home-cta-visual .cta-copy>p:not(.kicker-desc){max-width:560px!important}
.home-cta-visual .form-wrap{
  padding:42px clamp(30px,4vw,64px)!important;
}
.home-cta-visual .form-shell{width:100%!important;max-width:none!important}

@media (max-width:1240px){
  .home-cta-visual .cta-form-grid{
    width:calc(100% - 36px)!important;
    grid-template-columns:minmax(430px,.9fr) minmax(0,1.1fr)!important;
  }
  .home-cta-visual .cta-copy{padding:76px 36px!important}
  .home-cta-visual .cta-copy h2{font-size:clamp(44px,4.8vw,64px)!important}
  .home-cta-visual .form-wrap{padding:34px 26px!important}
}

@media (max-width:900px){
  .home-cta-visual .cta-form-grid{
    width:100%!important;
    grid-template-columns:1fr!important;
  }
  .home-cta-visual .cta-copy{
    padding:64px 28px 36px!important;
    text-align:center!important;
  }
  .home-cta-visual .cta-copy h2,
  .home-cta-visual .cta-copy>p:not(.kicker-desc){
    max-width:760px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .home-cta-visual .form-wrap{padding:10px 18px 42px!important}
}

@media (max-width:599px){
  .home-cta-visual .cta-copy{padding:56px 18px 28px!important}
  .home-cta-visual .cta-copy h2{font-size:clamp(36px,10.5vw,48px)!important}
  .home-cta-visual .form-wrap{padding:4px 8px 34px!important}
}


/* ===== CABE CORP refinement v9: mobile spacing + faq update ===== */

@media (max-width: 900px){
  .site-header{top:48px!important}
  .nav-wrap{padding-top:10px!important;min-height:102px!important}
  .nav{top:138px!important}
}

@media (max-width: 599px){
  .site-header{top:48px!important}
  .nav-wrap{padding-top:10px!important;min-height:88px!important}
  .nav{top:132px!important;right:8px!important;width:calc(100vw - 16px)!important}
  .topbar{height:42px!important}
  .topbar-inner{min-height:42px!important}
}


/* Southern Home Improvement overrides */
:root{--green:#B30F1A;--black:#0C0C0C;--ink:#0C0C0C;--white:#fff;--light:#f4f4f4;--line:rgba(255,255,255,.14)}
body{background:#0C0C0C}
.topbar{background:#0C0C0C!important;color:#fff!important}
.site-header .brand img{width:230px!important;max-width:230px!important;max-height:none!important;height:auto!important}
.footer-brand img{width:230px!important;max-width:230px!important;height:auto!important;object-fit:contain}
footer{background:#0C0C0C!important;color:#fff!important}
footer h3,.footer-brand p,.footer-links a,.footer-links span,.copyright{color:#fff!important}
.footer-links i{color:#B30F1A!important}.copyright{border-top-color:rgba(255,255,255,.18)!important}
.hero-gradient{background:linear-gradient(to bottom,rgba(0,0,0,.05) 0%,rgba(0,0,0,.18) 35%,rgba(17,24,32,.62) 72%,#0C0C0C 100%)!important}
.hero + .intro{background:linear-gradient(to bottom,#0C0C0C 0%,#151515 22%,#f4f4f4 68%,#f4f4f4 100%)!important;padding-top:70px!important;color:#111!important}
.hero + .intro .section-copy p{color:#5f6670!important}.hero + .intro .kicker-desc{color:#777!important}
.btn.green{background:#B30F1A!important;border-color:#B30F1A!important}.mission-card.vision,.cta-form{background:#0C0C0C!important}
.service-card:hover{border-color:#B30F1A!important}.cursor-dot{background:#B30F1A!important}.cursor-ring{border-color:#B30F1A!important}
.site-room-card,.site-map-placeholder,.site-service-visual,.site-contact-panel,.site-about-visual{display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:16px;background:linear-gradient(135deg,#0C0C0C,#0C0C0C);color:#fff;border:1px solid rgba(255,255,255,.14);padding:34px}
.site-room-card i,.site-map-placeholder i,.site-service-visual i,.site-contact-panel i,.site-about-visual i{font-size:54px;color:#B30F1A}
.site-room-card span,.site-service-visual span{font:900 16px Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.08em}.site-room-primary{position:absolute!important;left:0;top:0;width:72%;height:82%;z-index:1}.site-room-secondary{position:absolute!important;right:0;bottom:0;width:58%;height:58%;z-index:2;border:10px solid #0C0C0C}
.site-map-placeholder{min-height:420px}.map-full-placeholder{min-height:520px;width:100%}.site-contact-panel{min-height:360px}.site-service-visual{min-height:100%;height:100%;border-radius:4px}.site-about-visual{min-height:520px}
.landing-photo.site-service-visual{background:linear-gradient(135deg,#0C0C0C,#0C0C0C)!important}
.title-banner .eyebrow,.eyebrow,.svc-top i,.service-card b,.icon-points i,.feature-list i,.contact-bullets i,.why-item i,.process-step span,.city-chip i,.coming-card>i{color:#B30F1A}
@media(max-width:900px){.site-header .brand img{width:200px!important;max-width:200px!important}.footer-brand img{width:230px!important;max-width:230px!important}}
@media(max-width:560px){.site-header .brand img{width:180px!important;max-width:180px!important}.footer-brand img{width:230px!important;max-width:230px!important}.hero + .intro{background:linear-gradient(to bottom,#0C0C0C 0%,#151515 13%,#f4f4f4 48%,#f4f4f4 100%)!important}}


/* --- Southern Home Improvement custom refinements --- */
:root{--site-black:#0C0C0C;--site-black-2:#151515;--site-black-3:#1d1d1d;--site-red:#B30F1A;}
.topbar{position:absolute!important;top:0;left:0;width:100%;background:transparent!important;color:#fff!important;z-index:70;backdrop-filter:none!important;border-bottom:0!important}
.topbar-inner{min-height:36px;text-shadow:0 2px 10px rgba(0,0,0,.25)}
.site-header{top:36px!important}
.hero-gradient{background:linear-gradient(to bottom,rgba(0,0,0,.14) 0%,rgba(0,0,0,.36) 28%,rgba(0,0,0,.68) 70%,#0C0C0C 100%)!important}
.title-banner::before{background:linear-gradient(180deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.56) 24%,rgba(0,0,0,.28) 58%,rgba(0,0,0,.08) 100%)!important}
.btn.outline{background:rgba(0,0,0,.3)!important;border-color:rgba(255,255,255,.45)!important}
.service-card:hover,.mission-section,.mission-card,.info-card,.coming-card,.home-cta-visual .form-wrap,.nav.open,.site-contact-panel,.estimate-note{background:linear-gradient(135deg,#101010,#1b1b1b)!important}
.mission-card.vision,.cta-form{background:#0C0C0C!important}
.intro{background:linear-gradient(to bottom,#161616 0%,#0C0C0C 17%,#0C0C0C 100%)!important;padding-top:78px!important}
.intro .section-copy p,.intro .kicker-desc,.intro .icon-points span{color:rgba(255,255,255,.86)!important}
.intro .section-copy h2,.intro .section-copy .eyebrow,.intro .icon-points i{color:#fff!important}
.intro .icon-points i{color:var(--site-red)!important}
.intro-collage{height:720px!important}
.intro-collage img{border-radius:2px;box-shadow:0 24px 60px rgba(0,0,0,.3)}
.intro-collage img:first-child{left:0!important;top:0!important;width:76%!important;height:84%!important}
.intro-collage img:last-child{right:0!important;bottom:0!important;width:62%!important;height:60%!important;border:10px solid #0C0C0C!important}
.btn{position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;clip-path:polygon(12px 0,100% 0,calc(100% - 12px) 100%,0 100%)!important;border-radius:0!important;padding:0 26px!important;min-height:54px!important}
.btn i{font-size:13px;line-height:1;flex:0 0 auto}
.btn:after{content:"";position:absolute;inset:0;border:1px solid currentColor;opacity:.08;pointer-events:none;clip-path:inherit}
.btn.green{background:#B30F1A!important;border-color:#B30F1A!important;color:#fff!important}
.btn.outline:hover,.btn.green:hover{color:#fff!important;border-color:#B30F1A!important}
.btn.green:hover{background:#D01826!important}.btn.outline:hover{background:rgba(179,15,26,.18)!important}
.footer-brand img{width:230px!important;max-width:230px!important}
.topbar,.nav>a,.services-menu>button,.topbar-inner span,.topbar-inner a{color:#fff!important}
@media(max-width:900px){.nav{background:linear-gradient(135deg,#121212,#191919)!important}.site-header{top:36px!important}.nav{inset:128px 12px auto 12px!important}.intro-collage{height:580px!important}}
@media(max-width:560px){.site-header{top:36px!important}.nav{inset:118px 10px auto 10px!important}.intro{padding-top:64px!important}.intro-collage{height:440px!important}.intro-collage img:first-child{width:82%!important;height:76%!important}.intro-collage img:last-child{width:68%!important;height:56%!important;border-width:8px!important}.topbar-inner{justify-content:center!important}}

/* --- Request round refinements --- */
.intro{background:#0C0C0C!important}
.topbar-inner{justify-content:flex-start!important;text-align:left!important;padding-left:6px!important;gap:22px!important}
.topbar-inner>*{justify-content:flex-start!important;text-align:left!important}

/* Button hover states on white */
.btn:before{background:#fff!important}
.btn.green:hover{color:#0C0C0C!important;border-color:#fff!important;background:#B30F1A!important}
.btn.outline:hover{color:#B30F1A!important;border-color:#fff!important;background:rgba(179,15,26,.08)!important}
.btn.green:hover i,.btn.green:hover span{color:#0C0C0C!important}
.btn.outline:hover i,.btn.outline:hover span{color:#B30F1A!important}

/* Services section background image with black parallax filter */
#services{position:relative;overflow:hidden;background:none!important}
#services::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.84),rgba(0,0,0,.84)),url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/6940307897c0231a472faf47.jpg') center/cover fixed no-repeat;z-index:0}
#services>.container{position:relative;z-index:1}
#services .section-head .eyebrow,#services .section-head h2,#services .section-head p{color:#fff!important}
#services .section-head h2 em{color:#B30F1A!important}
#services .service-card{background:rgba(12,12,12,.88)!important;backdrop-filter:blur(2px);border-color:rgba(255,255,255,.18)!important}
#services .service-card:hover{background:rgba(255,255,255,.12)!important}
#services .service-card p{color:rgba(255,255,255,.82)!important}

/* Mission section black overlay image */
.mission-section{position:relative;overflow:hidden;background:none!important}
.mission-section::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.86),rgba(0,0,0,.88)),url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078c64e85365e30c9b3.jpg') center/cover no-repeat;z-index:0}
.mission-section>.container{position:relative;z-index:1}
.mission-section .mission-heading .eyebrow,.mission-section .mission-heading p,.mission-section .mission-heading h2{color:#fff!important}
.mission-section .mission-heading h2 em{color:#B30F1A!important}
.mission-card{background:rgba(12,12,12,.85)!important;border-color:rgba(255,255,255,.18)!important;backdrop-filter:blur(5px)}
.mission-card.vision{background:rgba(179,15,26,.85)!important}
.mission-card p,.mission-card .kicker-desc{color:rgba(255,255,255,.88)!important}

/* Service area section */
.service-area-home{background:#0C0C0C!important}
.service-area-home .section-copy h2,.service-area-home .section-copy p,.service-area-home .section-copy .eyebrow,.service-area-home .section-copy .kicker-desc{color:#fff!important}
.service-area-home .section-copy h2 em{color:#B30F1A!important}
.service-area-home .map-card{background:#fff;border-color:rgba(255,255,255,.22)!important;border-radius:4px;box-shadow:0 24px 55px rgba(0,0,0,.22)}

/* CTA southern form */
.site-form-shell{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);padding:30px;border-radius:4px;backdrop-filter:blur(8px);height:100%}
.site-form-heading h3{margin:8px 0 12px;font:900 clamp(24px,2.2vw,34px)/1.05 'Nunito Sans',sans-serif;text-transform:uppercase;color:#fff}
.site-form-heading p{margin:0 0 22px;color:rgba(255,255,255,.84)!important;font:500 14px/1.75 Montserrat,sans-serif}
.site-contact-form{display:grid;gap:16px}
.site-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.site-contact-form label{display:grid;gap:8px}
.site-contact-form label span{font:800 11px/1.2 Montserrat,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#fff}
.site-contact-form input,.site-contact-form select,.site-contact-form textarea{width:100%;background:#fff;border:1px solid rgba(255,255,255,.25);padding:14px 14px;color:#1b1b1b;font:600 13px/1.4 Montserrat,sans-serif;outline:none;border-radius:2px}
.site-contact-form textarea{min-height:150px;resize:vertical}
.site-contact-form input:focus,.site-contact-form select:focus,.site-contact-form textarea:focus{border-color:#B30F1A;box-shadow:0 0 0 3px rgba(179,15,26,.18)}
.site-contact-form .btn{justify-self:start}

/* Footer red with black details and white icons */
footer{position:relative;background:#B30F1A!important;color:#fff!important;overflow:hidden}
footer::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 18%,rgba(0,0,0,.32),transparent 28%),radial-gradient(circle at 86% 22%,rgba(0,0,0,.28),transparent 22%),linear-gradient(135deg,rgba(0,0,0,.08),rgba(0,0,0,.18));pointer-events:none}
footer>.container,.copyright{position:relative;z-index:1}
footer h3{color:#0C0C0C!important}
.footer-brand p,.footer-links a,.footer-links span,.copyright{color:#fff!important}
.footer-links i,.copyright i{color:#fff!important}
.footer-links a:hover,.footer-links a:focus{color:#0C0C0C!important}
.copyright{border-top:1px solid rgba(0,0,0,.35)!important}

@media(max-width:900px){
  .site-field-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .topbar-inner{padding-left:0!important;gap:12px!important}
  #services::before{background-attachment:scroll}
  .site-form-shell{padding:22px}
  .site-contact-form .btn{justify-self:stretch}
}

@media(max-width:560px){.topbar-inner{justify-content:flex-start!important}}

/* --- Final requested refinements --- */
/* Welcome: solid black only, no gradient */
.intro,
.hero + .intro{
  background:#0C0C0C !important;
  background-image:none !important;
}

/* Topbar alignment */
.topbar-inner,
.topbar-inner > *,
.topbar-inner a,
.topbar-inner > span{
  justify-content:flex-start !important;
  text-align:left !important;
}
.topbar-inner{padding-left:6px !important; gap:22px !important}

/* Home services hover lift */
#services .service-card{
  transition:transform .32s cubic-bezier(.2,.7,.2,1), box-shadow .32s ease, background .32s ease !important;
}
#services .service-card:hover{
  transform:translateY(-14px) !important;
  box-shadow:0 24px 44px rgba(0,0,0,.28) !important;
}

/* Vision label white */
.mission-card.vision .eyebrow{color:#fff !important}

/* Why section: remove green feel, use black with black/red details */
.why{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 14% 18%, rgba(179,15,26,.10), transparent 18%),
    radial-gradient(circle at 86% 20%, rgba(0,0,0,.16), transparent 20%),
    radial-gradient(circle at 18% 82%, rgba(0,0,0,.12), transparent 18%),
    linear-gradient(180deg, #f2f2f2 0%, #e8e8e8 100%) !important;
  color:#161616 !important;
}
.why .eyebrow,
.why .section-head h2 em,
.why .why-item i,
.why .flip-front > i,
.why .flip-back .back-icon{
  color:#0C0C0C !important;
}
.why .kicker-desc,
.why .section-copy p,
.why .why-item p{color:#505050 !important}
.why-grid{gap:16px !important}
.why-item,
.why-item.flip-card .flip-front,
.why-item.flip-card .flip-back{
  background:
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(241,246,252,.98)),
    radial-gradient(circle at top right, rgba(179,15,26,.10), transparent 30%) !important;
  border:1px solid rgba(0,0,0,.12) !important;
  box-shadow:0 16px 34px rgba(0,0,0,.08);
}
.why-item.flip-card .flip-front::after,
.why-item.flip-card .flip-back::after{
  content:"";
  position:absolute;
  inset:auto 16px 16px auto;
  width:48px;
  height:48px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(179,15,26,.16), rgba(0,0,0,.08));
  pointer-events:none;
}
.why-item h3,.why .section-head h2{color:#161616 !important}
.why .flip-cue i{color:#B30F1A !important}

/* FAQ section: new image with red filter */
.faq-section{
  background-image:url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078b4f42078ce5238fe.jpg') !important;
  background-size:cover !important;
  background-position:center !important;
  background-attachment:fixed !important;
}
.faq-section::before{
  background:linear-gradient(rgba(179,15,26,.82), rgba(123,59,18,.78)) !important;
}

/* Home map: remove extra vertical spacing */
.service-area-home,
.service-area-home .area-grid,
.service-area-home .map-card{
  margin-top:0 !important;
  margin-bottom:0 !important;
}
.service-area-home .area-grid{align-items:stretch !important}
.service-area-home .section-copy{padding-top:52px !important; padding-bottom:52px !important}
.service-area-home .map-card{
  min-height:620px !important;
  height:100% !important;
  box-shadow:none !important;
  border-radius:0 !important;
}
.service-area-home .map-card iframe{display:block !important}

/* CTA section: red italic + parallax image */
.home-cta-visual{
  position:relative;
  overflow:hidden;
  background:none !important;
}
.home-cta-visual::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(rgba(0,0,0,.84), rgba(0,0,0,.84)),
    url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078ca729862f5fc5f27.jpg') center/cover fixed no-repeat !important;
  pointer-events:none;
}
.home-cta-visual .cta-form-grid{position:relative;z-index:1}
.home-cta-visual h2 em{color:#B30F1A !important}

/* Button hover on white backgrounds: icon/text red or black */
.btn.outline:hover,
.btn.green:hover{
  background:#fff !important;
  border-color:#fff !important;
}
.btn.green:hover,
.btn.green:hover span,
.btn.green:hover i{color:#0C0C0C !important}
.btn.outline:hover,
.btn.outline:hover span,
.btn.outline:hover i{color:#B30F1A !important}

/* Footer titles white */
footer h3{color:#fff !important}

@media (max-width:900px){
  .faq-section{background-attachment:scroll !important}
  .home-cta-visual::before{background-attachment:scroll !important}
}
@media (max-width:560px){
  .topbar-inner{padding-left:0 !important; gap:12px !important}
  .service-area-home .section-copy{padding-top:38px !important; padding-bottom:38px !important}
  .service-area-home .map-card{min-height:420px !important}
}

/* --- Footer / FAQ / Why / WhatsApp refinements --- */
/* Decorative footer details */
footer::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 7% 20%, rgba(0,0,0,.34) 0 80px, transparent 82px),
    radial-gradient(circle at 94% 76%, rgba(0,0,0,.28) 0 120px, transparent 122px),
    linear-gradient(125deg, transparent 0 15%, rgba(0,0,0,.16) 15% 18%, transparent 18% 48%, rgba(0,0,0,.12) 48% 51%, transparent 51% 100%),
    linear-gradient(35deg, transparent 0 70%, rgba(0,0,0,.13) 70% 73%, transparent 73% 100%) !important;
  pointer-events:none;
}
footer::after{
  content:"";
  position:absolute;
  left:-5%;
  right:-5%;
  bottom:34px;
  height:90px;
  background:
    repeating-linear-gradient(135deg, rgba(0,0,0,.16) 0 2px, transparent 2px 24px);
  opacity:.75;
  transform:skewY(-1.5deg);
  pointer-events:none;
}
footer>.container,.copyright{position:relative;z-index:2}

/* Floating WhatsApp southern button - intentionally no link/action */
.whatsapp-southern{
  background:#25D366 !important;
  color:#fff !important;
  cursor:default !important;
}
.whatsapp-southern:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(0,0,0,.28)}

/* FAQ content: black + white */
.faq-section .section-copy .eyebrow{color:#0C0C0C !important}
.faq-section .section-copy .kicker-desc{color:#fff !important}
.faq-section .section-copy h2{color:#fff !important}
.faq-section .section-copy h2 em{color:#0C0C0C !important}
.faq-section .faq-item{border-bottom-color:rgba(255,255,255,.55) !important}
.faq-section .faq-item button{color:#fff !important}
.faq-section .faq-item button i{color:#0C0C0C !important}
.faq-section .faq-answer p{color:#fff !important}

/* Why section: clean flip backs, no odd background or lower-right icon/detail */
.why-item.flip-card .flip-front::after,
.why-item.flip-card .flip-back::after{display:none !important;content:none !important}
.why-item.flip-card .flip-back{
  background:transparent !important;
  border:1px solid rgba(0,0,0,.24) !important;
  box-shadow:none !important;
}
.why-item.flip-card .flip-back p{color:#0C0C0C !important;font-weight:600}
.why-item.flip-card .flip-back .back-icon{color:#B30F1A !important}
.why .section-head h2{color:#0C0C0C !important}
.why .section-head h2 em{color:#B30F1A !important}
.why .section-head .eyebrow{color:#B30F1A !important}

/* Remove any residual green from this section */
.why .flip-front>i,.why .flip-back>i,.why .flip-cue i{color:#B30F1A !important}

/* --- Requested visual refinements v5 --- */
:root{--site-black:#0C0C0C;--site-red:#B30F1A;--site-light:#ededed;--site-light-2:#f6f6f6;}

/* Title banners: shared new image */
.title-banner{
  background-image:url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078b4f42078ce5238fe.jpg') !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}
.title-banner-video{display:none !important}
.title-banner::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(180deg,rgba(0,0,0,.78),rgba(0,0,0,.48)) !important;
  z-index:-1 !important;
  pointer-events:none !important;
}

/* Welcome section: wider images and white copy */
.intro-grid{grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr) !important;gap:54px !important}
.intro-collage{height:740px !important}
.intro-collage img:first-child{width:84% !important;height:86% !important}
.intro-collage img:last-child{width:70% !important;height:61% !important}
.intro .section-copy p,.intro .section-copy .kicker-desc,.intro .icon-points span{color:#fff !important}

/* Flip cards: the card face itself rotates with all background details */
.why-item.flip-card{background:transparent !important;box-shadow:none !important}
.why-item.flip-card .flip-inner{transform-style:preserve-3d !important}
.why-item.flip-card .flip-front,
.why-item.flip-card .flip-back{
  overflow:hidden !important;
  background:
    radial-gradient(circle at 16% 18%, rgba(179,15,26,.18) 0 34px, transparent 36px),
    radial-gradient(circle at 86% 82%, rgba(0,0,0,.12) 0 54px, transparent 56px),
    linear-gradient(145deg,#ffffff 0%,#f2f2f2 100%) !important;
  border:1px solid rgba(0,0,0,.20) !important;
  box-shadow:0 16px 34px rgba(0,0,0,.10) !important;
}
.why-item.flip-card .flip-front::after,
.why-item.flip-card .flip-back::after{display:none !important;content:none !important}
.why-item.flip-card .flip-back p{color:#0C0C0C !important;font-weight:700 !important}
.why .section-head h2{color:#0C0C0C !important}
.why .section-head h2 em{color:#B30F1A !important}

/* About - first editorial image and black section */
.about-story-full{background:#0C0C0C !important;color:#fff !important}
.about-story-full .section-copy p,.about-story-full .section-copy .kicker-desc{color:#fff !important}
.about-story-full .section-copy h2{color:#fff !important}
.about-story-full .section-copy h2 em,.about-story-full .eyebrow{color:#B30F1A !important}
.about-story-full .site-about-visual{
  background:
    linear-gradient(rgba(0,0,0,.22),rgba(0,0,0,.22)),
    url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078bc0508bc7593d8ee.jpg') center/cover no-repeat !important;
}
.about-story-full .site-visual-icon{display:none !important}

/* About services marquee/banner */
.about-services-banner{background:#0C0C0C !important;color:#fff !important;border-color:rgba(255,255,255,.16) !important}
.about-services-banner .marquee-track span{color:#fff !important}

/* About process - requested image with 80% white filter */
.about-process-visual{
  position:relative !important;
  background:url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078b4f420cdb45238d0.jpg') center/cover no-repeat !important;
  color:#0C0C0C !important;
}
.about-process-visual::before{
  content:"";position:absolute;inset:0;background:rgba(255,255,255,.80);z-index:0;pointer-events:none;
}
.about-process-visual>.container{position:relative;z-index:1}
.about-process-visual .section-head h2,.about-process-visual .process-step h3{color:#0C0C0C !important}
.about-process-visual .section-head h2 em,.about-process-visual .eyebrow,.about-process-visual .process-step span{color:#B30F1A !important}
.about-process-visual .kicker-desc,.about-process-visual .process-step p{color:#333333 !important}
.about-process-visual .process-step{background:rgba(255,255,255,.64) !important;border-color:rgba(0,0,0,.18) !important}

/* About coverage map section */
.about-coverage{background:#0C0C0C !important;color:#fff !important}
.about-coverage .section-copy h2,.about-coverage .section-copy p,.about-coverage .kicker-desc{color:#fff !important}
.about-coverage .eyebrow,.about-coverage .section-copy h2 em{color:#B30F1A !important}
.about-coverage .area-grid{align-items:stretch !important}
.about-coverage .map-card{border:0 !important;border-radius:0 !important;min-height:620px !important;height:100% !important}
.about-coverage .map-card iframe{display:block;width:100%;height:100%;min-height:620px;border:0}

/* Locations first section: red, black/white copy + live southern map */
.locations-coverage-full{background:#B30F1A !important;color:#fff !important}
.locations-coverage-full .section-copy h2{color:#0C0C0C !important}
.locations-coverage-full .section-copy h2 em{color:#fff !important}
.locations-coverage-full .section-copy p,.locations-coverage-full .kicker-desc{color:#fff !important}
.locations-coverage-full .eyebrow{color:#0C0C0C !important}
.locations-coverage-full .area-grid{align-items:stretch !important}
.locations-coverage-full .map-card{border:0 !important;border-radius:0 !important;min-height:620px !important;height:100% !important;box-shadow:none !important}
.locations-coverage-full .map-card iframe{display:block;width:100%;height:100%;min-height:620px;border:0}
.locations-coverage-full .btn.green{background:#0C0C0C !important;border-color:#0C0C0C !important;color:#fff !important}
.locations-coverage-full .btn.green:hover,.locations-coverage-full .btn.green:hover i,.locations-coverage-full .btn.green:hover span{background:#fff !important;color:#B30F1A !important}

/* Locations verified-locations section: parallax + black filter */
.locations-ready{
  position:relative !important;
  background:url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078b4f42078ce5238fe.jpg') center/cover fixed no-repeat !important;
  overflow:hidden !important;
}
.locations-ready::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.86);z-index:0}
.locations-ready>.container{position:relative;z-index:1}
.locations-ready .section-head h2,.locations-ready .section-head p{color:#fff !important}
.locations-ready .section-head h2 em,.locations-ready .eyebrow{color:#B30F1A !important}
.locations-ready .city-chip{background:rgba(255,255,255,.09) !important;border-color:rgba(255,255,255,.22) !important;color:#fff !important}
.locations-ready .city-chip i{color:#B30F1A !important}

/* Portfolio page */
.portfolio-showcase{
  background:
    radial-gradient(circle at 8% 14%,rgba(0,0,0,.10) 0 70px,transparent 72px),
    radial-gradient(circle at 92% 82%,rgba(0,0,0,.08) 0 100px,transparent 102px),
    linear-gradient(#fff,#f7f7f7) !important;
  color:#0C0C0C !important;
}
.portfolio-showcase .section-head h2{color:#0C0C0C !important}
.portfolio-showcase .section-head h2 em,.portfolio-showcase .eyebrow{color:#B30F1A !important}
.portfolio-showcase .kicker-desc{color:#555555 !important}

/* Videos and reviews: light content sections */
.coming-light{background:#fff !important;color:#0C0C0C !important}
.coming-light .coming-card{
  background:linear-gradient(145deg,#f7f7f7,#efefef) !important;
  border-color:rgba(0,0,0,.16) !important;
  color:#0C0C0C !important;
}
.coming-light .coming-card h2{color:#0C0C0C !important}
.coming-light .coming-card h2 em,.coming-light .coming-card>i,.coming-light .eyebrow{color:#B30F1A !important}
.coming-light .coming-card p{color:#555555 !important}

/* Contact info: white/light gray with black decorative details */
.contact-info-light{
  position:relative;overflow:hidden;
  background:
    radial-gradient(circle at 8% 12%,rgba(0,0,0,.10) 0 80px,transparent 82px),
    radial-gradient(circle at 94% 82%,rgba(0,0,0,.08) 0 110px,transparent 112px),
    linear-gradient(180deg,#fff,#eeeeee) !important;
  color:#0C0C0C !important;
}
.contact-info-light .section-head h2,.contact-info-light .info-card strong{color:#0C0C0C !important}
.contact-info-light .section-head h2 em,.contact-info-light .eyebrow{color:#B30F1A !important}
.contact-info-light .kicker-desc{color:#616161 !important}
.contact-info-light .info-card{background:rgba(255,255,255,.88) !important;border-color:rgba(0,0,0,.14) !important;color:#0C0C0C !important}
.contact-info-light .info-card i{color:#0C0C0C !important}
.contact-info-light .info-card small{color:#B30F1A !important}

/* Contact project form image + white supporting copy */
.contact-form-visual{
  position:relative !important;overflow:hidden !important;
  background:url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078bc0508bc7593d8ee.jpg') center/cover no-repeat !important;
}
.contact-form-visual::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.80);z-index:0}
.contact-form-visual>.container{position:relative;z-index:1}
.contact-form-visual .section-copy h2,.contact-form-visual .section-copy p,.contact-form-visual .kicker-desc,.contact-form-visual .contact-bullets span{color:#fff !important}
.contact-form-visual .section-copy h2 em,.contact-form-visual .eyebrow,.contact-form-visual .contact-bullets i{color:#B30F1A !important}
.contact-form-visual .site-form-shell{background:rgba(0,0,0,.76) !important;border-color:rgba(255,255,255,.24) !important}
.contact-map{height:520px !important;background:#eeeeee !important}
.contact-map iframe{display:block;width:100%;height:100%;border:0}

/* Footer: light gray, header logo, black headings/icons */
footer{background:#e8e8e8 !important;color:#0C0C0C !important}
footer::before{
  background:
    radial-gradient(circle at 7% 20%, rgba(0,0,0,.10) 0 90px, transparent 92px),
    radial-gradient(circle at 94% 76%, rgba(179,15,26,.10) 0 125px, transparent 127px),
    repeating-linear-gradient(135deg,rgba(0,0,0,.045) 0 2px,transparent 2px 30px) !important;
}
footer::after{background:repeating-linear-gradient(135deg,rgba(0,0,0,.08) 0 2px,transparent 2px 24px) !important;opacity:.55 !important}
footer h3,.footer-links i,.copyright i{color:#0C0C0C !important}
.footer-brand p,.footer-links a,.footer-links span,.copyright{color:#343434 !important}
.footer-links a{transition:color .24s ease,transform .24s ease !important}
.footer-links a:hover,.footer-links a:focus{color:#B30F1A !important;transform:translateX(4px) !important}
.footer-links a:hover i,.footer-links a:focus i{color:#B30F1A !important}
.copyright{border-top-color:rgba(0,0,0,.16) !important}

/* Contact-related link hover */
.contact-info a,.contact-form-visual a,.contact-bullets a{transition:color .22s ease !important}
.contact-info a:hover,.contact-form-visual a:hover,.contact-bullets a:hover{color:#B30F1A !important}

/* Icon motion */
@keyframes southernIconFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-6px) rotate(2deg)}}
@keyframes southernIconPulse{0%,100%{filter:drop-shadow(0 0 0 rgba(179,15,26,0))}50%{filter:drop-shadow(0 7px 10px rgba(179,15,26,.22))}}
main .svc-top>i,
main .mission-card>i,
main .why-item i,
main .process-step>i,
main .info-card>i,
main .coming-card>i,
main .contact-bullets i,
main .site-form-heading i,
main .city-chip i{
  animation:southernIconFloat 3.2s ease-in-out infinite,southernIconPulse 3.2s ease-in-out infinite !important;
  transform-origin:center !important;
}

@media(max-width:900px){
  .intro-grid{grid-template-columns:1fr !important}
  .intro-collage{height:610px !important}
  .locations-ready{background-attachment:scroll !important}
  .about-coverage .map-card,.about-coverage .map-card iframe,.locations-coverage-full .map-card,.locations-coverage-full .map-card iframe{min-height:500px !important}
}
@media(max-width:560px){
  .intro-collage{height:470px !important}
  .intro-collage img:first-child{width:88% !important;height:78% !important}
  .intro-collage img:last-child{width:72% !important;height:58% !important}
  .about-coverage .map-card,.about-coverage .map-card iframe,.locations-coverage-full .map-card,.locations-coverage-full .map-card iframe{min-height:400px !important}
}


/* --- v6 requested updates --- */
.title-banner{position:relative;overflow:hidden;background-image:url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078b4f42078ce5238fe.jpg") !important;background-size:cover !important;background-position:center !important;}
.title-banner::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 42%, rgba(0,0,0,.18) 58%, rgba(0,0,0,.48) 78%, rgba(0,0,0,.82) 100%) !important;pointer-events:none;}
.title-banner .banner-copy{position:relative;z-index:1;}

/* Footer/contact hover and footer styling */
footer{background:#eeeeee !important;color:#0C0C0C !important;}
footer::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 20%, rgba(0,0,0,.08), transparent 24%), radial-gradient(circle at 86% 22%, rgba(179,15,26,.10), transparent 20%), radial-gradient(circle at 30% 82%, rgba(0,0,0,.06), transparent 18%);} 
footer h3, footer .footer-links i, footer .copyright i{color:#0C0C0C !important;}
footer .footer-brand p, footer .footer-links a, footer .footer-links span, footer .copyright{color:#505050 !important;}

footer .footer-links a:hover, footer .footer-links a:hover span, footer .footer-links a:hover i, .contact-bullets span:hover, .contact-bullets span:hover i{color:#B30F1A !important;}
.copyright{border-top:1px solid rgba(0,0,0,.12)!important;}

/* Contact section bg with parallax */
.contact-form-visual{position:relative;overflow:hidden;background:none !important;}
.contact-form-visual::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.58), rgba(0,0,0,.58)), url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078bc0508bc7593d8ee.jpg") center/cover fixed no-repeat !important;pointer-events:none;}
.contact-form-visual .contact-grid{position:relative;z-index:1;}

/* Videos and reviews coming soon cards */
.coming-light{background:#fff !important;}
.coming-card{background:linear-gradient(135deg,#ffffff,#f6f6f6) !important;border:1px solid rgba(0,0,0,.12) !important;box-shadow:0 24px 60px rgba(0,0,0,.10) !important;position:relative;overflow:hidden;}
.coming-card::before{content:"";position:absolute;inset:auto -40px -40px auto;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle, rgba(179,15,26,.25), rgba(179,15,26,0));}
.coming-card::after{content:"";position:absolute;inset:-48px auto auto -48px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle, rgba(0,0,0,.12), rgba(0,0,0,0));}
.coming-card > i{font-size:48px;color:#B30F1A !important;animation:iconBob 2.6s ease-in-out infinite;}
.coming-card .eyebrow{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(179,15,26,.10);color:#0C0C0C !important;}
.coming-card h2{color:#0C0C0C !important;}
.coming-card h2 em{color:#B30F1A !important;}
.coming-card p{color:#505050 !important;}

/* Global icon animation */
@keyframes iconBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}

/* Home why flip cards */
.why-item.flip-card{background:transparent !important;box-shadow:none !important;border:none !important;perspective:1200px;}
.why-item.flip-card .flip-inner{height:100%;min-height:286px;position:relative;transform-style:preserve-3d;}
.why-item.flip-card .flip-front,.why-item.flip-card .flip-back{background:linear-gradient(180deg,#fff,#f3f3f3) !important;border:1px solid rgba(0,0,0,.10) !important;position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden;}
.why-item.flip-card .flip-front::before,.why-item.flip-card .flip-back::before{content:"";position:absolute;inset:auto -40px -40px auto;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle, rgba(179,15,26,.12), rgba(179,15,26,0));}
.why-item.flip-card .flip-front::after,.why-item.flip-card .flip-back::after{content:"";position:absolute;inset:20px auto auto 22px;width:92px;height:92px;border-radius:50%;background:radial-gradient(circle, rgba(0,0,0,.08), rgba(0,0,0,0));}
.why-item.flip-card .flip-back{transform:rotateY(180deg);display:flex;align-items:center;justify-content:center;padding:28px;text-align:center;}
.why-item.flip-card .flip-back .back-icon{display:none !important;}
.why-item.flip-card .flip-cue{position:static !important;display:inline-flex;margin-top:10px;}
.why-item.flip-card h3{background:linear-gradient(90deg,#0C0C0C 0 58%, #B30F1A 58% 100%);-webkit-background-clip:text;background-clip:text;color:transparent !important;}
.why-item.flip-card p{color:#505050 !important;position:relative;z-index:1;}

/* Green to red */
.green,.landing-band.green,.locations-coverage-full{background:#B30F1A !important;}
.landing-band.green .band-copy h2,.landing-band.green .band-copy p,.landing-band.green .feature-list span,.landing-band.green .eyebrow,.locations-coverage-full .section-copy p,.locations-coverage-full .section-copy .kicker-desc{color:#fff !important;}
.landing-band.green .band-copy h2 em,.locations-coverage-full .section-copy h2 em{color:#0C0C0C !important;}

/* About sections */
.about-services-banner{background:#0C0C0C !important;color:#fff !important;}
.about-story-full{background:#0C0C0C !important;}
.about-story-full .section-copy p,.about-story-full .kicker-desc,.about-story-full .eyebrow{color:#fff !important;}
.about-story-full .section-copy h2,.about-story-full .section-copy h2 em{color:#fff !important;}
.about-story-full .section-copy h2 em{color:#B30F1A !important;}
.site-about-visual{background:linear-gradient(rgba(0,0,0,.42), rgba(0,0,0,.42)), url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078bc0508bc7593d8ee.jpg") center/cover no-repeat !important;}
.about-process-visual{position:relative;background:none !important;overflow:hidden;}
.about-process-visual::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.80), rgba(255,255,255,.80)), url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078b4f420cdb45238d0.jpg") center/cover no-repeat !important;}
.about-process-visual>.container{position:relative;z-index:1;}
.about-process-visual .section-head h2,.about-process-visual .process-step h3{color:#0C0C0C !important;}
.about-process-visual .section-head h2 em,.about-process-visual .process-step span{color:#B30F1A !important;}
.about-process-visual .section-head p,.about-process-visual .process-step p,.about-process-visual .eyebrow{color:#505050 !important;}
.about-coverage{background:#0C0C0C !important;}
.about-coverage .section-copy h2,.about-coverage .section-copy p,.about-coverage .section-copy .eyebrow,.about-coverage .section-copy .kicker-desc{color:#fff !important;}
.about-coverage .section-copy h2 em{color:#B30F1A !important;}

/* Intro images and white paragraphs */
.intro .section-copy p,.intro .section-copy .kicker-desc{color:#fff !important;}
.intro-collage{height:760px !important;}
.intro-collage img:first-child{width:84% !important;height:82% !important;}
.intro-collage img:last-child{width:72% !important;height:58% !important;}

/* Portfolio */
.portfolio-showcase{background:#fff !important;position:relative;overflow:hidden;}
.portfolio-showcase::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 14% 18%, rgba(0,0,0,.06), transparent 24%), radial-gradient(circle at 84% 20%, rgba(0,0,0,.08), transparent 20%), radial-gradient(circle at 20% 80%, rgba(179,15,26,.07), transparent 20%);pointer-events:none;}
.portfolio-showcase .container{position:relative;z-index:1;}

/* Locations */
.locations-ready{position:relative;background:none !important;overflow:hidden;}
.locations-ready::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.82), rgba(0,0,0,.82)), url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078b4f42078ce5238fe.jpg") center/cover fixed no-repeat !important;}
.locations-ready>.container{position:relative;z-index:1;}
.locations-ready .section-head h2,.locations-ready .section-head p,.locations-ready .eyebrow,.locations-ready .city-chip{color:#fff !important;}
.locations-ready .section-head h2 em,.locations-ready .city-chip i{color:#B30F1A !important;}
.locations-coverage-full .section-copy h2,.locations-coverage-full .section-copy .eyebrow,.locations-coverage-full .section-copy a{color:#0C0C0C !important;}
.locations-coverage-full .section-copy h2 em{color:#fff !important;}
.locations-coverage-full .map-card{background:#fff !important;border:none !important;}

/* Contact info area */
.contact-info-light{background:#f7f7f7 !important;position:relative;overflow:hidden;}
.contact-info-light::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 20%, rgba(0,0,0,.06), transparent 22%), radial-gradient(circle at 85% 18%, rgba(179,15,26,.08), transparent 18%);}
.contact-info-light>.container{position:relative;z-index:1;}

/* Landing service visuals and sections */
.site-service-visual{position:relative;color:#fff !important;min-height:360px !important;display:flex;align-items:flex-end;justify-content:flex-start;padding:26px !important;box-shadow:0 24px 48px rgba(0,0,0,.18);}
.site-service-visual > i{display:none !important;}
.site-service-visual span{position:relative;z-index:1;font:800 20px/1.1 'Nunito Sans',sans-serif;background:rgba(0,0,0,.78);padding:10px 14px;border-left:4px solid #B30F1A;border-radius:2px;}
.landing-contact{background:#f5f5f5 !important;}
.landing-site-form{height:100%;}
.landing-map-full{background:#0C0C0C !important;}
.landing-map-full iframe{display:block;width:100%;height:520px;border:0;}

/* Contact page and landing form accents */
.site-contact-form .btn.green{background:#B30F1A !important;border-color:#B30F1A !important;}
.site-contact-form .btn.green:hover{background:#fff !important;color:#0C0C0C !important;border-color:#fff !important;}

/* Buttons hover */
.footer-links a,.contact-bullets span,.info-grid .info-card,.btn{transition:all .28s ease !important;}
.info-grid .info-card:hover{transform:translateY(-8px);}

@media(max-width:900px){.locations-ready::before,.contact-form-visual::before,.title-banner::before{background-attachment:scroll !important}.intro-collage{height:560px !important}}
@media(max-width:560px){.site-service-visual{min-height:260px !important}.landing-map-full iframe{height:380px}.intro-collage{height:440px !important}.intro-collage img:first-child{width:86%!important}.intro-collage img:last-child{width:74%!important}}


/* --- v7 landing adjustments --- */
.title-banner::before{background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 50%, rgba(0,0,0,.20) 58%, rgba(0,0,0,.55) 72%, rgba(0,0,0,.82) 86%, rgba(0,0,0,.96) 100%) !important;}
.title-banner .banner-copy{background:rgba(255,255,255,.06) !important;border:1px solid rgba(255,255,255,.18) !important;}

/* Landing dark bands to light gray */
.landing-band.dark{background:#eeeeee !important;color:#0C0C0C !important;}
.landing-band.dark .band-copy h2,.landing-band.dark .band-copy .eyebrow{color:#0C0C0C !important;}
.landing-band.dark .band-copy h2 em{color:#B30F1A !important;}
.landing-band.dark .band-copy p,.landing-band.dark .band-copy .kicker-desc,.landing-band.dark .feature-list span{color:#545454 !important;}
.landing-band.dark .feature-list i{color:#B30F1A !important;}

/* Specific landing images requested */

/* Orange landing band checks in white */
.landing-band.green .feature-list i,.landing-band.green .feature-list span,.landing-band.green .kicker-desc,.landing-band.green .band-copy p{color:#fff !important;}

/* Landing contact section centered with parallax background and no filter */
.landing-contact{position:relative;overflow:hidden;background:url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078b4f42078ce5238fe.jpg") center/cover fixed no-repeat !important;color:#fff !important;padding:110px 0 !important;}
.landing-contact::before,.landing-contact::after{display:none !important;content:none !important;}
.landing-contact-grid{width:min(1200px,calc(100% - 48px));margin:auto;display:grid;grid-template-columns:minmax(0,900px);justify-content:center;gap:28px;}
.landing-contact-copy{text-align:center;max-width:840px;margin:0 auto;}
.landing-contact-copy .eyebrow,.landing-contact-copy .kicker-desc,.landing-contact-copy p,.landing-contact-copy h2{color:#fff !important;text-shadow:0 2px 18px rgba(0,0,0,.18);}
.landing-contact-copy h2 em{color:#B30F1A !important;}
.landing-contact .site-form-shell{max-width:900px;width:100%;margin:0 auto;background:rgba(255,255,255,.95) !important;border:1px solid rgba(0,0,0,.10) !important;box-shadow:0 28px 70px rgba(0,0,0,.18) !important;padding:34px !important;border-radius:6px !important;backdrop-filter:none !important;}
.landing-contact .site-form-heading .eyebrow{color:#B30F1A !important;text-shadow:none !important;}
.landing-contact .site-form-heading h3{margin:0 0 10px;color:#0C0C0C;font-size:clamp(26px,3.2vw,36px);text-transform:uppercase;line-height:1.05;}
.landing-contact .site-form-heading p{color:#626262;margin:0 0 16px;font:500 14px/1.75 Montserrat,sans-serif;}
.landing-contact .site-contact-form label span{color:#0C0C0C !important;}
.landing-contact .site-contact-form .btn{justify-self:center !important;min-width:260px;}
.landing-contact .site-contact-form input,.landing-contact .site-contact-form select,.landing-contact .site-contact-form textarea{border:1px solid rgba(0,0,0,.14) !important;background:#fff !important;color:#161616 !important;}

/* Ensure red bands use white checks */
.landing-band.green .feature-list i{color:#fff !important;}

@media(max-width:900px){.landing-contact{background-attachment:scroll !important}.landing-contact-grid{width:calc(100% - 32px)}.landing-contact .site-form-shell{padding:24px !important}}


/* --- v8 landing content and title refinements --- */
.title-banner .banner-copy{background:transparent !important;border:0 !important;box-shadow:none !important;backdrop-filter:none !important;padding-left:0 !important;padding-right:0 !important;}
.landing-contact-copy h2{font-size:clamp(38px,4.5vw,70px) !important;line-height:1.02 !important;letter-spacing:-.04em !important;margin:0 0 24px !important;font-weight:900 !important;text-transform:uppercase !important;}
.landing-contact-copy,.landing-contact-copy .eyebrow,.landing-contact-copy .kicker-desc,.landing-contact-copy h2,.landing-contact-copy p{text-shadow:0 3px 14px rgba(0,0,0,.28) !important;}
.landing-contact .site-form-shell{box-shadow:0 28px 70px rgba(0,0,0,.20) !important;}
@media(max-width:900px){.landing-contact-copy h2{font-size:clamp(38px,5.6vw,58px) !important;}}
@media(max-width:560px){.landing-contact-copy h2{font-size:clamp(34px,10vw,44px) !important;line-height:1.03 !important;}}


/* --- v9 banner + landing bg adjustments --- */
.title-banner::before{background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 28%, rgba(0,0,0,.10) 38%, rgba(0,0,0,.28) 50%, rgba(0,0,0,.52) 66%, rgba(0,0,0,.78) 82%, rgba(0,0,0,.95) 100%) !important;}
.title-banner .banner-copy{background:transparent !important;border:none !important;box-shadow:none !important;}
.landing-contact{background:linear-gradient(rgba(0,0,0,.68), rgba(0,0,0,.68)), url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078c64e85365e30c9b3.jpg") center/cover fixed no-repeat !important;}
.landing-contact-copy,.landing-contact .site-form-shell,.landing-contact .site-form-heading,.landing-contact .site-contact-form{filter:none !important;}
.landing-contact-copy, .landing-contact .site-form-shell{ text-shadow:0 2px 14px rgba(0,0,0,.18);}
.landing-contact-copy h2, .landing-contact .site-form-heading h3{font-size:clamp(32px,3.5vw,46px) !important;line-height:1.03 !important;font-weight:900 !important;}
.landing-contact-copy .eyebrow,.landing-contact-copy .kicker-desc,.landing-contact-copy p,.landing-contact-copy h2{ text-shadow:0 2px 14px rgba(0,0,0,.18) !important;}
@media(max-width:900px){.landing-contact{background-attachment:scroll !important}}


/* --- v10 fix: respect per-landing service images + gray southern form description --- */
.landing-contact .site-form-heading p{color:#6f7881 !important;text-shadow:none !important;}


/* --- v11 definitive landing image fix --- */
/* Neutralize the legacy solid southern visual shorthand without removing layout styles. */
.landing-photo.site-service-visual{
  background-color:#0C0C0C !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}
/* The actual image is declared inline per landing with !important, intentionally overriding the old shorthand. */
.landing-contact .site-form-heading p{color:#6f7780 !important;text-shadow:none !important;}


/* --- v12 mobile menu + bathroom/welcome refinements --- */
body .intro .section-copy p,
body .intro .section-copy .kicker-desc,
body .intro .icon-points span{color:#fff !important;}

.mobile-menu-brand,.mobile-menu-close{display:none;}
@media(max-width:900px){
  .nav{position:fixed !important;inset:0 !important;width:100% !important;height:100dvh !important;max-height:none !important;overflow-y:auto !important;z-index:9999 !important;padding:84px 26px 34px !important;background:linear-gradient(145deg,#121212,#191919) !important;border:0 !important;}
  .nav.open{display:flex !important;}
  .mobile-menu-brand{display:flex;justify-content:center;align-items:center;margin:0 auto 24px;order:-2;}
  .mobile-menu-brand img{width:230px;max-width:72vw;height:auto;object-fit:contain;}
  .mobile-menu-close{display:grid;place-items:center;position:absolute;top:20px;right:22px;width:44px;height:44px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#fff;font-size:22px;cursor:pointer;z-index:2;}
  .nav>a,.services-menu>button{padding:15px 4px !important;}
}
@media(max-width:560px){.mobile-menu-brand img{width:210px;}}


/* --- v13 welcome, title-banner alignment and logo motion --- */
body .intro .section-copy > p{color:#fff !important;}
body .intro .section-copy > .eyebrow{color:#B30F1A !important;}

.title-banner .container{display:flex !important;justify-content:flex-end !important;}
.title-banner .banner-copy{margin-left:auto !important;margin-right:0 !important;text-align:right !important;max-width:900px !important;}
.title-banner .banner-copy .eyebrow,.title-banner .banner-copy p,.title-banner .banner-copy h1{text-align:right !important;}
.title-banner .banner-copy p{margin-left:auto !important;margin-right:0 !important;}

@keyframes southernLogoFloat{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.015)}}
@keyframes southernLogoGlow{0%,100%{filter:drop-shadow(0 0 0 rgba(179,15,26,0))}50%{filter:drop-shadow(0 8px 16px rgba(179,15,26,.22))}}
.site-header .brand img,.footer-brand img,.mobile-menu-brand img{animation:southernLogoFloat 3.8s ease-in-out infinite,southernLogoGlow 3.8s ease-in-out infinite;transform-origin:center;}
@media (prefers-reduced-motion:reduce){.site-header .brand img,.footer-brand img,.mobile-menu-brand img{animation:none !important}}
@media(max-width:900px){
  .title-banner .container{justify-content:flex-end !important;}
  .title-banner .banner-copy{width:min(88%,760px) !important;text-align:right !important;}
}


/* --- v14 title-banner stack + welcome text + landing contact 85% --- */
.title-banner .container{display:flex !important;justify-content:flex-end !important;}
.title-banner .banner-copy{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  justify-content:flex-end !important;
  gap:0 !important;
  width:min(900px,100%) !important;
  margin-left:auto !important;
  margin-right:0 !important;
  text-align:right !important;
}
.title-banner .banner-copy .eyebrow{
  display:block !important;
  width:100% !important;
  margin:0 0 12px !important;
  text-align:right !important;
}
.title-banner .banner-copy h1{
  display:block !important;
  width:100% !important;
  margin:0 0 16px !important;
  text-align:right !important;
}
.title-banner .banner-copy p{
  display:block !important;
  width:100% !important;
  max-width:760px !important;
  margin:0 0 0 auto !important;
  text-align:right !important;
}
body .intro .section-copy .welcome-main-copy{color:#fff !important;opacity:1 !important;}
body .intro .section-copy > .eyebrow{color:#B30F1A !important;}
.landing-contact{background:linear-gradient(rgba(0,0,0,.85), rgba(0,0,0,.85)), url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078c64e85365e30c9b3.jpg") center/cover fixed no-repeat !important;}
@media(max-width:900px){
  .title-banner .banner-copy{width:min(88%,760px) !important;}
  .landing-contact{background-attachment:scroll !important;}
}

/* --- v15 title-banner right breathing room --- */
.title-banner .banner-copy{
  margin-right:clamp(34px,4.5vw,76px) !important;
}
@media(max-width:900px){
  .title-banner .banner-copy{margin-right:clamp(18px,4vw,34px) !important;}
}
@media(max-width:560px){
  .title-banner .banner-copy{margin-right:18px !important;}
}

/* Southern Construction embeds and media: additions only */
.southern-video-section{background:#0C0C0C;color:white}.southern-video-frame{width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:18px}.southern-video-frame iframe{width:100%;height:100%;border:0}.leadconnector-shell{width:100%;min-height:748px}.leadconnector-shell iframe{display:block;width:100%;min-height:748px}.topbar-inner>a{color:inherit}.services-menu>a{display:flex;align-items:center;gap:8px;color:inherit;text-decoration:none}

/* Anchor destinations for consolidated service details */
#general-construction,#additions,#kitchen-bathroom-remodeling,#remodeling,#concrete{scroll-margin-top:110px;}

/* Southern Construction: navigation and updated hero geometry */
.nav>a{text-transform:uppercase!important}
.brand img,.site-header .brand img{width:188px!important;max-width:188px!important;height:auto!important}
.hero{min-height:900px!important}
.hero-content{padding-top:clamp(205px,18vh,265px)!important}
@media(max-width:900px){.hero{min-height:max(790px,100svh)!important}.hero-content{padding-top:240px!important}}
@media(max-width:560px){.brand img,.site-header .brand img{width:166px!important;max-width:166px!important}.hero{min-height:max(770px,100svh)!important}.hero-content{padding-top:225px!important}}

/* Southern final branding - overrides legacy demo colors while preserving motion */
footer,footer::before{background:#0C0C0C!important;color:#fff!important}
footer::after{opacity:.12!important}
footer h3,footer .footer-links a,footer .footer-links a span,footer .footer-links>span,footer .footer-brand p,footer .copyright,footer .copyright span{color:#fff!important}
footer .footer-links i,footer .copyright i{color:#fff!important}
footer .footer-links a:hover,footer .footer-links a:hover span,footer .footer-links a:hover i{color:#B30F1A!important}
footer .footer-brand img{content:normal!important;width:200px!important;max-height:none!important;object-fit:contain!important}
.hero{min-height:940px!important}.hero-content{padding-top:clamp(250px,24vh,340px)!important;padding-bottom:90px!important}
#services .service-card{background:rgba(12,12,12,.88)!important}
#services .service-card:hover{background:rgba(30,30,30,.94)!important}
.mission-section::before{background:linear-gradient(rgba(0,0,0,.83),rgba(0,0,0,.88)),url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078b4f420cdb45238d0.jpg") center/cover no-repeat!important}
.mission-card,.mission-visual .mission-card{background:rgba(12,12,12,.86)!important}
.mission-card.vision,.mission-visual .mission-card.vision{background:rgba(12,12,12,.92)!important}
.title-banner{background-image:url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/694030785a5b6b638d86f9d1.jpg")!important}
.site-header .brand img,.footer-brand img,.mobile-menu-brand img{animation:southernLogoFloat 3.8s ease-in-out infinite,southernLogoGlow 3.8s ease-in-out infinite!important}
@media(max-width:900px){.hero{min-height:850px!important}.hero-content{padding-top:260px!important}}
@media(max-width:560px){.hero{min-height:810px!important}.hero-content{padding-top:265px!important;padding-bottom:65px!important}}
@media(prefers-reduced-motion:reduce){.site-header .brand img,.footer-brand img,.mobile-menu-brand img{animation:none!important}}

/* Distinct approved portfolio images in Home backgrounds */
body:has(.hero) .intro .media-parallax{background-image:url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078ca729862f5fc5f27.jpg")!important}
body:has(.hero) #services::before{background:linear-gradient(rgba(0,0,0,.84),rgba(0,0,0,.84)),url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078bc0508bc7593d8ee.jpg") center/cover fixed no-repeat!important}
body:has(.hero) .mission-section::before{background:linear-gradient(rgba(0,0,0,.84),rgba(0,0,0,.86)),url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078b4f420cdb45238d0.jpg") center/cover no-repeat!important}
body:has(.hero) .faq-section{background-image:linear-gradient(rgba(0,0,0,.84),rgba(0,0,0,.84)),url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/694030783909bce40a7e761b.jpg")!important}
body:has(.hero) .service-area-home::before{background-image:linear-gradient(rgba(0,0,0,.75),rgba(0,0,0,.75)),url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/6940307897c0231a472faf47.jpg")!important}


/* --- FINAL SOUTHERN OVERRIDES START --- */
/* Footer layout: brand and description above the link sections */
footer{background:#0C0C0C !important;color:#fff !important;position:relative;overflow:hidden;}
footer::before{content:"";position:absolute;inset:0;background:
  radial-gradient(circle at 10% 16%, rgba(179,15,26,.22), transparent 24%),
  radial-gradient(circle at 88% 18%, rgba(179,15,26,.16), transparent 20%),
  radial-gradient(circle at 50% 100%, rgba(255,255,255,.06), transparent 34%),
  linear-gradient(135deg, rgba(255,255,255,.03), rgba(255,255,255,0) 42%),
  linear-gradient(180deg, rgba(255,255,255,.02), rgba(0,0,0,0));pointer-events:none;}
footer::after{content:"";position:absolute;inset:0;background:
  linear-gradient(125deg, transparent 0%, transparent 47%, rgba(179,15,26,.08) 47.4%, rgba(179,15,26,.08) 48.2%, transparent 48.2%),
  linear-gradient(305deg, transparent 0%, transparent 64%, rgba(255,255,255,.04) 64.2%, rgba(255,255,255,.04) 64.8%, transparent 64.8%);
  opacity:.9;pointer-events:none;}
footer>.container,.copyright{position:relative;z-index:2;}
.footer-grid{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:36px !important;padding:82px 0 50px !important;}
.footer-brand{grid-column:1 / -1 !important;text-align:center !important;max-width:760px;margin:0 auto 10px !important;}
.footer-brand img{width:220px !important;max-width:220px !important;margin:0 auto 20px !important;}
.footer-brand p{max-width:620px !important;margin:0 auto !important;color:#fff !important;}
footer h3,.footer-links a,.footer-links span,.copyright{color:#fff !important;}
footer h3{text-align:center;position:relative;padding-bottom:14px;margin-bottom:18px !important;}
footer h3::after{content:"";position:absolute;left:50%;transform:translateX(-50%);bottom:0;width:56px;height:2px;background:#B30F1A;}
.footer-links{justify-items:start;}
.footer-links a,.footer-links span{color:#fff !important;}
.footer-links i,.copyright i{color:#B30F1A !important;}
.footer-links a:hover,.footer-links a:focus{color:#B30F1A !important;transform:translateX(3px);}
.copyright{border-top:1px solid rgba(255,255,255,.12) !important;color:#fff !important;}

/* Header logo motion */
@keyframes southernLogoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.site-header .brand img{width:210px !important;max-width:210px !important;animation:southernLogoFloat 4.8s ease-in-out infinite;will-change:transform;}
.site-header .brand:hover img{transform:scale(1.03);}

/* Global title banner update */
.title-banner{background-image:url("https://assets.cdn.filesafe.space/T6sb6mufTf2DLFftX3Rb/media/6ada3e6fa0c3fa1f7d7a7581.png") !important;background-size:cover !important;background-position:center !important;}
.title-banner::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.18) 34%, rgba(0,0,0,.42) 58%, rgba(0,0,0,.78) 82%, rgba(0,0,0,.92) 100%) !important;pointer-events:none;}
.title-banner .container{display:flex !important;justify-content:flex-end !important;}
.title-banner .banner-copy{margin-left:auto !important;margin-right:0 !important;text-align:right !important;max-width:920px !important;background:transparent !important;border:none !important;box-shadow:none !important;backdrop-filter:none !important;padding-left:0 !important;padding-right:0 !important;}
.title-banner .banner-copy .eyebrow,.title-banner .banner-copy h1,.title-banner .banner-copy p{text-align:right !important;}

/* Contact page requested visuals */
.contact-form-visual{position:relative;overflow:hidden;background:none !important;}
.contact-form-visual::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.90), rgba(0,0,0,.90)), url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078bc0508028893d957.jpg") center/cover fixed no-repeat !important;pointer-events:none;}
.contact-form-visual .contact-grid{position:relative;z-index:1;}

.contact-info-light{background:#f6f6f6 !important;position:relative;overflow:hidden;}
.contact-info-light::before{content:"";position:absolute;inset:0;background:
 radial-gradient(circle at 12% 18%, rgba(0,0,0,.08), transparent 22%),
 radial-gradient(circle at 86% 20%, rgba(179,15,26,.12), transparent 18%),
 linear-gradient(135deg, rgba(0,0,0,.025) 0%, rgba(0,0,0,0) 40%),
 repeating-linear-gradient(-35deg, transparent 0, transparent 110px, rgba(179,15,26,.05) 110px, rgba(179,15,26,.05) 113px, transparent 113px, transparent 220px);pointer-events:none;}
.contact-info-light::after{content:"";position:absolute;inset:auto 0 0 0;height:110px;background:linear-gradient(180deg, rgba(0,0,0,0), rgba(0,0,0,.02));pointer-events:none;}
.contact-info-light>.container{position:relative;z-index:1;}

/* Services page requested visuals */
.landing-contact{position:relative;overflow:hidden;background:linear-gradient(rgba(0,0,0,.72), rgba(0,0,0,.72)), url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078ca72984e72fc5fd3.jpg") center/cover fixed no-repeat !important;color:#fff !important;padding:110px 0 !important;}
.landing-contact-copy,.landing-contact-copy .eyebrow,.landing-contact-copy .kicker-desc,.landing-contact-copy p,.landing-contact-copy h2{color:#fff !important;text-shadow:0 2px 14px rgba(0,0,0,.22) !important;}
.landing-contact-copy h2 em{color:#B30F1A !important;}

.landing-band .band-copy .eyebrow{color:#B30F1A !important;}
.landing-band.light .band-copy h2,.landing-band.dark .band-copy h2{color:#0C0C0C !important;}
.landing-band.light .band-copy h2 em,.landing-band.dark .band-copy h2 em{color:#B30F1A !important;}
.landing-band.light .band-copy p,.landing-band.light .band-copy .kicker-desc,.landing-band.light .feature-list span,.landing-band.dark .band-copy p,.landing-band.dark .band-copy .kicker-desc,.landing-band.dark .feature-list span{color:#545454 !important;}
.landing-band.light .feature-list i,.landing-band.dark .feature-list i{color:#B30F1A !important;}
.landing-band.dark{background:#efefef !important;color:#0C0C0C !important;}
.landing-band.green{background:#B30F1A !important;}
.landing-band.green .band-copy .eyebrow,.landing-band.green .band-copy p,.landing-band.green .band-copy .kicker-desc,.landing-band.green .feature-list span,.landing-band.green .feature-list i,.landing-band.green .band-copy h2{color:#fff !important;}
.landing-band.green .band-copy h2 em{color:#0C0C0C !important;}
.site-service-visual{position:relative;color:#fff !important;min-height:420px !important;display:flex;align-items:flex-end;justify-content:flex-start;padding:28px !important;box-shadow:0 24px 48px rgba(0,0,0,.18);}
.site-service-visual span{position:relative;z-index:1;font:800 20px/1.1 'Nunito Sans',sans-serif;background:rgba(0,0,0,.80);padding:10px 14px;border-left:4px solid #B30F1A;border-radius:2px;}

/* Contact page cards and service cards polish */
.info-card{background:linear-gradient(180deg,#111,#1a1a1a) !important;border-color:rgba(255,255,255,.12) !important;}
.info-card small{color:rgba(255,255,255,.72) !important;}
.info-card strong{color:#fff !important;}
.info-card i{color:#B30F1A !important;}

@media(max-width:900px){
  .title-banner::before,.contact-form-visual::before,.landing-contact{background-attachment:scroll !important;}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .footer-brand{grid-column:1 / -1 !important;}
}
@media(max-width:700px){
  .footer-grid{grid-template-columns:1fr !important;text-align:center !important;}
  .footer-links{justify-items:center !important;}
  .footer-links a,.footer-links span{justify-content:center !important;text-align:center !important;}
}
@media(max-width:560px){
  .site-header .brand img{width:182px !important;max-width:182px !important;}
  .site-service-visual{min-height:260px !important;}
  .title-banner .banner-copy{max-width:100% !important;}
}
/* --- FINAL SOUTHERN OVERRIDES END --- */


/* --- FINAL SOUTHERN ROUND 2 START --- */
/* Contact info section now includes 9 required business details */
.contact-info-light .info-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
.contact-info-light .info-card{min-height:190px !important;justify-content:flex-start !important;}
.contact-info-light .info-card strong{line-height:1.5 !important;}

/* About page process background requested */
.about-process-visual{position:relative;background:none !important;overflow:hidden;}
.about-process-visual::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.80), rgba(255,255,255,.80)), url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/6940307896e3f220c3ca88ee.jpg") center/cover no-repeat !important;}
.about-process-visual>.container{position:relative;z-index:1;}

/* Home intro small image requested */
.intro-collage img:last-child{border-color:#0C0C0C !important;}

/* Video section background requested */
.southern-video-section{position:relative;background:none !important;overflow:hidden;color:#fff !important;}
.southern-video-section::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.80), rgba(0,0,0,.80)), url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078b4f42081e952393e.jpg") center/cover no-repeat !important;pointer-events:none;}
.southern-video-section>.container{position:relative;z-index:1;}
.southern-video-section .eyebrow{color:#B30F1A !important;}
.southern-video-section .kicker-desc,.southern-video-section h2{color:#fff !important;}
.southern-video-section h2 em{color:#B30F1A !important;}
.southern-video-frame{box-shadow:0 24px 60px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.14);}

/* FAQ stays 5 items and readable */
.faq{display:grid;gap:10px !important;}
.faq .faq-item{display:block !important;}

@media(max-width:900px){
  .contact-info-light .info-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:560px){
  .contact-info-light .info-grid{grid-template-columns:1fr !important;}
}
/* --- FINAL SOUTHERN ROUND 2 END --- */

/* Southern site: targeted revisions */
footer h3{text-align:left!important}
footer h3::after{left:0!important;transform:none!important}
@media(max-width:700px){footer h3{text-align:center!important}footer h3::after{left:50%!important;transform:translateX(-50%)!important}}
.landing-contact-copy h2,.landing-contact h2,.contact-form-visual h2,.cta-form .cta-copy h2{font-weight:900!important}
.site-header .brand img{width:194px!important;max-width:194px!important}
@media(max-width:900px){.site-header .brand img{width:182px!important;max-width:182px!important}}
@media(max-width:560px){.site-header .brand img{width:162px!important;max-width:162px!important}}
.site-header .nav>a{display:inline-flex;align-items:center;gap:9px}
.site-header .nav>a>i{font-size:12px;color:#B30F1A;transition:transform .25s,color .25s}
.site-header .nav>a:hover>i,.site-header .nav>a.active>i{color:#fff;transform:translateY(-2px)}
.why{position:relative;background:#E0E0E0!important;isolation:isolate}
.why::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(224,224,224,.90),rgba(224,224,224,.90)),url("https://assets.cdn.filesafe.space/T6sb6mufTf2DLFftX3Rb/media/6940307896e3f23df7ca88c2.jpg") center/cover no-repeat;z-index:-1;pointer-events:none}
.why-item.flip-card .flip-back{flex-direction:column;gap:16px}
.why-item.flip-card .flip-back .back-icon{display:block!important;font-size:36px!important;color:#B30F1A!important;margin:0!important;flex-shrink:0}
.faq-section,body:has(.hero) .faq-section{background:#B30F1A!important;background-image:none!important}
.faq-section::before,body:has(.hero) .faq-section::before{background:rgba(179,15,26,.80)!important}
.faq-section .section-copy .eyebrow,.faq-section .section-copy h2 em,.faq-section .faq-item button i{color:#fff!important}
.about-coverage{background:#B30F1A!important}
.about-coverage .eyebrow,.about-coverage .section-copy h2 em{color:#0C0C0C!important}
.landing-contact{background-image:linear-gradient(rgba(0,0,0,.95),rgba(0,0,0,.95)),url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078ca72984e72fc5fd3.jpg")!important}
.title-banner{background-image:none!important;position:relative;overflow:hidden;isolation:isolate}
.title-banner-video{display:block!important;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;pointer-events:none}
.title-banner::before{z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.26),rgba(0,0,0,.40))!important}
.title-banner .container{width:min(1480px,calc(100% - 100px))!important;padding-right:clamp(24px,4vw,90px)!important;box-sizing:border-box}
.title-banner .banner-copy{max-width:min(900px,100%)!important;margin-right:0!important}
.title-banner h1{font-size:clamp(42px,5.15vw,82px)!important;overflow-wrap:break-word}
@media(max-width:900px){.title-banner .container{width:calc(100% - 48px)!important;padding-right:20px!important}}
@media(max-width:560px){.title-banner .container{width:calc(100% - 32px)!important;padding-right:12px!important}.title-banner h1{font-size:clamp(32px,9vw,48px)!important}}
@media(prefers-reduced-motion:reduce){.title-banner-video{display:none!important}.title-banner{background-image:url("https://assets.cdn.filesafe.space/T6sb6mufTf2DLFftX3Rb/media/6ada3e6fa0c3fa1f7d7a7581.png")!important;background-size:cover!important;background-position:center!important}}

/* Southern Services: slightly larger consultation heading */
.landing-contact-copy h2{font-size:clamp(38px,4vw,53px)!important;}
@media(max-width:560px){.landing-contact-copy h2{font-size:clamp(36px,10.5vw,47px)!important;}}


/* --- SOUTHERN V6 OVERRIDES START --- */
/* Header cleanup */
.nav-wrap{width:min(1280px,calc(100% - 40px))!important;max-width:1280px!important;}
.site-header .brand{flex:0 0 auto!important;}
.site-header .brand::before,.site-header .brand::after,.nav .mobile-menu-brand{display:none!important;content:none!important;}
.site-header .brand img{width:178px!important;max-width:178px!important;height:auto!important;}
@media(max-width:900px){.site-header .brand img{width:168px!important;max-width:168px!important;}}
@media(max-width:560px){.site-header .brand img{width:154px!important;max-width:154px!important;}}

/* Title banners: keep video, add subtle gradient */
.title-banner::before{z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.12) 0%,rgba(0,0,0,.22) 34%,rgba(0,0,0,.34) 62%,rgba(0,0,0,.48) 100%)!important;}

/* Services CTA updates */
.landing-contact{background-image:linear-gradient(rgba(0,0,0,.85),rgba(0,0,0,.85)),url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078ca72984e72fc5fd3.jpg")!important;}
.landing-contact-copy h2,.landing-contact h2{color:#B30F1A!important;}
.landing-contact-copy h2 em,.landing-contact h2 em{color:#fff!important;}

/* About process background swap */
.about-process-visual::before{background:linear-gradient(rgba(255,255,255,.82),rgba(255,255,255,.82)),url("https://assets.cdn.filesafe.space/T6sb6mufTf2DLFftX3Rb/media/69403078ca729862f5fc5f27.jpg") center/cover no-repeat!important;}

/* About page alternate structure inspired by provided reference */
.about-showcase{background:#111!important;position:relative;overflow:hidden;}
.about-showcase::before{content:"";position:absolute;inset:0;background:
  radial-gradient(circle at 76% 18%,rgba(179,15,26,.12),transparent 18%),
  radial-gradient(circle at 82% 82%,rgba(255,255,255,.06),transparent 24%),
  linear-gradient(135deg,rgba(255,255,255,.03),rgba(255,255,255,0) 42%);
  pointer-events:none;}
.about-showcase .about-split-grid{grid-template-columns:minmax(340px,48%) minmax(340px,52%)!important;gap:0!important;align-items:stretch!important;position:relative;z-index:1;}
.about-showcase .site-about-visual{min-height:720px!important;border:none!important;border-radius:0!important;position:relative;justify-content:flex-end!important;align-items:stretch!important;padding:0!important;background:
 linear-gradient(rgba(0,0,0,.10),rgba(0,0,0,.18)),
 url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078bc0508bc7593d8ee.jpg") center/cover no-repeat!important;}
.about-showcase .about-image-panel{display:flex;align-items:flex-end;justify-content:flex-start;min-height:100%;padding:0 0 0 0;}
.about-showcase .about-details-panel{background:#111f61;color:#fff;width:min(92%,470px);padding:34px 38px 30px;margin:0 0 0 0;box-shadow:0 22px 45px rgba(0,0,0,.26);}
.about-showcase .about-details-panel h3{margin:0 0 18px;font:900 clamp(28px,3vw,40px)/1 'Nunito Sans',sans-serif;text-transform:uppercase;}
.about-showcase .about-detail-list{display:grid;gap:12px;}
.about-showcase .about-detail-list span{display:flex;gap:12px;align-items:flex-start;font:700 14px/1.55 Montserrat,sans-serif;}
.about-showcase .about-detail-list i{width:18px;color:#fff;transform:translateY(2px);}
.about-showcase .about-copy-panel{padding:72px clamp(28px,5vw,58px)!important;background:#f6f4ef!important;color:#0C0C0C!important;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden;}
.about-showcase .about-copy-panel::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(12,12,12,.10) 1.15px,transparent 1.15px);background-size:18px 18px;opacity:.22;pointer-events:none;}
.about-showcase .about-copy-panel>*{position:relative;z-index:1;}
.about-showcase .about-copy-panel .eyebrow{color:#1e3a8a!important;}
.about-showcase .about-copy-panel .kicker-desc,.about-showcase .about-copy-panel p{color:#334155!important;}
.about-showcase .about-copy-panel h2{font-size:clamp(42px,5vw,74px)!important;line-height:.98!important;color:#213b8f!important;margin-bottom:24px!important;}
.about-showcase .about-copy-panel h2 em{color:#B30F1A!important;}
.about-copy-meta{display:grid;gap:12px;margin:18px 0 28px;}
.about-copy-meta span{display:flex;gap:12px;align-items:flex-start;font:700 14px/1.55 Montserrat,sans-serif;color:#23304f;}
.about-copy-meta i{width:18px;color:#B30F1A;transform:translateY(2px);}
.about-copy-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:6px;}
.about-copy-actions .btn.outline{background:#111f61!important;border-color:#111f61!important;color:#fff!important;}
.about-copy-actions .btn.green{background:#B30F1A!important;border-color:#B30F1A!important;}

.not-found-page .site-contact-panel{min-height:100%;background:linear-gradient(160deg,#111,#1b1b1b)!important;padding:48px!important;border:1px solid rgba(255,255,255,.12)!important;}
.not-found-page .site-contact-panel h3{font-size:34px;line-height:1.05;text-transform:uppercase;margin:0;}
.not-found-page .site-contact-panel p{font:500 15px/1.8 Montserrat,sans-serif;color:#d2d2d2;}

@media(max-width:980px){
  .about-showcase .about-split-grid{grid-template-columns:1fr!important;}
  .about-showcase .site-about-visual{min-height:520px!important;}
  .about-showcase .about-copy-panel{padding:56px 24px!important;}
}
@media(max-width:560px){
  .about-showcase .about-details-panel{width:100%;padding:24px 22px;}
  .about-showcase .about-copy-panel h2{font-size:clamp(34px,11vw,48px)!important;}
}
/* --- SOUTHERN V6 OVERRIDES END --- */

/* === Southern v7 approved layout refinements === */
/* Black right-to-left banner fade: left side remains unobstructed */
.title-banner::before{content:""!important;position:absolute!important;inset:0!important;z-index:-1!important;background:linear-gradient(to left,rgba(0,0,0,.89) 0%,rgba(0,0,0,.70) 23%,rgba(0,0,0,.38) 45%,rgba(0,0,0,.08) 71%,rgba(0,0,0,0) 100%)!important;pointer-events:none!important;}
.title-banner::after{background:transparent!important;pointer-events:none!important;}
/* Header logo hover without fighting floating animation */
.site-header .brand{position:relative;transition:filter .32s ease;}
.site-header .brand img{transition:filter .32s ease!important;transform-origin:center center;}
.site-header .brand:hover img,.site-header .brand:focus-visible img{animation-play-state:paused!important;transform:translateY(-4px) scale(1.065) rotate(-1deg)!important;filter:drop-shadow(0 0 16px rgba(179,15,26,.72)) brightness(1.12)!important;}
@media(prefers-reduced-motion:reduce){.site-header .brand:hover img{transform:none!important;filter:none!important}}
/* Contact: new editorial header and 3x3 specification cards */
.contact-details-v7{background:#f4f4f4!important;}
.contact-details-v7 .contact-editorial-head{max-width:1040px!important;margin:0 auto 50px!important;}
.contact-details-v7 .contact-editorial-head .eyebrow{letter-spacing:.18em;}
.contact-details-v7 .contact-editorial-head h2{color:#0C0C0C!important;font-size:clamp(38px,5vw,70px)!important;}
.contact-details-v7 .contact-editorial-head h2 em{color:#B30F1A!important;}
.contact-details-v7 .info-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;}
.contact-details-v7 .contact-fact-card{position:relative;min-height:208px!important;padding:29px!important;border:1px solid rgba(0,0,0,.10)!important;border-top:4px solid #B30F1A!important;border-radius:3px;background:#fff!important;box-shadow:0 10px 32px rgba(0,0,0,.055);gap:11px!important;overflow:hidden;isolation:isolate;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease!important;}
.contact-details-v7 .contact-fact-card::after{content:attr(data-detail-number);position:absolute;right:13px;top:7px;color:rgba(179,15,26,.075);font:900 70px/1 'Nunito Sans',sans-serif;z-index:-1;}
.contact-details-v7 .contact-fact-card>i{display:grid;place-items:center;width:54px;height:54px;font-size:23px!important;color:#B30F1A!important;background:rgba(179,15,26,.085);border-radius:50%;}
.contact-details-v7 .contact-fact-card small{color:#B30F1A!important;font-weight:900!important;letter-spacing:.13em!important;}
.contact-details-v7 .contact-fact-card strong{color:#0C0C0C!important;font-size:clamp(14px,1.3vw,17px);overflow-wrap:anywhere;}
.contact-details-v7 .contact-fact-card:hover{transform:translateY(-7px)!important;box-shadow:0 18px 40px rgba(0,0,0,.11)!important;}
/* Services introduction - bright white and subtle red decorative details */
.southern-services-intro-v7{position:relative;overflow:hidden;background:#fff!important;color:#0C0C0C!important;padding:105px 0!important;}
.southern-services-intro-v7::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 8% 18%,rgba(179,15,26,.11),transparent 24%),radial-gradient(circle at 91% 79%,rgba(179,15,26,.10),transparent 22%),repeating-linear-gradient(-42deg,transparent 0 125px,rgba(179,15,26,.05) 126px 128px,transparent 129px 260px);pointer-events:none;}
.southern-intro-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,100px);align-items:center;}
.southern-intro-number{display:block;font:900 12px Montserrat,sans-serif;letter-spacing:.16em;color:#B30F1A;margin-bottom:28px;}
.southern-services-intro-v7 h2{font-size:clamp(40px,4.5vw,70px);line-height:1.03;letter-spacing:-.035em;text-transform:uppercase;color:#0C0C0C;margin:0;}
.southern-services-intro-v7 h2 em{font-style:normal;color:#B30F1A;}
.southern-intro-description>p{font:500 16px/1.85 Montserrat,sans-serif;color:#444;margin:0 0 25px;}
.southern-intro-highlights{display:grid;gap:15px;margin:0 0 30px;}
.southern-intro-highlights span{display:flex;align-items:center;gap:14px;font:700 13px/1.5 Montserrat,sans-serif;color:#111;}
.southern-intro-highlights i{flex:0 0 22px;color:#B30F1A;font-size:19px;}
/* About section as company history, black/red brand only */
.about-history-v7 .about-details-panel{background:#0C0C0C!important;border-top:5px solid #B30F1A!important;}
.about-history-v7 .about-detail-list span{display:flex;align-items:flex-start;gap:18px!important;line-height:1.65!important;}
.about-history-v7 .about-detail-list i{flex:0 0 24px!important;width:24px!important;color:#B30F1A!important;margin-right:3px!important;}
.about-history-v7 .about-copy-panel{background:#f6f6f6!important;}
.about-history-v7 .about-copy-panel .eyebrow{color:#B30F1A!important;}
.about-history-v7 .about-copy-panel h2{color:#0C0C0C!important;}
.about-history-v7 .about-copy-panel h2 em{color:#B30F1A!important;}
.about-history-v7 .about-copy-panel .kicker-desc,.about-history-v7 .about-copy-panel p{color:#484848!important;}
.about-history-v7 .about-copy-meta span{color:#0C0C0C!important;gap:17px!important;align-items:flex-start;}
.about-history-v7 .about-copy-meta i{width:23px!important;flex:0 0 23px;color:#B30F1A!important;}
.about-history-v7 .about-copy-actions .btn.outline{background:#0C0C0C!important;border-color:#0C0C0C!important;}
@media(max-width:900px){.southern-intro-grid{grid-template-columns:1fr;gap:35px}.contact-details-v7 .info-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){.contact-details-v7 .info-grid{grid-template-columns:1fr!important}.southern-services-intro-v7{padding:70px 0!important}}

/* Southern v8: targeted story/icon and upper-banner corrections */
.about-history-v7 .about-details-panel .about-detail-list {gap:18px!important;}
.about-history-v7 .about-details-panel .about-detail-list span{
  display:grid!important;grid-template-columns:22px minmax(0,1fr)!important;
  column-gap:20px!important;align-items:center!important;
  font-size:clamp(12px,1vw,14px)!important;line-height:1.5!important;
  min-width:0;overflow-wrap:anywhere;
}
.about-history-v7 .about-details-panel .about-detail-list span i{
  font-size:21px!important;line-height:1!important;width:22px!important;
  height:24px!important;flex:none!important;margin:0!important;
  transform:none!important;justify-self:center;
}
/* Separate top shade, preserving the approved clear-left/right-dark horizontal fade. */
.title-banner::after{
  content:""!important;position:absolute!important;inset:0!important;
  background:linear-gradient(to bottom,rgba(0,0,0,.72) 0%,rgba(0,0,0,.28) 22%,rgba(0,0,0,0) 48%)!important;
  z-index:-1!important;pointer-events:none!important;
}
/* Keep the existing design fluid at narrow and highly zoomed effective viewports. */
html,body{max-width:100%;}
.nav-wrap,.container,.about-split-grid,.southern-intro-grid,.contact-grid,.footer-grid,.info-grid{min-width:0;}
img,video,iframe{max-width:100%;}
.leadconnector-shell,.leadconnector-shell iframe,.map-card,.map-card iframe{max-width:100%;min-width:0;}
.about-history-v7 .about-details-panel{max-width:100%;}
@media(max-width:1180px){
  .site-header .nav{gap:clamp(10px,1.5vw,20px);}
  .site-header .nav>a{font-size:clamp(11px,1.08vw,14px);gap:6px;}
}
@media(max-width:1050px){
  .site-header .menu-toggle{display:block!important;}
  .site-header .nav{position:fixed!important;top:128px!important;left:12px!important;right:12px!important;bottom:auto!important;
    display:none!important;flex-direction:column!important;gap:0!important;align-items:stretch!important;
    width:auto!important;max-height:calc(100dvh - 144px)!important;overflow-y:auto!important;
    background:#0C0C0C!important;border:1px solid rgba(255,255,255,.18)!important;padding:24px!important;z-index:75!important;}
  .site-header .nav.open{display:flex!important;}
  .site-header .nav>a{font-size:14px!important;padding:15px 2px!important;}
  .site-header .nav-actions{margin-left:auto;}
}
@media(max-width:700px){
  .about-history-v7 .about-details-panel .about-detail-list{gap:15px!important;}
  .about-history-v7 .about-details-panel .about-detail-list span{column-gap:15px!important;}
  .about-history-v7 .about-details-panel .about-detail-list span i{font-size:19px!important;}
  .southern-intro-grid,.about-showcase .about-split-grid,.contact-grid{min-width:0;}
  .title-banner .banner-copy{width:100%!important;max-width:100%!important;}
  .title-banner h1{font-size:clamp(30px,9vw,48px)!important;overflow-wrap:anywhere;}
  .leadconnector-shell iframe{width:100%!important;}
  .about-copy-actions{gap:10px;}
  .about-copy-actions .btn{max-width:100%;}
}
@media(max-width:360px){
  .site-header .brand img{width:min(42vw,145px)!important;max-width:100%!important;}
  .nav-wrap{gap:10px!important;}
  .site-header .nav{left:8px!important;right:8px!important;padding:18px!important;}
  .title-banner h1{font-size:clamp(27px,8.5vw,34px)!important;}
  .about-history-v7 .about-details-panel{padding:22px 18px!important;}
  .about-history-v7 .about-details-panel .about-detail-list span{font-size:12px!important;}
}
@media(orientation:landscape) and (max-height:500px){
  .site-header .nav{max-height:calc(100dvh - 105px)!important;top:92px!important;}
  .hero{min-height:700px!important;}
}

/* v9 — responsive overlap safeguards: retain established styling */
.site-header{z-index:90!important}
.nav-wrap{width:min(1280px,calc(100% - 32px))!important;max-width:1280px!important;min-height:clamp(82px,9vw,112px)!important;gap:clamp(12px,2vw,28px)!important;}
.nav-wrap>.brand{min-width:0!important;flex-shrink:0!important;}
.nav-wrap>.nav{min-width:0!important;}
.nav-wrap>.nav>a{white-space:nowrap;}
.title-banner{min-height:clamp(570px,58svh,760px)!important;height:auto!important;align-items:flex-end!important;padding-top:clamp(185px,19vw,265px)!important;padding-bottom:clamp(50px,6vw,90px)!important;}
.title-banner .container{min-width:0!important;max-width:100%!important;}
.title-banner .banner-copy{width:min(900px,100%)!important;max-width:100%!important;min-width:0!important;}
.title-banner h1{font-size:clamp(34px,5vw,78px)!important;line-height:1.06!important;overflow-wrap:break-word!important;}
.title-banner p{overflow-wrap:anywhere!important;}
.hero{height:auto!important;min-height:max(780px,100svh)!important;}
.hero-content{padding-top:clamp(210px,21vw,335px)!important;padding-bottom:clamp(70px,8vw,120px)!important;min-width:0!important;}
.hero-content h1{font-size:clamp(44px,6.6vw,105px)!important;overflow-wrap:break-word!important;}
.topbar-inner{min-width:0!important;display:flex!important;align-items:center!important;gap:clamp(8px,1vw,20px)!important;flex-wrap:nowrap!important;}
.topbar-inner>span{min-width:0!important;white-space:nowrap!important;}
@media(max-width:1180px){
 .site-header .menu-toggle{display:block!important;}
 .site-header .nav{position:fixed!important;top:128px!important;left:12px!important;right:12px!important;bottom:auto!important;display:none!important;flex-direction:column!important;gap:0!important;align-items:stretch!important;width:auto!important;max-height:calc(100dvh - 144px)!important;overflow-y:auto!important;background:#0C0C0C!important;border:1px solid rgba(255,255,255,.18)!important;padding:24px!important;z-index:99!important;}
 .site-header .nav.open{display:flex!important;}
 .site-header .nav>a{font-size:14px!important;padding:15px 2px!important;}
 .site-header .nav-actions{margin-left:auto!important;}
 .topbar-inner>span:nth-of-type(2){display:none!important;}
}
@media(max-width:900px){
 .nav-wrap{min-height:90px!important;}
 .title-banner{min-height:560px!important;padding-top:220px!important;padding-bottom:58px!important;}
 .title-banner .container{width:calc(100% - 40px)!important;padding-right:0!important;}
 .title-banner .banner-copy{width:100%!important;max-width:100%!important;}
 .title-banner h1{font-size:clamp(35px,7.5vw,64px)!important;}
 .hero{min-height:max(760px,100svh)!important;}
 .hero-content{padding-top:clamp(215px,24vw,290px)!important;}
 .hero-content h1{font-size:clamp(42px,8vw,76px)!important;}
}
@media(max-width:600px){
 .nav-wrap{width:calc(100% - 24px)!important;min-height:82px!important;}
 .topbar-inner>span:nth-of-type(3){display:none!important;}
 .topbar-inner{justify-content:space-between!important;}
 .title-banner{min-height:520px!important;padding-top:190px!important;padding-bottom:48px!important;}
 .title-banner .container{width:calc(100% - 32px)!important;padding-right:0!important;}
 .title-banner h1{font-size:clamp(31px,8.5vw,48px)!important;line-height:1.07!important;}
 .title-banner .banner-copy{margin-right:0!important;}
 .hero{min-height:max(710px,100svh)!important;}
 .hero-content{padding-top:clamp(198px,34vw,260px)!important;padding-bottom:55px!important;}
 .hero-content h1{font-size:clamp(34px,10vw,55px)!important;line-height:1.05!important;}
 .hero-content p{font-size:clamp(13px,3.4vw,16px)!important;}
 .hero-content .btn-row{gap:10px!important;}
 .hero-content .btn{max-width:100%!important;}
}
@media(max-width:360px){
 .topbar-inner{font-size:9px!important;gap:6px!important;}
 .topbar-inner>span:first-child{white-space:normal!important;line-height:1.15!important;}
 .site-header .brand img{width:clamp(110px,38vw,140px)!important;}
 .title-banner{padding-top:170px!important;min-height:490px!important;}
 .title-banner h1{font-size:clamp(27px,8vw,33px)!important;}
 .hero-content{padding-top:185px!important;}
 .hero-content h1{font-size:clamp(31px,9.5vw,40px)!important;}
}
@media(max-height:550px) and (min-width:601px){
 .hero{min-height:700px!important;}
 .title-banner{min-height:590px!important;padding-top:190px!important;}
 .site-header .nav{top:92px!important;max-height:calc(100dvh - 104px)!important;}
}
@media(min-width:1921px){
 .hero-content,.title-banner .banner-copy{max-width:1080px!important;}
 .hero-content h1{font-size:min(6vw,105px)!important;}
}

/* v9 — responsive overlap safeguards: retain established styling */
.site-header{z-index:90!important}
.nav-wrap{width:min(1280px,calc(100% - 32px))!important;max-width:1280px!important;min-height:clamp(82px,9vw,112px)!important;gap:clamp(12px,2vw,28px)!important;}
.nav-wrap>.brand{min-width:0!important;flex-shrink:0!important;}
.nav-wrap>.nav{min-width:0!important;}
.nav-wrap>.nav>a{white-space:nowrap;}
.title-banner{min-height:clamp(570px,58svh,760px)!important;height:auto!important;align-items:flex-end!important;padding-top:clamp(185px,19vw,265px)!important;padding-bottom:clamp(50px,6vw,90px)!important;}
.title-banner .container{min-width:0!important;max-width:100%!important;}
.title-banner .banner-copy{width:min(900px,100%)!important;max-width:100%!important;min-width:0!important;}
.title-banner h1{font-size:clamp(34px,5vw,78px)!important;line-height:1.06!important;overflow-wrap:break-word!important;}
.title-banner p{overflow-wrap:anywhere!important;}
.hero{height:auto!important;min-height:max(780px,100svh)!important;}
.hero-content{padding-top:clamp(210px,21vw,335px)!important;padding-bottom:clamp(70px,8vw,120px)!important;min-width:0!important;}
.hero-content h1{font-size:clamp(44px,6.6vw,105px)!important;overflow-wrap:break-word!important;}
.topbar-inner{min-width:0!important;display:flex!important;align-items:center!important;gap:clamp(8px,1vw,20px)!important;flex-wrap:nowrap!important;}
.topbar-inner>span{min-width:0!important;white-space:nowrap!important;}
@media(max-width:1180px){
 .site-header .menu-toggle{display:block!important;}
 .site-header .nav{position:fixed!important;top:128px!important;left:12px!important;right:12px!important;bottom:auto!important;display:none!important;flex-direction:column!important;gap:0!important;align-items:stretch!important;width:auto!important;max-height:calc(100dvh - 144px)!important;overflow-y:auto!important;background:#0C0C0C!important;border:1px solid rgba(255,255,255,.18)!important;padding:24px!important;z-index:99!important;}
 .site-header .nav.open{display:flex!important;}
 .site-header .nav>a{font-size:14px!important;padding:15px 2px!important;}
 .site-header .nav-actions{margin-left:auto!important;}
 .topbar-inner>span:nth-of-type(2){display:none!important;}
}
@media(max-width:900px){
 .nav-wrap{min-height:90px!important;}
 .title-banner{min-height:560px!important;padding-top:220px!important;padding-bottom:58px!important;}
 .title-banner .container{width:calc(100% - 40px)!important;padding-right:0!important;}
 .title-banner .banner-copy{width:100%!important;max-width:100%!important;}
 .title-banner h1{font-size:clamp(35px,7.5vw,64px)!important;}
 .hero{min-height:max(760px,100svh)!important;}
 .hero-content{padding-top:clamp(215px,24vw,290px)!important;}
 .hero-content h1{font-size:clamp(42px,8vw,76px)!important;}
}
@media(max-width:600px){
 .nav-wrap{width:calc(100% - 24px)!important;min-height:82px!important;}
 .topbar-inner>span:nth-of-type(3){display:none!important;}
 .topbar-inner{justify-content:space-between!important;}
 .title-banner{min-height:520px!important;padding-top:190px!important;padding-bottom:48px!important;}
 .title-banner .container{width:calc(100% - 32px)!important;padding-right:0!important;}
 .title-banner h1{font-size:clamp(31px,8.5vw,48px)!important;line-height:1.07!important;}
 .title-banner .banner-copy{margin-right:0!important;}
 .hero{min-height:max(710px,100svh)!important;}
 .hero-content{padding-top:clamp(198px,34vw,260px)!important;padding-bottom:55px!important;}
 .hero-content h1{font-size:clamp(34px,10vw,55px)!important;line-height:1.05!important;}
 .hero-content p{font-size:clamp(13px,3.4vw,16px)!important;}
 .hero-content .btn-row{gap:10px!important;}
 .hero-content .btn{max-width:100%!important;}
}
@media(max-width:360px){
 .topbar-inner{font-size:9px!important;gap:6px!important;}
 .topbar-inner>span:first-child{white-space:normal!important;line-height:1.15!important;}
 .site-header .brand img{width:clamp(110px,38vw,140px)!important;}
 .title-banner{padding-top:170px!important;min-height:490px!important;}
 .title-banner h1{font-size:clamp(27px,8vw,33px)!important;}
 .hero-content{padding-top:185px!important;}
 .hero-content h1{font-size:clamp(31px,9.5vw,40px)!important;}
}
@media(max-height:550px) and (min-width:601px){
 .hero{min-height:700px!important;}
 .title-banner{min-height:590px!important;padding-top:190px!important;}
 .site-header .nav{top:92px!important;max-height:calc(100dvh - 104px)!important;}
}
@media(min-width:1921px){
 .hero-content,.title-banner .banner-copy{max-width:1080px!important;}
 .hero-content h1{font-size:min(6vw,105px)!important;}
}

/* v10 - Guarantee mobile logo/header clears hero and title-banner content. */
@media(max-width:1180px){
  .site-header .nav-wrap{position:relative;align-items:center!important;}
  .site-header .brand{align-self:center!important;max-width:calc(100% - 76px)!important;}
  .site-header .brand img{max-height:clamp(110px,35vw,166px)!important;width:auto!important;max-width:min(180px,100%)!important;object-fit:contain!important;}
  .hero{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;height:auto!important;min-height:max(770px,100svh)!important;}
  .hero-content{box-sizing:border-box!important;flex:none!important;width:min(100% - 28px,900px)!important;max-width:900px!important;padding-top:0!important;margin-top:calc(var(--southern-header-bottom, 218px) + 28px)!important;padding-bottom:clamp(50px,7vw,90px)!important;position:relative!important;z-index:2!important;}
  .hero-content .eyebrow{line-height:1.65!important;}
  .title-banner{padding-top:calc(var(--southern-header-bottom, 218px) + 30px)!important;}
}
@media(max-width:600px){
  .site-header .brand img{max-height:clamp(108px,36vw,154px)!important;}
  .hero-content{margin-top:calc(var(--southern-header-bottom, 210px) + 32px)!important;width:calc(100% - 32px)!important;}
  .hero-content h1{font-size:clamp(31px,9.2vw,52px)!important;line-height:1.09!important;}
  .hero-content .eyebrow{font-size:clamp(10px,2.8vw,12px)!important;letter-spacing:.12em!important;margin-bottom:14px!important;}
  .hero-content p{line-height:1.65!important;margin-top:14px!important;}
  .title-banner{padding-top:calc(var(--southern-header-bottom, 210px) + 28px)!important;}
}
@media(max-width:360px){
  .hero-content{margin-top:calc(var(--southern-header-bottom, 210px) + 34px)!important;}
  .hero-content h1{font-size:clamp(29px,9vw,36px)!important;}
}

/* v11 - Full accessible mobile navigation: retains existing branding and visual theme. */
@media(max-width:1180px){
 .site-header .nav{position:fixed!important;inset:0!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;max-width:none!important;height:100dvh!important;min-height:100svh!important;max-height:none!important;display:none!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:0!important;overflow-y:auto!important;overscroll-behavior:contain!important;background:#0C0C0C!important;border:0!important;border-radius:0!important;box-sizing:border-box!important;padding:clamp(62px,12svh,100px) clamp(22px,7vw,50px) max(35px,env(safe-area-inset-bottom))!important;z-index:1000!important;}
 .site-header .nav.open{display:flex!important;}
 .site-header .nav .mobile-menu-brand{display:flex!important;order:-1!important;align-self:center!important;justify-content:center!important;align-items:center!important;width:min(240px,72vw)!important;height:auto!important;min-height:0!important;margin:0 auto clamp(24px,4svh,44px)!important;flex-shrink:0!important;}
 .site-header .nav .mobile-menu-brand img{display:block!important;width:100%!important;max-width:220px!important;height:auto!important;max-height:clamp(105px,22svh,180px)!important;object-fit:contain!important;}
 .site-header .nav .mobile-menu-close{position:fixed!important;top:max(12px,env(safe-area-inset-top))!important;right:max(14px,env(safe-area-inset-right))!important;display:grid!important;place-items:center!important;width:48px!important;height:48px!important;border:1px solid rgba(255,255,255,.40)!important;border-radius:5px!important;background:#B30F1A!important;color:#fff!important;z-index:1002!important;cursor:pointer!important;order:-2!important;}
 .site-header .nav>a{display:flex!important;justify-content:center!important;align-items:center!important;gap:12px!important;width:100%!important;min-height:52px!important;flex:0 0 auto!important;padding:15px 4px!important;font-size:clamp(14px,3vw,18px)!important;text-align:center!important;border-bottom:1px solid rgba(255,255,255,.14)!important;white-space:normal!important;}
 .site-header .nav>a:last-of-type{border-bottom:0!important;}
 body.mobile-nav-open{overflow:hidden!important;}
}
@media(max-width:360px), (max-height:540px){
 .site-header .nav{padding-top:60px!important;}
 .site-header .nav .mobile-menu-brand{margin-bottom:14px!important;}
 .site-header .nav .mobile-menu-brand img{max-height:95px!important;}
 .site-header .nav>a{min-height:45px!important;padding:10px 3px!important;}
}

/* Southern audit: accessible duplicated ticker and linked contact cards */
.marquee-duplicate{display:contents}
.contact-fact-card strong a{color:inherit;text-decoration:none}
.contact-fact-card strong a:hover,.contact-fact-card strong a:focus-visible{text-decoration:underline}
/* Static poster fallback when reduced motion or data-saving is requested */
@media (prefers-reduced-motion: reduce){.hero-video,.title-banner-video{display:none!important}.hero,.title-banner{background-image:url("https://assets.cdn.filesafe.space/T6sb6mufTf2DLFftX3Rb/media/69403078ab2594b55105e1ab.jpg");background-size:cover;background-position:center}}
html.data-saving-video .hero-video,html.data-saving-video .title-banner-video{display:none!important}
html.data-saving-video .hero,html.data-saving-video .title-banner{background-image:url("https://assets.cdn.filesafe.space/T6sb6mufTf2DLFftX3Rb/media/69403078ab2594b55105e1ab.jpg");background-size:cover;background-position:center}

/* v12: Banner videos never flash their old poster frame when navigating. */
.title-banner[data-video-background="true"]{background-image:none!important;background-color:#0C0C0C!important;}
.title-banner .title-banner-video{opacity:0!important;transition:none!important;}
.title-banner .title-banner-video.southern-video-playing{opacity:1!important;}
@media (prefers-reduced-motion:reduce){.title-banner[data-video-background="true"]{background-image:url("https://assets.cdn.filesafe.space/T6sb6mufTf2DLFftX3Rb/media/69403078ab2594b55105e1ab.jpg")!important;}}
html.data-saving-video .title-banner[data-video-background="true"]{background-image:url("https://assets.cdn.filesafe.space/T6sb6mufTf2DLFftX3Rb/media/69403078ab2594b55105e1ab.jpg")!important;}
@media(max-width:1180px){
  /* No red separator below the mobile logo. */
  .site-header .nav .mobile-menu-brand{border:0!important;border-bottom:0!important;box-shadow:none!important;}
  .site-header .nav .mobile-menu-brand:before,.site-header .nav .mobile-menu-brand:after{content:none!important;display:none!important;}
  /* Short centered active/hover lines instead of edge-to-edge lines. */
  .site-header .nav>a{position:relative!important;}
  .site-header .nav>a:after{left:50%!important;right:auto!important;width:0!important;max-width:180px!important;transform:translateX(-50%)!important;bottom:0!important;}
  .site-header .nav>a.active:after,.site-header .nav>a:hover:after{width:min(48%,180px)!important;}
  .hero-content{margin-top:calc(var(--southern-header-bottom, 210px) + 58px)!important;}
}
@media(max-width:600px){.hero-content{margin-top:calc(var(--southern-header-bottom, 210px) + 62px)!important;}}
@media(max-width:1180px){
 .site-header .nav>a:not(.mobile-menu-brand):first-of-type{border-top:0!important;}
 .site-header .nav .mobile-menu-brand + a{border-top:0!important;}
 .site-header .nav .mobile-menu-brand + a:before{display:none!important;content:none!important;}
}


/* October 2026 requested color and background refinements */
body .service-area-home{background:#f2f3f5!important;background-image:none!important;}
body .service-area-home .section-copy h2,body .service-area-home .section-copy p,body .service-area-home .section-copy .kicker-desc{color:#202124!important;}
body .service-area-home .section-copy .eyebrow,body .service-area-home .section-copy h2 em{color:#B30F1A!important;}
body .southern-video-section::before{background:linear-gradient(rgba(255,255,255,.84),rgba(255,255,255,.84)),url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078b4f42081e952393e.jpg") center/cover no-repeat!important;}
body .southern-video-section h2,body .southern-video-section .kicker-desc{color:#171717!important;}
body .southern-video-section .eyebrow,body .southern-video-section h2 em{color:#B30F1A!important;}
body footer{background:linear-gradient(to bottom,#777777 0%,#424242 37%,#080808 100%)!important;color:#fff!important;}
body .intro,body .hero + .intro{background:#fff!important;background-image:none!important;color:#151515!important;}
body .intro .section-copy h2,body .intro .section-copy h2 *,body .intro .section-copy p,body .intro .section-copy .welcome-main-copy,body .intro .section-copy .kicker-desc,body .intro .icon-points span,body .intro .icon-points div{color:#171717!important;}
body .intro .section-copy h2 em,body .intro .section-copy > .eyebrow,body .intro .icon-points i{color:#B30F1A!important;}
body .hero .hero-gradient{background:linear-gradient(to bottom,rgba(0,0,0,.15) 0%,rgba(0,0,0,.32) 36%,rgba(0,0,0,.23) 65%,rgba(255,255,255,.75) 88%,#fff 100%)!important;}

/* Editorial content sections added from approved migration document */
.southern-content-feature {padding:clamp(70px,8vw,115px) 0; background:#fff; color:#171717;}
.southern-content-feature .container {max-width:1160px;margin:0 auto;}
.southern-content-feature h2 {max-width:900px;font-size:clamp(30px,4vw,56px);line-height:1.12;color:#171717;margin:16px 0 20px;}
.southern-content-feature h2 em {color:#b22020;font-style:normal;}
.southern-content-feature p {max-width:850px;line-height:1.8;color:#444;margin:0 0 28px;}
.southern-content-feature .eyebrow {color:#b22020;}
.southern-content-feature.sc-process {background:#f3f3f3;}
.sc-steps {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:32px 0;}
.sc-steps article {padding:23px 17px;background:#fff;border-top:3px solid #b22020;min-width:0;box-shadow:0 12px 28px rgba(0,0,0,.045);}
.sc-steps article b {font-size:28px;color:#b22020;}
.sc-steps article h3 {font-size:17px;color:#181818;margin:10px 0;}
.sc-steps article p {font-size:14px;line-height:1.6;margin:0;}
@media(max-width:900px){.sc-steps{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:580px){.sc-steps{grid-template-columns:1fr;}.southern-content-feature{padding:60px 0;}}

/* Requested content refinement: checks, CTAs, responsive heading sizing */
.hero-checks{display:flex;justify-content:center;align-items:center;gap:12px 30px;flex-wrap:wrap;margin:0 auto 28px;max-width:960px}
.hero-check{display:flex;align-items:center;gap:9px;color:#fff;font:700 15px/1.5 Montserrat,sans-serif;text-align:left}
.hero-check i{color:#fff;font-size:18px;flex:none}
.intro .section-copy>.btn{margin-top:12px}
#services .service-grid+.btn,.mission-section .mission-grid+.btn,.southern-content-feature .container>.btn{display:table;width:max-content;max-width:100%;margin:30px auto 0}
.section-copy h2,.section-head h2,.mission-heading h2,.landing-band .band-copy h2,.title-banner h1{font-size:clamp(34px,4vw,60px)!important;line-height:1.08!important;overflow-wrap:break-word}
.hero h1{font-size:clamp(46px,6.1vw,92px)!important;line-height:1.02!important}
.about-copy-panel .about-story-paragraph{margin:0 0 14px;line-height:1.8}
.why-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
#additions .band-copy .eyebrow i{font-size:19px;margin-right:9px;color:#B30F1A}
@media(max-width:1050px){.why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.hero-checks{flex-direction:column;align-items:flex-start;max-width:365px;margin-bottom:22px}.hero-check{font-size:12px}.hero h1{font-size:clamp(37px,9.5vw,49px)!important}.section-copy h2,.section-head h2,.mission-heading h2,.landing-band .band-copy h2,.title-banner h1{font-size:clamp(30px,8vw,39px)!important}.why-grid{grid-template-columns:1fr}.intro .section-copy>.btn{font-size:11px}}


/* Southern round 4: aligned Home services, mission/vision and CTA */
#services .service-grid{align-items:stretch!important}
#services .service-card{justify-content:flex-start!important;min-width:0!important;min-height:480px!important;cursor:default!important}
#services .service-card .svc-top{margin-bottom:24px!important;min-height:28px!important}
#services .service-card h3{min-height:74px!important;display:flex!important;align-items:flex-end!important;margin:0 0 18px!important}
#services .service-card p{margin:0!important;flex:1 1 auto!important}
#services .service-card b{margin-top:22px!important;line-height:1!important;letter-spacing:4px!important;font-size:20px!important}
#services .service-card:hover{transform:none!important}
#services .section-head h2{font-size:clamp(32px,3.7vw,55px)!important}
/* Center incomplete second row of seven flip cards without changing their internals */
body .why .why-grid{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:14px!important}
body .why .why-grid>.why-item{flex:0 0 calc((100% - 42px)/4)!important;max-width:calc((100% - 42px)/4)!important;min-width:0!important}
/* White filter over CTA's existing background photograph; red form panel */
body .home-cta-visual::before{background:linear-gradient(rgba(255,255,255,.87),rgba(255,255,255,.87)),url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078ca729862f5fc5f27.jpg') center/cover no-repeat!important}
body .home-cta-visual .form-wrap{background:#B30F1A!important;background-image:none!important}
body .home-cta-visual .cta-copy h2,body .home-cta-visual .cta-copy p,body .home-cta-visual .cta-copy .kicker-desc{color:#171717!important}
body .home-cta-visual .cta-copy .eyebrow,body .home-cta-visual .cta-copy h2 em{color:#B30F1A!important}
body .home-cta-visual .cta-copy::after{background:rgba(179,15,26,.22)!important}
@media(max-width:1050px){body .why .why-grid>.why-item{flex-basis:calc((100% - 14px)/2)!important;max-width:calc((100% - 14px)/2)!important}}
@media(max-width:900px){#services .service-card{min-height:410px!important}}
@media(max-width:600px){body .why .why-grid>.why-item{flex-basis:100%!important;max-width:100%!important}#services .service-card{min-height:0!important}#services .service-card h3{min-height:0!important}#services .service-card p{flex:initial!important}}

/* October 30 content and design alignment corrections */
body .service-area-home{background-color:#e7e9ec!important;background-image:none!important;}
body footer{background:linear-gradient(180deg,#585858 0%,#363636 30%,#1c1c1c 65%,#050505 100%)!important;color:#fff!important;}
/* Match added sections to established section typography. */
body .southern-content-feature{font-family:inherit!important;}
body .southern-content-feature h2{font-family:inherit!important;font-weight:inherit;letter-spacing:inherit;font-size:clamp(34px,4vw,60px)!important;line-height:1.08!important;}
body .southern-content-feature .eyebrow{font-family:inherit!important;letter-spacing:inherit;}
body .southern-content-feature p{font-family:inherit!important;font-size:inherit;}
body .southern-content-feature.sc-builders{background:#fff;}
body .southern-content-feature.sc-service-overview{background:#f5f5f5;}
body .southern-content-feature.sc-quality{background:#fff;}
body .southern-content-feature.sc-process{background:#f3f3f3;}
body .mission-section .mission-grid + .btn{display:none!important;}
@media(max-width:600px){body .southern-content-feature h2{font-size:clamp(30px,8vw,39px)!important;}}
/* Exact typography parity with existing section headers and body copy */
body .southern-content-feature h2{font-family:'Nunito Sans',sans-serif!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:-.04em!important;}
body .southern-content-feature .eyebrow{font-family:Montserrat,sans-serif!important;font-weight:900!important;letter-spacing:.22em!important;}
body .southern-content-feature p{font:500 15px/1.8 Montserrat,sans-serif!important;}

/* Southern Oct 30 R6: targeted refinements; keep existing layout and content */
/* Subtle black 10% overlay on hero video, independent of white bottom fade */
.hero{isolation:isolate}
.hero .hero-video{z-index:0}
.hero::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.10);pointer-events:none;z-index:1}
body .hero .hero-gradient{position:absolute;z-index:2;background:linear-gradient(to bottom,transparent 0%,transparent 65%,rgba(255,255,255,.55) 85%,#fff 100%)!important;pointer-events:none}
.hero .hero-content{position:relative;z-index:3}
/* A bit more width without touching site-wide margins */
body .intro .intro-grid{width:calc(100% - 64px)!important;max-width:1390px!important;margin-inline:auto!important}
/* Readable light-to-charcoal gradient: neutralize old decorative dark masks */
body footer{background:#777!important;background-image:linear-gradient(180deg,#8b8b8b 0%,#777 17%,#575757 44%,#383838 75%,#232323 100%)!important;color:#fff!important}
body footer::before{background:radial-gradient(circle at 20% 15%,rgba(255,255,255,.08),transparent 40%)!important;opacity:1!important}
body footer::after{opacity:.18!important}
/* Filter on contact-tab form photograph is light grey, not charcoal */
body .contact-form-visual::before{background:linear-gradient(rgba(229,231,234,.87),rgba(229,231,234,.87)),url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078bc0508028893d957.jpg") center/cover no-repeat!important}
body .contact-form-visual .section-copy h2,body .contact-form-visual .section-copy p,body .contact-form-visual .kicker-desc,body .contact-form-visual .contact-bullets span{color:#181818!important}
body .contact-form-visual .section-copy h2 em,body .contact-form-visual .eyebrow,body .contact-form-visual .contact-bullets i{color:#B30F1A!important}
/* Consistent desktop 38px section and banner typography */
@media(min-width:701px){body h1,body h2,body .hero h1,body .section-copy h2,body .section-head h2,body .mission-heading h2,body .landing-band .band-copy h2,body .title-banner h1,body .southern-services-intro-v7 h2,body .southern-content-feature h2,body .cta-form .cta-copy h2{font-size:38px!important;line-height:1.18!important}}
@media(max-width:700px){body h1,body h2,body .hero h1,body .section-copy h2,body .section-head h2,body .mission-heading h2,body .landing-band .band-copy h2,body .title-banner h1,body .southern-services-intro-v7 h2,body .southern-content-feature h2{font-size:clamp(29px,7.3vw,36px)!important;line-height:1.17!important}body .intro .intro-grid{width:calc(100% - 36px)!important}}


/* --- FINAL SOUTHERN DESIGN REFINEMENTS --- */
/* Restore heading scale prior to the 38px lock */
@media(min-width:701px){
  body .hero h1{font-size:clamp(46px,6.1vw,92px)!important;line-height:1.02!important;}
  body .section-copy h2,body .section-head h2,body .mission-heading h2,body .landing-band .band-copy h2,body .title-banner h1,body .southern-services-intro-v7 h2,body .southern-content-feature h2,body .cta-form .cta-copy h2{font-size:clamp(34px,4vw,60px)!important;line-height:1.08!important;}
}
@media(max-width:700px){
  body .hero h1{font-size:clamp(37px,9.5vw,49px)!important;line-height:1.05!important;}
  body .section-copy h2,body .section-head h2,body .mission-heading h2,body .landing-band .band-copy h2,body .title-banner h1,body .southern-services-intro-v7 h2,body .southern-content-feature h2,body .cta-form .cta-copy h2{font-size:clamp(30px,8vw,39px)!important;line-height:1.12!important;}
}
/* Footer: lighter charcoal gradient with subtle red background details (no lines) */
body footer{background:#5d5d5d!important;background-image:linear-gradient(180deg,#757575 0%,#626262 16%,#484848 38%,#2e2e2e 68%,#161616 100%)!important;color:#fff!important;}
body footer::before{content:"";position:absolute;inset:0;background:
  radial-gradient(circle at 14% 18%,rgba(179,15,26,.18),transparent 22%),
  radial-gradient(circle at 84% 20%,rgba(179,15,26,.14),transparent 18%),
  radial-gradient(circle at 20% 84%,rgba(179,15,26,.10),transparent 17%),
  radial-gradient(circle at 72% 74%,rgba(255,255,255,.06),transparent 22%),
  radial-gradient(circle at 48% 102%,rgba(255,255,255,.07),transparent 34%)!important;opacity:1!important;pointer-events:none;}
body footer::after{content:"";position:absolute;inset:0;background:
  radial-gradient(circle at 64% 26%,rgba(179,15,26,.09),transparent 12%),
  radial-gradient(circle at 88% 76%,rgba(179,15,26,.12),transparent 15%),
  radial-gradient(circle at 36% 38%,rgba(255,255,255,.04),transparent 14%)!important;opacity:1!important;pointer-events:none;}
footer h3::after{display:none!important;}
/* Structured modern layouts for the newer content sections */
body .southern-content-feature.structured-band{position:relative;overflow:hidden;}
body .sc-feature-grid,body .sc-process-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:clamp(28px,4vw,56px);align-items:center;}
body .feature-image-left .sc-copy{order:2;} body .feature-image-left .sc-media{order:1;}
body .sc-copy{min-width:0;}
body .sc-copy>.btn{display:table!important;width:max-content;margin-top:6px;}
body .sc-media{position:relative;min-width:0;}
body .sc-photo-card{position:relative;margin:0;border-radius:28px;overflow:hidden;min-height:440px;box-shadow:0 22px 48px rgba(0,0,0,.12);background:#d9d9d9;}
body .sc-photo-card img{width:100%;height:100%;display:block;object-fit:cover;}
body .sc-photo-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 42%,rgba(0,0,0,.18) 100%);pointer-events:none;}
body .sc-photo-stack{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:end;}
body .sc-photo-primary{min-height:470px;}
body .sc-photo-secondary{min-height:320px;}
body .quality-stack .sc-photo-secondary{margin-top:38px;}
body .sc-floating-chip{position:absolute;left:-10px;bottom:22px;display:flex;align-items:center;gap:12px;padding:16px 18px;border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 16px 32px rgba(0,0,0,.14);max-width:250px;z-index:2;}
body .sc-floating-chip i{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(179,15,26,.12);color:#B30F1A;font-size:17px;flex:none;}
body .sc-floating-chip span{font:800 12px/1.5 Montserrat,sans-serif;color:#171717;letter-spacing:.08em;text-transform:uppercase;}
body .chip-bottom{left:auto;right:-10px;bottom:18px;}
body .sc-builders{background:linear-gradient(180deg,#fff 0%,#fff 72%,#f6f6f6 100%)!important;}
body .sc-service-overview{background:linear-gradient(180deg,#f7f7f7 0%,#f2f2f2 100%)!important;}
body .sc-quality{background:linear-gradient(180deg,#fff 0%,#fff 68%,#f7f7f7 100%)!important;}
body .sc-process{background:linear-gradient(180deg,#f2f2f2 0%,#ededed 100%)!important;}
body .sc-builders::before,body .sc-service-overview::before,body .sc-quality::before,body .sc-process::before{content:"";position:absolute;inset:auto auto 0 0;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(179,15,26,.08),transparent 68%);transform:translate(-22%,28%);pointer-events:none;}
body .sc-service-overview::before{left:auto;right:0;transform:translate(26%,26%);}
body .sc-quality::before{width:320px;height:320px;transform:translate(-26%,34%);}
body .sc-process::before{left:auto;right:0;transform:translate(28%,34%);}
body .sc-process-grid{grid-template-columns:minmax(0,1.08fr) minmax(290px,.82fr);}
body .sc-process-grid .sc-copy p:first-of-type{max-width:740px;}
body .sc-process-grid .sc-copy .sc-steps{margin-top:20px;}
@media(max-width:980px){
  body .sc-feature-grid,body .sc-process-grid{grid-template-columns:1fr;}
  body .feature-image-left .sc-copy,body .feature-image-left .sc-media{order:initial;}
  body .sc-floating-chip{left:18px;right:auto;bottom:18px;max-width:220px;}
  body .chip-bottom{right:18px;left:auto;}
}
@media(max-width:640px){
  body .sc-photo-stack{grid-template-columns:1fr;}
  body .sc-photo-primary,body .sc-photo-secondary,body .sc-photo-card{min-height:290px;}
  body .quality-stack .sc-photo-secondary{margin-top:0;}
  body .sc-floating-chip{position:static;margin-top:14px;max-width:none;}
  body .sc-builders::before,body .sc-service-overview::before,body .sc-quality::before,body .sc-process::before{width:180px;height:180px;}
}


/* --- FINAL REQUESTED REDESIGN & COLOR TUNING --- */
:root{--brand-red:#B30F1A;--brand-red-dark:#7d0e16;--brand-light-gray:#efefef;--brand-mid-gray:#dcdcdc;}

/* Header / nav accents in black instead of red */
.site-header .nav>a i,.site-header .services-menu>button i{color:#111!important;transition:.25s;}
.site-header .nav>a.active,.site-header .nav>a.active i,.site-header .nav>a:hover i{color:#111!important;}
.site-header .nav>a:after,.site-header .services-menu>button:after,.site-header .nav>a.active:after,.site-header .nav>a:hover:after{background:#111!important;}

/* Stronger hero readability while preserving white bottom fade */
.hero::after{background:rgba(0,0,0,.28)!important;}
body .hero .hero-gradient{background:linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,.10) 52%,rgba(255,255,255,.52) 87%,#fff 100%)!important;}

/* Title banners with red gradient overlay */
.title-banner::before{content:""!important;position:absolute!important;inset:0!important;z-index:-1!important;background:linear-gradient(to left,rgba(179,15,26,.92) 0%,rgba(179,15,26,.72) 22%,rgba(125,14,22,.42) 44%,rgba(0,0,0,.16) 68%,rgba(0,0,0,0) 100%)!important;pointer-events:none!important;}
.banner-copy{background:rgba(13,14,13,.50)!important;}

/* Footer: light gray with subtle red details and larger red titles */
body footer{background:#efefef!important;background-image:linear-gradient(180deg,#f5f5f5 0%,#eeeeee 36%,#e3e3e3 100%)!important;color:#171717!important;}
body footer::before{content:"";position:absolute;inset:0;background:
  radial-gradient(circle at 12% 18%,rgba(179,15,26,.12),transparent 20%),
  radial-gradient(circle at 84% 20%,rgba(179,15,26,.10),transparent 18%),
  radial-gradient(circle at 20% 82%,rgba(179,15,26,.08),transparent 16%),
  radial-gradient(circle at 70% 72%,rgba(179,15,26,.07),transparent 18%)!important;opacity:1!important;pointer-events:none;}
body footer::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 56% 36%,rgba(255,255,255,.65),transparent 22%)!important;opacity:1!important;pointer-events:none;}
footer h3{color:var(--brand-red)!important;font-size:20px!important;letter-spacing:.08em!important;margin-bottom:20px!important;}
footer h3::after{display:none!important;}
footer .footer-links a,footer .footer-links span,footer .footer-brand p,footer .copyright{color:#3f3f3f!important;}
footer .footer-links i{color:var(--brand-red)!important;}
footer .footer-brand img{filter:none!important;}
footer .copyright{border-top:1px solid rgba(0,0,0,.10)!important;}

/* Home service area should be black */
.home-page .service-area-home{background:#0C0C0C!important;color:#fff!important;position:relative;}
.home-page .service-area-home::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.16),rgba(0,0,0,.16));pointer-events:none;}
.home-page .service-area-home .section-copy,.home-page .service-area-home .map-card{position:relative;z-index:1;}
.home-page .service-area-home .section-copy h2,.home-page .service-area-home .eyebrow,.home-page .service-area-home p,.home-page .service-area-home .kicker-desc{color:#fff!important;}
.home-page .service-area-home .map-card{border-color:rgba(255,255,255,.12)!important;}

/* About image composition: full cover without empty black box */
.about-page .about-story-full .intro-grid{grid-template-columns:1.08fr .92fr!important;align-items:stretch!important;min-height:720px;}
.about-page .about-showcase .site-about-visual{display:block!important;position:relative!important;min-height:100%!important;height:auto!important;border:none!important;padding:0!important;overflow:hidden!important;background:linear-gradient(rgba(0,0,0,.16),rgba(0,0,0,.16)),url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078bc0508bc7593d8ee.jpg") center/cover no-repeat!important;}
.about-page .about-showcase .about-image-panel{position:absolute!important;inset:0!important;display:block!important;min-height:100%!important;}
.about-page .about-showcase .about-details-panel{position:absolute!important;left:0!important;bottom:0!important;margin:0!important;width:min(90%,470px)!important;background:#0C0C0C!important;padding:34px 38px 30px!important;box-shadow:0 20px 44px rgba(0,0,0,.24)!important;}
.about-page .about-showcase .about-copy-panel{display:flex;flex-direction:column;justify-content:center;}
@media(max-width:900px){.about-page .about-story-full .intro-grid{grid-template-columns:1fr!important;min-height:auto!important}.about-page .about-showcase .site-about-visual{min-height:520px!important}}

/* About mission + vision should have red filter */
.about-page .mission-visual{background-image:linear-gradient(rgba(179,15,26,.68),rgba(125,14,22,.78)),url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078ca729862f5fc5f27.jpg')!important;background-attachment:fixed!important;}
.about-page .mission-visual::before{background:linear-gradient(90deg,rgba(179,15,26,.28),rgba(125,14,22,.08))!important;}
.about-page .mission-visual .mission-card{background:rgba(10,10,10,.76)!important;border-color:rgba(255,255,255,.12)!important;}
.about-page .mission-visual .mission-card.vision{background:rgba(179,15,26,.90)!important;}

/* About marquee directly below mission should be red */
.about-page .about-services-banner{background:var(--brand-red)!important;color:#fff!important;}
.about-page .about-services-banner .marquee-track span,.about-page .about-services-banner .marquee-track span::after{color:#fff!important;}

/* About Why Choose section: red themed to match home feel */
.about-page .why{background:linear-gradient(180deg,#b30f1a 0%,#9f121b 100%)!important;color:#fff!important;}
.about-page .why .section-head .eyebrow,.about-page .why .section-head h2,.about-page .why .section-head .kicker-desc{color:#fff!important;}
.about-page .why-item.flip-card .flip-front,.about-page .why-item.flip-card .flip-back{background:linear-gradient(180deg,#fff,#f8f3f3)!important;border:1px solid rgba(255,255,255,.28)!important;}
.about-page .why-item.flip-card .flip-front::before,.about-page .why-item.flip-card .flip-back::before{background:radial-gradient(circle, rgba(179,15,26,.18), rgba(179,15,26,0))!important;}
.about-page .why-item.flip-card h3{background:none!important;color:#171717!important;}
.about-page .why-item.flip-card .flip-back p{color:#202020!important;}
.about-page .why-item.flip-card .flip-back .back-icon,.about-page .why-item.flip-card .flip-front>i,.about-page .why-item.flip-card .flip-cue i{color:var(--brand-red)!important;}

/* --- Requested redesign for the four newer home sections --- */
.home-page .southern-content-feature{padding:0!important;}
.home-page .southern-content-feature .container{width:100%!important;max-width:none!important;margin:0!important;}
.home-page .southern-content-feature .eyebrow{margin-bottom:14px;}
.home-page .southern-content-feature h2{font-size:clamp(38px,4.5vw,68px)!important;line-height:1.02!important;}
.home-page .southern-content-feature p{font:500 15px/1.85 Montserrat,sans-serif!important;}

/* 1) Experienced Builders: left red content, right full-width image */
.home-page .sc-builders{background:#fff!important;}
.home-page .sc-builders .sc-feature-grid{display:grid!important;grid-template-columns:minmax(380px,.95fr) minmax(0,1.05fr)!important;gap:0!important;align-items:stretch!important;}
.home-page .sc-builders .sc-copy{background:var(--brand-red)!important;color:#fff!important;padding:92px clamp(28px,6vw,96px)!important;display:flex;flex-direction:column;justify-content:center;}
.home-page .sc-builders .sc-copy .eyebrow,.home-page .sc-builders .sc-copy h2,.home-page .sc-builders .sc-copy p{color:#fff!important;max-width:700px;}
.home-page .sc-builders .sc-copy h2 em{color:#fff!important;}
.home-page .sc-builders .sc-copy .btn{background:#111!important;border-color:#111!important;color:#fff!important;}
.home-page .sc-builders .sc-media{min-height:100%!important;}
.home-page .sc-builders .sc-photo-card{min-height:100%!important;height:100%!important;border-radius:0!important;box-shadow:none!important;}
.home-page .sc-builders .sc-photo-card img{height:100%!important;}
.home-page .sc-builders .sc-photo-card::after{background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.16))!important;}
.home-page .sc-builders .sc-floating-chip{display:none!important;}

/* 2) Comprehensive Construction: centered content with parallax background image */
.home-page .sc-service-overview{position:relative!important;background:none!important;overflow:hidden!important;}
.home-page .sc-service-overview::before{content:""!important;position:absolute;inset:0;background:linear-gradient(rgba(239,239,239,.86),rgba(239,239,239,.86)),url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078bc0508396a93d984.jpg') center/cover fixed no-repeat!important;pointer-events:none;}
.home-page .sc-service-overview .sc-feature-grid{position:relative;z-index:1;display:block!important;padding:110px 24px!important;}
.home-page .sc-service-overview .sc-copy{max-width:920px;margin:0 auto!important;text-align:center!important;padding:0!important;}
.home-page .sc-service-overview .sc-copy p{margin-left:auto!important;margin-right:auto!important;color:#333!important;max-width:820px;}
.home-page .sc-service-overview .sc-copy .btn{margin:6px auto 0!important;}
.home-page .sc-service-overview .sc-media,.home-page .sc-service-overview .sc-photo-stack,.home-page .sc-service-overview .sc-floating-chip{display:none!important;}

/* 3) Quality Materials: left image and right content, full width */
.home-page .sc-quality{background:#fff!important;}
.home-page .sc-quality .sc-feature-grid{display:grid!important;grid-template-columns:minmax(0,1.02fr) minmax(380px,.98fr)!important;gap:0!important;align-items:stretch!important;}
.home-page .sc-quality .sc-media{order:1!important;min-height:100%!important;}
.home-page .sc-quality .sc-copy{order:2!important;padding:92px clamp(28px,6vw,96px)!important;background:#f3f3f3!important;display:flex;flex-direction:column;justify-content:center;}
.home-page .sc-quality .sc-photo-stack{display:block!important;height:100%!important;}
.home-page .sc-quality .sc-photo-primary,.home-page .sc-quality .sc-photo-secondary{min-height:100%!important;height:100%!important;margin:0!important;}
.home-page .sc-quality .sc-photo-secondary{display:none!important;}
.home-page .sc-quality .sc-photo-card{height:100%!important;min-height:620px!important;border-radius:0!important;box-shadow:none!important;}
.home-page .sc-quality .sc-floating-chip{display:none!important;}

/* 4) Process: content left, five points in grid right, parallax background */
.home-page .sc-process{position:relative!important;background:none!important;overflow:hidden!important;}
.home-page .sc-process::before{content:""!important;position:absolute!important;inset:0!important;background:linear-gradient(rgba(12,12,12,.86),rgba(12,12,12,.86)),url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078b4f4204b7952393c.jpg') center/cover fixed no-repeat!important;pointer-events:none!important;transform:none!important;width:auto!important;height:auto!important;border-radius:0!important;}
.home-page .sc-process .sc-process-grid{position:relative;z-index:1;display:block!important;padding:110px 24px!important;}
.home-page .sc-process .sc-copy{display:grid!important;grid-template-columns:minmax(280px,.74fr) minmax(0,1.26fr)!important;grid-template-areas:"eyebrow steps" "title steps" "text steps" "button steps";gap:18px 42px;align-items:start;max-width:1340px;margin:0 auto;}
.home-page .sc-process .sc-copy>.eyebrow{grid-area:eyebrow;color:#fff!important;align-self:end;}
.home-page .sc-process .sc-copy>h2{grid-area:title;color:#fff!important;max-width:580px;}
.home-page .sc-process .sc-copy>h2 em{color:#fff!important;}
.home-page .sc-process .sc-copy>p:first-of-type{grid-area:text;color:#e7e7e7!important;max-width:540px;}
.home-page .sc-process .sc-copy>.btn{grid-area:button;background:var(--brand-red)!important;border-color:var(--brand-red)!important;color:#fff!important;align-self:start;margin-top:8px!important;}
.home-page .sc-process .sc-copy>.sc-steps{grid-area:steps;margin:0!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px!important;align-self:stretch;}
.home-page .sc-process .sc-copy>.sc-steps article{background:rgba(255,255,255,.96)!important;border:0!important;box-shadow:none!important;min-height:0!important;padding:24px 20px!important;}
.home-page .sc-process .sc-copy>.sc-steps article:last-child{grid-column:1 / -1;}
.home-page .sc-process .sc-copy>.sc-steps article b{color:var(--brand-red)!important;}
.home-page .sc-process .sc-copy>.sc-steps article h3{color:#141414!important;}
.home-page .sc-process .sc-copy>.sc-steps article p{color:#4d4d4d!important;}
.home-page .sc-process .sc-media,.home-page .sc-process .sc-floating-chip{display:none!important;}

@media(max-width:980px){
  .home-page .sc-builders .sc-feature-grid,
  .home-page .sc-quality .sc-feature-grid{grid-template-columns:1fr!important;}
  .home-page .sc-builders .sc-photo-card,
  .home-page .sc-quality .sc-photo-card{min-height:420px!important;}
  .home-page .sc-process .sc-copy{grid-template-columns:1fr!important;grid-template-areas:"eyebrow" "title" "text" "steps" "button"!important;}
}
@media(max-width:680px){
  .home-page .sc-builders .sc-copy,.home-page .sc-quality .sc-copy{padding:64px 24px!important;}
  .home-page .sc-service-overview .sc-feature-grid,.home-page .sc-process .sc-process-grid{padding:78px 18px!important;}
  .home-page .sc-process .sc-copy>.sc-steps{grid-template-columns:1fr!important;}
  .home-page .sc-process .sc-copy>.sc-steps article:last-child{grid-column:auto;}
}


/* Fine-tune nav icon color so only active/hover go black */
.site-header .nav>a i,.site-header .services-menu>button i{color:inherit!important;}
.site-header .nav>a.active,.site-header .nav>a.active i{color:#111!important;}
.site-header .nav>a:hover i,.site-header .services-menu>button:hover i{color:#111!important;}
.site-header .nav>a:after,.site-header .services-menu>button:after{background:#111!important;}


/* Targeted fixes — October 30, 2026. Scope: requested sections only. */
/* Shared footer: C8 gray with richer subtle red atmospheric shapes; dark text. */
body footer {
  background-color:#C8C8C8 !important;
  background-image:linear-gradient(180deg,#d1d1d1 0%,#C8C8C8 55%,#c1c1c1 100%) !important;
  color:#171717 !important;
}
body footer::before {
  background-image:
    radial-gradient(ellipse 28% 57% at 7% 13%,rgba(179,15,26,.23),transparent 76%),
    radial-gradient(ellipse 24% 48% at 90% 21%,rgba(179,15,26,.21),transparent 75%),
    radial-gradient(ellipse 27% 46% at 18% 91%,rgba(179,15,26,.19),transparent 73%),
    radial-gradient(ellipse 25% 40% at 78% 83%,rgba(179,15,26,.16),transparent 74%) !important;
  opacity:1 !important;
}
body footer::after {
  background-image:radial-gradient(ellipse 18% 33% at 49% 40%,rgba(179,15,26,.09),transparent 76%) !important;
  opacity:1 !important;
}
body footer .footer-brand p,
body footer .footer-links a,
body footer .footer-links a span,
body footer .footer-links span,
body footer .footer-links.info span,
body footer .copyright,
body footer .copyright span,
body footer .copyright i {color:#191919 !important;}
body footer h3 {color:#B30F1A !important;}

/* Home service area: solid black only, never image or inherited overlay. */
body.home-page .service-area-home {
  background:#080808 !important;
  background-image:none !important;
}
body.home-page .service-area-home::before,
body.home-page .service-area-home::after {
  background:none !important;
  background-image:none !important;
  content:none !important;
  display:none !important;
}
body.home-page .service-area-home .section-copy h2,
body.home-page .service-area-home .section-copy p,
body.home-page .service-area-home .section-copy .kicker-desc {color:#fff !important;}
body.home-page .service-area-home .section-copy .eyebrow,
body.home-page .service-area-home .section-copy h2 em {color:#B30F1A !important;}

/* Home process: red photograph filter and coherent title/number typography. */
body.home-page .sc-process::before {
  top:0 !important;right:0 !important;bottom:0 !important;left:0 !important;
  width:100% !important;height:100% !important;inset:0 !important;
  border-radius:0 !important;transform:none !important;
  background-image:linear-gradient(rgba(150,15,24,.82),rgba(110,8,18,.88)),url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078b4f4204b7952393c.jpg') !important;
  background-size:cover !important;background-position:center !important;
  background-attachment:fixed !important;
}
body.home-page .sc-process .sc-copy > h2,
body.home-page .sc-process .sc-steps article b {
  font-family:'Nunito Sans',sans-serif !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:-.035em !important;
}
body.home-page .sc-process .sc-steps article b {font-size:clamp(36px,3.5vw,54px) !important;line-height:1.03 !important;}
body.home-page .sc-process .sc-copy > h2 {font-size:clamp(42px,4.5vw,68px) !important;}

/* Buttons: true flex centering, including icons, on all pages. */
body a.btn,body button.btn,
body .southern-content-feature .sc-copy > a.btn,
body .home-page .sc-process .sc-copy > a.btn {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:9px !important;
  text-align:center !important;
  width:max-content;
  max-width:100% !important;
  min-height:54px;
  padding:12px 30px !important;
  line-height:1.45 !important;
  vertical-align:middle !important;
}
body a.btn i,body button.btn i{margin:0!important;flex-shrink:0;}
body.home-page .sc-service-overview .sc-copy > a.btn {display:inline-flex !important; margin:10px auto 0 !important;}

/* Full-cover parallax image, not a radial circle; keep foreground legible. */
body.home-page .sc-service-overview {
  background-image:linear-gradient(rgba(230,230,230,.82),rgba(230,230,230,.86)),url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078bc0508396a93d984.jpg') !important;
  background-color:#e5e5e5 !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-attachment:fixed !important;
}
body.home-page .sc-service-overview::before,
body.home-page .sc-service-overview::after {
  content:none !important;display:none !important;
  background:none !important;
}
body.home-page .sc-service-overview .sc-copy h2,
body.home-page .sc-service-overview .sc-copy h2:not(em) {color:#171717 !important;}
body.home-page .sc-service-overview .sc-copy h2 em {color:#B30F1A !important;}
body.home-page .sc-service-overview .sc-copy p {color:#272727 !important;}

/* Navigation red only on Home; leave all other tabs untouched. */
body.home-page .site-header .nav>a.active,
body.home-page .site-header .nav>a.active i,
body.home-page .site-header .nav>a:hover,
body.home-page .site-header .nav>a:hover i {color:#B30F1A !important;}
body.home-page .site-header .nav>a.active::after,
body.home-page .site-header .nav>a:hover::after {background:#B30F1A !important;}

/* About: prevent white copy from disappearing on the red Why Choose section. */
body.about-page .why .section-head h2,
body.about-page .why .section-head h2 em,
body.about-page .why .section-head .eyebrow,
body.about-page .why .section-head .kicker-desc {color:#121212 !important;}
body.about-page .why .flip-front h3,
body.about-page .why .flip-back p {color:#151515 !important;}

/* Match mission/vision between Home and About, using black instead of red in text. */
body.home-page .mission-visual,
body.about-page .mission-visual {
  background-image:linear-gradient(rgba(179,15,26,.68),rgba(125,14,22,.78)),url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078ca729862f5fc5f27.jpg') !important;
  background-position:center !important;background-size:cover !important;
}
body.home-page .mission-visual::before,
body.about-page .mission-visual::before {background:linear-gradient(90deg,rgba(179,15,26,.28),rgba(125,14,22,.08)) !important;}
body.home-page .mission-visual .mission-card,
body.about-page .mission-visual .mission-card {background:rgba(10,10,10,.77) !important;border-color:rgba(255,255,255,.12) !important;}
body.home-page .mission-visual .mission-card.vision,
body.about-page .mission-visual .mission-card.vision {background:rgba(179,15,26,.90) !important;}
body.home-page .mission-heading h2 em,
body.about-page .mission-heading h2 em,
body.home-page .mission-visual .mission-card > i,
body.about-page .mission-visual .mission-card > i {color:#080808 !important;}

@media(max-width:900px){
 body.home-page .sc-service-overview{background-attachment:scroll !important;}
 body.home-page .sc-process::before{background-attachment:scroll !important;}
 body.home-page .mission-visual,body.about-page .mission-visual{background-attachment:scroll !important;}
}
@media(max-width:600px){
 body.home-page .sc-process .sc-copy > h2 {font-size:clamp(32px,8.2vw,42px) !important;}
 body.home-page .sc-process .sc-steps article b {font-size:40px !important;}
 body a.btn,body button.btn{width:100%;}
}
/* Legible mission symbols over dark cards while red copy remains black. */
body.home-page .mission-visual .mission-card:not(.vision)>i,
body.about-page .mission-visual .mission-card:not(.vision)>i {color:#fff!important;}
body.home-page .mission-visual .mission-card.vision>i,
body.about-page .mission-visual .mission-card.vision>i {color:#080808!important;}
/* The whole Home service-area area must stay solid black. */
body.home-page .service-area-home .area-grid {background:#080808!important;background-image:none!important;}


/* --- Requested precise corrections: nav, banners, hero, home services, services contact --- */
/* Global nav active/hover should stay white */
.site-header .nav>a,
.site-header .nav>a i{color:#fff!important;}
.site-header .nav>a:hover,
.site-header .nav>a:hover i,
.site-header .nav>a.active,
.site-header .nav>a.active i{color:#fff!important;}
.site-header .nav>a::after,
.site-header .nav>a:hover::after,
.site-header .nav>a.active::after,
.site-header .services-menu>button::after{background:#fff!important;}

/* Hero readability: subtle shadow/right-side edge */
.hero .hero-content{filter:drop-shadow(14px 0 18px rgba(0,0,0,.28));}
.hero .hero-content h1,
.hero .hero-content .eyebrow,
.hero .hero-content .hero-check,
.hero .hero-content p{ text-shadow: 2px 2px 8px rgba(0,0,0,.42); }
.hero::after{background:rgba(0,0,0,.34)!important;}

/* Title banners: black eyebrow + additional top-left red gradient for topbar readability */
.title-banner::before{content:""!important;position:absolute!important;inset:0!important;z-index:-1!important;background:
 linear-gradient(135deg, rgba(179,15,26,.90) 0%, rgba(179,15,26,.68) 18%, rgba(179,15,26,.18) 38%, rgba(0,0,0,0) 58%),
 linear-gradient(to left, rgba(179,15,26,.90) 0%, rgba(179,15,26,.68) 20%, rgba(125,14,22,.38) 42%, rgba(0,0,0,.16) 68%, rgba(0,0,0,0) 100%)!important;
 pointer-events:none!important;}
.title-banner .eyebrow{color:#111!important;}

/* Home services overview: light gray filtered cover background, no circle or inline images */
body.home-page .sc-service-overview{position:relative!important;background:none!important;overflow:hidden!important;}
body.home-page .sc-service-overview::before{content:""!important;position:absolute!important;inset:0!important;background:linear-gradient(rgba(229,231,234,.88),rgba(229,231,234,.88)),url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078bc0508396a93d984.jpg') center/cover fixed no-repeat!important;pointer-events:none!important;display:block!important;}
body.home-page .sc-service-overview .sc-feature-grid{position:relative!important;z-index:1!important;display:block!important;padding:110px 24px!important;}
body.home-page .sc-service-overview .sc-copy{max-width:920px!important;margin:0 auto!important;text-align:center!important;padding:0!important;}
body.home-page .sc-service-overview .sc-copy p{color:#2a2a2a!important;max-width:840px!important;margin-left:auto!important;margin-right:auto!important;}
body.home-page .sc-service-overview .sc-copy .eyebrow{color:#B30F1A!important;}
body.home-page .sc-service-overview .sc-copy h2,
body.home-page .sc-service-overview .sc-copy h2 em{color:#111!important;}
body.home-page .sc-service-overview .sc-media,
body.home-page .sc-service-overview .sc-photo-stack,
body.home-page .sc-service-overview .sc-photo-card,
body.home-page .sc-service-overview .sc-photo-primary,
body.home-page .sc-service-overview .sc-photo-secondary,
body.home-page .sc-service-overview .sc-floating-chip{display:none!important;visibility:hidden!important;opacity:0!important;max-height:0!important;overflow:hidden!important;}

/* Home service cards preview alignment */
#services .service-card p{color:#dfdfdf!important;}

/* Services-page consultation section should have a light gray filter */
body .landing-contact{background-image:linear-gradient(rgba(229,231,234,.88),rgba(229,231,234,.88)),url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078ca72984e72fc5fd3.jpg')!important;background-size:cover!important;background-position:center!important;}
body .landing-contact::before,body .landing-contact::after{display:none!important;content:none!important;}
body .landing-contact-copy .eyebrow{color:#B30F1A!important;}
body .landing-contact-copy h2,body .landing-contact-copy p,body .landing-contact-copy .kicker-desc{color:#171717!important;}
body .landing-contact-copy h2 em{color:#171717!important;}

/* Process section filter red + larger matching title-style numbers */
body.home-page .sc-process::before{background:linear-gradient(rgba(179,15,26,.76),rgba(125,14,22,.84)),url('https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078b4f4204b7952393c.jpg') center/cover fixed no-repeat!important;}
body.home-page .sc-process .sc-steps article b{font-family:'Nunito Sans',sans-serif!important;font-weight:900!important;font-size:48px!important;letter-spacing:-.03em!important;line-height:1!important;}
body.home-page .sc-process .sc-steps article h3{font-family:'Nunito Sans',sans-serif!important;font-size:24px!important;font-weight:900!important;line-height:1.05!important;text-transform:uppercase!important;}

/* Buttons: center icon + text perfectly */
body a.btn,body button.btn,
body .btn-row a.btn,
body .southern-content-feature .sc-copy > a.btn,
body .home-page .sc-process .sc-copy > a.btn,
body .landing-contact a.btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;text-align:center!important;padding-inline:26px!important;}
body a.btn i,body button.btn i{margin:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;}

/* Services-area home must remain black without image */
body.home-page .service-area-home,
body.home-page .service-area-home .area-grid{background:#080808!important;background-image:none!important;}
body.home-page .service-area-home::before,
body.home-page .service-area-home::after{content:none!important;display:none!important;background:none!important;}
body.home-page .service-area-home .section-copy h2,
body.home-page .service-area-home .section-copy p,
body.home-page .service-area-home .kicker-desc,
body.home-page .service-area-home .city-chip,
body.home-page .service-area-home .map-card{color:#fff!important;}
body.home-page .service-area-home .eyebrow,
body.home-page .service-area-home .section-copy h2 em,
body.home-page .service-area-home .city-chip i{color:#B30F1A!important;}

/* Ensure all buttons in dark sections are centered on mobile too */
@media(max-width:700px){
 body a.btn,body button.btn{width:100%!important;}
 body .hero .hero-content{filter:drop-shadow(8px 0 12px rgba(0,0,0,.24));}
}


/* FIX: Comprehensive Construction section uses its actual section background.
   No pseudo-layer or auxiliary image block; dark defaults cannot bleed through. */
body.home-page main section.southern-content-feature.sc-service-overview {
  position:relative !important;
  isolation:isolate !important;
  background-color:#e3e3e3 !important;
  background-image:linear-gradient(rgba(230,230,230,.88),rgba(230,230,230,.88)),url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078bc0508396a93d984.jpg") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-attachment:fixed !important;
  color:#171717 !important;
}
body.home-page main section.southern-content-feature.sc-service-overview::before,
body.home-page main section.southern-content-feature.sc-service-overview::after {
  content:none !important;
  display:none !important;
  background:none !important;
}
body.home-page main section.southern-content-feature.sc-service-overview .sc-feature-grid {
  position:relative !important;
  z-index:1 !important;
  display:block !important;
  padding:110px 24px !important;
}
body.home-page main section.southern-content-feature.sc-service-overview .sc-copy {
  max-width:920px !important;
  margin-inline:auto !important;
  text-align:center !important;
}
body.home-page main section.southern-content-feature.sc-service-overview .sc-copy h2 {color:#171717 !important;}
body.home-page main section.southern-content-feature.sc-service-overview .sc-copy h2 em {color:#B30F1A !important;}
body.home-page main section.southern-content-feature.sc-service-overview .sc-copy p {color:#303030 !important;}
body.home-page main section.southern-content-feature.sc-service-overview .sc-copy .eyebrow {color:#B30F1A !important;}
@media(max-width:900px){
  body.home-page main section.southern-content-feature.sc-service-overview{background-attachment:scroll !important;}
}


/* Precision correction: home navigation stays white on active/hover, overriding old home-specific red styles. */
body.home-page .site-header .nav>a.active,
body.home-page .site-header .nav>a.active i,
body.home-page .site-header .nav>a:hover,
body.home-page .site-header .nav>a:hover i,
body.home-page .site-header .nav>a:focus-visible,
body.home-page .site-header .nav>a:focus-visible i {
  color:#fff !important;
}
body.home-page .site-header .nav>a.active::after,
body.home-page .site-header .nav>a:hover::after,
body.home-page .site-header .nav>a:focus-visible::after {
  background:#fff !important;
}
/* Banner labels legible in white, not black. */
body .title-banner .eyebrow {color:#fff !important;}
/* Services intro heading uses the same typography as the established section titles. */
body .southern-services-intro-v7 h2,
body .southern-services-intro-v7 h2 em {
  font-family:'Nunito Sans',sans-serif !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:-.04em !important;
  line-height:1.08 !important;
}


/* Latest approved edits: home service excerpts, brighter background, red Services CTA, left float controls. */
/* Slightly lighten Home Services photograph while retaining dark readable cards. */
body.home-page main #services{background-color:#262626!important;}
body.home-page main #services::before{
  background:linear-gradient(rgba(0,0,0,.66),rgba(0,0,0,.66)),url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078bc0508bc7593d8ee.jpg") center/cover fixed no-repeat!important;
}
/* Services tab form: red overlay and white eyebrow with readable light copy. */
body main section.landing-contact{
  background-image:linear-gradient(rgba(162,13,24,.81),rgba(125,9,19,.87)),url("https://storage.googleapis.com/msgsndr/T6sb6mufTf2DLFftX3Rb/media/69403078ca72984e72fc5fd3.jpg")!important;
  background-position:center!important;
  background-size:cover!important;
}
body main section.landing-contact .landing-contact-copy .eyebrow,
body main section.landing-contact .landing-contact-copy h2,
body main section.landing-contact .landing-contact-copy h2 em,
body main section.landing-contact .landing-contact-copy p,
body main section.landing-contact .landing-contact-copy .kicker-desc{color:#fff!important;}
/* Move existing floating WhatsApp and back-to-top controls to the left; chatbot owns its original script. */
body .float-tools{left:22px!important;right:auto!important;}
@media(max-width:900px){body.home-page main #services::before,body main section.landing-contact{background-attachment:scroll!important;}}
@media(max-width:600px){body .float-tools{left:12px!important;right:auto!important;bottom:16px!important;}}
