:root{--orange:#ff5a00;--red:#ef2b12;--black:#0a0a0a;--ink:#171717;--gray:#686868;--line:#d9d9d9;--paper:#f7f7f5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}img{display:block;width:100%}a{color:inherit;text-decoration:none}.header{height:86px;display:flex;align-items:center;gap:32px;padding:0 4vw;position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);border-bottom:1px solid #eee}.logo{width:145px}.logo img{height:62px;object-fit:contain}.header nav{margin-left:auto;display:flex;gap:25px}.header nav a{font-size:11px;font-weight:800;letter-spacing:.08em}.header nav a:hover{color:var(--orange)}.button{font-size:11px;font-weight:900;letter-spacing:.05em;padding:15px 19px}.solid{background:linear-gradient(110deg,var(--orange),#ff7a00);color:#fff}.solid span{margin-left:18px}.menu{display:none;border:0;background:transparent;font-size:24px}.hero{position:relative;background:#eee}.hero img{min-height:500px;object-fit:cover}.hero-bottom{position:absolute;left:4vw;bottom:4.5%;color:#fff;font-size:13px;letter-spacing:.28em;font-weight:600}.hero-bottom span{display:inline-block;width:70px;height:6px;background:var(--orange);margin-right:25px}.hero-bottom b{color:var(--orange)}.marquee{overflow:hidden;background:#090909;color:#fff;padding:22px 0;white-space:nowrap;font-size:12px;font-weight:800;letter-spacing:.22em}.marquee div{width:max-content;animation:move 26s linear infinite}.marquee i{font-style:normal;color:var(--orange);margin:0 28px}@keyframes move{to{transform:translateX(-35%)}}.grid-bg{background-color:#fafafa;background-image:linear-gradient(rgba(0,0,0,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.035) 1px,transparent 1px);background-size:46px 46px}.about{padding:110px 6vw;display:grid;grid-template-columns:.9fr 1.1fr;gap:6vw;align-items:center;overflow:hidden}.kicker{color:var(--orange);font-size:11px;font-weight:900;letter-spacing:.24em;margin:0 0 18px}.about h1,.section-head h2,.statement h2,.sustain h2,.contact h2{font-size:clamp(42px,5vw,78px);line-height:.93;letter-spacing:-.055em;margin:0 0 28px}.about h1 strong,.section-head h2 strong,.statement strong,.sustain strong,.contact strong{color:var(--orange)}.about p{color:#555;line-height:1.75;max-width:700px}.about .lead{font-size:20px;color:#1d1d1d}.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:35px;border-top:1px solid #ccc}.mini-grid div{padding:22px 10px 0 0}.mini-grid b{display:block;color:var(--orange);font-size:29px}.mini-grid span{font-size:9px;font-weight:800;letter-spacing:.1em}.about-image{position:relative}.about-image img{box-shadow:0 30px 70px rgba(0,0,0,.18)}.floating{position:absolute;left:-35px;bottom:-35px;background:#0a0a0a;color:#fff;padding:24px 28px;border-left:5px solid var(--orange);font-size:11px;line-height:1.6;letter-spacing:.08em}.floating b{color:var(--orange)}.dark-section{background:#090909;color:#fff;position:relative;overflow:hidden}.dark-section:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(130deg,transparent 55%,rgba(255,90,0,.06)),repeating-linear-gradient(135deg,transparent 0 120px,rgba(255,255,255,.02) 121px 122px)}.section-head{position:relative;z-index:2;padding:95px 6vw 45px;display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:end}.section-head h2{margin:0}.section-head>p:last-child{color:#aaa;line-height:1.7;max-width:520px}.section-head.light>p:last-child{color:#666}.cards{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);padding:0 6vw 100px}.cards article{border:1px solid #292929;padding:30px;min-height:270px;transition:.3s}.cards article:hover{border-color:var(--orange);transform:translateY(-6px)}.cards span{color:var(--orange);font-weight:900}.cards h3{margin:48px 0 15px;font-size:19px}.cards p{color:#aaa;font-size:13px;line-height:1.65}.cards small{color:var(--orange);font-weight:800;font-size:9px;letter-spacing:.08em}.statement{min-height:440px;padding:90px 6vw;display:grid;grid-template-columns:1fr auto;align-items:center;position:relative;overflow:hidden}.statement p{position:absolute;left:6vw;top:75px;letter-spacing:.25em;font-size:11px}.statement h2{font-size:clamp(60px,8vw,135px);max-width:1000px;margin:40px 0 0}.statement>div{font-size:13px;letter-spacing:.28em;line-height:1.8;border-left:3px solid var(--orange);padding-left:25px}.statement>div b{color:var(--orange)}.projects{padding:20px 5vw 110px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:340px;gap:12px}.gallery figure{margin:0;position:relative;overflow:hidden;background:#111}.gallery .feature{grid-column:span 2}.gallery img{height:100%;object-fit:cover;transition:.6s}.gallery figure:hover img{transform:scale(1.035)}.gallery figcaption{position:absolute;inset:auto 0 0;padding:55px 22px 20px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.88))}.gallery figcaption b,.gallery figcaption span{display:block}.gallery figcaption b{font-size:13px}.gallery figcaption span{font-size:10px;color:#ddd;margin-top:6px}.process{padding-bottom:100px}.timeline{margin:0 6vw;display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid #ddd;border-top:1px solid #bbb}.timeline div{padding:28px;min-height:175px;background:rgba(255,255,255,.72);border-right:1px solid #ddd;border-bottom:1px solid #ddd}.timeline b{font-size:30px;color:var(--orange)}.timeline h3{font-size:13px;margin:30px 0 7px}.timeline p{font-size:11px;color:#777}.production{padding-bottom:95px}.wordwall{position:relative;z-index:2;padding:0 6vw;display:flex;flex-wrap:wrap;gap:0 28px}.wordwall span{font-size:clamp(26px,4vw,62px);font-weight:900;letter-spacing:-.05em;border-bottom:1px solid #333;padding:14px 0}.wordwall span:after{content:" /";color:var(--orange)}.sustain{padding:100px 6vw;display:grid;grid-template-columns:.75fr 1.25fr;align-items:center}.sustain-mark{font-size:29vw;line-height:.7;font-weight:900;color:transparent;-webkit-text-stroke:2px rgba(255,90,0,.25)}.sustain p{color:#555;line-height:1.8;max-width:750px}.contact{padding:105px 6vw;display:grid;grid-template-columns:1.15fr .85fr;gap:7vw;background:linear-gradient(135deg,#fff 0 68%,#f1f1f1 68%)}.contact-copy p:last-child{color:#666}.contact-box{background:#0a0a0a;color:#fff;padding:40px}.contact-box label{display:block;color:var(--orange);font-size:9px;font-weight:900;letter-spacing:.22em;margin:18px 0 6px}.contact-box a{display:flex;justify-content:space-between;border-bottom:1px solid #333;padding:11px 0;font-size:17px}.contact-box a span{color:var(--orange)}footer{background:#050505;color:#fff;padding:42px 5vw;display:grid;grid-template-columns:150px 1fr auto;gap:35px;align-items:center;font-size:9px;letter-spacing:.1em}footer img{height:70px;object-fit:contain;background:#fff}footer b{color:var(--orange)}footer small{grid-column:1/-1;border-top:1px solid #222;color:#777;padding-top:18px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){.header{height:70px}.logo{width:110px}.logo img{height:52px}.header nav,.header>.solid{display:none}.menu{display:block;margin-left:auto}.header.open nav{display:flex;position:absolute;top:70px;left:0;right:0;background:#fff;flex-direction:column;padding:25px 6vw;border-bottom:1px solid #ddd}.hero img{min-height:360px}.hero-bottom{font-size:9px}.about,.sustain,.contact{grid-template-columns:1fr}.about{padding:70px 6vw}.about-image{margin-top:25px}.section-head{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr}.gallery .feature{grid-column:span 2}.timeline{grid-template-columns:1fr 1fr}.statement{grid-template-columns:1fr}.statement>div{margin-top:35px}.sustain-mark{display:none}footer{grid-template-columns:1fr}}@media(max-width:560px){.hero img{min-height:300px}.hero-bottom span{width:35px;margin-right:10px}.about h1,.section-head h2,.sustain h2,.contact h2{font-size:40px}.mini-grid,.cards,.gallery,.timeline{grid-template-columns:1fr}.gallery .feature{grid-column:auto}.cards article{min-height:auto}.floating{position:relative;left:0;bottom:0}.statement h2{font-size:54px}.contact-box{padding:26px}.contact-box a{font-size:13px}.marquee{font-size:9px}}

/* Revision: legibilidad, contacto y cierre de marca */
.about h1,.section-head h2,.statement h2,.sustain h2,.contact h2{overflow-wrap:normal;word-break:normal;hyphens:none}
.section-head h2,.contact h2,.sustain h2{line-height:1.02;letter-spacing:-.045em}
.statement h2{line-height:.92;letter-spacing:-.045em}
.wordwall span{line-height:1.08;white-space:normal}
.contact-box a{gap:20px;overflow-wrap:anywhere}
.contact-logo{width:min(390px,80%);height:auto;object-fit:contain;margin-top:34px;display:block}
footer{background:#050505;color:#fff;padding:42px 5vw;grid-template-columns:150px 1fr auto;border-top:0;align-items:center}
footer img{height:70px;width:150px;object-fit:contain;background:transparent;padding:0}
footer small{border-top:1px solid #222;color:#777;padding-top:18px}
@media(max-width:900px){footer{grid-template-columns:1fr;text-align:center}footer img{margin:0 auto}.section-head h2,.contact h2,.sustain h2{line-height:1.06}.contact-logo{margin:30px auto 0}}
@media(max-width:560px){.about h1,.section-head h2,.sustain h2,.contact h2{font-size:36px;line-height:1.08;letter-spacing:-.035em}.statement h2{font-size:48px;line-height:.98}.wordwall span{font-size:30px}.contact-box a{font-size:12px}.contact-logo{width:min(330px,90%)}}

/* Portfolio interactivo */
.gallery figure{cursor:zoom-in}.gallery figure:after{content:"VER PROYECTO  +";position:absolute;right:18px;top:18px;background:rgba(0,0,0,.82);color:#fff;padding:9px 12px;font-size:9px;font-weight:900;letter-spacing:.12em;opacity:0;transform:translateY(-5px);transition:.25s;z-index:3}.gallery figure:hover:after{opacity:1;transform:none}.gallery-hint{display:block;margin-top:12px;color:var(--orange);font-size:10px;letter-spacing:.08em}.lightbox{position:fixed;inset:0;z-index:1000;background:rgba(5,5,5,.96);display:flex;align-items:center;justify-content:center;padding:5vh 7vw;opacity:0;visibility:hidden;transition:.25s}.lightbox.open{opacity:1;visibility:visible}.lightbox-stage{width:min(1180px,82vw);height:min(78vh,780px);display:flex;flex-direction:column;align-items:center;justify-content:center}.lightbox-image{width:100%;height:calc(100% - 72px);object-fit:contain}.lightbox-caption{width:100%;min-height:72px;color:#fff;padding:16px 4px 0;border-top:1px solid #333;display:grid;grid-template-columns:1fr auto;gap:6px 25px;align-items:center}.lightbox-caption b{font-size:14px;letter-spacing:.08em}.lightbox-caption span{font-size:11px;color:#bbb}.lightbox-caption em{grid-row:1/3;grid-column:2;font-style:normal;color:var(--orange);font-size:11px;font-weight:900;letter-spacing:.1em}.lightbox-close,.lightbox-nav{position:absolute;border:0;background:transparent;color:#fff;cursor:pointer}.lightbox-close{right:3vw;top:2.5vh;font-size:44px;font-weight:200;line-height:1}.lightbox-nav{top:50%;transform:translateY(-50%);font-size:64px;padding:20px;color:var(--orange)}.lightbox-prev{left:2vw}.lightbox-next{right:2vw}.lightbox-close:hover,.lightbox-nav:hover{color:#fff}body.lightbox-open{overflow:hidden}@media(max-width:700px){.lightbox{padding:4vh 3vw}.lightbox-stage{width:88vw;height:78vh}.lightbox-nav{font-size:44px;padding:8px}.lightbox-prev{left:0}.lightbox-next{right:0}.lightbox-caption{grid-template-columns:1fr}.lightbox-caption em{grid-row:auto;grid-column:auto}.gallery figure:after{opacity:1;transform:none}}

/* ===== Fondo unificado DOS FORMA ===== */
body{
  background:#f5f5f3 url('assets/hero.png') center top / cover fixed no-repeat;
}
/* Todas las secciones comparten la misma base visual arquitectónica de portada */
.grid-bg,.about,.statement,.projects,.process,.production,.sustain,.contact,.dark-section{
  position:relative;
  background-image:
    linear-gradient(rgba(255,255,255,.91),rgba(255,255,255,.91)),
    url('assets/hero.png');
  background-position:center;
  background-size:cover;
  background-attachment:fixed;
  color:var(--ink);
}
.dark-section{
  background-image:
    linear-gradient(rgba(8,8,8,.91),rgba(8,8,8,.91)),
    url('assets/hero.png');
  color:#fff;
}
/* Conserva la retícula/plano técnico sobre el mismo fondo */
.grid-bg:before,.about:before,.statement:before,.projects:before,.process:before,.sustain:before,.contact:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(0,0,0,.028) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,0,0,.028) 1px,transparent 1px);
  background-size:46px 46px;
  opacity:.7;
}
.grid-bg>* ,.about>* ,.statement>* ,.projects>* ,.process>* ,.sustain>* ,.contact>*{
  position:relative;
  z-index:1;
}
/* Las zonas oscuras mantienen el lenguaje negro/naranja pero con la misma imagen base */
.dark-section:after{
  background:
    linear-gradient(130deg,transparent 55%,rgba(255,90,0,.08)),
    repeating-linear-gradient(135deg,transparent 0 120px,rgba(255,255,255,.025) 121px 122px);
}
/* Paneles ligeramente translúcidos para legibilidad */
.timeline div{background:rgba(255,255,255,.86);backdrop-filter:blur(2px)}
.contact-box{background:rgba(10,10,10,.96)}
@media(max-width:900px){
  body,.grid-bg,.about,.statement,.projects,.process,.production,.sustain,.contact,.dark-section{background-attachment:scroll}
}

/* Fondo definitivo DOS FORMA — aplicado a todas las secciones */
:root{--site-bg:url('assets/background-dosforma.png')}
body{
  background:#f7f7f5 var(--site-bg) center top / cover fixed no-repeat;
}
.grid-bg,.about,.statement,.projects,.process,.sustain,.contact{
  background-image:linear-gradient(rgba(255,255,255,.84),rgba(255,255,255,.84)),var(--site-bg)!important;
  background-position:center!important;
  background-size:cover!important;
  background-attachment:fixed!important;
}
.dark-section,.production,.services{
  background-image:linear-gradient(rgba(5,5,5,.90),rgba(5,5,5,.90)),var(--site-bg)!important;
  background-position:center!important;
  background-size:cover!important;
  background-attachment:fixed!important;
}
/* El fondo ya incluye líneas arquitectónicas: eliminamos la retícula artificial */
.grid-bg:before,.about:before,.statement:before,.projects:before,.process:before,.sustain:before,.contact:before{display:none!important}
/* Hero: usa el mismo fondo limpio y deja la marca/texto como HTML */
.hero{
  min-height:min(76vw,760px);
  background-image:var(--site-bg)!important;
  background-position:center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  display:flex;
  align-items:center;
}
.hero>img{display:none!important}
.hero:after{
  content:"DOS FORMA";
  position:absolute;
  left:7vw;
  top:14%;
  font-size:clamp(34px,6vw,92px);
  font-weight:900;
  letter-spacing:-.055em;
  color:#151515;
  max-width:46%;
  line-height:.9;
}
.hero:before{
  content:"DISEÑO · FABRICACIÓN · MONTAJE · DESMONTAJE";
  position:absolute;
  left:7vw;
  top:31%;
  z-index:2;
  font-size:clamp(10px,1.15vw,18px);
  font-weight:800;
  letter-spacing:.12em;
  color:#202020;
  border-left:7px solid var(--orange);
  padding-left:18px;
}
@media(max-width:900px){
  body,.grid-bg,.about,.statement,.projects,.process,.sustain,.contact,.dark-section,.production,.services{background-attachment:scroll!important}
  .hero{min-height:520px;background-position:58% center!important}
  .hero:after{left:6vw;top:15%;max-width:54%}
  .hero:before{left:6vw;top:34%;max-width:55%;line-height:1.5}
}
@media(max-width:560px){
  .hero{min-height:440px;background-position:62% center!important}
  .hero:after{top:12%;max-width:58%;font-size:38px}
  .hero:before{top:31%;max-width:56%;font-size:9px}
}

/* AJUSTE SOLICITADO: primera pantalla original; nuevo fondo solo desde la segunda sección */
.hero{
  min-height:0!important;
  background:#eee!important;
  display:block!important;
  align-items:initial!important;
}
.hero>img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:500px!important;
  object-fit:cover!important;
}
.hero:before,.hero:after{display:none!important;content:none!important}
@media(max-width:900px){.hero{min-height:0!important}.hero>img{min-height:360px!important;object-fit:cover!important}}
@media(max-width:560px){.hero{min-height:0!important}.hero>img{min-height:300px!important;object-fit:cover!important}}

