/* MAG'S | Dirección visual unificada. Borrador editorial, 2026 */
:root { --mags-graphite:#10232c; --mags-graphite-deep:#0b1921; --mags-graphite-soft:#203a43; --mags-aqua:#81dbd0; --mags-aqua-strong:#3bb8ad; --mags-cream:#f7f5f0; --mags-stone:#eaece8; --mags-copy:#30434a; }
html{scroll-behavior:smooth;scroll-padding-top:106px}
html,body{width:100%;max-width:100%;overflow-x:clip}
body{background:var(--mags-cream);color:var(--mags-copy);font-family:Montserrat,"Segoe UI",sans-serif}
body :where(.shell){width:min(100% - 48px,1180px);max-width:1180px;margin-inline:auto}
body :where(main,section,header,footer,.shell,.mags-calc__panel,.mags2-grid,.showcase-grid,.two-hours-hero){min-width:0}
body :where(h1,h2,h3,p,a){overflow-wrap:break-word}
body :where(a,button,input,select,textarea):focus-visible{outline:3px solid var(--mags-aqua-strong);outline-offset:4px}
body :where(input,select,textarea){max-width:100%}
body .site-header{background:rgba(250,250,247,.95);border-bottom:1px solid rgba(17,47,55,.09);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 10px 30px rgba(16,35,44,.06);transition:background .28s ease,box-shadow .28s ease}
body .site-header.is-scrolled{background:rgba(250,250,247,.79);backdrop-filter:blur(23px);-webkit-backdrop-filter:blur(23px);box-shadow:0 12px 32px rgba(16,35,44,.11)}
body .topline{background:var(--mags-graphite-deep);color:#cfe5e3;letter-spacing:.035em}
body .site-nav a{position:relative;font-size:.73rem;font-weight:700;letter-spacing:.035em;transition:color .2s}
body .site-nav a:hover{color:#007d7e}
body .site-nav a::after{content:"";position:absolute;bottom:-7px;left:0;width:0;height:2px;background:var(--mags-aqua-strong);transition:width .22s}
body .site-nav a:hover::after{width:100%}
body .header-cta,body .button--primary{border-radius:2px;background:var(--mags-graphite);color:#fff;box-shadow:0 8px 24px rgba(9,32,40,.1);transition:transform .25s,background .25s}
body .header-cta:hover,body .button--primary:hover{background:#176b6c;transform:translateY(-2px)}
body .brand img{object-fit:contain}
body.home .site-header .brand{display:none}
body.home .header-row{justify-content:space-between;min-height:76px}
body.home .site-nav{margin-left:0}
body.home .hero-v2{background:#efece7;aspect-ratio:1440/953;max-height:calc(100svh - 70px);min-height:0}
body.home .hero-v2__media{background-position:center!important;background-repeat:no-repeat!important;background-size:contain!important}
body.home .hero-v2__image{display:none!important}
body.home .hero-v3__logo,body.home .hero-v3__service-line,body.home .hero-v3__descriptor,body.home .hero-v3__actions,body.home .mags-calc-jump{display:none!important}
body.home .hero-v2__veil{display:none}
body.home .scroll-cue{display:none}
.mags-premium-gateway{background:var(--mags-cream);padding:clamp(3rem,7vw,7rem) 0;position:relative}
.mags-premium-gateway__head{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:1rem;
  text-align:center;
  margin-bottom:2.4rem
}
.mags-premium-eyebrow{
  display:block;
  font:800 clamp(1.10rem,1.56vw,1.30rem) Montserrat,sans-serif;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#177a79;
  margin:-.65rem auto .35rem
}
.mags-premium-eyebrow::before{content:none!important;display:none!important}
.mags-premium-gateway h2{
  width:min(100%,1100px);
  font:800 clamp(2.3rem,5.2vw,5rem)/1.08 Montserrat,"Segoe UI",sans-serif;
  letter-spacing:-.035em;
  text-transform:uppercase;
  color:var(--mags-graphite);
  margin:0 auto
}
.mags-premium-gateway__head p{
  color:#51636a;
  max-width:820px;
  font-size:clamp(1rem,1.35vw,1.2rem);
  line-height:1.75;
  margin:0 auto;
  text-align:center
}
.mags-premium-pathways{display:grid;grid-template-columns:1fr 1fr;gap:clamp(.8rem,2vw,1.5rem)}
.mags-premium-card{background:var(--mags-graphite);color:#e4f7f5;display:flex;flex-direction:column;justify-content:space-between;min-height:335px;padding:clamp(1.5rem,3vw,2.7rem);text-decoration:none;position:relative;overflow:hidden;border:1px solid #345b61;isolation:isolate;transition:transform .35s,border-color .35s}
.mags-premium-card::before{content:"";position:absolute;width:350px;height:350px;right:-100px;bottom:-230px;z-index:-1;border:1px solid rgba(129,219,208,.24);border-radius:50%;box-shadow:0 0 0 58px rgba(129,219,208,.035),0 0 0 108px rgba(129,219,208,.02)}
.mags-premium-card--light{background:#e6efeb;border-color:#c0d1cc;color:#18313a}
.mags-premium-card:hover{transform:translateY(-5px);border-color:var(--mags-aqua-strong)}
.mags-premium-card__tag{font:700 .72rem Montserrat,sans-serif;letter-spacing:.16em;text-transform:uppercase;opacity:.77}
.mags-premium-card h3{font:600 clamp(1.65rem,2.65vw,2.7rem)/1.16 Montserrat,sans-serif;letter-spacing:-.05em;color:inherit;margin:1.8rem 0 .65rem}
.mags-premium-card p{color:inherit;opacity:.86;font-size:.93rem;max-width:410px}
.mags-premium-card__action{display:inline-flex;justify-content:space-between;align-items:center;border-top:1px solid currentColor;padding-top:1.15rem;font:700 .77rem Montserrat,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.mags-premium-card__arrow{font-size:1.5rem;transition:transform .2s}
.mags-premium-card:hover .mags-premium-card__arrow{transform:translate(4px,-4px)}
body.home .manifesto-v2{background:#f7f5f0}
body.home .manifesto-v2 h2,body.home .showcase-v2 h2{font-family:Cinzel,Georgia,serif;letter-spacing:-.045em;text-transform:none}
body.home .showcase-v2{background:#eef1ec}
body.home .showcase-card{overflow:hidden;border-radius:1px;box-shadow:0 20px 45px rgba(13,33,37,.12)}
body.home .showcase-card__image{transition:transform .9s cubic-bezier(.2,.7,.2,1)}
body.home .showcase-card:hover .showcase-card__image{transform:scale(1.05)}
body.home .process-v2,body.home .areas-v2{background:#10232c}
body.home .two-hours-v2{background:#f7f5f0}
body.home .final-v2__panel{background:#14323a}
body.home .mags-calc{background:var(--mags-graphite-deep)}
/* Paneles: prevenir desbordamientos en móvil */
body .mags-calc,body .mags2-calc{max-width:100%;overflow:hidden}
body .mags-calc .shell,body .mags2-calc .shell{width:min(100% - 48px,1180px);max-width:1180px;min-width:0}
body .mags-calc .mags-calc__panel{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
body .mags2-calc .mags2-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
body .mags-calc__form,body .mags-calc__result,body .mags2-controls,body .mags2-output{min-width:0}
body .mags2-calc .mags2-jobs{grid-template-columns:repeat(2,minmax(0,1fr))}
body .mags2-calc .mags2-jobs label{min-width:0;overflow-wrap:anywhere}
body .mags2-calc .mags2-line{min-width:0}
body .mags2-calc .mags2-line-copy{overflow-wrap:anywhere}
body .mags2-calc .mags2-line-description{max-width:100%;font-size:.83rem;line-height:1.7}
body .mags-calc .mags-calc__result output,body .mags2-calc .mags2-output output{max-width:100%;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
body .mags2-calc .mags2-output a,body .mags-calc .mags-calc__result a{display:block;max-width:100%;overflow-wrap:anywhere;min-height:48px}
body .mags2-calc .mags2-jobs label:focus-within,body .mags-calc .mags-calc__tiers label:focus-within{outline:2px solid #9ce8df;outline-offset:3px}
body .mags2-calc h2,body .mags-calc h2{font-family:Montserrat,"Segoe UI",sans-serif;text-transform:none;letter-spacing:-.052em}
body .mags2-calc h3,body .mags-calc h3{color:#f5fcfa}
body .mags2-calc .mags2-alert{color:#fff}
body .mags2-calc .mags2-small,body .mags-calc .mags-calc__disclaimer{font-weight:500;line-height:1.7}
body .page-hero:not(.page-hero--two-hours){background:linear-gradient(135deg,#0d212a,#183d44)}
body .page-hero--quote h1,
body .page-hero--quote p:not(.eyebrow){color:#fff!important}
body .page-hero--quote .eyebrow{color:#f26a00!important}
body .page-hero--quote p:not(.eyebrow){opacity:.92}
body .page-hero--quote h1{text-shadow:0 2px 12px rgba(0,0,0,.18)}
body .page-hero:not(.page-hero--two-hours) h1{font-family:Cinzel,Georgia,serif;text-transform:none;letter-spacing:-.045em;font-weight:500}
body .page-hero:not(.page-hero--two-hours) p{max-width:720px}
/* Página Solicitar presupuesto: contraste y centrado del encabezado */
body.page-id-23 .page-hero .shell.narrow{text-align:center;margin-inline:auto}
body.page-id-23 .page-hero h1{color:#fff!important;font-weight:700!important;text-align:center;line-height:1.14;text-shadow:0 2px 8px rgba(0,0,0,.35);margin-inline:auto}
body.page-id-23 .page-hero p:not(.eyebrow){color:#f3f8f8!important;font-weight:500;text-align:center;line-height:1.6;margin-inline:auto}
body.page-id-23 .page-hero .eyebrow{text-align:center;margin-inline:auto}
@media(max-width:768px){body.page-id-23 .page-hero h1{font-size:clamp(2rem,8vw,3.2rem)}body.page-id-23 .page-hero p:not(.eyebrow){font-size:1rem}}
body .section--white{background:#f7f5f0}
body .section--soft{background:#eff2ee}
body .two-hours-service,body .form-card{box-shadow:0 12px 30px rgba(23,55,58,.06)}
body .two-hours-service{border:1px solid #d9e3dd;border-radius:2px}
body .two-hours-service summary{cursor:pointer}
body .site-footer{background:#0d222b}
body .floating-whatsapp{z-index:90}
body .floating-whatsapp:hover{transform:translateY(-3px) scale(1.04)}
@media(max-width:960px){
  body .site-nav{display:none}
  body .header-cta{display:none}
  body .menu-toggle{display:flex}
  body.home .header-row{justify-content:flex-end}
}
@media(max-width:850px){
  body .mags-calc .mags-calc__panel,body .mags2-calc .mags2-grid{display:grid;grid-template-columns:minmax(0,1fr)}
  body .mags-calc .mags-calc__result,body .mags2-calc .mags2-output{padding:1.5rem}
  body .mags2-calc .mags2-jobs{grid-template-columns:minmax(0,1fr)}
  .mags-premium-gateway__head{grid-template-columns:1fr}
}
@media(max-width:700px){
  html{scroll-padding-top:85px}
  body :where(.shell),body .mags-calc .shell,body .mags2-calc .shell{width:calc(100% - 32px);max-width:calc(100% - 32px);margin-inline:auto}
  body .topline{display:none}
  body .site-header .header-row{min-height:66px}
  body.home .hero-v2{width:100%;max-height:none;min-height:0;aspect-ratio:1440/953}
  body.home .hero-v2__media{background-size:contain!important}
  .mags-premium-gateway{padding:3.3rem 0}
  .mags-premium-pathways{grid-template-columns:minmax(0,1fr)}
  .mags-premium-card{min-height:258px}
  body .mags2-calc{padding:3rem 0}
  body .mags2-calc .mags2-controls,body .mags2-calc .mags2-output,body .mags-calc .mags-calc__form,body .mags-calc .mags-calc__result{padding:1.2rem}
  body .mags-calc .mags-calc__tiers{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}
  body .mags-calc .mags-calc__tiers label{font-size:.76rem;padding:.35rem;overflow-wrap:anywhere}
  body .mags2-calc .mags2-output output,body .mags-calc .mags-calc__result output{font-size:clamp(2rem,10vw,3rem)}
  body .mags2-calc .mags2-line--described{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start}
  body .mags2-calc .mags2-line--described>b{white-space:nowrap}
  body .floating-whatsapp{right:14px;bottom:calc(14px + env(safe-area-inset-bottom));}
}
@media(max-width:400px){body .mags2-calc .mags2-line--described{grid-template-columns:minmax(0,1fr)}body .mags2-calc .mags2-line--described>b{justify-self:start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body .site-header,body .showcase-card__image,.mags-premium-card{transition:none!important}}
/* Franja superior de ofertas: mueve el gateway completo hacia abajo y crea un carrusel propio. */
.mags-offers-marquee{
  background:linear-gradient(90deg,#078d95 0%,#12a9a7 48%,#078d95 100%);
  color:#fff;
  overflow:hidden;
  margin:0 0 clamp(2.4rem,4.5vw,3.8rem);
  border-radius:3px;
  box-shadow:0 12px 30px rgba(8,52,60,.18);
  min-height:86px;
  display:flex;
  align-items:center;
  border:1px solid rgba(255,255,255,.16)
}
.mags-offers-marquee__track{display:flex;width:max-content;animation:mags-offers-loop 20s linear infinite}
.mags-offers-marquee__group{display:flex;align-items:center;flex:none;gap:34px;padding:22px 30px}
.mags-offers-marquee span{
  font:800 clamp(1rem,1.8vw,1.35rem)/1 Montserrat,sans-serif;
  letter-spacing:.11em;
  text-transform:uppercase;
  white-space:nowrap;
  text-shadow:0 1px 0 rgba(0,0,0,.12)
}
.mags-offers-marquee b{color:rgba(255,255,255,.8);font-size:1.05rem}
.mags-offers-marquee--emergency{background:linear-gradient(90deg,#7f1115 0%,#b51f24 50%,#7f1115 100%);box-shadow:0 12px 30px rgba(95,12,16,.22);border-color:rgba(255,255,255,.18)}
.mags-offers-marquee--emergency span:first-child{font-weight:900}
.mags-emergency-strip{margin:0 0 clamp(2.6rem,5vw,4rem)}
.mags-emergency-strip>summary{list-style:none;cursor:pointer;margin-bottom:0}
.mags-emergency-strip>summary::-webkit-details-marker{display:none}
.mags-emergency-strip[open] .mags-offers-marquee--emergency{border-bottom-left-radius:0;border-bottom-right-radius:0}
.mags-emergency-pricing{background:#fff;border:1px solid #e4c7c8;border-top:0;padding:clamp(22px,4vw,38px);box-shadow:0 16px 36px rgba(74,15,18,.08)}
.mags-emergency-pricing__head span{display:block;color:#9b1b1f;font:800 .74rem/1.4 Montserrat,sans-serif;letter-spacing:.13em;margin:0 0 8px}
.mags-emergency-pricing__head h3{margin:0 0 10px;color:#13272f;font:700 clamp(1.6rem,3vw,2.35rem)/1.15 Montserrat,sans-serif}
.mags-emergency-pricing__head p{margin:0 0 24px;color:#52636a}
.mags-emergency-pricing__table{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #ead8d9;margin:0 0 24px}
.mags-emergency-pricing__table>div{display:grid;gap:8px;padding:18px;background:#fff}
.mags-emergency-pricing__table>div+div{border-left:1px solid #ead8d9}
.mags-emergency-pricing__table strong{font:700 .9rem/1.45 Montserrat,sans-serif;color:#263941}
.mags-emergency-pricing__table span{font:800 1.2rem/1.2 Montserrat,sans-serif;color:#9b1b1f}
.mags-emergency-pricing p{color:#465860;line-height:1.65}
.mags-emergency-pricing__important{background:#fff5f5;border-left:4px solid #a91d21;padding:14px 16px}
.mags-emergency-pricing__availability{font-size:.86rem;color:#6e4e50!important}
.mags-emergency-pricing__closehint{margin:14px 0 0;text-align:center;color:#8d171b!important;font:800 .76rem/1.45 Montserrat,"Segoe UI",sans-serif;letter-spacing:.03em}
.mags-emergency-pricing__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.mags-emergency-pricing__actions a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 18px;text-decoration:none;font:800 .8rem/1.2 Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.04em;background:#971a1e;color:#fff}
.mags-emergency-pricing__actions a:last-child{background:#20b858}
@media(max-width:700px){.mags-emergency-pricing{padding:22px 16px}.mags-emergency-pricing__table{grid-template-columns:1fr}.mags-emergency-pricing__table>div+div{border-left:0;border-top:1px solid #ead8d9}.mags-emergency-pricing__actions{display:grid}.mags-emergency-pricing__actions a{width:100%}}
@keyframes mags-offers-loop{to{transform:translateX(-50%)}}
@media(max-width:700px){
  .mags-offers-marquee{min-height:94px;margin-bottom:2.2rem}
  .mags-offers-marquee__group{gap:26px;padding:24px 24px}
  .mags-offers-marquee span{font-size:1rem;letter-spacing:.1em}
}
@media(prefers-reduced-motion:reduce){.mags-offers-marquee__track{animation:none}}

/* Urgencias de fontanería: servicio independiente de MAG'S 2 HORAS. */
.mags-emergency-card{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:clamp(24px,4vw,48px);align-items:center;background:#9f1d20;color:#fff;padding:clamp(28px,5vw,56px);margin:0 0 clamp(2.6rem,5vw,4.2rem);border-radius:4px;box-shadow:0 18px 42px rgba(78,13,15,.2);position:relative;overflow:hidden}
.mags-emergency-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 88% 15%,rgba(255,255,255,.10),transparent 34%);pointer-events:none}
.mags-emergency-card__copy,.mags-emergency-card__actions{position:relative;z-index:1}
.mags-emergency-card__eyebrow{display:block;font:800 .78rem/1.4 Montserrat,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#ffd7d7;margin:0 0 13px}
.mags-emergency-card h2{font-family:Cinzel,Georgia,serif;color:#fff;font-size:clamp(2rem,4vw,3.55rem);line-height:1.05;margin:0 0 16px}
.mags-emergency-card p{color:#fff;line-height:1.65;margin:0 0 18px;max-width:760px}
.mags-emergency-card__tags{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
.mags-emergency-card__tags span{border:1px solid rgba(255,255,255,.38);padding:7px 10px;font:700 .73rem/1.2 Montserrat,sans-serif;letter-spacing:.03em;background:rgba(255,255,255,.06)}
.mags-emergency-card__note{font-size:.86rem!important;background:rgba(38,0,0,.22);border-left:4px solid #ffd2d2;padding:14px 16px;margin-bottom:0!important}
.mags-emergency-card__actions{display:grid;gap:12px}
.mags-emergency-card__actions a{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:58px;padding:13px 16px;text-decoration:none;font:800 .82rem/1.35 Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.045em}
.mags-emergency-card__call{background:#fff;color:#671416}
.mags-emergency-card__call strong{font-size:1.05rem;letter-spacing:.02em;margin-top:2px}
.mags-emergency-card__wa{background:#20b858;color:#fff}
.mags-emergency-card__actions small{display:block;text-align:center;color:#ffe1e1;font:600 .73rem/1.5 Montserrat,sans-serif}
@media(max-width:760px){.mags-emergency-card{grid-template-columns:minmax(0,1fr);padding:26px 20px;gap:24px}.mags-emergency-card h2{font-size:clamp(2rem,9vw,3rem)}.mags-emergency-card__actions a{width:100%}}

/* PUNTO 3: bloque naranja de portada. */
/* SOLO PUNTO 3: bloque de entrada MAG'S 2 HORAS en portada. */
body.home section.two-hours-v2{
 background:#ef780b!important;
 background-image:linear-gradient(145deg,#f58615 0%,#ee7307 66%,#e76806 100%)!important;
 color:#0c2637!important;
 padding:clamp(48px,7vw,100px) 0!important;
}
body.home .two-hours-v2__grid{
 display:flex!important;
 flex-direction:column!important;
 align-items:center!important;
 justify-content:center!important;
 gap:clamp(18px,3vw,34px)!important;
 text-align:center!important;
 max-width:1040px;
}
body.home .two-hours-v2__mark{
 display:grid!important;
 grid-template-columns:1fr!important;
 grid-template-rows:auto auto auto!important;
 justify-items:center!important;
 align-items:center!important;
 align-content:center!important;
 width:min(100%,490px)!important;
 max-width:min(100%,490px)!important;
 aspect-ratio:auto!important;
 min-height:0!important;
 margin:0 auto!important;
 padding:0!important;
 border-radius:0!important;
 border:0!important;
 box-shadow:none!important;
 background:transparent!important;
 color:#0c2637!important;
 overflow:visible!important;
 container-type:normal!important;
 text-align:center!important;
 text-decoration:none!important;
}
body.home .two-hours-v2__mark span,
body.home .two-hours-v2__mark strong,
body.home .two-hours-v2__mark b{
 align-self:center!important;
 display:block!important;
 width:auto!important;
 margin:0!important;
 padding:0!important;
 font-family:Cinzel,Georgia,serif!important;
 font-style:normal!important;
 font-weight:700!important;
 letter-spacing:.025em!important;
 line-height:1.05!important;
 white-space:normal!important;
 text-transform:uppercase!important;
 color:#0c2637!important;
 text-shadow:none!important;
}
body.home .two-hours-v2__mark span,
body.home .two-hours-v2__mark b{font-size:clamp(2.4rem,6vw,4.25rem)!important}
body.home .two-hours-v2__mark strong{
 font-size:clamp(5rem,12vw,9rem)!important;
 line-height:.98!important;
 color:#fff8ed!important;
 text-shadow:0 4px 17px rgba(52,28,6,.12)!important;
}
body.home .two-hours-v2__copy{
 width:100%;
 max-width:1000px!important;
 margin:0 auto!important;
 text-align:center!important;
 display:flex;
 flex-direction:column;
 align-items:center;
 gap:clamp(12px,2vw,20px);
}
body.home .two-hours-v2__copy .section-kicker{
 order:-1;
 margin:0 0 4px!important;
 color:#fff8ed!important;
 font-family:Montserrat,'Segoe UI',sans-serif!important;
 font-size:.76rem!important;
 font-weight:600!important;
 letter-spacing:.23em!important;
 text-transform:uppercase!important;
}
body.home .two-hours-v2__copy h2{
 margin:0!important;
 max-width:900px!important;
 color:#fff9ef!important;
 font-family:Cinzel,Georgia,serif!important;
 font-weight:600!important;
 font-size:clamp(1.85rem,4.4vw,3.7rem)!important;
 letter-spacing:.005em!important;
 line-height:1.23!important;
 text-align:center!important;
 text-transform:uppercase!important;
}
body.home .two-hours-v2__copy>p:not(.section-kicker){
 margin:0!important;
 max-width:740px!important;
 color:#fffaf2!important;
 font-family:Montserrat,'Segoe UI',sans-serif!important;
 font-size:clamp(.94rem,1.45vw,1.1rem)!important;
 line-height:1.7!important;
 font-weight:500!important;
 text-align:center!important;
}
body.home .two-hours-v2__copy .line-link{
 display:inline-flex!important;
 align-items:center;
 justify-content:center;
 gap:14px;
 margin-top:8px!important;
 padding:15px clamp(17px,3vw,34px)!important;
 min-height:52px;
 border:1.5px solid #fff9ef!important;
 background:transparent!important;
 color:#fff9ef!important;
 font-family:Montserrat,'Segoe UI',sans-serif!important;
 font-weight:700!important;
 font-size:.82rem!important;
 letter-spacing:.09em!important;
 text-transform:uppercase!important;
 text-decoration:none!important;
 transition:background .2s,color .2s!important;
}
body.home .two-hours-v2__copy .line-link:hover,
body.home .two-hours-v2__copy .line-link:focus-visible{
 background:#fff9ef!important;
 color:#0c2637!important;
}
@media(max-width:700px){
 body.home section.two-hours-v2{padding:48px 0 58px!important}
 body.home .two-hours-v2__grid{gap:19px!important}
 body.home .two-hours-v2__mark{max-width:100%!important}
 body.home .two-hours-v2__mark span,
 body.home .two-hours-v2__mark b{font-size:clamp(2.2rem,10vw,3.2rem)!important}
 body.home .two-hours-v2__mark strong{font-size:clamp(5.2rem,24vw,7rem)!important}
 body.home .two-hours-v2__copy h2{font-size:clamp(1.55rem,7vw,2.4rem)!important}
 body.home .two-hours-v2__copy .line-link{width:min(100%,400px)}
}


/* PUNTO 5 — pulido general de identidad visual, legibilidad y móvil.
   Se respetan expresamente: cabecera de cristal, cocina limpia, promo naranja
   y toda la lógica, importes y condiciones de las calculadoras. */
:root {
  --mags-design-ink: #102b38;
  --mags-design-copy: #334b52;
  --mags-design-muted: #50676c;
  --mags-design-surface: #f7f5f0;
  --mags-design-stroke: #d1dfd9;
  --mags-design-focus: #56bfb4;
}
body {
  background: var(--mags-design-surface);
  color: var(--mags-design-copy);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body :where(.manifesto-v2,.showcase-v2,.process-v2,.areas-v2,.mags-premium-gateway,.two-hours-intro,.two-hours-services,.two-hours-read) {
  min-width: 0;
}
body.home .manifesto-v2,
body.home .showcase-v2 {
  padding-top: clamp(60px, 8vw, 120px);
}
body.home .manifesto-v2 {
  padding-bottom: clamp(60px, 8vw, 115px);
}
body.home .showcase-v2 {
  padding-bottom: clamp(58px, 7vw, 100px);
}
body.home .mags-premium-gateway,
body.home .manifesto-v2,
body.home .showcase-v2 {
  color: var(--mags-design-ink);
}
body.home :is(.manifesto-v2,.showcase-v2,.process-v2,.areas-v2) h2 {
  font-family: Cinzel,Georgia,serif;
  font-weight: 600;
  font-size: clamp(2rem,4.15vw,4.15rem);
  letter-spacing: -.027em;
  line-height: 1.17;
  text-wrap: balance;
  overflow-wrap: normal;
}
body.home .manifesto-v2__grid > div > p,
body.home .mags-premium-gateway__head p {
  color: var(--mags-design-copy);
  font: 400 clamp(.98rem,1.25vw,1.09rem)/1.85 Montserrat,"Segoe UI",sans-serif;
  max-width: 680px;
}
body.home .showcase-card__copy p,
body.home .process-v2__steps p {
  font-family: Montserrat,"Segoe UI",sans-serif;
  font-weight: 400;
  line-height: 1.68;
}
body.home .process-v2__intro > p:last-child,
body.home .process-v2__steps p {
  color: #d5e6e5;
}
body.home .process-v2__steps article {
  border-color: rgba(222,245,239,.22);
  padding-block: clamp(24px,3vw,38px);
}
body.home .areas-v2__list :is(span,a) {
  color: #f0f9f6;
  border-bottom-color: rgba(230,247,242,.25);
  line-height: 1.6;
}
body.home .areas-v2__list a{
  display:block;
  text-decoration:none;
}
body.home .areas-v2__list a:hover,
body.home .areas-v2__list a:focus-visible{
  color:#a9ede4;
}
body.home .showcase-card {
  border: 1px solid rgba(16,43,56,.08);
  border-radius: 3px;
}
body.home .showcase-card__shade {
  background: linear-gradient(0deg,rgba(4,23,37,.9) 0%,rgba(4,23,37,.18) 56%,rgba(4,23,37,0) 85%);
}
body .mags-premium-card {
  border-radius: 3px;
  border-color: rgba(15,59,65,.24);
}
body .mags-premium-card h3 {
  line-height: 1.23;
  letter-spacing: -.029em;
}
body .mags-premium-card p {
  line-height: 1.72;
  font-weight: 400;
}
body .section-kicker {
  font-family: Montserrat,"Segoe UI",sans-serif;
  font-weight: 750;
  line-height: 1.5;
}
/* Coherencia en llamadas a la acción sin cambiar las de la promoción naranja. */
body :is(.button--primary,.header-cta,.button--secondary) {
  min-height: 48px;
  font-family: Montserrat,"Segoe UI",sans-serif;
  font-weight: 700;
  letter-spacing: .07em;
  line-height: 1.45;
  text-align: center;
  border-radius: 3px;
}
body :is(.button--primary,.header-cta):hover {
  box-shadow: 0 8px 22px rgba(9,36,44,.17);
}
body :is(.button--primary,.header-cta,.line-link,.round-link,.mags-premium-card,.showcase-card):focus-visible {
  outline: 3px solid var(--mags-design-focus);
  outline-offset: 4px;
}
body :is(.line-link,.round-link) {
  font-family: Montserrat,"Segoe UI",sans-serif;
  line-height: 1.5;
}
/* Las páginas de servicios y condiciones comparten una jerarquía legible. */
body :is(.two-hours-intro,.two-hours-services,.two-hours-read,.section--white,.section--soft) h2 {
  font-family: Cinzel,Georgia,serif;
  letter-spacing: -.023em;
  line-height: 1.24;
  text-wrap: balance;
}
body .two-hours-service {
  border: 1px solid var(--mags-design-stroke);
  border-radius: 3px;
  box-shadow: 0 12px 30px rgba(13,41,48,.055);
}
body .two-hours-service :is(p,li),
body :is(.two-hours-intro,.two-hours-services,.two-hours-read) p {
  line-height: 1.74;
}
body .site-footer {
  background: #10232c;
  border-top: 1px solid rgba(151,219,209,.2);
}
body .footer-main h2 {
  font-family: Montserrat,"Segoe UI",sans-serif;
  font-weight: 750;
  font-size: .89rem;
  letter-spacing: .075em;
}
body .footer-main a {
  line-height: 1.6;
  overflow-wrap: anywhere;
  text-underline-offset: 3px;
}
body .footer-main a:focus-visible,
body .footer-main a:hover { color: #a9ede4; }
/* No mover ni sustituir el logotipo aprobado. El WhatsApp mantiene su verde oficial. */
body .floating-whatsapp {
  width: 56px;
  height: 56px;
  min-width: 56px;
  min-height: 56px;
  border: 2px solid rgba(255,255,255,.9);
  box-shadow: 0 7px 25px rgba(6,31,38,.22);
}
@media(max-width:960px) {
  body.home .manifesto-v2__grid,
  body.home .process-v2__grid,
  body.home .areas-v2__grid {gap:clamp(26px,5vw,50px);}
}
@media(max-width:700px) {
  body.home .manifesto-v2,
  body.home .showcase-v2,
  body.home .process-v2,
  body.home .areas-v2 {padding-block:clamp(43px,11vw,70px);}
  body.home :is(.manifesto-v2,.showcase-v2,.process-v2,.areas-v2) h2 {
    font-size:clamp(1.8rem,7.1vw,2.75rem);
    line-height:1.21;
    letter-spacing:-.015em;
  }
  body.home .manifesto-v2__grid,
  body.home .process-v2__grid,
  body.home .areas-v2__grid {gap:24px;}
  body.home .showcase-v2__heading {
    gap:18px;
    align-items:center;
    margin-bottom:26px;
  }
  body.home .showcase-card__copy {padding:24px 23px;}
  body.home .areas-v2__list {gap:0 14px;}
  body.home .areas-v2__list :is(span,a) {padding:12px 0;}
  body :is(.button--primary,.header-cta,.button--secondary) {
    max-width:100%;
    white-space:normal;
    overflow-wrap:break-word;
  }
  body .floating-whatsapp {width:54px;height:54px;min-width:54px;min-height:54px;}
}
@media(max-width:850px) {
  body.home :is(.showcase-v2,.manifesto-v2,.process-v2,.two-hours-v2,.areas-v2,.final-v2,.mags-project) {
    content-visibility:auto;
    contain-intrinsic-size:800px;
  }
  body.home .mags-premium-pathways {grid-template-columns:minmax(0,1fr);}
  body.home .mags-premium-card {min-height:260px;}
  body.home .showcase-v2__heading {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    align-items:start;
    gap:20px;
  }
  body.home .showcase-v2__heading .round-link {
    justify-self:start;
    position:static;
    width:auto;
    height:auto;
    min-width:0;
    min-height:46px;
    padding:12px 18px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    white-space:nowrap;
    margin:0;
  }
  body.home .showcase-card,
  body.home .showcase-card--tall,
  body.home .showcase-card--wide {
    min-height:340px !important;
    aspect-ratio:4/3;
  }
  body.home .showcase-card__image {
    width:100%;
    height:100%;
    object-fit:cover;
  }
}
@media(max-width:440px) {
  body.home .showcase-v2__heading {flex-wrap:wrap;align-items:flex-start;}
  body.home .round-link {height:auto;width:auto;min-height:44px;padding:11px 16px;font-size:.72rem;}
  body.home .areas-v2__list {grid-template-columns:minmax(0,1fr);}
  body.home .areas-v2__list span:nth-child(even) {padding-left:0;}
}
.footer-brand{width:100%;display:flex;flex-direction:column;align-items:center;text-align:center}
.footer-brand>a{width:100%;display:flex;justify-content:center;align-items:center}
.footer-brand__media{display:block;width:min(280px,78vw);max-width:280px;margin:0 auto;background:#0b1d2a;overflow:visible}
.footer-brand__video{display:block;width:100%;height:auto;aspect-ratio:1344/768;object-fit:contain;object-position:center center;background:#0b1d2a;border:0;margin:0 auto}
.footer-brand p{max-width:360px!important;margin:34px auto 0!important;text-align:center;line-height:1.6}
body .site-footer{background:#0b1d2a!important}
@media(max-width:760px){.footer-brand{align-items:center!important}.footer-brand>a{justify-content:center!important}.footer-brand__media{width:min(265px,76vw);max-width:265px}.footer-brand p{max-width:320px!important;margin-top:36px!important;padding-inline:10px;text-align:center!important}}

/* Proceso de trabajo: bloque visual sin depender de fotografías. */
body.home .mags-process{
  background:#f5f2eb;
  padding:clamp(64px,9vw,110px) 0;
  border-top:1px solid rgba(12,48,61,.08);
  border-bottom:1px solid rgba(12,48,61,.08);
}
body.home .mags-process__head{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);
  gap:clamp(28px,6vw,72px);
  align-items:end;
  margin-bottom:clamp(34px,5vw,58px);
}
body.home .mags-process__head h2{
  margin:0;
  max-width:760px;
  color:#102b38;
}
body.home .mags-process__head>p{
  margin:0;
  color:#5a6d72;
  max-width:520px;
  font-size:1.02rem;
  line-height:1.75;
}
body.home .mags-process__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  border-top:1px solid rgba(16,43,56,.15);
  border-bottom:1px solid rgba(16,43,56,.15);
}
body.home .mags-process__step{
  position:relative;
  min-height:280px;
  padding:30px 26px 34px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:54px;
  border-right:1px solid rgba(16,43,56,.15);
  background:rgba(255,255,255,.38);
}
body.home .mags-process__step:last-child{border-right:0}
body.home .mags-process__num{
  display:inline-flex;
  width:max-content;
  color:#f26a00;
  font:700 .8rem/1 Montserrat,"Segoe UI",sans-serif;
  letter-spacing:.14em;
}
body.home .mags-process__step h3{
  margin:0 0 12px;
  color:#102b38;
  font-family:Montserrat,"Segoe UI",sans-serif;
  font-size:clamp(1.05rem,1.5vw,1.32rem);
  font-weight:750;
  line-height:1.3;
}
body.home .mags-process__step p{
  margin:0;
  color:#607278;
  line-height:1.65;
  font-size:.94rem;
}
body.home .mags-process__step::after{
  content:"";
  position:absolute;
  left:26px;
  right:26px;
  bottom:-1px;
  height:3px;
  background:#f26a00;
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .28s ease;
}
body.home .mags-process__step:hover::after{transform:scaleX(1)}
body.home .mags-process__cta{
  display:flex;
  justify-content:flex-end;
  padding-top:30px;
}
@media(max-width:900px){
  body.home .mags-process__head{grid-template-columns:1fr;gap:18px}
  body.home .mags-process__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.home .mags-process__step:nth-child(2){border-right:0}
  body.home .mags-process__step:nth-child(-n+2){border-bottom:1px solid rgba(16,43,56,.15)}
}
@media(max-width:560px){
  body.home .mags-process{padding:56px 0}
  body.home .mags-process__grid{grid-template-columns:1fr}
  body.home .mags-process__step{min-height:0;gap:30px;padding:24px 4px 26px;border-right:0;border-bottom:1px solid rgba(16,43,56,.15);background:transparent}
  body.home .mags-process__step:last-child{border-bottom:0}
  body.home .mags-process__step::after{left:0;right:auto;width:56px;transform:scaleX(1)}
  body.home .mags-process__cta{justify-content:stretch;padding-top:26px}
  body.home .mags-process__cta .button{width:100%}
}


/* Logo animado separado del footer para mejorar jerarquía y equilibrio visual. */
body .mags-logo-showcase{
  background:#0b1d2a;
  padding:clamp(48px,7vw,82px) 0 clamp(54px,8vw,92px);
  border-top:1px solid rgba(255,255,255,.05);
}
body .mags-logo-showcase__inner{
  display:flex;
  justify-content:center;
  align-items:center;
}
body .mags-logo-showcase__frame{
  width:min(520px,82vw);
  padding:clamp(14px,2.4vw,24px);
  border:1px solid rgba(255,255,255,.13);
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01));
  box-shadow:0 22px 60px rgba(0,0,0,.22);
}
body .mags-logo-showcase__video{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:1344/768;
  object-fit:contain;
  object-position:center center;
  margin:0 auto;
  border:0;
  background:#0b1d2a;
}
body .site-footer{
  background:#0b1d2a!important;
  border-top:1px solid rgba(255,255,255,.08);
}
body .footer-intro{
  text-align:center;
  padding-top:clamp(40px,6vw,64px);
  padding-bottom:clamp(30px,4vw,44px);
  max-width:760px;
}
body .footer-intro strong{
  display:block;
  color:#fff;
  font:700 .82rem/1.2 Montserrat,"Segoe UI",sans-serif;
  letter-spacing:.16em;
  margin-bottom:12px;
}
body .footer-intro p{
  margin:0 auto;
  max-width:620px;
  color:#b8c5ca;
  line-height:1.7;
}
body .footer-main--text-only{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:clamp(38px,6vw,72px)!important;
  align-items:start;
  padding-top:0;
}
body .footer-main--text-only>div{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
body .footer-main--text-only h2{
  margin-bottom:16px;
}
body .footer-main--text-only a,
body .footer-main--text-only p,
body .footer-main--text-only button{
  text-align:left;
}
body .footer-bottom{
  margin-top:clamp(36px,5vw,58px);
}
@media(max-width:880px){
  body .mags-logo-showcase{padding:44px 0 54px}
  body .mags-logo-showcase__frame{width:min(430px,86vw);padding:14px}
  body .footer-main--text-only{
    grid-template-columns:1fr!important;
    gap:34px!important;
  }
  body .footer-main--text-only>div{
    align-items:center;
    text-align:center;
  }
  body .footer-main--text-only a,
  body .footer-main--text-only p,
  body .footer-main--text-only button{
    text-align:center;
  }
  body .footer-main--text-only p{max-width:420px}
  body .footer-bottom{
    text-align:center;
    align-items:center;
    gap:10px;
  }
}
@media(max-width:560px){
  body .mags-logo-showcase__frame{width:min(390px,88vw);padding:12px}
  body .footer-intro{padding-inline:22px}
}

@media(prefers-reduced-motion:reduce) {
  body :is(.mags-premium-card,.showcase-card__image,.floating-whatsapp,.button--primary) {
    transition:none!important;
  }
  body .mags-premium-card:hover,body .floating-whatsapp:hover {
    transform:none!important;
  }
}


/* AJUSTE APROBADO: tarjeta 02 MAG'S 2 HORAS naranja y texto centrado. */
body.home .mags-premium-gateway .mags-premium-pathways > .mags-premium-card--light {
  background:#f1790a !important;
  background-image:none !important;
  color:#102b38 !important;
  border:1px solid #df6900 !important;
  display:flex !important;
  flex-direction:column;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  gap:clamp(20px,3vw,28px);
  padding:clamp(26px,4vw,44px);
  min-height:335px;
}
body.home .mags-premium-gateway .mags-premium-pathways > .mags-premium-card--light::before {
  content:none !important;
  display:none !important;
}
body.home .mags-premium-gateway .mags-premium-card--light .mags-premium-card__tag {
  align-self:center;
  display:block;
  width:100%;
  margin:0;
  color:#102b38;
  text-align:center !important;
  opacity:1;
}
body.home .mags-premium-gateway .mags-premium-card--light > div {
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center !important;
  gap:14px;
}
body.home .mags-premium-gateway .mags-premium-card--light h3 {
  color:#102b38 !important;
  text-align:center !important;
  max-width:500px;
  margin:0 auto !important;
  font-family:Montserrat,"Segoe UI",sans-serif;
  font-weight:750;
  line-height:1.18;
  letter-spacing:-.024em;
  text-wrap:balance;
}
body.home .mags-premium-gateway .mags-premium-card--light h3 .mags2-title-main{
  display:block;
  font-size:clamp(1.9rem,3vw,2.65rem);
  text-transform:uppercase;
}
body.home .mags-premium-gateway .mags-premium-card--light h3 .mags2-title-sub{
  display:block;
  margin-top:.2rem;
  font-size:clamp(1.35rem,2.2vw,1.9rem);
  text-transform:uppercase;
}
body.home .mags-premium-gateway .mags-premium-card--light p {
  color:#122d37 !important;
  text-align:center !important;
  max-width:440px;
  margin:0 auto !important;
  font-weight:500;
  line-height:1.65;
  opacity:1;
}
body.home .mags-premium-gateway .mags-premium-card--light .mags-premium-card__action {
  color:#102b38 !important;
  align-self:stretch;
  display:flex !important;
  justify-content:center !important;
  align-items:center;
  gap:12px;
  width:100%;
  padding-top:17px;
  margin-top:2px;
  border-top:1px solid rgba(16,43,56,.55);
  text-align:center !important;
}
body.home .mags-premium-gateway .mags-premium-card--light .mags-premium-card__arrow {
  color:#102b38;
  flex:0 0 auto;
}
body.home .mags-premium-gateway .mags-premium-card--light:hover,
body.home .mags-premium-gateway .mags-premium-card--light:focus-visible {
  border-color:#102b38 !important;
}
@media(max-width:700px) {
  body.home .mags-premium-gateway .mags-premium-card--light {
    gap:19px;
    min-height:285px;
    padding:30px 19px;
  }
  body.home .mags-premium-gateway .mags-premium-card--light h3 {
    font-size:clamp(1.45rem,6.5vw,1.95rem);
  }
}

/* Tarjeta 01: misma composición, tipografía y jerarquía que MAG'S 2 HORAS. */
body.home .mags-premium-gateway .mags-premium-pathways > .mags-premium-card:not(.mags-premium-card--light) {
  display:flex !important;
  flex-direction:column;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  gap:clamp(20px,3vw,28px);
  padding:clamp(26px,4vw,44px);
  min-height:335px;
}
body.home .mags-premium-gateway .mags-premium-pathways > .mags-premium-card:not(.mags-premium-card--light)::before {
  content:none !important;
  display:none !important;
}
body.home .mags-premium-gateway .mags-premium-card:not(.mags-premium-card--light) .mags-premium-card__tag {
  align-self:center;
  display:block;
  width:100%;
  margin:0;
  text-align:center !important;
  opacity:1;
}
body.home .mags-premium-gateway .mags-premium-card:not(.mags-premium-card--light) > div {
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center !important;
  gap:14px;
}
body.home .mags-premium-gateway .mags-premium-card:not(.mags-premium-card--light) h3 {
  color:inherit !important;
  text-align:center !important;
  max-width:500px;
  margin:0 auto !important;
  font-family:Montserrat,"Segoe UI",sans-serif;
  font-size:clamp(1.9rem,3vw,2.65rem);
  font-weight:750;
  line-height:1.18;
  letter-spacing:-.024em;
  text-transform:uppercase;
  text-wrap:balance;
}
body.home .mags-premium-gateway .mags-premium-card:not(.mags-premium-card--light) p {
  color:inherit !important;
  text-align:center !important;
  max-width:440px;
  margin:0 auto !important;
  font-weight:500;
  line-height:1.65;
  opacity:.92;
}
body.home .mags-premium-gateway .mags-premium-card:not(.mags-premium-card--light) .mags-premium-card__action {
  color:inherit !important;
  align-self:stretch;
  display:flex !important;
  justify-content:center !important;
  align-items:center;
  gap:12px;
  width:100%;
  padding-top:17px;
  margin-top:2px;
  border-top:1px solid rgba(228,247,245,.5);
  text-align:center !important;
}
body.home .mags-premium-gateway .mags-premium-card:not(.mags-premium-card--light) .mags-premium-card__arrow {
  color:inherit;
  flex:0 0 auto;
}
@media(max-width:700px) {
  body.home .mags-premium-gateway .mags-premium-card:not(.mags-premium-card--light) {
    gap:19px;
    min-height:285px;
    padding:30px 19px;
  }
  body.home .mags-premium-gateway .mags-premium-card:not(.mags-premium-card--light) h3 {
    font-size:clamp(1.45rem,6.5vw,1.95rem);
  }
}
