/* =====================================================================
   PARAISORD — CHRISTMAS LAYER (visual only)
   Loaded after main.css. Everything is scoped to body.pw-xmas, so removing
   that class (filter 'paraisord_christmas_enabled') restores the normal look.
   No layout, form or booking logic is touched.
   Palette: navy #0b1f3a · gold #fbbf24 · red #c8102e · pine #14532d
   ===================================================================== */
body.pw-xmas{
  --xmas-red:#c8102e; --xmas-red-2:#9b0d24; --xmas-gold:#fbbf24; --xmas-navy:#0b1f3a; --xmas-navy-2:#0f2a4d;
}

/* ---------- Header: logo/menu stay as-is, garland hangs below ---------- */
body.pw-xmas .pw-header{border-bottom:2px solid rgba(251,191,36,.55);}
body.pw-xmas .pw-header::after{
  content:"";position:absolute;left:0;right:0;top:100%;height:44px;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='44' viewBox='0 0 160 44'%3E%0A%3Cpath d='M0 6 Q40 30 80 6 T160 6' fill='none' stroke='%2314532d' stroke-width='3'/%3E%0A%3Cpath d='M0 6 Q40 30 80 6 T160 6' fill='none' stroke='%2322c55e' stroke-width='1' stroke-dasharray='2 5'/%3E%0A%3Cg%3E%3Ccircle cx='20' cy='20' r='5' fill='%23ef4444'/%3E%3Ccircle cx='60' cy='21' r='5' fill='%23fbbf24'/%3E%3Ccircle cx='100' cy='20' r='5' fill='%2338bdf8'/%3E%3Ccircle cx='140' cy='21' r='5' fill='%23ef4444'/%3E%0A%3Ccircle cx='20' cy='20' r='9' fill='%23ef4444' opacity='.22'/%3E%3Ccircle cx='60' cy='21' r='9' fill='%23fbbf24' opacity='.25'/%3E%3Ccircle cx='100' cy='20' r='9' fill='%2338bdf8' opacity='.22'/%3E%3Ccircle cx='140' cy='21' r='9' fill='%23ef4444' opacity='.22'/%3E%3C/g%3E%3C/svg%3E") repeat-x top left / 160px 44px;
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.25));
}
body.pw-xmas .pw-lang-switch--top .pw-lang-opt.active{background:var(--xmas-red);}