/* Movimiento lateral de la línea/cinta de la portada: recorre toda la pantalla de lado a lado */
.marquee{position:relative;width:100%;overflow:hidden}
.marquee div{
  width:max-content;
  min-width:max-content;
  will-change:transform;
  animation:moveSideToSide 12s ease-in-out infinite alternate;
}
@keyframes moveSideToSide{
  0%{transform:translateX(0)}
  100%{transform:translateX(calc(100vw - 100%))}
}
@media(max-width:700px){.marquee div{animation-duration:9s}}

.about-v2{grid-template-columns:1fr!important;gap:50px!important;padding-top:95px!important}.about-v2 .about-copy{max-width:1500px;margin:0 auto;width:100%}.about-v2 .about-copy>p{max-width:930px}.mini-grid-v2{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:42px}.mini-grid-v2 div{padding:25px 24px 8px;border-right:1px solid rgba(0,0,0,.16)}.mini-grid-v2 div:last-child{border-right:0}.mini-grid-v2 b{font-size:clamp(42px,5vw,78px);line-height:.95;letter-spacing:-.045em;white-space:nowrap}.mini-grid-v2 span{display:block;margin-top:10px;font-size:11px;letter-spacing:.13em;line-height:1.5}.stand-process{width:100%;max-width:1600px;margin:0 auto}.stand-stage{display:grid;grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr);gap:24px;align-items:center}.stand-card{text-align:center}.stand-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border:1px solid rgba(0,0,0,.12);box-shadow:0 22px 55px rgba(0,0,0,.12)}.stand-card h3{font-size:clamp(18px,1.8vw,29px);letter-spacing:.16em;margin:22px 0 7px}.stand-card p{margin:0!important;max-width:none!important;font-size:11px!important;letter-spacing:.22em!important;color:#666!important}.process-arrow{font-size:58px;color:var(--orange);font-weight:300;text-align:center}@media(max-width:900px){.mini-grid-v2{grid-template-columns:1fr}.mini-grid-v2 div{border-right:0;border-bottom:1px solid rgba(0,0,0,.15);padding-left:0}.mini-grid-v2 div:last-child{border-bottom:0}.stand-stage{grid-template-columns:1fr}.process-arrow{transform:rotate(90deg);font-size:44px}}@media(max-width:560px){.about-v2{padding-top:65px!important;gap:35px!important}.mini-grid-v2 b{font-size:40px;white-space:normal}}

.stand-card:first-child img{background:transparent!important;border:0!important;box-shadow:none!important;object-fit:contain!important}
/* Ajuste solicitado: 360º, 3D y DOS FORMA más pequeños en página 2 */
.mini-grid-v2 b{font-size:clamp(30px,3.4vw,52px)!important;letter-spacing:-.025em!important}
@media(max-width:560px){.mini-grid-v2 b{font-size:32px!important}}


/* Página 3 — movimiento arquitectónico elegante */
.services-motion{position:relative;overflow:hidden;isolation:isolate}
.services-motion>.section-head,.services-motion>.cards{position:relative;z-index:2}
.motion-blueprint{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;opacity:.9}
.motion-blueprint:before,.motion-blueprint:after{content:"";position:absolute;inset:-20%;background:linear-gradient(90deg,transparent 0 46%,rgba(255,92,0,.12) 49%,rgba(255,92,0,.38) 50%,rgba(255,92,0,.12) 51%,transparent 54%);transform:skewX(-22deg);animation:serviceScan 8s linear infinite}
.motion-blueprint:after{animation-delay:-4s;opacity:.42}
.motion-blueprint span{position:absolute;height:1px;width:42vw;background:linear-gradient(90deg,transparent,rgba(255,111,0,.75),transparent);filter:drop-shadow(0 0 8px rgba(255,100,0,.55));animation:beamTravel 7s ease-in-out infinite alternate}
.motion-blueprint span:nth-child(1){top:22%;left:-15%;animation-delay:-1s}
.motion-blueprint span:nth-child(2){top:52%;right:-12%;animation-delay:-3s;animation-direction:alternate-reverse}
.motion-blueprint span:nth-child(3){top:81%;left:4%;animation-delay:-5s;width:55vw}
.motion-blueprint i{position:absolute;width:340px;height:340px;border:1px solid rgba(255,102,0,.18);border-radius:50%;right:8%;top:14%;box-shadow:0 0 0 70px rgba(255,102,0,.025),0 0 0 140px rgba(255,102,0,.018);animation:slowRotate 18s linear infinite}
.services-motion .cards article{transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease;animation:serviceFloat 5s ease-in-out infinite}
.services-motion .cards article:nth-child(2){animation-delay:-.8s}.services-motion .cards article:nth-child(3){animation-delay:-1.6s}.services-motion .cards article:nth-child(4){animation-delay:-2.4s}.services-motion .cards article:nth-child(5){animation-delay:-3.2s}.services-motion .cards article:nth-child(6){animation-delay:-4s}
.services-motion .cards article:hover{transform:translateY(-10px)!important;border-color:rgba(255,102,0,.75)!important;box-shadow:0 18px 45px rgba(0,0,0,.32),0 0 30px rgba(255,90,0,.10)}
.services-motion .cards article:after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:#ff5b00;box-shadow:0 0 14px #ff5b00;transition:width .45s ease}
.services-motion .cards article:hover:after{width:100%}
@keyframes serviceScan{0%{transform:translateX(-65vw) skewX(-22deg)}100%{transform:translateX(95vw) skewX(-22deg)}}
@keyframes beamTravel{0%{transform:translateX(-8vw);opacity:.2}50%{opacity:1}100%{transform:translateX(58vw);opacity:.35}}
@keyframes slowRotate{to{transform:rotate(360deg)}}
@keyframes serviceFloat{0%,100%{translate:0 0}50%{translate:0 -5px}}
@media(prefers-reduced-motion:reduce){.motion-blueprint:before,.motion-blueprint:after,.motion-blueprint span,.motion-blueprint i,.services-motion .cards article{animation:none!important}}

/* ===== Página 3 — versión moderna / premium ===== */
.services-motion{--mx:72%;--my:28%;min-height:100vh;padding-top:110px!important;padding-bottom:120px!important;background-image:linear-gradient(115deg,rgba(4,4,5,.96),rgba(8,8,10,.88)),var(--site-bg)!important}
.services-motion:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mx) var(--my),rgba(255,91,0,.18),transparent 24%),linear-gradient(120deg,transparent 0 48%,rgba(255,255,255,.025) 49%,transparent 50%);z-index:0;pointer-events:none;transition:background .15s linear}
.services-motion>.section-head{max-width:880px;margin-bottom:54px}
.services-motion>.section-head h2{font-size:clamp(46px,6vw,92px);line-height:.9;letter-spacing:-.055em}
.modern-motion{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none}
.service-glow{position:absolute;width:48vw;height:48vw;min-width:520px;min-height:520px;right:-13vw;top:-18vw;border-radius:50%;background:radial-gradient(circle,rgba(255,91,0,.18) 0,rgba(255,91,0,.05) 34%,transparent 68%);filter:blur(8px);animation:glowBreath 6s ease-in-out infinite}
.orbit{position:absolute;border:1px solid rgba(255,106,0,.28);border-radius:50%;right:-7vw;top:6%;width:34vw;height:34vw;min-width:430px;min-height:430px;box-shadow:inset 0 0 80px rgba(255,92,0,.025),0 0 45px rgba(255,92,0,.04);animation:orbitSpin 22s linear infinite}
.orbit:before,.orbit:after{content:"";position:absolute;border-radius:50%;background:#ff5b00;box-shadow:0 0 18px #ff5b00}
.orbit:before{width:7px;height:7px;left:13%;top:18%}.orbit:after{width:4px;height:4px;right:9%;bottom:24%}
.orbit-b{width:25vw;height:25vw;min-width:310px;min-height:310px;right:-2vw;top:13%;border-color:rgba(255,255,255,.12);animation-direction:reverse;animation-duration:15s}
.scanline{position:absolute;left:-35%;top:58%;width:75%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,91,0,.95),rgba(255,255,255,.5),transparent);box-shadow:0 0 18px rgba(255,91,0,.65);transform:rotate(-13deg);animation:modernScan 7s cubic-bezier(.45,0,.55,1) infinite}
.service-wordtrack{position:absolute;left:0;bottom:24px;display:flex;gap:5vw;white-space:nowrap;font-size:clamp(46px,7vw,110px);font-weight:900;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.07);opacity:.75;animation:wordTrack 28s linear infinite}
.services-motion .cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;perspective:1200px}
.services-motion .cards article{position:relative;min-height:270px;padding:34px 30px!important;background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.025))!important;border:1px solid rgba(255,255,255,.12)!important;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);overflow:hidden;animation:none!important;transform-style:preserve-3d;transition:transform .28s ease,border-color .28s ease,background .28s ease,box-shadow .28s ease!important}
.services-motion .cards article:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 12%,rgba(255,95,0,.18),transparent 34%);opacity:0;transition:opacity .35s ease}
.services-motion .cards article:hover{transform:translateY(-8px) scale(1.015)!important;background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,87,0,.035))!important;border-color:rgba(255,99,0,.55)!important;box-shadow:0 30px 70px rgba(0,0,0,.42),0 0 0 1px rgba(255,91,0,.08)!important}
.services-motion .cards article:hover:before{opacity:1}
.services-motion .cards article>span{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border:1px solid rgba(255,91,0,.6);border-radius:50%;color:#ff6500!important;font-weight:700;margin-bottom:34px}
.services-motion .cards article h3{font-size:clamp(20px,1.6vw,28px);max-width:90%;position:relative;z-index:1}
.services-motion .cards article p{color:rgba(255,255,255,.7)!important;position:relative;z-index:1}
.services-motion .cards article small{position:absolute;left:30px;bottom:26px;color:#ff6500!important;letter-spacing:.12em;z-index:1}
.services-motion .cards article:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:3px;background:linear-gradient(90deg,#ff4f00,#ff8a00,transparent);transform:scaleX(0);transform-origin:left;transition:transform .4s ease;box-shadow:0 0 16px rgba(255,91,0,.7)}
.services-motion .cards article:hover:after{transform:scaleX(1)}
@keyframes orbitSpin{to{transform:rotate(360deg)}}
@keyframes glowBreath{0%,100%{transform:scale(.92);opacity:.55}50%{transform:scale(1.08);opacity:1}}
@keyframes modernScan{0%{transform:translate(-30vw,12vh) rotate(-13deg);opacity:0}20%{opacity:1}80%{opacity:.8}100%{transform:translate(115vw,-28vh) rotate(-13deg);opacity:0}}
@keyframes wordTrack{to{transform:translateX(-52%)}}
@media(max-width:980px){.services-motion .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.orbit{right:-28vw}.service-wordtrack{font-size:70px}}
@media(max-width:640px){.services-motion{padding-top:80px!important}.services-motion .cards{grid-template-columns:1fr}.services-motion .cards article{min-height:245px}.orbit{opacity:.5;right:-70vw}.scanline{display:none}.service-wordtrack{font-size:54px}}
@media(prefers-reduced-motion:reduce){.service-glow,.orbit,.scanline,.service-wordtrack{animation:none!important}}
/* Página 4: "DEL CONCEPTO / A LA REALIDAD" al mismo tamaño que "NUESTROS PROYECTOS" */
.statement p{font-size:clamp(42px,5vw,78px)!important;line-height:.93!important;letter-spacing:-.055em!important;font-weight:700!important;top:52px!important}
.statement h2{font-size:clamp(42px,5vw,78px)!important;line-height:.93!important;letter-spacing:-.055em!important;margin-top:82px!important}
@media(max-width:560px){.statement p,.statement h2{font-size:36px!important;line-height:1.08!important;letter-spacing:-.035em!important}.statement h2{margin-top:70px!important}}

/* REVISION — mismo fondo moderno de la página 3 en todas las secciones salvo portada */
.about-v2,.statement,.projects,.process,.production,.sustain,.contact{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  color:#fff;
  background-image:
    radial-gradient(circle at 78% 22%,rgba(255,91,0,.15),transparent 25%),
    linear-gradient(115deg,rgba(4,4,5,.96),rgba(8,8,10,.88)),
    var(--site-bg)!important;
  background-position:center!important;
  background-size:cover!important;
  background-attachment:fixed!important;
}
.about-v2:after,.statement:after,.projects:after,.process:after,.production:after,.sustain:after,.contact:after{
  content:"";
  position:absolute;
  z-index:0;
  inset:-25%;
  pointer-events:none;
  background:
    linear-gradient(90deg,transparent 0 46%,rgba(255,92,0,.05) 49%,rgba(255,92,0,.22) 50%,rgba(255,92,0,.05) 51%,transparent 54%),
    repeating-linear-gradient(135deg,transparent 0 118px,rgba(255,255,255,.018) 119px 120px);
  transform:skewX(-20deg);
  animation:globalBgScan 11s linear infinite;
}
.about-v2>* ,.statement>* ,.projects>* ,.process>* ,.production>* ,.sustain>* ,.contact>*{position:relative;z-index:2}
@keyframes globalBgScan{0%{transform:translateX(-16%) skewX(-20deg)}50%{transform:translateX(16%) skewX(-20deg)}100%{transform:translateX(-16%) skewX(-20deg)}}

/* Legibilidad sobre el fondo oscuro, sin cambiar estructura ni contenidos */
.about-v2 p,.about-v2 .lead,.sustain p,.contact-copy p:last-child,.section-head.light>p:last-child{color:rgba(255,255,255,.74)!important}
.about-v2 h1,.statement h2,.projects h2,.process h2,.sustain h2,.contact h2{color:#fff}
.mini-grid-v2{border-top-color:rgba(255,255,255,.22)!important}
.mini-grid-v2 div{border-right-color:rgba(255,255,255,.16)!important}
.stand-card p{color:rgba(255,255,255,.62)!important}
.timeline{border-left-color:rgba(255,255,255,.16)!important;border-top-color:rgba(255,255,255,.2)!important}
.timeline div{background:rgba(255,255,255,.075)!important;backdrop-filter:blur(12px);border-color:rgba(255,255,255,.14)!important}
.timeline p{color:rgba(255,255,255,.62)!important}
.contact{background-image:radial-gradient(circle at 78% 22%,rgba(255,91,0,.15),transparent 25%),linear-gradient(115deg,rgba(4,4,5,.96),rgba(8,8,10,.88)),var(--site-bg)!important}
.contact-box{background:rgba(255,255,255,.07)!important;border:1px solid rgba(255,255,255,.13);backdrop-filter:blur(15px)}
.gallery figure{border:1px solid rgba(255,255,255,.10)}
@media(max-width:900px){.about-v2,.statement,.projects,.process,.production,.sustain,.contact{background-attachment:scroll!important}}
@media(prefers-reduced-motion:reduce){.about-v2:after,.statement:after,.projects:after,.process:after,.production:after,.sustain:after,.contact:after{animation:none!important}}

/* Página 2 — boceto arquitectónico mejorado para fondo oscuro */
.about-v2 .stand-card:first-child{
  position:relative;
  padding:20px 20px 16px;
  border:1px solid rgba(255,255,255,.12);
  background:radial-gradient(circle at 50% 45%,rgba(255,255,255,.08),rgba(255,255,255,.015) 58%,transparent 78%);
  overflow:hidden;
}
.about-v2 .stand-card:first-child:before{
  content:"";
  position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:32px 32px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent 90%);
}
.about-v2 .stand-card:first-child img{
  position:relative;z-index:1;
  width:100%;aspect-ratio:16/10;
  object-fit:contain!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:drop-shadow(0 0 7px rgba(255,255,255,.18)) drop-shadow(0 0 18px rgba(255,125,30,.10));
  opacity:.98;
}
.about-v2 .stand-card:first-child h3,
.about-v2 .stand-card:first-child p{position:relative;z-index:1}

/* Boceto página 2: papel y lápiz, mismo stand */
.about-v2 .stand-card:first-child{padding:16px!important;background:#f3eee2!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:0 24px 65px rgba(0,0,0,.28)!important}
.about-v2 .stand-card:first-child:before{display:none!important}
.about-v2 .stand-card:first-child img{background:#f3eee2!important;filter:none!important;opacity:1!important;object-fit:cover!important}
.about-v2 .stand-card:first-child h3{color:#111!important}
.about-v2 .stand-card:first-child p{color:#555!important}

/* Página 2 — boceto proporcionado por el cliente */
.about-v2 .stand-card:first-child{
  background:transparent!important;
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
  transform:none!important;
}
.about-v2 .stand-card:first-child:before{display:none!important}
.about-v2 .stand-card:first-child img{
  width:100%!important;
  height:auto!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  border:0!important;
  box-shadow:0 24px 60px rgba(0,0,0,.28)!important;
  filter:none!important;
  opacity:1!important;
  transform:none!important;
}

/* =========================================================
   FONDO ÚNICO EN MOVIMIENTO — TODA LA WEB EXCEPTO PÁGINA 1
   ========================================================= */
body{
  background:#090909;
}

/* La primera página conserva íntegramente su imagen y aspecto */
#inicio.hero{
  position:relative;
  z-index:5;
}

/* Desde NOSOTROS hasta CONTACTO: un único fondo continuo */
#nosotros,
#servicios,
#proyectos,
#proceso,
#produccion,
#sostenibilidad,
#contacto,
.statement{
  position:relative;
  z-index:1;
  background:transparent!important;
  background-image:none!important;
}

/* Capa fija/continua que visualmente une todas las páginas posteriores */
body::before{
  content:"";
  position:fixed;
  z-index:0;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 30%,rgba(255,111,0,.18),transparent 25%),
    radial-gradient(circle at 78% 68%,rgba(255,125,24,.13),transparent 30%),
    linear-gradient(125deg,#070707 0%,#11100f 45%,#080808 100%);
  background-size:140% 140%,150% 150%,100% 100%;
  animation:dfUnifiedBg 16s ease-in-out infinite alternate;
}

/* Líneas luminosas modernas, como en la página 3 */
body::after{
  content:"";
  position:fixed;
  z-index:0;
  inset:-20%;
  pointer-events:none;
  opacity:.58;
  background:
    linear-gradient(112deg,transparent 0 44%,rgba(255,105,0,.05) 47%,rgba(255,126,20,.72) 49.5%,rgba(255,190,105,.18) 50.2%,transparent 53%),
    linear-gradient(18deg,transparent 0 57%,rgba(255,111,0,.25) 58%,transparent 59.2%);
  filter:blur(.2px);
  transform-origin:center;
  animation:dfUnifiedLines 13s ease-in-out infinite alternate;
}

@keyframes dfUnifiedBg{
  0%{background-position:0% 0%,100% 100%,0 0}
  50%{background-position:45% 30%,55% 70%,0 0}
  100%{background-position:100% 70%,0% 20%,0 0}
}
@keyframes dfUnifiedLines{
  0%{transform:translate3d(-4%,-2%,0) rotate(-2deg) scale(1.02)}
  50%{transform:translate3d(3%,2%,0) rotate(1deg) scale(1.05)}
  100%{transform:translate3d(7%,-1%,0) rotate(3deg) scale(1.03)}
}

/* Todo el contenido posterior queda por encima del fondo */
#nosotros > *,
#servicios > *,
#proyectos > *,
#proceso > *,
#produccion > *,
#sostenibilidad > *,
#contacto > *,
.statement > *{
  position:relative;
  z-index:2;
}

/* El marquee bajo la primera página conserva su diseño propio */
.marquee,
.ticker,
[class*="marquee"]{
  position:relative;
  z-index:4;
}

/* Evitar cortes visuales entre secciones */
#nosotros,
#servicios,
#proyectos,
#proceso,
#produccion,
#sostenibilidad,
#contacto{
  border-top-color:rgba(255,255,255,.08)!important;
}

@media (prefers-reduced-motion:reduce){
  body::before,body::after{animation:none!important}
}

/* =========================================================
   CORRECCIÓN FINAL: UN SOLO FONDO EN MOVIMIENTO DESDE PÁGINA 2
   Página 1 permanece intacta.
   ========================================================= */

/* Anula todos los fondos individuales antiguos de las secciones */
#nosotros,#servicios,#proyectos,#proceso,#produccion,#sostenibilidad,#contacto,
.about,.about-v2,.dark-section,.services,.services-motion,.statement,.projects,
.process,.production,.sustain,.contact,.grid-bg{
  background:transparent!important;
  background-image:none!important;
  background-color:transparent!important;
}

/* Elimina las capas de fondo propias de página 3 que duplicaban el efecto */
.dark-section:after,
.services-motion:before,
.motion-blueprint,
.service-glow,
.orbit,
.scanline,
.service-wordtrack{
  display:none!important;
}

/* Un único lienzo oscuro animado para TODA la web desde página 2 */
body::before{
  content:""!important;
  display:block!important;
  position:fixed!important;
  inset:0!important;
  z-index:-2!important;
  pointer-events:none!important;
  background:
    radial-gradient(ellipse at 18% 25%,rgba(255,91,0,.17),transparent 31%),
    radial-gradient(ellipse at 82% 72%,rgba(255,126,20,.12),transparent 34%),
    linear-gradient(125deg,#050505 0%,#0d0c0b 48%,#060606 100%)!important;
  background-size:145% 145%,155% 155%,100% 100%!important;
  animation:dfOneBg 17s ease-in-out infinite alternate!important;
}

/* Una sola familia de líneas naranjas en movimiento */
body::after{
  content:""!important;
  display:block!important;
  position:fixed!important;
  inset:-24%!important;
  z-index:-1!important;
  pointer-events:none!important;
  opacity:.62!important;
  background:
    linear-gradient(116deg,
      transparent 0 43%,
      rgba(255,85,0,.03) 46%,
      rgba(255,101,0,.48) 49.3%,
      rgba(255,177,83,.17) 50%,
      transparent 53.5%),
    linear-gradient(22deg,
      transparent 0 59%,
      rgba(255,95,0,.20) 60%,
      transparent 61.4%)!important;
  filter:blur(.25px)!important;
  transform-origin:center!important;
  animation:dfOneLines 14s ease-in-out infinite alternate!important;
}

@keyframes dfOneBg{
  0%{background-position:0% 10%,100% 90%,0 0}
  50%{background-position:48% 38%,58% 64%,0 0}
  100%{background-position:100% 76%,0% 22%,0 0}
}
@keyframes dfOneLines{
  0%{transform:translate3d(-6%,-2%,0) rotate(-2deg) scale(1.02)}
  50%{transform:translate3d(2%,2%,0) rotate(.5deg) scale(1.05)}
  100%{transform:translate3d(7%,-1%,0) rotate(2.5deg) scale(1.03)}
}

/* Fondo base único; la página 1 conserva su propia imagen hero por encima */
html,body{background:#070707!important}
#inicio.hero{
  position:relative!important;
  z-index:2!important;
  background:#eee!important;
}
#inicio.hero img{position:relative;z-index:2}

/* Contenido desde página 2 por encima del único fondo */
#nosotros,#servicios,#proyectos,#proceso,#produccion,#sostenibilidad,#contacto,.statement{
  position:relative!important;
  z-index:1!important;
}

/* Mantener las tarjetas modernas de servicios sin crear otro fondo */
.services-motion .cards article{
  background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.025))!important;
}

/* Mantener el folio del boceto */
.about-v2 .stand-card:first-child{
  background:transparent!important;
}
.about-v2 .stand-card:first-child img{
  background:transparent!important;
}

@media(prefers-reduced-motion:reduce){
  body::before,body::after{animation:none!important}
}

/* =========================================================
   FONDO PREMIUM 2026 — ÚNICO DESDE PÁGINA 2 HASTA EL FINAL
   Página 1 queda intacta.
   ========================================================= */

/* Desactivar cualquier fondo/capa animada anterior */
#nosotros,#servicios,#proyectos,#proceso,#produccion,#sostenibilidad,#contacto,
.about,.about-v2,.dark-section,.services,.services-motion,.statement,.projects,
.process,.production,.sustain,.contact,.grid-bg{
  background:transparent!important;
  background-image:none!important;
  background-color:transparent!important;
}
.dark-section:before,.dark-section:after,
.services-motion:before,.services-motion:after,
.motion-blueprint,.service-glow,.orbit,.scanline,.service-wordtrack{
  display:none!important;
}

/* Lienzo único: negro grafito con halos arquitectónicos muy suaves */
body::before{
  content:""!important;
  display:block!important;
  position:fixed!important;
  inset:0!important;
  z-index:-2!important;
  pointer-events:none!important;
  background:
    radial-gradient(ellipse 60% 48% at 12% 20%,rgba(255,112,20,.13),transparent 65%),
    radial-gradient(ellipse 54% 44% at 88% 72%,rgba(255,79,0,.11),transparent 67%),
    radial-gradient(ellipse 40% 32% at 58% 45%,rgba(255,185,105,.045),transparent 70%),
    linear-gradient(135deg,#050505 0%,#0b0b0b 38%,#11100f 58%,#060606 100%)!important;
  background-size:150% 150%,160% 160%,140% 140%,100% 100%!important;
  animation:dfPremiumAtmosphere 22s cubic-bezier(.45,0,.55,1) infinite alternate!important;
}

/* Una única capa de filamentos luminosos, más fina y elegante */
body::after{
  content:""!important;
  display:block!important;
  position:fixed!important;
  inset:-28%!important;
  z-index:-1!important;
  pointer-events:none!important;
  opacity:.72!important;
  background:
    radial-gradient(ellipse 55% 4% at 30% 40%,rgba(255,128,30,.34),transparent 70%),
    linear-gradient(119deg,
      transparent 0 40%,
      rgba(255,106,0,0) 43%,
      rgba(255,106,0,.11) 46.5%,
      rgba(255,145,42,.68) 48.3%,
      rgba(255,213,151,.20) 48.8%,
      rgba(255,103,0,.08) 49.5%,
      transparent 53%),
    linear-gradient(18deg,
      transparent 0 62%,
      rgba(255,96,0,.04) 63%,
      rgba(255,130,25,.30) 64%,
      transparent 65.3%)!important;
  filter:blur(.35px)!important;
  transform-origin:50% 50%!important;
  animation:dfPremiumFlow 18s cubic-bezier(.45,0,.55,1) infinite alternate!important;
}

@keyframes dfPremiumAtmosphere{
  0%{background-position:0% 5%,100% 90%,45% 40%,0 0}
  45%{background-position:42% 34%,62% 60%,60% 52%,0 0}
  100%{background-position:100% 75%,0% 18%,40% 64%,0 0}
}
@keyframes dfPremiumFlow{
  0%{transform:translate3d(-7%,-3%,0) rotate(-3deg) scale(1.01)}
  35%{transform:translate3d(-1%,2%,0) rotate(-.5deg) scale(1.045)}
  70%{transform:translate3d(4%,-1%,0) rotate(1.4deg) scale(1.025)}
  100%{transform:translate3d(8%,2%,0) rotate(3deg) scale(1.055)}
}

/* Página 1: su hero sigue mandando visualmente y no recibe el fondo nuevo */
html,body{background:#050505!important}
#inicio.hero{
  position:relative!important;
  z-index:5!important;
}
#inicio.hero img{
  position:relative!important;
  z-index:5!important;
  display:block!important;
}

/* Contenido posterior siempre sobre el único fondo */
#nosotros,#servicios,#proyectos,#proceso,#produccion,#sostenibilidad,#contacto,.statement{
  position:relative!important;
  z-index:1!important;
}

/* Cristal muy sutil solo en elementos internos, nunca como segundo fondo */
.services-motion .cards article{
  background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.018))!important;
  border-color:rgba(255,255,255,.10)!important;
  backdrop-filter:blur(8px);
}

