/* ============================================================
   MAQTRA — Sistema de diseño v3
   Navy industrial + naranja de marca. Dos divisiones, un lenguaje.
   ============================================================ */

:root{
  --navy:#0b1220;
  --navy-2:#122540;
  --navy-3:#1b3557;
  --brand-navy:#00345e;
  --orange:#fe6f00;
  --orange-2:#ff8a3d;
  --cement:#e3dfdc;
  --paper:#f5f3ef;
  --white:#fff;
  --muted:#5c6572;
  --muted-light:rgba(255,255,255,.66);
  --line:#e3e0d8;
  --line-dark:rgba(255,255,255,.14);

  --gutter:clamp(20px,5vw,80px);
  --max:1280px;
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px; --s7:48px; --s8:64px; --s9:96px;

  --font:'Manrope',system-ui,sans-serif;
  --display:'Barlow Condensed','Manrope',sans-serif;
  --mono:'DM Mono',ui-monospace,monospace;

  --r-sm:8px; --r:14px; --r-lg:22px;
  --sh-sm:0 1px 2px rgba(11,18,32,.06),0 8px 20px -6px rgba(11,18,32,.10);
  --sh:0 2px 6px rgba(11,18,32,.08),0 24px 48px -18px rgba(11,18,32,.28);
  --sh-lg:0 4px 12px rgba(11,18,32,.10),0 48px 90px -30px rgba(11,18,32,.45);
  --ease:cubic-bezier(.22,.61,.24,1);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:110px}
body{
  margin:0;background:var(--paper);color:var(--navy);
  font-family:var(--font);font-size:clamp(15px,.5vw+14px,16.5px);line-height:1.65;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img,svg,iframe{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
p{margin:0}
ul{margin:0;padding:0;list-style:none}
h1,h2,h3,h4{margin:0;font-family:var(--display);font-weight:700;line-height:1.02;letter-spacing:-.01em;text-transform:uppercase}
h1{font-size:clamp(2.1rem,3.6vw,3.35rem)}
h2{font-size:clamp(1.7rem,2.9vw,2.6rem)}
h3{font-size:clamp(1.55rem,2.6vw,2.3rem)}
h4{font-size:1.06rem;text-transform:none;letter-spacing:-.01em;font-family:var(--font);font-weight:700}
em{font-style:normal;color:var(--orange)}
:focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-radius:3px}
.skip-link{position:absolute;left:-9999px;top:0;z-index:200;background:var(--navy);color:#fff;padding:12px 18px}
.skip-link:focus{left:12px;top:12px}

.section{max-width:var(--max);margin-inline:auto;width:100%;padding:var(--s9) var(--gutter)}
.section-label{
  font:500 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.16em;color:var(--orange);
  display:inline-flex;align-items:center;gap:8px;margin-bottom:var(--s4)
}
.section-label::before{content:'';width:22px;height:2px;background:var(--orange)}
.section-heading{max-width:62ch;margin-bottom:var(--s8)}
.section-heading p{color:var(--muted);margin-top:var(--s4)}
.section-heading.light p{color:var(--muted-light)}

/* ---------- Botones ---------- */
.button{
  display:inline-flex;align-items:center;gap:10px;
  padding:14px 24px;border-radius:999px;border:0;
  font-weight:700;font-size:.92rem;letter-spacing:-.01em;
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),background-color .25s var(--ease)
}
.button-primary{background:var(--orange);color:#fff;box-shadow:0 12px 26px -12px rgba(242,98,15,.9)}
.button-primary:hover{background:#ff7420;transform:translateY(-2px)}
.button-dark{background:var(--navy);color:#fff}
.button-dark:hover{background:var(--navy-3);transform:translateY(-2px)}
.arrow-link{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--navy);border-bottom:2px solid var(--orange);padding-bottom:4px}
.arrow-link b{color:var(--orange);transition:transform .25s var(--ease)}
.arrow-link:hover b{transform:translate(3px,-3px)}

/* ============================================================
   BARRA SUPERIOR + NAVBAR
   ============================================================ */
.topbar{background:var(--navy);color:var(--muted-light);font-size:.78rem}
.topbar-inner{
  max-width:var(--max);margin-inline:auto;padding:8px var(--gutter);
  display:flex;justify-content:space-between;align-items:center;gap:var(--s4)
}
.topbar b{color:var(--orange)}
.topbar-links{display:flex;gap:10px}
.topbar-links a:hover{color:#fff}
@media(max-width:760px){.topbar-inner>span{display:none}.topbar-inner{justify-content:center}}

.site-header{position:sticky;top:0;z-index:90;background:rgba(245,243,239,.92);backdrop-filter:blur(14px) saturate(1.3);border-bottom:1px solid var(--line);transition:box-shadow .3s var(--ease)}
.site-header.is-scrolled{box-shadow:0 10px 30px -18px rgba(11,18,32,.5)}
.header-inner{
  max-width:var(--max);margin-inline:auto;padding:12px var(--gutter);
  display:flex;align-items:center;gap:var(--s5)
}
.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}
.brand img{width:52px;height:52px;object-fit:contain}
.brand-text{display:flex;flex-direction:column;line-height:1}
.brand-text b{font-family:var(--display);font-size:1.5rem;letter-spacing:.02em}
.brand-text small{font:500 8.5px/1.4 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}

.main-nav{display:flex;align-items:center;gap:var(--s5);margin-left:auto}
.nav-link{position:relative;font-weight:600;font-size:.93rem;padding:6px 0;color:var(--navy)}
.nav-link::after{content:'';position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--orange);transition:width .28s var(--ease)}
.nav-link:hover::after,.nav-link.is-active::after{width:100%}
.nav-mobile-cta{display:none}

.header-actions{display:flex;align-items:center;gap:var(--s4);margin-left:var(--s5)}
.header-phone{display:flex;align-items:center;gap:8px;padding-left:var(--s4);border-left:1px solid var(--line)}
.header-phone span[aria-hidden]{color:var(--orange);font-size:1.1rem}
.header-phone span>small{display:block;font:500 9px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.header-phone span>b{font-size:.95rem;font-weight:800}
.menu-toggle{display:none;width:44px;height:40px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0;flex-direction:column;gap:4px;align-items:center;justify-content:center}
.menu-toggle span{width:18px;height:2px;background:var(--navy);transition:.3s var(--ease)}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

@media(max-width:1040px){.header-phone{display:none}}
@media(max-width:880px){
  .menu-toggle{display:flex}
  .header-cta{display:none}
  .header-actions{margin-left:auto}
  .main-nav{
    position:fixed;inset:0 0 auto;top:calc(100% + 0px);margin:0;
    flex-direction:column;align-items:stretch;gap:0;
    background:var(--navy);color:#fff;padding:var(--s5) var(--gutter) var(--s7);
    transform:translateY(-12px);opacity:0;pointer-events:none;transition:.3s var(--ease)
  }
  .main-nav.is-open{transform:none;opacity:1;pointer-events:auto}
  .nav-link{color:#fff;padding:14px 0;border-bottom:1px solid var(--line-dark);font-size:1.05rem}
  .nav-mobile-cta{display:block;margin-top:var(--s5)}
  .nav-mobile-cta .button{width:100%;justify-content:center}
}

/* ============================================================
   HERO
   ============================================================ */
.hero{position:relative;background:var(--navy);color:#fff;overflow:hidden}
.hero-bg{position:absolute;inset:0;overflow:hidden}
.hero-slide{
  position:absolute;inset:0;background-size:cover;background-position:center;
  opacity:0;transform:scale(1.06);
  transition:opacity 1.4s var(--ease),transform 8s linear
}
.hero-slide.is-active{opacity:1;transform:scale(1)}
.hero-scrim{
  position:absolute;inset:0;
  background:
    radial-gradient(70% 60% at 85% 10%,rgba(242,98,15,.20),transparent 60%),
    linear-gradient(100deg,rgba(8,13,22,.95) 0%,rgba(8,13,22,.88) 30%,rgba(8,13,22,.58) 58%,rgba(8,13,22,.4) 100%),
    linear-gradient(180deg,rgba(8,13,22,.12),rgba(8,13,22,.45) 88%)
}
.hero-scrim::after{
  content:'';position:absolute;inset:0;opacity:.06;
  background-image:linear-gradient(rgba(255,255,255,.6) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.6) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(70% 70% at 15% 40%,#000,transparent 75%)
}
.hero-inner{
  position:relative;max-width:var(--max);margin-inline:auto;
  padding:clamp(48px,6vw,84px) var(--gutter) clamp(56px,6vw,90px);
  display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,72px);align-items:center
}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font:500 11px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--orange-2);margin-bottom:var(--s5)}
.eyebrow .dot{width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 4px rgba(242,98,15,.25)}
.hero h1{margin-bottom:var(--s5)}
.hero-text{color:var(--muted-light);max-width:52ch;margin-bottom:var(--s7)}

.hero-paths{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4);margin-bottom:var(--s7)}
.path-card{
  position:relative;display:block;padding:var(--s5);border-radius:var(--r);
  background:rgba(255,255,255,.055);border:1px solid var(--line-dark);
  transition:transform .3s var(--ease),background-color .3s var(--ease),border-color .3s var(--ease)
}
.path-card:hover{transform:translateY(-4px);background:rgba(255,255,255,.10);border-color:rgba(242,98,15,.6)}
.path-card.is-active{background:rgba(255,255,255,.11);border-color:rgba(242,98,15,.7);box-shadow:0 0 0 1px rgba(242,98,15,.15),var(--sh-sm)}
.path-card.is-active .path-num{color:var(--orange-2)}
.path-num{font:500 10px/1 var(--mono);letter-spacing:.16em;color:var(--orange)}
.path-card h2{font-size:1.2rem;margin:var(--s3) 0 6px;letter-spacing:.01em}
.path-card p{font-size:.85rem;color:var(--muted-light);margin-bottom:var(--s4)}
.path-go{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;font-weight:700;color:#fff}
.path-go b{color:var(--orange);transition:transform .25s var(--ease)}
.path-card:hover .path-go b{transform:translate(3px,-3px)}

.hero-tagline{display:flex;align-items:baseline;gap:12px;padding-top:var(--s5);border-top:1px solid var(--line-dark)}
.hero-tagline span{color:var(--orange);font-weight:700}
.hero-tagline p{font-size:.92rem;color:var(--muted-light);font-style:italic}

.hero-visual{position:relative;height:clamp(340px,42vw,520px)}
.hv{margin:0;position:absolute;background-size:cover;background-position:center;border-radius:var(--r-lg);box-shadow:var(--sh-lg)}
.hv-main{
  inset:0 0 14% 12%;
  background-image:url('https://images.unsplash.com/photo-1650091063553-58b5f50b59ca?auto=format&fit=crop&w=1800&q=85');
  outline:1px solid rgba(255,255,255,.12);outline-offset:-1px
}
.hv-sub{
  width:48%;height:44%;left:0;bottom:0;
  background-image:url('https://images.unsplash.com/photo-1541888946425-d81bb19240f5?auto=format&fit=crop&w=1200&q=85');
  border:5px solid var(--navy)
}
.hv-badge{
  position:absolute;top:8%;right:-2%;z-index:2;
  background:var(--orange);color:#fff;padding:12px 18px;border-radius:var(--r);
  font-size:.74rem;line-height:1.3;box-shadow:0 18px 36px -14px rgba(242,98,15,.9)
}
.hv-badge b{display:block;font-size:.95rem}
@media(max-width:940px){
  .hero-inner{grid-template-columns:1fr}
  .hero-visual{height:300px;order:-1}
  .hv-main{inset:0 0 10% 6%}
}
@media(max-width:560px){.hero-paths{grid-template-columns:1fr}}

/* ---------- Franja de confianza ---------- */
.trust-strip{
  max-width:var(--max);margin:-34px auto 0;position:relative;z-index:5;
  width:calc(100% - var(--gutter)*2);
  background:#fff;border-radius:var(--r);box-shadow:var(--sh);
  display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))
}
.trust-strip>div{padding:var(--s5);border-right:1px solid var(--line)}
.trust-strip>div:last-child{border-right:0}
.trust-strip span{color:var(--orange);font-size:1.1rem}
.trust-strip b{display:block;font-size:.95rem;margin-top:6px}
.trust-strip small{color:var(--muted);font-size:.8rem}
@media(max-width:700px){.trust-strip>div{border-right:0;border-bottom:1px solid var(--line)}}

/* ============================================================
   DIVISIONES
   ============================================================ */
.division-light{background:var(--paper)}
.division-dark{background:var(--navy);color:#fff}
.division-dark h2,.division-dark h3,.division-dark h4{color:#fff}
.division-head{padding-bottom:0;padding-top:var(--s9);max-width:var(--max)}
.division-tag{
  display:inline-block;font:500 10px/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;
  padding:8px 14px;border-radius:999px;background:var(--orange);color:#fff;margin-bottom:var(--s5)
}
.division-head h2{max-width:20ch}
.division-head p{max-width:62ch;margin-top:var(--s5);color:var(--muted)}
.division-dark .division-head p{color:var(--muted-light)}

/* ---------- Fotos base ---------- */
.ph{background-size:cover;background-position:center;border-radius:var(--r);box-shadow:var(--sh-sm);filter:contrast(1.05) saturate(.97)}
.ph-antes{aspect-ratio:16/10;background-image:url('img/antes_despues_clean.jpg');background-size:contain;background-position:center center;background-repeat:no-repeat;background-color:transparent;box-shadow:none}
.ph-restaurante{background-image:url('img/inox_restaurante.jpg')}
.ph-cocina{background-image:url('img/inox_cocina.jpg')}
.ph-hospital{background-image:url('img/inox_hospital.jpg')}
.ph-plancha{background-image:url('img/inox_plancha.jpg')}
.ph-vitrina{background-image:url('img/rem_vitrina.jpg')}
.ph-muebles{background-image:url('img/rem_muebles.jpg')}
.ph-encimera{background-image:url('img/rem_encimera.jpg')}
.ph-mostrador{background-image:url('img/rem_mostrador.jpg')}
.ph-estantes{background-image:url('img/inox_estantes.jpg')}
.ph-equipo{background-image:url('img/obra_equipo.jpg')}
.ph-confianza{background-image:url('img/confianza.jpg')}

/* ---------- Bloque partido ---------- */
.split{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(32px,5vw,80px);align-items:center;padding-top:var(--s8)}
.split-media .ph{width:100%}
.media-caption{display:block;margin-top:var(--s3);font:500 10px/1.5 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.pillars{display:grid;gap:var(--s4);margin:var(--s6) 0}
.pillars>div{padding-left:var(--s5);border-left:2px solid var(--orange)}
.pillars b{font-size:1rem}
.pillars p{color:var(--muted);font-size:.9rem}
@media(max-width:860px){.split{grid-template-columns:1fr}}

/* ---------- Galería de trabajos ---------- */
.work-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s6)}
.work{margin:0}
.work .ph-frame{aspect-ratio:1/1;border-radius:var(--r);overflow:hidden;box-shadow:var(--sh-sm);transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.work .ph{width:100%;height:100%;border-radius:0;box-shadow:none;transition:transform .6s var(--ease);will-change:transform}
.work:hover .ph-frame{transform:translateY(-6px);box-shadow:var(--sh)}
.work:hover .ph{transform:scale(1.14)}
.work figcaption{display:flex;flex-direction:column;gap:2px;padding-top:var(--s3);font-size:.82rem;color:var(--muted)}
.work figcaption b{font-size:.95rem;color:var(--navy);font-weight:700}
@media(max-width:980px){.work-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.work-grid{grid-template-columns:1fr}}

/* ---------- Productos · grilla tipo portafolio ---------- */
.portfolio-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s5);
  margin-bottom:var(--s6)
}
.portfolio-grid.is-hidden{display:none}
.portfolio-tile{
  position:relative;aspect-ratio:16/11;border-radius:var(--r);overflow:hidden;
  background-size:cover;background-position:center;border:0;padding:0;
  box-shadow:var(--sh-sm);cursor:pointer;
  transition:transform .4s var(--ease),box-shadow .4s var(--ease)
}
.portfolio-tile::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 45%,rgba(8,13,22,.86) 100%);
  transition:background-color .3s var(--ease)
}
.portfolio-tile::after{
  content:'';position:absolute;inset:0;border-radius:inherit;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);pointer-events:none
}
.portfolio-tile:hover,.portfolio-tile:focus-visible{transform:translateY(-5px);box-shadow:var(--sh)}
.portfolio-tile-label{
  position:absolute;left:var(--s5);right:var(--s5);bottom:var(--s5);z-index:1;
  text-align:left;color:#fff;font-family:var(--display);font-size:clamp(1.1rem,2vw,1.5rem);
  text-transform:uppercase;letter-spacing:.01em;line-height:1.15
}
.portfolio-tile-label::after{
  content:'Ver productos ↗';display:block;margin-top:6px;
  font:600 10px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--orange-2);
  opacity:0;transform:translateY(4px);transition:opacity .3s var(--ease),transform .3s var(--ease)
}
.portfolio-tile:hover .portfolio-tile-label::after,
.portfolio-tile:focus-visible .portfolio-tile-label::after{opacity:1;transform:none}
@media(max-width:640px){.portfolio-grid{grid-template-columns:1fr}}

