/* IR Ltda. · Web V3 · Diseño editorial industrial. Sin frameworks ni dependencias JS. */
:root{--coal:#151719;--coal2:#222628;--orange:#FD4B08;--orange-hover:#FF6A36;--paper:#F2F0EA;--white:#fff;--ink:#202426;--muted:#6a6e70;--stroke:#d3d2cb;--serifless:'Barlow Condensed','Impact',sans-serif;--body:'IBM Plex Sans','Helvetica Neue',sans-serif;--mono:'IBM Plex Mono',monospace;--max:1320px;--pad:clamp(22px,5vw,82px);--ease:cubic-bezier(.22,.7,.2,1)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.65 var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}ul{padding-left:1.3rem}p{margin:0 0 1em}h1,h2,h3,h4{font-family:var(--serifless);line-height:.95;text-transform:uppercase;font-weight:800;letter-spacing:-.013em;margin:0}h1{font-size:clamp(76px,10.2vw,170px)}h2{font-size:clamp(54px,7vw,105px)}h3{font-size:clamp(42px,5vw,78px)}h4{font-size:clamp(28px,3vw,40px)}::selection{background:var(--orange);color:var(--coal)}:focus-visible{outline:3px solid var(--orange);outline-offset:4px}img{font-size:13px}.container{width:min(calc(100% - 2*var(--pad)),var(--max));margin-inline:auto}.eyebrow{display:block;font:600 11px/1.45 var(--mono);letter-spacing:.1em;text-transform:uppercase}.orange-text{color:var(--orange)}.muted{color:var(--muted)}.small{font-size:14px}.muted-inverse{color:#bcc0bf}.skip{position:fixed;z-index:100;top:-90px;left:1rem;background:var(--orange);color:var(--coal);padding:12px 16px}.skip:focus{top:10px}
/* Header */
.site-header{position:relative;z-index:50;background:var(--coal);color:#fff;border-bottom:1px solid #363a3c}.header-signal{background:#0f1011;color:#adafac;border-bottom:1px solid #2a2d2e}.signal-inner{display:flex;align-items:center;justify-content:space-between;min-height:33px;gap:15px;font:500 10px/1.4 var(--mono);letter-spacing:.06em}.signal-inner b{color:var(--orange)}.nav-inner{height:88px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:14px;margin-right:auto;min-width:170px}.brand img{width:137px;height:auto;object-fit:contain}.brand-sub{display:none;font:500 10px/1.4 var(--mono);text-transform:uppercase;color:#b2b6b6;letter-spacing:.05em}.nav-list{display:flex;gap:clamp(12px,1.6vw,28px);align-items:center}.nav-list a{font-size:13px;font-weight:600;position:relative;transition:color .2s}.nav-list a:hover,.nav-list a[aria-current="page"]{color:var(--orange)}.nav-list a[aria-current="page"]:after{content:"";position:absolute;left:0;right:0;bottom:-12px;height:2px;background:var(--orange)}.nav-actions{display:flex;align-items:center;gap:14px}.menu-toggle{display:none;border:1px solid #5c6060;border-radius:0;background:transparent;color:#fff;min-width:45px;min-height:45px;font-size:22px}.mobile-nav{display:none}
/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:54px;padding:0 23px;border:1px solid currentColor;border-radius:0;font:700 12px/1.1 var(--body);letter-spacing:.015em;transition:background .2s,color .2s,transform .2s,border-color .2s;text-align:center}.btn:hover{transform:translateY(-2px)}.btn-orange{background:var(--orange);color:var(--coal);border-color:var(--orange)}.btn-orange:hover{background:var(--orange-hover);border-color:var(--orange-hover)}.btn-ghost{background:transparent;color:#fff;border-color:#707475}.btn-ghost:hover{background:#fff;color:var(--coal)}.btn-line{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-line:hover{background:var(--coal);color:#fff}.btn-arrow{font-size:19px;line-height:1}.textlink{font:700 13px/1.5 var(--body);display:inline-flex;align-items:center;gap:18px;padding-bottom:7px;border-bottom:2px solid currentColor;transition:gap .2s}.textlink:hover{gap:28px}.textlink:after{content:"↗";font-size:18px}.click-note{font-size:13px;color:var(--muted)}
/* Main hero */
.hero{background:var(--coal);color:#fff;overflow:hidden}.hero-grid{min-height:690px;display:grid;grid-template-columns:minmax(0,1.09fr) minmax(0,.91fr)}.hero-copy{padding:clamp(60px,6vw,100px) clamp(26px,4.7vw,78px) 46px max(var(--pad),calc((100vw - var(--max))/2));display:flex;flex-direction:column;justify-content:center;position:relative}.hero-copy:before{content:"";position:absolute;top:60px;bottom:60px;left:0;width:6px;background:var(--orange)}.hero-copy .eyebrow{margin-bottom:23px}.hero h1{font-size:clamp(76px,8.9vw,142px);max-width:890px;letter-spacing:-.026em}.hero h1 em{font-style:normal;color:var(--orange)}.hero-copy p{max-width:530px;color:#d4d6d5;font-size:clamp(16px,1.4vw,19px);margin-top:27px;line-height:1.6}.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:15px}.hero-bottom{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #424647;margin-top:56px;padding-top:20px;color:#aaadac}.hero-visual{position:relative;isolation:isolate;min-height:660px;background:#2d3030}.hero-visual img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 50%}.hero-visual:after{content:"";inset:0;position:absolute;background:linear-gradient(90deg,rgba(0,0,0,.14),transparent 30%),linear-gradient(0deg,rgba(0,0,0,.38),transparent 42%);z-index:1;pointer-events:none}.photo-label{position:absolute;z-index:2;left:24px;bottom:22px;padding:12px 16px;background:rgba(10,10,10,.79);font:500 10px var(--mono);letter-spacing:.05em;text-transform:uppercase}.hero-angle{position:absolute;right:14px;top:14px;z-index:2;font:700 13px var(--mono);color:#fff;border:1px solid rgba(255,255,255,.45);padding:8px 10px}.proof-bar{background:var(--orange);color:#191919}.proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}.proof-item{padding:20px 20px 19px 0;border-right:1px solid rgba(15,15,15,.25);margin-right:28px}.proof-item:last-child{border-right:0;margin-right:0}.proof-item b{display:block;font:800 clamp(29px,3.4vw,52px)/1 var(--serifless);text-transform:uppercase}.proof-item span{display:block;font-size:12px;font-weight:600;line-height:1.4;margin-top:3px}
/* Sections and editorial blocks */
.section{padding:clamp(74px,9vw,140px) 0}.section-title-row{display:grid;grid-template-columns:1.45fr .55fr;gap:45px;align-items:end;margin-bottom:44px}.section-title-row p{font-size:15px;color:#515456;margin-bottom:8px}.section-title-row h2{margin-top:18px}.border-top{border-top:1px solid var(--stroke)}.intro-section{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,8vw,125px);align-items:start}.intro-section h2{font-size:clamp(52px,7vw,104px);margin:20px 0 0}.intro-section .body-large{font-size:clamp(18px,1.9vw,25px);font-weight:500;line-height:1.45}.intro-section .body-small{max-width:570px;color:#575b5c}.feature-image{width:100%;height:100%;object-fit:cover}.service-layout{display:grid;grid-template-columns:1.15fr .85fr;min-height:530px;margin-top:24px;overflow:hidden}.service-layout.flip{grid-template-columns:.85fr 1.15fr}.service-layout.flip .service-art{order:2}.service-layout.flip .service-info{order:1}.service-art{position:relative;min-height:490px;background:#333b3e;overflow:hidden}.service-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.service-layout:hover .service-art img{transform:scale(1.04)}.service-art-label{position:absolute;bottom:16px;left:17px;background:#111e;color:#fff;padding:8px 12px;font:500 10px var(--mono)}.service-info{background:#24282a;color:white;padding:clamp(30px,5vw,74px);display:flex;flex-direction:column;justify-content:space-between;align-items:start}.service-layout.flip .service-info{background:#deded5;color:#1d2324}.service-info h3{margin:22px 0}.service-info p{font-size:16px;line-height:1.6;max-width:410px;color:#d1d4d3}.service-layout.flip .service-info p{color:#494e4e}.service-info .textlink{margin-top:40px}.plant-section{background:var(--coal);color:white;overflow:hidden}.plant-grid{display:grid;grid-template-columns:.98fr 1.02fr}.plant-photo{min-height:570px;position:relative}.plant-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.plant-content{padding:clamp(50px,7vw,115px);display:flex;flex-direction:column;justify-content:center}.plant-content h2{font-size:clamp(56px,6.3vw,95px);margin:17px 0 22px}.plant-content p{color:#cdd0ce;max-width:500px}.plant-list{border-top:1px solid #484d4d;margin-top:30px;padding-top:12px;display:grid;gap:0}.plant-list span{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #484d4d;padding:15px 0;font-weight:600;font-size:14px}.plant-list span:after{content:'↗';color:var(--orange)}
/* Work process */
.process-section{background:#e6e5df}.process-intro{display:grid;grid-template-columns:1fr .6fr;gap:45px;align-items:end}.process-intro h2{margin-top:16px}.process-intro p{max-width:380px;color:#525757}.process-selector{display:grid;grid-template-columns:repeat(4,1fr);margin-top:45px;border-top:1px solid #bcbfbd;border-bottom:1px solid #bcbfbd}.stage-btn{border:0;border-right:1px solid #bbbebe;background:transparent;padding:28px 18px 30px;text-align:left;color:#343637}.stage-btn:last-child{border-right:0}.stage-btn .number{display:block;font:500 12px var(--mono);margin-bottom:14px;color:#747978}.stage-btn strong{font:800 clamp(24px,3vw,42px)/1 var(--serifless);text-transform:uppercase}.stage-btn.is-active{background:var(--coal);color:#fff}.stage-btn.is-active .number{color:var(--orange)}.stage-panel{margin-top:23px;min-height:154px;display:grid;grid-template-columns:1fr 2fr;gap:40px;padding:30px 0}.stage-panel h3{font-size:clamp(34px,4vw,58px)}.stage-panel p{font-size:18px;max-width:680px;color:#484b4c}
/* Portfolio */
.portfolio-mosaic{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-template-rows:260px 260px;gap:13px}.portfolio-tile{position:relative;overflow:hidden;display:block;background:#303332;color:#fff;min-height:250px}.portfolio-tile:first-child{grid-row:span 2}.portfolio-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.portfolio-tile:hover img{transform:scale(1.05)}.portfolio-tile:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.82),transparent 55%)}.portfolio-label{position:absolute;z-index:2;bottom:17px;left:19px;right:17px}.portfolio-label h3{font-size:clamp(28px,3vw,44px);margin-top:7px}.portfolio-label .eyebrow{color:#e4e3df}.portfolio-note{margin-top:18px;color:#777b7c;font-size:13px}.standards-section{background:#e4e3dd}.standards-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,8vw,120px)}.standards-grid h2{margin-top:18px}.standards-grid p{max-width:470px;color:#535858;margin-top:26px}.spec-row{display:grid;grid-template-columns:.65fr 1.35fr;gap:20px;padding:21px 0;border-top:1px solid #bcbfbd}.spec-row:last-child{border-bottom:1px solid #bcbfbd}.spec-row b{font:600 11px/1.45 var(--mono);letter-spacing:.035em}.spec-row span{font-size:14px;color:#44494a}.sector-strip{border-block:1px solid #c8c8c3;padding:28px 0}.sector-flex{display:flex;gap:12px;flex-wrap:wrap}.sector-flex span{border:1px solid #a3a9a6;padding:9px 15px;text-transform:uppercase;font:600 11px var(--mono)}
/* Footer */
.main-cta{background:var(--orange);color:#151718;padding:clamp(65px,9vw,135px) 0}.cta-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:70px;align-items:end}.cta-grid h2{font-size:clamp(61px,7.8vw,118px);margin-top:15px}.cta-grid p{font-weight:500;max-width:370px}.main-cta .btn{border-color:var(--coal);background:var(--coal);color:#fff;width:100%;margin-top:17px}.main-cta .btn:hover{background:#323638}.site-footer{background:#151719;color:#fff;padding:65px 0 26px}.footer-grid{display:grid;grid-template-columns:1.3fr .75fr 1fr;gap:75px}.footer-brand img{width:155px}.footer-brand p{margin-top:19px;max-width:300px;color:#9ba1a0;font-size:13px}.footer-group{display:flex;flex-direction:column;gap:9px;font-size:14px}.footer-group .eyebrow{color:var(--orange);margin-bottom:14px}.footer-group a:hover{color:var(--orange)}.footer-last{border-top:1px solid #333739;margin-top:59px;padding-top:23px;display:flex;justify-content:space-between;gap:20px;color:#a0a5a3;font-size:11px;font-family:var(--mono)}.mobile-quote{display:none}
/* Service page headers */
.page-hero{background:var(--coal);color:#fff}.page-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;min-height:560px}.page-head-copy{padding:clamp(65px,7vw,120px) clamp(30px,5vw,80px) 68px max(var(--pad),calc((100vw - var(--max))/2));display:flex;flex-direction:column;justify-content:center}.breadcrumb{display:flex;flex-wrap:wrap;gap:10px;font:500 11px var(--mono);color:#aab0ac}.breadcrumb a:hover{color:var(--orange)}.page-head-copy h1{font-size:clamp(76px,8.5vw,140px);margin-top:30px}.page-head-copy p{color:#c8cac9;max-width:550px;font-size:17px;line-height:1.65;margin-top:22px}.page-head-copy .btn{align-self:flex-start;margin-top:20px}.page-head-photo{position:relative;min-height:540px;overflow:hidden}.page-head-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.page-head-photo .photo-label{bottom:22px}.content-two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,9vw,135px);align-items:start}.content-two h2{margin:18px 0}.content-two p{font-size:17px;line-height:1.75;color:#4d5152}.note-panel{border-left:5px solid var(--orange);background:#e4e3dc;padding:22px 24px;font-size:15px;margin-top:22px}.technical-layers{background:#17191a;color:#fff;padding:clamp(75px,8vw,120px) 0}.layers-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.layers-grid h2{margin:20px 0}.layers-grid p{max-width:480px;color:#c2c7c3}.layers-diagram{padding:32px;background:#25292b;border:1px solid #414749}.layer{min-height:65px;display:flex;align-items:center;padding:14px 19px;font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:.03em;border-bottom:4px solid #1d2021}.layer-finish{background:#e4aa54;color:#151719}.layer-mid{background:#e0d4b3;color:#151719}.layer-primer{background:#a3b5b1;color:#151719}.layer-steel{background:#666f73;color:#fff}.diagram-note{font:400 11px/1.5 var(--mono);color:#b7c0bd;margin-top:22px}.simple-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid #b8b9b4}.simple-item{padding:30px 30px 25px 0;border-right:1px solid #b8b9b4;margin-right:30px}.simple-item:last-child{border-right:none}.simple-item b{color:#737a77;font:500 13px var(--mono)}.simple-item h3{font-size:36px;margin:18px 0 15px}.simple-item p{font-size:14px;color:#585d5e}.photo-story{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}.photo-story figure{margin:0;position:relative}.photo-story img{width:100%;height:480px;object-fit:cover}.photo-story figcaption{background:#202425;color:#fff;padding:14px 17px;font-size:12px;font-family:var(--mono)}.photo-story figure:nth-child(2) img{object-position:center 44%}.faq{max-width:820px;margin:45px auto 0}.faq details{border-top:1px solid #babdb9;padding:21px 0}.faq details:last-child{border-bottom:1px solid #babdb9}.faq summary{font-size:17px;line-height:1.5;font-weight:700;cursor:pointer;display:flex;justify-content:space-between;gap:20px;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-size:24px;color:#D83F05}.faq details[open] summary:after{content:'−'}.faq details p{color:#515657;max-width:760px;margin:12px 0 4px;font-size:15px}
/* projects */
.projects-intro{max-width:800px}.projects-intro p{font-size:19px;color:#5b6061;margin-top:25px}.filter-bar{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:42px 0 26px}.filter-button{background:transparent;color:#33393a;border:1px solid #9c9f9e;font-size:12px;font-weight:600;padding:12px 20px;min-height:46px}.filter-button[aria-pressed="true"]{background:var(--coal);border-color:var(--coal);color:var(--orange)}.project-cards{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.project-card{grid-column:span 4;background:#fff;min-width:0}.project-card.feature{grid-column:span 8}.project-card img{width:100%;height:330px;object-fit:cover}.project-card.feature img{height:430px}.project-card-content{padding:22px 21px 25px}.project-card-content .eyebrow{color:#6b7371}.project-card-content h3{font-size:36px;margin-top:13px}.project-card-content p{font-size:14px;line-height:1.55;color:#616666;margin:10px 0 0}.project-card[hidden]{display:none}.projects-disclaimer{font-size:13px;color:#61696a;padding-top:22px}
/* contact */
.contact-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(35px,8vw,130px);align-items:start}.contact-aside h2{font-size:clamp(65px,7vw,103px);margin:20px 0 34px}.contact-detail{border-top:1px solid #bdc0bd;padding:24px 0}.contact-detail strong{display:block;font:600 11px var(--mono);text-transform:uppercase;margin-bottom:9px;color:#626969}.contact-detail a{font-weight:700;font-size:19px}.contact-detail address{font-style:normal;font-size:16px}.form-shell{background:#fff;padding:clamp(25px,4.2vw,57px);border-top:7px solid var(--orange)}.form-shell h3{font-size:clamp(48px,5vw,72px);margin:15px 0 29px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);column-gap:17px;row-gap:19px}.form-field{display:flex;flex-direction:column;gap:7px}.form-field.full{grid-column:1/-1}.form-field label{font-size:12px;font-weight:700}.form-field input,.form-field textarea,.form-field select{border:1px solid #aeb3b1;border-radius:0;outline:0;min-height:51px;background:#fff;color:#1b1d1e;padding:11px 13px;width:100%;font-size:15px}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border:2px solid #D83F05}.form-field textarea{min-height:134px;resize:vertical}.form-note{font-size:12px;line-height:1.55;color:#626969;margin:20px 0}.form-shell .btn{width:100%}.form-status{margin-top:15px;font-size:13px;min-height:24px;color:#3c513c}
/* responsive */
@media(max-width:1100px){.nav-list{gap:15px}.brand img{width:122px}.nav-inner{gap:18px}.nav-actions .btn{padding:0 14px}.hero-grid{grid-template-columns:1fr 1fr}.hero h1{font-size:clamp(72px,8vw,110px)}.hero-copy{padding-right:30px}.plant-content{padding:52px}.portfolio-mosaic{grid-template-rows:225px 225px}.portfolio-tile{min-height:200px}}
@media(max-width:860px){.header-signal{display:none}.nav-inner{height:72px}.nav-list,.nav-actions>.btn{display:none}.menu-toggle{display:block}.mobile-nav{background:#242729;border-top:1px solid #424647}.mobile-nav.is-open{display:grid;padding:12px var(--pad) 22px}.mobile-nav a{padding:14px 0;border-bottom:1px solid #434849;font-weight:700;font-size:15px}.mobile-nav a:last-child{color:var(--orange)}.hero-grid{grid-template-columns:1fr}.hero-copy{min-height:540px;padding:70px var(--pad) 50px}.hero-copy:before{top:40px;bottom:40px}.hero h1{font-size:clamp(78px,14vw,130px);max-width:720px}.hero-visual{min-height:440px;height:60vw;max-height:650px}.hero-visual img{object-position:center 34%}.hero-bottom{margin-top:40px}.proof-grid{grid-template-columns:repeat(2,1fr)}.proof-item{border-right:none;margin:0;padding:18px 10px 18px 0}.proof-item:nth-child(odd){border-right:1px solid #D83F05}.section-title-row,.intro-section,.plant-grid,.standards-grid,.process-intro,.cta-grid,.layers-grid,.content-two,.contact-grid{grid-template-columns:1fr;gap:35px}.section-title-row{margin-bottom:33px}.service-layout,.service-layout.flip{grid-template-columns:1fr}.service-layout.flip .service-art,.service-layout.flip .service-info{order:unset}.service-art{min-height:370px}.service-info{min-height:300px}.plant-photo{min-height:430px}.plant-content{padding:55px var(--pad)}.portfolio-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:340px 270px}.portfolio-tile:first-child{grid-column:span 2;grid-row:span 1}.stage-panel{grid-template-columns:1fr;gap:12px}.page-hero-grid{grid-template-columns:1fr}.page-head-copy{padding:65px var(--pad)}.page-head-photo{min-height:450px}.page-head-photo img{object-position:center 45%}.footer-grid{grid-template-columns:1fr 1fr;gap:45px}.footer-brand{grid-column:span 2}.project-card{grid-column:span 6}.project-card.feature{grid-column:span 12}.project-card.feature img{height:390px}}
@media(max-width:600px){body{font-size:15px}.container{width:calc(100% - 40px)}.site-header .container{width:calc(100% - 36px)}.brand img{width:115px}.hero-copy{min-height:auto;padding:57px 20px 40px}.hero-copy:before{width:4px;top:46px;bottom:25px}.hero h1{font-size:clamp(67px,17vw,108px);line-height:.87}.hero-copy p{margin-top:25px;font-size:16px}.hero-cta{flex-direction:column;align-items:stretch}.hero-cta .btn{width:100%}.hero-bottom{font-size:10px;margin-top:30px}.hero-visual{min-height:390px;height:480px}.hero-visual img{object-position:center 41%}.hero-angle{font-size:10px}.proof-item b{font-size:35px}.proof-item span{font-size:11px}.section{padding:70px 0}.section-title-row{gap:16px}.section h2,.intro-section h2,.standards-grid h2{font-size:clamp(51px,14vw,78px)}.section-title-row p{max-width:480px}.service-art{min-height:310px}.service-info{padding:31px 24px;min-height:295px}.service-info h3{font-size:62px}.service-info p{font-size:14px}.plant-photo{min-height:290px}.plant-content{padding:52px 20px}.plant-content h2{font-size:67px}.process-selector{grid-template-columns:repeat(2,1fr)}.stage-btn{padding:18px 14px;border-bottom:1px solid #b9bcba}.stage-btn:nth-child(2){border-right:0}.stage-btn:nth-child(n+3){border-bottom:0}.stage-btn strong{font-size:28px}.stage-panel{min-height:130px}.stage-panel p{font-size:15px}.portfolio-mosaic{grid-template-columns:1fr;grid-template-rows:none}.portfolio-tile,.portfolio-tile:first-child{grid-column:auto;grid-row:auto;min-height:330px}.portfolio-tile:first-child{min-height:420px}.standards-grid{gap:25px}.spec-row{grid-template-columns:1fr;gap:6px;padding:18px 0}.main-cta{padding:68px 0}.cta-grid h2{font-size:clamp(62px,16vw,90px)}.footer-grid{grid-template-columns:1fr;gap:35px}.footer-brand{grid-column:auto}.footer-last{flex-direction:column;gap:8px;margin-bottom:50px}.mobile-quote{display:block;position:fixed;z-index:44;bottom:0;left:0;right:0;background:var(--orange);color:var(--coal);text-align:center;padding:13px 14px;font-size:13px;font-weight:800;min-height:49px;box-shadow:0 -4px 18px #0003}.page-head-copy{padding:56px 20px}.page-head-copy h1{font-size:clamp(72px,16vw,120px);line-height:.9}.page-head-copy p{font-size:15px}.page-head-photo{min-height:340px}.simple-grid{grid-template-columns:1fr}.simple-item{border-right:0;border-bottom:1px solid #b6b8b5;margin-right:0;padding:20px 0}.simple-item h3{font-size:36px}.photo-story{grid-template-columns:1fr}.photo-story img{height:360px}.layers-diagram{padding:16px}.layer{min-height:58px;font-size:11px}.project-cards{grid-template-columns:1fr;gap:16px}.project-card,.project-card.feature{grid-column:span 1}.project-card img,.project-card.feature img{height:315px}.project-card-content h3{font-size:38px}.filter-bar{gap:7px}.filter-button{font-size:11px;padding:9px 12px}.form-shell{padding:24px 20px}.form-grid{grid-template-columns:1fr}.form-field.full{grid-column:auto}.contact-aside h2{font-size:76px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Ajuste tipográfico para indicadores de varios términos */
.proof-item-long b{font-size:clamp(21px,2.5vw,37px);line-height:1.05;letter-spacing:-.015em}
@media(max-width:600px){.proof-item-long b{font-size:clamp(17px,4.3vw,24px)}}

/* Identificador naranja bajo el logotipo */
.brand{position:relative;padding-bottom:16px}.brand::after{content:"";position:absolute;left:0;bottom:0;width:137px;height:2px;background:var(--orange)}@media(max-width:1100px){.brand::after{width:122px}}@media(max-width:600px){.brand::after{width:115px}}

/* Ajustes de presentación: encabezados legibles y galería responsive */
.projects-heading{padding:clamp(64px,7vw,105px) 0 42px!important}
.projects-intro{max-width:1100px}
.projects-intro h1{font-size:clamp(58px,8.2vw,112px);line-height:.94;letter-spacing:-.02em;margin:20px 0 0;overflow-wrap:normal}
.projects-intro p{max-width:720px;font-size:clamp(16px,1.55vw,19px);line-height:1.65;margin-top:25px;color:#454b4c}
.projects-heading+.section{padding-top:18px!important}
.projects-disclaimer{max-width:780px;line-height:1.65}
@media(max-width:860px){.projects-intro h1{font-size:clamp(58px,10.5vw,88px)}}
@media(max-width:600px){.projects-heading{padding:55px 0 25px!important}.projects-intro h1{font-size:clamp(53px,13.2vw,76px);line-height:.96}.projects-intro p{font-size:16px}.projects-heading+.section{padding-top:8px!important}.project-card-content{padding:19px}.project-card-content h3{font-size:clamp(29px,9vw,38px)}.filter-bar{margin-top:20px}}
@media(max-width:360px){.projects-intro h1{font-size:12.4vw}}


/* Ajustes editoriales y responsive · IR V5 */
.ir-balanced-intro{grid-template-columns:minmax(0, .95fr) minmax(0,1.05fr);align-items:center;gap:clamp(36px,6vw,90px)}
.ir-balanced-intro h2{font-size:clamp(58px,6.3vw,91px);line-height:.94;max-width:590px}
.ir-balanced-intro>div:last-child{max-width:570px}
.ir-balanced-services{grid-template-columns:minmax(0,1fr) minmax(0,.82fr);align-items:center;gap:clamp(30px,5vw,85px)}
.ir-balanced-services h2{font-size:clamp(55px,6.2vw,88px);line-height:.95}
.ir-balanced-services p{max-width:480px;font-size:clamp(16px,1.35vw,19px);line-height:1.65;margin:0}
.ir-location-strip{background:#e8e6de;border-bottom:1px solid #ceccc3;padding:24px 0}
.ir-location-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.ir-location-inner .eyebrow{color:#5c6160;margin-bottom:5px}
.ir-location-inner p{margin:0;font-size:15px;line-height:1.6;max-width:890px}
.ir-location-inner .textlink{white-space:nowrap}
.ir-sequence-section .layers-grid{gap:clamp(35px,6vw,90px)}
.ir-sequence-section .layers-grid h2{font-size:clamp(54px,5.7vw,86px)}
.ir-steps{list-style:none;margin:17px 0 15px;padding:0;display:grid;gap:10px;counter-reset:step}
.ir-steps li{display:flex;gap:17px;align-items:center;background:#383e40;padding:14px 18px;border-left:4px solid var(--orange);position:relative}
.ir-steps li:not(:last-child)::after{content:'↓';position:absolute;left:24px;bottom:-17px;color:var(--orange);z-index:2;font-weight:900}
.ir-step-number{font:700 24px/1 var(--serifless);color:var(--orange);min-width:30px}
.ir-steps strong{display:block;color:white;font-size:15px;line-height:1.35}
.ir-steps small{display:block;color:#c7cbca;font-size:12px;line-height:1.45;margin-top:4px}
.ir-solutions-section h2{font-size:clamp(57px,6.5vw,94px);line-height:.94}
.ir-solutions-lead{font-size:clamp(16px,1.5vw,19px);line-height:1.65;color:#4c5151;max-width:840px;margin:0 0 30px}
.ir-solutions-section .simple-item h3{font-size:clamp(27px,2.5vw,36px);line-height:1.05}
.ir-map-link{margin:20px 0 0;font-size:14px}
.projects-heading{padding:clamp(50px,5vw,78px) 0 8px!important}
.projects-intro h1{font-size:clamp(55px,6.7vw,92px);line-height:.93;margin-top:14px}
.projects-intro p{margin-top:19px;max-width:850px}
.projects-heading+.section{padding-top:0!important}
.projects-heading+.section .filter-bar{margin:24px 0 24px}
.project-cards{align-items:stretch}
.project-card-content h3{font-size:clamp(28px,2.7vw,38px);line-height:1.05;overflow-wrap:break-word}
.project-card-content p{font-size:14px;line-height:1.65}
@media(max-width:860px){.ir-balanced-intro,.ir-balanced-services{grid-template-columns:1fr;align-items:start;gap:24px}.ir-balanced-intro h2,.ir-balanced-services h2{font-size:clamp(54px,10vw,78px)}.ir-balanced-services p{max-width:660px}.ir-location-inner{align-items:start}.ir-sequence-section .layers-grid{grid-template-columns:1fr;gap:25px}}
@media(max-width:600px){.ir-balanced-intro h2,.ir-balanced-services h2{font-size:clamp(50px,13vw,69px)}.ir-location-inner{flex-direction:column;gap:12px}.ir-location-inner .textlink{white-space:normal}.ir-location-strip{padding:22px 0}.ir-sequence-section .layers-grid h2{font-size:clamp(53px,12vw,72px)}.ir-steps li{padding:14px 12px;gap:10px}.ir-solutions-section h2{font-size:clamp(50px,12vw,72px)}.projects-heading{padding:48px 0 0!important}.projects-intro h1{font-size:clamp(51px,12.8vw,72px)}.projects-heading+.section .filter-bar{margin:18px 0 22px}.project-card-content h3{font-size:32px}}

/* IR V6 — Alineación consistente del encabezado de proyectos.
   Mismo margen izquierdo que filtros y galería; encabezados fluidos en móvil. */
.projects-intro{max-width:var(--max)}
.projects-intro h1{max-width:100%;font-size:clamp(56px,7.1vw,96px);line-height:.94;letter-spacing:-.016em;margin-top:16px}
.projects-intro p{max-width:850px;margin-top:23px}
@media(max-width:860px){.projects-intro h1{font-size:clamp(54px,9.6vw,80px)}}
@media(max-width:600px){.projects-intro h1{font-size:clamp(46px,12vw,69px);line-height:.98;letter-spacing:-.015em}.projects-intro p{margin-top:18px}}
@media(max-width:370px){.projects-intro h1{font-size:11.5vw}}

/* IR V7 · espaciado sistemático y señales visuales */
.section{padding:clamp(56px,6vw,92px) 0}
.section-title-row{margin-bottom:26px;gap:clamp(24px,4vw,56px)}
.section-title-row h2{margin-top:11px}
.intro-section{gap:clamp(28px,4.5vw,68px)}
.ir-balanced-intro h2{margin-top:12px}
.ir-balanced-intro>div:last-child .body-large{margin-bottom:20px}
.ir-balanced-intro>div:last-child .body-small{margin-bottom:20px}
.ir-balanced-services{gap:clamp(28px,4vw,65px)}
.ir-balanced-services h2{margin-top:12px}
.service-layout,.service-layout.flip{min-height:0;margin-top:15px}
.service-art{min-height:390px}
.service-info{padding:clamp(28px,3.6vw,54px)}
.service-info .textlink{margin-top:25px}
.plant-photo{min-height:450px}
.plant-content{padding:clamp(38px,5vw,76px)}
.plant-content h2{margin:12px 0 17px}
.process-intro{align-items:center;gap:clamp(28px,4vw,55px)}
.process-selector{margin-top:28px}
.stage-btn{padding:20px 18px 21px}
.stage-btn .number{margin-bottom:8px}
.stage-panel{margin-top:18px;min-height:0;padding:21px 26px;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:30px;align-items:center;background:#f4f2ec;border-left:5px solid var(--orange);box-shadow:inset 0 0 0 1px #d5d3cb}
.stage-panel-heading{display:flex;flex-direction:column;gap:9px}
.stage-index{color:#c63d0a;font:700 11px/1.4 var(--mono);letter-spacing:.085em}
.stage-panel h3{font-size:clamp(35px,3.5vw,52px);line-height:1.02}
.stage-panel-kicker{display:block;font:700 12px/1.4 var(--mono);text-transform:uppercase;color:#575e5c;letter-spacing:.035em;margin-bottom:7px}
.stage-panel p{font-size:16px;line-height:1.58;margin:0;max-width:650px}
.standards-grid{gap:clamp(28px,5vw,72px)}
.standards-grid h2{margin-bottom:20px}
.page-hero-grid{min-height:480px}
.page-head-copy{padding-top:clamp(46px,5vw,78px);padding-bottom:clamp(42px,4vw,65px)}
.page-head-copy h1{margin-top:18px}
.page-head-copy p{margin-top:16px}
.page-head-photo{min-height:475px}
.content-two{gap:clamp(28px,5vw,76px)}
.technical-layers{padding:clamp(56px,6vw,88px) 0}
.layers-grid{gap:clamp(28px,4vw,65px)}
.simple-item{padding-top:25px;padding-bottom:16px}
.projects-heading{padding-top:clamp(40px,4vw,62px)!important}
.projects-intro p{margin-top:16px}
.projects-heading+.section .filter-bar{margin:20px 0 21px}
.contact-grid{gap:clamp(28px,5vw,80px)}
.contact-aside h2{margin-bottom:24px}
.contact-detail{padding:17px 0}
.main-cta{padding:clamp(52px,6vw,88px) 0}
.cta-grid{gap:clamp(28px,5vw,75px)}
.cta-grid h2{margin-top:12px}
.site-footer{padding-top:48px}
.footer-grid{gap:clamp(28px,4vw,55px)}
.footer-last{margin-top:34px}
.ir-icon{width:19px;height:19px;flex:0 0 19px;vertical-align:middle;color:var(--orange)}
.ir-icon-link{display:flex;align-items:flex-start;gap:9px;line-height:1.5}
.ir-icon-link .ir-icon{margin-top:2px}
.ir-location-copy{display:flex;gap:15px;align-items:center}
.ir-location-copy>.ir-icon{width:28px;height:28px;flex-basis:28px;color:var(--orange)}
.ir-detail-label{display:flex!important;gap:9px;align-items:center}
.ir-detail-label .ir-icon{width:17px;height:17px;flex-basis:17px}
.ir-location-strip{padding:19px 0}
@media(max-width:860px){
 .section{padding:60px 0}
 .section-title-row,.intro-section,.ir-balanced-services,.process-intro,.cta-grid,.layers-grid,.contact-grid{gap:23px}
 .service-info{min-height:0}
 .service-art{min-height:330px}
 .plant-photo{min-height:340px}
 .stage-panel{gap:10px;grid-template-columns:1fr;padding:21px}
 .page-hero-grid{min-height:0}
 .page-head-photo{min-height:350px}
 .ir-location-copy{align-items:flex-start}
 .ir-location-copy>.ir-icon{margin-top:7px}
}
@media(max-width:600px){
 .section{padding:49px 0}
 .section-title-row{margin-bottom:19px}
 .service-art{min-height:270px}
 .service-info{padding:25px 21px}
 .service-info h3{margin:15px 0}
 .plant-content{padding:38px 20px}
 .plant-photo{min-height:275px}
 .process-selector{margin-top:21px}
 .stage-btn{padding:17px 12px}
 .stage-panel{padding:18px;margin-top:14px}
 .stage-panel h3{font-size:38px}
 .stage-panel p{font-size:15px}
 .page-head-copy{padding:45px 20px}
 .page-head-photo{min-height:290px}
 .main-cta{padding:49px 0}
 .site-footer{padding-top:38px}
 .contact-detail{padding:15px 0}
 .ir-location-strip{padding:17px 0}
 .ir-location-copy{gap:11px}
 .ir-location-copy>.ir-icon{width:23px;height:23px;flex-basis:23px}
}

/* V8: compactar el indicador de trayectoria sin alterar las otras cifras */
.proof-item:first-child b{font-size:clamp(27px,2.55vw,40px);white-space:nowrap}
@media(max-width:600px){.proof-item:first-child b{font-size:clamp(22px,5.2vw,31px)}}


/* V10 · Contact Form 7 integrado al diseño original de cotizaciones. */
.ir-cf7-form .ir-cotizacion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:17px;row-gap:17px;align-items:start}
.ir-cf7-form .ir-cotizacion-grid > p{margin:0}
.ir-cf7-form .ir-cotizacion-grid label{display:block;font-size:12px;line-height:1.6;font-weight:700}
.ir-cf7-form .ir-cotizacion-grid .wpcf7-form-control-wrap{display:block;margin-top:7px}
.ir-cf7-form .ir-cotizacion-grid input:not([type="checkbox"]),
.ir-cf7-form .ir-cotizacion-grid select,
.ir-cf7-form .ir-cotizacion-grid textarea{
  display:block;width:100%;max-width:100%;border:1px solid #aeb3b1;background:#fff;color:#1b1d1e;
  border-radius:0;padding:11px 13px;font:400 15px/1.5 var(--body);min-height:51px;
}
.ir-cf7-form .ir-cotizacion-grid textarea{min-height:134px;resize:vertical}
.ir-cf7-form .ir-cotizacion-grid input[type="file"]{height:auto;font-size:13px;max-width:100%}
.ir-cf7-form .ir-cotizacion-grid input:focus,
.ir-cf7-form .ir-cotizacion-grid select:focus,
.ir-cf7-form .ir-cotizacion-grid textarea:focus{outline:2px solid var(--orange);outline-offset:0}
.ir-cf7-form .ir-cotizacion-grid > .ir-campo-completo,
.ir-cf7-form .ir-cotizacion-grid > p:has(.ir-campo-completo){grid-column:1/-1}
.ir-cf7-form .wpcf7-form > p:has(.wpcf7-submit){margin:22px 0 0}
.ir-cf7-form .wpcf7-submit{display:block;width:100%;border:1px solid var(--orange);border-radius:0;background:var(--orange);color:var(--coal);font-weight:800;font-size:13px;line-height:1.2;padding:16px 20px;min-height:54px;cursor:pointer;transition:background .2s}
.ir-cf7-form .wpcf7-submit:hover{background:var(--orange-hover)}
.ir-cf7-form .wpcf7-spinner{vertical-align:middle}
.ir-cf7-form .wpcf7-not-valid-tip{font-size:12px;color:#b80000;margin-top:4px}
.ir-cf7-form .wpcf7-response-output{margin:16px 0 0!important;padding:12px!important;font-size:13px;line-height:1.5}
.ir-privacy-note{font-size:12px;line-height:1.6;color:#626969;margin:18px 0 0}
.ir-contact-alert,.ir-contact-fallback{border-left:3px solid var(--orange);padding:15px 17px;background:#f4f1eb;line-height:1.7}
.ir-contact-fallback a{text-decoration:underline;text-decoration-color:var(--orange)}
@media(max-width:600px){.ir-cf7-form .ir-cotizacion-grid{grid-template-columns:minmax(0,1fr)}.ir-cf7-form .ir-cotizacion-grid > .ir-campo-completo,.ir-cf7-form .ir-cotizacion-grid > p:has(.ir-campo-completo){grid-column:auto}}
