/* LIMPII 6.11.1 · portadas estáticas, fotografías visibles y formularios responsivos */
.campaign-hero{position:relative;overflow:hidden;padding:0 0 72px;background:linear-gradient(180deg,#f5f6f8 0%,#eceef2 100%);color:#15161b}
.campaign-navigation{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);gap:32px;align-items:end;padding-top:32px;padding-bottom:22px}
.campaign-navigation-copy{display:grid;gap:4px}
.campaign-navigation-copy>span{color:var(--red);font-size:11px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.campaign-navigation-copy>strong{color:#15161b;font-size:clamp(26px,2.6vw,38px);line-height:1.05}
.campaign-navigation-copy>p{margin:3px 0 0;color:#626672;font-size:13px;font-weight:650;line-height:1.4}
.campaign-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.campaign-tab{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:5px;align-content:start;min-height:116px;padding:14px;color:#26272d;text-align:left;border:1px solid #d7d9df;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(18,25,38,.06);cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s}
.campaign-tab>span{display:inline-flex;width:max-content;height:auto;padding:5px 8px;align-items:center;justify-content:center;color:#fff;border-radius:999px;background:#191a1f;font-size:9px;font-weight:950;letter-spacing:.06em;text-transform:uppercase}
.campaign-tab>strong{font-size:14px;line-height:1.16}
.campaign-tab>small{color:#747782;font-size:10.5px;font-weight:750;line-height:1.28}
.campaign-tab:hover,.campaign-tab:focus-visible{border-color:#ef9ca0;outline:0;box-shadow:0 13px 35px rgba(18,25,38,.1);transform:translateY(-2px)}
.campaign-tab.is-active{color:#fff;border-color:#d90910;background:linear-gradient(135deg,#ef171d,#b9080e);box-shadow:0 15px 34px rgba(218,10,17,.22)}
.campaign-tab.is-active>span{color:#cf0c13;background:#fff}
.campaign-tab.is-active>small{color:#ffe6e7}
.campaign-slides{position:relative}
.campaign-slide{position:relative}
.campaign-slide[hidden]{display:none!important}
.campaign-slide-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.72fr);gap:24px;align-items:start}
.campaign-showcase{overflow:hidden;padding:0;border:1px solid #d7dae0;border-radius:30px;background:#fff;box-shadow:0 22px 64px rgba(18,25,38,.12)}
.campaign-photo{position:relative;height:365px;margin:0;overflow:hidden;background:#d9d3cc;isolation:isolate}
.campaign-photo::before{position:absolute;z-index:0;inset:-34px;content:"";background-position:center;background-size:cover;filter:blur(24px) saturate(.9);opacity:.5;transform:scale(1.1)}
.campaign-photo-externalizacion::before{background-image:url('../images/oficina-puesto.webp')}
.campaign-photo-especializados::before{background-image:url('../images/pisos_1.webp')}
.campaign-photo-domiciliario::before{background-image:url('../images/domiciliario.webp')}
.campaign-photo::after{position:absolute;z-index:1;inset:0;content:"";box-shadow:inset 0 -50px 60px rgba(0,0,0,.09);pointer-events:none}
.campaign-photo img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:none;transform:scale(1.01)}
.campaign-photo-wide img{object-fit:cover;object-position:center 38%}
.campaign-photo-especializados img{object-position:center 31%}
.campaign-photo-domiciliario img{object-position:center 29%}
.campaign-copy{padding:28px 30px 30px}
.campaign-kicker,.campaign-form-label{display:inline-flex;align-items:center;gap:9px;color:#282a30;font-size:11px;font-weight:950;letter-spacing:.1em;text-transform:uppercase}
.campaign-kicker::before{width:9px;height:9px;content:"";border-radius:50%;background:var(--red);box-shadow:0 0 0 6px rgba(236,20,27,.12)}
.campaign-copy h1{max-width:760px;margin:17px 0 14px;color:#15161b;font-size:clamp(40px,4.25vw,62px);line-height:.97;letter-spacing:-.035em;text-wrap:balance}
.campaign-copy h1 span{color:var(--red)}
.campaign-copy>p{max-width:760px;margin:0;color:#595d67;font-size:16px;font-weight:620;line-height:1.55}
.campaign-actions{display:flex;flex-wrap:wrap;gap:11px;margin:23px 0 0}
.campaign-actions .btn{min-height:47px}
.campaign-actions .btn-outline{color:#15161b!important;border-color:#15161b!important;background:transparent!important}
.campaign-actions .btn-outline:hover{color:#fff!important;background:#15161b!important}
.campaign-benefits{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.campaign-benefits span{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;color:#363840;border:1px solid #e0e2e6;border-radius:999px;background:#f5f6f8;font-size:11px;font-weight:850}
.campaign-benefits span::before{content:"✓";color:var(--red);font-weight:950}
.campaign-form-card{position:relative;overflow:hidden;padding:25px;color:#15151a;border:1px solid #d7dae0;border-radius:30px;background:#fff;box-shadow:0 22px 64px rgba(18,25,38,.12)}
.campaign-form-card::after{position:absolute;z-index:0;right:-90px;bottom:-115px;width:260px;height:260px;content:"";border-radius:50%;background:radial-gradient(circle,rgba(255,16,16,.12),transparent 66%);pointer-events:none}
.campaign-form-card>*{position:relative;z-index:1}
.campaign-form-label{color:var(--red)}
.campaign-form-card h2{margin:7px 0 6px;color:#111;font-size:clamp(29px,2.7vw,38px);line-height:1;text-transform:none}
.campaign-form-card>p{margin:0 0 17px;color:#60616b;font-size:13px;font-weight:700;line-height:1.45}
.campaign-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.campaign-form-grid label{display:grid;gap:5px;margin:0;color:#1a1a20;font-size:10.5px}
.campaign-form-grid label>span{font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.campaign-field-full{grid-column:1/-1}
.campaign-form input,.campaign-form select,.campaign-form textarea{width:100%;min-height:43px;padding:10px 12px;color:#17171b;border:1px solid #d2d5dc;border-radius:11px;background:#fff;font:650 13px/1.3 'Noto Sans',sans-serif;outline:0}
.campaign-form textarea{min-height:64px;resize:vertical}
.campaign-form input:focus,.campaign-form select:focus,.campaign-form textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(255,16,16,.12)}
.campaign-consent{display:flex!important;align-items:flex-start;gap:9px;margin-top:11px!important;color:#555963!important;font-size:10.5px!important;line-height:1.4;text-transform:none!important;letter-spacing:0!important}
.campaign-consent input{width:17px!important;min-height:17px!important;height:17px!important;flex:0 0 17px;margin:1px 0 0;padding:0;accent-color:var(--red)}
.campaign-form-actions{display:grid;grid-template-columns:1.15fr .85fr;gap:8px;margin-top:12px}
.campaign-form-actions .btn{width:100%;min-height:46px;padding:11px 12px;white-space:normal;font-size:11.5px;line-height:1.15}
.campaign-email-button{color:#fff;border-color:#111;background:#111;box-shadow:0 10px 28px rgba(0,0,0,.15)}
.campaign-form small{display:block;margin-top:8px;color:#747781;text-align:center;font-size:9.5px;font-weight:750;line-height:1.35}
.campaign-form-status{display:none;margin-top:10px;padding:10px 12px;border-radius:11px;background:#fff0f1;color:#a8060c;font-size:12px;font-weight:800}
.campaign-form-status.is-visible{display:block}.campaign-form-status.is-success{color:#08633e;background:#e5f8ee}
.campaign-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.service-focus{padding-top:84px}.service-focus .lines{grid-template-columns:repeat(3,minmax(0,1fr))}
.service-focus .line-card,.service-focus .line-card.main{min-height:560px}
.service-focus .line-content{display:flex;flex-direction:column}
.service-focus .line-content p{min-height:0}.service-focus .line-content ul{min-height:112px;margin-bottom:16px}
.service-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:13px;margin-top:auto}
.service-card-actions .service-cta{margin-top:0}
.service-detail-link{color:#fff!important;font-size:13px;font-weight:900;text-decoration:underline;text-decoration-color:rgba(255,255,255,.45);text-underline-offset:4px}
.service-detail-link:hover{color:#ff777c!important}
@media(max-width:1180px){.campaign-navigation{grid-template-columns:1fr}.campaign-navigation-copy{max-width:700px}.campaign-slide-grid{grid-template-columns:1fr}.campaign-showcase,.campaign-form-card{width:min(100%,900px);margin-inline:auto}.campaign-photo{height:420px}.service-focus .lines{grid-template-columns:1fr}.service-focus .line-card,.service-focus .line-card.main{min-height:520px}}
@media(max-width:760px){.campaign-hero{padding-bottom:54px}.campaign-navigation{gap:18px;padding-top:20px;padding-bottom:16px}.campaign-navigation-copy>strong{font-size:29px}.campaign-navigation-copy>p{font-size:12px}.campaign-tabs{display:flex;gap:8px;margin-inline:-2px;padding:2px 2px 8px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}.campaign-tab{min-width:255px;min-height:112px;scroll-snap-align:start}.campaign-slide-grid{gap:17px}.campaign-showcase,.campaign-form-card{border-radius:22px}.campaign-photo{height:auto;aspect-ratio:4/3}.campaign-photo-wide img{object-position:center}.campaign-copy{padding:23px 20px 24px}.campaign-copy h1{font-size:clamp(34px,10.2vw,43px);line-height:1}.campaign-copy>p{font-size:15px}.campaign-actions{display:grid;grid-template-columns:1fr}.campaign-actions .btn{width:100%}.campaign-benefits{display:grid;grid-template-columns:1fr 1fr}.campaign-benefits span{border-radius:13px}.campaign-form-card{padding:21px}.campaign-form-grid,.campaign-form-actions{grid-template-columns:1fr}.campaign-field-full{grid-column:auto}.service-focus{padding-top:62px}.service-focus .line-card,.service-focus .line-card.main{min-height:560px}.service-focus .line-content ul{min-height:0}.service-card-actions{display:grid;grid-template-columns:1fr;width:100%}.service-detail-link{text-align:center}}
@media(max-width:420px){.campaign-navigation-copy>strong{font-size:27px}.campaign-copy h1{font-size:34px}.campaign-benefits{grid-template-columns:1fr}.campaign-form-card h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.campaign-tab{transition:none}}

/* LIMPII 6.11.2 · formulario fijo y rotación automática solo del servicio */
.campaign-slide .campaign-form-card{display:none}
.campaign-main-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.72fr);gap:24px;align-items:start}
.campaign-main-grid .campaign-slides{min-width:0}
.campaign-main-grid .campaign-slide-grid{display:block;width:100%;margin:0}
.campaign-main-grid>.campaign-form-card{display:block;position:sticky;top:92px}
.campaign-slide.is-active .campaign-showcase{animation:campaignServiceSwitch .32s ease-out both}
@keyframes campaignServiceSwitch{from{opacity:.35}to{opacity:1}}
@media(max-width:1180px){.campaign-main-grid{grid-template-columns:1fr}.campaign-main-grid>.campaign-form-card{position:relative;top:auto;width:min(100%,900px);margin-inline:auto}.campaign-main-grid .campaign-slide-grid{width:min(100%,900px);margin-inline:auto}}
@media(max-width:760px){.campaign-main-grid{gap:17px}.campaign-main-grid>.campaign-form-card{width:100%}.campaign-main-grid .campaign-slide-grid{width:100%}}
@media(prefers-reduced-motion:reduce){.campaign-slide.is-active .campaign-showcase{animation:none}}

/* LIMPII 6.11.3 · fotografías de portada a sangre, sin franjas laterales */
.campaign-photo::before{opacity:0}
@media(max-width:760px){
  .campaign-photo-especializados img{object-position:center 35%}
  .campaign-photo-domiciliario img{object-position:center 31%}
}