/* ---------- Vista de detalle de categoría ---------- */
.cat-panel{display:none}
.cat-panel.is-active{display:block;animation:catfade .4s var(--ease)}
@keyframes catfade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.cat-back{
  display:inline-flex;align-items:center;gap:8px;margin-bottom:var(--s5);
  border:0;background:none;padding:0;color:var(--muted);font-weight:700;font-size:.86rem;cursor:pointer
}
.cat-back span{color:var(--orange);transition:transform .25s var(--ease)}
.cat-back:hover{color:var(--navy)}
.cat-back:hover span{transform:translateX(-3px)}
.cat-banner{
  background:linear-gradient(100deg,var(--orange),var(--orange-2));
  border-radius:var(--r) var(--r) var(--r-lg) var(--r-lg);
  padding:var(--s6) var(--s6);margin-bottom:var(--s6);
  box-shadow:0 16px 34px -18px rgba(242,98,15,.65)
}
.cat-banner h4{color:#fff;font-family:var(--display);font-size:clamp(1.4rem,2.6vw,2rem);text-transform:uppercase;letter-spacing:.01em}
.cat-desc{max-width:60ch;color:var(--muted);margin-bottom:var(--s5)}
.cat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s5);justify-content:stretch}
.cat-grid .work{min-width:0}
.cat-back-bottom{margin-top:var(--s6);margin-bottom:0}
.products-cta{display:inline-flex;margin-top:var(--s7)}
@media(max-width:1100px){.cat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.cat-grid{grid-template-columns:1fr}.cat-banner{padding:var(--s5)}}

/* ---------- Zoom hint sobre las fotos clicables ---------- */
.work{cursor:zoom-in}
.work .ph-frame{position:relative}
.equip-photo{cursor:zoom-in}
.zoom-hint{
  position:absolute;top:10px;right:10px;z-index:2;
  width:34px;height:34px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:rgba(11,18,32,.55);backdrop-filter:blur(4px);
  color:#fff;font-size:1rem;opacity:0;transform:scale(.8);
  transition:opacity .25s var(--ease),transform .25s var(--ease)
}
.work:hover .zoom-hint,.work:focus-visible .zoom-hint,
.equip-photo:hover .zoom-hint,.equip-photo:focus-visible .zoom-hint{opacity:1;transform:scale(1)}

/* ---------- Lightbox ---------- */
.lightbox{
  position:fixed;inset:0;z-index:150;display:none;
  align-items:center;justify-content:center;padding:clamp(20px,5vw,60px);
  background:rgba(8,13,22,.92);backdrop-filter:blur(6px)
}
.lightbox.is-open{display:flex}
.lightbox figure{margin:0;max-width:min(920px,92vw);max-height:90vh;display:flex;flex-direction:column;gap:var(--s4)}
.lightbox img{max-width:100%;max-height:76vh;object-fit:contain;border-radius:var(--r);box-shadow:var(--sh-lg);background:#0e1520}
.lightbox figcaption{color:#fff;text-align:center;position:relative}
.lightbox figcaption b{display:block;font-family:var(--display);font-size:1.3rem;text-transform:uppercase;letter-spacing:.01em}
.lightbox figcaption span{display:block;margin-top:4px;font-size:.86rem;color:var(--muted-light)}
.lightbox figcaption small{display:block;margin-top:10px;font:500 10px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.4)}
.lightbox-close{
  position:absolute;top:clamp(14px,3vw,28px);right:clamp(14px,3vw,28px);z-index:2;
  width:42px;height:42px;border-radius:50%;border:1px solid var(--line-dark);
  background:rgba(255,255,255,.08);color:#fff;font-size:1.1rem;
  transition:background-color .25s var(--ease),transform .25s var(--ease)
}
.lightbox-close:hover{background:var(--orange);transform:rotate(90deg)}
.lightbox-nav{
  position:absolute;top:50%;translate:0 -50%;z-index:2;
  width:52px;height:52px;border-radius:50%;border:1px solid var(--line-dark);
  background:rgba(255,255,255,.08);color:#fff;font-size:1.8rem;line-height:1;
  display:flex;align-items:center;justify-content:center;
  transition:background-color .25s var(--ease),transform .25s var(--ease),opacity .2s var(--ease)
}
.lightbox-nav:hover{background:var(--orange);transform:translateY(-50%) scale(1.06)}
.lightbox-prev{left:clamp(8px,2.5vw,24px)}
.lightbox-next{right:clamp(8px,2.5vw,24px)}
.lightbox-nav[hidden]{display:none}
@media(max-width:640px){
  .lightbox-nav{width:42px;height:42px;font-size:1.5rem}
  .lightbox-prev{left:6px}.lightbox-next{right:6px}
}


/* ---------- Puente entre divisiones ---------- */
.bridge{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s5);
  padding-top:var(--s7);padding-bottom:var(--s9)
}
.bridge>div{max-width:56ch}
.bridge-tag{display:block;font-family:var(--display);font-size:1.35rem;text-transform:uppercase;margin-bottom:6px}
.bridge p{color:var(--muted);font-size:.92rem}
.bridge-light p{color:var(--muted-light)}

/* ---------- Catálogo de equipos ---------- */
.equip-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:var(--s5)}
.equip{
  background:#fff;color:var(--navy);border-radius:var(--r);overflow:hidden;
  display:flex;flex-direction:column;box-shadow:var(--sh-sm);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)
}
.equip:hover{transform:translateY(-5px);box-shadow:var(--sh)}
.equip-photo{position:relative;aspect-ratio:4/3;background-size:cover;background-position:center;background-color:#f1efea}
.equip-photo.contain{background-size:contain;background-repeat:no-repeat;background-color:#f4f2ee}
.equip-photo b{
  position:absolute;top:12px;left:12px;padding:6px 11px;border-radius:999px;
  background:rgba(255,255,255,.94);color:var(--navy);
  font:600 9px/1 var(--mono);text-transform:uppercase;letter-spacing:.1em;box-shadow:var(--sh-sm)
}
.equip-photo::after{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,transparent 55%,rgba(11,18,32,.72) 100%)
}
.equip-photo.contain::after{display:none}
.equip-name{
  position:absolute;left:12px;right:12px;bottom:10px;z-index:1;
  color:#fff;font-family:var(--display);font-size:1.05rem;text-transform:uppercase;
  letter-spacing:.01em;line-height:1.1;text-shadow:0 1px 3px rgba(0,0,0,.4)
}
.eq-compactadora{background-image:url('img/eq_compactadora.jpg')}
.eq-martillo{background-image:url('img/eq_martillo.jpg')}
.eq-taladro{background-image:url('img/eq_taladro.jpg')}
.eq-concretera{background-image:url('img/eq_mezcladora.jpg')}
.eq-vibrador{background-image:url('img/eq_vibrador.jpg')}
.eq-andamio{background-image:url('img/eq_andamio-nuevo.png')}
.eq-rodos{background-image:url('img/eq_rodos.jpg')}
.eq-puntales{background-image:url('img/eq_puntales.jpg')}
.equip-body{padding:var(--s5);display:flex;flex-direction:column;gap:var(--s2);flex:1}
.equip-body p{font-size:.86rem;color:var(--muted)}
.equip-cta{margin-top:auto;display:inline-flex;align-items:center;justify-content:space-between;font-weight:700;font-size:.85rem;padding-top:var(--s4);border-top:1px dashed var(--line)}
.equip-cta b{color:var(--orange);transition:transform .25s var(--ease)}
.equip:hover .equip-cta b{transform:translate(3px,-3px)}
.equip-help{background:linear-gradient(160deg,var(--navy-2),var(--navy-3));color:#fff;justify-content:center}
.equip-help p{color:var(--muted-light);margin-bottom:var(--s4)}
.equip-help .button{align-self:flex-start}

.terms{margin-top:var(--s8);padding:var(--s7);border-radius:var(--r);background:rgba(255,255,255,.05);border-left:4px solid var(--orange)}
.terms h4{margin-bottom:var(--s4)}
.terms ul{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(270px,1fr))}
.terms li{position:relative;padding-left:18px;font-size:.88rem;color:var(--muted-light)}
.terms li::before{content:'›';position:absolute;left:0;color:var(--orange);font-weight:700}

/* ---------- Nosotros ---------- */
.about{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(32px,5vw,80px);align-items:start}
.about-copy>p{color:var(--muted);margin:var(--s5) 0 var(--s6);max-width:58ch}
.mv{display:grid;gap:var(--s5);grid-template-columns:1fr 1fr;margin-bottom:var(--s6)}
.mv b{display:block;font-family:var(--display);font-size:1.15rem;text-transform:uppercase;color:var(--orange)}
.mv p{font-size:.88rem;color:var(--muted)}
.about blockquote{
  margin:0;padding:var(--s5) var(--s6);background:#fff;border-radius:var(--r);
  box-shadow:var(--sh-sm);font-size:1.02rem;font-weight:600;line-height:1.5
}
.about blockquote cite{display:block;margin-top:var(--s3);font:500 10px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-style:normal}
.about-media{display:grid;gap:var(--s5)}
.about-media .ph{aspect-ratio:4/3}
@media(max-width:860px){.about{grid-template-columns:1fr}.mv{grid-template-columns:1fr}}

/* ---------- FAQ ---------- */
.faq-list{display:grid;gap:var(--s3);max-width:900px}
.faq-list details{background:#fff;border-radius:var(--r);box-shadow:var(--sh-sm);overflow:hidden}
.faq-list summary{
  display:flex;justify-content:space-between;align-items:center;gap:var(--s4);
  padding:var(--s5);font-weight:700;cursor:pointer;list-style:none
}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary span{width:26px;height:26px;border-radius:50%;background:var(--paper);position:relative;flex-shrink:0}
.faq-list summary span::before,.faq-list summary span::after{content:'';position:absolute;top:50%;left:50%;width:11px;height:2px;background:var(--orange);transform:translate(-50%,-50%);transition:.3s var(--ease)}
.faq-list summary span::after{transform:translate(-50%,-50%) rotate(90deg)}
.faq-list details[open] summary span::after{transform:translate(-50%,-50%) rotate(0)}
.faq-list p{padding:0 var(--s5) var(--s5);color:var(--muted);font-size:.92rem}

/* ---------- Contacto ---------- */
.contact{background:var(--navy);color:#fff}
.contact-head{max-width:58ch;margin-bottom:var(--s8)}
.contact-head p{color:var(--muted-light);margin-top:var(--s4)}
.contact-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(28px,4vw,64px)}
.contact-form{display:grid;gap:var(--s4)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4)}
.contact-form label{display:grid;gap:8px;font:500 10px/1 var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--muted-light)}
.contact-form input,.contact-form select,.contact-form textarea{
  font:inherit;font-size:.95rem;color:#fff;background:rgba(255,255,255,.06);
  border:1px solid var(--line-dark);border-radius:var(--r-sm);padding:13px 15px;
  transition:border-color .2s var(--ease),box-shadow .2s var(--ease),background-color .2s var(--ease)
}
.contact-form textarea{resize:vertical}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:rgba(255,255,255,.4)}
.contact-form select option{color:#111}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{
  outline:none;border-color:var(--orange);background:rgba(255,255,255,.1);box-shadow:0 0 0 3px rgba(242,98,15,.25)
}
.consent{display:flex!important;align-items:flex-start;gap:10px;text-transform:none;letter-spacing:0;font:400 .82rem/1.5 var(--font)}
.consent input{width:auto;accent-color:var(--orange)}
.honeypot-field{position:absolute!important;left:-9999px!important;opacity:0}
.contact-form button{justify-content:center;margin-top:var(--s2)}
.contact-form button[disabled]{opacity:.6;pointer-events:none}
.form-status:not(:empty){padding:12px 14px;border-radius:var(--r-sm);background:rgba(255,255,255,.1);font-size:.88rem}
.form-status.is-ok{background:rgba(35,160,90,.22)}
.form-status.is-error{background:rgba(242,98,15,.22)}
.form-alt{font-size:.85rem;color:var(--muted-light)}
.form-alt a{color:var(--orange-2);font-weight:700}