/* El folio del boceto conserva su propia imagen blanca */
.about-v2 .stand-card:first-child{background:transparent!important}
.about-v2 .stand-card:first-child img{background:transparent!important}

@media(prefers-reduced-motion:reduce){
  body::before,body::after{animation:none!important}
}

/* Última página — logo centrado en el hueco, letras DOS FORMA blancas */
#contacto .contact-copy{
  display:flex!important;
  flex-direction:column!important;
}
#contacto .contact-logo{
  display:block!important;
  width:min(430px,78%)!important;
  max-height:none!important;
  object-fit:contain!important;
  margin:42px auto 0!important;
  align-self:center!important;
  filter:drop-shadow(0 12px 28px rgba(0,0,0,.28))!important;
}
@media(max-width:800px){
  #contacto .contact-logo{
    width:min(340px,82%)!important;
    margin-top:32px!important;
  }
}

/* =========================================================
   DOS FORMA — FONDO FUTURISTA ÚNICO (PÁGINA 2 → FINAL)
   Página 1 permanece intacta.
   ========================================================= */

/* Eliminar fondos internos para que no haya cortes entre páginas */
#nosotros,#servicios,#proyectos,#proceso,#produccion,#sostenibilidad,#contacto,
.about,.about-v2,.dark-section,.services,.services-motion,.statement,.projects,
.process,.production,.sustain,.contact,.grid-bg{
  background:transparent!important;
  background-image:none!important;
  background-color:transparent!important;
}
.dark-section:before,.dark-section:after,
.services-motion:before,.services-motion:after,
.motion-blueprint,.service-glow,.orbit,.scanline,.service-wordtrack{
  display:none!important;
}

