/* Cruelfang Christmas theme — enabled seasonally by christmas.js */
body.fang-christmas .site-header{border-bottom-color:rgba(249,205,119,.68);box-shadow:0 5px 28px rgba(24,89,70,.18)}
/* Hand-strung fairy lights: a fine curved wire, spaced hanging bulbs, soft independent twinkles. */
.fang-xmas-lights{position:absolute;left:12px;right:12px;top:0;height:36px;display:flex;align-items:flex-start;justify-content:space-between;pointer-events:none;z-index:3;overflow:visible}
.fang-xmas-lights:before{content:"";position:absolute;top:2px;left:0;right:0;height:12px;border-bottom:1.5px solid rgba(65,91,69,.75);border-radius:0 0 50% 50%;pointer-events:none}
.fang-xmas-light{--bulb:#ffd39a;position:relative;display:block;flex:0 0 7px;width:7px;height:10px;margin-top:var(--drop);border-radius:44% 44% 52% 52%;background:var(--bulb);opacity:.85;filter:brightness(.95);box-shadow:0 0 3px 1px var(--bulb),0 0 10px 2px color-mix(in srgb,var(--bulb) 55%,transparent);transform:rotate(var(--angle));animation:fang-fairy-twinkle var(--duration) ease-in-out infinite;animation-delay:var(--delay)}
.fang-xmas-light:before{content:"";position:absolute;width:5px;height:4px;top:-4px;left:1px;border-radius:1px;background:#355346;box-shadow:inset 0 0 1px #7a9176}
.fang-xmas-light:after{content:"";position:absolute;left:3px;top:2px;width:2px;height:3px;border-radius:50%;background:#fff;opacity:.55}
@keyframes fang-fairy-twinkle{0%,100%{opacity:.42;filter:brightness(.75);box-shadow:0 0 3px 1px var(--bulb),0 0 7px 1px color-mix(in srgb,var(--bulb) 36%,transparent)}45%{opacity:1;filter:brightness(1.32);box-shadow:0 0 5px 2px var(--bulb),0 0 14px 4px color-mix(in srgb,var(--bulb) 65%,transparent)}65%{opacity:.72;filter:brightness(.95)}}
.fang-snowfall{position:fixed;inset:0;z-index:35;pointer-events:none;overflow:hidden}
.fang-flake{position:absolute;top:-20px;left:var(--x);width:var(--s);height:var(--s);border-radius:50%;background:#fff;box-shadow:0 0 6px 1px rgba(205,236,255,.45);opacity:var(--o);animation:fang-fall var(--t) linear infinite;animation-delay:var(--d)}
@keyframes fang-fall{from{transform:translate3d(0,-15px,0)}to{transform:translate3d(var(--drift),110vh,0)}}
.fang-xmas-ribbon{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(251,208,122,.55);border-radius:999px;background:linear-gradient(100deg,rgba(18,68,54,.94),rgba(72,29,49,.94));box-shadow:0 0 32px rgba(255,194,103,.13);padding:9px 17px;color:#ffdfa3;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px}
.fang-xmas-ribbon .star{color:#ffcc75}
.fang-xmas-welcome{display:block;margin:10px 0 6px;font-family:Georgia,serif;font-weight:700;font-size:clamp(23px,2.5vw,38px);line-height:1.2;color:#fce5b2;text-shadow:0 0 22px rgba(255,197,115,.18)}
.fang-xmas-garland{position:absolute;left:0;right:0;top:-5px;height:39px;background:repeating-linear-gradient(114deg,transparent 0 12px,rgba(29,110,71,.75) 13px 17px,rgba(73,153,91,.8) 18px 21px,transparent 23px 38px);mask-image:linear-gradient(#000,transparent);pointer-events:none;opacity:.7}
.fang-xmas-charity{position:relative;overflow:hidden;margin:18px 0 30px;padding:29px 35px;border:1px solid rgba(247,205,128,.55);border-radius:23px;background:radial-gradient(circle at 10% 5%,rgba(35,109,80,.46),transparent 36%),radial-gradient(circle at 95% 95%,rgba(130,35,61,.3),transparent 38%),linear-gradient(120deg,rgba(9,28,32,.97),rgba(21,18,35,.98));box-shadow:0 16px 45px rgba(0,0,0,.24),inset 0 0 30px rgba(250,217,146,.04);display:flex;gap:28px;align-items:center;justify-content:space-between}
.fang-xmas-charity h2{margin:7px 0;font:700 clamp(23px,2.4vw,35px) Georgia,serif;color:#ffe2a9}
.fang-xmas-charity p{margin:7px 0 0;color:#e2dce6;line-height:1.65;max-width:810px}
.fang-xmas-charity .xmas-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.22em;font-weight:800;color:#a9e9c1}
.fang-xmas-charity a{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:13px 20px;border-radius:12px;background:linear-gradient(110deg,#e9c17a,#f6d69e);color:#22160c;font-weight:800;box-shadow:0 0 25px rgba(250,203,118,.19)}
body.fang-christmas .quick-card{border-color:rgba(122,190,135,.35)}
body.fang-christmas .quick-card:hover{border-color:rgba(244,206,125,.7)}
body.fang-christmas .hero-art:after{content:'✦';position:absolute;top:14%;right:10%;font-size:40px;color:#ffe6a0;text-shadow:0 0 30px #ffc16f;opacity:.75;animation:fang-glimmer 3s ease-in-out infinite;pointer-events:none}
@media(max-width:850px){.fang-xmas-charity{flex-direction:column;align-items:flex-start;padding:24px}.fang-xmas-charity a{width:100%}.fang-xmas-lights{left:8px;right:8px;height:29px}.fang-xmas-light{flex-basis:5px;width:5px;height:8px}}
@media(prefers-reduced-motion:reduce){.fang-xmas-light,.fang-flake,body.fang-christmas .hero-art:after{animation:none}.fang-snowfall{display:none}}

.fang-xmas-ribbon,.fang-xmas-welcome,.fang-xmas-charity{display:none}
body.fang-christmas .fang-xmas-ribbon{display:inline-flex}
body.fang-christmas .fang-xmas-welcome{display:block}
body.fang-christmas .fang-xmas-charity{display:flex}

/* A light, real pine garland sits BEHIND the individual hanging fairy bulbs. */
.fang-xmas-garland{position:absolute;inset:0 0 auto;height:42px;opacity:.9;pointer-events:none;z-index:2;background:url("assets/images/fang-christmas-garland.svg") repeat-x center top / 420px 54px;mask-image:linear-gradient(to bottom,#000 55%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 55%,transparent 100%)}
.fang-xmas-lights{z-index:3}
.site-header .nav-wrap{position:relative;z-index:4}
/* Seasonal greeting popup: dismissible and automatically closes after 8 seconds. */
.fang-xmas-popup{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(2,4,9,.82);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.fang-xmas-popup[hidden]{display:none!important}
.fang-xmas-popup-panel{position:relative;max-width:min(520px,92vw);max-height:calc(100dvh - 40px);border-radius:16px;border:1px solid rgba(255,215,137,.7);box-shadow:0 16px 65px rgba(0,0,0,.8),0 0 28px rgba(255,194,83,.18);overflow:hidden;background:#260f13}
.fang-xmas-popup-panel img{display:block;width:auto;max-width:100%;max-height:calc(100dvh - 55px);object-fit:contain}
.fang-xmas-popup-close{position:absolute;top:9px;right:9px;display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(0,0,0,.8);color:white;cursor:pointer;font:700 25px Arial,sans-serif;z-index:1}
.fang-xmas-popup-close:hover,.fang-xmas-popup-close:focus-visible{background:#772329;outline:2px solid #fbd18e;outline-offset:1px}
@media(max-width:600px){.fang-xmas-popup{padding:12px}.fang-xmas-popup-panel{max-width:95vw}.fang-xmas-popup-panel img{max-height:calc(100dvh - 24px)}}