.contact-side{display:grid;gap:var(--s3);align-content:start}
.map-card{border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);margin-bottom:var(--s3)}
.map-card iframe{width:100%;height:290px;border:0;filter:grayscale(.3) contrast(1.05)}
.contact-line{
  display:grid;gap:3px;padding:var(--s4) var(--s5);border-radius:var(--r-sm);
  background:rgba(255,255,255,.05);border:1px solid var(--line-dark);
  transition:background-color .25s var(--ease),border-color .25s var(--ease)
}
a.contact-line:hover{background:rgba(255,255,255,.1);border-color:rgba(242,98,15,.5)}
.contact-line span{font:500 9px/1 var(--mono);text-transform:uppercase;letter-spacing:.14em;color:var(--muted-light)}
.contact-line b{font-size:.95rem}
@media(max-width:860px){.contact-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}}

/* ---------- Footer ---------- */
footer{background:#080d16;color:var(--muted-light);padding:var(--s8) var(--gutter) var(--s5)}
.footer-inner{max-width:var(--max);margin-inline:auto;display:flex;flex-wrap:wrap;gap:var(--s7);justify-content:space-between;align-items:center}
.footer-brand{display:flex;align-items:center;gap:var(--s4)}
.footer-brand img{width:64px;height:64px;object-fit:contain}
.footer-brand p{font-size:.85rem}
footer nav{display:flex;flex-wrap:wrap;gap:var(--s5);font-size:.88rem;font-weight:600}
footer nav a:hover,.footer-social a:hover{color:var(--orange)}
.footer-social{display:flex;gap:var(--s4);font-size:.85rem}
footer small{display:block;max-width:var(--max);margin:var(--s7) auto 0;padding-top:var(--s5);border-top:1px solid var(--line-dark);font-size:.75rem}

/* ---------- WhatsApp flotante ---------- */
.wa-float{
  position:fixed;right:clamp(14px,3vw,26px);bottom:clamp(14px,3vw,26px);z-index:80;
  display:inline-flex;align-items:center;gap:10px;padding:13px 19px;border-radius:999px;
  background:#1f9d55;color:#fff;font-weight:700;font-size:.85rem;
  box-shadow:0 14px 32px -12px rgba(31,157,85,.9);transition:transform .25s var(--ease)
}
.wa-float:hover{transform:translateY(-3px)}
.wa-float svg{width:19px;height:19px;fill:currentColor}
@media(max-width:560px){.wa-float span{display:none}.wa-float{padding:15px}}

/* ---------- Reveal ---------- */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal.is-visible{opacity:1;transform:none}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}
  .reveal{opacity:1;transform:none}
  html{scroll-behavior:auto}
}

/* Hero fijo: una sola imagen */
.hero-slide-fixed{opacity:1;transform:none;transition:none;background-position:center;background-size:cover}

