:root{--ink:#112a35;--deep:#0b222c;--blue:#117ea3;--sky:#dff4f9;--paper:#f5f4ef;--white:#fff;--line:rgba(17,42,53,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}img{display:block;width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Space Grotesk",sans-serif;letter-spacing:-.045em}h2{font-size:clamp(2.6rem,5vw,5.7rem);line-height:.97;margin-bottom:2rem;font-weight:500}.section{padding:9rem 5vw}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700;margin-bottom:1.5rem}.eyebrow:before{content:"";display:inline-block;width:2.3rem;height:1px;background:currentColor;vertical-align:middle;margin-right:.8rem}.light{color:#d8eef4}.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;height:96px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;color:#fff;border-bottom:1px solid rgba(255,255,255,.2)}.brand{display:flex;align-items:center;gap:.8rem;font-family:"Space Grotesk";font-weight:600;letter-spacing:.08em}.brand-mark{display:flex;gap:3px;align-items:flex-end;height:24px}.brand-mark i{display:block;width:4px;background:#28a8d0;transform:skew(-22deg)}.brand-mark i:nth-child(1){height:14px}.brand-mark i:nth-child(2){height:20px}.brand-mark i:nth-child(3){height:24px}.main-nav{display:flex;align-items:center;gap:2rem;font-size:.82rem;font-weight:600}.main-nav a{transition:opacity .2s}.main-nav a:hover{opacity:.65}.nav-cta{padding:.8rem 1.2rem;border:1px solid rgba(255,255,255,.5)}.menu-toggle{display:none;background:transparent;border:0}.hero{height:min(900px,100vh);min-height:700px;position:relative;color:#fff;display:flex;align-items:flex-end;padding:0 5vw 8vh;overflow:hidden}.hero-media{position:absolute;inset:0;background:url('assets/images/industrial-principal.jpeg') center/cover;transform:scale(1.02)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,22,29,.9) 0%,rgba(4,22,29,.55) 49%,rgba(4,22,29,.08) 80%),linear-gradient(0deg,rgba(4,22,29,.6),transparent 55%)}.hero-content{position:relative;z-index:2;max-width:970px}.hero h1{font-size:clamp(3.5rem,7vw,8rem);line-height:.9;font-weight:500;margin-bottom:2rem}.hero h1 em{font-weight:500;color:#72cee6;font-style:normal}.hero-copy{max-width:620px;font-size:clamp(1rem,1.4vw,1.3rem);line-height:1.65;color:#d8e2e5}.hero-actions{display:flex;align-items:center;gap:2rem;margin-top:2.2rem}.button{display:inline-flex;justify-content:space-between;gap:2rem;align-items:center;padding:1.1rem 1.35rem;font-size:.82rem;font-weight:700}.primary{background:#168bb0;color:#fff}.text-link{display:inline-flex;gap:1rem;align-items:center;font-weight:700;font-size:.82rem;border-bottom:1px solid currentColor;padding-bottom:.4rem}.hero-stat{position:absolute;z-index:2;right:5vw;bottom:8vh;display:flex;align-items:center;gap:1rem;border-left:1px solid rgba(255,255,255,.4);padding-left:1.4rem}.hero-stat strong{font:600 2.5rem "Space Grotesk"}.hero-stat span{font-size:.7rem;text-transform:uppercase;line-height:1.5;letter-spacing:.12em}.section-heading{display:grid;grid-template-columns:1.25fr 1fr;gap:5vw;margin-bottom:5rem}.section-heading .eyebrow{grid-column:1/-1}.section-heading h2{margin:0}.section-heading>p:last-child{align-self:end;max-width:500px;line-height:1.8;color:#596b72}.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.solution-card{height:580px;position:relative;color:#fff;overflow:hidden;padding:1.8rem;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(0deg,rgba(6,27,35,.92),rgba(6,27,35,.05) 70%),var(--image) center/cover}.solution-card:before{content:"";position:absolute;inset:0;background:rgba(8,43,56,.2);transition:.4s}.solution-card:hover:before{background:rgba(8,43,56,.5)}.solution-card>*{position:relative;z-index:1}.card-index{font-size:.73rem}.card-copy p{font-size:.77rem;text-transform:uppercase;letter-spacing:.11em}.card-copy h3{font-size:2rem;margin:.5rem 0 1.5rem}.card-copy a{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.technology{background:var(--deep);color:#fff;display:grid;grid-template-columns:.9fr 1.2fr;gap:8vw}.tech-intro{position:sticky;top:4rem;align-self:start}.tech-intro p:last-child{color:#a8bac1;line-height:1.8;max-width:450px}.systems-list>div{display:grid;grid-template-columns:45px 1fr 1.2fr;gap:1rem;padding:2rem 0;border-top:1px solid rgba(255,255,255,.17);align-items:start}.systems-list span{font-size:.7rem;color:#6abed7}.systems-list h3{font-size:1.45rem;margin:0}.systems-list p{margin:0;color:#9db0b7;line-height:1.6;font-size:.86rem}.projects{background:#eeede7}.projects-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:3rem;margin-bottom:4rem}.projects-heading>p{max-width:390px;color:#627177;line-height:1.7}.project-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:1.2rem}.project-card{position:relative;background:#fff;overflow:hidden}.project-large{grid-row:span 2}.project-card img{height:300px;object-fit:cover;transition:.5s}.project-large img{height:100%;min-height:690px}.project-card:hover img{transform:scale(1.025)}.project-card>div{position:absolute;left:0;bottom:0;width:100%;padding:4rem 2rem 1.8rem;color:#fff;background:linear-gradient(0deg,rgba(7,29,37,.92),transparent)}.project-card p{font-size:.67rem;text-transform:uppercase;letter-spacing:.12em}.project-card h3{font-size:1.5rem;margin-bottom:1rem}.project-card span{font-size:.72rem;font-weight:700}.company{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.company-image{height:650px;overflow:hidden}.company-image img{height:100%;object-fit:cover}.company-copy>p{line-height:1.8;color:#5f7177}.company-copy ul{list-style:none;padding:0;margin:2rem 0}.company-copy li{border-top:1px solid var(--line);padding:1rem 0;font-weight:600;font-size:.88rem}.contact{background:#1384a8;color:#fff;display:flex;justify-content:space-between;align-items:flex-end;gap:3rem}.contact h2{max-width:950px;margin:0}.light-button{background:#fff;color:var(--ink);min-width:180px}footer{background:#071b23;color:#b7c6ca;padding:3rem 5vw;display:flex;align-items:center;justify-content:space-between;font-size:.75rem}.footer-brand{color:#fff}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.site-header{height:76px}.main-nav{position:absolute;top:76px;left:0;width:100%;background:var(--deep);padding:2rem 5vw;display:none;flex-direction:column;align-items:flex-start}.main-nav.open{display:flex}.menu-toggle{display:block}.menu-toggle span{display:block;width:24px;height:1px;background:#fff;margin:7px}.hero{padding-bottom:4rem}.hero-stat{display:none}.section{padding:6rem 5vw}.section-heading,.technology,.company{grid-template-columns:1fr}.solution-grid{grid-template-columns:1fr}.solution-card{height:500px}.tech-intro{position:static}.projects-heading{display:block}.project-grid{grid-template-columns:1fr}.project-large{grid-row:auto}.project-large img,.project-card img{height:430px;min-height:0}.company-image{height:500px}.contact{align-items:flex-start;flex-direction:column}footer{align-items:flex-start;gap:1.5rem;flex-direction:column}}
@media(max-width:560px){.hero h1{font-size:3.3rem}.hero-actions{align-items:flex-start;flex-direction:column}.section-heading{display:block}.solution-card{height:440px}.systems-list>div{grid-template-columns:35px 1fr}.systems-list p{grid-column:2}.project-card img,.project-large img{height:390px}.company-image{height:400px}}

/* Curated real-photo update */
.hero-media{background-image:url('assets/images/climatizacion-industrial-westric-caja-azul-v7.png');background-position:center center}
.project-grid-two{grid-template-columns:repeat(2,1fr)}
.project-grid-two .project-card img{height:480px}
@media(max-width:900px){.project-grid-two{grid-template-columns:1fr}.project-grid-two .project-card img{height:430px}}
.project-grid-three{grid-template-columns:repeat(3,1fr)}
.project-grid-three .project-card img{height:480px}
@media(max-width:900px){.project-grid-three{grid-template-columns:1fr}.project-grid-three .project-card img{height:430px}}
.project-grid-four{grid-template-columns:1.2fr 1fr 1fr;grid-template-areas:"featured exterior coemi" "featured obra obra"}
.project-grid-four .project-card:nth-child(1){grid-area:featured}
.project-grid-four .project-card:nth-child(2){grid-area:exterior}
.project-grid-four .project-card:nth-child(3){grid-area:coemi}
.project-grid-four .project-card:nth-child(4){grid-area:obra}
.project-grid-four .project-card img{height:330px}
.project-grid-four .project-featured img{height:100%;min-height:680px}
.project-grid-four .project-featured img{object-position:center 72%}
.project-grid-four .project-card:nth-child(4) img{height:340px}
@media(max-width:900px){.project-grid-four{grid-template-columns:1fr;grid-template-areas:"featured" "exterior" "coemi" "obra"}.project-grid-four .project-card img,.project-grid-four .project-featured img,.project-grid-four .project-card:nth-child(4) img{height:430px;min-height:0}}
@media(max-width:560px){.project-grid-four .project-card img,.project-grid-four .project-featured img,.project-grid-four .project-card:nth-child(4) img{height:390px}}
.project-grid-single{display:block}
.project-grid-single .project-card{max-width:1180px;margin:0 auto}
.project-grid-single .project-card img{height:620px;object-position:center 45%}
@media(max-width:900px){.project-grid-single .project-card img{height:500px}}
@media(max-width:560px){.project-grid-single .project-card img{height:420px}}
.company-panel{min-height:650px;background:var(--deep);color:#fff;padding:3rem;display:grid;grid-template-columns:70px 1fr;align-content:center}
.company-panel p{grid-column:1/-1;color:#74c9e1;text-transform:uppercase;letter-spacing:.15em;font-size:.7rem;margin-bottom:3rem}
.company-panel strong,.company-panel span{padding:1.2rem 0;border-top:1px solid rgba(255,255,255,.16)}
.company-panel strong{font:500 .78rem "Space Grotesk";color:#65bad2}
.company-panel span{font:500 1.2rem "Space Grotesk"}
@media(max-width:900px){.company-panel{min-height:500px}}
@media(max-width:560px){.company-panel{min-height:420px;padding:2rem}}

/* Products and heating */
.products{background:#fff}
.products-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:6vw;align-items:end;margin-bottom:4rem}
.products-heading h2{margin-bottom:0}
.products-heading>p{max-width:520px;color:#5d6d73;line-height:1.8}
.ferroli-showcase{background:#f2f0eb;display:grid;grid-template-columns:.9fr .8fr .8fr;min-height:520px;overflow:hidden}
.ferroli-copy{background:#ec791f;color:#fff;padding:3.2rem;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.ferroli-brand{font:700 2rem "Space Grotesk";letter-spacing:-.06em;margin-bottom:2.5rem;color:#121212}
.ferroli-copy h3{font-size:clamp(1.8rem,2.5vw,2.8rem);line-height:1;margin-bottom:1.3rem}
.ferroli-copy>p:not(.ferroli-brand):not(.eyebrow){line-height:1.75;color:#fff3e9}
.ferroli-button{background:#182c34;color:#fff;margin:1.2rem 0}
.ferroli-copy small{font-size:.63rem;line-height:1.5;color:#ffe3cf;max-width:350px}
.product-visual{padding:3rem 2rem 2rem;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;border-right:1px solid rgba(17,42,53,.12)}
.product-visual img{height:350px;object-fit:contain;margin-bottom:2rem}
.product-visual span{align-self:flex-start;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:700}
.sales-features{display:grid;grid-template-columns:repeat(3,1fr);margin-top:1.2rem;border-top:1px solid var(--line)}
.sales-features>div{padding:2rem;border-right:1px solid var(--line)}
.sales-features strong{font-size:.7rem;color:var(--blue)}
.sales-features h3{font-size:1.35rem;margin:1.3rem 0 .7rem}
.sales-features p{font-size:.82rem;color:#627177;line-height:1.6;margin:0}
.company-office{height:650px;overflow:hidden;background:#dce9ed}
.company-office img{height:100%;object-fit:cover;object-position:center}
@media(max-width:900px){.products-heading{grid-template-columns:1fr}.ferroli-showcase{grid-template-columns:1fr 1fr}.ferroli-copy{grid-column:1/-1}.sales-features{grid-template-columns:1fr}.sales-features>div{border-bottom:1px solid var(--line)}.company-office{height:500px}}
@media(max-width:560px){.ferroli-showcase{grid-template-columns:1fr}.ferroli-copy{padding:3rem 2rem}.product-visual img{height:280px}.sales-features{margin-top:0}.company-office{height:400px}}

/* Sales-focused information architecture */
.proof-strip{display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border-bottom:1px solid var(--line)}
.proof-strip span{padding:1.35rem 1rem;text-align:center;border-right:1px solid var(--line);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em}
.card-copy ul{list-style:none;padding:0;margin:0 0 1.6rem;border-top:1px solid rgba(255,255,255,.35)}
.card-copy li{padding:.58rem 0;border-bottom:1px solid rgba(255,255,255,.22);font-size:.76rem;color:#e3f0f3}
.method{background:var(--deep);color:#fff;display:grid;grid-template-columns:.85fr 1.2fr;gap:8vw}
.method-intro{position:sticky;top:4rem;align-self:start}
.method-intro>p:last-child{max-width:470px;color:#a9bbc1;line-height:1.8}
.method-steps{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.18)}
.method-steps li{display:grid;grid-template-columns:54px 1fr;gap:1rem;padding:1.8rem 0;border-bottom:1px solid rgba(255,255,255,.18)}
.method-steps span{color:#6ac4de;font-size:.7rem}
.method-steps h3{margin:0 0 .55rem;font-size:1.35rem}
.method-steps p{margin:0;color:#9fb1b7;line-height:1.65;font-size:.85rem;max-width:620px}
.contact-copy>p:last-child{margin:1rem 0 0;color:#d9f2f9}
.contact-actions{display:flex;min-width:330px;flex-direction:column;align-items:flex-start;gap:1rem}
.contact-link{border-bottom:1px solid rgba(255,255,255,.65);padding-bottom:.25rem;font-size:.82rem}
.contact-actions>span{font-size:.8rem;color:#d8f0f6}
@media(max-width:900px){.proof-strip{grid-template-columns:1fr 1fr}.proof-strip span:last-child{grid-column:1/-1}.method{grid-template-columns:1fr}.method-intro{position:static}.contact-actions{min-width:0}.company-panel{min-height:520px}}
@media(max-width:560px){.proof-strip{display:none}.card-copy h3{font-size:1.75rem}.method-steps li{grid-template-columns:38px 1fr}}

/* Simple capacity estimator */
.calculator{background:#dff1f5;display:grid;grid-template-columns:.78fr 1.22fr;gap:7vw;align-items:start}
.calculator-copy>p:not(.eyebrow){color:#526970;line-height:1.8;max-width:520px}
.calculator-note{margin-top:2rem;padding:1.4rem 0;border-top:1px solid rgba(17,42,53,.25);display:flex;flex-direction:column;gap:.5rem}
.calculator-note strong{font-size:.82rem}.calculator-note span{font-size:.75rem;color:#5b6f75;line-height:1.6}
.thermal-calculator{background:#fff;padding:2.5rem;box-shadow:0 20px 60px rgba(17,42,53,.08)}
.calc-fields{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.calc-fields label{display:flex;flex-direction:column;gap:.55rem;font-size:.75rem;font-weight:700}
.calc-fields label>span{font-size:.62rem;color:#708086;text-transform:uppercase;letter-spacing:.08em;font-weight:500}
.calc-fields input,.calc-fields select{width:100%;border:1px solid rgba(17,42,53,.22);background:#fafafa;color:var(--ink);padding:.9rem;font:500 .9rem Manrope}
.calc-fields input:focus,.calc-fields select:focus{outline:2px solid #6ac4de;outline-offset:1px}
.calc-result{margin-top:2rem;background:var(--deep);color:#fff;padding:2rem;display:grid;grid-template-columns:1fr auto;gap:.4rem 1rem;align-items:end}
.calc-result p{grid-column:1/-1;margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.12em;font-size:.65rem;color:#77cce3}
.calc-result strong{font:500 clamp(1.7rem,3vw,2.8rem) "Space Grotesk";letter-spacing:-.04em}
.calc-result>span{font-size:.85rem;color:#bdd0d5;padding-bottom:.35rem}.calc-result small{grid-column:1/-1;color:#98adb3;margin:.4rem 0 1rem}
.calc-button{grid-column:1/-1;background:#168bb0;color:#fff;width:max-content}
.brand-logo{width:145px;height:60px;object-fit:contain;object-position:left center}
.site-header .brand-logo,.footer-brand .brand-logo{filter:brightness(0) invert(1)}
.brand-logo-slogan{width:158px;height:76px}
.site-header .brand-logo-slogan,.footer-brand .brand-logo-slogan{filter:none}
.footer-brand{display:block}
@media(max-width:900px){.calculator{grid-template-columns:1fr}.thermal-calculator{padding:2rem}}
@media(max-width:560px){.calc-fields{grid-template-columns:1fr}.thermal-calculator{padding:1.4rem}.calc-result{grid-template-columns:1fr}.calc-result>span{padding:0}.calc-button{width:100%}.brand-logo{width:118px;height:52px}.brand-logo-slogan{width:126px;height:62px}}

/* Applications, critical infrastructure and client proof */
.brand-applications{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:1.2rem;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.brand-applications article{min-height:235px;padding:2rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column}
.brand-applications article>span{color:var(--blue);font-size:.68rem}
.brand-applications article>p{text-transform:uppercase;letter-spacing:.12em;font-size:.67rem;font-weight:700;margin:2.2rem 0 .7rem}
.brand-applications h3{font-size:1.35rem;line-height:1.2;margin:0 0 .8rem}
.application-logos{display:flex;align-items:center;align-content:flex-start;gap:.7rem;flex-wrap:wrap;margin:.2rem 0 1.4rem;min-height:72px}
.application-logos b{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:.52rem .78rem;background:#fff;border:1px solid #dbe1e3;font-size:1.12rem;font-style:normal;line-height:1;letter-spacing:0}
.logo-midea{color:#1477bd;font:700 1.02rem Arial;border-radius:18px!important}
.logo-surrey{color:#0878bd;font:800 .82rem Arial;font-style:italic!important;letter-spacing:.04em!important}
.logo-york{color:#34373a;font:800 .9rem Arial}.logo-york:before{content:"✣";color:#2583bd;margin-right:.25rem}
.logo-hitachi{color:#e31937;font:800 .88rem Arial;letter-spacing:.04em!important}
.logo-samsung{color:#1428a0;font:800 .82rem Arial;letter-spacing:.04em!important}
.logo-westric{color:#23669b;font:800 .8rem Arial;font-style:italic!important;letter-spacing:.04em!important}
.brand-applications small{color:#64757b;line-height:1.65;margin-top:auto}
.precision{background:#071b23;color:#fff;display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw}
.precision-intro{align-self:start;position:sticky;top:4rem}
.precision-intro h2{font-size:clamp(2.6rem,4.8vw,5.2rem)}
.precision-intro>p:not(.eyebrow){color:#a9bbc1;line-height:1.8;max-width:560px;margin-bottom:2rem}
.precision-panel{border:1px solid rgba(255,255,255,.18)}
.precision-brand{padding:3rem;background:linear-gradient(135deg,#123845,#0c2832)}
.precision-brand>span{text-transform:uppercase;letter-spacing:.14em;font-size:.64rem;color:#72cee6}
.precision-brand strong{display:block;font:600 clamp(2.5rem,5vw,5rem) "Space Grotesk";letter-spacing:.08em;margin:1rem 0}
.precision-brand p{max-width:560px;margin:0;color:#b9c9ce;line-height:1.7;font-size:.86rem}
.precision-features{display:grid;grid-template-columns:1fr 1fr}
.precision-features article{padding:2rem;border-top:1px solid rgba(255,255,255,.16);border-right:1px solid rgba(255,255,255,.16);min-height:225px}
.precision-features span{font-size:.65rem;color:#6ac4de}
.precision-features h3{font-size:1.28rem;margin:2rem 0 .7rem}
.precision-features p{font-size:.8rem;line-height:1.7;color:#9fb1b7;margin:0}
.clients{background:#fff}
.clients-heading{display:grid;grid-template-columns:1.15fr .85fr;column-gap:7vw;margin-bottom:4rem}
.clients-heading .eyebrow{grid-column:1/-1}
.clients-heading h2{margin:0;font-size:clamp(2.7rem,5vw,5.4rem)}
.clients-heading>p:last-child{align-self:end;color:#627177;line-height:1.75;max-width:520px}
.client-logos{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);background:#fafafa}
.client-logos>div{height:165px;padding:1.6rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:center;align-items:center;text-align:center;overflow:hidden}
.client-logos img{height:72px;max-width:190px;width:100%;object-fit:contain;filter:grayscale(1);transition:.25s}
.client-logos>div:hover img{filter:none}
.client-logos .client-logo-dark{background:#18323d}
.client-logos .client-logo-dark img{filter:none}
.client-logos .client-logo-vialidad{background:#18323d}
.client-logos .client-logo-vialidad img{filter:none}
.client-name-only{flex-direction:column;gap:.2rem;color:#163743}
.client-name-only strong{font:800 2rem "Space Grotesk";letter-spacing:.08em}
.client-name-only span{font-size:.65rem;letter-spacing:.22em;font-weight:700}
@media(max-width:1050px){.brand-applications,.client-logos{grid-template-columns:1fr 1fr}.precision{grid-template-columns:1fr}.precision-intro{position:static}}
@media(max-width:700px){.brand-applications,.precision-features{grid-template-columns:1fr}.client-logos{grid-template-columns:1fr 1fr}.client-logos>div{height:135px;padding:1.1rem}.client-logos img{height:58px;max-width:145px}.clients-heading{display:block}.precision-brand{padding:2rem}.precision-features article{min-height:190px}}
