:root{--m-red:#d71920;--m-black:#080808;--m-paper:#f8f7f2}
.maintenance-page{background:var(--m-paper)}
.maintenance-page .site-header{border-bottom-width:5px}
.maint-hero{position:relative;min-height:clamp(470px,43vw,690px);overflow:hidden;border-inline:3px solid var(--m-black);border-bottom:4px solid var(--m-black);background:#fff}
.maint-hero picture{position:absolute;inset:0}.maint-hero-image{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.maint-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.94) 30%,rgba(255,255,255,.47) 48%,rgba(255,255,255,0) 66%)}
.maint-hero-content{position:relative;z-index:2;width:min(52%,720px);padding:clamp(30px,3.7vw,58px) 0 34px clamp(38px,5.5vw,92px)}
.maint-kicker{display:inline-block;margin:0 0 12px;padding:6px 12px 5px;background:#080808;color:#fff;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:clamp(14px,1.2vw,19px);letter-spacing:.08em;text-transform:uppercase;transform:skew(-8deg)}
.maint-hero h1{margin:0;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:clamp(58px,6.6vw,108px);line-height:.86;letter-spacing:-.025em;text-transform:uppercase;transform:rotate(-2deg);text-shadow:5px 5px 0 rgba(0,0,0,.12)}
.maint-hero-lead{display:inline-block;margin:clamp(14px,1.7vw,24px) 0 0;padding:8px 14px 6px;border:3px solid #080808;background:var(--m-red);color:#fff;box-shadow:4px 4px 0 #080808;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:clamp(20px,2vw,32px);font-style:italic;line-height:1;text-transform:uppercase;transform:rotate(-1deg)}
.maint-hero-text{max-width:590px;margin:0;font-size:clamp(17px,1.25vw,21px);font-weight:700;line-height:1.42}
.maint-hero-message{display:grid;gap:10px;max-width:650px;margin:clamp(16px,2vw,25px) 0 0}
.maint-hero-message p{margin:0;font-size:clamp(14px,1.05vw,18px);font-weight:750;line-height:1.36}
.maint-hero-message strong{font-weight:900}
.maint-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;margin-top:18px}.maint-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:12px 22px 10px;border:4px solid #080808;background:var(--m-red);color:#fff;box-shadow:5px 5px 0 #080808;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:21px;letter-spacing:.03em;text-decoration:none;text-transform:uppercase;transform:skew(-5deg);transition:.2s}.maint-button:hover{transform:translate(-2px,-2px) skew(-5deg);box-shadow:8px 8px 0 #080808}.maint-link{color:#080808;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:20px;text-decoration-thickness:3px;text-underline-offset:5px;text-transform:uppercase}
.maint-stage{position:relative;overflow:hidden;border-inline:3px solid #080808;border-bottom:4px solid #080808;background:radial-gradient(circle at 1px 1px,rgba(0,0,0,.18) 1px,transparent 1.2px) 0 0/9px 9px,var(--m-paper)}
.maint-border{position:absolute;z-index:3;top:0;bottom:0;width:clamp(105px,10vw,170px);background-repeat:repeat-y;background-size:100% auto;pointer-events:none;filter:drop-shadow(0 0 1px rgba(0,0,0,.5))}.maint-border-left{left:0;background-image:url("images/mantenimientos/border-left.webp");background-position:left top}.maint-border-right{right:0;background-image:url("images/mantenimientos/border-right.webp");background-position:right top}
.maint-inner{position:relative;z-index:4;width:min(calc(100% - clamp(210px,20vw,340px)),1320px);margin:0 auto;padding:clamp(28px,4vw,58px) 0 30px}
.maint-heading{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;margin-bottom:18px}.maint-heading h2{margin:0;padding:8px 24px 6px;background:#080808;color:#fff;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:clamp(28px,3.1vw,47px);font-style:italic;line-height:1;text-align:center;text-transform:uppercase;transform:skew(-6deg)}.maint-heading span{height:5px;background:#080808;clip-path:polygon(0 30%,94% 30%,100% 50%,94% 70%,0 70%)}.maint-heading span:last-child{transform:scaleX(-1)}.maint-note{margin:-5px auto 18px;max-width:880px;text-align:center;font-size:14px;font-weight:700}
.maintenance-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,190px));justify-content:center;gap:8px;max-width:1030px;margin:0 auto}.maintenance-card{display:flex;min-width:0;flex-direction:column;border:4px solid #080808;background:#fff;overflow:hidden;box-shadow:0 2px 0 rgba(0,0,0,.12)}.maintenance-card h3{margin:0;padding:9px 6px 7px;background:linear-gradient(180deg,#df232a 0%,#c70e16 100%);color:#fff;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:clamp(17px,1.18vw,23px);font-style:italic;letter-spacing:.005em;line-height:1;text-align:center;text-transform:uppercase;text-shadow:2px 2px 0 #111}.maintenance-card h3 small{font-size:.74em}.maintenance-card>img{width:100%;height:142px;object-fit:cover;object-position:center;display:block;transition:transform .28s ease,filter .28s ease}.maintenance-card:hover>img{transform:scale(1.02);filter:contrast(1.07)}.maintenance-card-copy{display:flex;flex:1;flex-direction:column;justify-content:flex-start;min-height:158px;padding:10px 10px 9px;border-top:4px solid #080808;background:#fff}.maintenance-card ul{display:grid;gap:6px;margin:0;padding:0 0 0 18px;list-style:disc;font-size:10.5px;line-height:1.24}.maintenance-card li{font-weight:800}.maintenance-card li::marker{font-size:1em;color:#080808}
.process-title{margin-top:clamp(30px,4vw,54px)}.maint-process-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.maint-process-grid article{position:relative;min-width:0;border:4px solid #080808;background:#fff;overflow:hidden;text-align:center}.maint-process-grid b{position:absolute;z-index:2;top:8px;left:8px;width:40px;height:40px;display:grid;place-items:center;border:3px solid #080808;background:var(--m-red);color:#fff;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:25px;transform:rotate(-5deg)}.maint-process-grid img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}.maint-process-grid h3{margin:0;padding:10px 7px 5px;border-top:4px solid #080808;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:19px;text-transform:uppercase}.maint-process-grid p{margin:0;padding:0 10px 13px;font-size:12px;font-weight:700;line-height:1.25}
.maint-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:18px;padding:4px;background:#080808}.maint-benefits article{display:grid;grid-template-columns:82px 1fr;align-items:center;gap:13px;padding:17px;background:var(--m-red);color:#fff}.maint-benefits img{width:76px;height:76px;object-fit:contain;filter:grayscale(1) contrast(1.4);mix-blend-mode:screen}.maint-benefits h3{margin:0 0 4px;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:23px;text-transform:uppercase}.maint-benefits p{margin:0;font-size:13px;font-weight:700;line-height:1.25}
.maint-whatsapp-banner{display:block;margin-top:18px;border:4px solid #080808;background:#fff;overflow:hidden;transition:transform .2s}.maint-whatsapp-banner:hover{transform:translateY(-2px)}.maint-whatsapp-banner img{width:100%;height:auto;display:block}.maint-contact{position:relative;margin-top:18px}.maint-contact>img{width:100%;display:block}.maint-mobile-contact{margin-top:16px}
@media(max-width:1180px){.maint-inner{width:calc(100% - 170px)}.maint-border{width:85px}.maintenance-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:980px}.maintenance-card>img{aspect-ratio:1.45/1}.maintenance-card ul{font-size:12px}.maint-process-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){
.maint-hero{display:block;min-height:0;overflow:hidden;border-inline:0}
.maint-hero picture{position:relative;display:block}
.maint-hero-image{width:100%;height:auto;object-fit:contain;object-position:center top}
.maint-hero-overlay{display:none}
.maint-hero-content{
  position:absolute;
  z-index:2;
  top:clamp(82px,calc(91px + (100vw - 360px)*.12),108px);
  left:clamp(44px,calc(52px + (100vw - 360px)*.08),68px);
  order:unset;
  width:min(55%,260px);
  padding:8px 6px;
  background:none;
  border-top:0;
}
.maint-kicker{margin:0 0 5px;padding:3px 7px 2px;font-size:clamp(8px,1.8vw,10px);line-height:1}
.maint-hero h1{font-size:clamp(29px,7.5vw,46px);line-height:.86;letter-spacing:-.025em;white-space:nowrap}
.maint-hero-lead{margin:8px 0 6px;font-size:clamp(14px,3.8vw,21px);line-height:.94}
.maint-hero-text{max-width:215px;font-size:clamp(9px,1.75vw,12px);line-height:1.18}
.maint-hero-actions{display:flex;align-items:center;flex-wrap:nowrap;gap:7px;margin-top:8px}
.maint-button{min-height:30px;padding:6px 8px 5px;border-width:3px;box-shadow:3px 3px 0 #080808;font-size:clamp(8px,1.65vw,10px);white-space:nowrap}
.maint-link{font-size:clamp(8px,1.6vw,10px);text-decoration-thickness:2px;text-underline-offset:3px;white-space:nowrap}
.maint-stage{border-inline:0}
.maint-border{display:none}
.maint-inner{width:100%;padding:28px 12px 20px}
.maintenance-grid{grid-template-columns:repeat(2,minmax(0,240px));justify-content:center;gap:12px;max-width:510px}
.maintenance-card>img{height:170px}
.maintenance-card ul{font-size:12px}
.maint-process-grid{grid-template-columns:1fr 1fr}
.maint-benefits{grid-template-columns:1fr}
.desktop-contact{display:none}
}
@media(max-width:520px){
.maint-hero-content{
  top:clamp(82px,calc(91px + (100vw - 360px)*.12),101px);
  left:clamp(44px,calc(52px + (100vw - 360px)*.08),61px);
  width:min(55%,260px);
  padding:8px 6px;
}
.maint-kicker{margin-bottom:5px;font-size:8px}
.maint-hero h1{font-size:clamp(27px,8.3vw,36px)}
.maint-hero-lead{margin:7px 0 5px;font-size:clamp(13px,4.45vw,18px)}
.maint-hero-text{max-width:185px;font-size:clamp(8.5px,2.55vw,10.5px);line-height:1.16}
.maint-hero-actions{gap:6px;margin-top:7px}
.maint-button{min-height:28px;padding:5px 7px 4px;font-size:clamp(7.5px,2.25vw,9px)}
.maint-link{font-size:clamp(7.5px,2.2vw,9px)}
.maint-heading{gap:7px}
.maint-heading h2{padding-inline:11px;font-size:26px}
.maintenance-grid{grid-template-columns:minmax(0,360px);justify-content:center;gap:12px}
.maintenance-card h3{font-size:24px}
.maintenance-card>img{height:190px}
.maintenance-card-copy{min-height:0;padding:12px 12px 10px}
.maintenance-card ul{font-size:13px;gap:8px}
.maint-process-grid{grid-template-columns:1fr}
.maint-benefits article{grid-template-columns:70px 1fr;padding:14px}
.maint-benefits img{width:64px;height:64px}
.maint-inner{padding-inline:8px}
.maint-whatsapp-banner{border-width:3px}
}
@media(max-width:340px){
.maint-hero-content{
  top:78px;
  left:38px;
  width:58%;
}
.maint-hero h1{font-size:26px}
.maint-hero-lead{font-size:12px}
.maint-hero-text{font-size:8px}
.maint-button,.maint-link{font-size:7px}
}


/* Ajuste final solicitado: tipografía más grande en el hero móvil */
@media (max-width: 800px) {
  .maint-kicker {
    font-size: clamp(12px, 2.5vw, 15px);
  }

  .maint-hero h1 {
    font-size: clamp(42px, 11.5vw, 66px);
    line-height: .84;
  }

  .maint-hero-lead {
    font-size: clamp(20px, 5.5vw, 30px);
    line-height: .94;
  }

  .maint-hero-text {
    max-width: 250px;
    font-size: clamp(13px, 2.9vw, 16px);
    line-height: 1.2;
  }

  .maint-button,
  .maint-link {
    font-size: clamp(12px, 2.65vw, 15px);
  }
}

@media (max-width: 520px) {
  .maint-kicker {
    font-size: clamp(10px, 2.8vw, 12px);
  }

  .maint-hero h1 {
    font-size: clamp(36px, 11.4vw, 50px);
  }

  .maint-hero-lead {
    font-size: clamp(17px, 5.7vw, 23px);
  }

  .maint-hero-text {
    max-width: 215px;
    font-size: clamp(11px, 3.2vw, 13px);
  }

  .maint-button,
  .maint-link {
    font-size: clamp(10px, 2.9vw, 12px);
  }
}

@media (max-width: 370px) {
  .maint-hero h1 {
    font-size: 32px;
  }

  .maint-hero-lead {
    font-size: 15px;
  }

  .maint-hero-text {
    font-size: 10px;
  }
}


/* Posicionamiento proporcional del hero móvil.
   Referencia visual: left 52px y top 91px en 390px de ancho. */
@media (max-width: 800px) {
  .maint-hero-content {
    top: 13.13%;
    left: 13.33%;
    width: 55%;
    max-width: 390px;
    padding: 8px 6px;
  }

  .maint-kicker {
    font-size: clamp(10px, 2.7vw, 16px);
  }

  .maint-hero h1 {
    font-size: clamp(36px, 11.4vw, 74px);
  }

  .maint-hero-lead {
    font-size: clamp(17px, 5.55vw, 34px);
  }

  .maint-hero-text {
    max-width: 100%;
    font-size: clamp(11px, 3vw, 18px);
  }

  .maint-button,
  .maint-link {
    font-size: clamp(10px, 2.75vw, 16px);
  }
}


/* Hero de Mantenimientos: mensaje del cliente integrado */
@media (max-width: 800px) {
  .maint-hero-content {
    top: 8.8%;
    left: 8.5%;
    width: 62%;
    max-width: 330px;
    padding: 6px 4px;
  }

  .maint-kicker {
    margin-bottom: 6px;
    padding: 4px 8px 3px;
    font-size: clamp(8px, 2vw, 12px);
  }

  .maint-hero h1 {
    font-size: clamp(31px, 9vw, 55px);
    line-height: .85;
    white-space: nowrap;
  }

  .maint-hero-message {
    gap: 6px;
    max-width: 100%;
    margin-top: 9px;
  }

  .maint-hero-message p {
    font-size: clamp(8.5px, 2.15vw, 13px);
    line-height: 1.18;
  }

  .maint-hero-lead {
    margin-top: 9px;
    padding: 5px 8px 4px;
    border-width: 2px;
    box-shadow: 3px 3px 0 #080808;
    font-size: clamp(12px, 3.6vw, 21px);
  }

  .maint-hero-actions {
    flex-wrap: nowrap;
    gap: 7px;
    margin-top: 9px;
  }

  .maint-button {
    min-height: 30px;
    padding: 6px 8px 5px;
    border-width: 3px;
    box-shadow: 3px 3px 0 #080808;
    font-size: clamp(8px, 2.1vw, 12px);
    white-space: nowrap;
  }

  .maint-link {
    font-size: clamp(8px, 2vw, 12px);
    white-space: nowrap;
  }
}

@media (max-width: 520px) {
  .maint-hero-content {
    top: 7.5%;
    left: 7.5%;
    width: 64%;
    max-width: 250px;
  }

  .maint-kicker {
    font-size: clamp(7px, 2.25vw, 9px);
  }

  .maint-hero h1 {
    font-size: clamp(28px, 9.5vw, 40px);
  }

  .maint-hero-message {
    gap: 5px;
    margin-top: 7px;
  }

  .maint-hero-message p {
    font-size: clamp(7.5px, 2.35vw, 10px);
    line-height: 1.16;
  }

  .maint-hero-lead {
    margin-top: 7px;
    font-size: clamp(11px, 3.8vw, 16px);
  }

  .maint-hero-actions {
    gap: 6px;
    margin-top: 7px;
  }

  .maint-button,
  .maint-link {
    font-size: clamp(7px, 2.2vw, 9px);
  }
}

@media (max-width: 360px) {
  .maint-hero-content {
    top: 6.8%;
    left: 6.5%;
    width: 66%;
  }

  .maint-hero h1 {
    font-size: 27px;
  }

  .maint-hero-message p {
    font-size: 7.2px;
  }

  .maint-hero-lead {
    font-size: 10px;
  }
}