/* ---------- Social + antes/después v7 ---------- */
.before-after-lightbox{position:relative;cursor:zoom-in;border-radius:var(--r-lg);outline:none}
.before-after-lightbox:focus-visible{box-shadow:0 0 0 3px rgba(242,98,15,.35)}
.before-after-zoom{position:absolute;right:14px;top:14px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(8,13,22,.78);color:#fff;font-size:1.1rem;opacity:.88;transition:.25s var(--ease);z-index:2}
.before-after-lightbox:hover .before-after-zoom{background:var(--orange);transform:scale(1.06)}
.header-social{display:flex;align-items:center;gap:8px}
.social-icon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid var(--line);box-shadow:var(--sh-sm);transition:.25s var(--ease)}
.social-icon svg{width:19px;height:19px;fill:currentColor}
.social-facebook{color:#1877f2}.social-instagram{color:#c13584}
.social-icon:hover{transform:translateY(-2px);border-color:transparent;color:#fff}
.social-facebook:hover{background:#1877f2}.social-instagram:hover{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045)}
.social-showcase{background:#fff;padding:clamp(46px,6vw,82px) var(--gutter);border-top:1px solid var(--line)}
.social-showcase-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px);align-items:center}
.social-showcase h2{font-family:var(--display);font-size:clamp(2rem,4vw,3.4rem);line-height:.95;text-transform:uppercase;margin:14px 0 16px}.social-showcase h2 em{color:var(--orange);font-style:normal}.social-showcase p{color:var(--muted);max-width:58ch}
.social-showcase-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.social-card{min-height:132px;border-radius:18px;padding:22px;display:flex;align-items:center;gap:16px;color:#fff;box-shadow:var(--sh);transition:.28s var(--ease);overflow:hidden;position:relative}
.social-card:hover{transform:translateY(-5px);box-shadow:var(--sh-lg)}
.social-card svg{width:42px;height:42px;fill:currentColor;flex:0 0 auto}.social-card span{display:flex;flex-direction:column;gap:4px}.social-card b{font-size:1.08rem}.social-card small{opacity:.86;font-size:.78rem}
.facebook-card{background:#1877f2}.instagram-card{background:linear-gradient(135deg,#833ab4 0%,#c13584 42%,#fd1d1d 72%,#fcb045 100%)}
.footer-social a{display:inline-flex;align-items:center;gap:7px}.footer-social svg{width:18px;height:18px;fill:currentColor}
@media(max-width:1100px){.header-social{display:none}}
@media(max-width:760px){.social-showcase-inner{grid-template-columns:1fr}.social-showcase-actions{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.social-showcase-actions{grid-template-columns:1fr}}
\n\n/* ---------- Refinamiento visual v8 ---------- */
/* Header más compacto y equilibrado */
.topbar-inner{padding:5px var(--gutter)}
.header-inner{padding:7px var(--gutter);gap:18px;min-height:64px}
.brand{gap:9px}.brand img{width:42px;height:42px}.brand-text b{font-size:1.3rem}.brand-text small{font-size:7.5px}
.main-nav{gap:22px}.nav-link{font-size:.89rem}
.header-actions{gap:10px;margin-left:14px}
.header-social{gap:6px}.social-icon{width:32px;height:32px}.social-icon svg{width:16px;height:16px}
.header-phone{gap:6px;padding-left:12px;white-space:nowrap}.header-phone span[aria-hidden]{font-size:.95rem}.header-phone span>b{font-size:.88rem;line-height:1;white-space:nowrap}
.header-cta{padding:10px 16px!important;font-size:.82rem!important;min-height:auto!important;white-space:nowrap;border-radius:999px}

/* Redes sociales: bloque más compacto y corporativo */
.social-showcase{padding:34px var(--gutter);border-top:1px solid var(--line)}
.social-showcase-inner{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);gap:42px}
.social-showcase .section-label{font-size:.7rem}
.social-showcase h2{font-size:clamp(1.65rem,2.7vw,2.45rem);line-height:1;margin:10px 0 10px;max-width:680px}
.social-showcase p{font-size:.9rem;line-height:1.55;max-width:62ch}
.social-showcase-actions{gap:10px}
.social-card{min-height:82px;border-radius:13px;padding:14px 16px;gap:12px;box-shadow:0 10px 24px -18px rgba(11,18,32,.55)}
.social-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px -20px rgba(11,18,32,.7)}
.social-card svg{width:30px;height:30px}.social-card b{font-size:.95rem}.social-card small{font-size:.7rem}

/* Redes se muestran en el header y en la sección dedicada; no se duplican en el footer */
.footer-social{display:none!important}

@media(max-width:1180px){.main-nav{gap:16px}.header-inner{gap:12px}.header-actions{margin-left:8px}.header-phone{padding-left:9px}.header-cta{padding:9px 13px!important}}
@media(max-width:1040px){.header-phone{display:none}.social-showcase-inner{grid-template-columns:1fr 1fr}}
@media(max-width:880px){.header-inner{min-height:58px;padding-top:6px;padding-bottom:6px}.brand img{width:40px;height:40px}.social-showcase{padding:30px var(--gutter)}}
@media(max-width:760px){.social-showcase-inner{grid-template-columns:1fr;gap:22px}.social-showcase-actions{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.social-showcase-actions{grid-template-columns:1fr}.social-card{min-height:74px}}

/* ============================================================
   V9 · Identidad visual MAQTRA / textura de cemento
   ============================================================ */
:root{--concrete:url('img/concrete-maqtra.jpg')}
.site-header{
  background-color:#ecebe7;
  background-image:linear-gradient(rgba(246,245,241,.72),rgba(246,245,241,.72)),var(--concrete);
  background-size:auto,420px auto;
  backdrop-filter:blur(10px) saturate(1.05);
}
.header-inner{min-height:60px;padding-top:5px;padding-bottom:5px}
.brand img{width:48px;height:48px}.brand-text b{font-size:1.58rem}.brand-text small{font-size:8px}
.main-nav{gap:18px}.nav-link{font-size:.84rem;white-space:nowrap}
.header-actions{gap:8px;margin-left:10px}.header-phone{padding-left:10px}.header-phone span>b{font-size:.86rem}
.header-cta{padding:8px 13px!important;font-size:.78rem!important}

/* El cemento MAQTRA sustituye el blanco plano sin competir con el contenido */
.division-light,.about,.faq,.social-showcase{
  background-color:#efeeea;
  background-image:linear-gradient(rgba(249,248,245,.86),rgba(249,248,245,.86)),var(--concrete);
  background-size:auto,560px auto;
}

/* Beneficios a un lado de Remodelación, en lugar de una franja flotante */
.remodel-intro{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:230px minmax(0,1fr);gap:34px;padding:0 var(--gutter);align-items:center}
.remodel-intro .split{padding-left:0;padding-right:0}
.remodel-intro .trust-strip{width:100%;margin:0;display:grid;grid-template-columns:1fr;border-radius:16px;background:rgba(255,255,255,.78);backdrop-filter:blur(8px);box-shadow:0 16px 38px -30px rgba(11,18,32,.55)}
.remodel-intro .trust-strip>div{padding:15px 16px;border-right:0;border-bottom:1px solid var(--line)}
.remodel-intro .trust-strip>div:last-child{border-bottom:0}
.remodel-intro .trust-strip b{font-size:.82rem;margin-top:3px}.remodel-intro .trust-strip small{font-size:.7rem;line-height:1.35;display:block;margin-top:2px}

/* Antes/después: imagen completa, centrada y clicable */
.before-after-lightbox{overflow:visible}
.ph-antes{aspect-ratio:16/10!important;background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important;background-color:transparent!important}

/* Presentación de alquiler más editorial y menos bloque plano */
#alquiler .division-head{display:grid;grid-template-columns:.72fr 1.28fr;column-gap:54px;align-items:end}
#alquiler .division-head .division-tag{grid-column:1}
#alquiler .division-head h2{grid-column:1;margin-bottom:0}
#alquiler .division-head p{grid-column:2;grid-row:1 / span 2;max-width:620px;margin:0;padding:20px 24px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.055)}

@media(max-width:1120px){.main-nav{gap:13px}.nav-link{font-size:.79rem}.remodel-intro{grid-template-columns:200px minmax(0,1fr);gap:22px}}
@media(max-width:940px){.remodel-intro{display:block}.remodel-intro .trust-strip{grid-template-columns:repeat(2,1fr);margin:0 0 20px}.remodel-intro .trust-strip>div{border-right:1px solid var(--line)}#alquiler .division-head{display:block}#alquiler .division-head p{margin-top:18px}}
@media(max-width:700px){.remodel-intro .trust-strip{grid-template-columns:1fr 1fr}.remodel-intro .trust-strip>div{padding:12px}.brand img{width:44px;height:44px}}

/* ============================================================
   V10 · Ajustes de identidad, orden y catálogo
   ============================================================ */
/* Logotipo oficial extraído del arte vectorial entregado */
.brand{min-width:215px;gap:0}.brand-logo-hd{display:block;width:190px!important;height:58px!important;object-fit:contain;object-position:left center;border-radius:5px}
.brand-text{display:none!important}.header-inner{min-height:66px}

/* Cemento más perceptible, manteniendo lectura limpia */
.site-header{background-image:linear-gradient(rgba(247,246,242,.52),rgba(247,246,242,.52)),var(--concrete);background-size:auto,360px auto}
.division-light,.about,.faq,.social-showcase{background-image:linear-gradient(rgba(248,247,243,.72),rgba(248,247,243,.72)),var(--concrete);background-size:auto,440px auto;background-attachment:scroll}
.about{border-top:1px solid rgba(11,18,32,.08);border-bottom:1px solid rgba(11,18,32,.08)}

/* Antes / después: respetar la proporción REAL 1400 × 761 sin recorte */
.before-after-lightbox{aspect-ratio:auto!important;min-height:0!important;overflow:visible!important}
.before-after-lightbox .ph-antes{width:100%!important;height:auto!important;aspect-ratio:1400/761!important;background-size:100% 100%!important;background-position:center!important;background-repeat:no-repeat!important;border-radius:14px}

/* Catálogo alquiler: tarjetas más modernas, limpias y visuales */
#tarifas{padding-top:54px}
#tarifas .section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:34px;margin-bottom:34px}
#tarifas .section-heading .section-label,#tarifas .section-heading h3{grid-column:1}
#tarifas .section-heading p{grid-column:2;grid-row:1 / span 2;margin:0;padding:18px 20px;border-radius:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.11)}
.equip-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.equip{border-radius:18px;background:#fff;border:1px solid rgba(255,255,255,.12);box-shadow:0 12px 30px rgba(0,0,0,.14)}
.equip:hover{transform:translateY(-7px);box-shadow:0 20px 42px rgba(0,0,0,.22)}
.equip-photo{aspect-ratio:1.18/1;border-radius:14px;margin:8px 8px 0;overflow:hidden;background-size:cover;transition:transform .35s var(--ease)}
.equip:hover .equip-photo{transform:scale(1.012)}
.equip-photo b{top:10px;left:10px;background:var(--orange);color:#fff;box-shadow:none}
.equip-name{display:none}
.equip-body{padding:17px 18px 19px;gap:8px}.equip-body h4{font-size:1.02rem}.equip-body p{line-height:1.55;min-height:2.7em}
.equip-cta{border-top:0;padding-top:8px;color:var(--orange);font-size:.82rem}
.equip-help{border:1px solid rgba(255,255,255,.15);background:linear-gradient(145deg,#172238,#0b1220)}
.terms{border-left:0;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.055)}

@media(max-width:1150px){.brand{min-width:175px}.brand-logo-hd{width:165px!important;height:54px!important}.equip-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.equip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#tarifas .section-heading{display:block}#tarifas .section-heading p{margin-top:16px}.brand{min-width:auto}.brand-logo-hd{width:150px!important;height:50px!important}}
@media(max-width:560px){.equip-grid{grid-template-columns:1fr}.brand-logo-hd{width:138px!important;height:46px!important}}


/* ============================================================
   V11 · Corrección visual final: fondos limpios + identidad MAQTRA
   ============================================================ */
/* Sin textura de cemento: superficies continuas, sin mosaicos ni cortes */
.site-header,.division-light,.about,.faq,.social-showcase{
  background-image:none!important;background-attachment:initial!important;
}
.site-header{background:#fff!important;border-bottom:1px solid #e8ebef}

/* Logo sin recuadro de fondo y con mayor presencia */
.brand{min-width:178px!important}
.brand-logo-hd{width:168px!important;height:64px!important;object-fit:contain!important;object-position:left center!important;border-radius:0!important}
.header-inner{min-height:72px!important;padding-top:4px!important;padding-bottom:4px!important}

/* 01 blanco · Quiénes somos a ancho completo */
.about{
  max-width:none!important;width:100%!important;margin:0!important;
  padding-left:max(var(--gutter),calc((100vw - var(--max))/2 + var(--gutter)))!important;
  padding-right:max(var(--gutter),calc((100vw - var(--max))/2 + var(--gutter)))!important;
  background:#fff!important;border:0!important;
}

/* 02 azul · Remodelación completa */
#remodelacion{background:#0b1424!important;color:#fff}
#remodelacion .division-head,#remodelacion .products,#remodelacion .bridge{color:#fff}
#remodelacion .division-head p,#remodelacion .section-heading p,#remodelacion .cat-desc,#remodelacion .bridge p{color:#aeb8c8}
#remodelacion .section-label,#remodelacion .section-heading em,#remodelacion .split-copy em{color:#fe6f00}
#remodelacion .remodel-intro .trust-strip{background:#111d30!important;border:1px solid rgba(255,255,255,.1);box-shadow:none}
#remodelacion .remodel-intro .trust-strip>div{border-color:rgba(255,255,255,.1)}
#remodelacion .remodel-intro .trust-strip small{color:#aeb8c8}
#remodelacion .split-copy .pillars>div{border-color:rgba(255,255,255,.13)}
#remodelacion .split-copy .pillars p{color:#aeb8c8}
#remodelacion .arrow-link{color:#fff;border-color:#fe6f00}
#remodelacion .portfolio-tile{box-shadow:0 18px 42px -26px rgba(0,0,0,.8)}
#remodelacion .cat-panel{background:#111d30;border-color:rgba(255,255,255,.1)}
#remodelacion .cat-back{color:#fff}
#remodelacion .work{background:#fff;color:#0b1424}
#remodelacion .bridge{border-top:1px solid rgba(255,255,255,.12)}
#remodelacion .bridge .button-dark{background:#fe6f00;color:#fff}

/* Antes/después: proporción real después de eliminar el borde negro inferior */
.before-after-lightbox .ph-antes{aspect-ratio:1400/752!important;background-size:contain!important;background-color:#0b1424!important}

/* 03 blanco · Alquiler: catálogo más comercial y moderno */
#alquiler{background:#fff!important;color:#0b1424!important}
#alquiler .division-tag{color:#fff;background:#fe6f00}
#alquiler .division-head p{background:#f5f7fa!important;border:1px solid #e3e8ef!important;color:#5e6878!important;box-shadow:none}
#alquiler .section-heading.light h3,#alquiler .section-heading.light .section-label{color:#0b1424!important}
#alquiler .section-heading.light h3 em{color:#fe6f00!important}
#alquiler #tarifas .section-heading p{background:#f5f7fa!important;border:1px solid #e3e8ef!important;color:#5e6878!important}
#alquiler .equip-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
#alquiler .equip{position:relative;overflow:hidden;border:1px solid #e3e8ef!important;border-radius:20px!important;background:#fff!important;box-shadow:0 14px 34px -26px rgba(11,20,36,.5)!important}
#alquiler .equip::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#fe6f00;opacity:0;transition:.25s var(--ease);z-index:3}
#alquiler .equip:hover{transform:translateY(-5px)!important;box-shadow:0 24px 48px -28px rgba(11,20,36,.5)!important;border-color:#cfd6df!important}
#alquiler .equip:hover::before{opacity:1}
#alquiler .equip-photo{aspect-ratio:16/10!important;margin:0!important;border-radius:0!important;background-color:#f3f5f7!important;background-size:cover!important;background-position:center!important}
#alquiler .equip-photo.contain{background-size:contain!important;background-repeat:no-repeat!important}
#alquiler .equip-photo b{top:14px;left:14px;padding:7px 10px;border-radius:999px;font-size:.66rem;letter-spacing:.05em;box-shadow:0 8px 18px rgba(255,106,0,.2)}
#alquiler .equip-body{padding:20px 21px 21px!important;gap:10px!important}
#alquiler .equip-body h4{display:block!important;color:#0b1424;font-size:1.08rem;line-height:1.2;margin:0}
#alquiler .equip-body p{color:#697386!important;min-height:auto!important;font-size:.88rem}
#alquiler .equip-cta{display:flex;align-items:center;justify-content:space-between;margin-top:4px;padding-top:13px!important;border-top:1px solid #edf0f4!important;font-weight:800!important;color:#fe6f00!important}
#alquiler .equip-help{background:#0b1424!important;border-color:#0b1424!important;display:flex;align-items:center}
#alquiler .equip-help::before{display:none}
#alquiler .equip-help .equip-body h4{color:#fff}
#alquiler .equip-help .equip-body p{color:#b9c2d0!important}
#alquiler .terms{background:#f5f7fa!important;border:1px solid #e3e8ef!important;color:#0b1424!important}
#alquiler .terms li{color:#5e6878}

/* 04 azul · FAQ / cierre visual para conservar alternancia */
.faq{background:#0b1424!important;color:#fff}
.faq p,.faq summary+div{color:#b9c2d0}
.social-showcase{background:#fff!important}

@media(max-width:1150px){#alquiler .equip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-logo-hd{width:154px!important;height:60px!important}}
@media(max-width:760px){.about{padding-left:var(--gutter)!important;padding-right:var(--gutter)!important}#alquiler .equip-grid{grid-template-columns:1fr}.brand-logo-hd{width:142px!important;height:54px!important}.header-inner{min-height:64px!important}}

/* V12 ajustes solicitados */
.site-header{background:#fff!important}.brand{min-width:205px!important}.brand-logo-hd{width:195px!important;height:68px!important;object-fit:contain!important;object-position:left center!important}
#remodelacion .products{background:#fff!important;color:#0b1424!important;max-width:none!important;width:100%!important;padding-left:max(var(--gutter),calc((100vw - var(--max))/2 + var(--gutter)))!important;padding-right:max(var(--gutter),calc((100vw - var(--max))/2 + var(--gutter)))!important}
#remodelacion .products .section-heading p,#remodelacion .products .cat-desc{color:#697386!important}#remodelacion .products .section-label,#remodelacion .products .section-heading em{color:#fe6f00!important}#remodelacion .products .cat-panel{background:#f7f8fa!important;border:1px solid #e5e8ed!important}#remodelacion .products .cat-back,#remodelacion .products .arrow-link{color:#0b1424!important}#remodelacion .products .work{background:#fff!important;color:#0b1424!important}
#alquiler{background:#0b1424!important;color:#fff!important}#alquiler .division-head p,#alquiler #tarifas .section-heading p{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.14)!important;color:#b9c2d0!important}#alquiler .section-heading.light h3,#alquiler .section-heading.light .section-label{color:#fff!important}#alquiler .section-heading.light h3 em{color:#fe6f00!important}
#alquiler .equip-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(255px,1fr))!important;gap:var(--s5)!important}#alquiler .equip{background:#fff!important;color:var(--navy)!important;border:0!important;border-radius:var(--r)!important;overflow:hidden!important;box-shadow:var(--sh-sm)!important}#alquiler .equip::before{display:none!important}#alquiler .equip:hover{transform:translateY(-5px)!important;box-shadow:var(--sh)!important}#alquiler .equip-photo{aspect-ratio:4/3!important;margin:0!important;border-radius:0!important;background-size:cover!important;background-position:center!important;background-color:#f1efea!important}#alquiler .equip-photo.contain{background-size:contain!important;background-repeat:no-repeat!important;background-color:#f4f2ee!important}#alquiler .equip-photo b{top:12px!important;left:12px!important;padding:6px 11px!important;border-radius:999px!important;background:rgba(255,255,255,.94)!important;color:var(--navy)!important;box-shadow:var(--sh-sm)!important}#alquiler .equip-body{padding:var(--s5)!important;gap:var(--s2)!important}#alquiler .equip-body h4{display:none!important}#alquiler .equip-body p{font-size:.86rem!important;color:var(--muted)!important}#alquiler .equip-cta{margin-top:auto!important;padding-top:var(--s4)!important;border-top:1px dashed var(--line)!important;color:var(--navy)!important}#alquiler .equip-help{background:linear-gradient(160deg,var(--navy-2),var(--navy-3))!important;color:#fff!important;border:0!important}#alquiler .equip-help .equip-body h4{display:block!important;color:#fff!important}#alquiler .equip-help .equip-body p{color:var(--muted-light)!important}#alquiler .terms{background:rgba(255,255,255,.05)!important;border:0!important;border-left:4px solid var(--orange)!important;color:#fff!important}#alquiler .terms li{color:var(--muted-light)!important}
.faq{background:#fff!important;color:#0b1424!important}.faq .section-heading h3,.faq-list summary{color:#0b1424!important}.faq .section-heading em,.faq .section-label{color:#fe6f00!important}.faq-list details{background:#fff!important;border:1px solid #e5e8ed!important}.faq-list p{color:#697386!important}
.contact{background:#0b1424!important;color:#fff!important}.contact .section-label,.contact-head em{color:#fe6f00!important}
@media(max-width:760px){.brand{min-width:auto!important}.brand-logo-hd{width:155px!important;height:56px!important}}

/* ============================================================
   V13 · Correcciones de continuidad visual, logos y titular alquiler
   ============================================================ */
/* El blanco debe llegar de borde a borde: el ancho se limita solo en el contenido */
#remodelacion .products,
.faq{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
  background:#fff!important;
}
.faq{
  padding-left:max(var(--gutter),calc((100vw - var(--max))/2 + var(--gutter)))!important;
  padding-right:max(var(--gutter),calc((100vw - var(--max))/2 + var(--gutter)))!important;
}

/* El puente 'También estás en obra' todavía pertenece al bloque blanco */
#remodelacion .bridge{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
  background:#fff!important;
  color:#0b1424!important;
  border-top:1px solid #edf0f4!important;
  padding-left:max(var(--gutter),calc((100vw - var(--max))/2 + var(--gutter)))!important;
  padding-right:max(var(--gutter),calc((100vw - var(--max))/2 + var(--gutter)))!important;
}
#remodelacion .bridge p{color:#697386!important}
#remodelacion .bridge .button-dark{background:#fe6f00!important;color:#fff!important}

/* Logo superior: independiente y con mayor presencia */
.brand{min-width:245px!important}
.brand-logo-hd{
  width:230px!important;
  height:78px!important;
  object-fit:contain!important;
  object-position:left center!important;
}
.header-inner{min-height:82px!important}

/* Titular del catálogo en una sola línea en escritorio */
#tarifas .section-heading{max-width:none!important;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr)!important}
#tarifas .section-heading h3{
  white-space:nowrap!important;
  font-size:clamp(2rem,3vw,3.35rem)!important;
  line-height:1.02!important;
}

/* Footer: logo independiente del header, más grande y legible sobre azul */
.footer-brand{gap:22px!important;align-items:center!important}
.footer-brand img{
  width:150px!important;
  height:105px!important;
  object-fit:contain!important;
  object-position:center!important;
  background:#fff!important;
  padding:8px!important;
  border-radius:10px!important;
}
.footer-brand p{font-size:.92rem!important;line-height:1.55!important}

@media(max-width:1050px){
  .brand{min-width:205px!important}.brand-logo-hd{width:195px!important;height:70px!important}
  #tarifas .section-heading h3{font-size:clamp(1.8rem,3vw,2.6rem)!important}
}
@media(max-width:900px){
  #tarifas .section-heading{display:block!important}
  #tarifas .section-heading h3{white-space:normal!important}
}
@media(max-width:760px){
  .brand{min-width:auto!important}.brand-logo-hd{width:165px!important;height:60px!important}.header-inner{min-height:68px!important}
  .footer-brand img{width:125px!important;height:90px!important}
}

/* ============================================================
   V14 · continuidad blanca + alquiler sin traslapes + logos legibles
   ============================================================ */
/* El puente pertenece al mismo bloque blanco: sin línea divisoria */
#remodelacion .bridge{
  border-top:0!important;
  box-shadow:none!important;
  background:#fff!important;
}

/* Cabecera del catálogo: título y texto auxiliar en filas independientes */
#tarifas .section-heading{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
  align-items:start!important;
  max-width:none!important;
}
#tarifas .section-heading .section-label{grid-column:1!important;grid-row:1!important}
#tarifas .section-heading h3{
  grid-column:1!important;grid-row:2!important;
  margin:0!important;
  white-space:nowrap!important;
  max-width:100%!important;
  font-size:clamp(2rem,2.7vw,3.05rem)!important;
  line-height:1.08!important;
}
#tarifas .section-heading p{
  grid-column:1!important;grid-row:3!important;
  width:100%!important;max-width:none!important;
  margin:2px 0 10px!important;
  padding:14px 18px!important;
  box-sizing:border-box!important;
  line-height:1.5!important;
}

/* Header y footer usan archivos separados para poder dimensionarlos de forma independiente */
.brand{min-width:150px!important}
.brand-logo-hd{
  width:130px!important;height:98px!important;
  object-fit:contain!important;object-position:left center!important;
}
.header-inner{min-height:106px!important}
.footer-brand img{
  width:205px!important;height:138px!important;
  padding:0!important;background:transparent!important;border-radius:0!important;
  object-fit:contain!important;object-position:center!important;
}
.footer-brand{gap:24px!important}

@media(max-width:1100px){
  .brand{min-width:130px!important}.brand-logo-hd{width:112px!important;height:84px!important}.header-inner{min-height:92px!important}
  #tarifas .section-heading h3{font-size:clamp(1.8rem,2.6vw,2.55rem)!important}
}
@media(max-width:760px){
  .brand{min-width:auto!important}.brand-logo-hd{width:92px!important;height:70px!important}.header-inner{min-height:78px!important}
  #tarifas .section-heading h3{white-space:normal!important}
  .footer-brand img{width:165px!important;height:112px!important}
}

/* ============================================================
   V15 · ajuste visual solicitado
   ============================================================ */
/* La consulta vuelve a ser una pastilla compacta, no una barra completa */
#tarifas .section-heading p{
  display:inline-block!important;
  width:fit-content!important;
  max-width:100%!important;
  justify-self:start!important;
  padding:13px 18px!important;
  margin:2px 0 10px!important;
  border-radius:14px!important;
}

/* Footer: recuperar la placa blanca detrás del logotipo para conservar contraste */
.footer-brand img{
  width:205px!important;
  height:138px!important;
  object-fit:contain!important;
  object-position:center!important;
  background:#fff!important;
  padding:10px!important;
  border-radius:10px!important;
  box-sizing:border-box!important;
}

@media(max-width:760px){
  #tarifas .section-heading p{width:fit-content!important;max-width:100%!important}
  .footer-brand img{width:165px!important;height:112px!important;padding:8px!important}
}

/* ============================================================
   V16 · Textura de cemento correcta (imagen única, sin mosaico)
   + corrección de nombre oculto en tarjetas de alquiler
   + tarjetas de alquiler más profesionales
   Referencia: paleta y textura oficiales tomadas de Logo_MAQTRA.ai
   Primarios: #e3dfdc (cemento) · #fe6f00 (naranja)
   Secundarios: #000000 (negro) · #00345e (azul institucional)
   ============================================================ */

/* La v11 quitó la textura por verse "en mosaico" (tile pequeño y repetido).
   Aquí se aplica como una sola imagen de cobertura, sin repetir: no hay
   costuras posibles porque no hay repetición. */
.site-header,
.about,
#remodelacion .products,
#remodelacion .bridge,
.faq,
.social-showcase{
  background-color:var(--cement)!important;
  background-image:
    linear-gradient(rgba(255,255,255,.4),rgba(255,255,255,.4)),
    url('img/concrete-maqtra.jpg')!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}
/* Las tarjetas/superficies de contenido sobre el cemento se quedan limpias
   a propósito, para que el texto respire y el cemento no compita con ellas. */
#remodelacion .products .cat-panel,
#remodelacion .products .work,
.faq-list details{
  background-color:#fff!important;
}

/* ---------- Corrección: el nombre del producto había quedado oculto ---------- */
#alquiler .equip-body h4{display:block!important;font-size:1rem!important;margin:2px 0 0!important}

/* ---------- Etiqueta de categoría por producto ---------- */
.equip-tag{
  align-self:flex-start;padding:4px 11px;border-radius:999px;
  background:rgba(254,111,0,.12);color:var(--orange);
  font:700 9px/1 var(--mono);letter-spacing:.09em;text-transform:uppercase;
}

/* ---------- CTA de cada tarjeta como botón real, no solo texto ---------- */
#alquiler .equip-cta,
.equip-cta{
  margin-top:auto!important;display:inline-flex!important;align-items:center!important;
  justify-content:center!important;gap:8px!important;
  padding:11px 20px!important;border-radius:999px!important;
  background:var(--orange)!important;color:#fff!important;
  font-weight:700!important;font-size:.82rem!important;
  border-top:0!important;box-shadow:0 10px 22px -12px rgba(254,111,0,.7);
  transition:background-color .25s var(--ease),transform .25s var(--ease);
}
#alquiler .equip-cta b,.equip-cta b{color:#fff!important}
#alquiler .equip:hover .equip-cta,.equip:hover .equip-cta{background:#e35f00!important;transform:translateY(-2px)}

/* Logo un poco más grande sobre el cemento del header, sin perder proporción */
.brand{min-width:150px!important}
.brand-logo-hd{width:132px!important;height:100px!important}
.header-inner{min-height:110px!important}
@media(max-width:1100px){
  .brand{min-width:130px!important}.brand-logo-hd{width:114px!important;height:86px!important}.header-inner{min-height:94px!important}
}
@media(max-width:760px){
  .brand{min-width:auto!important}.brand-logo-hd{width:94px!important;height:72px!important}.header-inner{min-height:80px!important}
}

/* V18: alternancia cemento / azul sin costuras y textura HD nativa */
:root{--maqtra-concrete-v18:url('img/concrete-maqtra-hd-v18.jpg')}
.site-header,.about,#alquiler,.contact{background-color:#e7e3df!important;background-image:linear-gradient(rgba(255,255,255,.44),rgba(255,255,255,.44)),var(--maqtra-concrete-v18)!important;background-repeat:no-repeat!important;background-position:center!important;background-size:cover!important;background-attachment:scroll!important}
#remodelacion,.faq,.social-showcase{background:#00345e!important;background-image:none!important;color:#fff!important}
#remodelacion .division-head,#remodelacion .remodel-intro,#remodelacion .split,#remodelacion .products,#remodelacion .bridge,#alquiler .division-head,#alquiler #tarifas,#alquiler .bridge,.contact>.section{background:transparent!important;background-image:none!important}
#remodelacion h2,#remodelacion h3,#remodelacion .bridge-tag{color:#fff!important}#remodelacion .division-head p,#remodelacion .section-heading p,#remodelacion .bridge p,#remodelacion .pillars p{color:#d7e2eb!important}#remodelacion .section-label,#remodelacion h3 em,#remodelacion .section-heading em{color:#ff7100!important}
#remodelacion .remodel-intro .trust-strip{background:rgba(255,255,255,.96)!important;color:#071525!important}#remodelacion .remodel-intro .trust-strip small{color:#687384!important}#remodelacion .products .cat-panel,#remodelacion .products .work{background:#fff!important;color:#071525!important}#remodelacion .products .cat-desc{color:#697386!important}#remodelacion .products .cat-back,#remodelacion .products .arrow-link{color:#fff!important}#remodelacion .bridge{border-top:1px solid rgba(255,255,255,.18)!important}
#alquiler{color:#071525!important}#alquiler h2,#alquiler h3,#alquiler h4,#alquiler .section-heading.light h3{color:#071525!important}#alquiler .division-head p,#alquiler #tarifas .section-heading p{background:rgba(255,255,255,.86)!important;border:1px solid rgba(7,21,37,.09)!important;color:#5f6a78!important}#alquiler .section-heading.light .section-label,#alquiler .section-heading.light h3 em{color:#ff7100!important}#alquiler .terms{background:rgba(255,255,255,.9)!important;border:1px solid rgba(7,21,37,.09)!important;color:#071525!important}#alquiler .terms li,#alquiler .bridge-light p{color:#5f6a78!important}
.faq h3,.faq .section-heading h3{color:#fff!important}.faq .section-label,.faq h3 em{color:#ff7100!important}.faq-list details{background:#fff!important;border:0!important}.faq-list details summary{color:#071525!important}.faq-list details p{color:#697386!important}
.contact{color:#071525!important}.contact h3,.contact .contact-head h3{color:#071525!important}.contact .section-label,.contact h3 em{color:#ff7100!important}.contact .contact-head p{color:#5f6a78!important}.contact-form{background:rgba(7,21,37,.94)!important;padding:24px!important;border-radius:18px!important}.contact-form label{color:#fff!important}
.social-showcase h2,.social-showcase p{color:#fff!important}.social-showcase .section-label,.social-showcase h2 em{color:#ff7100!important}

/* ===== MAQTRA v19 — alternancia exacta solicitada ===== */
:root{--maqtra-blue:#0b1424;--maqtra-concrete-v19:url('img/concrete-maqtra-hd-v18.jpg')}
/* 1. Quiénes somos: cemento */
.about{
  background-color:#eeeae5!important;
  background-image:linear-gradient(rgba(255,255,255,.48),rgba(255,255,255,.48)),var(--maqtra-concrete-v19)!important;
  background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;
}
/* 2. Remodelación: azul corporativo, salvo el catálogo que es la sección 3 */
#remodelacion{background:var(--maqtra-blue)!important;color:#fff!important}
#remodelacion .division-head,#remodelacion .remodel-intro,#remodelacion .split{background:transparent!important;background-image:none!important}
/* 3. Construimos a la medida: cemento como sección independiente visual */
#remodelacion .products{
  background-color:#eeeae5!important;
  background-image:linear-gradient(rgba(255,255,255,.48),rgba(255,255,255,.48)),var(--maqtra-concrete-v19)!important;
  background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;
  color:#071525!important;
}
#remodelacion .products .section-heading h3{color:#071525!important}
#remodelacion .products .section-heading p,#remodelacion .products .cat-desc{color:#697386!important}
#remodelacion .products .cat-back,#remodelacion .products .arrow-link{color:#071525!important}
/* El puente final pertenece visualmente al bloque de productos */
#remodelacion .bridge{
  background-color:#eeeae5!important;
  background-image:linear-gradient(rgba(255,255,255,.48),rgba(255,255,255,.48)),var(--maqtra-concrete-v19)!important;
  background-size:cover!important;background-position:center bottom!important;background-repeat:no-repeat!important;
  color:#071525!important;border-top:0!important;
}
#remodelacion .bridge p{color:#697386!important}
/* 4. Alquiler: azul */
#alquiler{background:var(--maqtra-blue)!important;background-image:none!important;color:#fff!important}
#alquiler .division-head,#alquiler #tarifas,#alquiler .bridge{background:transparent!important;background-image:none!important}
#alquiler h2,#alquiler h3,#alquiler h4,#alquiler .section-heading.light h3{color:#fff!important}
#alquiler .division-head p,#alquiler #tarifas .section-heading p{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.14)!important;color:#b9c2d0!important}
#alquiler .terms{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.14)!important;color:#fff!important}
#alquiler .terms li,#alquiler .bridge-light p{color:#b9c2d0!important}
/* 5. FAQ: cemento */
.faq{
  background-color:#eeeae5!important;
  background-image:linear-gradient(rgba(255,255,255,.48),rgba(255,255,255,.48)),var(--maqtra-concrete-v19)!important;
  background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;color:#071525!important;
}
.faq h3,.faq .section-heading h3,.faq-list summary{color:#071525!important}
/* 6. Contacto / Hablemos: azul */
.contact{background:var(--maqtra-blue)!important;background-image:none!important;color:#fff!important}
.contact>.section{background:transparent!important;background-image:none!important}
.contact h3,.contact .contact-head h3{color:#fff!important}.contact .contact-head p{color:#b9c2d0!important}
/* Evita que reglas antiguas vuelvan a teñir estos bloques */
.social-showcase{background:#fff!important;background-image:none!important}

/* ===== MAQTRA v20 — corrección de contraste en bloque de redes =====
   El fondo del bloque social es blanco, por lo tanto se restablecen
   explícitamente los textos oscuros. Una regla anterior de v18/v19
   conservaba h2 y p en blanco y los hacía desaparecer visualmente. */
.social-showcase{
  background:#fff!important;
  background-image:none!important;
  color:#071525!important;
}
.social-showcase h2{
  color:#071525!important;
}
.social-showcase p{
  color:#697386!important;
}
.social-showcase .section-label{
  color:#ff7100!important;
}
.social-showcase h2 em{
  color:#ff7100!important;
}
.social-showcase .social-card,
.social-showcase .social-card b,
.social-showcase .social-card small{
  color:#fff!important;
}

/* ===== MAQTRA v21 — legibilidad del puente sobre cemento ===== */
#remodelacion .bridge .bridge-tag{
  color:#0b1424!important;
}
#remodelacion .bridge p{
  color:#5f6a78!important;
}


/* ===== MAQTRA v22 — ajustes solicitados sobre base v21 ===== */
:root{--maqtra-concrete-v22:url('img/concrete-maqtra-detail-v22.jpg')}
/* Cemento más definido y orgánico, sin puntos tipo burbuja */
.site-header,.about,#remodelacion .products,#remodelacion .bridge,.faq{
  background-color:#e9e6e1!important;
  background-image:linear-gradient(rgba(255,255,255,.30),rgba(255,255,255,.30)),var(--maqtra-concrete-v22)!important;
  background-repeat:repeat!important;
  background-position:center top!important;
  background-size:1024px 1024px!important;
}
/* Al abrir una categoría, el catálogo ya no crea una placa blanca rectangular. */
#remodelacion .products .cat-panel,
#remodelacion .products .cat-panel.active{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
}
/* Las fichas dejan ver el cemento alrededor y debajo del texto. */
#remodelacion .products .cat-grid,
#remodelacion .products .cat-desc{
  background:transparent!important;
}
#remodelacion .products .work{
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
}
/* Se conserva la fotografía como elemento definido, sin convertir toda la ficha en bloque blanco. */
#remodelacion .products .work .ph-frame{
  background:#fff!important;
  border-radius:16px!important;
  overflow:hidden!important;
}
/* Footer sin logotipo; texto alineado limpiamente. */
.footer-brand{display:block!important}
.footer-brand img{display:none!important}

/* ===== MAQTRA v23 — textura continua HD, sin mosaicos ni cortes ===== */
:root{--maqtra-concrete-v23:url('img/concrete-maqtra-hd-v23.jpg')}
/* La textura usa una sola referencia fija: no se repite en cuadros y no reinicia entre bloques. */
.site-header,.about,#remodelacion .products,#remodelacion .bridge,.faq{
  background-color:#f1efec!important;
  background-image:linear-gradient(rgba(255,255,255,.20),rgba(255,255,255,.20)),var(--maqtra-concrete-v23)!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
  background-size:cover!important;
  background-attachment:fixed!important;
}
/* Catálogo: ninguna placa general tapa el cemento. */
#remodelacion .products,
#remodelacion .products .cat-panel,
#remodelacion .products .cat-panel.active,
#remodelacion .products .cat-grid,
#remodelacion .products .cat-desc,
#remodelacion .products .work{
  border-color:transparent!important;
  box-shadow:none!important;
}
#remodelacion .products .cat-panel,
#remodelacion .products .cat-panel.active,
#remodelacion .products .cat-grid,
#remodelacion .products .cat-desc,
#remodelacion .products .work{background-color:transparent!important;background-image:none!important}
/* Sólo la foto conserva una superficie limpia; el resto de la ficha queda integrado al fondo. */
#remodelacion .products .work .ph-frame{background:#fff!important}
/* Footer: sin logotipo. */
.footer-brand img{display:none!important}
@media (max-width:900px){
  .site-header,.about,#remodelacion .products,#remodelacion .bridge,.faq{background-attachment:scroll!important;background-size:auto 1400px!important;background-position:center top!important}
}

/* ===== MAQTRA v24 — continuidad visual + trust strip integrado ===== */
/* Productos y puente se leen como UNA sola superficie: sin borde/costura. */
#remodelacion .products,
#remodelacion .bridge{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background-color:#f1efec!important;
  background-image:linear-gradient(rgba(255,255,255,.20),rgba(255,255,255,.20)),var(--maqtra-concrete-v23)!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-attachment:fixed!important;
}
#remodelacion .products{background-position:center center!important}
#remodelacion .bridge{
  background-position:center center!important;
  margin-top:-1px!important; /* elimina cualquier hairline por redondeo del navegador */
  padding-top:clamp(42px,4vw,64px)!important;
}
/* Nada dentro del puente dibuja una separación horizontal. */
#remodelacion .bridge::before,#remodelacion .bridge::after{display:none!important}

/* Bloque de beneficios dentro de la sección azul: sin tarjeta blanca. */
#remodelacion .remodel-intro .trust-strip{
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#fff!important;
}
#remodelacion .remodel-intro .trust-strip>div{
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.13)!important;
  padding:15px 4px!important;
}
#remodelacion .remodel-intro .trust-strip>div:last-child{border-bottom:0!important}
#remodelacion .remodel-intro .trust-strip span{color:#ff7100!important;font-weight:800!important}
#remodelacion .remodel-intro .trust-strip b{color:#fff!important;font-weight:750!important}
#remodelacion .remodel-intro .trust-strip small{color:#b8c3d2!important}

@media(max-width:900px){
  #remodelacion .products,#remodelacion .bridge{background-attachment:scroll!important;background-size:auto 1400px!important}
}

/* ===== MAQTRA v25 — cemento HD real + sección social integrada ===== */
:root{--maqtra-concrete-v25:url('img/concrete-maqtra-hd-v25.jpg')}

/* Una misma textura HD para todas las superficies claras. Sin mosaicos, sin repeat,
   sin bloques internos que reinicien el fondo. */
.site-header,
.about,
#remodelacion .products,
#remodelacion .bridge,
.faq,
.social-showcase{
  background-color:#f1efec!important;
  background-image:linear-gradient(rgba(255,255,255,.12),rgba(255,255,255,.12)),var(--maqtra-concrete-v25)!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
  background-size:cover!important;
  background-attachment:fixed!important;
}

/* Redes: conserva el cemento visible y mantiene legibilidad. */
.social-showcase{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  color:#071525!important;
}
.social-showcase h2{color:#071525!important}
.social-showcase p{color:#5f6a78!important}
.social-showcase .section-label,.social-showcase h2 em{color:#ff7100!important}
.social-showcase .social-card,.social-showcase .social-card b,.social-showcase .social-card small{color:#fff!important}

/* Catálogo: absolutamente transparente fuera de las fotografías. */
#remodelacion .products .cat-panel,
#remodelacion .products .cat-panel.active,
#remodelacion .products .cat-grid,
#remodelacion .products .cat-desc,
#remodelacion .products .work{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
}

/* Footer sin logo, conservando el header independiente. */
.footer-brand img{display:none!important}
.brand .brand-logo-hd{display:block!important}

@media(max-width:900px){
  .site-header,.about,#remodelacion .products,#remodelacion .bridge,.faq,.social-showcase{
    background-attachment:scroll!important;
    background-size:cover!important;
    background-position:center center!important;
  }
}
\n\n/* ===== MAQTRA v26 — fondo natural, NO fijo, sin costuras ===== */
/* Regresamos a la textura de cemento fina/limpia que se veía correctamente en v23.
   El fondo forma parte de cada sección y se desplaza normalmente con la página. */
:root{--maqtra-concrete-v26:url('img/concrete-maqtra-hd-v23.jpg')}

/* Nunca usar efecto parallax/fondo fijo. */
.site-header,.about,.faq,.social-showcase,.concrete-products-zone{
  background-attachment:scroll!important;
  background-repeat:no-repeat!important;
  background-image:linear-gradient(rgba(255,255,255,.18),rgba(255,255,255,.18)),var(--maqtra-concrete-v26)!important;
  background-size:cover!important;
  background-position:center center!important;
  background-color:#f3f1ed!important;
}

/* Productos + “También estás en obra” comparten UNA sola superficie física.
   Así no puede aparecer una línea/cambio de textura entre ambos bloques. */
.concrete-products-zone{
  width:100%;
  position:relative;
  overflow:hidden;
}
#remodelacion .concrete-products-zone .products,
#remodelacion .concrete-products-zone .bridge{
  background:transparent!important;
  background-image:none!important;
  background-color:transparent!important;
  background-attachment:scroll!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
#remodelacion .concrete-products-zone .bridge{margin-top:0!important}

/* El catálogo no dibuja rectángulos encima del cemento. */
#remodelacion .products .cat-panel,
#remodelacion .products .cat-panel.active,
#remodelacion .products .cat-grid,
#remodelacion .products .cat-desc,
#remodelacion .products .work{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
}
#remodelacion .products .work .ph-frame{background:#fff!important}

/* El bloque social usa el mismo lenguaje visual, pero su propio fondo natural. */
.social-showcase{border:0!important;box-shadow:none!important;color:#071525!important}
.social-showcase h2{color:#071525!important}
.social-showcase p{color:#5f6a78!important}
.social-showcase .section-label,.social-showcase h2 em{color:#ff7100!important}

/* Footer sigue sin logo. Header conserva su logo independiente. */
.footer-brand img{display:none!important}
.brand .brand-logo-hd{display:block!important}

@media(max-width:900px){
  .site-header,.about,.faq,.social-showcase,.concrete-products-zone{
    background-attachment:scroll!important;
    background-size:cover!important;
    background-position:center center!important;
  }
}

/* ===== MAQTRA v27 — cemento visible en TODOS los bloques claros ===== */
/* Archivo nuevo para evitar que el navegador reutilice en caché una versión anterior. */
:root{--maqtra-concrete-v27:url('img/concrete-maqtra-hd-v27.jpg')}

/* Las superficies claras usan cemento real como parte de cada bloque; nunca fixed. */
.site-header,
.about,
.faq,
.social-showcase,
.concrete-products-zone{
  background-color:#f4f2ee!important;
  background-image:linear-gradient(rgba(255,255,255,.34),rgba(255,255,255,.34)),var(--maqtra-concrete-v27)!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center center!important;
  background-attachment:scroll!important;
}

/* Productos y puente siguen siendo transparentes para que se vea UNA sola textura continua. */
#remodelacion .concrete-products-zone .products,
#remodelacion .concrete-products-zone .bridge,
#remodelacion .products .cat-panel,
#remodelacion .products .cat-panel.active,
#remodelacion .products .cat-grid,
#remodelacion .products .cat-desc,
#remodelacion .products .work{
  background-color:transparent!important;
  background-image:none!important;
}

/* Sin líneas artificiales entre contenidos que pertenecen al mismo bloque claro. */
#remodelacion .concrete-products-zone .products,
#remodelacion .concrete-products-zone .bridge{
  border-top:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
}

@media(max-width:900px){
  .site-header,.about,.faq,.social-showcase,.concrete-products-zone{
    background-image:linear-gradient(rgba(255,255,255,.30),rgba(255,255,255,.30)),var(--maqtra-concrete-v27)!important;
    background-size:cover!important;
    background-position:center center!important;
    background-attachment:scroll!important;
  }
}

/* ===== MAQTRA v28 — cemento Ultra HD natural, sin pixelado ===== */
:root{--maqtra-concrete-v28:url('img/concrete-maqtra-ultra-v28.jpg')}
.site-header,.about,.faq,.social-showcase,.concrete-products-zone{
  background-color:#f2f0eb!important;
  background-image:linear-gradient(rgba(255,255,255,.12),rgba(255,255,255,.12)),var(--maqtra-concrete-v28)!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center center!important;
  background-attachment:scroll!important;
}
/* La textura pertenece a cada bloque y se desplaza con él; no parallax/fixed. */
@media(max-width:900px){
 .site-header,.about,.faq,.social-showcase,.concrete-products-zone{
   background-size:cover!important;background-position:center center!important;background-attachment:scroll!important;
 }
}

/* v29 — Carrusel hero: dos imágenes, transición suave y controles discretos */
.hero-slide{transition:opacity 1.25s ease-in-out,transform 7s ease-out;will-change:opacity,transform}
.hero-arrow{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:44px;height:44px;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:rgba(8,13,22,.42);backdrop-filter:blur(8px);color:#fff;font-size:30px;line-height:1;display:grid;place-items:center;cursor:pointer;transition:background .25s ease,transform .25s ease,opacity .25s ease;opacity:.82}
.hero-arrow:hover{background:rgba(242,98,15,.92);transform:translateY(-50%) scale(1.05);opacity:1}
.hero-prev{left:clamp(12px,2vw,32px)}
.hero-next{right:clamp(12px,2vw,32px)}
@media(max-width:720px){.hero-arrow{width:38px;height:38px;font-size:26px}.hero-prev{left:8px}.hero-next{right:8px}}

/* ================================================================
   V30 · Ajustes solicitados 27/09/2026
   ================================================================ */
/* Sin cortes visuales entre bloques consecutivos */
.faq,.contact,.division,.section,.bridge,.concrete-products-zone{border-top:0!important;border-bottom:0!important}

/* FAQ: fondo oscuro, limpio y continuo */
.faq{background:var(--maqtra-blue,#0b1424)!important;background-image:none!important;color:#fff!important;box-shadow:none!important}
.faq .section-heading h3,.faq-list summary{color:#fff!important}
.faq .section-label,.faq .section-heading em{color:#ff7100!important}
.faq-list details{background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:none!important}
.faq-list details p{color:#c5ceda!important}

/* Condiciones comerciales: sin recuadro; información integrada al fondo */
#alquiler .terms{background:transparent!important;border:0!important;border-left:0!important;border-radius:0!important;box-shadow:none!important;padding:28px 0 8px!important}
#alquiler .terms h4{color:#fff!important}
#alquiler .terms ul{border-top:1px solid rgba(255,255,255,.12)!important;padding-top:22px!important}
#alquiler .terms li{color:#d3d9e2!important}

/* Catálogo de alquiler: fotografía protagonista + información superpuesta */
#alquiler .equip-grid{align-items:stretch!important}
#alquiler .equip{position:relative!important;min-height:430px!important;background:#111b2b!important;border-radius:18px!important;overflow:hidden!important;box-shadow:0 18px 38px rgba(0,0,0,.22)!important}
#alquiler .equip:not(.equip-help) .equip-photo{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;aspect-ratio:auto!important;background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;transition:transform .45s ease!important}
#alquiler .equip:not(.equip-help) .equip-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,12,24,.06) 20%,rgba(4,12,24,.42) 54%,rgba(4,12,24,.96) 100%);z-index:1}
#alquiler .equip:not(.equip-help):hover .equip-photo{transform:scale(1.035)!important}
#alquiler .equip:not(.equip-help) .equip-photo>b,#alquiler .equip:not(.equip-help) .zoom-hint{z-index:3!important}
#alquiler .equip:not(.equip-help) .equip-name{display:none!important}
#alquiler .equip:not(.equip-help) .equip-body{position:absolute!important;left:0;right:0;bottom:0;z-index:4!important;padding:24px!important;background:transparent!important;color:#fff!important}
#alquiler .equip:not(.equip-help) .equip-tag{display:inline-flex!important;background:rgba(255,113,0,.95)!important;color:#fff!important;border:0!important;margin-bottom:5px!important}
#alquiler .equip:not(.equip-help) .equip-body h4{display:block!important;color:#fff!important;font-size:1.18rem!important;line-height:1.15!important;text-shadow:0 2px 10px rgba(0,0,0,.35)}
#alquiler .equip:not(.equip-help) .equip-body p{color:#e5eaf0!important;font-size:.88rem!important;line-height:1.5!important;margin:3px 0 12px!important;min-height:0!important}
#alquiler .equip:not(.equip-help) .equip-cta{display:inline-flex!important;width:auto!important;padding:10px 16px!important;border:1px solid rgba(255,255,255,.32)!important;border-radius:999px!important;background:rgba(255,255,255,.12)!important;color:#fff!important;backdrop-filter:blur(6px)}
#alquiler .equip:not(.equip-help) .equip-cta:hover{background:#ff7100!important;border-color:#ff7100!important}
#alquiler .equip-help{min-height:430px!important}

/* Dos contactos WhatsApp visibles, sin romper el header */
.header-phones{display:flex;align-items:center;gap:8px;white-space:nowrap}
.header-phones .header-phone{font-size:.75rem!important;gap:4px!important}
.wa-float-secondary{bottom:82px!important}
@media(max-width:1180px){.header-phones .header-phone:nth-child(2){display:none}}
@media(max-width:760px){.wa-float span{display:none}.wa-float-secondary{bottom:76px!important}}

/* ================================================================
   V31 · Orden visual catálogo + FAQ cemento translúcido
   ================================================================ */
/* Tarjetas: una retícula editorial común para que títulos, textos y CTA
   queden alineados aunque las descripciones tengan longitudes distintas. */
#alquiler .equip:not(.equip-help){min-height:470px!important}
#alquiler .equip:not(.equip-help) .equip-photo::after{
  background:linear-gradient(180deg,rgba(4,12,24,.16) 0%,rgba(4,12,24,.28) 34%,rgba(4,12,24,.76) 57%,rgba(4,12,24,.98) 100%)!important;
}
/* Las imágenes claras reciben una capa adicional para garantizar contraste. */
#alquiler .equip-photo.contain::after{
  background:linear-gradient(180deg,rgba(4,12,24,.20) 0%,rgba(4,12,24,.36) 32%,rgba(4,12,24,.84) 56%,rgba(4,12,24,.99) 100%)!important;
}
#alquiler .equip:not(.equip-help) .equip-body{
  height:255px!important;
  padding:22px 24px 20px!important;
  display:grid!important;
  grid-template-rows:26px 58px 1fr 44px!important;
  align-content:end!important;
  gap:6px!important;
}
#alquiler .equip:not(.equip-help) .equip-tag{justify-self:start!important;align-self:start!important;margin:0!important}
#alquiler .equip:not(.equip-help) .equip-body h4{
  margin:0!important;align-self:start!important;font-size:1.14rem!important;line-height:1.16!important;
  display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden!important;
  text-shadow:0 2px 12px rgba(0,0,0,.72)!important;
}
#alquiler .equip:not(.equip-help) .equip-body p{
  margin:0!important;align-self:start!important;color:#f3f5f8!important;font-size:.86rem!important;line-height:1.42!important;
  display:-webkit-box!important;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden!important;
  text-shadow:0 2px 10px rgba(0,0,0,.72)!important;
}
#alquiler .equip:not(.equip-help) .equip-cta{
  width:100%!important;height:44px!important;justify-content:center!important;align-self:end!important;margin:0!important;
  background:rgba(7,16,29,.46)!important;border-color:rgba(255,255,255,.42)!important;
}
#alquiler .equip-help{min-height:470px!important}

/* FAQ vuelve al cemento Full HD. Las fichas son vidrio claro/transparente,
   no bloques opacos; texto oscuro de alto contraste. */
.faq{
  background-color:#f2f0eb!important;
  background-image:linear-gradient(rgba(255,255,255,.18),rgba(255,255,255,.18)),var(--maqtra-concrete-v28)!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center center!important;
  background-attachment:scroll!important;
  color:#071525!important;
}
.faq .section-heading h3,.faq-list summary{color:#071525!important}
.faq .section-label,.faq .section-heading em{color:#ff7100!important}
.faq-list details{
  background:rgba(255,255,255,.58)!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:0 10px 30px rgba(7,21,37,.07)!important;
  backdrop-filter:blur(7px)!important;
  -webkit-backdrop-filter:blur(7px)!important;
}
.faq-list details summary{color:#071525!important;font-weight:700!important}
.faq-list details p{color:#4f5c6c!important}
.faq-list details summary span{background:rgba(255,255,255,.72)!important}

@media(max-width:760px){
 #alquiler .equip:not(.equip-help){min-height:445px!important}
 #alquiler .equip:not(.equip-help) .equip-body{height:245px!important;padding:20px!important;grid-template-rows:25px 54px 1fr 42px!important}
 .faq{background-size:cover!important;background-position:center center!important}
}

/* ================================================================
   V32 · legibilidad completa de tarjetas + WhatsApp flotante limpio
   ================================================================ */
#alquiler .equip:not(.equip-help){min-height:500px!important}
#alquiler .equip:not(.equip-help) .equip-photo::after,
#alquiler .equip-photo.contain::after{
  background:linear-gradient(180deg,rgba(3,10,20,.12) 0%,rgba(3,10,20,.26) 30%,rgba(3,10,20,.72) 50%,rgba(3,10,20,.98) 76%,rgba(3,10,20,1) 100%)!important;
}
#alquiler .equip:not(.equip-help) .equip-body{
  height:285px!important;
  padding:22px 24px 20px!important;
  grid-template-rows:auto auto 1fr 44px!important;
  gap:8px!important;
}
#alquiler .equip:not(.equip-help) .equip-body h4{
  min-height:2.4em!important;
  display:block!important;
  overflow:visible!important;
  -webkit-line-clamp:unset!important;
  color:#fff!important;
}
#alquiler .equip:not(.equip-help) .equip-body p{
  display:block!important;
  overflow:visible!important;
  -webkit-line-clamp:unset!important;
  color:#fff!important;
  text-shadow:0 2px 12px rgba(0,0,0,.9)!important;
}
/* En fotografías originalmente blancas, la zona informativa recibe una
   base oscura continua para evitar texto blanco sobre blanco. */
#alquiler .equip:has(.equip-photo.contain) .equip-body{
  background:linear-gradient(180deg,rgba(7,16,29,.08),rgba(7,16,29,.90) 22%,rgba(7,16,29,.98) 100%)!important;
}
/* Un solo botón flotante, compacto y sin número visible. */
.wa-float-secondary{display:none!important}
.wa-float{
  width:58px!important;height:58px!important;min-width:58px!important;
  padding:0!important;border-radius:50%!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  right:24px!important;bottom:24px!important;
}
.wa-float span{display:none!important}
.wa-float svg{width:27px!important;height:27px!important;margin:0!important}
@media(max-width:760px){
 #alquiler .equip:not(.equip-help){min-height:475px!important}
 #alquiler .equip:not(.equip-help) .equip-body{height:280px!important;grid-template-rows:auto auto 1fr 42px!important}
 .wa-float{width:54px!important;height:54px!important;min-width:54px!important;right:16px!important;bottom:16px!important}
}

/* ================================================================
   V33 · Fotografías del catálogo con encuadre más abierto
   ================================================================ */
/* Reducimos el zoom visual sin alterar textos, overlays ni estructura. */
#alquiler .equip:not(.equip-help) .equip-photo{
  background-size:contain!important;
  background-repeat:no-repeat!important;
  background-position:center top!important;
  background-color:#111b2b!important;
  transform:none!important;
}
#alquiler .equip:not(.equip-help):hover .equip-photo{
  transform:none!important;
}
/* Las fotos panorámicas pueden aprovechar mejor el ancho sin recortarse. */
#alquiler .eq-andamio,
#alquiler .eq-rodos{
  background-position:center center!important;
}

/* ================================================================
   V34 · Catálogo de alquiler simétrico
   Todas las tarjetas comparten la misma altura de fotografía y contenido.
   ================================================================ */
#alquiler .equip-grid{align-items:stretch!important}
#alquiler .equip:not(.equip-help){
  height:500px!important;
  min-height:500px!important;
  display:block!important;
}
#alquiler .equip:not(.equip-help) .equip-photo{
  position:absolute!important;
  top:0!important;left:0!important;right:0!important;bottom:auto!important;
  width:100%!important;height:220px!important;
  background-size:contain!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-color:#111b2b!important;
}
#alquiler .equip:not(.equip-help) .equip-photo::after{
  background:linear-gradient(180deg,rgba(3,10,20,0) 0%,rgba(3,10,20,.05) 70%,rgba(3,10,20,.18) 100%)!important;
}
#alquiler .equip:not(.equip-help) .equip-body,
#alquiler .equip:has(.equip-photo.contain) .equip-body{
  position:absolute!important;
  left:0!important;right:0!important;bottom:0!important;
  height:280px!important;
  padding:20px 24px!important;
  display:grid!important;
  grid-template-rows:24px 52px 1fr 44px!important;
  gap:8px!important;
  background:#07111f!important;
}
#alquiler .equip:not(.equip-help) .equip-body h4{
  min-height:0!important;
  margin:0!important;
  align-self:start!important;
}
#alquiler .equip:not(.equip-help) .equip-body p{
  margin:0!important;
  align-self:start!important;
}
#alquiler .equip:not(.equip-help) .equip-cta{
  align-self:end!important;
  width:100%!important;
  justify-content:center!important;
  min-height:44px!important;
}
#alquiler .equip-help{height:500px!important;min-height:500px!important}
@media(max-width:760px){
 #alquiler .equip:not(.equip-help),#alquiler .equip-help{height:490px!important;min-height:490px!important}
 #alquiler .equip:not(.equip-help) .equip-photo{height:215px!important}
 #alquiler .equip:not(.equip-help) .equip-body,#alquiler .equip:has(.equip-photo.contain) .equip-body{height:275px!important;padding:20px!important}
}

