/* ==========================================================================
   DRS — Christmas theme (loaded only while christmas_active(); see app/config/app.php).
   Art direction: a quiet, cinematic winter night. Deep crimson, pine green and champagne gold;
   aurora and moon, depth-of-field snow, a layered mountain landscape with atmospheric perspective,
   golden bokeh, warm fairy lights. Few elements, done well.
   body.xm-off = the visitor turned the effects off (palette stays, the rest goes).
   Only transform / opacity are animated.
   ========================================================================== */

body.christmas {
    --primary: #C81E3A;
    --secondary: #0F7A4F;
    --accent: var(--primary);
    --xm-gold: #D9B45A;
    --xm-gold-hi: #F6DE9A;
    --xm-champagne: #FFF4DA;
    --xm-ink: #070B18;
    --shadow-glow: 0 0 0 1px rgba(217,180,90,0.28), 0 8px 30px rgba(200,30,58,0.16);
    --shadow-glow-lg: 0 0 0 1px rgba(217,180,90,0.3), 0 18px 50px rgba(200,30,58,0.22);
}
body.christmas ::selection { background: rgba(200,30,58,0.5); color: #fff; }

body.christmas::after {
    background:
        radial-gradient(circle at 86% 15%, rgba(250,252,255,0.97) 0 26px, rgba(226,236,255,0.32) 28px, rgba(170,195,240,0.10) 70px, transparent 150px),
        radial-gradient(70% 45% at 50% -10%, rgba(52,120,170,0.18), transparent 65%),
        radial-gradient(55% 45% at 0% 100%, rgba(200,30,58,0.10), transparent 70%),
        linear-gradient(180deg, rgba(5,9,22,0.30) 0%, rgba(5,9,22,0.48) 45%, rgba(5,9,22,0.76) 100%);
}
body.christmas .text-gradient {
    background-image: linear-gradient(100deg, var(--xm-champagne) 0%, var(--xm-gold-hi) 30%, var(--xm-gold) 62%, #F2D488 100%);
}
body.christmas .marquee-bar {
    position: relative;
    background: linear-gradient(90deg, #4A0614, #8E1230 35%, #6E0F25 65%, #0B3D2E);
}
body.christmas .marquee-bar::after {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background: linear-gradient(100deg, transparent 40%, rgba(246,222,154,.22) 50%, transparent 60%);
    background-size: 300% 100%;
    animation: xm-shimmer 9s ease-in-out infinite;
}
@keyframes xm-shimmer { 0% { background-position: 120% 0; } 60%, 100% { background-position: -20% 0; } }
body.christmas .btn-primary {
    background-image: linear-gradient(180deg, #D8344F, #A5122C);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 0 0 1px rgba(217,180,90,.25), 0 10px 26px rgba(200,30,58,.25);
}
body.christmas .hero-pills li::before { background: var(--xm-gold); box-shadow: 0 0 10px rgba(217,180,90,.8); }
body.christmas .section-head .eyebrow, body.christmas .eyebrow { color: var(--xm-gold-hi); }

.xm-defs { position: absolute; width: 0; height: 0; overflow: hidden; }

/* ---------- Aurora ---------- */
.xm-aurora { position: fixed; left: 0; right: 0; top: 0; height: 58vh; z-index: -1; pointer-events: none; overflow: hidden;
    -webkit-mask-image: linear-gradient(to bottom, #000 15%, transparent); mask-image: linear-gradient(to bottom, #000 15%, transparent); }
.xm-aurora span {
    position: absolute; top: -24%; left: -30%; width: 160%; height: 64%;
    border-radius: 50%; filter: blur(56px); mix-blend-mode: screen; will-change: transform;
}
.xm-aurora span:nth-child(1) {
    background: linear-gradient(90deg, transparent 8%, rgba(45,212,160,.32) 30%, rgba(56,189,220,.26) 50%, rgba(45,212,160,.14) 68%, transparent 88%);
    animation: xm-aurora-1 32s ease-in-out infinite alternate;
}
.xm-aurora span:nth-child(2) {
    top: -8%; height: 48%;
    background: linear-gradient(90deg, transparent 20%, rgba(120,110,230,.18) 45%, rgba(45,212,160,.2) 62%, transparent 82%);
    animation: xm-aurora-2 41s ease-in-out infinite alternate;
}
@keyframes xm-aurora-1 { from { transform: translateX(-6%) rotate(-3deg) scaleY(.85); } to { transform: translateX(7%) rotate(2deg) scaleY(1.1); } }
@keyframes xm-aurora-2 { from { transform: translateX(9%) rotate(4deg); } to { transform: translateX(-8%) rotate(-2deg) scaleY(.8); } }

/* ---------- Snow ---------- */
.xm-snow { position: fixed; inset: 0; width: 100%; height: 100%; z-index: 33; pointer-events: none; }

/* ---------- Landscape + bokeh in the home hero ---------- */
body.christmas .hero { position: relative; }
body.christmas .hero > .container { position: relative; z-index: 2; }
.xm-scene {
    position: absolute; left: 0; right: 0; bottom: -1px; height: clamp(210px, 31vw, 400px); z-index: 0; pointer-events: none;
    -webkit-mask-image: linear-gradient(to top, #000 62%, transparent); mask-image: linear-gradient(to top, #000 62%, transparent);
}
.xm-scene svg { display: block; width: 100%; height: 100%; }
.xm-fog { animation: xm-fog 46s ease-in-out infinite alternate; }
.xm-fog-2 { animation-duration: 63s; animation-direction: alternate-reverse; }
@keyframes xm-fog { from { transform: translateX(-120px); } to { transform: translateX(120px); } }
.xm-cabin { animation: xm-cabin 6s ease-in-out infinite; }
@keyframes xm-cabin { 0%, 100% { opacity: 1; } 47% { opacity: .9; } 50% { opacity: .55; } 53% { opacity: .95; } }
.xm-glint { animation: xm-glint 4s ease-in-out infinite; opacity: 0; }
@keyframes xm-glint { 0%, 100% { opacity: 0; } 50% { opacity: .95; } }

.xm-bokeh { position: absolute; inset: 0; z-index: 1; pointer-events: none; overflow: hidden; }
.xm-bokeh span {
    position: absolute; border-radius: 50%;
    width: var(--s, 90px); height: var(--s, 90px);
    background: radial-gradient(circle, rgba(var(--c, 246,214,140), .16) 0 52%, rgba(var(--c, 246,214,140), .30) 62%, rgba(var(--c, 246,214,140), .08) 68%, transparent 71%);
    mix-blend-mode: screen;
    animation: xm-bokeh var(--t, 18s) ease-in-out infinite alternate;
    animation-delay: var(--d, 0s);
}
.xm-bokeh span:nth-child(1) { --s: 120px; top: 6%;  left: 4%;  --t: 21s; }
.xm-bokeh span:nth-child(2) { --s: 64px;  top: 18%; left: 22%; --t: 17s; --d: -6s; --c: 255,196,120; }
.xm-bokeh span:nth-child(3) { --s: 150px; top: -6%; left: 38%; --t: 26s; --d: -3s; }
.xm-bokeh span:nth-child(4) { --s: 52px;  top: 12%; left: 56%; --t: 15s; --d: -9s; --c: 230,90,110; }
.xm-bokeh span:nth-child(5) { --s: 96px;  top: 2%;  left: 70%; --t: 23s; --d: -12s; }
.xm-bokeh span:nth-child(6) { --s: 70px;  top: 26%; left: 86%; --t: 19s; --d: -4s; --c: 120,210,170; }
.xm-bokeh span:nth-child(7) { --s: 44px;  top: 34%; left: 12%; --t: 14s; --d: -8s; --c: 255,196,120; }
.xm-bokeh span:nth-child(8) { --s: 130px; top: 30%; left: 94%; --t: 28s; --d: -15s; }
.xm-bokeh span:nth-child(9) { --s: 58px;  top: 40%; left: 48%; --t: 20s; --d: -10s; --c: 230,90,110; }
@keyframes xm-bokeh {
    0%   { transform: translate(0, 0) scale(1); opacity: .55; }
    50%  { opacity: 1; }
    100% { transform: translate(var(--mx, 26px), var(--my, -18px)) scale(1.12); opacity: .6; }
}
.xm-bokeh span:nth-child(even) { --mx: -30px; --my: 14px; }

/* ---------- Fairy lights under the navbar (built by christmas.js) ---------- */
.xm-lights { position: absolute; left: 0; right: 0; top: 100%; height: 26px; pointer-events: none; z-index: 1; }
.xm-lights svg { position: absolute; left: 0; top: 0; width: 100%; height: 26px; overflow: visible; }
.xm-lights path { fill: none; stroke: rgba(226,232,240,.16); stroke-width: 1; }
.xm-led {
    position: absolute; width: 3px; height: 3px; margin: -1.5px 0 0 -1.5px; border-radius: 50%;
    background: #FFF1CF;
    box-shadow: 0 0 4px 1px rgba(255,226,160,.95), 0 0 12px 3px rgba(255,200,110,.45);
    animation: xm-led var(--t, 3s) ease-in-out infinite;
    animation-delay: var(--d, 0s);
}
.xm-led.is-gold { background: #FFD98A; box-shadow: 0 0 4px 1px rgba(255,205,110,.95), 0 0 14px 4px rgba(217,160,60,.5); }
@keyframes xm-led { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: .35; transform: scale(.7); } }

/* ---------- Shooting stars ---------- */
.xm-shoot {
    position: fixed; z-index: 34; pointer-events: none; width: 140px; height: 1.5px; border-radius: 2px;
    background: linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.9));
    filter: drop-shadow(0 0 4px rgba(224,236,255,.9));
    transform-origin: right center;
    animation: xm-shoot 1.2s cubic-bezier(.3,.1,.6,1) forwards;
}
@keyframes xm-shoot {
    0%   { opacity: 0; transform: rotate(var(--a, 20deg)) translateX(0) scaleX(.2); }
    15%  { opacity: 1; }
    100% { opacity: 0; transform: rotate(var(--a, 20deg)) translateX(-320px) scaleX(1); }
}

/* ---------- Product cards: frost sheen + gold hairline on hover ---------- */
body.christmas .product-card { position: relative; }
body.christmas .product-card:hover {
    border-color: rgba(217,180,90,.45);
    box-shadow: 0 0 0 1px rgba(217,180,90,.18), 0 18px 46px rgba(0,0,0,.45), 0 0 40px rgba(200,30,58,.12);
}
body.christmas:not(.xm-off) .product-card::after {
    content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; z-index: 2;
    background: linear-gradient(115deg, transparent 38%, rgba(255,244,218,.10) 47%, rgba(255,255,255,.22) 50%, rgba(255,244,218,.10) 53%, transparent 62%);
    background-size: 260% 100%; background-position: 140% 0;
    opacity: 0;
}
body.christmas:not(.xm-off) .product-card:hover::after { opacity: 1; animation: xm-sheen 1.2s cubic-bezier(.3,.6,.3,1) forwards; }
@keyframes xm-sheen { from { background-position: 140% 0; } to { background-position: -40% 0; } }

/* ---------- Shared type ---------- */
.xm-eyebrow {
    margin: 0 0 10px; font-size: .74rem; font-weight: 700; letter-spacing: .28em; text-transform: uppercase;
    color: var(--xm-gold-hi);
    display: inline-flex; align-items: center; gap: 12px;
}
.xm-eyebrow::before, .xm-eyebrow::after { content: ""; width: 26px; height: 1px; background: linear-gradient(90deg, transparent, var(--xm-gold)); }
.xm-eyebrow::after { transform: scaleX(-1); }

/* ---------- Campaign under the homepage hero ---------- */
.xm-campaign { position: relative; z-index: 2; padding: 34px 0 26px; overflow: hidden; }
.xm-campaign-flake {
    position: absolute; right: -60px; top: 50%; width: 360px; height: 360px; margin-top: -180px;
    color: rgba(246,222,154,.07); pointer-events: none;
    animation: xm-spin 120s linear infinite;
}
@keyframes xm-spin { to { transform: rotate(360deg); } }
.xm-campaign-card {
    position: relative;
    display: grid; grid-template-columns: minmax(0, 1.25fr) auto; align-items: center; gap: 28px 48px;
    padding: 30px 36px; border-radius: 22px;
    border: 1px solid transparent;
    background:
        linear-gradient(135deg, rgba(74,6,20,.78), rgba(10,14,30,.9) 48%, rgba(5,40,30,.78)) padding-box,
        linear-gradient(120deg, rgba(246,222,154,.7), rgba(246,222,154,.08) 30%, rgba(246,222,154,.08) 70%, rgba(246,222,154,.55)) border-box;
    box-shadow: 0 30px 80px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.06);
    -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
}
.xm-campaign-title {
    margin: 0 0 8px; font-family: var(--font-display); font-size: clamp(1.6rem, 2.6vw, 2.3rem); letter-spacing: -.02em;
    background: linear-gradient(100deg, #FFFFFF, var(--xm-champagne) 40%, var(--xm-gold-hi));
    -webkit-background-clip: text; background-clip: text; color: transparent;
}
.xm-campaign-text { margin: 0; max-width: 560px; font-size: .97rem; }
.xm-campaign-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 18px; }
.xm-coupon {
    display: inline-flex; align-items: center; gap: 10px; padding: 9px 14px; border-radius: 999px;
    border: 1px dashed rgba(246,222,154,.6); background: rgba(246,222,154,.07); color: var(--xm-champagne); font-weight: 600; font-size: .88rem;
    transition: background .2s;
}
.xm-coupon code { letter-spacing: .12em; color: #fff; }
.xm-coupon:hover { background: rgba(246,222,154,.15); }
.xm-hunt-hint {
    display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px 7px 10px; border-radius: 999px;
    font-size: .84rem; color: var(--xm-champagne);
    background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08);
}
.xm-hunt-hint svg { width: 14px; height: 19px; flex: none; }

.xm-countdown { text-align: center; }
.xm-countdown-label { display: block; margin-bottom: 12px; font-size: .72rem; font-weight: 700; letter-spacing: .24em; text-transform: uppercase; color: var(--muted, #94a3b8); }
.xm-countdown-row { display: flex; align-items: flex-start; gap: 12px; }
.xm-countdown-row > i { width: 1px; height: 46px; background: linear-gradient(transparent, rgba(246,222,154,.4), transparent); }
.xm-cd { display: flex; flex-direction: column; align-items: center; min-width: 64px; }
.xm-cd b {
    font-family: var(--font-display); font-size: clamp(2rem, 3.2vw, 2.8rem); font-weight: 700; line-height: 1;
    font-variant-numeric: tabular-nums; letter-spacing: -.02em;
    background: linear-gradient(180deg, #FFFFFF 10%, var(--xm-gold-hi) 60%, var(--xm-gold));
    -webkit-background-clip: text; background-clip: text; color: transparent;
}
.xm-cd small { margin-top: 8px; font-size: .66rem; letter-spacing: .2em; text-transform: uppercase; color: var(--muted, #94a3b8); }

/* ---------- Bauble hunt ---------- */
.xm-hunt-host { position: relative; }
.xm-hunt {
    position: absolute; z-index: 6; width: 26px; height: 35px; padding: 0; border: 0; background: none;
    transform-origin: 50% 0;
    filter: drop-shadow(0 6px 10px rgba(0,0,0,.45)) drop-shadow(0 0 10px rgba(246,222,154,.25));
    animation: xm-sway 4.2s ease-in-out infinite;
    transition: filter .3s;
}
.xm-hunt svg { display: block; width: 100%; height: 100%; }
.xm-hunt:hover, .xm-hunt:focus-visible { filter: drop-shadow(0 6px 10px rgba(0,0,0,.45)) drop-shadow(0 0 16px rgba(246,222,154,.7)); }
.xm-hunt:focus-visible { outline: 1px solid var(--xm-gold); outline-offset: 4px; border-radius: 4px; }
.xm-hunt.is-caught { animation: xm-caught .5s cubic-bezier(.5,0,.7,.4) forwards; pointer-events: none; }
@keyframes xm-sway { 0%, 100% { transform: rotate(-7deg); } 50% { transform: rotate(7deg); } }
@keyframes xm-caught { 30% { transform: scale(1.25); opacity: 1; } 100% { transform: scale(.2); opacity: 0; } }
.xm-hunt:not(.is-placed) { visibility: hidden; }
.xm-hunt-s1 { left: 5%; top: 36px; }
.xm-hunt-s2 { right: 7%; top: 36px; }
.xm-hunt-s3 { left: 6%; top: 36px; }
.xm-hunt-s4 { right: -40px; top: -8px; }
.xm-hunt-s5 { right: 5%; top: 36px; }
.xm-hunt-s1::before, .xm-hunt-s2::before, .xm-hunt-s3::before, .xm-hunt-s5::before {
    content: ""; position: absolute; left: 50%; bottom: 100%; width: 1px; height: 36px;
    background: linear-gradient(transparent, rgba(217,180,90,.6));
}
.xm-glitter {
    position: fixed; z-index: 1100; pointer-events: none; width: var(--z, 4px); height: var(--z, 4px); border-radius: 50%;
    background: var(--c, #F6DE9A); box-shadow: 0 0 6px var(--c, #F6DE9A);
    animation: xm-glitter 1.2s cubic-bezier(.15,.6,.35,1) forwards;
}
@keyframes xm-glitter {
    from { transform: translate(-50%, -50%) scale(1); opacity: 1; }
    to   { transform: translate(calc(-50% + var(--dx)), calc(-50% + var(--dy))) scale(.2); opacity: 0; }
}
.xm-hunt-status {
    position: fixed; left: 70px; bottom: 20px; z-index: 84;
    display: flex; align-items: center; gap: 8px; padding: 7px 14px 7px 10px; border-radius: 999px;
    background: rgba(8,12,26,.9); border: 1px solid rgba(217,180,90,.35); color: var(--xm-champagne); font-size: .84rem;
    box-shadow: 0 10px 30px rgba(0,0,0,.4);
    -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
}
.xm-hunt-status[hidden] { display: none; }
.xm-hunt-status svg { width: 14px; height: 19px; }
.xm-hunt-status b { font-variant-numeric: tabular-nums; color: #fff; }
.xm-hunt-status span { color: var(--muted, #94a3b8); margin-left: -6px; }
.xm-hunt-status.is-bump { animation: xm-bump .5s ease-out; }
@keyframes xm-bump { 40% { transform: scale(1.12); } }

.xm-modal { position: fixed; inset: 0; z-index: 1200; display: grid; place-items: center; padding: 16px; background: rgba(3,5,12,.78); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.xm-modal[hidden] { display: none; }
.xm-modal-card {
    position: relative; width: min(460px, 100%); padding: 0 30px 28px; border-radius: 24px; text-align: center; overflow: hidden;
    border: 1px solid transparent;
    background:
        radial-gradient(120% 70% at 50% 0%, rgba(200,30,58,.24), transparent 60%) padding-box,
        linear-gradient(170deg, #121830, #080B17) padding-box,
        linear-gradient(140deg, rgba(246,222,154,.7), rgba(246,222,154,.06) 40%, rgba(246,222,154,.06) 60%, rgba(246,222,154,.5)) border-box;
    box-shadow: 0 40px 100px rgba(0,0,0,.6);
    animation: xm-modal-in .6s cubic-bezier(.2,.9,.3,1);
}
.xm-modal-card h2 { margin: 0 0 10px; font-family: var(--font-display); }
.xm-modal-card .offer-code { margin: 18px 0; }
.xm-modal-garland { position: relative; display: flex; justify-content: center; gap: 18px; height: 96px; margin: 0 -30px 18px; padding-top: 0; }
.xm-modal-garland::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(217,180,90,.7), transparent); }
.xm-modal-garland svg { width: 30px; height: 40px; transform-origin: 50% 0; animation: xm-sway 3.8s ease-in-out infinite; }
.xm-modal-garland svg:nth-child(1) { margin-top: 22px; animation-delay: -.6s; }
.xm-modal-garland svg:nth-child(2) { margin-top: 42px; animation-delay: -1.8s; }
.xm-modal-garland svg:nth-child(3) { margin-top: 12px; width: 38px; height: 51px; animation-delay: -1.1s; }
.xm-modal-garland svg:nth-child(4) { margin-top: 38px; animation-delay: -2.4s; }
.xm-modal-garland svg:nth-child(5) { margin-top: 18px; animation-delay: -.2s; }
.xm-modal-x { position: absolute; top: 12px; right: 14px; z-index: 1; border: 0; background: none; color: var(--muted, #94a3b8); font-size: 1rem; }
@keyframes xm-modal-in { from { transform: translateY(16px) scale(.96); opacity: 0; } to { transform: none; opacity: 1; } }

.xm-toast {
    position: fixed; left: 50%; bottom: 30px; z-index: 1150; transform: translateX(-50%);
    display: flex; align-items: center; gap: 10px;
    padding: 11px 18px 11px 14px; border-radius: 999px; font-weight: 600; font-size: .9rem; color: var(--xm-champagne);
    background: rgba(8,12,26,.94); border: 1px solid rgba(217,180,90,.4); box-shadow: 0 16px 40px rgba(0,0,0,.5);
    animation: xm-toast-in .45s cubic-bezier(.2,.9,.3,1);
    transition: opacity .5s, transform .5s;
}
.xm-toast svg { width: 14px; height: 19px; }
.xm-toast.is-out { opacity: 0; transform: translate(-50%, 10px); }
@keyframes xm-toast-in { from { opacity: 0; transform: translate(-50%, 14px); } to { opacity: 1; transform: translate(-50%, 0); } }

/* ---------- On/off button ---------- */
.xm-toggle {
    position: fixed; left: 16px; bottom: 16px; z-index: 84;
    width: 44px; height: 44px; border-radius: 50%; padding: 0;
    display: grid; place-items: center; color: var(--xm-champagne);
    border: 1px solid rgba(217,180,90,.4);
    background: rgba(8,12,26,.9);
    box-shadow: 0 10px 28px rgba(0,0,0,.45);
    -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
    transition: transform .6s cubic-bezier(.2,.9,.3,1), opacity .2s, border-color .2s;
}
.xm-toggle svg { width: 22px; height: 22px; }
.xm-toggle:hover { transform: rotate(60deg); border-color: rgba(246,222,154,.8); }
.xm-toggle:focus-visible { outline: 2px solid var(--xm-gold); outline-offset: 3px; }
body.xm-off .xm-toggle { opacity: .5; color: var(--muted, #94a3b8); border-color: rgba(255,255,255,.12); }

body.xm-off :is(.xm-aurora, .xm-snow, .xm-scene, .xm-bokeh, .xm-lights, .xm-shoot) { display: none; }

@media (max-width: 860px) {
    .xm-aurora span { filter: blur(36px); }
    .xm-bokeh span:nth-child(n+6) { display: none; }
    .xm-campaign { padding: 24px 0 18px; }
    .xm-campaign-card { grid-template-columns: 1fr; padding: 24px 20px; text-align: center; }
    .xm-campaign-text { margin-inline: auto; }
    .xm-campaign-actions { justify-content: center; }
    .xm-countdown-row { justify-content: center; gap: 8px; }
    .xm-cd { min-width: 52px; }
    .xm-campaign-flake { width: 240px; height: 240px; margin-top: -120px; right: -80px; }
    .xm-hunt-status { left: 56px; bottom: 12px; }
    .xm-hunt-s4 { right: 0; top: -40px; }
    .xm-toggle { width: 38px; height: 38px; left: 10px; bottom: 10px; }
    .xm-toggle svg { width: 19px; height: 19px; }
}

@media (prefers-reduced-motion: reduce) {
    .xm-aurora span, .xm-fog, .xm-cabin, .xm-glint, .xm-bokeh span, .xm-led, .xm-campaign-flake, .xm-hunt, .xm-modal-garland svg, body.christmas .marquee-bar::after { animation: none; }
    .xm-snow, .xm-shoot { display: none; }
    .xm-glint { opacity: .6; }
    .xm-toggle:hover { transform: none; }
}

@media print {
    .xm-aurora, .xm-snow, .xm-scene, .xm-bokeh, .xm-lights, .xm-shoot, .xm-hunt, .xm-hunt-status, .xm-modal, .xm-toggle { display: none; }
}
