:root{
  --navy:#050B1B; --navy-deep:#03060F; --gold:#BAF461; --gold-soft:#BAF461; --gold-ink:#050B1B;
  --paper:#F2EEE7; --surface:#FFFFFF; --ink:#1A2236; --muted:#5A6476; --line:#E0D7C9;
  --on-navy:#F4EFE7; --on-navy-muted:#B6BFD0; --hdr-solid:#FFFFFF; --sec-white:#FFFFFF; --sec-gray:#F3F3F1;
  --detail:"Raleway",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --display:"Work Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --sans:"Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --wrap:1240px; --gut:clamp(1.25rem,4vw,3rem); --hh:84px; --tb:40px; --tb-bg:#FFFFFF; --tb-ink:#3A4356; --tb-line:#E6E1D8;
  color-scheme:light;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px); padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (max-width:900px){:root{--hh:68px;--tb:34px}}
*,*::before,*::after{box-sizing:inherit}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--hh) + env(safe-area-inset-top,0px));-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.75 var(--sans);-webkit-font-smoothing:antialiased;font-variant-numeric:lining-nums}
img,svg,video{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.12;margin:0;letter-spacing:-.02em}
h2{font-size:clamp(2rem,4.2vw,3.1rem)}
h3{font-size:1.25rem;font-weight:500;letter-spacing:-.01em}
p{margin:0 0 1rem}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.skip{position:absolute;left:1rem;top:-3rem;background:var(--gold);color:#fff;padding:.6rem 1rem;z-index:100;border-radius:2px}
.skip:focus{top:1rem}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
section{padding:clamp(4rem,9vw,7.5rem) 0}
.lead{font-size:1.1rem;color:var(--muted);max-width:60ch}
.kicker{font-family:var(--display);font-style:italic;color:var(--gold);font-size:1.1rem;margin-bottom:.75rem;display:block}
.more{display:inline-block;margin-top:2.5rem;font-weight:500;color:var(--gold);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.more:hover{color:var(--ink)}

/* Botones */
.btn{display:inline-flex;align-items:center;gap:.6rem;padding:.95rem 1.5rem;border-radius:2px;font:700 .82rem/1 var(--detail);letter-spacing:.07em;text-transform:uppercase;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.btn svg{width:18px;height:18px;flex:none}
.btn-gold{background:var(--gold);color:var(--navy)}
.btn-gold:hover{background:#75AF00}
.btn-wa{background:#25D366;color:#fff}
.btn-wa:hover{background:#1EBE5D}
.btn-line{border-color:rgba(244,239,231,.55);color:#fff}
.btn-line:hover{background:rgba(255,255,255,.1)}

/* ---------- Header: vidrio sobre el video, sólido después ---------- */
.masthead{position:fixed;top:0;left:0;right:0;z-index:50;padding-top:env(safe-area-inset-top,0px);transition:transform .35s ease}
.masthead.up{transform:translateY(calc(-1 * var(--tb)))}
.topbar{height:var(--tb);background:var(--tb-bg);color:var(--tb-ink);border-bottom:1px solid var(--tb-line);font:300 .76rem/1 var(--detail);letter-spacing:.02em}
.topbar-in{height:100%;display:flex;justify-content:center;align-items:center;padding:0 var(--gut)}
.topbar a{text-decoration:none;font-weight:500;letter-spacing:.04em}
.topbar a:hover{text-decoration:underline;text-underline-offset:3px}
.hdr{position:relative;color:#fff;
  background:rgba(5,11,27,.22);-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%);
  border-bottom:1px solid rgba(255,255,255,.14);transition:background .35s,color .35s,box-shadow .35s,border-color .35s}
.hdr.solid{background:var(--hdr-solid);color:var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom-color:transparent;box-shadow:0 10px 30px -18px rgba(5,11,27,.35)}
.hdr-in{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:var(--hh);padding:0 var(--gut)}
.brand{justify-self:start}
.hdr-cta{justify-self:end}
.nav-cta-m{display:none!important}
.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:inherit}
.brand svg{width:44px;height:44px}
.brand b{font:500 1.4rem/1 var(--display);letter-spacing:.08em;display:block}
.brand small{font-size:.72rem;color:var(--gold-soft);letter-spacing:.02em}
.hdr.solid .brand small{color:var(--gold)}
.nav{display:flex;align-items:center;gap:clamp(2rem,4vw,3.75rem)}
.nav a:not(.btn){text-decoration:none;font-size:.95rem;font-weight:550;position:relative;padding:.3rem 0;opacity:.88}
.nav a:not(.btn){transition:color .2s,opacity .2s}
.nav a:not(.btn):hover{opacity:1;color:var(--gold)}
.hdr.solid .nav a:not(.btn):hover{color:#75AF00}
.nav a[aria-current="page"]{opacity:1}
.nav a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1.5px;background:var(--gold-soft)}
.hdr.solid .nav a[aria-current="page"]::after{background:var(--gold)}
.nav .btn{padding:.85rem 1.4rem}
.nav-cta{text-transform:uppercase;letter-spacing:.08em;font-size:.82rem!important}
.menu-btn{display:none;align-items:center;gap:.6rem;background:none;border:0;color:inherit;padding:.5rem 0;cursor:pointer;font:500 .85rem/1 var(--sans);letter-spacing:.04em}
.menu-btn svg{width:30px;height:30px}
@media (max-width:900px){
  .brand svg{width:38px;height:38px}.brand b{font-size:1.2rem}
  .menu-btn{display:flex;justify-self:end}
  .hdr-in{display:flex;justify-content:space-between}
  .hdr-cta{display:none!important}
  .nav .nav-cta-m{display:inline-flex!important}
  .nav{position:fixed;left:0;right:0;top:calc(env(safe-area-inset-top,0px) + var(--tb) + var(--hh));height:calc(100dvh - var(--hh) - env(safe-area-inset-top,0px));flex-direction:column;align-items:stretch;gap:0;background:var(--navy-deep);color:var(--on-navy);padding:1rem var(--gut) calc(2rem + env(safe-area-inset-bottom,0px));opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .2s,transform .2s,visibility .2s;overflow-y:auto}
  .nav.open{opacity:1;visibility:visible;transform:none}
  .nav a:not(.btn){font:400 2rem/1.2 var(--display);padding:1.1rem 0;border-bottom:1px solid rgba(255,255,255,.12);opacity:1}
  .nav a[aria-current="page"]{color:var(--gold-soft)}
  .nav a[aria-current="page"]::after{display:none}
  .nav .btn{margin-top:2rem;justify-content:center;padding:1.1rem}
  .hdr.menu-open{background:var(--navy-deep);color:var(--on-navy);-webkit-backdrop-filter:none;backdrop-filter:none}
}

/* ---------- Hero con video (Inicio) ---------- */
.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:flex-end;color:#fff;background:var(--navy-deep);overflow:hidden;padding:calc(var(--hh) + var(--tb) + 4rem) 0 clamp(5rem,11vw,9.5rem)}
.hero-media{position:absolute;inset:0}
.hero-media video{width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,11,27,.6) 0%,rgba(5,11,27,.15) 65%,rgba(5,11,27,0) 100%),linear-gradient(180deg,rgba(5,11,27,.5) 0%,rgba(5,11,27,.2) 35%,rgba(5,11,27,.85) 100%);pointer-events:none}
.video-ph{position:absolute;inset:0;background:
  radial-gradient(60% 70% at 78% 30%,rgba(255,255,255,.06),transparent 60%),
  radial-gradient(50% 60% at 15% 85%,rgba(40,60,110,.38),transparent 65%),
  
  repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 1px,transparent 1px 120px),
  repeating-linear-gradient(0deg,rgba(255,255,255,.04) 0 1px,transparent 1px 120px),
  linear-gradient(135deg,#131D36,#050B1B 70%);background-size:140% 140%,140% 140%,auto,auto,auto}
.video-ph span{position:absolute;right:var(--gut);top:calc(var(--hh) + var(--tb) + 1.5rem);z-index:2;font-size:.8rem;padding:.45rem .8rem;border:1px dashed rgba(255,255,255,.45);border-radius:2px;color:rgba(255,255,255,.8)}
@media (prefers-reduced-motion:no-preference){
  .video-ph{animation:drift 18s ease-in-out infinite alternate}
  @keyframes drift{to{background-position:100% 60%,0% 30%,0 0,0 0,0 0}}
}
.hero-in{position:relative;z-index:1;width:100%}
.hero .kicker{color:var(--gold-soft);font-size:1.2rem}
.hero h1{font-size:clamp(2.3rem,4.8vw,4.5rem);font-weight:500;line-height:.98;letter-spacing:-.025em;max-width:25ch;text-wrap:balance;margin-bottom:clamp(1.5rem,3vw,2.5rem)}
.hero-row{display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem 2rem}
.hero-row p{margin:0;font-size:clamp(1.05rem,1.6vw,1.3rem);max-width:44ch;color:rgba(255,255,255,.88)}
.hero-row .btns{display:flex;flex-wrap:wrap;gap:.75rem}

/* ---------- Encabezado de páginas internas ---------- */
.page-hero{background:var(--navy);color:var(--on-navy);padding:calc(var(--hh) + var(--tb) + clamp(3.5rem,8vw,6rem)) 0 clamp(3rem,7vw,5rem);position:relative;overflow:hidden}
.page-hero::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 120px);pointer-events:none}
.page-hero .wrap{position:relative}
.crumbs{list-style:none;margin:0 0 1.75rem;padding:0;display:flex;gap:.5rem;font-size:.88rem;color:var(--on-navy-muted)}
.crumbs li+li::before{content:"/";margin-right:.5rem;opacity:.5}
.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--gold-soft)}
.page-hero h1{font-size:clamp(2.6rem,6.5vw,5.4rem);font-weight:300;letter-spacing:-.02em;max-width:18ch;text-wrap:balance;margin-bottom:1.25rem}
.page-hero .lead{color:var(--on-navy-muted)}