/* ================================================================
   V35 · Fotografías a cuadro completo + extensión blur inferior
   ================================================================ */
#alquiler .equip:not(.equip-help) .equip-photo{
  overflow:hidden!important;
  background-size:cover!important;
  background-position:center center!important;
  background-color:#111b2b!important;
}
/* Capa inferior difuminada: prolonga visualmente la foto hacia el contenido
   y evita el corte duro entre imagen y tarjeta. */
#alquiler .equip:not(.equip-help) .equip-photo::before{
  content:""!important;
  position:absolute!important;
  left:-8%!important;right:-8%!important;bottom:-26px!important;
  height:76px!important;
  background-image:inherit!important;
  background-size:cover!important;
  background-position:center bottom!important;
  filter:blur(16px)!important;
  transform:scale(1.12)!important;
  opacity:.82!important;
  z-index:1!important;
  pointer-events:none!important;
}
#alquiler .equip:not(.equip-help) .equip-photo::after{
  content:""!important;
  position:absolute!important;
  inset:auto 0 0 0!important;
  height:92px!important;
  background:linear-gradient(180deg,rgba(7,17,31,0) 0%,rgba(7,17,31,.42) 54%,#07111f 100%)!important;
  z-index:2!important;
  pointer-events:none!important;
}
#alquiler .equip:not(.equip-help) .equip-photo>b,
#alquiler .equip:not(.equip-help) .zoom-hint{z-index:4!important}
/* Evita que las imágenes claras queden con un borde rectangular demasiado evidente. */
#alquiler .eq-concretera,
#alquiler .eq-vibrador{background-position:center center!important}