/* Atmósfera: grafito profundo + halos de energía naranja */
body::before{
  content:""!important;
  display:block!important;
  position:fixed!important;
  inset:-12%!important;
  z-index:-2!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 18% 25%,rgba(255,92,0,.17) 0,transparent 24%),
    radial-gradient(circle at 82% 72%,rgba(255,145,55,.13) 0,transparent 26%),
    radial-gradient(circle at 52% 46%,rgba(255,210,160,.035) 0,transparent 18%),
    conic-gradient(from 210deg at 50% 50%,#050505,#0e0d0c,#17120e,#090909,#050505)!important;
  background-size:145% 145%,150% 150%,135% 135%,100% 100%!important;
  animation:dfFutureAtmosphere 24s ease-in-out infinite alternate!important;
}

/* Filamentos de energía + haz holográfico diagonal */
body::after{
  content:""!important;
  display:block!important;
  position:fixed!important;
  inset:-30%!important;
  z-index:-1!important;
  pointer-events:none!important;
  opacity:.82!important;
  background:
    radial-gradient(ellipse 48% 2.2% at 34% 39%,rgba(255,170,70,.62),transparent 72%),
    radial-gradient(ellipse 38% 1.5% at 70% 64%,rgba(255,90,0,.40),transparent 72%),
    linear-gradient(117deg,
      transparent 0 41%,
      rgba(255,105,0,0) 43.5%,
      rgba(255,108,0,.09) 46%,
      rgba(255,139,28,.72) 48.1%,
      rgba(255,230,185,.26) 48.55%,
      rgba(255,90,0,.11) 49.1%,
      transparent 52%),
    repeating-linear-gradient(90deg,
      transparent 0 88px,
      rgba(255,255,255,.018) 89px,
      transparent 90px)!important;
  filter:blur(.25px)!important;
  transform-origin:center!important;
  animation:dfFutureEnergy 16s cubic-bezier(.45,0,.55,1) infinite alternate!important;
}

