/* 2026-10-31 Tarjeeh premium revision: actual coded site, no screenshot/UI assets. */
:root{--rev-max:1240px;--rev-white:#fff;--rev-forest:#203831}
html{scroll-behavior:smooth}body{overflow-x:clip;text-rendering:optimizeLegibility}h1,h2,h3{overflow-wrap:break-word;text-wrap:balance}p{overflow-wrap:break-word}.site-header{position:relative;z-index:100;box-shadow:0 6px 30px #142a2112}.header-shell{position:relative}.head-inner{min-height:86px}.header-cta,.btn{transition:background .25s,color .25s,transform .25s,box-shadow .25s}.header-cta:hover,.btn:hover{transform:translateY(-3px);box-shadow:0 14px 30px #131e251c}.image-tile,.deep-dive-card,.visual-frame,.info-card{transition:transform .35s,box-shadow .35s,background .35s}.image-tile:hover,.deep-dive-card:hover{transform:translateY(-7px);box-shadow:0 20px 50px #13221c21}.image-tile-photo img,.intro-image img,.story-image img,.visual-frame img{transition:transform .9s cubic-bezier(.2,.7,.2,1)}.image-tile:hover img,.visual-frame:hover img{transform:scale(1.055)}.dropdown-menu{z-index:120;box-shadow:0 15px 40px #09141038}.mobile-nav{z-index:110}
/* animated text strip, not a screenshot */
.rotating-strip{width:100%;overflow:hidden;background:#243a33;color:#fff;border-block:1px solid #ffffff26;padding:16px 0;position:relative;isolation:isolate}.rotating-strip-track{display:flex;width:max-content;animation:travel 38s linear infinite}.rotating-strip-group{flex-shrink:0;display:flex;align-items:center;gap:28px;padding-right:28px}.rotating-strip-group span{white-space:nowrap;font-size:.68rem;letter-spacing:.14em;font-weight:850;text-transform:uppercase}.rotating-strip-group b{font-size:14px;opacity:.65;font-weight:400}@keyframes travel{to{transform:translateX(-50%)}}.rotating-strip:hover .rotating-strip-track{animation-play-state:paused}
/* Premium responsive photographic carousel */
.gallery-section{padding-block:78px 98px}.gallery-head{display:grid;grid-template-columns:1.2fr .9fr;align-items:end;gap:12px 50px;margin-bottom:28px}.gallery-head .eyebrow{grid-column:1/-1}.gallery-head h2{font-size:clamp(2.55rem,4.5vw,5.5rem);line-height:1.02;letter-spacing:-.05em;margin:0}.gallery-head>p{font-size:1rem;max-width:450px;line-height:1.75;color:var(--muted);margin:0}.visual-carousel{position:relative}.visual-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:8px 2px 22px;scroll-behavior:smooth}.visual-track::-webkit-scrollbar{display:none}.visual-track:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.visual-frame{scroll-snap-align:start;flex:0 0 calc((100% - 36px)/3);min-width:0;margin:0;position:relative;overflow:hidden;aspect-ratio:1.22;background:#243b36}.visual-frame img{width:100%;height:100%;object-fit:cover;display:block}.visual-frame figcaption{position:absolute;inset:auto 0 0 0;padding:46px 20px 18px;background:linear-gradient(transparent,#051810da);color:white;font-size:.71rem;font-weight:850;letter-spacing:.12em}.gallery-controls{display:flex;justify-content:flex-end;gap:9px;padding-top:7px}.gallery-arrow{display:grid;place-items:center;height:46px;width:51px;cursor:pointer;background:transparent;border:1px solid currentColor;color:inherit;font-size:1.35rem;transition:transform .25s,background .25s,color .25s}.gallery-arrow:hover{background:var(--accent);color:var(--cream);transform:translateY(-2px)}
/* Real-page photographic story with optional exact client logo uniform layer */
.workforce-section{display:grid;grid-template-columns:1.12fr 1fr;gap:clamp(28px,6vw,100px);align-items:center;padding-block:84px 105px}.workforce-photo{position:relative;overflow:hidden;aspect-ratio:760/505;background:#a7b4a4}.workforce-photo>img:first-child{width:100%;height:100%;object-fit:contain;display:block}.workforce-photo .uniform-brand-layer{position:absolute;left:12%;top:50%;width:15%;max-height:10%;object-fit:contain;transform:rotate(-5deg) skew(-7deg);opacity:.75;mix-blend-mode:multiply;filter:contrast(.85) saturate(.6);pointer-events:none}.workforce-photo:after{content:"";position:absolute;inset:0;border:1px solid #ffffff65;pointer-events:none}.workforce-text h2{font-size:clamp(2.4rem,4.4vw,4.7rem);line-height:1.06;margin:14px 0 24px;letter-spacing:-.055em}.workforce-text>p{line-height:1.8;color:var(--muted);margin-bottom:24px}.workforce-text .visual-note{font-size:.77rem;opacity:.8;font-style:italic}.workforce-text .btn{margin-top:10px}
/* Every inner page receives meaningful content sections */
.deep-dive{padding-block:65px 105px}.deep-dive-top{display:grid;grid-template-columns:1.2fr .6fr;gap:55px;align-items:end;margin-bottom:38px}.deep-dive-top h2{font-size:clamp(2.45rem,4vw,4.7rem);line-height:1.06;letter-spacing:-.055em;margin:14px 0 0}.deep-dive-top>p{color:var(--muted);line-height:1.8;font-size:1.03rem;margin:0}.deep-dive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.deep-dive-card{min-width:0;padding:34px 28px 35px;background:var(--surface);border:1px solid var(--line);box-shadow:0 10px 35px #1f392a0b}.deep-card-rule{display:block;width:42px;height:4px;background:var(--accent);margin-bottom:28px}.deep-dive-card h3{font-size:clamp(1.35rem,2vw,1.75rem);line-height:1.17;letter-spacing:-.03em;margin:0 0 17px}.deep-dive-card p{font-size:.92rem;line-height:1.77;color:var(--muted);margin:0}
.site-photo-band{position:relative;min-height:400px;overflow:hidden;isolation:isolate;background:#172c30;display:flex;align-items:center}.site-photo-band-media{position:absolute;right:0;top:0;bottom:0;width:min(60vw,760px);z-index:-2;overflow:hidden}.site-photo-band-media img{width:100%;height:100%;object-fit:cover;display:block}.site-photo-band-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#16272bea 0%,#172d2dda 38%,#0b21255b 73%,#0b212550 100%)}.site-photo-band-copy{padding-block:64px;color:#fff}.site-photo-band-copy h2{font-size:clamp(2.5rem,4.5vw,5rem);max-width:720px;margin:12px 0 17px;line-height:1.03;letter-spacing:-.045em;color:#fff}.site-photo-band-copy p{max-width:560px;line-height:1.75;color:#f1f5f1;font-size:1rem}.site-photo-band-copy .btn{margin-top:15px}.site-photo-band-copy .eyebrow{color:#dcecc3}
/* Make the editorial homepage full-bleed while preserving its cream, forest, copper direction */
.theme-v1 .v1-hero{display:flex;position:relative;align-items:center;min-height:650px;padding:70px max(36px,calc((100% - 1240px)/2));isolation:isolate;background:#f5f0e8;overflow:hidden}.theme-v1 .v1-hero .hero-copy{position:relative;z-index:2;max-width:670px;padding:35px 45px 39px 0;align-self:center}.theme-v1 .v1-hero .hero-visual{position:absolute;inset:0 0 0 auto;width:min(59%,760px);min-width:0;z-index:0;padding:0;overflow:hidden}.theme-v1 .v1-hero .big-photo{height:100%;width:100%;box-shadow:none}.theme-v1 .v1-hero .big-photo img{height:100%;width:100%;object-fit:cover;object-position:center}.theme-v1 .v1-hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#f5f0e8 0%,#f5f0e8 37%,#f5f0e8dc 50%,#f5f0e80a 80%);pointer-events:none}.theme-v1 .v1-hero h1{font-size:clamp(3.65rem,5.25vw,6.2rem);margin:20px 0 25px}.theme-v1 .v1-hero p{max-width:500px;color:#495d51;font-weight:530}.theme-v1 .v1-hero .hero-tiny-image,.theme-v1 .v1-hero .hero-caption{display:none}.theme-v1 .inner-v1{max-width:none;width:100%;min-height:460px;display:flex;position:relative;align-items:center;padding:85px max(36px,calc((100% - 1240px)/2));background:#efe6d8;overflow:hidden;isolation:isolate}.theme-v1 .inner-v1 .inner-copy{position:relative;z-index:2;max-width:680px}.theme-v1 .inner-v1 .inner-photo{position:absolute;right:0;top:0;bottom:0;width:min(58%,760px);height:100%;box-shadow:none;z-index:0}.theme-v1 .inner-v1 .inner-photo img{width:100%;height:100%;object-fit:cover}.theme-v1 .inner-v1::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#efe6d8 3%,#efe6d8f0 37%,#efe6d840 79%,transparent)}.theme-v1 .rotating-strip{background:#30433a}.theme-v1 .gallery-section{border-top:1px solid #2e4c2e20}.theme-v1 .deep-dive-card{background:#fdfaf6}.theme-v1 .site-photo-band{background:#25362f}.theme-v1 .site-photo-band-shade{background:linear-gradient(90deg,#2c3e37f7 0%,#293f36ef 36%,#12251a70 72%)}
/* Industrial B: assertive edge-to-edge photo and accent treatment */
.theme-v2 .v2-hero{min-height:690px}.theme-v2 .v2-hero-image{inset:0 0 0 auto;width:min(61%,760px)}.theme-v2 .v2-hero-image img{object-position:center}.theme-v2 .v2-hero-mask{background:linear-gradient(90deg,#101818 3%,#101818f4 30%,#101818ac 58%,#1018182c 100%)}.theme-v2 .v2-hero-copy{padding-block:105px 110px}.theme-v2 .v2-hero h1{letter-spacing:-.03em}.theme-v2 .v2-hero-side{display:none}.theme-v2 .inner-v2{min-height:470px}.theme-v2 .inner-v2-photo{inset:0 0 0 auto;width:min(60%,760px)}.theme-v2 .inner-v2-photo img{filter:grayscale(.2) brightness(.8)}.theme-v2 .inner-v2:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#171e1c 3%,#171e1cf5 37%,#171e1c77 75%);pointer-events:none}.theme-v2 .inner-v2-inner{z-index:3}.theme-v2 .rotating-strip{background:#d9ee66;color:#1b2720}.theme-v2 .deep-dive-card{background:#222c29;border:1px solid #ffffff21}.theme-v2 .gallery-section{background:#151c1d}.theme-v2 .workforce-section{border-top:1px solid #ffffff1c}.theme-v2 .gallery-arrow:hover{color:#18251c}.theme-v2 .site-photo-band-shade{background:linear-gradient(90deg,#101b1af9 5%,#101b1ae8 45%,#101b1a47 100%)}
/* Civil Modern C: blue editorial hero and dual image storytelling */
.theme-v3 .v3-hero{min-height:695px}.theme-v3 .v3-hero-photo{inset:0 0 0 auto;width:min(64%,900px);z-index:0}.theme-v3 .v3-hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;animation:photoCrossfade 18s linear infinite}.theme-v3 .v3-hero-photo img:first-child{animation-delay:-9s}.theme-v3 .v3-hero-photo img:nth-child(2){animation-delay:0s}.theme-v3 .v3-hero-overlay{z-index:1;background:linear-gradient(90deg,#08283f 0%,#08283ff5 31%,#092f44ab 58%,#113e5654 100%)}@keyframes photoCrossfade{0%,8%{opacity:0;transform:scale(1.02)}15%,44%{opacity:1;transform:scale(1.055)}51%,100%{opacity:0;transform:scale(1.08)}}.theme-v3 .v3-hero-content{z-index:3}.theme-v3 .v3-hero-window{z-index:4}.theme-v3 .inner-v3-back{inset:0 0 0 auto;width:min(63%,900px)}.theme-v3 .inner-v3-back img{filter:saturate(.85) brightness(.8)}.theme-v3 .inner-v3:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0d3350 0%,#0d3350f0 31%,#0d3350ad 60%,#0d335055 100%);z-index:1;pointer-events:none}.theme-v3 .inner-v3-copy{z-index:3}.theme-v3 .rotating-strip{background:#0c415d}.theme-v3 .gallery-section{border-top:1px solid #122f421c}.theme-v3 .deep-dive-card{background:#f7fbfd;border-radius:16px}.theme-v3 .visual-frame{border-radius:14px}.theme-v3 .gallery-arrow{border-radius:100px}.theme-v3 .site-photo-band-shade{background:linear-gradient(90deg,#0c3650f8 5%,#0e4155f0 41%,#0b37516e 100%)}
/* 1024/768 tablet refinements */
@media(max-width:1100px){.deep-dive-top{grid-template-columns:1fr 1fr;gap:22px}.deep-dive-grid{gap:10px}.deep-dive-card{padding:26px 21px}.visual-frame{flex-basis:calc((100% - 18px)/2)}.theme-v1 .v1-hero .hero-copy{max-width:580px;padding-right:10px}.theme-v1 .v1-hero h1{font-size:clamp(3.3rem,6vw,5rem)}}
@media(max-width:800px){.gallery-section{padding-block:65px 77px}.gallery-head{grid-template-columns:1fr;gap:14px}.gallery-head .eyebrow{grid-column:auto}.gallery-head>p{max-width:700px}.workforce-section{gap:28px}.workforce-text h2{font-size:clamp(2.1rem,4vw,3.3rem)}.deep-dive-top{grid-template-columns:1fr;gap:14px}.deep-dive-top>p{max-width:620px}.deep-dive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.deep-dive-card:last-child{grid-column:span 2}.site-photo-band{min-height:360px}.site-photo-band-copy h2{max-width:575px}.theme-v1 .v1-hero{min-height:640px;padding:60px 25px}.theme-v1 .v1-hero .hero-visual{width:64%}.theme-v1 .inner-v1{padding:75px 25px}.theme-v1 .inner-v1 .inner-copy{max-width:560px}}
@media(max-width:680px){.rotating-strip{padding:13px 0}.rotating-strip-group{gap:16px}.rotating-strip-group span{font-size:.59rem}.gallery-section{padding-block:54px 68px}.gallery-head h2{font-size:clamp(2.3rem,9.2vw,3.6rem)}.gallery-head p{font-size:.92rem}.visual-track{gap:10px}.visual-frame{flex-basis:84%;aspect-ratio:1.14}.gallery-controls{padding-top:3px}.gallery-arrow{height:41px;width:46px}.workforce-section{grid-template-columns:1fr;gap:25px;padding-block:64px 80px}.workforce-text h2{font-size:clamp(2.3rem,9vw,3.35rem)}.workforce-text>p{margin-bottom:15px}.deep-dive{padding-block:55px 75px}.deep-dive-top h2{font-size:clamp(2.3rem,9vw,3.45rem)}.deep-dive-grid{grid-template-columns:1fr;gap:11px}.deep-dive-card:last-child{grid-column:auto}.deep-dive-card{padding:25px 23px}.deep-card-rule{margin-bottom:17px}.site-photo-band{min-height:510px;align-items:flex-end}.site-photo-band-media{width:100%;height:66%;top:0;bottom:auto}.site-photo-band-shade,.theme-v1 .site-photo-band-shade,.theme-v2 .site-photo-band-shade,.theme-v3 .site-photo-band-shade{background:linear-gradient(0deg,#112627 4%,#112627ec 35%,#11262770 75%,#10262926 100%)}.site-photo-band-copy{padding-block:45px}.site-photo-band-copy h2{font-size:clamp(2.4rem,9vw,3.65rem)}.theme-v1 .v1-hero{min-height:685px;display:flex;align-items:flex-end;padding:0 18px 45px;background:#f5f0e8}.theme-v1 .v1-hero .hero-visual{inset:0 0 auto;height:56%;width:100%;z-index:0}.theme-v1 .v1-hero::after{background:linear-gradient(0deg,#f5f0e8 29%,#f5f0e8eb 48%,#f5f0e800 82%)}.theme-v1 .v1-hero .hero-copy{padding:270px 0 0;max-width:100%;z-index:2;align-self:auto}.theme-v1 .v1-hero h1{font-size:clamp(2.85rem,10vw,4rem);margin:12px 0 14px}.theme-v1 .v1-hero .hero-copy p{font-size:.94rem;line-height:1.6;margin-bottom:16px}.theme-v1 .v1-hero .hero-rule{margin-top:20px}.theme-v1 .inner-v1{display:flex;align-items:flex-end;min-height:535px;padding:0 18px 50px}.theme-v1 .inner-v1 .inner-photo{inset:0 0 auto;height:67%;width:100%}.theme-v1 .inner-v1::after{background:linear-gradient(0deg,#efe6d8 18%,#efe6d8e8 47%,#efe6d808 90%)}.theme-v1 .inner-v1 .inner-copy{z-index:3;max-width:none}.theme-v1 .inner-v1 h1{font-size:clamp(2.5rem,9vw,3.75rem)}.theme-v1 .inner-v1 p{font-size:.95rem}.theme-v2 .v2-hero{min-height:695px}.theme-v2 .v2-hero-image{inset:0;width:100%}.theme-v2 .v2-hero-mask{background:linear-gradient(180deg,#111b1ade 0%,#111b1ac9 58%,#111b1afa 100%)}.theme-v2 .v2-hero-copy{padding:65px 19px 82px}.theme-v2 .v2-hero h1{font-size:clamp(3.3rem,12vw,5.8rem)}.theme-v2 .inner-v2-photo{width:100%;inset:0}.theme-v2 .inner-v2:after{background:linear-gradient(180deg,#171e1c88,#171e1cef)}.theme-v3 .v3-hero{min-height:665px}.theme-v3 .v3-hero-photo{inset:0;width:100%}.theme-v3 .v3-hero-overlay{background:linear-gradient(180deg,#08283fdd 0%,#08283fc4 45%,#08283feb 100%)}.theme-v3 .v3-hero-content{padding:62px 22px 100px}.theme-v3 .v3-hero h1{font-size:clamp(3rem,11vw,4.6rem)}.theme-v3 .inner-v3-back{width:100%;inset:0}.theme-v3 .inner-v3:after{background:linear-gradient(180deg,#0d3350a5,#0d3350f5)}.site-footer .footer-feature,.site-footer .footer-grid{max-width:100%}.floating-wa{z-index:80;bottom:14px;right:13px}.site-header .brand{min-width:0}}
@media(max-width:390px){.deep-dive-top h2{font-size:2.22rem}.theme-v1 .v1-hero{min-height:720px}.theme-v1 .v1-hero h1{font-size:2.85rem}.theme-v1 .v1-hero .hero-copy{padding-top:246px}.theme-v2 .v2-hero h1{font-size:3.3rem}.theme-v3 .v3-hero h1{font-size:3.05rem}}
@media(prefers-reduced-motion:reduce){.rotating-strip-track,.theme-v3 .v3-hero-photo img{animation:none!important}.theme-v3 .v3-hero-photo img:first-child{opacity:1}.theme-v3 .v3-hero-photo img:nth-child(2){opacity:0}.visual-track{scroll-behavior:auto}html{scroll-behavior:auto}}

/* Logo URL availability resilient: show readable company name until exact brand image loads. */
.brand{min-width:130px}.brand .brand-fallback{display:block;font-size:.92rem;max-width:194px;font-weight:900;line-height:1.08;letter-spacing:-.012em;overflow-wrap:normal}.brand .brand-fallback>span{display:block;letter-spacing:.035em;font-size:.49rem;line-height:1.22;margin-top:6px}.brand .brand-logo{object-fit:contain;max-width:100%}
.theme-v1 .header-shell .brand-fallback{color:#283a32}.theme-v2 .header-shell .brand-fallback{color:#e5f2e6}.theme-v3 .header-shell .brand-fallback{color:#e8f3fa}
@media(max-width:930px){.brand{min-width:100px;max-width:160px;flex-shrink:1;margin-right:auto}.brand .brand-fallback{font-size:.75rem;max-width:151px}.brand .brand-fallback>span{font-size:.41rem}.head-inner{gap:12px}}
@media(max-width:680px){.brand{min-width:110px;max-width:145px}.brand .brand-fallback{font-size:.69rem}.brand .brand-fallback>span{font-size:.37rem}.head-inner{gap:9px}.header-cta{flex-shrink:0}.menu-toggle{flex-shrink:0}}
@media(max-width:360px){.brand{min-width:100px;max-width:126px}.brand .brand-fallback{font-size:.65rem}.header-cta span{font-size:.68rem}}
/* Maintain a visible first photographic slide; animate a second photograph on top. */
.theme-v3 .v3-hero-photo img:first-child{opacity:1;animation:heroBreath 16s ease-in-out infinite alternate}
.theme-v3 .v3-hero-photo img:nth-child(2){opacity:0;animation:secondPhoto 16s ease-in-out infinite}
@keyframes secondPhoto{0%,43%{opacity:0}50%,87%{opacity:1}99%,100%{opacity:0}}
@media(max-width:680px){.theme-v3 .v3-hero-overlay{background:linear-gradient(180deg,#08283fba 0%,#08283f9e 38%,#08283fe9 100%)}}
@media(prefers-reduced-motion:reduce){.theme-v3 .v3-hero-photo img:first-child{animation:none;opacity:1}.theme-v3 .v3-hero-photo img:nth-child(2){animation:none;opacity:0}}

/* === TARJEEH GLOBAL REVISION PASS === */
.related-grid a > span:first-child{display:none!important}
.brand{max-width:280px;min-width:185px}
.brand-logo{width:220px;height:84px}
.site-footer .brand{max-width:310px}
.site-footer .brand-logo{width:230px;height:88px}
.brand-fallback{font-size:1.02rem;max-width:240px}
.brand-fallback span{font-size:.6rem;letter-spacing:.08em}

.footer-socials{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px}
.social-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.26);color:#fff;background:rgba(255,255,255,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.social-icon svg{width:17px;height:17px}

.process-section,.footer-feature,.site-photo-band{position:relative;overflow:hidden;isolation:isolate}
.process-section > .section-wrap,.site-photo-band > *{position:relative;z-index:2}
.footer-feature > *{position:relative;z-index:2}

/* Enriched full-width background treatment inspired by provided reference screenshots */
.theme-v1 .process-section::before,
.theme-v2 .process-section::before,
.theme-v3 .process-section::before{content:"";position:absolute;inset:0;background:url('./process-bg.webp') center center/cover no-repeat;opacity:.18;transform:scale(1.02)}
.theme-v1 .process-section::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(30,44,38,.95),rgba(44,62,53,.90))}
.theme-v2 .process-section::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(8,18,15,.83),rgba(217,238,102,.84))}
.theme-v3 .process-section::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(8,35,59,.94),rgba(17,89,118,.88))}

.process-section{padding:92px 0 84px}
.process-section .section-head{margin-bottom:18px}
.process-section .steps{margin-top:42px;gap:22px}
.process-section .step{padding:26px 24px 24px 0;min-height:175px}
.theme-v1 .process-section .step,
.theme-v3 .process-section .step{background:rgba(255,255,255,.03)}
.theme-v2 .process-section .step{background:rgba(255,255,255,.08)}
.theme-v3 .process-section{border-radius:0}

.theme-v1 .footer-feature::before,
.theme-v2 .footer-feature::before,
.theme-v3 .footer-feature::before{content:"";position:absolute;inset:0;background:url('./footer-bg.webp') center center/cover no-repeat;opacity:.16;transform:scale(1.02)}
.theme-v1 .footer-feature::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,38,34,.96),rgba(39,55,47,.86))}
.theme-v2 .footer-feature::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,17,16,.95),rgba(18,34,29,.88))}
.theme-v3 .footer-feature::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,34,57,.95),rgba(11,61,92,.87))}

.footer-feature{width:min(var(--max),calc(100% - 80px));margin:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px 45px;padding:68px 0 58px;border-bottom:1px solid rgba(255,255,255,.22)}
.footer-feature > p{grid-column:1 / -1;margin:0}
.footer-feature > h2{width:auto;max-width:980px;margin:0;line-height:.95}
.footer-feature .btn{margin:0;justify-self:end;align-self:end}

/* Full-width and better-fitted inner heroes */
.inner-hero.section-wrap{width:100%!important;max-width:none!important;margin-inline:0!important}
.theme-v1 .inner-v1{padding-left:max(40px,calc((100% - var(--max))/2));padding-right:max(40px,calc((100% - var(--max))/2));background:#f6f2eb}
.theme-v1 .inner-v1 .inner-photo{height:100%;min-height:460px;box-shadow:none}
.theme-v1 .v1-hero .big-photo{box-shadow:none}
.theme-v1 .v1-hero .hero-tiny-image{border-color:#f6f2eb}

.theme-v2 .inner-v2-photo,
.theme-v3 .inner-v3-back{width:100%!important;inset:0!important}
.theme-v2 .inner-v2-photo>img{filter:grayscale(.18) brightness(.33)}
.theme-v2 .inner-v2-inner{width:min(var(--max),calc(100% - 80px));margin:auto}
.theme-v2 .inner-v2::after,
.theme-v3 .inner-v3::after{content:"";position:absolute;inset:0;pointer-events:none}
.theme-v2 .inner-v2::after{background:linear-gradient(90deg,rgba(16,24,24,.94) 0%,rgba(16,24,24,.88) 36%,rgba(16,24,24,.26) 72%)}
.theme-v3 .inner-v3::after{background:linear-gradient(90deg,rgba(8,40,63,.94) 0%,rgba(8,40,63,.85) 40%,rgba(8,40,63,.26) 76%)}
.theme-v3 .inner-v3-copy{width:min(var(--max),calc(100% - 80px))}

/* Site photo band consistency */
.site-photo-band{min-height:520px}
.site-photo-band-copy{z-index:3}
.site-photo-band-media img{min-height:520px;object-fit:cover}
.theme-v1 .site-photo-band-shade{background:linear-gradient(90deg,rgba(34,44,40,.88) 0%,rgba(34,44,40,.58) 45%,rgba(34,44,40,.18) 100%)}
.theme-v2 .site-photo-band-shade{background:linear-gradient(90deg,rgba(20,28,26,.90) 0%,rgba(20,28,26,.52) 44%,rgba(20,28,26,.12) 100%)}
.theme-v3 .site-photo-band-shade{background:linear-gradient(90deg,rgba(12,37,64,.90) 0%,rgba(12,37,64,.54) 44%,rgba(12,37,64,.12) 100%)}

/* Workforce/media improvements */
.workforce-photo img{width:100%;height:100%;object-fit:cover}
.workforce-photo{overflow:hidden;border-radius:18px;box-shadow:0 20px 55px rgba(0,0,0,.12)}
.workforce-section{align-items:center}

/* Section cards and empty areas */
.image-tile,.info-card,.quote-form,.contact-banner,.highlight-panel{box-shadow:0 18px 45px rgba(15,35,48,.08)}

/* Mobile / tablet tuning */
@media(max-width:1150px){
  .brand-logo{width:196px;height:76px}
  .site-footer .brand-logo{width:206px;height:78px}
}
@media(max-width:930px){
  .brand-logo{width:168px;height:68px}
  .site-footer .brand-logo{width:178px;height:72px}
  .footer-feature{width:calc(100% - 44px)}
  .theme-v2 .inner-v2-inner,.theme-v3 .inner-v3-copy{width:calc(100% - 44px)}
}
@media(max-width:680px){
  .brand{max-width:220px;min-width:0}
  .brand-logo{width:140px;height:58px}
  .site-footer .brand-logo{width:148px;height:60px}
  .brand-fallback{font-size:.82rem;max-width:165px}
  .brand-fallback span{font-size:.5rem}
  .process-section{padding:72px 0 62px}
  .process-section .steps{margin-top:28px;gap:12px}
  .process-section .step{min-height:auto;padding:18px 0;background:transparent!important}
  .footer-feature{width:calc(100% - 36px);grid-template-columns:1fr;padding:58px 0 42px;gap:16px}
  .footer-feature .btn{justify-self:start;width:100%;margin-top:6px}
  .footer-socials{gap:8px}
  .social-icon{width:36px;height:36px}
  .theme-v1 .inner-v1{padding-left:18px;padding-right:18px}
  .theme-v2 .inner-v2-inner,.theme-v3 .inner-v3-copy{width:calc(100% - 36px)}
  .site-photo-band,.site-photo-band-media img{min-height:400px}
}

/* === 2026-10-31 STRICT INSTRUCTION PASS 2 === */
/* White header/footer treatment + larger transparent logo */
.theme-v1 .site-header,.theme-v2 .site-header,.theme-v3 .site-header,
.theme-v1 .site-footer,.theme-v2 .site-footer,.theme-v3 .site-footer{background:#fff!important;color:#17231f}
.theme-v1 .topline,.theme-v2 .topline,.theme-v3 .topline{background:#fff;color:#4d5f57;border-bottom:1px solid rgba(25,42,35,.08)}
.theme-v1 .desktop-nav>a,.theme-v1 .nav-services-toggle,.theme-v1 .menu-toggle,.theme-v1 .mobile-nav a,
.theme-v2 .desktop-nav>a,.theme-v2 .nav-services-toggle,.theme-v2 .menu-toggle,.theme-v2 .mobile-nav a,
.theme-v3 .desktop-nav>a,.theme-v3 .nav-services-toggle,.theme-v3 .menu-toggle,.theme-v3 .mobile-nav a{color:#1b2a25}
.theme-v1 .desktop-nav>a:hover,.theme-v1 .desktop-nav>a.active,.theme-v1 .nav-services-toggle:hover{color:#b86b42}
.theme-v2 .desktop-nav>a:hover,.theme-v2 .desktop-nav>a.active,.theme-v2 .nav-services-toggle:hover{color:#6d8140}
.theme-v3 .desktop-nav>a:hover,.theme-v3 .desktop-nav>a.active,.theme-v3 .nav-services-toggle:hover{color:#b86b42}
.theme-v2 .dropdown-menu,.theme-v3 .dropdown-menu{background:#fff;color:#192923}
.theme-v1 .mobile-nav,.theme-v2 .mobile-nav,.theme-v3 .mobile-nav{background:#fff;color:#17231f;border-top:1px solid rgba(21,32,28,.08)}
.brand{max-width:360px;min-width:230px}
.brand-logo{width:270px!important;height:104px!important;object-fit:contain;object-position:left center;filter:drop-shadow(0 6px 14px rgba(0,0,0,.05))}
.site-footer .brand{max-width:380px}
.site-footer .brand-logo{width:290px!important;height:112px!important}
.brand-fallback{max-width:280px}
.theme-v1 .brand-fallback,.theme-v2 .brand-fallback,.theme-v3 .brand-fallback{color:#17231f!important}
.theme-v1 .header-cta{background:#b3643d;color:#fff}
.theme-v2 .header-cta{background:#6d8140;color:#fff}
.theme-v3 .header-cta{background:#b3643d;color:#fff}

/* Footer reset to white while keeping premium callout area */
.site-footer{border-top:1px solid rgba(23,35,31,.08)!important}
.footer-feature,.footer-grid{position:relative;z-index:1}
.theme-v1 .footer-feature,.theme-v2 .footer-feature,.theme-v3 .footer-feature{color:#17231f!important;border-bottom:1px solid rgba(23,35,31,.10)}
.theme-v1 .footer-feature::before,.theme-v2 .footer-feature::before,.theme-v3 .footer-feature::before{opacity:.12!important}
.theme-v1 .footer-feature::after,.theme-v2 .footer-feature::after,.theme-v3 .footer-feature::after{background:linear-gradient(90deg,rgba(255,255,255,.93),rgba(248,248,245,.88))!important}
.theme-v1 .footer-feature .eyebrow{color:#b3643d!important}
.theme-v2 .footer-feature .eyebrow{color:#6d8140!important}
.theme-v3 .footer-feature .eyebrow{color:#b3643d!important}
.footer-grid,.footer-grid p,.footer-grid a,.footer-grid li,.footer-grid .legal-name{color:#2a3a35!important}
.footer-grid h3,.site-footer .eyebrow{color:#17231f!important}
.footer-about .contact-chip{background:#f5f6f2;color:#1d2a25;border:1px solid rgba(20,30,25,.08)}
.social-icon{background:#fff!important;color:#1d2a25!important;border:1px solid rgba(20,30,25,.15)!important;box-shadow:none}

/* Add more section-level background imagery across versions */
.intro-section,.services-preview,.gallery-section,.deep-dive,.info-section,.faq-section,.related,.workforce-section,.contact-layout,.quote-layout{position:relative;isolation:isolate}
.intro-section > *, .services-preview > *, .gallery-section > *, .deep-dive > *, .info-section > *, .faq-section > *, .related > *, .workforce-section > *, .contact-layout > *, .quote-layout > *{position:relative;z-index:2}
.theme-v1 .intro-section::before,.theme-v1 .services-preview::before,.theme-v1 .gallery-section::before,.theme-v1 .faq-section::before,.theme-v1 .info-section::before,.theme-v1 .related::before,
.theme-v2 .intro-section::before,.theme-v2 .services-preview::before,.theme-v2 .gallery-section::before,.theme-v2 .faq-section::before,.theme-v2 .info-section::before,.theme-v2 .related::before,
.theme-v3 .intro-section::before,.theme-v3 .services-preview::before,.theme-v3 .gallery-section::before,.theme-v3 .faq-section::before,.theme-v3 .info-section::before,.theme-v3 .related::before{content:"";position:absolute;inset:0;background-position:center;background-size:cover;background-repeat:no-repeat;opacity:.06;z-index:0}
.theme-v1 .intro-section::before,.theme-v2 .intro-section::before,.theme-v3 .intro-section::before{background-image:url('./structure-760.webp')}
.theme-v1 .services-preview::before,.theme-v2 .services-preview::before,.theme-v3 .services-preview::before{background-image:url('./site-760.webp')}
.theme-v1 .gallery-section::before,.theme-v2 .gallery-section::before,.theme-v3 .gallery-section::before{background-image:url('./truck-760.webp')}
.theme-v1 .faq-section::before,.theme-v2 .faq-section::before,.theme-v3 .faq-section::before{background-image:url('./plant-760.webp')}
.theme-v1 .info-section::before,.theme-v2 .info-section::before,.theme-v3 .info-section::before,
.theme-v1 .related::before,.theme-v2 .related::before,.theme-v3 .related::before{background-image:url('./pour-760.webp')}
.theme-v1 .intro-section::after,.theme-v1 .services-preview::after,.theme-v1 .gallery-section::after,.theme-v1 .faq-section::after,.theme-v1 .info-section::after,.theme-v1 .related::after,
.theme-v2 .intro-section::after,.theme-v2 .services-preview::after,.theme-v2 .gallery-section::after,.theme-v2 .faq-section::after,.theme-v2 .info-section::after,.theme-v2 .related::after,
.theme-v3 .intro-section::after,.theme-v3 .services-preview::after,.theme-v3 .gallery-section::after,.theme-v3 .faq-section::after,.theme-v3 .info-section::after,.theme-v3 .related::after{content:"";position:absolute;inset:0;z-index:1}
.theme-v1 .intro-section::after,.theme-v1 .services-preview::after,.theme-v1 .gallery-section::after,.theme-v1 .faq-section::after,.theme-v1 .info-section::after,.theme-v1 .related::after{background:linear-gradient(180deg,rgba(249,246,240,.95),rgba(249,246,240,.88))}
.theme-v2 .intro-section::after,.theme-v2 .services-preview::after,.theme-v2 .gallery-section::after,.theme-v2 .faq-section::after,.theme-v2 .info-section::after,.theme-v2 .related::after{background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(247,248,244,.89))}
.theme-v3 .intro-section::after,.theme-v3 .services-preview::after,.theme-v3 .gallery-section::after,.theme-v3 .faq-section::after,.theme-v3 .info-section::after,.theme-v3 .related::after{background:linear-gradient(180deg,rgba(244,249,250,.95),rgba(244,249,250,.88))}

/* V2 refresh: better font style, calmer sizes, improved color combination */
.theme-v2{--ink:#22312a;--muted:#5d6b64;--surface:#fff;--accent:#6d8140;--cream:#f5f7f1;--line:rgba(34,49,42,.12);--display:'Trebuchet MS',Arial,sans-serif}
.theme-v2 body,.theme-v2 h1,.theme-v2 h2,.theme-v2 h3,.theme-v2 .image-tile-body h3,.theme-v2 .info-card h3,.theme-v2 .footer-feature>h2,.theme-v2 .inner-v2 h1,.theme-v2 .v2-hero h1{font-family:'Trebuchet MS',Arial,sans-serif!important;text-transform:none!important;letter-spacing:-.04em!important}
.theme-v2 body{background:#f5f7f1!important;color:#22312a!important}
.theme-v2 .section-head h2,.theme-v2 .intro-left h2,.theme-v2 .deep-dive-top h2,.theme-v2 .highlight-copy h2,.theme-v2 .site-photo-band-copy h2{font-family:'Trebuchet MS',Arial,sans-serif!important;font-weight:900}
.theme-v2 .intro-left p,.theme-v2 .story-copy p,.theme-v2 .detail-heading p,.theme-v2 .section-head>p,.theme-v2 .deep-dive-card p,.theme-v2 .info-card p,.theme-v2 .faq-item p{color:#5d6b64!important}
.theme-v2 .image-tile{background:#fff!important;border:1px solid rgba(34,49,42,.10)!important;box-shadow:0 18px 45px rgba(22,35,26,.06)!important}
.theme-v2 .image-tile-body{background:#fff!important}
.theme-v2 .info-card,.theme-v2 .quote-form{background:#fff!important;border:1px solid rgba(34,49,42,.10)!important;color:#22312a!important}
.theme-v2 .related-grid a{background:#fff!important;border-color:rgba(34,49,42,.10)!important;color:#22312a!important}
.theme-v2 .related-grid a:hover{background:#f0f4e8!important}
.theme-v2 .tile-link,.theme-v2 .card-index,.theme-v2 .contact-detail>span,.theme-v2 .site-photo-band-copy .eyebrow{color:#6d8140!important}
.theme-v2 .btn-primary{background:#6d8140!important;color:#fff!important}
.theme-v2 .btn-primary:hover{background:#2f3d2c!important}
.theme-v2 .btn-outline{border-color:#22312a!important;color:#22312a!important}
.theme-v2 .btn-outline:hover{background:#22312a!important;color:#fff!important}
.theme-v2 .feature-strip,.theme-v2 .rotating-strip{background:#eef2e4!important;color:#22312a!important}
.theme-v2 .feature-strip i{background:#6d8140!important}
.theme-v2 .process-section .step{border-top-color:#6d8140!important}
.theme-v2 .v2-hero h1{font-size:clamp(3rem,5.6vw,5.45rem)!important;line-height:.96!important;max-width:640px}
.theme-v2 .inner-v2 h1{font-size:clamp(2.65rem,4.8vw,4.8rem)!important;line-height:1.02!important;max-width:720px}
.theme-v2 .v2-hero p{max-width:470px!important;color:#e8efe8!important;font-size:1.03rem}
.theme-v2 .v2-hero-copy{padding-block:92px 102px!important}
.theme-v2 .v2-hero-mask{background:linear-gradient(90deg,rgba(19,27,24,.88) 0%,rgba(19,27,24,.74) 36%,rgba(19,27,24,.24) 70%,rgba(19,27,24,.10) 100%)!important}
.theme-v2 .inner-v2::after{background:linear-gradient(90deg,rgba(19,27,24,.84) 0%,rgba(19,27,24,.68) 37%,rgba(19,27,24,.16) 74%)!important}
.theme-v2 .v2-hero-image img,.theme-v2 .inner-v2-photo img{filter:none!important;object-position:center!important}
.theme-v2 .contact-banner{background:#eef2e4!important;color:#22312a!important}
.theme-v2 .contact-banner .btn{background:#22312a!important;color:#fff!important}

/* Home heroes full-width and non-stretched */
.home-hero,.inner-hero,.site-photo-band,.highlight-panel{overflow:hidden}
.home-hero img,.inner-hero img,.site-photo-band img,.highlight-panel img{width:100%;height:100%;object-fit:cover;object-position:center}
.theme-v1 .v1-hero{min-height:690px!important;background:#f5f0e8}
.theme-v1 .v1-hero .hero-copy{padding-top:32px!important;padding-bottom:32px!important;max-width:720px}
.theme-v1 .v1-hero::after{background:linear-gradient(90deg,rgba(245,240,232,.96) 0%,rgba(245,240,232,.92) 34%,rgba(245,240,232,.42) 61%,rgba(245,240,232,.10) 100%)!important}
.theme-v1 .v1-hero .big-photo img,.theme-v1 .inner-v1 .inner-photo img{object-position:center!important}
.theme-v2 .v2-hero{min-height:700px!important}
.theme-v3 .v3-hero{min-height:700px!important}
.theme-v3 .v3-hero h1{font-size:clamp(3.25rem,6vw,6.2rem)!important}

/* Stronger text-overlay inner page hero treatment for all services/about/applications/faqs/contact */
.theme-v1 .inner-v1,.theme-v2 .inner-v2,.theme-v3 .inner-v3{min-height:520px!important;align-items:center}
.theme-v1 .inner-v1 .inner-copy,.theme-v2 .inner-v2 .inner-v2-inner,.theme-v3 .inner-v3 .inner-v3-copy{padding-block:92px!important}
.theme-v1 .inner-v1 h1,.theme-v2 .inner-v2 h1,.theme-v3 .inner-v3 h1{max-width:760px}
.theme-v1 .inner-v1 p,.theme-v2 .inner-v2 p,.theme-v3 .inner-v3 p{max-width:620px}
.theme-v1 .inner-v1::after{background:linear-gradient(90deg,rgba(241,233,221,.95) 0%,rgba(241,233,221,.90) 34%,rgba(241,233,221,.35) 70%,rgba(241,233,221,.08) 100%)!important}
.theme-v2 .inner-v2::after{background:linear-gradient(90deg,rgba(17,26,22,.84) 0%,rgba(17,26,22,.74) 36%,rgba(17,26,22,.18) 74%,rgba(17,26,22,.08) 100%)!important}
.theme-v3 .inner-v3::after{background:linear-gradient(90deg,rgba(12,37,64,.86) 0%,rgba(12,37,64,.75) 38%,rgba(12,37,64,.20) 75%,rgba(12,37,64,.08) 100%)!important}

/* Additional subtle animations */
@keyframes slowZoom{0%{transform:scale(1)}100%{transform:scale(1.06)}}
@keyframes gentleFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.home-hero .hero-img,.home-hero .v3-hero-photo img,.inner-hero img,.site-photo-band img{animation:slowZoom 16s ease-in-out infinite alternate}
.hero-actions .btn:first-child,.header-cta{animation:gentleFloat 5s ease-in-out infinite}
.image-tile,.info-card,.deep-dive-card,.related-grid a{transition:transform .32s ease, box-shadow .32s ease, background .32s ease}
.image-tile:hover,.info-card:hover,.deep-dive-card:hover,.related-grid a:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(0,0,0,.10)}

/* Responsive controls so text never feels oversized */
@media(max-width:1150px){
  .brand{max-width:300px;min-width:180px}
  .brand-logo{width:230px!important;height:90px!important}
  .site-footer .brand-logo{width:248px!important;height:96px!important}
  .theme-v2 .v2-hero h1{font-size:clamp(2.8rem,6vw,4.95rem)!important}
}
@media(max-width:930px){
  .brand{max-width:240px;min-width:0}
  .brand-logo{width:184px!important;height:74px!important}
  .site-footer .brand-logo{width:196px!important;height:80px!important}
  .theme-v1 .v1-hero,.theme-v2 .v2-hero,.theme-v3 .v3-hero{min-height:640px!important}
  .theme-v1 .inner-v1,.theme-v2 .inner-v2,.theme-v3 .inner-v3{min-height:470px!important}
}
@media(max-width:680px){
  .topline span:last-child{display:none}
  .brand-logo{width:158px!important;height:64px!important}
  .site-footer .brand-logo{width:172px!important;height:70px!important}
  .theme-v1 .v1-hero,.theme-v2 .v2-hero,.theme-v3 .v3-hero{min-height:620px!important}
  .theme-v1 .v1-hero .hero-copy{padding:42px 0 34px!important}
  .theme-v1 .v1-hero::after,.theme-v2 .v2-hero-mask,.theme-v1 .inner-v1::after,.theme-v2 .inner-v2::after,.theme-v3 .inner-v3::after{background:linear-gradient(180deg,rgba(17,26,22,.08) 0%,rgba(17,26,22,.40) 35%,rgba(17,26,22,.72) 100%)!important}
  .theme-v1 .v1-hero h1{font-size:clamp(2.6rem,11vw,4rem)!important;color:#fff}
  .theme-v1 .v1-hero .eyebrow,.theme-v1 .v1-hero p,.theme-v1 .v1-hero .hero-rule,.theme-v1 .v1-hero .btn-outline{color:#fff!important;border-color:#fff!important}
  .theme-v1 .v1-hero .hero-copy,.theme-v2 .v2-hero-copy,.theme-v3 .v3-hero-content{position:relative;z-index:3}
  .theme-v1 .v1-hero .hero-visual,.theme-v2 .v2-hero-image,.theme-v3 .v3-hero-photo{width:100%!important;inset:0!important}
  .theme-v2 .v2-hero h1{font-size:clamp(2.7rem,10vw,4.3rem)!important}
  .theme-v3 .v3-hero h1{font-size:clamp(2.65rem,10vw,4.2rem)!important}
  .theme-v1 .inner-v1,.theme-v2 .inner-v2,.theme-v3 .inner-v3{min-height:420px!important}
  .theme-v1 .inner-v1 .inner-copy,.theme-v2 .inner-v2 .inner-v2-inner,.theme-v3 .inner-v3 .inner-v3-copy{padding-block:68px!important;position:relative;z-index:3}
  .theme-v1 .inner-v1 .inner-photo,.theme-v2 .inner-v2-photo,.theme-v3 .inner-v3-back{width:100%!important;inset:0!important}
  .theme-v1 .inner-v1 h1,.theme-v2 .inner-v2 h1,.theme-v3 .inner-v3 h1{font-size:clamp(2.25rem,9vw,3.8rem)!important;color:#fff!important}
  .theme-v1 .inner-v1 p,.theme-v2 .inner-v2 p,.theme-v3 .inner-v3 p,.theme-v1 .inner-v1 .eyebrow,.theme-v1 .inner-v1 .breadcrumbs,.theme-v2 .inner-v2 .eyebrow,.theme-v2 .inner-v2 .breadcrumbs,.theme-v3 .inner-v3 .eyebrow,.theme-v3 .inner-v3 .breadcrumbs{color:#fff!important}
}
@media(prefers-reduced-motion:reduce){
  .home-hero .hero-img,.home-hero .v3-hero-photo img,.inner-hero img,.site-photo-band img,.hero-actions .btn:first-child,.header-cta{animation:none!important}
}

/* === 2026-10-31 HERO + SHARP BACKGROUND PASS === */
/* true full-width hero imagery across versions */
.theme-v1 .v1-hero,
.theme-v2 .v2-hero,
.theme-v3 .v3-hero,
.theme-v1 .inner-v1,
.theme-v2 .inner-v2,
.theme-v3 .inner-v3,
.site-photo-band,
.footer-feature,
.process-section{max-width:none!important;width:100%!important;position:relative;overflow:hidden;isolation:isolate}

.theme-v1 .v1-hero .hero-visual,
.theme-v2 .v2-hero-image,
.theme-v3 .v3-hero-photo,
.theme-v1 .inner-v1 .inner-photo,
.theme-v2 .inner-v2-photo,
.theme-v3 .inner-v3-back,
.site-photo-band-media{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;z-index:0!important;overflow:hidden}

.theme-v1 .v1-hero .big-photo,
.theme-v1 .v1-hero .big-photo img,
.theme-v2 .v2-hero-image img,
.theme-v3 .v3-hero-photo img,
.theme-v1 .inner-v1 .inner-photo img,
.theme-v2 .inner-v2-photo img,
.theme-v3 .inner-v3-back img,
.site-photo-band-media img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important}

/* keep copy above images */
.theme-v1 .v1-hero .hero-copy,
.theme-v2 .v2-hero-copy,
.theme-v3 .v3-hero-content,
.theme-v1 .inner-v1 .inner-copy,
.theme-v2 .inner-v2 .inner-v2-inner,
.theme-v3 .inner-v3 .inner-v3-copy,
.site-photo-band-copy{position:relative;z-index:3}

/* full-width hero overlay style by version */
.theme-v1 .v1-hero{min-height:720px!important;padding-inline:max(36px,calc((100% - var(--max))/2))!important;background:#f5f0e8!important}
.theme-v1 .v1-hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(245,240,232,.94) 0%,rgba(245,240,232,.93) 34%,rgba(245,240,232,.55) 58%,rgba(245,240,232,.14) 84%,rgba(245,240,232,.05) 100%)!important}
.theme-v1 .v1-hero .hero-copy{max-width:700px!important;padding-right:0!important}
.theme-v1 .v1-hero h1{max-width:780px}

.theme-v2 .v2-hero{min-height:720px!important}
.theme-v2 .v2-hero-mask{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(13,22,18,.93) 0%,rgba(13,22,18,.88) 38%,rgba(13,22,18,.48) 64%,rgba(13,22,18,.14) 90%,rgba(13,22,18,.05) 100%)!important}
.theme-v2 .v2-hero-copy{position:relative;z-index:3;max-width:min(var(--max),calc(100% - 72px));margin:auto;padding:92px 0 102px!important}
.theme-v2 .v2-hero h1{max-width:750px}
.theme-v2 .v2-hero p{max-width:590px}

.theme-v3 .v3-hero{min-height:720px!important;background:#08283f}
.theme-v3 .v3-hero-overlay{background:linear-gradient(90deg,rgba(8,40,63,.94) 0%,rgba(8,40,63,.88) 38%,rgba(8,40,63,.48) 65%,rgba(8,40,63,.14) 90%,rgba(8,40,63,.06) 100%)!important}
.theme-v3 .v3-hero-content{max-width:min(var(--max),calc(100% - 72px));padding-inline:0!important;margin:auto}
.theme-v3 .v3-hero h1{max-width:790px}
.theme-v3 .v3-hero p{max-width:620px}

/* inner pages full-width image heroes with text overlay */
.theme-v1 .inner-v1,
.theme-v2 .inner-v2,
.theme-v3 .inner-v3{min-height:520px!important;padding-inline:max(36px,calc((100% - var(--max))/2))!important}
.theme-v1 .inner-v1::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(241,233,221,.95) 0%,rgba(241,233,221,.92) 36%,rgba(241,233,221,.54) 62%,rgba(241,233,221,.12) 86%,rgba(241,233,221,.05) 100%)!important}
.theme-v2 .inner-v2::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(16,24,24,.92) 0%,rgba(16,24,24,.86) 39%,rgba(16,24,24,.46) 65%,rgba(16,24,24,.14) 88%,rgba(16,24,24,.06) 100%)!important}
.theme-v3 .inner-v3::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(12,51,80,.93) 0%,rgba(12,51,80,.87) 39%,rgba(12,51,80,.45) 65%,rgba(12,51,80,.14) 89%,rgba(12,51,80,.05) 100%)!important}
.theme-v1 .inner-v1 .inner-copy,
.theme-v2 .inner-v2 .inner-v2-inner,
.theme-v3 .inner-v3 .inner-v3-copy{padding-block:86px!important;max-width:740px}

/* sharper background images across feature sections using large derivatives */
.theme-v1 .process-section::before,
.theme-v2 .process-section::before,
.theme-v3 .process-section::before{background-image:url('./process-bg.webp')!important;background-size:cover!important;background-position:center center!important;opacity:.28!important}
.theme-v1 .footer-feature::before,
.theme-v2 .footer-feature::before,
.theme-v3 .footer-feature::before{background-image:url('./footer-bg.webp')!important;background-size:cover!important;background-position:center center!important;opacity:.18!important}

.theme-v1 .intro-section::before,.theme-v2 .intro-section::before,.theme-v3 .intro-section::before{background-image:url('./structure-1600.webp')!important;opacity:.08!important}
.theme-v1 .services-preview::before,.theme-v2 .services-preview::before,.theme-v3 .services-preview::before{background-image:url('./site-760.webp')!important;opacity:.08!important}
.theme-v1 .gallery-section::before,.theme-v2 .gallery-section::before,.theme-v3 .gallery-section::before{background-image:url('./truck-1600.webp')!important;opacity:.07!important}
.theme-v1 .faq-section::before,.theme-v2 .faq-section::before,.theme-v3 .faq-section::before{background-image:url('./plant-1600.webp')!important;opacity:.07!important}
.theme-v1 .info-section::before,.theme-v2 .info-section::before,.theme-v3 .info-section::before,
.theme-v1 .related::before,.theme-v2 .related::before,.theme-v3 .related::before{background-image:url('./pour-1600.webp')!important;opacity:.07!important}
.theme-v1 .workforce-section::before,.theme-v2 .workforce-section::before,.theme-v3 .workforce-section::before,
.theme-v1 .contact-layout::before,.theme-v2 .contact-layout::before,.theme-v3 .contact-layout::before,
.theme-v1 .quote-layout::before,.theme-v2 .quote-layout::before,.theme-v3 .quote-layout::before{content:"";position:absolute;inset:0;background:url('./workers-1600.webp') center center/cover no-repeat;opacity:.045;z-index:0}

/* automatic animations, no UI controls */
@keyframes heroPan{0%{transform:scale(1) translate3d(0,0,0)}100%{transform:scale(1.06) translate3d(0,-8px,0)}}
@keyframes bgPulse{0%,100%{opacity:.96}50%{opacity:1}}
@keyframes floatContent{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
.theme-v1 .v1-hero .big-photo img,
.theme-v2 .v2-hero-image img,
.theme-v1 .inner-v1 .inner-photo img,
.theme-v2 .inner-v2-photo img,
.site-photo-band-media img{animation:heroPan 18s ease-in-out infinite alternate}
.theme-v1 .process-section::before,
.theme-v2 .process-section::before,
.theme-v3 .process-section::before,
.theme-v1 .footer-feature::before,
.theme-v2 .footer-feature::before,
.theme-v3 .footer-feature::before{animation:bgPulse 10s ease-in-out infinite}
.theme-v1 .hero-actions .btn,
.theme-v2 .hero-actions .btn,
.theme-v3 .hero-actions .btn,
.theme-v1 .site-photo-band-copy .btn,
.theme-v2 .site-photo-band-copy .btn,
.theme-v3 .site-photo-band-copy .btn{animation:floatContent 6s ease-in-out infinite}

/* cleaner responsive behavior */
@media (max-width: 930px){
  .theme-v1 .v1-hero,.theme-v2 .v2-hero,.theme-v3 .v3-hero{min-height:660px!important}
  .theme-v1 .inner-v1,.theme-v2 .inner-v2,.theme-v3 .inner-v3{min-height:470px!important}
}
@media (max-width: 680px){
  .theme-v1 .v1-hero,
  .theme-v2 .v2-hero,
  .theme-v3 .v3-hero{min-height:640px!important;padding-inline:18px!important;align-items:flex-end!important}
  .theme-v1 .inner-v1,
  .theme-v2 .inner-v2,
  .theme-v3 .inner-v3{min-height:430px!important;padding-inline:18px!important}
  .theme-v1 .v1-hero::after,
  .theme-v2 .v2-hero-mask,
  .theme-v3 .v3-hero-overlay,
  .theme-v1 .inner-v1::after,
  .theme-v2 .inner-v2::after,
  .theme-v3 .inner-v3::after{background:linear-gradient(180deg,rgba(18,24,23,.18) 0%,rgba(18,24,23,.45) 35%,rgba(18,24,23,.76) 100%)!important}
  .theme-v1 .v1-hero .hero-copy,
  .theme-v2 .v2-hero-copy,
  .theme-v3 .v3-hero-content,
  .theme-v1 .inner-v1 .inner-copy,
  .theme-v2 .inner-v2 .inner-v2-inner,
  .theme-v3 .inner-v3 .inner-v3-copy{max-width:100%!important;padding-block:54px 42px!important}
  .theme-v1 .v1-hero h1,
  .theme-v2 .v2-hero h1,
  .theme-v3 .v3-hero h1,
  .theme-v1 .inner-v1 h1,
  .theme-v2 .inner-v2 h1,
  .theme-v3 .inner-v3 h1{color:#fff!important}
  .theme-v1 .v1-hero p,
  .theme-v2 .v2-hero p,
  .theme-v3 .v3-hero p,
  .theme-v1 .inner-v1 p,
  .theme-v2 .inner-v2 p,
  .theme-v3 .inner-v3 p,
  .theme-v1 .inner-v1 .eyebrow,.theme-v1 .inner-v1 .breadcrumbs,
  .theme-v2 .inner-v2 .eyebrow,.theme-v2 .inner-v2 .breadcrumbs,
  .theme-v3 .inner-v3 .eyebrow,.theme-v3 .inner-v3 .breadcrumbs{color:#fff!important}
}

@media (prefers-reduced-motion: reduce){
  .theme-v1 .v1-hero .big-photo img,
  .theme-v2 .v2-hero-image img,
  .theme-v3 .v3-hero-photo img,
  .theme-v1 .inner-v1 .inner-photo img,
  .theme-v2 .inner-v2-photo img,
  .theme-v3 .inner-v3-back img,
  .site-photo-band-media img,
  .theme-v1 .process-section::before,
  .theme-v2 .process-section::before,
  .theme-v3 .process-section::before,
  .theme-v1 .footer-feature::before,
  .theme-v2 .footer-feature::before,
  .theme-v3 .footer-feature::before,
  .theme-v1 .hero-actions .btn,
  .theme-v2 .hero-actions .btn,
  .theme-v3 .hero-actions .btn,
  .theme-v1 .site-photo-band-copy .btn,
  .theme-v2 .site-photo-band-copy .btn,
  .theme-v3 .site-photo-band-copy .btn{animation:none!important}
}

/* === 2026-10-31 CONTRAST / SPACING / BACKGROUND STABILITY PASS === */
/* Never let reveal JS failures create invisible or blank sections. */
.js .reveal:not(.visible){opacity:1!important;transform:none!important}
.reveal{opacity:1;transform:none}

/* Keep the exact supplied logo clearly visible without oversized canvas whitespace. */
.head-inner{min-height:112px!important}
.brand{min-width:250px!important;max-width:340px!important}
.brand-logo{width:300px!important;height:100px!important;object-fit:contain!important;object-position:left center!important}
.site-footer .brand{max-width:370px!important}
.site-footer .brand-logo{width:330px!important;height:114px!important}

/* Remove excessive vertical whitespace while retaining premium breathing room. */
.intro-section,.image-story,.detail-opening{padding-block:82px!important}
.services-preview{padding-block:35px 86px!important}
.gallery-section{padding-block:62px 78px!important}
.workforce-section{padding-block:68px 82px!important}
.deep-dive{padding-block:55px 78px!important}
.info-section{padding-bottom:78px!important}
.faq-section{padding-bottom:82px!important}
.related{padding-bottom:82px!important}
.contact-banner{margin-bottom:82px!important}
.highlight-panel{margin-bottom:82px!important}
.footer-grid{padding-block:54px!important}
.footer-feature{padding-top:58px!important;padding-bottom:48px!important}

/* Stable, sharp, service-relevant photographic section backgrounds. */
.intro-section,.services-preview,.gallery-section,.faq-section,.info-section,.related,.workforce-section,.contact-layout,.quote-layout{position:relative;isolation:isolate;overflow:hidden}
.intro-section::before,.services-preview::before,.gallery-section::before,.faq-section::before,.info-section::before,.related::before,.workforce-section::before,.contact-layout::before,.quote-layout::before{content:"";position:absolute;inset:0;background-repeat:no-repeat;background-position:center;background-size:cover;z-index:0!important;pointer-events:none}
.intro-section::before{background-image:url('./structure-1600.webp')!important}
.services-preview::before{background-image:url('./truck-1600.webp')!important}
.gallery-section::before{background-image:url('./plant-1600.webp')!important}
.faq-section::before{background-image:url('./pour-1600.webp')!important}
.info-section::before{background-image:url('./plant-1600.webp')!important}
.related::before{background-image:url('./structure-1600.webp')!important}
.workforce-section::before{background-image:url('./workers-1600.webp')!important}
.contact-layout::before,.quote-layout::before{background-image:url('./truck-1600.webp')!important}

/* background opacity and readable overlays */
.theme-v1 .intro-section::before,.theme-v1 .services-preview::before,.theme-v1 .gallery-section::before,.theme-v1 .faq-section::before,.theme-v1 .info-section::before,.theme-v1 .related::before,.theme-v1 .workforce-section::before,.theme-v1 .contact-layout::before,.theme-v1 .quote-layout::before{opacity:.13!important}
.theme-v2 .intro-section::before,.theme-v2 .services-preview::before,.theme-v2 .gallery-section::before,.theme-v2 .faq-section::before,.theme-v2 .info-section::before,.theme-v2 .related::before,.theme-v2 .workforce-section::before,.theme-v2 .contact-layout::before,.theme-v2 .quote-layout::before{opacity:.12!important}
.theme-v3 .intro-section::before,.theme-v3 .services-preview::before,.theme-v3 .gallery-section::before,.theme-v3 .faq-section::before,.theme-v3 .info-section::before,.theme-v3 .related::before,.theme-v3 .workforce-section::before,.theme-v3 .contact-layout::before,.theme-v3 .quote-layout::before{opacity:.12!important}

.theme-v1 .intro-section::after,.theme-v1 .services-preview::after,.theme-v1 .gallery-section::after,.theme-v1 .faq-section::after,.theme-v1 .info-section::after,.theme-v1 .related::after,
.theme-v2 .intro-section::after,.theme-v2 .services-preview::after,.theme-v2 .gallery-section::after,.theme-v2 .faq-section::after,.theme-v2 .info-section::after,.theme-v2 .related::after,
.theme-v3 .intro-section::after,.theme-v3 .services-preview::after,.theme-v3 .gallery-section::after,.theme-v3 .faq-section::after,.theme-v3 .info-section::after,.theme-v3 .related::after{content:"";position:absolute;inset:0;z-index:1!important;pointer-events:none}
.theme-v1 .intro-section::after,.theme-v1 .services-preview::after,.theme-v1 .gallery-section::after,.theme-v1 .faq-section::after,.theme-v1 .info-section::after,.theme-v1 .related::after{background:rgba(248,244,237,.82)!important}
.theme-v2 .intro-section::after,.theme-v2 .services-preview::after,.theme-v2 .gallery-section::after,.theme-v2 .faq-section::after,.theme-v2 .info-section::after,.theme-v2 .related::after{background:rgba(247,249,244,.84)!important}
.theme-v3 .intro-section::after,.theme-v3 .services-preview::after,.theme-v3 .gallery-section::after,.theme-v3 .faq-section::after,.theme-v3 .info-section::after,.theme-v3 .related::after{background:rgba(241,247,250,.84)!important}

.intro-section>* ,.services-preview>* ,.gallery-section>* ,.faq-section>* ,.info-section>* ,.related>* ,.workforce-section>* ,.contact-layout>* ,.quote-layout>*{position:relative;z-index:2!important}

/* Explicit contrast: prevent pale text on pale photographic backgrounds. */
.theme-v1 .intro-section h1,.theme-v1 .intro-section h2,.theme-v1 .intro-section h3,.theme-v1 .services-preview h2,.theme-v1 .gallery-section h2,.theme-v1 .faq-section h2,.theme-v1 .faq-item summary,.theme-v1 .info-section h2,.theme-v1 .info-card h3,.theme-v1 .related h2,.theme-v1 .related-grid a,.theme-v1 .workforce-section h2{color:#22312b!important}
.theme-v1 .intro-section p,.theme-v1 .services-preview p,.theme-v1 .gallery-section p,.theme-v1 .faq-item p,.theme-v1 .info-card p,.theme-v1 .related p,.theme-v1 .workforce-section p{color:#52645b!important}

.theme-v2 .intro-section h1,.theme-v2 .intro-section h2,.theme-v2 .intro-section h3,.theme-v2 .services-preview h2,.theme-v2 .gallery-section h2,.theme-v2 .faq-section h2,.theme-v2 .faq-item summary,.theme-v2 .info-section h2,.theme-v2 .info-card h3,.theme-v2 .related h2,.theme-v2 .related-grid a,.theme-v2 .workforce-section h2{color:#22312a!important}
.theme-v2 .intro-section p,.theme-v2 .services-preview p,.theme-v2 .gallery-section p,.theme-v2 .faq-item p,.theme-v2 .info-card p,.theme-v2 .related p,.theme-v2 .workforce-section p{color:#596b62!important}

.theme-v3 .intro-section h1,.theme-v3 .intro-section h2,.theme-v3 .intro-section h3,.theme-v3 .services-preview h2,.theme-v3 .gallery-section h2,.theme-v3 .faq-section h2,.theme-v3 .faq-item summary,.theme-v3 .info-section h2,.theme-v3 .info-card h3,.theme-v3 .related h2,.theme-v3 .related-grid a,.theme-v3 .workforce-section h2{color:#16334a!important}
.theme-v3 .intro-section p,.theme-v3 .services-preview p,.theme-v3 .gallery-section p,.theme-v3 .faq-item p,.theme-v3 .info-card p,.theme-v3 .related p,.theme-v3 .workforce-section p{color:#526b7b!important}

/* Background image CTA strips (screenshots 2,5) with strong readable text. */
.theme-v1 .footer-feature,.theme-v2 .footer-feature,.theme-v3 .footer-feature{color:#fff!important;padding-inline:max(28px,calc((100% - var(--max))/2))!important;background:#23372f!important}
.theme-v1 .footer-feature::before,.theme-v2 .footer-feature::before,.theme-v3 .footer-feature::before{content:"";position:absolute;inset:0;background:url('./footer-bg.webp') center/cover no-repeat!important;opacity:1!important;z-index:-2!important}
.theme-v1 .footer-feature::after{background:linear-gradient(90deg,rgba(34,49,43,.94),rgba(34,49,43,.74))!important;z-index:-1!important}
.theme-v2 .footer-feature::after{background:linear-gradient(90deg,rgba(28,43,34,.94),rgba(66,83,44,.72))!important;z-index:-1!important}
.theme-v3 .footer-feature::after{background:linear-gradient(90deg,rgba(12,49,76,.95),rgba(17,85,113,.72))!important;z-index:-1!important}
.theme-v1 .footer-feature h2,.theme-v2 .footer-feature h2,.theme-v3 .footer-feature h2,
.theme-v1 .footer-feature .eyebrow,.theme-v2 .footer-feature .eyebrow,.theme-v3 .footer-feature .eyebrow{color:#fff!important;text-shadow:0 2px 16px rgba(0,0,0,.18)}

/* FAQ gets a visible concrete image, but questions remain readable in panels. */
.faq-section{padding-top:72px!important}
.faq-section::before{opacity:.18!important}
.theme-v1 .faq-section::after{background:rgba(247,243,235,.78)!important}
.theme-v2 .faq-section::after{background:rgba(246,249,242,.79)!important}
.theme-v3 .faq-section::after{background:rgba(238,247,250,.80)!important}
.faq-items{background:rgba(255,255,255,.72);backdrop-filter:blur(2px);padding-inline:24px;border-radius:8px}
.faq-item summary{color:var(--ink)!important}

/* Cards stay opaque enough over photographs. */
.image-tile,.info-card,.deep-dive-card,.intro-info,.quote-form{background:rgba(255,255,255,.94)!important;color:#22312a!important}
.theme-v1 .image-tile-body,.theme-v2 .image-tile-body,.theme-v3 .image-tile-body{background:rgba(255,255,255,.96)!important}
.image-tile-body h3,.info-card h3,.deep-dive-card h3{color:#22312a!important}
.image-tile-body p,.info-card p,.deep-dive-card p{color:#5a6a62!important}

/* Make section-level imagery sharp and prevent distortion. */
.intro-image img,.image-tile-photo img,.story-image img,.highlight-photo img,.detail-sidepic img,.visual-frame img,.workforce-photo img{object-fit:cover!important;object-position:center!important;filter:none!important;image-rendering:auto}
.workforce-photo>img:first-child{object-fit:cover!important}

/* Keep hero and section headings controlled, not oversized. */
.section-head h2,.intro-left h2,.deep-dive-top h2,.workforce-text h2{font-size:clamp(2.2rem,4vw,4.3rem)!important;line-height:1.06!important}
.footer-feature>h2{font-size:clamp(2.2rem,4vw,4.4rem)!important;line-height:1.02!important}

@media(max-width:930px){
  .head-inner{min-height:96px!important}
  .brand{min-width:190px!important;max-width:250px!important}
  .brand-logo{width:220px!important;height:84px!important}
  .site-footer .brand-logo{width:240px!important;height:92px!important}
  .intro-section,.image-story,.detail-opening{padding-block:64px!important}
  .services-preview,.gallery-section,.workforce-section,.deep-dive{padding-block:52px 64px!important}
}
@media(max-width:680px){
  .head-inner{min-height:82px!important}
  .brand{min-width:135px!important;max-width:170px!important}
  .brand-logo{width:160px!important;height:66px!important}
  .site-footer .brand-logo{width:185px!important;height:74px!important}
  .intro-section,.image-story,.detail-opening{padding-block:48px!important}
  .services-preview,.gallery-section,.workforce-section,.deep-dive{padding-block:44px 54px!important}
  .info-section,.faq-section,.related{padding-bottom:56px!important}
  .footer-feature{padding:48px 18px 40px!important}
  .faq-items{padding-inline:15px}
}

/* === FINAL SHARPNESS + LOGO READABILITY PASS === */
/* Keep the exact supplied identity, but give it enough physical size for its built-in text to read. */
.head-inner{min-height:225px!important;align-items:center!important}
.brand{max-width:330px!important;min-width:260px!important;overflow:visible!important}
.brand-logo{display:block!important;width:auto!important;height:205px!important;max-width:300px!important;max-height:none!important;object-fit:contain!important;object-position:left center!important;filter:none!important}
.site-footer .brand{max-width:360px!important;min-width:280px!important}
.site-footer .brand-logo{width:auto!important;height:225px!important;max-width:330px!important;max-height:none!important;filter:none!important}

/* Full-width photographs must use their native detail, with overlays rather than image filters. */
.home-hero img,.inner-hero img,.site-photo-band img,.highlight-panel img,
.hero-visual img,.v2-hero-image img,.v3-hero-photo img,.inner-photo img,.inner-v2-photo img,.inner-v3-back img{
  filter:none!important;
  image-rendering:auto!important;
  backface-visibility:hidden;
  transform:none!important;
}
.theme-v2 .inner-v2-photo>img,.theme-v3 .inner-v3-back img,.theme-v3 .v3-hero-photo img{filter:none!important}

/* Sharp movement: animate framing, not scale, to avoid resampling softness. */
@keyframes sharpFramePan{0%{object-position:48% center}100%{object-position:52% center}}
@keyframes sharpCrossfade{0%,8%{opacity:0;object-position:48% center}15%,44%{opacity:1;object-position:50% center}51%,100%{opacity:0;object-position:52% center}}
.theme-v1 .v1-hero .big-photo img,
.theme-v2 .v2-hero-image img,
.theme-v1 .inner-v1 .inner-photo img,
.theme-v2 .inner-v2-photo img,
.theme-v3 .inner-v3-back img,
.site-photo-band-media img{animation:sharpFramePan 16s ease-in-out infinite alternate!important}
.theme-v3 .v3-hero-photo img{animation:sharpCrossfade 18s ease-in-out infinite!important;transform:none!important}
.theme-v3 .v3-hero-photo img:first-child{animation-delay:-9s!important}
.theme-v3 .v3-hero-photo img:nth-child(2){animation-delay:0s!important}

/* V1: keep hero and inner-page imagery visibly crisp rather than washed out. */
.theme-v1 .v1-hero::after{background:linear-gradient(90deg,rgba(245,240,232,.96) 0%,rgba(245,240,232,.92) 31%,rgba(245,240,232,.50) 50%,rgba(245,240,232,.12) 70%,rgba(245,240,232,0) 86%)!important}
.theme-v1 .inner-v1::after{background:linear-gradient(90deg,rgba(241,233,221,.95) 0%,rgba(241,233,221,.90) 31%,rgba(241,233,221,.48) 50%,rgba(241,233,221,.11) 71%,rgba(241,233,221,0) 87%)!important}
.theme-v1 .v1-hero .hero-visual,.theme-v1 .inner-v1 .inner-photo{opacity:1!important}

/* Other versions: use clean photos and overlays for readability, never image dimming filters. */
.theme-v2 .v2-hero-mask{background:linear-gradient(90deg,rgba(17,29,26,.92) 0%,rgba(17,29,26,.84) 35%,rgba(17,29,26,.45) 58%,rgba(17,29,26,.10) 81%,rgba(17,29,26,0) 100%)!important}
.theme-v2 .inner-v2::after{background:linear-gradient(90deg,rgba(18,30,26,.91) 0%,rgba(18,30,26,.82) 36%,rgba(18,30,26,.43) 60%,rgba(18,30,26,.09) 83%,rgba(18,30,26,0) 100%)!important}
.theme-v3 .v3-hero-overlay{background:linear-gradient(90deg,rgba(8,40,63,.93) 0%,rgba(8,40,63,.84) 36%,rgba(8,40,63,.43) 60%,rgba(8,40,63,.10) 82%,rgba(8,40,63,0) 100%)!important}
.theme-v3 .inner-v3::after{background:linear-gradient(90deg,rgba(12,51,80,.92) 0%,rgba(12,51,80,.84) 36%,rgba(12,51,80,.42) 60%,rgba(12,51,80,.09) 83%,rgba(12,51,80,0) 100%)!important}

/* Replace formerly soft/upscaled backgrounds with native high-quality crops. */
.theme-v1 .process-section::before,.theme-v2 .process-section::before,.theme-v3 .process-section::before{
  background-image:url('./process-bg-hq.webp')!important;background-size:cover!important;background-position:center!important;opacity:.42!important;filter:none!important;transform:none!important
}
.theme-v1 .footer-feature::before,.theme-v2 .footer-feature::before,.theme-v3 .footer-feature::before{
  background-image:url('./footer-bg-hq.webp')!important;background-size:cover!important;background-position:center!important;opacity:.26!important;filter:none!important;transform:none!important
}
.theme-v1 .intro-section::before,.theme-v2 .intro-section::before,.theme-v3 .intro-section::before{background-image:url('./site-1600.webp')!important;opacity:.20!important}
.theme-v1 .services-preview::before,.theme-v2 .services-preview::before,.theme-v3 .services-preview::before{background-image:url('./mixer-1600.webp')!important;opacity:.18!important}
.theme-v1 .gallery-section::before,.theme-v2 .gallery-section::before,.theme-v3 .gallery-section::before{background-image:url('./mixer-1600.webp')!important;opacity:.16!important}
.theme-v1 .faq-section::before,.theme-v2 .faq-section::before,.theme-v3 .faq-section::before{background-image:url('./plant-1600.webp')!important;opacity:.18!important}
.theme-v1 .info-section::before,.theme-v2 .info-section::before,.theme-v3 .info-section::before,
.theme-v1 .related::before,.theme-v2 .related::before,.theme-v3 .related::before{background-image:url('./pour-1600.webp')!important;opacity:.17!important}
.theme-v1 .workforce-section::before,.theme-v2 .workforce-section::before,.theme-v3 .workforce-section::before,
.theme-v1 .contact-layout::before,.theme-v2 .contact-layout::before,.theme-v3 .contact-layout::before,
.theme-v1 .quote-layout::before,.theme-v2 .quote-layout::before,.theme-v3 .quote-layout::before{background-image:url('./workers-1600.webp')!important;opacity:.12!important}

/* Backgrounds should remain visible while text stays high contrast. */
.theme-v1 .intro-section::after,.theme-v1 .services-preview::after,.theme-v1 .gallery-section::after,.theme-v1 .faq-section::after,.theme-v1 .info-section::after,.theme-v1 .related::after{background:rgba(249,246,240,.82)!important}
.theme-v2 .intro-section::after,.theme-v2 .services-preview::after,.theme-v2 .gallery-section::after,.theme-v2 .faq-section::after,.theme-v2 .info-section::after,.theme-v2 .related::after{background:rgba(247,248,244,.82)!important}
.theme-v3 .intro-section::after,.theme-v3 .services-preview::after,.theme-v3 .gallery-section::after,.theme-v3 .faq-section::after,.theme-v3 .info-section::after,.theme-v3 .related::after{background:rgba(244,249,250,.82)!important}
.faq-items{backdrop-filter:none!important;background:rgba(255,255,255,.88)!important}

/* Keep dark photographic feature backgrounds clear but readable. */
.theme-v1 .process-section::after{background:rgba(30,44,38,.78)!important}
.theme-v2 .process-section::after{background:rgba(27,42,32,.72)!important}
.theme-v3 .process-section::after{background:rgba(8,35,59,.76)!important}

/* Responsive logo sizing: large enough to read, without consuming the whole mobile header. */
@media(max-width:1150px){
  .head-inner{min-height:180px!important}
  .brand{min-width:215px!important;max-width:270px!important}
  .brand-logo{height:160px!important;max-width:245px!important}
  .site-footer .brand-logo{height:180px!important;max-width:270px!important}
}
@media(max-width:930px){
  .head-inner{min-height:135px!important}
  .brand{min-width:155px!important;max-width:205px!important}
  .brand-logo{height:118px!important;max-width:185px!important}
  .site-footer .brand-logo{height:145px!important;max-width:220px!important}
}
@media(max-width:680px){
  .head-inner{min-height:98px!important}
  .brand{min-width:112px!important;max-width:145px!important}
  .brand-logo{height:88px!important;max-width:132px!important}
  .site-footer .brand{min-width:155px!important;max-width:200px!important}
  .site-footer .brand-logo{height:130px!important;max-width:195px!important}
  .theme-v1 .v1-hero::after,.theme-v1 .inner-v1::after,
  .theme-v2 .v2-hero-mask,.theme-v2 .inner-v2::after,
  .theme-v3 .v3-hero-overlay,.theme-v3 .inner-v3::after{background:linear-gradient(180deg,rgba(15,24,22,.16) 0%,rgba(15,24,22,.48) 42%,rgba(15,24,22,.82) 100%)!important}
}
@media(prefers-reduced-motion:reduce){
  .theme-v1 .v1-hero .big-photo img,.theme-v2 .v2-hero-image img,.theme-v3 .v3-hero-photo img,
  .theme-v1 .inner-v1 .inner-photo img,.theme-v2 .inner-v2-photo img,.theme-v3 .inner-v3-back img,.site-photo-band-media img{animation:none!important}
}

/* === FINAL VISUAL POLISH + CROSS-VERSION CONTRAST PASS === */
/* Header/logo: readable identity without an excessively tall header */
.head-inner{min-height:148px!important;gap:24px!important}
.brand{min-width:205px!important;max-width:235px!important;overflow:visible!important}
.brand-logo{height:132px!important;width:auto!important;max-width:205px!important;object-fit:contain!important;filter:none!important}
.site-footer .brand{min-width:220px!important;max-width:255px!important}
.site-footer .brand-logo{height:150px!important;width:auto!important;max-width:230px!important}

/* Universal readable light-section typography */
.detail-opening h2,.detail-opening h3,.deep-dive h2,.deep-dive h3,.contact-layout h2,.contact-layout h3,
.quote-layout h2,.quote-layout h3,.faq-page h2,.faq-page h3,.form-head h2,.quote-intro h2,.contact-panel h3{opacity:1!important;text-shadow:none!important}
.theme-v1 .detail-opening h2,.theme-v1 .deep-dive h2,.theme-v1 .deep-dive h3,.theme-v1 .contact-layout h2,.theme-v1 .quote-layout h2,.theme-v1 .faq-page h2,.theme-v1 .form-head h2{color:#24372e!important}
.theme-v1 .detail-heading p,.theme-v1 .deep-dive p,.theme-v1 .contact-layout p,.theme-v1 .quote-layout p,.theme-v1 .faq-page p{color:#55675e!important}
.theme-v1 .text-link{color:#a95f3a!important}

.theme-v2 .detail-opening h2,.theme-v2 .deep-dive h2,.theme-v2 .deep-dive h3,.theme-v2 .contact-layout h2,.theme-v2 .quote-layout h2,.theme-v2 .faq-page h2,.theme-v2 .form-head h2{color:#21362c!important}
.theme-v2 .detail-heading p,.theme-v2 .deep-dive p,.theme-v2 .contact-layout p,.theme-v2 .quote-layout p,.theme-v2 .faq-page p{color:#52665c!important}
.theme-v2 .text-link{color:#60763d!important}

.theme-v3 .detail-opening h2,.theme-v3 .deep-dive h2,.theme-v3 .deep-dive h3,.theme-v3 .contact-layout h2,.theme-v3 .quote-layout h2,.theme-v3 .faq-page h2,.theme-v3 .form-head h2{color:#173d57!important}
.theme-v3 .detail-heading p,.theme-v3 .deep-dive p,.theme-v3 .contact-layout p,.theme-v3 .quote-layout p,.theme-v3 .faq-page p{color:#526d7d!important}
.theme-v3 .text-link{color:#0f7890!important}

/* Fix all dark photographic process areas, especially V2 */
.process-section{color:#fff!important}
.process-section h2,.process-section h3,.process-section p,.process-section .eyebrow{color:#fff!important}
.process-section .step p{color:rgba(255,255,255,.88)!important}
.process-section .step{background:rgba(255,255,255,.075)!important;padding:26px 24px!important;border-top:2px solid rgba(255,255,255,.55)!important;backdrop-filter:none!important}
.theme-v1 .process-section::after{background:rgba(31,50,41,.80)!important}
.theme-v2 .process-section::after{background:rgba(31,48,38,.80)!important}
.theme-v3 .process-section::after{background:rgba(9,51,78,.82)!important}
.theme-v1 .process-section .eyebrow{color:#f0b08d!important}
.theme-v2 .process-section .eyebrow{color:#c9df76!important}
.theme-v3 .process-section .eyebrow{color:#9fe1ef!important}

/* Inner-page opening section: remove slivers / awkward empty columns */
.detail-opening{display:grid!important;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;gap:clamp(30px,5vw,72px)!important;align-items:stretch!important}
.detail-opening>*{min-width:0!important;width:100%!important}
.detail-heading{display:flex!important;flex-direction:column!important;justify-content:center!important;padding:34px!important;border:1px solid rgba(35,55,45,.10)!important}
.detail-sidepic{width:100%!important;height:auto!important;min-height:410px!important;max-height:520px!important;overflow:hidden!important;box-shadow:0 22px 55px rgba(18,35,29,.12)!important}
.detail-sidepic img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;display:block!important}
.theme-v1 .detail-heading{background:linear-gradient(145deg,#fffaf5,#f4ece3)!important;border-left:5px solid #b7653e!important}
.theme-v2 .detail-heading{background:linear-gradient(145deg,#f7f9f2,#e9efdf)!important;border-left:5px solid #728a45!important}
.theme-v3 .detail-heading{background:linear-gradient(145deg,#f5fbfd,#e8f3f7)!important;border-left:5px solid #16819a!important}

/* Contact/quote sections: keep photographic background but place content on readable surfaces */
.contact-layout,.quote-layout{position:relative!important;gap:34px!important;padding-block:70px 82px!important}
.contact-layout>div:first-child,.contact-form-side,.quote-intro,.quote-form{position:relative!important;z-index:2!important}
.contact-layout>div:first-child,.quote-intro{padding:34px!important;border:1px solid rgba(25,44,35,.10)!important;box-shadow:0 18px 44px rgba(20,37,31,.08)!important}
.contact-form-side .quote-form,.quote-layout .quote-form{box-shadow:0 18px 48px rgba(20,37,31,.10)!important}
.theme-v1 .contact-layout>div:first-child,.theme-v1 .quote-intro,.theme-v1 .quote-form{background:rgba(255,250,246,.96)!important}
.theme-v2 .contact-layout>div:first-child,.theme-v2 .quote-intro,.theme-v2 .quote-form{background:rgba(248,250,244,.97)!important;color:#21362c!important}
.theme-v3 .contact-layout>div:first-child,.theme-v3 .quote-intro,.theme-v3 .quote-form{background:rgba(246,251,253,.97)!important;color:#173d57!important}
.contact-detail>a,.contact-detail>p,.contact-detail .contact-wa{opacity:1!important}
.theme-v1 .contact-detail>a,.theme-v1 .contact-detail>p{color:#2f453b!important}
.theme-v2 .contact-detail>a,.theme-v2 .contact-detail>p{color:#293e34!important}
.theme-v3 .contact-detail>a,.theme-v3 .contact-detail>p{color:#24465a!important}
.contact-detail .contact-wa{color:#178a4e!important}
.form-grid label{color:#263b32!important}

/* Stronger colorful blocks, coordinated per version */
.image-tile,.info-card,.deep-dive-card,.related-grid a{border-width:1px!important;box-shadow:0 16px 36px rgba(18,35,29,.08)!important}
.theme-v1 .image-tile:nth-child(3n+1),.theme-v1 .info-card:nth-child(3n+1),.theme-v1 .deep-dive-card:nth-child(3n+1){background:#fff7f1!important;border-color:#e8c0a8!important}
.theme-v1 .image-tile:nth-child(3n+2),.theme-v1 .info-card:nth-child(3n+2),.theme-v1 .deep-dive-card:nth-child(3n+2){background:#eff5f0!important;border-color:#bad0c1!important}
.theme-v1 .image-tile:nth-child(3n+3),.theme-v1 .info-card:nth-child(3n+3),.theme-v1 .deep-dive-card:nth-child(3n+3){background:#f5eee6!important;border-color:#d9c3ad!important}
.theme-v1 .deep-card-rule{background:#b7653e!important}

.theme-v2 .image-tile:nth-child(3n+1),.theme-v2 .info-card:nth-child(3n+1),.theme-v2 .deep-dive-card:nth-child(3n+1){background:#f2f6e8!important;border-color:#c9d6a8!important}
.theme-v2 .image-tile:nth-child(3n+2),.theme-v2 .info-card:nth-child(3n+2),.theme-v2 .deep-dive-card:nth-child(3n+2){background:#edf3ef!important;border-color:#bfd0c5!important}
.theme-v2 .image-tile:nth-child(3n+3),.theme-v2 .info-card:nth-child(3n+3),.theme-v2 .deep-dive-card:nth-child(3n+3){background:#f8f4e9!important;border-color:#ddd1b1!important}
.theme-v2 .deep-card-rule{background:#728a45!important}
.theme-v2 .image-tile-body{background:transparent!important}
.theme-v2 .image-tile-body h3,.theme-v2 .info-card h3,.theme-v2 .deep-dive-card h3{color:#22362d!important}
.theme-v2 .image-tile-body p,.theme-v2 .info-card p,.theme-v2 .deep-dive-card p{color:#56685e!important}
.theme-v2 .tile-link{color:#60763d!important}

.theme-v3 .image-tile:nth-child(3n+1),.theme-v3 .info-card:nth-child(3n+1),.theme-v3 .deep-dive-card:nth-child(3n+1){background:#eef8fb!important;border-color:#b9dce5!important}
.theme-v3 .image-tile:nth-child(3n+2),.theme-v3 .info-card:nth-child(3n+2),.theme-v3 .deep-dive-card:nth-child(3n+2){background:#fff6e4!important;border-color:#ead7ae!important}
.theme-v3 .image-tile:nth-child(3n+3),.theme-v3 .info-card:nth-child(3n+3),.theme-v3 .deep-dive-card:nth-child(3n+3){background:#edf3f9!important;border-color:#c1d2e2!important}
.theme-v3 .deep-card-rule{background:#16819a!important}

/* Related links become useful colored navigation blocks */
.theme-v1 .related-grid a:nth-child(3n+1){background:#fff5ee!important;border-color:#e8c0a8!important}
.theme-v1 .related-grid a:nth-child(3n+2){background:#eef5ef!important;border-color:#bdd0c2!important}
.theme-v1 .related-grid a:nth-child(3n+3){background:#f5eee6!important;border-color:#d9c3ad!important}
.theme-v2 .related-grid a:nth-child(3n+1){background:#f1f6e7!important;border-color:#c7d6a6!important}
.theme-v2 .related-grid a:nth-child(3n+2){background:#edf3ef!important;border-color:#bfd0c5!important}
.theme-v2 .related-grid a:nth-child(3n+3){background:#f8f4e9!important;border-color:#ddd1b1!important}
.theme-v3 .related-grid a:nth-child(3n+1){background:#edf8fb!important;border-color:#b9dce5!important}
.theme-v3 .related-grid a:nth-child(3n+2){background:#fff6e5!important;border-color:#ead7ae!important}
.theme-v3 .related-grid a:nth-child(3n+3){background:#edf3f9!important;border-color:#c1d2e2!important}

/* Make section heads deliberate and visible instead of washed out */
.section-head,.deep-dive-top,.gallery-head{position:relative!important}
.theme-v1 .section-head,.theme-v1 .deep-dive-top,.theme-v1 .gallery-head{border-left:5px solid #b7653e!important;padding-left:20px!important}
.theme-v2 .section-head,.theme-v2 .deep-dive-top,.theme-v2 .gallery-head{border-left:5px solid #728a45!important;padding-left:20px!important}
.theme-v3 .section-head,.theme-v3 .deep-dive-top,.theme-v3 .gallery-head{border-left:5px solid #16819a!important;padding-left:20px!important}

/* Prevent old V2 dark theme declarations from leaking into light blocks */
.theme-v2 .intro-section,.theme-v2 .services-preview,.theme-v2 .gallery-section,.theme-v2 .faq-section,.theme-v2 .info-section,.theme-v2 .related,.theme-v2 .deep-dive,.theme-v2 .detail-opening,.theme-v2 .contact-layout,.theme-v2 .quote-layout{color:#22362d!important}
.theme-v2 .intro-section .eyebrow,.theme-v2 .services-preview .eyebrow,.theme-v2 .gallery-section .eyebrow,.theme-v2 .faq-section .eyebrow,.theme-v2 .info-section .eyebrow,.theme-v2 .related .eyebrow,.theme-v2 .deep-dive .eyebrow,.theme-v2 .detail-opening .eyebrow,.theme-v2 .contact-layout .eyebrow,.theme-v2 .quote-layout .eyebrow{color:#728a45!important}

/* Compact desktop header but retain logo legibility */
@media(min-width:1160px){
  .head-inner{min-height:148px!important}
  .brand-logo{height:132px!important;max-width:205px!important}
}
@media(max-width:1150px){
  .head-inner{min-height:124px!important}
  .brand{min-width:165px!important;max-width:195px!important}
  .brand-logo{height:108px!important;max-width:172px!important}
  .site-footer .brand-logo{height:128px!important;max-width:195px!important}
}
@media(max-width:930px){
  .head-inner{min-height:102px!important}
  .brand{min-width:130px!important;max-width:155px!important}
  .brand-logo{height:88px!important;max-width:142px!important}
  .site-footer .brand-logo{height:112px!important;max-width:175px!important}
}
@media(max-width:680px){
  .head-inner{min-height:84px!important}
  .brand{min-width:105px!important;max-width:125px!important}
  .brand-logo{height:72px!important;max-width:116px!important}
  .site-footer .brand-logo{height:96px!important;max-width:150px!important}
  .detail-opening{grid-template-columns:1fr!important;gap:20px!important}
  .detail-heading{padding:25px!important}
  .detail-sidepic{min-height:270px!important;max-height:none!important}
  .contact-layout>div:first-child,.quote-intro{padding:25px!important}
  .process-section .step{padding:20px!important}
  .section-head,.deep-dive-top,.gallery-head{padding-left:14px!important}
}

/* --- V2 contrast hotfix: improve section readability on light / image-backed areas --- */
body.theme-v2{
  background:#151c1d;
  color:#ebf0ed;
}
body.theme-v2 .intro-section,
body.theme-v2 .services-preview,
body.theme-v2 .image-story,
body.theme-v2 .workforce-section,
body.theme-v2 .faq-section,
body.theme-v2 .detail-opening,
body.theme-v2 .deep-dive,
body.theme-v2 .info-section,
body.theme-v2 .related,
body.theme-v2 .quote-layout,
body.theme-v2 .contact-layout{
  color:#16221c;
}
body.theme-v2 .story-copy h2,
body.theme-v2 .intro-left h2,
body.theme-v2 .section-head h2,
body.theme-v2 .detail-heading h2,
body.theme-v2 .deep-dive-top h2,
body.theme-v2 .workforce-text h2,
body.theme-v2 .quote-intro h2,
body.theme-v2 .contact-layout h2,
body.theme-v2 .faq-section .section-head h2,
body.theme-v2 .footer-feature h2,
body.theme-v2 .highlight-copy h2{
  color:#122019 !important;
  opacity:1 !important;
  text-shadow:none !important;
}
body.theme-v2 .story-copy p,
body.theme-v2 .intro-left p,
body.theme-v2 .section-head > p,
body.theme-v2 .detail-heading p,
body.theme-v2 .deep-dive-top > p,
body.theme-v2 .workforce-text > p,
body.theme-v2 .quote-intro p,
body.theme-v2 .contact-layout > div > p,
body.theme-v2 .contact-layout p,
body.theme-v2 .faq-item p,
body.theme-v2 .contact-detail > a,
body.theme-v2 .contact-detail > p{
  color:#4d5d56 !important;
  opacity:1 !important;
}
body.theme-v2 .text-link,
body.theme-v2 .tile-link{
  color:#6d8427 !important;
  border-color:currentColor !important;
}
body.theme-v2 .faq-item summary,
body.theme-v2 .info-card h3,
body.theme-v2 .deep-dive-card h3,
body.theme-v2 .contact-detail > span,
body.theme-v2 .quote-form h2,
body.theme-v2 .form-head p,
body.theme-v2 .form-grid label,
body.theme-v2 .footer-grid h3,
body.theme-v2 .footer-about p,
body.theme-v2 .footer-grid > div > p,
body.theme-v2 .footer-grid > div > a:not(.brand):not(.contact-chip){
  opacity:1 !important;
}
body.theme-v2 .image-story,
body.theme-v2 .workforce-section,
body.theme-v2 .detail-opening,
body.theme-v2 .deep-dive,
body.theme-v2 .info-section,
body.theme-v2 .faq-section,
body.theme-v2 .quote-layout,
body.theme-v2 .contact-layout{
  position:relative;
  z-index:1;
}
body.theme-v2 .image-story .story-copy,
body.theme-v2 .detail-opening .detail-heading,
body.theme-v2 .contact-layout > div:first-child,
body.theme-v2 .quote-intro{
  position:relative;
  z-index:2;
}
body.theme-v2 .contact-layout{
  align-items:start;
}
body.theme-v2 .contact-panel{
  background:rgba(255,255,255,.72);
  border:1px solid rgba(21,33,29,.10);
  padding:24px 26px;
  backdrop-filter:blur(2px);
}
body.theme-v2 .contact-detail{
  border-top:1px solid rgba(21,33,29,.12);
}
body.theme-v2 .contact-detail:first-child{
  border-top:0;
}
body.theme-v2 .quote-form{
  box-shadow:0 20px 60px rgba(10,22,16,.14);
}
body.theme-v2 .footer-feature{
  align-items:center;
}
body.theme-v2 .footer-feature .btn{
  margin-left:0;
}