/* Para quién */
.who{padding:1.6rem 0;background:var(--surface);border-bottom:1px solid var(--line)}
.who .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 2.5rem}
.who span{font-family:var(--display);font-style:italic;color:var(--gold)}
.who ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem 2rem;color:var(--muted);font-weight:400;font-size:.95rem}

/* Dos columnas texto */
.split .wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:start}
.split h2{font-size:clamp(2.2rem,4.8vw,3.4rem)}
.split p{color:var(--muted);max-width:56ch}
.split p.first{color:var(--ink);font-size:1.15rem}
@media (max-width:820px){.split .wrap{grid-template-columns:1fr}}

/* Misión estilo editorial */
.mission .wrap{display:grid;grid-template-columns:2fr 1fr;border-right:0}
.mission .txt{padding-right:clamp(1.5rem,5vw,4rem);border-right:1px solid var(--line)}
.mission p.big{font:400 clamp(1.6rem,3.2vw,2.5rem)/1.3 var(--display);color:var(--ink);margin:0 0 1.5rem;max-width:34ch}
.mission aside{padding-left:clamp(1.5rem,4vw,3rem);align-self:end;color:var(--muted);font-size:.98rem}
@media (max-width:820px){.mission .wrap{grid-template-columns:1fr}.mission .txt{border-right:0;padding-right:0}.mission aside{padding:2rem 0 0;border-top:1px solid var(--line);margin-top:1rem}}