/* Movimiento orgánico y lento, estilo interfaz futurista */
@keyframes dfFutureAtmosphere{
  0%{transform:scale(1.02) rotate(-1deg);background-position:0% 10%,100% 90%,45% 45%,0 0}
  45%{transform:scale(1.07) rotate(.4deg);background-position:46% 34%,62% 62%,60% 54%,0 0}
  100%{transform:scale(1.035) rotate(1.2deg);background-position:100% 74%,0% 20%,38% 66%,0 0}
}
@keyframes dfFutureEnergy{
  0%{transform:translate3d(-7%,-4%,0) rotate(-3deg) scale(1.02)}
  35%{transform:translate3d(-1%,2%,0) rotate(-.6deg) scale(1.06)}
  70%{transform:translate3d(4%,-1%,0) rotate(1.2deg) scale(1.035)}
  100%{transform:translate3d(8%,3%,0) rotate(3deg) scale(1.07)}
}

/* Micro-retícula técnica/holográfica muy sutil en páginas 2+ */
#nosotros:after,#servicios:after,#proyectos:after,#proceso:after,
#produccion:after,#sostenibilidad:after,#contacto:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:-1;
  opacity:.13;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(to bottom,transparent,black 18%,black 82%,transparent);
}

/* Primera página: se conserva tal cual */
html,body{background:#050505!important}
#inicio.hero{
  position:relative!important;
  z-index:10!important;
}
#inicio.hero img{
  position:relative!important;
  z-index:10!important;
  display:block!important;
}