/* ---------- Hero: night-blue festive scene (text/form remain real HTML) ---------- */
body.pw-xmas .pw-hero-bg{
  background:
    radial-gradient(circle at 12% 78%, rgba(251,191,36,.28) 0, transparent 22%),
    radial-gradient(circle at 88% 70%, rgba(251,191,36,.20) 0, transparent 20%),
    radial-gradient(circle at 50% 0%, rgba(56,189,248,.18) 0, transparent 45%),
    linear-gradient(180deg,#0b1f3a 0%,#0f2a4d 55%,#071426 100%);
}
body.pw-xmas .pw-hero::before{          /* soft star field */
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.55;
  background-image:
    radial-gradient(1.6px 1.6px at 12% 22%,#fff,transparent),radial-gradient(1.4px 1.4px at 27% 62%,#fff,transparent),
    radial-gradient(1.8px 1.8px at 41% 14%,#fff,transparent),radial-gradient(1.4px 1.4px at 58% 48%,#fff,transparent),
    radial-gradient(1.8px 1.8px at 73% 20%,#fff,transparent),radial-gradient(1.4px 1.4px at 86% 58%,#fff,transparent),
    radial-gradient(1.6px 1.6px at 94% 12%,#fff,transparent),radial-gradient(1.4px 1.4px at 6% 52%,#fff,transparent);
}
body.pw-xmas .pw-hero::after{           /* snowy ground line */
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:46px;z-index:1;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='800' height='60' viewBox='0 0 800 60' preserveAspectRatio='none'%3E%0A%3Cpath d='M0 60 V34 Q100 8 220 30 T440 28 T640 26 T800 30 V60Z' fill='%23e8f1fb' opacity='.95'/%3E%0A%3Cpath d='M0 60 V46 Q140 26 300 44 T600 42 T800 44 V60Z' fill='%23ffffff'/%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
}
body.pw-xmas .pw-hero-inner{position:relative;z-index:2;}
body.pw-xmas .pw-hero-inner::before,
body.pw-xmas .pw-hero-inner::after{     /* hanging ornaments, decorative only */
  content:"";position:absolute;top:-92px;width:54px;height:110px;pointer-events:none;z-index:0;
  background-repeat:no-repeat;background-size:contain;
}
body.pw-xmas .pw-hero-inner::before{left:14px;width:46px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='110' viewBox='0 0 46 110'%3E%0A%3Cline x1='23' y1='0' x2='23' y2='56' stroke='%23fbbf24' stroke-width='1.5'/%3E%0A%3Crect x='19' y='54' width='8' height='7' rx='1.5' fill='%23fbbf24'/%3E%0A%3Ccircle cx='23' cy='82' r='21' fill='%23b91c1c'/%3E%3Ccircle cx='23' cy='82' r='21' fill='none' stroke='%23fbbf24' stroke-width='1.5' opacity='.7'/%3E%0A%3Cellipse cx='15' cy='73' rx='6' ry='9' fill='%23fff' opacity='.28' transform='rotate%2825 15 73%29'/%3E%3C/svg%3E");}
body.pw-xmas .pw-hero-inner::after{right:14px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='54' height='110' viewBox='0 0 54 110'%3E%0A%3Cline x1='27' y1='0' x2='27' y2='56' stroke='%23fbbf24' stroke-width='1.5'/%3E%0A%3Cpolygon points='27%2C58 33%2C76 52%2C76 37%2C87 43%2C106 27%2C95 11%2C106 17%2C87 2%2C76 21%2C76' fill='%23fbbf24' stroke='%23f59e0b' stroke-width='1.5'/%3E%3C/svg%3E");}

/* greeting added by christmas.js */
body.pw-xmas .pw-xmas-greeting{
  display:block;margin:0 0 6px;font-family:'Brush Script MT','Segoe Script','Snell Roundhand',cursive,serif;
  font-style:italic;font-size:34px;line-height:1.1;color:var(--xmas-gold);text-shadow:0 2px 12px rgba(0,0,0,.45);
}
body.pw-xmas .pw-xmas-greeting::before{content:"🎅 ";font-style:normal;font-size:.8em;}
body.pw-xmas .pw-hero-text h1{text-shadow:0 3px 16px rgba(0,0,0,.55);}
body.pw-xmas .pw-hero-badges li{
  background:rgba(255,255,255,.08);border:1px solid rgba(251,191,36,.35);padding:8px 14px;border-radius:999px;
  backdrop-filter:blur(4px);
}
body.pw-xmas .pw-hero-form h2::before{content:"🎄 ";}
body.pw-xmas .pw-hero-form h2::after{content:" 🎁";}

/* ---------- Buttons & accents ---------- */
body.pw-xmas .pw-btn-cta{
  background:linear-gradient(135deg,var(--xmas-red),var(--xmas-red-2));
  box-shadow:0 8px 22px rgba(200,16,46,.42);border:1px solid rgba(251,191,36,.6);
}
body.pw-xmas .pw-btn-cta:hover{box-shadow:0 12px 28px rgba(200,16,46,.55);}
body.pw-xmas .pw-section-title::after{
  content:"";display:block;width:34px;height:26px;margin:10px auto 0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 26 26' fill='none' stroke='%23fbbf24' stroke-width='1.6' stroke-linecap='round'%3E%0A%3Cpath d='M13 2v22M3.5 7.5l19 11M3.5 18.5l19-11'/%3E%3C/svg%3E") no-repeat center / contain;
}
body.pw-xmas .pw-why-card:hover,body.pw-xmas .pw-dest-card:hover{border-top-color:var(--xmas-red);}
body.pw-xmas .pw-menu a:hover{color:var(--xmas-red);}

/* ---------- CTA band & footer ---------- */
body.pw-xmas .pw-cta-band{
  position:relative;background:linear-gradient(120deg,#0b1f3a 0%,#12365f 55%,#8f0f25 100%);
  border-top:3px solid var(--xmas-gold);
}
body.pw-xmas .pw-cta-band::before{
  content:"";position:absolute;left:0;right:0;top:0;height:44px;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='44' viewBox='0 0 160 44'%3E%0A%3Cpath d='M0 6 Q40 30 80 6 T160 6' fill='none' stroke='%2314532d' stroke-width='3'/%3E%0A%3Cpath d='M0 6 Q40 30 80 6 T160 6' fill='none' stroke='%2322c55e' stroke-width='1' stroke-dasharray='2 5'/%3E%0A%3Cg%3E%3Ccircle cx='20' cy='20' r='5' fill='%23ef4444'/%3E%3Ccircle cx='60' cy='21' r='5' fill='%23fbbf24'/%3E%3Ccircle cx='100' cy='20' r='5' fill='%2338bdf8'/%3E%3Ccircle cx='140' cy='21' r='5' fill='%23ef4444'/%3E%0A%3Ccircle cx='20' cy='20' r='9' fill='%23ef4444' opacity='.22'/%3E%3Ccircle cx='60' cy='21' r='9' fill='%23fbbf24' opacity='.25'/%3E%3Ccircle cx='100' cy='20' r='9' fill='%2338bdf8' opacity='.22'/%3E%3Ccircle cx='140' cy='21' r='9' fill='%23ef4444' opacity='.22'/%3E%3C/g%3E%3C/svg%3E") repeat-x top left / 160px 44px;
}
body.pw-xmas .pw-footer{border-top:3px solid var(--xmas-gold);}

/* ---------- Floating buttons wear a Santa hat ---------- */
body.pw-xmas .pw-wa-float,body.pw-xmas .pwb-chat-launcher{position:relative;overflow:visible;}
body.pw-xmas .pw-wa-float::before,body.pw-xmas .pwb-chat-launcher::before{
  content:"";position:absolute;top:-20px;right:-10px;width:36px;height:32px;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='56' viewBox='0 0 64 56'%3E%0A%3Cpath d='M6 44 C8 22 24 6 46 8 C40 16 42 28 58 40 Z' fill='%23dc2626'/%3E%0A%3Cpath d='M6 44 C10 30 20 18 34 12 C26 24 24 36 28 44Z' fill='%23b91c1c' opacity='.55'/%3E%0A%3Crect x='2' y='38' width='60' height='14' rx='7' fill='%23fff'/%3E%0A%3Ccircle cx='50' cy='9' r='7' fill='%23fff'/%3E%3C/svg%3E") no-repeat center / contain;transform:rotate(14deg);
}

/* ---------- Snow canvas (from christmas.js) ---------- */
#pw-snow-canvas{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:900;}

@media (max-width:820px){
  body.pw-xmas .pw-hero-inner::before,body.pw-xmas .pw-hero-inner::after{top:-110px;transform:scale(.8);}
  body.pw-xmas .pw-xmas-greeting{font-size:28px;}
  body.pw-xmas .pw-header::after{height:30px;background-size:110px 30px;}
}
@media (prefers-reduced-motion:reduce){#pw-snow-canvas{display:none!important;}}
