@font-face{font-family:Bebas;src:url('../fonts/bebas-0.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('../fonts/manrope-0.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('../fonts/manrope-2.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Manrope;src:url('../fonts/manrope-3.ttf') format('truetype');font-weight:800;font-display:swap}
:root{--red:#ce2026;--ink:#0b0b0b;--paper:#f1efe9;--muted:#77736b;--line:rgba(255,255,255,.18)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{margin:0;color:var(--paper);background:var(--ink);font-family:Manrope,Arial,sans-serif;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.skip-link{position:fixed;z-index:1000;top:8px;left:8px;padding:10px 14px;color:#111;background:#fff;transform:translateY(-150%)}
.skip-link:focus{transform:none}
.site-header{position:fixed;z-index:100;top:18px;left:50%;transform:translateX(-50%);width:min(1180px,calc(100% - 32px));height:72px;display:grid;grid-template-columns:180px 1fr 180px;align-items:center;padding:0 14px 0 20px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(9,9,9,.78);backdrop-filter:blur(18px);box-shadow:0 20px 60px rgba(0,0,0,.25)}
.brand img{width:128px;height:auto}.nav{display:flex;justify-content:center;gap:28px}.nav a{position:relative;font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--red);transition:right .25s}.nav a:hover::after,.nav a[aria-current=page]::after{right:0}.header-call{display:grid;place-items:center;height:42px;border-radius:12px;background:var(--red);font-size:11px;font-weight:800;letter-spacing:.06em}.menu-button{display:none;color:#fff;border:0;background:none}.menu-button span{display:block;width:24px;height:2px;margin:6px;background:#fff;transition:.25s}
.section{width:min(1180px,calc(100% - 48px));margin:auto;padding:125px 0}.light-section{width:100%;padding-inline:max(24px,calc((100% - 1180px)/2));color:#171717;background:var(--paper)}
.section-label,.eyebrow{margin:0 0 20px;color:var(--red);font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.eyebrow{display:flex;align-items:center;gap:12px;color:#fff}.eyebrow i{width:42px;height:2px;background:var(--red);box-shadow:0 0 20px var(--red)}
h1,h2,h3{font-family:Bebas,Impact,sans-serif;font-weight:400;text-transform:uppercase}h1{margin:0;font-size:clamp(78px,10vw,144px);line-height:.79}h2{margin:0;font-size:clamp(58px,7vw,96px);line-height:.89}h3{margin:0;font-size:38px;line-height:.95}em{color:var(--red);font-style:normal}.lede{max-width:580px;color:rgba(255,255,255,.72);font-size:16px;line-height:1.8}.actions{display:flex;gap:12px;margin-top:30px}.button{min-height:54px;display:inline-flex;align-items:center;justify-content:center;padding:0 22px;border:1px solid transparent;border-radius:4px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;transition:.25s}.button.primary{color:#fff;background:var(--red);box-shadow:0 12px 34px rgba(206,32,38,.26)}.button.primary:hover{transform:translateY(-3px);box-shadow:0 16px 44px rgba(206,32,38,.42)}.button.ghost{border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.04)}.button.ghost:hover{color:#111;background:#fff}.button.light{color:#111;background:#fff}.text-link{display:inline-flex;padding-bottom:7px;border-bottom:1px solid currentColor;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.text-link:hover{color:var(--red)}
.hero,.page-hero{position:relative;min-height:100svh;overflow:hidden;display:flex;align-items:flex-end}.page-hero{min-height:82svh}.hero-bg,.page-hero-bg,.band-bg{position:absolute;inset:-80px 0;background-position:center;background-size:cover;will-change:transform}.hero-home .hero-bg{background-image:url('../images/portfolio/portfolio-15.jpg');background-position:58% center}.page-hero-bg{background-image:var(--hero-image)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,4,4,.94),rgba(4,4,4,.55) 48%,rgba(4,4,4,.12) 78%),linear-gradient(0deg,rgba(4,4,4,.72),transparent 58%)}.hero-content,.page-hero-content{position:relative;z-index:2;width:min(1180px,calc(100% - 48px));margin:auto;padding:170px 0 78px}.page-hero-content{padding-top:190px}.page-hero-content>p:last-child{max-width:600px;color:rgba(255,255,255,.7);line-height:1.8}.proof{margin-top:30px;color:rgba(255,255,255,.55);font-size:12px}.proof strong{color:#fff}.hero-rail{position:absolute;z-index:2;right:26px;top:50%;writing-mode:vertical-rl;color:rgba(255,255,255,.5);font-size:8px;letter-spacing:.2em;text-transform:uppercase}.hero-rail i{display:inline-block;width:1px;height:52px;margin:12px;background:rgba(255,255,255,.3)}
.ticker{overflow:hidden;padding:17px 0;color:#111;background:var(--red);font:24px/1 Bebas;letter-spacing:.08em;white-space:nowrap}.ticker div{width:max-content;animation:ticker 28s linear infinite}.ticker i{display:inline-block;width:7px;height:7px;margin:0 28px;border-radius:50%;background:#111}
.intro{display:grid;grid-template-columns:1.15fr .8fr .7fr;gap:36px;align-items:end}.intro>div:first-child{grid-column:1/3}.intro-copy{color:rgba(255,255,255,.62);font-size:14px;line-height:1.85}.intro-copy .text-link{margin-top:20px;color:#fff}.intro-image{grid-column:1/3;height:480px;margin:0;overflow:hidden}.intro-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.intro-image:hover img{transform:scale(1.04)}.stat{align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;min-height:260px;padding:30px;border-left:1px solid var(--line);background:linear-gradient(145deg,rgba(255,255,255,.08),transparent)}.stat strong{color:var(--red);font:150px/.75 Bebas}.stat span{color:rgba(255,255,255,.6);font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.section-heading,.two-col-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:end;margin-bottom:65px}.section-heading>p,.two-col-intro>p{max-width:500px;color:var(--muted);line-height:1.8}.two-col-intro{margin-bottom:0}.two-col-intro>p{color:rgba(255,255,255,.58)}
.service-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;grid-template-rows:330px 330px;gap:14px}.service-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;padding:30px;border:1px solid #d5d0c7;background:#e8e5de}.service-card.dark{grid-row:1/3;color:#fff;background:#111}.service-card.red{color:#fff;background:var(--red);border-color:var(--red)}.service-card span{position:absolute;top:25px;right:25px;color:#999;font:24px Bebas}.service-card.dark span,.service-card.red span{color:#fff}.service-card h3{margin-bottom:15px}.service-card.dark h3{font-size:70px}.service-card p{margin:0;color:#716d66;font-size:12px;line-height:1.7}.service-card.dark p{color:rgba(255,255,255,.56)}.service-card.red p{color:#fff}.service-card a{margin-top:22px;font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.image-card{padding:0;overflow:hidden}.image-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.image-card:hover img{transform:scale(1.05)}.image-card b{position:absolute;bottom:22px;left:22px;color:#fff;font-size:9px;letter-spacing:.2em}
.image-band{position:relative;min-height:700px;overflow:hidden;display:flex;align-items:center}.band-bg{inset:-120px 0;background-image:var(--band-image)}.image-band::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.3))}.band-content{position:relative;z-index:2;width:min(1180px,calc(100% - 48px));margin:auto}.band-content>p:last-child{max-width:620px;color:rgba(255,255,255,.62);line-height:1.8}.facts{display:grid;grid-template-columns:repeat(3,1fr);max-width:850px;margin-top:60px;border-top:1px solid rgba(255,255,255,.25)}.facts span{display:flex;flex-direction:column;gap:14px;padding:24px 0;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.facts b{color:var(--red);font:24px Bebas}
.project-preview{display:grid;grid-template-columns:1.4fr .8fr;gap:18px}.project-card{position:relative;overflow:hidden;min-height:360px;background:#111}.project-card.wide{grid-row:span 2;min-height:740px}.project-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.project-card:hover img{transform:scale(1.05)}.project-card::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.82))}.project-card span{position:absolute;z-index:2;left:24px;bottom:22px;font:30px Bebas;text-transform:uppercase}
.split-story{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.split-story figure{height:620px;margin:0}.split-story img{width:100%;height:100%;object-fit:cover}.split-story>div>p:not(.section-label){color:rgba(255,255,255,.6);line-height:1.85}.split-story .text-link{margin-top:18px}.value-grid,.fact-grid,.hvac-grid,.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:65px;background:#cdc8bf}.value-grid article,.hvac-grid article{min-height:320px;padding:30px;background:var(--paper)}.value-grid b,.hvac-grid b{color:var(--red);font:24px Bebas}.value-grid h3,.hvac-grid h3{margin:110px 0 12px}.value-grid p,.hvac-grid p{color:var(--muted);font-size:12px;line-height:1.75}.facts-section{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:end}.fact-grid{margin:0;background:transparent;gap:14px}.fact-grid>div{min-height:210px;display:flex;flex-direction:column;justify-content:space-between;padding:24px;border-top:1px solid var(--line);background:linear-gradient(150deg,rgba(255,255,255,.06),transparent)}.fact-grid strong{color:var(--red);font:60px Bebas}.fact-grid span{color:rgba(255,255,255,.52);font-size:9px;letter-spacing:.12em;text-transform:uppercase}
.ledger{display:grid;grid-template-columns:.72fr 1.28fr;gap:85px}.ledger-title{position:sticky;top:125px;align-self:start}.ledger-title .button{margin-top:32px}.ledger-row{display:grid;grid-template-columns:120px 38px 1fr;gap:24px;align-items:center;min-height:165px;border-top:1px solid #cbc6bd}.ledger-row img{width:120px;height:110px;object-fit:cover}.ledger-row>b{color:var(--red);font:22px Bebas}.ledger-row h3{font-size:33px}.ledger-row p{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.65}.sector-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:60px}.sector-grid article{min-height:250px;padding:28px;border:1px solid var(--line);background:linear-gradient(150deg,rgba(255,255,255,.06),transparent);transition:.3s}.sector-grid article:hover{transform:translateY(-7px);border-color:var(--red)}.sector-grid h3{margin-top:95px}.sector-grid p{color:rgba(255,255,255,.5);font-size:12px;line-height:1.65}.split-cta{min-height:650px;display:grid;grid-template-columns:1fr 1fr;color:#171717;background:var(--paper)}.split-cta>div:first-child{background-position:center;background-size:cover}.split-cta>div:last-child{align-self:center;max-width:620px;padding:70px}.split-cta p:not(.section-label){color:var(--muted);line-height:1.8}
.hvac-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:110px;align-items:center}.hvac-intro>div:last-child>p:not(.section-label){color:rgba(255,255,255,.6);line-height:1.8}.hvac-intro .button{margin-top:18px}.comfort-dial{aspect-ratio:1;max-width:430px;position:relative;display:grid;place-content:center;text-align:center;border:1px solid var(--line);border-radius:50%;background:radial-gradient(circle,rgba(206,32,38,.2),transparent 65%);animation:glow 4s infinite}.comfort-dial::before{content:"";position:absolute;inset:30px;border:1px dashed rgba(255,255,255,.25);border-radius:50%;animation:spin 18s linear infinite}.comfort-dial span{color:var(--red);font:120px/.8 Bebas}.comfort-dial small{margin-top:12px;font-size:8px;letter-spacing:.2em}.hvac-grid{grid-template-columns:repeat(3,1fr)}.step-grid{gap:14px;background:transparent}.step-grid article{min-height:270px;padding:30px;border:1px solid var(--line)}.step-grid b{color:var(--red);font:24px Bebas}.step-grid h3{margin:82px 0 10px}.step-grid p{color:rgba(255,255,255,.52);font-size:12px;line-height:1.7}.finance{padding:100px max(24px,calc((100% - 1180px)/2));color:#fff;background:var(--red)}.finance>div{display:grid;grid-template-columns:.4fr 1fr .8fr auto;gap:35px;align-items:center}.finance p{font-size:9px;font-weight:800;letter-spacing:.2em}.finance span{font-size:12px;line-height:1.7}.finance em{color:#fff}
.gallery{width:min(1440px,calc(100% - 32px));margin:20px auto 110px;columns:3;column-gap:16px}.gallery-item{position:relative;break-inside:avoid;margin:0 0 16px;overflow:hidden;background:#111}.gallery-item img{width:100%;transition:transform .7s,filter .4s}.gallery-item:hover img{transform:scale(1.04);filter:saturate(.8)}.gallery-item::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.8));pointer-events:none}.gallery-item figcaption{position:absolute;z-index:2;left:20px;right:20px;bottom:18px;display:flex;justify-content:space-between;align-items:end;font:25px Bebas;text-transform:uppercase}.gallery-item figcaption span{font:8px Manrope;letter-spacing:.14em}.portfolio-cta{padding:120px 24px;text-align:center}.portfolio-cta>p{color:var(--red);font-size:9px;font-weight:800;letter-spacing:.22em}.portfolio-cta .button{margin-top:30px}
.contact-hero{min-height:92svh;width:min(1180px,calc(100% - 48px));margin:auto;padding-top:125px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center}.contact-hero>div:first-child>p:last-child{max-width:560px;color:rgba(255,255,255,.6);line-height:1.8}.map-orbit{aspect-ratio:1;display:grid;place-content:center;text-align:center;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 34px,rgba(255,255,255,.06) 35px),linear-gradient(140deg,rgba(206,32,38,.18),transparent 65%)}.map-orbit span{font:42px Bebas;letter-spacing:.08em}.map-orbit i{width:10px;height:10px;margin:20px auto;border-radius:50%;background:var(--red);box-shadow:0 0 0 12px rgba(206,32,38,.14),0 0 35px var(--red)}.map-orbit b{color:rgba(255,255,255,.4);font-size:8px;line-height:1.7;letter-spacing:.2em}.contact-main{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.contact-main>div:first-child>div:first-child>p:not(.section-label){color:var(--muted);line-height:1.8}.contact-list{display:grid;gap:1px;margin-top:40px;background:#cbc6bd}.contact-list>a,.contact-list>div{display:block;padding:20px;background:var(--paper);font-size:13px}.contact-list small{display:block;margin-bottom:5px;color:var(--muted);font-size:8px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.form-card{padding:42px;color:#fff;background:#171717;box-shadow:0 24px 80px rgba(0,0,0,.18)}#contact-form{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px}#contact-form label{display:grid;gap:8px;color:rgba(255,255,255,.55);font-size:8px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}#contact-form .full{grid-column:1/-1}#contact-form input,#contact-form select,#contact-form textarea{width:100%;padding:14px 0;color:#fff;border:0;border-bottom:1px solid rgba(255,255,255,.25);outline:0;background:transparent}#contact-form select option{color:#111}#contact-form input:focus,#contact-form select:focus,#contact-form textarea:focus{border-color:var(--red)}#contact-form button{justify-self:start}.form-success{min-height:450px;place-content:center;text-align:center}.form-success:not([hidden]){display:grid}.form-success h3{font-size:60px}.form-success p{color:rgba(255,255,255,.58);line-height:1.7}.service-area{color:#fff;background:#111}.city-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}.city-list span{padding:9px 13px;border:1px solid rgba(255,255,255,.25);border-radius:999px;font-size:9px;letter-spacing:.13em;text-transform:uppercase}
.site-footer{padding:85px max(24px,calc((100% - 1180px)/2)) 22px;border-top:1px solid var(--line);background:#080808}.footer-cta{position:relative;padding-bottom:70px;border-bottom:1px solid var(--line)}.footer-cta h2{font-size:clamp(72px,10vw,140px)}.round-link{position:absolute;right:0;top:25px;width:100px;height:100px;display:grid;place-items:center;border-radius:50%;background:var(--red);font-size:30px;transition:transform .3s}.round-link:hover{transform:rotate(16deg) scale(1.06)}.footer-grid{display:grid;grid-template-columns:1.4fr .6fr 1fr .7fr;gap:55px;padding:60px 0}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:11px}.footer-grid img{width:150px}.footer-grid p,.footer-grid a,.footer-grid span{margin:0;color:rgba(255,255,255,.5);font-size:10px;line-height:1.7}.footer-grid b{margin-bottom:7px;font-size:8px;letter-spacing:.17em;text-transform:uppercase}.footer-grid small{margin-top:15px;color:var(--red);font-weight:800}.footer-base{display:flex;justify-content:space-between;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.3);font-size:8px;letter-spacing:.12em;text-transform:uppercase}
.js .reveal{opacity:0;transform:translateY(34px);filter:blur(8px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1),filter .7s}.js .reveal.is-visible{opacity:1;transform:none;filter:none}
@keyframes ticker{to{transform:translateX(-50%)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes glow{50%{box-shadow:0 0 55px rgba(206,32,38,.24),inset 0 0 35px rgba(206,32,38,.08)}}
@media(max-width:980px){.section{padding-block:90px}.intro{grid-template-columns:1fr 1fr}.intro>div:first-child,.intro-copy{grid-column:1/-1}.intro-image{grid-column:1}.service-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.service-card{min-height:340px}.service-card.dark{grid-row:span 2}.ledger{grid-template-columns:1fr}.ledger-title{position:relative;top:auto}.sector-grid{grid-template-columns:1fr 1fr}.hvac-intro{gap:60px}.finance>div{grid-template-columns:1fr 1fr}.gallery{columns:2}.contact-main{gap:45px}.footer-grid{grid-template-columns:1.2fr .8fr 1fr}.footer-grid>div:last-child{display:none}}
@media(max-width:760px){.site-header{top:10px;height:64px;grid-template-columns:1fr auto auto;padding-left:14px}.brand img{width:108px}.header-call{width:42px;font-size:0}.header-call::before{content:"☎";font-size:18px}.menu-button{display:block;margin-left:8px}.menu-button[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.nav{position:absolute;top:72px;left:0;right:0;display:none;flex-direction:column;gap:0;padding:16px;border-radius:16px;background:rgba(9,9,9,.98)}.nav.open{display:flex}.nav a{padding:14px 10px;border-bottom:1px solid rgba(255,255,255,.1);font:26px Bebas}.section{width:calc(100% - 32px);padding-block:75px}.light-section{width:100%}.hero-content,.page-hero-content,.band-content{width:calc(100% - 32px)}h1{font-size:70px}h2{font-size:54px}.hero-bg{background-position:65% center}.hero-rail{display:none}.actions{align-items:stretch;flex-direction:column;max-width:330px}.ticker{font-size:17px}.intro{grid-template-columns:1fr}.intro>div:first-child,.intro-copy,.intro-image{grid-column:1}.intro-image{height:330px}.section-heading,.two-col-intro{grid-template-columns:1fr;gap:28px;margin-bottom:45px}.service-grid{grid-template-columns:1fr}.service-card.dark{grid-row:auto;min-height:460px}.service-card.image-card{min-height:290px}.facts{grid-template-columns:1fr}.project-preview{grid-template-columns:1fr}.project-card.wide{grid-row:auto;min-height:470px}.split-story,.facts-section,.hvac-intro,.contact-hero,.contact-main{grid-template-columns:1fr}.split-story{gap:42px}.split-story figure{height:450px}.value-grid,.fact-grid,.hvac-grid,.step-grid{grid-template-columns:1fr}.ledger-row{grid-template-columns:85px 30px 1fr}.ledger-row img{width:85px;height:90px}.sector-grid{grid-template-columns:1fr}.split-cta{grid-template-columns:1fr}.split-cta>div:first-child{min-height:370px}.split-cta>div:last-child{padding:55px 24px}.comfort-dial{max-width:330px}.comfort-dial span{font-size:90px}.finance>div{grid-template-columns:1fr}.gallery{width:calc(100% - 24px);columns:1}.contact-hero{padding-top:125px;padding-bottom:60px}.map-orbit{width:270px;justify-self:end}.form-card{padding:28px 20px}#contact-form{grid-template-columns:1fr}#contact-form label,#contact-form .full{grid-column:1}.footer-cta h2{font-size:68px}.round-link{position:relative;top:auto;right:auto;width:76px;height:76px;margin-top:25px}.footer-grid{grid-template-columns:1fr 1fr;gap:38px}.footer-grid>div:first-child{grid-column:1/-1}.footer-base{flex-direction:column;gap:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none;filter:none}}