/* Servicios: grid */
.services{background:var(--surface)}
.sec-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:3rem;flex-wrap:wrap}
.sec-head .lead{margin:0;max-width:46ch}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.svc{padding:2.25rem 2rem 2rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.ico{width:40px;height:40px;stroke:var(--gold);fill:none;stroke-width:1.3;margin-bottom:1.4rem}
.svc h3{margin-bottom:.7rem}
.svc p{color:var(--muted);font-size:.98rem;margin:0}
@media (max-width:960px){.svc-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.svc-grid{grid-template-columns:1fr}.svc{padding:1.75rem 1.4rem}}

/* Servicios: detalle */
.svc-rows{border-top:1px solid var(--line)}
.svc-row{display:grid;grid-template-columns:auto 1fr 1fr;gap:clamp(1.25rem,4vw,3.5rem);padding:clamp(2rem,4vw,3rem) 0;border-bottom:1px solid var(--line);align-items:start}
.svc-row .ico{margin:0}
.svc-row h2{font-size:clamp(1.6rem,2.8vw,2.1rem);margin-bottom:.8rem}
.svc-row p{color:var(--muted);margin:0}
.svc-row h3{font:500 .9rem/1 var(--sans);color:var(--ink);margin-bottom:.9rem}
.svc-row ul{margin:0;padding:0;list-style:none;display:grid;gap:.5rem}
.svc-row li{color:var(--muted);font-size:.98rem;padding-left:1.2rem;position:relative}
.svc-row li::before{content:"";position:absolute;left:0;top:.7em;width:8px;height:1px;background:var(--gold)}
@media (max-width:820px){.svc-row{grid-template-columns:1fr}}

/* Proceso */
.process{background:var(--navy);color:var(--on-navy)}
.steps{list-style:none;margin:3.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;counter-reset:s}
.steps li{position:relative;padding-top:3.6rem;counter-increment:s}
.steps li::before{content:counter(s);position:absolute;top:0;left:0;width:2.6rem;height:2.6rem;border:1px solid var(--gold-soft);border-radius:50%;display:grid;place-items:center;font:500 1.1rem/1 var(--display);color:var(--gold-soft);background:var(--navy)}
.steps li::after{content:"";position:absolute;top:1.3rem;left:3.2rem;right:-1.4rem;height:1px;background:rgba(255,255,255,.18)}
.steps li:last-child::after{display:none}
.steps h3{margin-bottom:.6rem}
.steps p{color:var(--on-navy-muted);font-size:.97rem;margin:0}
@media (max-width:900px){.steps{grid-template-columns:1fr 1fr;row-gap:2.75rem}.steps li:nth-child(2)::after{display:none}}
@media (max-width:560px){
  .steps{grid-template-columns:1fr}
  .steps li{padding:0 0 0 4rem}
  .steps li::after{display:block;top:3rem;bottom:-2.2rem;left:1.3rem;right:auto;width:1px;height:auto}
  .steps li:last-child::after{display:none}
}

/* Antes / después */
.work .wrap{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.ba{position:relative;border-radius:2px;overflow:hidden;--pos:50%;user-select:none;box-shadow:0 30px 60px -30px rgba(5,11,27,.45);background:#e9e2d6}
.ba svg{width:100%;height:auto}
.ba .before{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--pos)) 0 0)}
.ba input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
.ba .handle{position:absolute;top:0;bottom:0;left:var(--pos);width:2px;background:#fff;transform:translateX(-1px);pointer-events:none}
.ba .handle::after{content:"";position:absolute;top:50%;left:50%;width:44px;height:44px;transform:translate(-50%,-50%);border-radius:50%;background:var(--gold);border:2px solid #fff;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.ba .handle svg{position:absolute;top:50%;left:50%;width:22px;height:22px;transform:translate(-50%,-50%);z-index:1;stroke:#fff;fill:none;stroke-width:2}
.ba input:focus-visible ~ .handle::after{outline:3px solid var(--navy);outline-offset:2px}
.tag{position:absolute;top:1rem;padding:.35rem .7rem;font-size:.8rem;font-weight:500;border-radius:2px;pointer-events:none}
.tag.l{left:1rem;background:rgba(5,11,27,.8);color:#fff}
.tag.r{right:1rem;background:rgba(255,255,255,.92);color:#050B1B}
.work ul{list-style:none;padding:0;margin:1.5rem 0 2rem}
.work li{padding:.7rem 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:.98rem}
.work li strong{color:var(--ink);font-weight:400}
@media (max-width:900px){.work .wrap{grid-template-columns:1fr}}

/* Lista de atributos (por qué / valores) */
.why{background:var(--surface)}
.why .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,5rem)}
.why .sticky{position:sticky;top:calc(var(--hh) + 2rem);align-self:start}
.why .sticky .lead{margin-top:1.25rem}
.attrs{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:2.5rem}
.attrs dt{font:500 1.25rem/1.25 var(--display);margin-bottom:.5rem;padding-top:1rem;border-top:2px solid var(--gold)}
.attrs dd{margin:0;color:var(--muted);font-size:.98rem}
@media (max-width:860px){.why .wrap{grid-template-columns:1fr}.why .sticky{position:static}}
@media (max-width:560px){.attrs{grid-template-columns:1fr;gap:2rem}}

/* Para quién (detalle) */
.aud{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--line);margin-top:3rem}
.aud div{padding:2rem 2rem 2rem 0;border-bottom:1px solid var(--line)}
.aud div:nth-child(odd){border-right:1px solid var(--line)}
.aud div:nth-child(even){padding-left:2rem}
.aud h3{margin-bottom:.5rem}
.aud p{color:var(--muted);margin:0;font-size:.98rem}
@media (max-width:700px){.aud{grid-template-columns:1fr}.aud div,.aud div:nth-child(even){padding:1.75rem 0;border-right:0}}

/* Cobertura */
.zone .wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:center}
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.chips li{padding:.45rem .85rem;border:1px solid var(--line);border-radius:2px;font-size:.9rem;color:var(--muted);background:var(--surface)}
.zone .note{margin-top:1.5rem;font-size:.98rem;color:var(--muted)}
@media (max-width:860px){.zone .wrap{grid-template-columns:1fr}}