/* ================================================================
   V36 · Transición fotográfica más baja y sutil
   El degradado comienza en el último ~14% de la fotografía para
   conservar visible el equipo y fundir únicamente el borde inferior.
   ================================================================ */
#alquiler .equip:not(.equip-help) .equip-photo::before{
  left:-6%!important;
  right:-6%!important;
  bottom:-34px!important;
  height:58px!important;
  filter:blur(13px)!important;
  transform:scale(1.08)!important;
  opacity:.58!important;
}
#alquiler .equip:not(.equip-help) .equip-photo::after{
  height:54px!important;
  background:linear-gradient(180deg,
    rgba(7,17,31,0) 0%,
    rgba(7,17,31,.03) 22%,
    rgba(7,17,31,.14) 48%,
    rgba(7,17,31,.58) 76%,
    #07111f 100%)!important;
}

/* ================================================================
   V37 · Catálogo de alquiler con mayor luminosidad y profundidad
   Mantiene la estructura V36; aclara superficies y separa tarjetas.
   ================================================================ */
#alquiler{
  background:#0b1628!important;
}
#alquiler .equip-grid{
  gap:24px!important;
}
#alquiler .equip:not(.equip-help){
  background:#142238!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:0 16px 38px rgba(2,8,18,.22)!important;
}
#alquiler .equip:not(.equip-help) .equip-body,
#alquiler .equip:has(.equip-photo.contain) .equip-body{
  background:linear-gradient(180deg,#142238 0%,#101d31 100%)!important;
}
#alquiler .equip:not(.equip-help) .equip-photo::after{
  height:54px!important;
  background:linear-gradient(180deg,
    rgba(20,34,56,0) 0%,
    rgba(20,34,56,.03) 22%,
    rgba(20,34,56,.12) 48%,
    rgba(20,34,56,.50) 76%,
    #142238 100%)!important;
}
#alquiler .equip:not(.equip-help) .equip-body h4{color:#f7f9fc!important}
#alquiler .equip:not(.equip-help) .equip-body p{
  color:#cbd3df!important;
  text-shadow:none!important;
}
#alquiler .equip:not(.equip-help) .equip-cta{
  background:rgba(10,21,37,.58)!important;
  border-color:rgba(255,255,255,.42)!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(255,107,0,.12)!important;
}
#alquiler .equip:not(.equip-help):hover{
  border-color:rgba(255,113,0,.28)!important;
  box-shadow:0 20px 44px rgba(2,8,18,.30),0 8px 24px rgba(255,107,0,.08)!important;
}
#alquiler .equip-help{
  background:linear-gradient(145deg,#182a43 0%,#132238 100%)!important;
  border:1px solid rgba(255,255,255,.11)!important;
  box-shadow:0 16px 38px rgba(2,8,18,.20)!important;
}
#alquiler .equip-help h4{color:#f7f9fc!important}
#alquiler .equip-help p{color:#cbd3df!important}

