/* Christmas office party landing — isolated from evergreen and gameplay styles. */
.xo-page{--xo-gold:#f9c85f;--xo-white:#fff9f1;--xo-muted:#e3cdd2;position:relative;overflow:hidden;background:#0b0d15;color:var(--xo-white);font-family:inherit}
.xo-page *{box-sizing:border-box}.xo-page a{text-decoration:none}.xo-page .xo-wrap{width:min(1160px,calc(100% - 48px));margin:auto;position:relative;z-index:2}
.xo-page .xo-kicker{display:inline-block;color:var(--xo-gold);font-size:12px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.xo-page .xo-hero{position:relative;padding:72px 0 78px;background:radial-gradient(ellipse at 82% 48%,rgba(147,27,50,.31),transparent 55%),linear-gradient(125deg,#1c0d1b,#100e18 74%);border-bottom:1px solid #b476554d}
.xo-page .xo-hero::after{content:"";position:absolute;inset:0;opacity:.14;pointer-events:none;background-image:radial-gradient(#f6c769 1px,transparent 1.7px);background-size:27px 27px;mask-image:linear-gradient(90deg,#000,transparent 80%)}
.xo-page .xo-hero-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:44px;align-items:center}
.xo-page h1,.xo-page h2,.xo-page h3{color:var(--xo-white);letter-spacing:-.028em}
.xo-page h1{font-size:clamp(37px,4vw,58px);line-height:1.09;font-weight:850;margin:17px 0 23px;color:var(--xo-gold)}
.xo-page .xo-lead{font-size:17px;line-height:1.7;color:var(--xo-muted);max-width:610px}
.xo-page .xo-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px;align-items:center}
.xo-page .xo-btn{display:inline-flex;gap:9px;align-items:center;justify-content:center;border-radius:10px;padding:13px 20px;font-weight:800;font-size:14px;line-height:1.2;transition:transform .15s ease,background .15s ease;min-height:44px}
.xo-page .xo-btn:hover{transform:translateY(-2px)}.xo-page .xo-primary{background:linear-gradient(110deg,#ffdf8e,#efb94d);color:#411724!important;box-shadow:0 8px 25px #0004}.xo-page .xo-outline{border:1px solid #dcb45b;background:#201723;color:#fff9f1!important}
.xo-page .xo-chips{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:23px;font-size:12px;font-weight:650;color:#f2d6dc}
.xo-page .xo-hero-visual{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:center}.xo-page figure{margin:0}.xo-page .xo-photo,.xo-page .xo-board{background:linear-gradient(135deg,#400e23,#1c1021);border:1px solid #af824e;border-radius:15px;padding:9px;box-shadow:0 16px 35px #0006}.xo-page .xo-photo img,.xo-page .xo-board img{width:100%;display:block;border-radius:8px;object-fit:cover;aspect-ratio:4/3}.xo-page .xo-board img{object-fit:contain;background:#5b0920}.xo-page figcaption{color:#f2d6d8;font-size:11px;padding:10px 3px 3px;line-height:1.5}
.xo-page .xo-corner{position:absolute;z-index:1;top:0;width:175px;pointer-events:none}.xo-page .xo-corner-left{left:0}.xo-page .xo-corner-right{right:0;transform:scaleX(-1)}.xo-page .xo-ornament{position:absolute;pointer-events:none;width:130px;z-index:1}.xo-page .xo-ornament-gifts{right:2%;bottom:0}
.xo-page .xo-trust{border-bottom:1px solid #a7785c3d;background:#141019}.xo-page .xo-trust-grid{display:grid;grid-template-columns:repeat(3,1fr);padding-block:20px}.xo-page .xo-trust-grid>div{text-align:center;border-right:1px solid #e5bd7240}.xo-page .xo-trust-grid>div:last-child{border:0}.xo-page .xo-trust strong{display:block;color:var(--xo-gold);font-size:23px;font-weight:850}.xo-page .xo-trust span{display:block;color:#ddc5ca;font-size:12px;margin-top:3px}
.xo-page .xo-section{position:relative;padding:72px 0 78px;border-bottom:1px solid #8d667135}.xo-page .xo-section-shade{background:linear-gradient(120deg,#19101c,#240e1e 55%,#15101c)}
.xo-page .xo-intro{max-width:790px;margin:0 auto 33px;text-align:center}.xo-page .xo-intro h2{font-size:clamp(27px,3vw,37px);line-height:1.17;margin:10px 0 14px}.xo-page .xo-intro p{color:var(--xo-muted);line-height:1.65;font-size:15px;margin:0}
.xo-page .xo-card-grid{display:grid;gap:18px}.xo-page .xo-three{grid-template-columns:repeat(3,minmax(0,1fr))}.xo-page .xo-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.xo-page .xo-card,.xo-page .xo-question{padding:25px;border:1px solid #ad704c99;border-radius:16px;background:linear-gradient(150deg,#54162a,#2b1421);position:relative;z-index:2}.xo-page .xo-card h3,.xo-page .xo-question h3{font-size:20px;margin:9px 0 11px}.xo-page .xo-card p,.xo-page .xo-question p{color:#f0d8dc;line-height:1.65;font-size:14px;margin:0}.xo-page .xo-card-icon{font-size:25px}.xo-page .xo-card ul{margin:17px 0 0;padding-left:19px;color:#f2d7d9}.xo-page .xo-card li{margin:0 0 10px;line-height:1.55;font-size:14px}
.xo-page .xo-timeline{max-width:820px;margin:auto;display:grid;gap:12px}.xo-page .xo-timeline article{display:grid;grid-template-columns:110px 1fr;gap:20px;border:1px solid #ad744e70;border-radius:13px;padding:18px 23px;background:#281521}.xo-page .xo-time{color:var(--xo-gold);font-weight:850;font-size:17px}.xo-page .xo-timeline h3{font-size:17px;margin:0 0 7px}.xo-page .xo-timeline p{color:var(--xo-muted);margin:0;line-height:1.6;font-size:14px}
.xo-page .xo-small{font-size:12px;color:#d8c0c5;line-height:1.6;max-width:850px;margin:18px auto 0;text-align:center}.xo-page .xo-question-index{color:var(--xo-gold);font-size:12px;font-weight:850}.xo-page .xo-question h3{font-size:17px}.xo-page .xo-question p{font-size:13px}.xo-page .xo-centered{justify-content:center}
.xo-page .xo-step-number{color:var(--xo-gold);font-size:13px;font-weight:900}.xo-page .xo-faq{max-width:850px;margin:auto;display:grid;gap:11px}.xo-page .xo-faq details{background:#391723;border:1px solid #ae7952;border-radius:12px;padding:0 21px}.xo-page .xo-faq summary{cursor:pointer;font-weight:750;padding:20px 0;color:#fff9f1;line-height:1.4}.xo-page .xo-faq p{color:#ecd4d8;font-size:14px;line-height:1.75;padding:0 0 20px;margin:0}
.xo-page .xo-final{padding-top:74px;padding-bottom:70px}.xo-page .xo-final-card{position:relative;background:linear-gradient(120deg,#54142a,#2a1222);border:1px solid #c09151;border-radius:19px;padding:36px 38px;display:grid;grid-template-columns:160px 1fr;align-items:center;gap:26px}.xo-page .xo-final-card img{width:160px;max-width:100%;height:auto}.xo-page .xo-final h2{font-size:clamp(26px,2.5vw,34px);margin:11px 0}.xo-page .xo-final p{color:var(--xo-muted);margin:0;line-height:1.65}.xo-page .xo-related{display:flex;justify-content:center;flex-wrap:wrap;gap:24px;margin-top:26px}.xo-page .xo-related a{color:#ffda90;text-decoration:underline;text-underline-offset:4px;font-size:13px}
.xo-page .xo-decor{position:absolute;z-index:1;width:145px;max-width:12vw;pointer-events:none;top:33%;opacity:.95}.xo-page .xo-decor-right{right:0}.xo-page .xo-decor-left{left:0}
@media(max-width:900px){.xo-page .xo-hero-grid{grid-template-columns:1fr;gap:26px}.xo-page .xo-hero-visual{max-width:700px}.xo-page .xo-three{grid-template-columns:1fr 1fr}.xo-page .xo-decor{opacity:.25}}
@media(max-width:650px){.xo-page .xo-wrap{width:min(100% - 30px,1160px)}.xo-page .xo-hero{padding:65px 0 50px}.xo-page .xo-section{padding:48px 0 52px}.xo-page .xo-three,.xo-page .xo-two{grid-template-columns:1fr}.xo-page .xo-card,.xo-page .xo-question{padding:22px}.xo-page .xo-intro{margin-bottom:25px}.xo-page .xo-hero-visual{gap:8px}.xo-page .xo-corner{width:100px}.xo-page .xo-ornament-gifts{display:none}.xo-page .xo-timeline article{grid-template-columns:1fr;gap:5px;padding:16px}.xo-page .xo-final-card{grid-template-columns:1fr;padding:26px}.xo-page .xo-final-card img{width:120px}.xo-page .xo-trust strong{font-size:17px}.xo-page .xo-trust span{font-size:10px}.xo-page .xo-decor{display:none}}
@media(prefers-reduced-motion:reduce){.xo-page .xo-btn{transition:none}.xo-page .xo-btn:hover{transform:none}}

/* Christmas Office Party — horizontal hero images */

.xo-page .xo-hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 460px);
    gap: 36px;
    align-items: center;
}

.xo-page .xo-hero-visual {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
    max-width: 460px;
    justify-self: end;
    align-items: stretch;
}

.xo-page .xo-hero-visual .xo-photo,
.xo-page .xo-hero-visual .xo-board {
    width: 100%;
    margin: 0;
    padding: 8px;
}

.xo-page .xo-hero-visual .xo-photo img,
.xo-page .xo-hero-visual .xo-board img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    border-radius: 8px;
}

/* Office photo fills its horizontal frame */
.xo-page .xo-hero-visual .xo-photo img {
    object-fit: cover;
    object-position: center;
}

/* Christmas display stays fully visible */
.xo-page .xo-hero-visual .xo-board img {
    object-fit: contain;
    background: #5b0920;
}

@media (max-width: 900px) {
    .xo-page .xo-hero-grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .xo-page .xo-hero-visual {
        justify-self: center;
        max-width: 500px;
    }
}

/* Prelaunch: prevent long headline, buttons and hero cards from overflowing mobile viewport. */
@media (max-width: 900px) {
  .xo-page .xo-hero-grid, .xo-page.xc-page .xo-hero-grid, .xo-page.xf-page .xo-hero-grid, .xo-page.xp-page .xo-hero-grid {
    display:grid; grid-template-columns:minmax(0,1fr); gap:24px; width:100%;
  }
  .xo-page .xo-hero-grid > *, .xo-page .xo-hero-visual, .xo-page .xo-hero-visual figure {min-width:0;max-width:100%;}
  .xo-page .xo-hero-visual, .xo-page.xc-page .xo-hero-visual, .xo-page.xf-page .xo-hero-visual, .xo-page.xp-page .xo-hero-visual {
    display:flex; flex-direction:column; width:100%;max-width:520px;justify-self:center;gap:14px;
  }
  .xo-page .xo-actions {max-width:100%;}
  .xo-page .xo-btn {max-width:100%;white-space:normal;text-align:center;overflow-wrap:anywhere;}
  .xo-page h1 {font-size:clamp(32px,8.3vw,49px);overflow-wrap:break-word;hyphens:auto;}
  .xo-page .xo-photo img, .xo-page .xo-board img {max-width:100%;height:auto;}
}
@media (max-width: 420px) {
  .xo-page .xo-wrap {width:calc(100% - 28px);}
  .xo-page .xo-hero {padding-top:46px;padding-bottom:42px;}
  .xo-page .xo-actions {flex-direction:column;align-items:stretch;}
  .xo-page .xo-actions .xo-btn {width:100%;}
  .xo-page .xo-hero-visual figure {padding:6px;}
  .xo-page .xo-hero-visual figcaption {font-size:11px;}
}