/* El contenido queda limpio por encima del fondo */
#nosotros,#servicios,#proyectos,#proceso,#produccion,#sostenibilidad,#contacto,.statement{
  position:relative!important;
  z-index:1!important;
}

/* Tarjetas: cristal tecnológico muy sutil */
.services-motion .cards article{
  background:
    linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.014))!important;
  border:1px solid rgba(255,150,70,.13)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 18px 55px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(10px);
}

/* Mantener intacto el folio del boceto */
.about-v2 .stand-card:first-child{background:transparent!important}
.about-v2 .stand-card:first-child img{background:transparent!important}

@media(prefers-reduced-motion:reduce){
  body::before,body::after{animation:none!important}
}

/* =========================================================
   PÁGINA 5 / CÓMO TRABAJAMOS
   Recuadros con el mismo lenguaje visual y movimiento
   que las tarjetas de SERVICIOS (página 3)
   ========================================================= */
#proceso .timeline{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
  perspective:1200px;
}

#proceso .timeline>div{
  position:relative!important;
  min-height:230px!important;
  padding:32px 28px 30px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.025))!important;
  border:1px solid rgba(255,255,255,.12)!important;
  backdrop-filter:blur(15px);
  -webkit-backdrop-filter:blur(15px);
  overflow:hidden!important;
  transform-style:preserve-3d;
  animation:processFloat 5.4s ease-in-out infinite!important;
  transition:transform .28s ease,border-color .28s ease,background .28s ease,box-shadow .28s ease!important;
}

#proceso .timeline>div:nth-child(2){animation-delay:-.65s!important}
#proceso .timeline>div:nth-child(3){animation-delay:-1.3s!important}
#proceso .timeline>div:nth-child(4){animation-delay:-1.95s!important}
#proceso .timeline>div:nth-child(5){animation-delay:-2.6s!important}
#proceso .timeline>div:nth-child(6){animation-delay:-3.25s!important}
#proceso .timeline>div:nth-child(7){animation-delay:-3.9s!important}
#proceso .timeline>div:nth-child(8){animation-delay:-4.55s!important}

@keyframes processFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-7px)}
}

#proceso .timeline>div:before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 85% 12%,rgba(255,95,0,.18),transparent 34%);
  opacity:0;
  transition:opacity .35s ease;
  pointer-events:none;
}

#proceso .timeline>div:after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:3px;
  background:linear-gradient(90deg,#ff4f00,#ff8a00,transparent);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .4s ease;
  box-shadow:0 0 16px rgba(255,91,0,.7);
}

#proceso .timeline>div:hover{
  transform:translateY(-10px) scale(1.015)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,87,0,.035))!important;
  border-color:rgba(255,99,0,.55)!important;
  box-shadow:0 30px 70px rgba(0,0,0,.42),0 0 0 1px rgba(255,91,0,.08)!important;
  animation-play-state:paused!important;
}
#proceso .timeline>div:hover:before{opacity:1}
#proceso .timeline>div:hover:after{transform:scaleX(1)}

#proceso .timeline>div>b{
  display:inline-flex!important;
  width:44px!important;
  height:44px!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid rgba(255,91,0,.6)!important;
  border-radius:50%!important;
  color:#ff6500!important;
  font-size:14px!important;
  font-weight:700!important;
  margin-bottom:30px!important;
  position:relative;
  z-index:1;
}
#proceso .timeline>div h3{
  color:#fff!important;
  font-size:clamp(19px,1.45vw,25px)!important;
  margin:0 0 13px!important;
  position:relative;
  z-index:1;
}
#proceso .timeline>div p{
  color:rgba(255,255,255,.70)!important;
  line-height:1.6!important;
  margin:0!important;
  position:relative;
  z-index:1;
}

@media(max-width:1050px){
  #proceso .timeline{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px){
  #proceso .timeline{grid-template-columns:1fr!important}
  #proceso .timeline>div{min-height:210px!important}
}
@media(prefers-reduced-motion:reduce){
  #proceso .timeline>div{animation:none!important}
}

/* PORTFOLIO — presentación tipo diapositiva */
#proyectos .portfolio-slider-shell{position:relative;width:100%;overflow:hidden}
#proyectos .portfolio-slider-track{
  display:flex!important;
  grid-template-columns:none!important;
  gap:22px!important;
  overflow-x:auto!important;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  padding:10px 2px 34px!important;
}
#proyectos .portfolio-slider-track::-webkit-scrollbar{display:none}
#proyectos .portfolio-slider-track>*{
  flex:0 0 min(78vw,980px)!important;
  scroll-snap-align:center;
  position:relative;
  transition:transform .45s ease,opacity .45s ease,filter .45s ease;
}
#proyectos .portfolio-slider-track img{
  width:100%!important;
  height:clamp(360px,55vw,650px)!important;
  object-fit:cover!important;
  display:block;
}
#proyectos .portfolio-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:20;
  width:54px;height:54px;border-radius:50%;
  border:1px solid rgba(255,255,255,.24);
  background:rgba(5,5,5,.58);
  color:#fff;font-size:36px;line-height:1;
  cursor:pointer;backdrop-filter:blur(10px);
  transition:.25s ease;
}
#proyectos .portfolio-arrow:hover{background:#ff6500;border-color:#ff6500;transform:translateY(-50%) scale(1.08)}
#proyectos .portfolio-prev{left:18px}
#proyectos .portfolio-next{right:18px}
#proyectos .portfolio-dots{display:flex;justify-content:center;gap:8px;margin-top:2px}
#proyectos .portfolio-dot{width:28px;height:3px;border:0;background:rgba(255,255,255,.22);padding:0;cursor:pointer;transition:.25s}
#proyectos .portfolio-dot.active{background:#ff6500;width:46px}
@media(max-width:700px){
 #proyectos .portfolio-slider-track>*{flex-basis:90vw!important}
 #proyectos .portfolio-slider-track img{height:360px!important}
 #proyectos .portfolio-arrow{width:44px;height:44px;font-size:30px}
}

/* PORTFOLIO FINAL — una única imagen grande centrada, cambio automático */
#proyectos .portfolio-slider-shell{
  position:relative!important;
  width:min(1180px,92vw)!important;
  margin:38px auto 0!important;
  overflow:hidden!important;
}
#proyectos .portfolio-slider-track{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:clamp(430px,58vw,720px)!important;
  overflow:hidden!important;
  padding:0!important;
  margin:0!important;
}
#proyectos .portfolio-slider-track>*{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:scale(1.025)!important;
  transition:opacity 1.15s ease,transform 1.6s ease,visibility 1.15s!important;
  pointer-events:none!important;
}
#proyectos .portfolio-slider-track>*.portfolio-active{
  opacity:1!important;
  visibility:visible!important;
  transform:scale(1)!important;
  pointer-events:auto!important;
  z-index:2!important;
}
#proyectos .portfolio-slider-track img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}
#proyectos .portfolio-arrow,
#proyectos .portfolio-dots{
  display:none!important;
}
@media(max-width:700px){
 #proyectos .portfolio-slider-shell{width:94vw!important}
 #proyectos .portfolio-slider-track{height:58vw!important;min-height:300px!important}
}

/* =========================================================
   PORTFOLIO AUTOMÁTICO REAL
   Una sola imagen GRANDE centrada. Cambio automático.
   ========================================================= */
#proyectos .gallery.portfolio-auto-gallery{
  display:block!important;
  position:relative!important;
  width:min(1240px,92vw)!important;
  height:clamp(500px,62vw,760px)!important;
  margin:42px auto 0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 34px 90px rgba(0,0,0,.38)!important;
  background:#080808!important;
}
#proyectos .gallery.portfolio-auto-gallery figure{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  grid-column:auto!important;
  grid-row:auto!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:scale(1.035)!important;
  transition:opacity 1.15s ease, transform 2s ease, visibility 1.15s!important;
  pointer-events:none!important;
}
#proyectos .gallery.portfolio-auto-gallery figure.auto-active{
  opacity:1!important;
  visibility:visible!important;
  transform:scale(1)!important;
  z-index:3!important;
  pointer-events:auto!important;
}
#proyectos .gallery.portfolio-auto-gallery figure img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
#proyectos .gallery.portfolio-auto-gallery figure figcaption{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:4!important;
  padding:70px 38px 30px!important;
  background:linear-gradient(transparent,rgba(0,0,0,.82))!important;
  color:#fff!important;
}
#proyectos .gallery.portfolio-auto-gallery figure figcaption b{
  display:block!important;
  font-size:clamp(18px,2vw,28px)!important;
  letter-spacing:.08em!important;
}
#proyectos .gallery.portfolio-auto-gallery figure figcaption span{
  display:block!important;
  margin-top:8px!important;
  color:rgba(255,255,255,.72)!important;
}
#proyectos .portfolio-slider-shell,
#proyectos .portfolio-arrow,
#proyectos .portfolio-dots{display:none!important}

