/* The native header/footer are rendered by their existing Elementor templates. */
@font-face{font-family:'Parade Christmas Script';src:url('script.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
body.phcx-christmas-page{background:#102c29}
body.phcx-christmas-page #ph-home-header-native .elementor-element-7dd270b6 a{position:relative}
body.phcx-christmas-page #ph-home-header-native .elementor-element-7dd270b6 a:after{content:'';position:absolute;pointer-events:none;width:32px;height:31px;left:1%;top:-16px;transform:rotate(-13deg);background:url('santa-hat.svg') center/contain no-repeat;z-index:1}
.phcx{--phcx-shell-height:78px}
.phcx .phcx-first-screen{height:calc(100svh - var(--phcx-shell-height));display:grid;grid-template-rows:minmax(0,1fr) auto}
.phcx .hero{height:100%;min-height:0;padding:clamp(24px,4svh,48px) 0}
.phcx .hero-inner{height:100%;min-height:0;grid-template-columns:1fr .93fr}
.phcx .hero-visual{height:100%;min-height:0;max-height:650px}
.phcx h1{font-size:clamp(64px,min(8.4vw,12.7svh),118px)}
.phcx .hero-copy>.eyebrow{margin-bottom:clamp(9px,2.2svh,22px)}
.phcx .hero-description{margin-top:clamp(12px,2.6svh,24px)}
.phcx .hero-actions{margin-top:clamp(16px,2.7svh,26px)}
.phcx .hero-footnote{margin-top:clamp(12px,2.7svh,26px)}
.phcx .hero-bow{top:-30px;height:115px;width:150px;left:calc(50% - 75px)}
.phcx .festive-ribbon{padding:12px 24px;gap:clamp(20px,3vw,45px)}
.phcx .festive-ribbon span{font-size:23px}
.phcx section[id]{scroll-margin-top:calc(var(--phcx-shell-height) + 20px)}
@media(max-height:720px) and (min-width:768px){
  .phcx .hero{padding:24px 0}
  .phcx .hero-script{font-size:25px}
  .phcx .hero-description{font-size:12px;line-height:1.8}
  .phcx .hero-footnote{display:none}
  .phcx .hero-actions .button{min-height:48px;padding:14px 18px}
  .phcx .christmas-seal{width:125px;height:125px;bottom:35px;left:-40px}
  .phcx .christmas-seal b{font-size:36px}
}
@media(min-width:768px) and (max-width:1000px){
  .phcx .hero-inner{grid-template-columns:1.05fr .95fr;gap:30px}
  .phcx h1{font-size:clamp(64px,min(9vw,11.5svh),88px)}
  .phcx .hero-actions{gap:8px;align-items:flex-start;flex-direction:column}
  .phcx .hero-footnote{display:none}
  .phcx .hero-visual{max-height:610px}
  .phcx .christmas-seal{width:115px;height:115px;left:-22px}
  .phcx .christmas-seal b{font-size:33px}
}
@media(max-width:767px){
  .phcx{--phcx-shell-height:72px}
  body.phcx-christmas-page #ph-home-header-native .elementor-element-7dd270b6 a:after{width:26px;height:26px;top:-13px;left:1%}
  .phcx .hero{padding:18px 0 17px}
  .phcx .hero-inner{width:calc(100% - 40px);display:grid;grid-template-columns:1fr;grid-template-rows:auto minmax(80px,1fr);gap:21px;align-items:stretch}
  .phcx .hero-copy{text-align:left}
  .phcx .hero-copy>.eyebrow{font-size:9px;letter-spacing:1.8px;margin-bottom:8px}
  .phcx .tiny-star{font-size:15px}
  .phcx .hero-script{font-size:clamp(21px,3.2svh,26px);margin-bottom:8px}
  .phcx h1{font-size:clamp(43px,min(17.2vw,8.5svh),72px);line-height:.92;letter-spacing:-.5px}
  .phcx .hero-description{font-size:11px;line-height:1.7;margin-top:12px;max-width:100%}
  .phcx .hero-actions{margin-top:14px;display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-start;gap:18px}
  .phcx .hero-actions .button{font-size:8px;padding:11px 13px;min-height:44px;gap:11px;white-space:nowrap}
  .phcx .hero-actions .button svg{width:17px;height:17px}
  .phcx .hero-actions .text-link{font-size:8px;letter-spacing:.6px;gap:9px;min-height:44px}
  .phcx .hero-actions .text-link svg{width:17px;height:17px}
  .phcx .hero-footnote{display:none}
  .phcx .hero-visual{height:100%;min-height:0;max-height:none;width:100%;padding:5px 6px 5px 6px;margin:0}
  .phcx .photo-frame{border-radius:44% 44% 0 0;outline-offset:5px}
  .phcx .hero-photo{object-position:40% 48%}
  .phcx .photo-caption{font-size:8px;padding:7px 8px;letter-spacing:.7px}
  .phcx .hero-bow{height:66px;width:90px;top:-20px;left:calc(50% - 45px)}
  .phcx .christmas-seal{width:84px;height:84px;left:-6px;bottom:23px;border-width:4px}
  .phcx .christmas-seal>svg{width:9px;height:9px;top:6px}
  .phcx .christmas-seal span{font-size:7px;letter-spacing:1px;padding-top:6px}
  .phcx .christmas-seal b{font-size:26px}
  .phcx .photo-sprig{width:105px;height:95px;right:-26px;bottom:-22px}
  .phcx .hero-sprig{width:120px;height:100px;top:-25px;left:-65px;opacity:.3}
  .phcx .ornament-one{display:none}
  .phcx .ornament-two{right:13px;top:-28px;height:63px;transform:scale(.42)}
  .phcx .festive-ribbon{padding:10px 13px;gap:11px;min-height:45px}
  .phcx .festive-ribbon span{font-size:17px;letter-spacing:.5px}
  .phcx .festive-ribbon svg{width:14px;height:14px}
}
@media(max-width:359px){
  .phcx .hero-inner{width:calc(100% - 32px);gap:17px}
  .phcx .hero-actions{gap:10px}
  .phcx .hero-actions .button{padding:10px;gap:7px}
  .phcx .hero-actions .text-link{gap:6px;font-size:7px}
  .phcx .festive-ribbon{gap:7px}
  .phcx .festive-ribbon span{font-size:15px}
}
@media(max-width:767px) and (max-height:650px){
  .phcx .hero{padding:14px 0}
  .phcx .hero-inner{gap:14px}
  .phcx .hero-copy>.eyebrow{font-size:8px;margin-bottom:5px}
  .phcx .hero-script{font-size:20px;margin-bottom:5px}
  .phcx h1{font-size:43px}
  .phcx .hero-description{font-size:10px;line-height:1.6;margin-top:8px}
  .phcx .hero-actions{margin-top:10px}
  .phcx .hero-bow{width:64px;height:48px;top:-13px;left:calc(50% - 32px)}
  .phcx .christmas-seal{width:65px;height:65px;bottom:21px}
  .phcx .christmas-seal span{font-size:6px}
  .phcx .christmas-seal b{font-size:20px}
  .phcx .christmas-seal>svg{display:none}
  .phcx .photo-sprig{width:75px;height:65px;bottom:-10px;right:-15px}
}
/* Compact portrait screens retain readable native-size CTAs and the whole ribbon. */
@media(max-width:767px) and (min-height:481px) and (max-height:620px){
  .phcx .hero-inner{grid-template-rows:1fr}
  .phcx .hero-copy{align-self:center}
  .phcx .hero-visual{display:none}
}
/* At very short landscape/zoomed viewports, preserve readable content. */
@media(max-height:480px){
  .phcx .phcx-first-screen{height:auto;min-height:calc(100svh - var(--phcx-shell-height))}
  .phcx .hero{min-height:410px}
  .phcx .hero-visual{min-height:220px}
}
@media(prefers-reduced-motion:reduce){.phcx *{transition:none!important;scroll-behavior:auto!important}}