/* FAQ */
.faq{background:var(--surface)}
.faq .wrap{max-width:860px}
.faq h2{margin-bottom:2.5rem;text-align:center}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;padding:1.4rem 2.5rem 1.4rem 0;position:relative;font:500 1.15rem/1.35 var(--display)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:.4rem;top:50%;width:12px;height:12px;border-right:1.5px solid var(--gold);border-bottom:1.5px solid var(--gold);transform:translateY(-70%) rotate(45deg);transition:transform .2s}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq details p{color:var(--muted);padding:0 2.5rem 1.4rem 0;margin:0}

/* Banda CTA */
.cta{background-color:var(--navy-deep);color:var(--on-navy);text-align:center;background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 120px),repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 120px);background-position:center}
.cta h2{font-size:clamp(2.2rem,5vw,3.6rem);font-weight:700;margin-bottom:clamp(2rem,4vw,2.75rem)}
.cta .btns{display:inline-grid;grid-template-columns:1fr 1fr;gap:.75rem}
@media (max-width:600px){.cta .btns{display:grid;grid-template-columns:1fr;width:100%;max-width:360px;margin:0 auto}}
.cta .btns .btn{justify-content:center;padding:1.45rem 1.25rem}


/* Contacto */
.contact .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,6vw,5rem);align-items:start}
.direct{list-style:none;padding:0;margin:0 0 2.5rem}
.direct li{padding:1.1rem 0;border-bottom:1px solid var(--line)}
.direct small{display:block;color:var(--gold);font-size:.85rem;margin-bottom:.15rem}
.direct a,.direct span{text-decoration:none;font:500 1.35rem/1.3 var(--display)}
.direct a:hover{color:var(--gold)}
.need h2{font-size:1.5rem;margin-bottom:1rem}
.need ol{margin:0;padding-left:1.2rem;color:var(--muted);display:grid;gap:.4rem}
.form{background:var(--surface);border:1px solid var(--line);padding:clamp(1.5rem,4vw,2.5rem);border-radius:2px;display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}
.form h2{grid-column:1/-1;font-size:1.7rem;margin-bottom:.25rem}
.field{display:flex;flex-direction:column;gap:.35rem}
.field.full{grid-column:1/-1}
.field label{font-size:.85rem;font-weight:500}
.field input,.field select,.field textarea{font:inherit;font-size:1rem;padding:.8rem .9rem;border:1px solid var(--line);border-radius:2px;background:var(--paper);color:var(--ink);width:100%}
.field textarea{min-height:110px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}
.form .btn{grid-column:1/-1;justify-content:center;padding:1.05rem}
.form .hint{grid-column:1/-1;font-size:.85rem;color:var(--muted);margin:0;text-align:center}
.form .err{grid-column:1/-1;color:#B3402F;font-size:.9rem;margin:0;display:none}
@media (max-width:860px){.contact .wrap{grid-template-columns:1fr}}
@media (max-width:520px){.form{grid-template-columns:1fr}}

/* Footer */
.ftr{background:#07112A;color:var(--on-navy-muted);padding:clamp(5rem,9vw,7.5rem) 0 1.1rem;font-size:.93rem}
.ftr .top{display:grid;grid-template-columns:minmax(260px,360px) 1fr;gap:3rem;padding-bottom:clamp(5rem,10vw,8rem);border-bottom:1px solid rgba(255,255,255,.1)}
.ftr .brand{color:var(--on-navy);margin-bottom:1rem}
.ftr h2{color:var(--gold);font:600 .78rem/1 var(--detail);letter-spacing:.12em;margin:0 0 1.25rem}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.ftr a{text-decoration:none}.ftr a:hover{color:var(--gold-soft)}
.ftr .bottom{padding-top:1.1rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;font-size:.85rem}
@media (max-width:1180px){.ftr .top{grid-template-columns:1fr}.ftr-links{justify-content:start}.ftr .top>div:first-child{margin-top:0}}
@media (max-width:600px){.ftr-links{grid-template-columns:1fr 1fr}.ftr-links>div:last-child{grid-column:1/-1}}


@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Fondos alternos blanco / gris (Inicio) */
.bg-white{background:var(--sec-white)}
.bg-gray{background:var(--sec-gray)}
.bg-gray .ba{box-shadow:0 30px 60px -34px rgba(5,11,27,.35)}

/* Cifras con retícula técnica (líneas punteadas y cruces de plano) */
.stats{padding:clamp(3rem,6vw,4.5rem) 0}
.stats-grid{--x:var(--ink);--dash:#B4B9AE;margin:0;display:grid;grid-template-columns:repeat(4,1fr);padding:0 0 1px 1px}
.stats-grid>div{position:relative;border:1px dashed var(--dash);margin:0 0 -1px -1px;padding:clamp(2.25rem,4vw,3.5rem) clamp(1.25rem,3vw,3rem)}
.stats-grid>div::before,.stats-grid>div::after{content:"";position:absolute;left:-12px;right:-12px;pointer-events:none;
  background:
   linear-gradient(var(--x),var(--x)) 12px 0/1px 100% no-repeat,
   linear-gradient(var(--x),var(--x)) 0 12px/25px 1px no-repeat}
.stats-grid>div:nth-child(4n)::before,.stats-grid>div:nth-child(4n)::after{background:
   linear-gradient(var(--x),var(--x)) 12px 0/1px 100% no-repeat,
   linear-gradient(var(--x),var(--x)) 0 12px/25px 1px no-repeat,
   linear-gradient(var(--x),var(--x)) calc(100% - 13px) 0/1px 100% no-repeat,
   linear-gradient(var(--x),var(--x)) 100% 12px/25px 1px no-repeat}
.stats-grid>div::before{top:-12px;height:25px}
.stats-grid>div::after{bottom:-12px;height:25px}
.stats-grid dt{font:300 clamp(2.6rem,4.6vw,4.2rem)/1 var(--display);letter-spacing:-.03em;font-variant-numeric:lining-nums tabular-nums;margin-bottom:1rem}
.stats-grid dd{margin:0;font:400 .8rem/1.5 ui-monospace,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;text-transform:uppercase;letter-spacing:.06em;max-width:22ch}
@media (max-width:900px){.stats-grid{grid-template-columns:repeat(2,1fr)}
  .stats-grid>div:nth-last-child(n+3)::after{display:none}
  .stats-grid>div:nth-child(2n)::before,.stats-grid>div:nth-child(2n)::after{background:
   linear-gradient(var(--x),var(--x)) 12px 0/1px 100% no-repeat,
   linear-gradient(var(--x),var(--x)) 0 12px/25px 1px no-repeat,
   linear-gradient(var(--x),var(--x)) calc(100% - 13px) 0/1px 100% no-repeat,
   linear-gradient(var(--x),var(--x)) 100% 12px/25px 1px no-repeat}}
@media (max-width:420px){.stats-grid>div{padding:1.75rem 1rem}.stats-grid dd{font-size:.72rem}}

/* Tercera fuente: botones y detalles */
.crumbs,.tag,.more,.field label,.chips li,.form .hint,.who ul,.direct small,.svc-row h3{font-family:var(--detail)}
.kicker{font-family:var(--detail);font-style:normal;font-weight:500;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem}
.hero .kicker{font-size:.82rem}
.stats-grid dd{font-family:var(--detail);font-size:.74rem;letter-spacing:.08em;font-weight:500}
.more{text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}
.tag{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}
.svc-row h3{text-transform:uppercase;letter-spacing:.1em;font-weight:500;font-size:.76rem}
.field label{font-size:.8rem;letter-spacing:.02em}
.nav-cta{font-size:.78rem!important}

.bg-white+.bg-white{border-top:1px solid #ECEBE7}

/* Verde lima de marca: #BAF461. Sobre fondos claros, los acentos de texto, íconos y líneas finas van en azul medianoche para que se lean. */
.kicker,.more,.who span,.direct small,.hdr.solid .brand small{color:var(--gold-ink)}
.hero .kicker,.process .kicker,.cta .kicker{color:var(--gold-soft)}
.more:hover{color:var(--ink)}

.ico{stroke:var(--ink)}
.process .ico{stroke:var(--gold)}
.svc-row li::before{background:var(--ink)}
.faq summary::after{border-color:var(--ink)}
.hdr.solid .nav a[aria-current="page"]::after{background:var(--ink)}
.hdr.solid .brand,.page-hero ~ * .brand{--logo-c:var(--navy)}
.direct a:hover{color:inherit;text-decoration:underline;text-underline-offset:3px}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;box-shadow:0 0 0 5px var(--navy)}
.attrs dt{border-top-width:3px}
.ftr .brand{--logo-c:#BAF461}


/* "Por qué DETTARQ" en azul (Inicio) */
.why-dark{background:var(--navy);color:var(--on-navy)}
.why-dark .kicker,.why-dark .more{color:var(--gold)}
.why-dark .more:hover{color:#fff}
.why-dark .lead,.why-dark .attrs dd{color:var(--on-navy-muted)}
.why-dark .attrs dt{color:#fff}

/* Banda final en blanco (Inicio) */
.cta-light{background-color:#FFFFFF;color:var(--ink);background-image:repeating-linear-gradient(90deg,rgba(5,11,27,.045) 0 1px,transparent 1px 120px),repeating-linear-gradient(0deg,rgba(5,11,27,.045) 0 1px,transparent 1px 120px)}
.cta-light .btn-line{border-color:var(--ink);color:var(--ink)}
.cta-light .btn-line:hover{background:var(--ink);color:#fff}

/* Scroll suave con inercia (Lenis) */
html.lenis,html.lenis body{height:auto}
html.lenis{scroll-behavior:auto!important}
.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}
.lenis [data-lenis-prevent]{overscroll-behavior:contain}
.lenis.lenis-smooth iframe{pointer-events:none}


.cta{padding:clamp(7.5rem,18vw,15rem) 0}
/* Footer alineado a los bordes como el header; bloque de marca más arriba */
.ftr .wrap{max-width:none}
.ftr .top>div:first-child{margin-top:-2.75rem}
@media (max-width:960px){.ftr .top>div:first-child{margin-top:0}}

/* Footer: contacto y redes */
.ftr-contact li{display:flex;align-items:flex-start;gap:.55rem}
.ftr-contact svg{width:18px;height:18px;flex:none;margin-top:.15rem;fill:none;stroke:var(--gold);stroke-width:1.6}
.ftr-contact .mail{text-transform:uppercase;letter-spacing:.04em;font-size:.86rem}
.ftr .social{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}
.ftr .social{gap:1.25rem}
.ftr .social a{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;font-size:22px;color:var(--gold)}
.ftr .social svg{width:22px;height:22px}
.ftr .social a:hover{color:var(--gold)}

.ftr-contact a:hover{color:inherit}

.ftr-links{display:grid;grid-template-columns:repeat(3,auto);justify-content:center;gap:2.5rem clamp(3rem,6vw,6rem)}
@media (max-width:1180px){.ftr-links{justify-content:start}}
.ftr .bottom{font-size:.8rem}
/* Portada: contenido pegado al margen izquierdo (alineado con el logo) para despejar el video */
.hero .wrap.hero-in{max-width:none}
.hero-row p{max-width:40ch}

/* Carrusel "Trabajamos con" en la portada */
.ticker{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;align-items:stretch;background:rgba(5,11,27,.35);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff}
.tk-label{flex:none;display:flex;align-items:center;padding:0 1.5rem 0 var(--gut);font:600 .72rem/1 var(--detail);letter-spacing:.14em;text-transform:uppercase;color:var(--gold);position:relative}
.tk-viewport{overflow:hidden;flex:1;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.tk-track{display:flex;width:max-content;animation:tk 50s linear infinite}
.tk-track ul{display:flex;list-style:none;margin:0;padding:0}
.tk-track li{display:flex;align-items:center;gap:1.25rem;padding:1.15rem 1.25rem;white-space:nowrap;font:500 .72rem/1 var(--detail);letter-spacing:.14em;text-transform:uppercase}
.tk-x{width:9px;height:9px;stroke:var(--gold);stroke-width:1;flex:none}
@keyframes tk{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.tk-track{animation:none}}
@media (max-width:600px){.tk-label{display:none}.tk-track li{padding:1rem}}

/* Líneas punteadas tipo plano en el carrusel */
.ticker::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.4) 0 4px,transparent 4px 8px);pointer-events:none}
.tk-label::after{content:"";position:absolute;top:0;bottom:0;right:0;width:1px;background:repeating-linear-gradient(180deg,rgba(255,255,255,.4) 0 3px,transparent 3px 6px)}
.services .sec-head h2{font-weight:500}

/* Servicios en Inicio: tarjetas 3 x 3 */
.bp{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2vw,1.5rem);margin-top:1rem}
.bp-cell{background:#fff;text-align:center;padding:clamp(2.5rem,4vw,3.25rem) clamp(1.25rem,2.5vw,2.25rem) clamp(2.5rem,4vw,3rem);border:1px solid #EEECE8;box-shadow:inset 0 -3px 0 var(--gold),0 18px 40px -28px rgba(5,11,27,.35)}
.bp-ic{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 1.4rem;background:var(--gold);border-radius:50%}
.bp-ic svg{width:28px;height:28px;fill:var(--navy)}
.bp-cell h3{font-weight:500;font-size:1.2rem;margin-bottom:.6rem}
.bp-cell p{color:var(--muted);font-size:.95rem;margin:0 auto;max-width:30ch}
.bp-more{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem clamp(1rem,2vw,1.5rem)}
.bp-more .bp-q{font:500 1.35rem/1.25 var(--display);color:var(--ink);margin:0 0 .6rem}
.bp-more p{color:var(--muted);font-size:.95rem;max-width:28ch;margin:0 auto 1.5rem}
@media (max-width:900px){.bp{grid-template-columns:repeat(2,1fr)}.bp>:last-child{grid-column:1/-1}}
@media (max-width:600px){.bp{grid-template-columns:1fr}}

/* Redondeo sutil de 2px en todos los elementos rectangulares */
.bp-cell,.ba,.tag,.form,.field input,.field select,.field textarea,.btn,.chips li,.svc-grid,.video-ph span{border-radius:2px}
.bp-cell{overflow:hidden}
.btn-arrow svg{width:18px;height:18px;transition:transform .2s}
.btn-arrow:hover svg{transform:translateX(3px)}
/* Hover sutil en tarjetas de servicios (no son enlaces: el cursor no cambia) */
.bp-cell:not(.bp-more){transition:transform .3s ease,box-shadow .3s ease;cursor:default}
@media (hover:hover){
  .bp-cell:not(.bp-more):hover{transform:translateY(-4px);box-shadow:inset 0 -5px 0 var(--gold),0 26px 50px -28px rgba(5,11,27,.45)}
  .bp-cell:not(.bp-more) .bp-ic{transition:transform .3s ease}
  .bp-cell:not(.bp-more):hover .bp-ic{transform:scale(1.06)}
}

/* Inicio > Servicios: líneas de servicio (resumen) */
.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem clamp(2rem,4vw,3.5rem)}
.cat{position:relative;padding-top:1.4rem;border-top:1px solid var(--line)}
.cat::before{content:"";position:absolute;top:-2px;left:0;width:44px;height:3px;background:var(--gold);border-radius:2px}
.cat-n{display:block;font:500 .78rem/1 var(--detail);letter-spacing:.12em;color:var(--muted);margin-bottom:.9rem}
.cat h3{font-weight:500;font-size:1.2rem;margin-bottom:.5rem}
.cat p{color:var(--muted);font-size:.95rem;margin:0;max-width:34ch}
.sub-head{margin:clamp(4.5rem,8vw,6.5rem) 0 2.25rem;max-width:60ch}
.sub-head h3{font-weight:500;font-size:clamp(1.5rem,2.6vw,2rem);margin-bottom:.6rem}
.sub-head p{color:var(--muted);margin:0}
@media (max-width:900px){.cat-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.cat-grid{grid-template-columns:1fr;gap:2rem}}

/* Inicio > Servicios: tarjetas con imagen (líneas de servicio) */
.sc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2vw,1.5rem)}
.sc{position:relative;background:#fff;border:1px solid #EEECE8;border-radius:2px;overflow:hidden;text-align:center;box-shadow:0 18px 40px -28px rgba(5,11,27,.35);transition:transform .3s ease,box-shadow .3s ease}
.sc-img,.sc-photo{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.sc-img{display:grid;place-items:center;background-color:#EEF0EC;background-image:repeating-linear-gradient(90deg,rgba(5,11,27,.05) 0 1px,transparent 1px 40px),repeating-linear-gradient(0deg,rgba(5,11,27,.05) 0 1px,transparent 1px 40px)}
.sc-img span{font:500 .72rem/1 var(--detail);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-bottom:1.5rem}
.sc-ic{position:relative;z-index:1;display:grid;place-items:center;width:62px;height:62px;margin:-31px auto 0;background:var(--gold);border-radius:50%;box-shadow:0 0 0 5px #fff}
.sc-ic svg{width:28px;height:28px;fill:var(--navy)}
.sc-body{padding:1.1rem clamp(1.25rem,2.5vw,2rem) 2rem}
.sc-body h3{font-weight:500;font-size:1.15rem;margin-bottom:.55rem}
.sc-body p{color:var(--muted);font-size:.93rem;margin:0 auto 1.1rem;max-width:32ch}
.sc-link{display:inline-flex;align-items:center;gap:.4rem;font:600 .74rem/1 var(--detail);letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--ink)}
.sc-link svg{width:15px;height:15px;transition:transform .2s}
.sc-link:hover svg{transform:translateX(3px)}
@media (hover:hover){.sc:hover{transform:translateY(-4px);box-shadow:0 26px 50px -28px rgba(5,11,27,.45)}}
@media (max-width:900px){.sc-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.sc-grid{grid-template-columns:1fr}}
.sc{display:flex;flex-direction:column}
.sc-body{flex:1;display:flex;flex-direction:column;align-items:center}
.sc-link{margin-top:auto}
/* Tarjetas de servicio: mismo diseño que "Espacios que atendemos" */
.sc{background:#fff;border:1px solid #EEECE8;color:var(--ink);box-shadow:inset 0 -3px 0 var(--gold),0 18px 40px -28px rgba(5,11,27,.35)}
@media (hover:hover){.sc:hover{box-shadow:inset 0 -5px 0 var(--gold),0 26px 50px -28px rgba(5,11,27,.45)}}
.sc-ic{background:var(--gold);box-shadow:0 0 0 5px #fff;transition:transform .3s ease}
@media (hover:hover){.sc:hover .sc-ic{transform:scale(1.06)}}
.sc-ic svg{fill:var(--navy)}
.sc-body h3{color:var(--ink)}
.sc-body p{color:var(--muted)}
.sc-link{color:var(--navy)}
/* Toda la tarjeta es un enlace a /servicios/ (el área de clic del enlace se estira a la tarjeta) */
.sc{cursor:pointer}
.sc-link{position:static;padding-bottom:6px;background:linear-gradient(var(--navy),var(--navy)) no-repeat left bottom/0 1.5px;transition:background-size .3s ease}
.sc-link::before{content:"";position:absolute;inset:0;z-index:2}
.sc:hover .sc-link,.sc-link:focus-visible{background-size:100% 1.5px}
.sc-link:focus-visible{outline:none}
.sc:focus-within{outline:2px solid var(--navy);outline-offset:3px}

/* Espacios que atendemos: tarjetas más compactas */
.bp{gap:1rem}
.bp-cell{padding:1.6rem 1.25rem 1.75rem}
.bp-ic{width:48px;height:48px;margin-bottom:.9rem}
.bp-ic svg{width:22px;height:22px}
.bp-cell h3{font-size:1.02rem;margin-bottom:.4rem}
.bp-cell p{font-size:.85rem;line-height:1.55;max-width:28ch}
.bp-more .bp-q{font-size:1.15rem}
.bp-more p{font-size:.85rem;margin-bottom:1.1rem}

.btn{white-space:nowrap}
.bp-more .btn{padding:.85rem 1.1rem}

/* Espacios que atendemos: misma distribución que Servicios (título arriba, 3 por fila) */
.spaces{margin-top:clamp(4.5rem,8vw,6.5rem)}
.spaces .sub-head{margin:0 0 2.25rem}
.spaces .bp{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,1.5rem)}
.bp-ic{flex:none}
@media (max-width:900px){.spaces .bp{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.spaces .bp{grid-template-columns:1fr}}
.sc-photo{height:auto}

/* Espacios que atendemos: sección lima con mapa de la CDMX en recorte de papel */
.spaces-sec{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse 55% 60% at 76% 30%,rgba(255,255,255,.16) 0%,rgba(255,255,255,0) 70%),linear-gradient(105deg,#BAF461 0%,#AEEA52 40%,#97D637 75%,#86C627 100%)}
.spaces-sec::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:repeating-linear-gradient(90deg,rgba(5,11,27,.055) 0 1px,transparent 1px 56px),repeating-linear-gradient(0deg,rgba(5,11,27,.055) 0 1px,transparent 1px 56px),repeating-linear-gradient(90deg,rgba(5,11,27,.03) 0 1px,transparent 1px 14px),repeating-linear-gradient(0deg,rgba(5,11,27,.03) 0 1px,transparent 1px 14px);-webkit-mask-image:radial-gradient(ellipse 85% 75% at 70% 30%,#000 30%,transparent 100%);mask-image:radial-gradient(ellipse 85% 75% at 70% 30%,#000 30%,transparent 100%)}
.spaces-sec .spaces{margin-top:0}
.spaces-sec .sub-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);align-items:center;gap:clamp(1.5rem,4vw,4rem);max-width:none;margin:0 0 clamp(1.5rem,3vw,2.5rem)}
.spaces-sec .sub-head h3{font-size:clamp(1.9rem,3.6vw,2.9rem);color:var(--navy)}
.spaces-sec .sub-head p{font-size:1.1rem;color:rgba(5,11,27,.78);max-width:46ch}
.spaces-sec .kicker{color:var(--navy)}
.map-wrap{display:flex;justify-content:center}
.cdmx-map{width:100%;max-width:370px;height:auto;display:block;overflow:visible;transition:transform .6s cubic-bezier(.2,.7,.2,1);transform-origin:50% 50%}
/* el efecto solo se activa sobre la silueta del mapa, no sobre su caja */
.cdmx-map{pointer-events:none}
.cdmx-map path,.cdmx-map .pin{pointer-events:visiblePainted}
@media (hover:hover){.cdmx-map:hover{transform:scale(1.025)}}
.spaces-sec .bp-cell{border-color:transparent}
.spaces-sec .bp-more .bp-q{color:var(--navy)}
.spaces-sec .bp-more p{color:rgba(5,11,27,.78)}
.spaces-sec .bp-more .btn{background:var(--navy);color:#fff;border-color:var(--navy)}
.spaces-sec .bp-more .btn:hover{background:#13213F;border-color:#13213F;color:#fff}
@media (max-width:760px){.spaces-sec .sub-head{grid-template-columns:1fr}.cdmx-map{max-width:220px}.map-wrap{order:-1;justify-content:flex-start}}
/* Pines palpitantes: sitios atendidos */
.cdmx-map .pin-dot{fill:var(--navy);stroke:#fff;stroke-width:3}
.cdmx-map .pin-pulse{fill:none;stroke:var(--navy);stroke-width:2;transform-box:fill-box;transform-origin:center;opacity:0;animation:pin-pulse 2.6s ease-out infinite;animation-delay:var(--d,0s)}
.cdmx-map .pin-dot{animation:pin-blink 2.6s ease-in-out infinite;animation-delay:var(--d,0s)}
@keyframes pin-pulse{0%{transform:scale(.7);opacity:.75}70%{opacity:0}100%{transform:scale(3.4);opacity:0}}
@keyframes pin-blink{0%,100%{fill:var(--navy)}12%{fill:#fff}24%{fill:var(--navy)}}
@media (prefers-reduced-motion:reduce){.cdmx-map .pin-pulse,.cdmx-map .pin-dot{animation:none}}

/* Plan de trabajo: línea entre pasos punteada, igual que el carrusel */
.steps li::after{background:repeating-linear-gradient(90deg,rgba(255,255,255,.4) 0 4px,transparent 4px 8px)}
@media (max-width:560px){.steps li::after{background:repeating-linear-gradient(180deg,rgba(255,255,255,.4) 0 4px,transparent 4px 8px)}}

/* Plan de trabajo: efecto al pasar el cursor por cada paso */
.steps li::before{transition:background-color .3s ease,color .3s ease,border-color .3s ease}
.steps h3,.steps p{transition:transform .35s cubic-bezier(.2,.7,.2,1),color .3s ease}
.steps h3{transform-origin:left bottom}
.steps p{transform-origin:left top}
@media (hover:hover){
  .steps li:hover::before{background-color:var(--gold);border-color:var(--gold);color:var(--navy)}
  .steps li:hover h3{transform:scale(1.06)}
  .steps li:hover p{transform:scale(1.04);color:var(--on-navy)}
}

/* Títulos de sección: mismo grosor que "¿Tienes un proyecto en mente? ¡Hablemos!" (Work Sans 700) */
h1,h2,.hero h1,.page-hero h1,.services .sec-head h2,.sub-head h3{font-weight:700}
/* Títulos en mayúsculas (solo visual; el texto real sigue en minúsculas para buscadores y lectores de pantalla) */
h1,h2,.sub-head h3{text-transform:uppercase;letter-spacing:-.005em}
/* "Espacios que atendemos" al mismo tamaño que los demás títulos de sección */
.spaces-sec .sub-head h3{font-size:clamp(2rem,4.2vw,3.1rem)}

/* Método de trabajo: 5 pasos y sección más ancha */
.process .wrap{max-width:1480px}
.steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:1.75rem}
@media (min-width:561px) and (max-width:1100px){
  .steps{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:2.75rem}
  .steps li:nth-child(n)::after{display:block}
  .steps li:nth-child(3n)::after,.steps li:last-child::after{display:none}
}
@media (min-width:561px) and (max-width:760px){
  .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .steps li:nth-child(n)::after{display:block}
  .steps li:nth-child(2n)::after,.steps li:last-child::after{display:none}
}