@media(max-width:700px){
  #proyectos .gallery.portfolio-auto-gallery{
    width:94vw!important;
    height:62vw!important;
    min-height:330px!important;
  }
  #proyectos .gallery.portfolio-auto-gallery figure figcaption{
    padding:55px 22px 22px!important;
  }
}

/* 05 / PRODUCCIÓN — letrero infinito REAL de derecha a izquierda */
section.production .production-marquee{
 width:100vw!important; position:relative!important; left:50%!important;
 margin-left:-50vw!important; margin-top:38px!important;
 overflow:hidden!important; padding:24px 0!important;
 border-top:1px solid rgba(255,101,0,.45)!important;
 border-bottom:1px solid rgba(255,101,0,.45)!important;
 background:rgba(5,5,5,.38)!important; backdrop-filter:blur(8px)!important;
}
section.production .production-marquee-track{
 display:flex!important; flex-wrap:nowrap!important; width:max-content!important;
 white-space:nowrap!important; will-change:transform!important;
 animation:prodMarqueeRTL 16s linear infinite!important;
}
section.production .production-marquee-track span{
 flex:none!important; font-size:clamp(26px,2.4vw,44px)!important;
 line-height:1!important; font-weight:500!important; letter-spacing:.07em!important;
 color:#fff!important;
}
section.production .production-marquee-track b{
 color:#ff6500!important; font-weight:400!important; padding:0 .8em!important;
}
@keyframes prodMarqueeRTL{
 from{transform:translate3d(0,0,0)}
 to{transform:translate3d(-50%,0,0)}
}
@media(max-width:700px){
 section.production .production-marquee-track span{font-size:22px!important}
}

/* =========================================================
   06 / SOSTENIBILIDAD — identidad visual propia
   ========================================================= */
.sustainability-premium{
  position:relative!important;
  min-height:680px!important;
  overflow:hidden!important;
  isolation:isolate;
  padding-top:110px!important;
  padding-bottom:110px!important;
}
.sustainability-premium:before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:-2!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 76% 48%,rgba(255,112,0,.13),transparent 24%),
    radial-gradient(circle at 76% 48%,rgba(255,255,255,.055),transparent 42%),
    linear-gradient(115deg,rgba(0,0,0,.68),rgba(8,13,12,.28) 55%,rgba(0,0,0,.62))!important;
}
.sustainability-premium:after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  pointer-events:none!important;
  opacity:.20!important;
  background-image:
    linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px)!important;
  background-size:58px 58px!important;
  mask-image:linear-gradient(90deg,transparent 15%,black 55%,black 100%);
}
.sustainability-premium .sustainability-visual{
  position:absolute;
  z-index:0;
  right:7vw;
  top:50%;
  width:min(34vw,500px);
  aspect-ratio:1;
  transform:translateY(-50%);
  display:grid;
  place-items:center;
  pointer-events:none;
}
.sustainability-premium .eco-orbit{
  position:absolute;
  border:1px solid rgba(255,116,20,.40);
  border-radius:50%;
  box-shadow:0 0 30px rgba(255,92,0,.08),inset 0 0 30px rgba(255,92,0,.035);
}
.sustainability-premium .eco-orbit-a{
  inset:4%;
  border-style:dashed;
  animation:ecoRotate 24s linear infinite;
}
.sustainability-premium .eco-orbit-b{
  inset:18%;
  border-color:rgba(255,255,255,.20);
  animation:ecoRotateReverse 17s linear infinite;
}
.sustainability-premium .eco-orbit-a:before,
.sustainability-premium .eco-orbit-b:before{
  content:"";
  position:absolute;
  width:9px;height:9px;border-radius:50%;
  background:#ff6500;
  box-shadow:0 0 18px #ff6500;
  left:50%;top:-5px;
}
.sustainability-premium .eco-core{
  width:46%;
  aspect-ratio:1;
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:radial-gradient(circle,rgba(255,112,0,.15),rgba(0,0,0,.38) 68%);
  border:1px solid rgba(255,255,255,.16);
  backdrop-filter:blur(10px);
  box-shadow:0 0 65px rgba(255,91,0,.12);
}
.sustainability-premium .eco-leaf{
  color:#ff6500;
  font-size:72px;
  line-height:.8;
  transform:rotate(45deg);
  text-shadow:0 0 25px rgba(255,91,0,.45);
}
.sustainability-premium .eco-core small{
  margin-top:28px;
  color:rgba(255,255,255,.72);
  font-size:9px;
  letter-spacing:.23em;
}
.sustainability-premium > *:not(.sustainability-visual){
  position:relative;
  z-index:2;
}
.sustainability-premium h2,
.sustainability-premium .kicker,
.sustainability-premium p{
  max-width:720px;
}
@keyframes ecoRotate{to{transform:rotate(360deg)}}
@keyframes ecoRotateReverse{to{transform:rotate(-360deg)}}

@media(max-width:900px){
  .sustainability-premium{min-height:auto!important}
  .sustainability-premium .sustainability-visual{
    position:relative;right:auto;top:auto;
    transform:none;width:min(72vw,420px);
    margin:50px auto 0;
  }
}
@media(prefers-reduced-motion:reduce){
  .sustainability-premium .eco-orbit{animation:none!important}
}

/* 06 / SOSTENIBILIDAD — composición más completa y con menos espacio vacío */
.sustainability-premium{
  min-height:auto!important;
  padding-top:82px!important;
  padding-bottom:72px!important;
}
.sustainability-premium .sustainability-visual{
  right:4vw!important;
  width:min(29vw,410px)!important;
}
.sustainability-premium .sustainability-modules{
  position:relative;
  z-index:3;
  width:min(1180px,88vw);
  margin:55px auto 0;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.sustainability-premium .sustainability-modules article{
  position:relative;
  min-height:185px;
  padding:25px 23px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.018));
  backdrop-filter:blur(12px);
  transition:transform .3s ease,border-color .3s ease,background .3s ease;
}
.sustainability-premium .sustainability-modules article:after{
  content:"";
  position:absolute;left:0;bottom:0;width:100%;height:2px;
  background:linear-gradient(90deg,#ff6500,transparent);
  transform:scaleX(.25);transform-origin:left;
  transition:transform .35s ease;
}
.sustainability-premium .sustainability-modules article:hover{
  transform:translateY(-7px);
  border-color:rgba(255,101,0,.45);
  background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,101,0,.035));
}
.sustainability-premium .sustainability-modules article:hover:after{transform:scaleX(1)}
.sustainability-premium .sustainability-modules span{
  color:#ff6500;font-size:11px;letter-spacing:.18em;
}
.sustainability-premium .sustainability-modules h3{
  margin:28px 0 10px!important;
  font-size:18px!important;letter-spacing:.09em!important;color:#fff!important;
}
.sustainability-premium .sustainability-modules p{
  margin:0!important;font-size:12px!important;line-height:1.6!important;
  color:rgba(255,255,255,.62)!important;
}
.sustainability-premium .sustainability-line{
  position:relative;z-index:3;
  width:min(1180px,88vw);margin:16px auto 0;
  padding:16px 20px;
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  border:1px solid rgba(255,101,0,.20);
  background:rgba(5,5,5,.30);
  backdrop-filter:blur(8px);
}
.sustainability-premium .sustainability-line span{
  white-space:nowrap;font-size:9px;letter-spacing:.17em;color:rgba(255,255,255,.67);
}
.sustainability-premium .sustainability-line i{
  flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(255,101,0,.6),transparent);
}
@media(max-width:900px){
 .sustainability-premium .sustainability-modules{grid-template-columns:repeat(2,1fr)}
 .sustainability-premium .sustainability-visual{width:min(60vw,360px)!important}
}
@media(max-width:560px){
 .sustainability-premium .sustainability-modules{grid-template-columns:1fr}
 .sustainability-premium .sustainability-line{flex-wrap:wrap;justify-content:center}
 .sustainability-premium .sustainability-line i{display:none}
}