/* ================================================================
   V38 · Corrección de textos largos en tarjetas de alquiler
   Reserva más espacio al contenido sin alterar la altura simétrica.
   ================================================================ */
#alquiler .equip:not(.equip-help) .equip-body,
#alquiler .equip:has(.equip-photo.contain) .equip-body{
  grid-template-rows:auto auto minmax(0,1fr) 44px!important;
}
#alquiler .equip:not(.equip-help) .equip-body p{
  overflow:visible!important;
  min-height:0!important;
  line-height:1.42!important;
}
#alquiler .equip:not(.equip-help) .equip-cta{
  position:relative!important;
  z-index:2!important;
  margin-top:6px!important;
}
/* La descripción de Andamios es la más larga: compactamos solo esa tarjeta
   para que el botón nunca la tape y conservar la misma altura exterior. */
#alquiler .equip:has(.eq-andamio) .equip-body{
  padding-top:17px!important;
  padding-bottom:18px!important;
  gap:6px!important;
}
#alquiler .equip:has(.eq-andamio) .equip-body p{
  font-size:.82rem!important;
  line-height:1.34!important;
}
@media(max-width:760px){
  #alquiler .equip:has(.eq-andamio) .equip-body p{font-size:.80rem!important;line-height:1.32!important}
}


/* ================================================================
   V39 · Simetría total del catálogo de alquiler
   Misma altura, misma zona de imagen, título, descripción y CTA.
   ================================================================ */
