@font-face{font-family:HalloweenHome;src:url('/src/fonts/creepster-400.ttf') format('truetype');font-weight:400;font-display:swap}
[data-halloween-original][hidden]{display:none!important}
.ph-hw-home{position:relative;isolation:isolate;overflow:hidden;min-height:790px;padding:140px 24px 190px;background:#071221;color:#eef6ff;text-align:center}
.ph-hw-home::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 22% 0%,#385d85 0%,#1c3554 32%,#0c1c32 65%,#071221 90%);mask-image:linear-gradient(#000 0%,#000 62%,transparent 98%);pointer-events:none}
/* Match the Halloween landing: proportional artwork, with separate edges on wide screens. */
.ph-hw-home__art{position:absolute;width:100%;max-width:1920px;left:50%;bottom:-28px;z-index:0;transform:translateX(-50%);pointer-events:none}
.ph-hw-home__art img{display:block;width:100%;height:auto}
.ph-hw-home__wide-art{display:none}
.ph-hw-home__content{position:relative;z-index:1;max-width:740px;margin:auto}
.ph-hw-home__dates{font-size:16px;line-height:1.5;margin:0 0 22px;color:#c6dceb}
.ph-hw-home h1{margin:0;font-size:clamp(36px,4.4vw,60px);line-height:1.04;font-weight:800;letter-spacing:-.04em;color:#eef6ff}
.ph-hw-home h1 span{display:block;font:400 clamp(66px,8.2vw,112px)/1.03 HalloweenHome,Impact,sans-serif;letter-spacing:0;color:#94d7f8;margin-bottom:10px}
.ph-hw-home__offer{display:flex;justify-content:center;align-items:baseline;gap:12px;margin:20px 0 14px;color:#ffad5b;font-weight:700;font-size:26px;line-height:1}
.ph-hw-home__offer strong{font-size:clamp(68px,7vw,96px);font-weight:850;letter-spacing:-.04em}
.ph-hw-home__description{font-size:18px;line-height:1.6;margin:0 0 24px}
.ph-hw-home__action,.ph-hw-popup__action{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:52px;padding:14px 28px;background:#22c55e;color:#04150b;border-radius:999px;font-weight:750;font-size:16px;text-decoration:none;transition:transform .2s,background-color .2s}
.ph-hw-home__action:hover,.ph-hw-popup__action:hover{background:#4ade80;transform:translateY(-2px)}
.ph-hw-home__action:active,.ph-hw-popup__action:active{transform:translateY(0)}
.ph-hw-home__note{font-size:14px;line-height:1.5;color:#b8cddd;margin:16px auto 0;max-width:420px}
.ph-hw-home__ended{margin:26px auto;font-size:22px;line-height:1.5;max-width:520px}
.ph-hw-home [hidden],.ph-hw-popup [hidden]{display:none!important}
.ph-hw-popup,.ph-hw-popup *{box-sizing:border-box}
.ph-hw-popup{position:fixed;inset:0;width:min(780px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:0;border-radius:20px;background:#0b2032;color:#eef6ff;overflow:auto;overscroll-behavior:contain}
.ph-hw-popup::backdrop{background:#020b17c9}
.ph-hw-popup[open]{animation:ph-hw-popup-enter .28s ease-out both}
.ph-hw-popup__layout{display:grid;grid-template-columns:30% 1fr;min-height:500px}
.ph-hw-popup__art{background:#0b2032 url('/src/img/halloween/popup-portrait.webp') center center/cover no-repeat;pointer-events:none}
.ph-hw-popup__content{padding:42px 38px 32px;text-align:center}
.ph-hw-popup__close-bar{position:sticky;top:10px;height:0;z-index:2;padding-right:10px;pointer-events:none}
.ph-hw-popup__close{position:relative;margin-left:auto;pointer-events:auto;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:#18364a;color:#eef6ff;cursor:pointer;font-size:28px;line-height:1;transition:background-color .2s}
.ph-hw-popup__close:hover{background:#28516c}
.ph-hw-popup h2{text-wrap:balance;margin:0 0 14px;font-size:36px;font-weight:800;letter-spacing:-.04em;line-height:1.08}
.ph-hw-popup__offer{display:flex;align-items:baseline;justify-content:center;gap:8px;white-space:nowrap;margin:18px 0;color:#ffad5b;font-size:24px;font-weight:700;line-height:1}
.ph-hw-popup__offer strong{font-size:88px;letter-spacing:-.04em;font-weight:850}
.ph-hw-popup__services{font-size:16px;line-height:1.6;margin:0 0 16px;color:#d2e5f2}
.ph-hw-popup__rates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0 24px;font-size:14px;line-height:1.5;text-align:center}
.ph-hw-popup__rates span{display:block;color:#b8cfdf}
.ph-hw-popup__rates strong{font-size:21px;color:#94d7f8;font-weight:750;white-space:nowrap}
.ph-hw-popup__action{width:100%;padding-inline:18px}
.ph-hw-popup__remember{display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;margin-top:10px;color:#d2e5f2;font-size:14px;line-height:1.4;text-align:left;cursor:pointer}
.ph-hw-popup__remember input{appearance:auto;flex:0 0 18px;width:18px;height:18px;margin:0;accent-color:#22c55e;cursor:pointer}
.ph-hw-popup__remember input:focus-visible{outline:3px solid #ffad5b;outline-offset:4px}
.ph-hw-popup__note{margin:14px 0 0;font-size:14px;line-height:1.6;color:#b8cfdf}
.ph-hw-home a:focus-visible,.ph-hw-popup a:focus-visible,.ph-hw-popup button:focus-visible{outline:3px solid #ffad5b;outline-offset:5px}
@keyframes ph-hw-popup-enter{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
@media(min-width:1600px){.ph-hw-home{min-height:1020px;padding-top:178px}}
@media(min-width:1921px){
 .ph-hw-home__art{display:none}
 .ph-hw-home__wide-art{display:block;position:absolute;inset:0;z-index:0;pointer-events:none}
 .ph-hw-home__wide-edge{position:absolute;bottom:-28px;width:960px;height:1280px;background:url('/src/img/halloween/hero-wide-sides.webp') no-repeat;background-size:1920px 1280px}
 .ph-hw-home__wide-edge--left{left:0;background-position:left bottom}
 .ph-hw-home__wide-edge--right{right:0;background-position:right bottom}
 .ph-hw-home__wide-middle{position:absolute;left:400px;right:400px;bottom:-28px;height:400px;background:url('/src/img/halloween/hero-wide-pumpkins.webp') center bottom/1536px 1024px repeat-x}
}
@media(min-width:601px) and (max-width:1100px){.ph-hw-home__art{width:120%;max-width:none}}
@media(min-width:601px) and (max-width:800px){.ph-hw-home__art{width:110%}}
@media(max-width:600px){
 .ph-hw-home{min-height:760px;padding:128px 22px 180px}
 .ph-hw-home::before{background:radial-gradient(ellipse at 25% 0%,#2e4c70 0%,#172e4b 28%,#0b1c31 63%,#071221 90%);mask-image:linear-gradient(#000 0%,#000 68%,transparent 97%)}
 .ph-hw-home__art{width:calc(100% + 70px);max-width:none;bottom:-20px}
 .ph-hw-home__dates{font-size:14px;margin-bottom:22px}
 .ph-hw-home h1{font-size:36px}
 .ph-hw-home h1 span{font-size:68px}
 .ph-hw-home__offer{margin-top:24px;font-size:23px;gap:9px}
 .ph-hw-home__offer strong{font-size:76px}
 .ph-hw-home__description{font-size:16px;max-width:270px;margin:0 auto 24px}
 .ph-hw-home__note{max-width:250px;font-size:14px}
 .ph-hw-popup{width:calc(100% - 24px);max-height:calc(100dvh - 24px);border-radius:16px}
 .ph-hw-popup__layout{display:block;min-height:0}
 .ph-hw-popup__art{height:112px;background-position:center 74%}
 .ph-hw-popup__content{padding:24px}
 .ph-hw-popup h2{font-size:32px;margin-right:0}
 .ph-hw-popup__offer{margin:16px 0}
 .ph-hw-popup__offer strong{font-size:74px}
 .ph-hw-popup__rates{justify-content:space-between;gap:8px;margin:16px 0 20px}
 .ph-hw-popup__rates strong{font-size:19px}
 .ph-hw-popup__services{font-size:16px;margin-bottom:12px}
 .ph-hw-popup__action{font-size:16px;padding-inline:12px}
}
@media(max-width:359px){.ph-hw-home{padding-inline:14px}.ph-hw-home h1{font-size:32px}.ph-hw-home h1 span{font-size:59px}.ph-hw-popup__content{padding:22px 18px}.ph-hw-popup h2{font-size:29px}.ph-hw-popup__rates{font-size:14px}}
@media(prefers-reduced-motion:reduce){.ph-hw-popup[open]{animation:none}.ph-hw-home__action,.ph-hw-popup__action{transition:none}.ph-hw-home__action:hover,.ph-hw-popup__action:hover{transform:none}}

/* Shared campaign browser surfaces and short-screen dialog behavior. */
.ph-hw-home,.ph-hw-popup{--ph-hw-focus:#ffad5b;--ph-hw-ink:#eef6ff;--ph-hw-ground:#071221;--ph-hw-muted:#b8cfdf}
.ph-hw-home ::selection,.ph-hw-popup ::selection{background:var(--ph-hw-focus);color:var(--ph-hw-ground)}
.ph-hw-popup{scrollbar-width:thin;scrollbar-color:var(--ph-hw-muted) #0b2032;scroll-padding-block:64px 20px}
.ph-hw-popup__content{min-width:0}
.ph-hw-popup__rates>div{min-width:0}
.ph-hw-home__offer,.ph-hw-popup__offer,.ph-hw-popup__rates{font-variant-numeric:tabular-nums}
.ph-hw-home__action svg,.ph-hw-popup__action svg{flex:none}
@media(min-width:601px) and (max-width:900px){
 .ph-hw-popup__layout{grid-template-columns:26% minmax(0,1fr)}
 .ph-hw-popup__content{padding:56px 24px 28px}
 .ph-hw-popup__rates{gap:10px}
 .ph-hw-popup__rates strong{font-size:18px}
}
@media(max-width:400px){
 .ph-hw-popup__rates{grid-template-columns:1fr;gap:8px}
 .ph-hw-popup__rates>div{display:flex;flex-direction:column;align-items:center;gap:0}
 .ph-hw-popup__offer{font-size:20px;gap:6px}
 .ph-hw-popup__offer strong{font-size:64px}
}
@media(prefers-reduced-motion:reduce){html:has(.hw-page,.ph-hw-home,.ph-hw-popup){scroll-behavior:auto!important}}