/* 06 / SOSTENIBILIDAD — centrado definitivo de los 4 rectángulos */
.sustainability-premium .sustainability-modules{
  box-sizing:border-box!important;
  width:calc(100% - 80px)!important;
  max-width:1180px!important;
  margin:55px auto 0!important;
  padding:0!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.sustainability-premium .sustainability-modules article{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
}
.sustainability-premium .sustainability-line{
  box-sizing:border-box!important;
  width:calc(100% - 80px)!important;
  max-width:1180px!important;
  margin:16px auto 0!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
}
@media(max-width:900px){
  .sustainability-premium .sustainability-modules,
  .sustainability-premium .sustainability-line{
    width:calc(100% - 48px)!important;
  }
  .sustainability-premium .sustainability-modules{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:560px){
  .sustainability-premium .sustainability-modules,
  .sustainability-premium .sustainability-line{
    width:calc(100% - 30px)!important;
  }
  .sustainability-premium .sustainability-modules{
    grid-template-columns:1fr!important;
  }
}

/* 07 / HABLEMOS — cierre premium, sólido y memorable */
#contacto.contact-premium{
 position:relative!important; overflow:hidden!important; isolation:isolate;
 min-height:760px!important; padding-top:95px!important; padding-bottom:80px!important;
 background:
   radial-gradient(circle at 78% 28%,rgba(255,101,0,.14),transparent 27%),
   linear-gradient(120deg,rgba(0,0,0,.92),rgba(7,10,12,.76) 58%,rgba(0,0,0,.96))!important;
}
#contacto.contact-premium:before{
 content:""; position:absolute; inset:0; z-index:-2; opacity:.20;
 background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),
 linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);
 background-size:58px 58px;
 mask-image:linear-gradient(90deg,black,transparent 85%);
}
#contacto .contact-glow{
 position:absolute; right:-100px; top:50%; width:500px; height:500px;
 border:1px solid rgba(255,101,0,.28); border-radius:50%;
 transform:translateY(-50%); box-shadow:0 0 100px rgba(255,101,0,.08);
 pointer-events:none;
}
#contacto .contact-glow:before,#contacto .contact-glow:after{
 content:""; position:absolute; border-radius:50%; border:1px solid rgba(255,255,255,.09);
}
#contacto .contact-glow:before{inset:70px}
#contacto .contact-glow:after{inset:145px;border-color:rgba(255,101,0,.24)}
#contacto .contact-copy{z-index:2!important}
#contacto .contact-intro{max-width:610px!important;color:rgba(255,255,255,.68)!important}
#contacto .trust-grid{
 display:grid; grid-template-columns:repeat(3,1fr); gap:10px;
 width:min(690px,100%); margin-top:36px;
}
#contacto .trust-grid div{
 min-height:112px; padding:20px; border:1px solid rgba(255,255,255,.12);
 background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.015));
 backdrop-filter:blur(10px); transition:.3s ease;
}
#contacto .trust-grid div:hover{transform:translateY(-5px);border-color:rgba(255,101,0,.48)}
#contacto .trust-grid b{display:block;color:#ff6500;font-size:27px;font-weight:500}
#contacto .trust-grid span{display:block;margin-top:13px;font-size:9px;letter-spacing:.15em;color:rgba(255,255,255,.72)}
#contacto .contact-promise{
 display:flex;align-items:center;gap:14px;width:min(690px,100%);margin-top:13px;
 padding:13px 16px;border:1px solid rgba(255,101,0,.20);background:rgba(0,0,0,.25);
}
#contacto .contact-promise i{width:8px;height:8px;border-radius:50%;background:#ff6500;box-shadow:0 0 15px #ff6500}
#contacto .contact-promise span{font-size:9px;letter-spacing:.17em;color:rgba(255,255,255,.68)}
#contacto .contact-logo{width:min(340px,68%)!important;margin:38px 0 0!important;align-self:flex-start!important}
#contacto .contact-box{
 position:relative!important; z-index:3!important; overflow:hidden!important;
 padding:34px!important; border:1px solid rgba(255,255,255,.16)!important;
 background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(5,5,5,.50))!important;
 backdrop-filter:blur(18px)!important; box-shadow:0 28px 80px rgba(0,0,0,.34)!important;
}
#contacto .contact-box:before{
 content:"";position:absolute;left:0;top:0;width:100%;height:3px;
 background:linear-gradient(90deg,#ff6500,rgba(255,101,0,.15),transparent);
}
#contacto .contact-box-head{margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.10)}
#contacto .contact-box-head span{display:block;font-size:18px;letter-spacing:.08em;color:#fff}
#contacto .contact-box-head i{display:block;margin-top:8px;font-style:normal;font-size:8px;letter-spacing:.17em;color:#ff6500}
#contacto .contact-box a{transition:padding-left .25s ease,color .25s ease!important}
#contacto .contact-box a:hover{padding-left:8px!important;color:#ff6500!important}
#contacto .contact-cta{
 margin-top:30px;padding:17px 18px;border:1px solid #ff6500;
 display:flex;justify-content:space-between;align-items:center;
 color:#fff;font-size:10px;letter-spacing:.16em;background:rgba(255,101,0,.07);
}
#contacto .contact-cta span{font-size:20px;color:#ff6500}
@media(max-width:900px){
 #contacto.contact-premium{min-height:auto!important}
 #contacto .trust-grid{grid-template-columns:1fr}
 #contacto .contact-logo{margin-left:auto!important;margin-right:auto!important}
}

/* 07 / HABLEMOS — Taller, oficinas y mapa */
#contacto .location-panel{
 grid-column:1/-1!important;
 width:100%!important;
 margin-top:34px!important;
 display:grid!important;
 grid-template-columns:minmax(280px,.72fr) minmax(480px,1.55fr)!important;
 min-height:330px!important;
 border:1px solid rgba(255,255,255,.14)!important;
 background:rgba(5,5,5,.44)!important;
 overflow:hidden!important;
 box-shadow:0 30px 80px rgba(0,0,0,.28)!important;
}
#contacto .location-info{
 position:relative;padding:40px 38px!important;
 display:flex;flex-direction:column;justify-content:center;
 background:linear-gradient(135deg,rgba(255,101,0,.09),rgba(255,255,255,.025));
}
#contacto .location-info:before{
 content:"";position:absolute;left:0;top:0;width:3px;height:100%;
 background:linear-gradient(#ff6500,rgba(255,101,0,.1));
}
#contacto .location-kicker{font-size:9px;letter-spacing:.23em;color:#ff6500}
#contacto .location-info h3{
 margin:18px 0 20px!important;font-size:clamp(24px,2.2vw,38px)!important;
 line-height:1.03!important;font-weight:400!important;color:#fff!important;
}
#contacto .location-info h3 strong{color:#ff6500;font-weight:500}
#contacto .location-info p{
 margin:0 0 26px!important;font-size:13px!important;line-height:1.7!important;
 color:rgba(255,255,255,.70)!important;
}
#contacto .map-link{
 width:max-content!important;padding:13px 15px!important;
 border:1px solid rgba(255,101,0,.55)!important;
 font-size:9px!important;letter-spacing:.14em!important;color:#fff!important;
 text-decoration:none!important;transition:.3s ease!important;
}
#contacto .map-link:hover{background:#ff6500!important;color:#080808!important}
#contacto .location-map{position:relative;min-height:330px;overflow:hidden;background:#111}
#contacto .location-map iframe{
 display:block;width:100%!important;height:100%!important;min-height:330px!important;
 border:0!important;filter:grayscale(1) invert(.91) contrast(.9)!important;
 opacity:.82!important;
}
#contacto .location-map:after{
 content:"";position:absolute;inset:0;pointer-events:none;
 background:linear-gradient(90deg,rgba(5,5,5,.48),transparent 28%,rgba(255,101,0,.04));
}
#contacto .map-badge{
 position:absolute;z-index:3;left:22px;bottom:20px;
 display:flex;align-items:center;gap:10px;padding:11px 14px;
 border:1px solid rgba(255,255,255,.16);background:rgba(0,0,0,.72);backdrop-filter:blur(10px);
}
#contacto .map-badge i{width:7px;height:7px;border-radius:50%;background:#ff6500;box-shadow:0 0 12px #ff6500}
#contacto .map-badge span{font-size:8px;letter-spacing:.17em;color:#fff}
@media(max-width:900px){
 #contacto .location-panel{grid-template-columns:1fr!important}
 #contacto .location-map{min-height:300px}
}

#contacto .address-main{display:block;color:#fff;font-weight:500;line-height:1.65}
#contacto .address-reference{
 display:block;margin-top:15px;padding:11px 13px;
 border-left:2px solid #ff6500;background:rgba(255,101,0,.07);
 color:rgba(255,255,255,.72);font-size:9px;line-height:1.55;letter-spacing:.12em;
}

/* Icono de ubicación — Taller & Oficinas */
#contacto .address-main{
  display:flex!important;
  align-items:flex-start!important;
  gap:15px!important;
}
#contacto .location-pin{
  position:relative!important;
  flex:0 0 28px!important;
  width:28px!important;
  height:28px!important;
  margin-top:2px!important;
  border:1px solid rgba(255,101,0,.75)!important;
  border-radius:50% 50% 50% 0!important;
  transform:rotate(-45deg)!important;
  color:transparent!important;
  background:rgba(255,101,0,.10)!important;
  box-shadow:0 0 20px rgba(255,101,0,.22)!important;
}
#contacto .location-pin:after{
  content:""!important;
  position:absolute!important;
  width:7px!important;
  height:7px!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  border-radius:50%!important;
  background:#ff6500!important;
  box-shadow:0 0 10px #ff6500!important;
}

/* Marcador visible DOS FORMA dentro del mapa */
#contacto .dosforma-map-marker{
  position:absolute!important;
  z-index:8!important;
  left:52%!important;
  top:48%!important;
  transform:translate(-50%,-100%)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  pointer-events:none!important;
  filter:drop-shadow(0 8px 16px rgba(0,0,0,.65))!important;
}
#contacto .dosforma-map-pin{
  position:relative!important;
  width:42px!important;
  height:42px!important;
  border-radius:50% 50% 50% 0!important;
  transform:rotate(-45deg)!important;
  background:#ff6500!important;
  border:3px solid #fff!important;
  box-shadow:0 0 0 6px rgba(255,101,0,.18),0 0 28px rgba(255,101,0,.60)!important;
  animation:dosformaPinPulse 2s ease-in-out infinite!important;
}
#contacto .dosforma-map-pin span{
  position:absolute!important;
  width:11px!important;
  height:11px!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  border-radius:50%!important;
  background:#fff!important;
}
#contacto .dosforma-map-marker strong{
  margin-top:13px!important;
  padding:7px 12px 3px!important;
  background:rgba(0,0,0,.88)!important;
  border:1px solid rgba(255,101,0,.75)!important;
  color:#fff!important;
  font-size:12px!important;
  line-height:1!important;
  letter-spacing:.13em!important;
  white-space:nowrap!important;
}
#contacto .dosforma-map-marker small{
  padding:4px 10px 6px!important;
  background:rgba(0,0,0,.88)!important;
  color:#ff6500!important;
  font-size:7px!important;
  letter-spacing:.16em!important;
  white-space:nowrap!important;
}
@keyframes dosformaPinPulse{
  0%,100%{box-shadow:0 0 0 5px rgba(255,101,0,.14),0 0 22px rgba(255,101,0,.45)}
  50%{box-shadow:0 0 0 11px rgba(255,101,0,.04),0 0 36px rgba(255,101,0,.75)}
}

.seo-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