#alquiler .equip:not(.equip-help),
#alquiler .equip-help{
  height:530px!important;
  min-height:530px!important;
}
#alquiler .equip:not(.equip-help) .equip-photo{
  height:220px!important;
}
#alquiler .equip:not(.equip-help) .equip-body,
#alquiler .equip:has(.equip-photo.contain) .equip-body{
  height:310px!important;
  padding:20px 24px!important;
  display:grid!important;
  grid-template-rows:24px 54px minmax(0,1fr) 44px!important;
  gap:8px!important;
}
#alquiler .equip:not(.equip-help) .equip-body h4{
  min-height:54px!important;
  max-height:54px!important;
  display:flex!important;
  align-items:flex-start!important;
  margin:0!important;
  line-height:1.12!important;
}
#alquiler .equip:not(.equip-help) .equip-body p{
  font-size:.88rem!important;
  line-height:1.38!important;
  margin:0!important;
  overflow:visible!important;
  align-self:start!important;
}
#alquiler .equip:not(.equip-help) .equip-cta{
  margin-top:0!important;
  align-self:end!important;
}
/* Anula la compactación especial anterior: todas las tarjetas vuelven
   a compartir exactamente la misma geometría. */
#alquiler .equip:has(.eq-andamio) .equip-body{
  padding:20px 24px!important;
  gap:8px!important;
}
#alquiler .equip:has(.eq-andamio) .equip-body p{
  font-size:.88rem!important;
  line-height:1.38!important;
}
@media(max-width:760px){
  #alquiler .equip:not(.equip-help),#alquiler .equip-help{height:520px!important;min-height:520px!important}
  #alquiler .equip:not(.equip-help) .equip-photo{height:215px!important}
  #alquiler .equip:not(.equip-help) .equip-body,#alquiler .equip:has(.equip-photo.contain) .equip-body{height:305px!important;padding:20px!important}
  #alquiler .equip:has(.eq-andamio) .equip-body{padding:20px!important}
  #alquiler .equip:has(.eq-andamio) .equip-body p{font-size:.86rem!important;line-height:1.36!important}
}

/* v40 — navegación limpia y contactos consolidados en footer */
.footer-clean{align-items:flex-start!important;gap:36px!important}
.footer-brand{min-width:240px}
.footer-brand strong{color:#fff;font-size:1rem}
.footer-contacts{display:grid;grid-template-columns:repeat(3,minmax(170px,1fr));gap:14px;flex:1}
.footer-contacts a{display:flex;flex-direction:column;gap:6px;padding:13px 15px;border:1px solid rgba(255,255,255,.10);border-radius:12px;background:rgba(255,255,255,.035);transition:.2s ease}
.footer-contacts a:hover{border-color:rgba(254,111,0,.55);background:rgba(255,255,255,.065)}
.footer-contacts span{font:500 9px/1 var(--mono);text-transform:uppercase;letter-spacing:.13em;color:var(--muted-light)}
.footer-contacts b{color:#fff;font-size:.86rem;white-space:nowrap}
.footer-social-corner{display:flex;gap:10px;align-self:flex-end;margin-left:auto}
.footer-social-corner a{padding:9px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.12);font-size:.78rem;font-weight:700;color:#fff}
.footer-social-corner a:hover{border-color:var(--orange);color:var(--orange)}
@media(max-width:980px){.footer-contacts{grid-template-columns:1fr 1fr}.footer-social-corner{width:100%;justify-content:flex-end}}
@media(max-width:620px){.footer-contacts{grid-template-columns:1fr;width:100%}.footer-social-corner{justify-content:flex-start}.footer-clean{display:grid!important}}

/* v41 — footer simplificado: solo redes sociales */
.footer-clean{align-items:center!important;gap:36px!important}
.footer-social-corner{display:flex;gap:12px;align-self:center;margin-left:auto}
.footer-social-link{display:inline-flex!important;align-items:center;gap:9px;padding:9px 14px!important;border-radius:999px!important;border:1px solid rgba(255,255,255,.14)!important;background:rgba(255,255,255,.045);color:#fff!important;font-size:.78rem!important;font-weight:700!important;transition:.2s ease!important}
.footer-social-link:hover{border-color:rgba(254,111,0,.7)!important;background:rgba(255,255,255,.08)!important;color:#fff!important;transform:translateY(-1px)}
.footer-social-icon{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.10)}
.footer-social-icon svg{width:14px;height:14px;fill:#fff;display:block}
.footer-social-arrow{color:var(--orange);font-size:.88rem}
@media(max-width:620px){.footer-social-corner{width:100%;justify-content:flex-start;margin-left:0}.footer-clean{display:grid!important}.footer-social-link{padding:9px 12px!important}}

/* v42 - footer social links: cleaner, brand-colored icons, no pill borders */
.footer-social-corner{display:flex;gap:24px;align-items:center;align-self:center;margin-left:auto}
.footer-social-link{display:inline-flex!important;align-items:center;gap:9px;padding:4px 0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#fff!important;font-size:.82rem!important;font-weight:700!important;box-shadow:none!important;transition:opacity .2s ease,transform .2s ease!important}
.footer-social-link:hover{border:0!important;background:transparent!important;color:#fff!important;transform:translateY(-1px);opacity:.86}
.footer-social-icon{width:27px;height:27px;border:0!important;border-radius:7px;display:grid;place-items:center;background:transparent!important}
.footer-social-icon svg{width:23px;height:23px;display:block}
.footer-social-link[aria-label^="Facebook"] .footer-social-icon svg{fill:#1877F2!important}
.footer-social-link[aria-label^="Instagram"] .footer-social-icon{background:linear-gradient(135deg,#833AB4 0%,#C13584 35%,#E1306C 58%,#F56040 78%,#FCAF45 100%)!important;border-radius:7px}
.footer-social-link[aria-label^="Instagram"] .footer-social-icon svg{fill:#fff!important;width:17px;height:17px}
.footer-social-arrow{color:var(--orange);font-size:.85rem}
@media(max-width:620px){.footer-social-corner{width:100%;justify-content:flex-start;margin-left:0;gap:20px}.footer-social-link{padding:4px 0!important}}
