@font-face{font-family:'PP Oswald';src:url('./Oswald-VariableFont_wght.ttf') format('truetype');font-weight:200 700;font-display:swap}
@font-face{font-family:'PP Lato';src:url('./Lato-Regular.ttf') format('truetype');font-weight:400;font-display:swap}

/* Full-bleed hero: rompe cualquier ancho máximo del tema/Elementor */
.pp-hero{position:relative;left:50%;width:100vw;max-width:none!important;margin-left:-50vw;margin-right:-50vw;min-height:100vh;overflow:hidden;background:#08131f;isolation:isolate}
.pp-bg{position:absolute;inset:-2.5%;z-index:0;background-image:var(--pp-bg);background-size:cover;background-position:center center;transform:scale(1.02);animation:ppCamera 14s ease-in-out infinite alternate;will-change:transform}
.pp-atmosphere{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(circle at 76% 53%,rgba(255,207,91,.10),transparent 22%),linear-gradient(90deg,rgba(2,9,18,.12),transparent 55%);animation:ppGlow 5s ease-in-out infinite alternate}
.pp-copy{position:absolute;z-index:3;left:8vw;top:50%;width:min(44vw,650px);transform:translateY(-50%);text-align:center;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.34)}
.pp-kicker,.pp-sub{font-family:'PP Lato',Arial,sans-serif;font-size:clamp(11px,1.15vw,16px);letter-spacing:.28em;line-height:1.5}
.pp-copy h1{font-family:'PP Oswald','Arial Narrow',sans-serif;font-size:clamp(50px,7vw,98px);font-weight:420;line-height:1;margin:.12em 0 .16em;letter-spacing:.055em}
.pp-rule{display:flex;align-items:center;gap:12px;justify-content:center;margin:8px auto 12px;width:min(420px,72%);opacity:.85}.pp-rule:before,.pp-rule:after{content:'';height:1px;flex:1;background:rgba(255,255,255,.65)}.pp-rule span{font-size:20px;line-height:1}
.pp-fireflies{position:absolute;inset:0;z-index:2;pointer-events:none}.pp-fireflies i{position:absolute;width:4px;height:4px;border-radius:50%;background:#ffd978;box-shadow:0 0 10px 3px rgba(255,207,94,.55);opacity:.15;animation:ppFly 7s ease-in-out infinite}.pp-fireflies i:nth-child(1){left:9%;bottom:25%;animation-delay:-1s}.pp-fireflies i:nth-child(2){left:26%;bottom:18%;animation-delay:-4s}.pp-fireflies i:nth-child(3){left:44%;bottom:30%;animation-delay:-2s}.pp-fireflies i:nth-child(4){left:58%;bottom:17%;animation-delay:-5s}.pp-fireflies i:nth-child(5){right:16%;bottom:25%;animation-delay:-3s}.pp-fireflies i:nth-child(6){right:32%;bottom:34%;animation-delay:-6s}
@keyframes ppCamera{from{transform:scale(1.02) translate3d(-.25%,0,0)}to{transform:scale(1.055) translate3d(.25%,-.2%,0)}}
@keyframes ppGlow{from{opacity:.7}to{opacity:1}}
@keyframes ppFly{0%,100%{opacity:.1;transform:translate(0,0) scale(.7)}30%{opacity:.8;transform:translate(10px,-10px) scale(1)}60%{opacity:.3;transform:translate(17px,-4px) scale(.8)}80%{opacity:.9;transform:translate(7px,-16px) scale(1.1)}}

/* Tablet */
@media(max-width:1024px){.pp-hero{min-height:82vh}.pp-copy{left:6vw;width:50vw}.pp-bg{background-position:57% center}}
/* Móvil: llena la pantalla; se prioriza puerta + texto */
@media(max-width:767px){.pp-hero{min-height:100svh}.pp-bg{background-position:63% center}.pp-copy{left:5vw;top:43%;width:90vw;padding-right:22vw;box-sizing:border-box}.pp-kicker,.pp-sub{font-size:10px;letter-spacing:.16em}.pp-copy h1{font-size:clamp(40px,12vw,62px);letter-spacing:.025em}.pp-rule{width:68%}}
@supports not (height:100svh){@media(max-width:767px){.pp-hero{min-height:100vh}}}
@media(prefers-reduced-motion:reduce){.pp-bg,.pp-atmosphere,.pp-fireflies i{animation:none!important}}
