body{margin:0;background:#fff;color:var(--color-text);font-family:var(--font-body);overflow-x:clip}
.campaign-header{max-width:1200px;margin:auto;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.campaign-header img{width:220px;height:auto}.campaign-header .btn{font-size:.9rem}
.landing-layout{display:grid;grid-template-columns:minmax(0,850px) 340px;gap:70px;max-width:1320px;padding:0 30px;margin:auto;position:relative;isolation:isolate;align-items:start}
.landing-layout::before{content:'';position:absolute;z-index:-1;top:0;left:50%;transform:translateX(-50%);width:100vw;height:740px;background:linear-gradient(#07182988,#07182999),url('/images/home/home-preparacion-oposiciones-2027-panoramica.webp') center/cover no-repeat;clip-path:polygon(0 0,100% 0,100% 100%,82% 99%,65% 98%,55% 95%,45% 98%,20% 100%,0 100%)}
.landing-hero{height:740px;position:relative;color:#fff;padding:0 35px}.landing-hero h1{position:absolute;top:175px;left:0;width:100%;font-size:2.6rem;line-height:1.2;text-align:center;color:#fff;margin:0;font-weight:700;text-shadow:0 2px 8px #0006}.landing-hero h2{position:absolute;left:35px;bottom:115px;font-size:1.6rem;line-height:1.2;color:#fff;margin:0}
.landing-widget{position:sticky;top:35px;margin-top:60px;z-index:2;min-width:0}.landing-widget__scroll{max-height:calc(100dvh - 70px);overflow-y:auto;overscroll-behavior:contain;border-radius:16px;background:var(--color-primary);padding:8px;scrollbar-width:thin;scrollbar-color:#94aac0 var(--color-primary)}
.landing-widget .sp-form-outer,.landing-widget .sp-form{width:100%!important;max-width:100%!important;margin:0!important}.landing-widget .sp-form{background:var(--color-primary)!important;color:white!important;border:0!important}.landing-widget .sp-form label,.landing-widget .sp-form .sp-field>label,.landing-widget .sp-form p{color:white!important}.landing-widget .sp-form input:not([type=checkbox]),.landing-widget .sp-form select{min-height:34px!important;background:white!important;color:#222!important}.landing-widget .sp-button{background:var(--color-cta)!important;color:white!important;min-height:38px!important;font-size:16px!important}.landing-widget .sp-form a{color:inherit}.landing-widget .sp-form .iti__selected-flag,.landing-widget .sp-form .iti__selected-country,.landing-widget .sp-form .iti__selected-dial-code,.landing-widget .sp-form .iti__country-list{color:#222!important}
.landing-details{padding:75px 0 35px}.landing-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;text-align:center;color:var(--color-primary);padding:15px 20px 0}.landing-benefits svg{width:46px;height:46px;margin:0 auto 22px}.landing-benefits p{font-size:1rem;line-height:1.3;font-weight:700;margin:0}
.landing-image-cta{margin:130px 0 0;border-radius:10px;overflow:hidden}.landing-image-cta h2{background:var(--color-primary);color:#fff;font-size:1.15rem;line-height:1.3;text-align:center;padding:8px 12px;margin:0}.landing-image-cta__visual{height:245px;position:relative;display:grid;place-items:center;isolation:isolate}.landing-image-cta__visual img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover}.landing-image-cta__visual::after{content:'';position:absolute;inset:0;background:#0005;z-index:-1}.landing-image-cta .btn{font-size:1rem;font-weight:500;box-shadow:none}
.landing-preparation{margin-top:115px}.landing-preparation h2{color:var(--color-primary);font-size:2rem;line-height:1.15;text-align:center;margin:0 0 50px}.landing-mosaic{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;align-items:stretch}.landing-mosaic img{width:100%;height:190px;object-fit:cover;border-radius:8px}.landing-mosaic p{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--color-muted);font-size:1.15rem;line-height:1.3;margin:0;padding:20px 10px}.landing-mosaic p::after{content:'';display:block;width:46px;height:3px;background:var(--color-primary);margin-top:12px}
.campaign-footer{padding:65px 24px 35px;background:white;color:var(--color-text);text-align:center}.campaign-footer img{width:190px;height:auto;margin:0 auto 32px}.campaign-footer nav{display:flex;justify-content:center;gap:15px 35px;flex-wrap:wrap;font-size:.85rem}.campaign-footer a{color:var(--color-text);text-decoration:none}.campaign-footer a:hover{text-decoration:underline}.campaign-footer p{font-size:.75rem;margin:24px 0 0;color:var(--color-muted)}
.campaign-legal{max-width:900px;margin:35px auto 65px;padding:0 24px;line-height:1.75}.campaign-legal h1{margin-bottom:30px}.campaign-legal h2{margin-top:30px}
@media(max-width:1000px){.landing-layout{grid-template-columns:minmax(0,1fr) 310px;gap:35px;padding:0 24px}.landing-hero h1{font-size:2.1rem}.landing-hero h2{left:15px}.landing-mosaic img{height:160px}.landing-mosaic p{font-size:.95rem}.landing-benefits{gap:15px;padding-inline:0}.landing-benefits p{font-size:.85rem}}
@media(max-width:700px){.landing-layout{display:flex;flex-direction:column;padding:0;gap:0}.landing-copy{display:contents}.landing-hero{order:0;width:100%;height:430px;padding:0 24px;background:linear-gradient(#07182988,#071829a8),url('/images/home/home-preparacion-oposiciones-2027-panoramica.webp') 75% center/cover;clip-path:polygon(0 0,100% 0,100% 100%,55% 95%,0 100%)}.landing-layout::before{display:none}.landing-hero h1{top:95px;font-size:2rem}.landing-hero h2{left:30px;bottom:60px;font-size:1.3rem}.landing-widget{position:relative;top:auto;order:1;margin:25px auto 0;width:calc(100% - 40px);max-width:400px}.landing-widget__scroll{max-height:80dvh}.landing-details{order:2;width:100%;padding:50px 22px 25px}.landing-benefits svg{width:36px;height:36px;margin-bottom:15px}.landing-benefits p{font-size:.72rem}.landing-benefits{gap:10px}.landing-image-cta{margin-top:65px}.landing-image-cta__visual{height:210px}.landing-preparation{margin-top:65px}.landing-preparation h2{font-size:1.55rem;margin-bottom:30px}.landing-mosaic img{height:130px}.landing-mosaic p{font-size:.8rem;padding:12px 6px}.campaign-header{padding:15px}.campaign-header img{width:160px}.campaign-header .btn{font-size:.75rem;padding:10px}.campaign-footer{padding-top:45px}.campaign-footer nav{font-size:.8rem;gap:15px}}
