:root{
  --night:#070b18; --night-2:#0b1124;
  --gold:#e0c48c; --gold-2:#ffeec9; --gold-3:#a9884b; --gold-deep:#6d5525;
  --ice:#a9c4f5;
  --t1:#f5f2e8; --t2:#a7b0cb; --t3:#8b93ad;
  --line:rgba(224,196,140,.28); --line-2:rgba(224,196,140,.13);
  --disp:"Cinzel",Georgia,serif;
  --body:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --fs-micro:.72rem; --fs-label:.82rem; --fs-body:1rem;
  --tr-wide:.24em; --tr-mid:.12em; --tr-tight:.04em;
  --maxw:1080px; --gutter:40px;
}
*{box-sizing:border-box;margin:0;padding:0;min-width:0}
html{background:var(--night)}
body{
  background:radial-gradient(48% 32% at 50% 0%, rgba(224,196,140,.13), transparent 64%), var(--night);
  color:var(--t1);font-family:var(--body);font-size:16px;line-height:1.62;min-height:100vh;
  overflow-x:hidden;-webkit-font-smoothing:antialiased;
}
body::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.5;
  background:repeating-linear-gradient(0deg, rgba(255,255,255,.014) 0 1px, transparent 1px 3px)}
img{display:block;max-width:100%;height:auto}
button{font-family:inherit;color:inherit;cursor:pointer;border:0;background:none}
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter);position:relative;z-index:2}

 
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:26px}
.brandline{display:flex;align-items:center;gap:8px;font-family:var(--disp);font-weight:700;letter-spacing:var(--tr-mid);text-transform:uppercase;
  font-size:var(--fs-label);color:var(--t2)}
.brand-icon{width:20px;height:20px;flex:0 0 20px;object-fit:contain;transform:translateY(-1px)}
.fanpill{font-family:var(--disp);font-weight:700;font-size:var(--fs-micro);letter-spacing:var(--tr-mid);
  text-transform:uppercase;color:var(--gold);border:1px solid var(--line);border-radius:2px;
  padding:5px 12px;white-space:nowrap}
 
.rule{height:1px;margin-top:20px;background:linear-gradient(90deg,transparent,var(--line) 12%,var(--line) 88%,transparent)}

 



.hero{text-align:center;padding-top:clamp(14px,2vw,26px);padding-bottom:clamp(26px,3.6vw,50px)}
.evt{display:inline-flex;align-items:center;gap:10px;font-family:var(--disp);font-weight:700;
  letter-spacing:.18em;text-transform:uppercase;font-size:var(--fs-micro);color:var(--gold);
  border:0;border-radius:0;padding:7px 0;background:none}
.evt::before,.evt::after{content:"";width:clamp(24px,5vw,48px);height:1px;
  background:linear-gradient(90deg,transparent,var(--gold-3))}
.evt::after{transform:scaleX(-1)}
.evt .dot{width:5px;height:5px;flex:0 0 5px;background:var(--gold-2);transform:rotate(45deg);
  box-shadow:0 0 0 1px rgba(224,196,140,.22)}
.title{font-family:var(--disp);font-weight:900;text-transform:uppercase;
  font-size:clamp(1.95rem,4.6vw,3.5rem);line-height:1.02;letter-spacing:var(--tr-tight);
  margin-top:.5em;text-wrap:balance;max-width:24ch;margin-inline:auto}


.title .free{display:inline-block;margin-top:.34em;font-size:clamp(1.6rem,3.4vw,2.6rem);
  line-height:.9;letter-spacing:.02em;color:#241a08;background:var(--gold);
  padding:.12em .3em .16em;border-radius:2px;box-shadow:6px 7px 0 0 #2a3a6b}
.kick{color:var(--t2);font-size:var(--fs-body);line-height:1.66;max-width:60ch;margin:.95em auto 0}
.kick b{color:var(--t1);font-weight:600}

.stage{position:relative;margin:clamp(10px,1.6vw,22px) auto 0;width:min(560px,100%);
  height:clamp(330px,40vw,440px)}
 
.rays{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);z-index:1;
  width:min(470px,92%);aspect-ratio:1;pointer-events:none;
  background:repeating-conic-gradient(from 3deg,rgba(255,238,205,.5) 0 .5deg,transparent .5deg 6deg);
  mask-image:radial-gradient(circle,transparent 0 31%,rgba(0,0,0,.95) 39%,transparent 52%);
  -webkit-mask-image:radial-gradient(circle,transparent 0 31%,rgba(0,0,0,.95) 39%,transparent 52%);
  animation:turn 150s linear infinite}
@keyframes turn{to{transform:translate(-50%,-50%) rotate(360deg)}}
.bloom{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);z-index:1;
  width:min(400px,80%);aspect-ratio:1;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(255,238,205,.36) 8%,rgba(169,196,245,.13) 48%,transparent 74%);
  filter:blur(6px)}
 
.pool{position:absolute;left:50%;bottom:8%;transform:translateX(-50%);z-index:1;width:54%;height:38px;
  pointer-events:none;
  background:radial-gradient(ellipse 50% 50% at 50% 50%,rgba(255,238,205,.36),transparent 76%);filter:blur(5px)}
.contact{position:absolute;left:50%;bottom:11%;transform:translateX(-50%);z-index:2;width:27%;height:20px;
  border-radius:50%;pointer-events:none;
  background:radial-gradient(ellipse,rgba(0,0,0,.66),transparent 74%);filter:blur(5px)}
.memobj{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);z-index:3;
  height:clamp(250px,31vw,368px);width:auto;
  filter:drop-shadow(-6px -8px 10px rgba(255,240,205,.2))
         drop-shadow(0 26px 30px rgba(3,6,18,.9))}

.claim{margin-top:clamp(24px,3.2vw,38px);display:flex;flex-direction:column;align-items:center;gap:.85em}
.cta{font-family:var(--disp);font-weight:700;letter-spacing:var(--tr-mid);text-transform:uppercase;
  font-size:var(--fs-label);color:#241a08;background:#c9a86a;border:1px solid #8f7233;
  border-radius:999px;padding:1em 2.4em;transition:background .16s ease,transform .16s ease}
.cta:hover{background:var(--gold);transform:translateY(-1px)}
.cta:active{transform:translateY(0)}
.cta:focus-visible{outline:3px solid var(--ice);outline-offset:4px}

 
.gifts{padding-block:clamp(34px,4.6vw,66px);border-top:1px solid var(--line-2)}
.gh{text-align:center}
.gh .lab{font-family:var(--disp);font-weight:700;letter-spacing:var(--tr-wide);text-transform:uppercase;
  font-size:var(--fs-micro);color:var(--gold)}
.gh h2{font-family:var(--disp);font-weight:700;text-transform:uppercase;letter-spacing:var(--tr-tight);
  font-size:clamp(1.4rem,2.8vw,2.1rem);margin-top:.4em}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.8vw,20px);
  margin-top:clamp(22px,3vw,34px)}
.card{text-align:center;border:1px solid var(--line-2);border-radius:2px;
  padding:clamp(20px,2.6vw,30px) 18px;background:linear-gradient(180deg,rgba(224,196,140,.07),rgba(7,11,24,.6))}
.card.big{border-color:var(--line);background:linear-gradient(180deg,rgba(224,196,140,.15),rgba(7,11,24,.6))}
.card .ico{width:66px;height:66px;margin:0 auto;display:grid;place-items:center;
  background:rgba(255,255,255,.04);border:1px solid var(--line-2)}
.card .ico img{width:42px;height:42px;object-fit:contain}
 
.card .amt{display:block;font-family:var(--body);font-weight:700;
  font-variant-numeric:tabular-nums lining-nums;letter-spacing:-.02em;
  font-size:clamp(1.9rem,3.8vw,2.7rem);line-height:1.05;margin-top:.5em}
.card.big .amt{color:var(--gold-2)}
.card .nm{display:block;font-family:var(--disp);font-weight:700;letter-spacing:var(--tr-mid);
  text-transform:uppercase;font-size:var(--fs-label);margin-top:.5em;color:var(--gold-3)}
.card .when{display:block;color:var(--t3);font-size:var(--fs-micro);margin-top:.45em;line-height:1.5}
.total-line{text-align:center;color:var(--t2);font-size:var(--fs-label);
  margin-top:clamp(18px,2.4vw,28px);max-width:62ch;margin-inline:auto;line-height:1.6}
.total-line b{color:var(--gold-2);font-weight:600}

 
.how{padding-block:clamp(30px,4.2vw,58px);border-top:1px solid var(--line-2)}
.how h3{text-align:center;font-family:var(--disp);font-weight:700;text-transform:uppercase;
  letter-spacing:var(--tr-tight);font-size:clamp(1.2rem,2.4vw,1.7rem)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.6vw,32px);
  margin-top:clamp(20px,2.8vw,32px)}
.step{text-align:center}
.step .n{width:34px;height:34px;margin:0 auto;display:grid;place-items:center;
  background:var(--gold);color:#241a08;font-family:var(--body);font-weight:700;font-size:.86rem;
  transform:rotate(45deg)}
.step .n span{transform:rotate(-45deg)}
.step .st{display:block;font-family:var(--disp);font-weight:700;letter-spacing:var(--tr-mid);
  text-transform:uppercase;font-size:var(--fs-label);margin-top:1em}
.step .sd{display:block;color:var(--t3);font-size:var(--fs-micro);margin-top:.45em;line-height:1.6;
  max-width:30ch;margin-inline:auto}

 
footer{border-top:1px solid var(--line-2)}
footer .wrap{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;
  padding-block:clamp(24px,3vw,36px) clamp(32px,4vw,46px)}
.f-mark{font-family:var(--disp);font-weight:700;letter-spacing:var(--tr-mid);text-transform:uppercase;
  font-size:var(--fs-micro);color:var(--t2)}
.f-mark b{color:var(--gold);font-weight:700}
.f-disc{font-size:var(--fs-micro);color:var(--t3);max-width:60ch;line-height:1.6}

html.cap .rays,html.cap .memobj{animation:none!important}
@media (prefers-reduced-motion:reduce){.rays,.memobj{animation:none!important}}

@media (max-width:860px){
  .cards{grid-template-columns:1fr;max-width:400px;margin-inline:auto}
  .steps{grid-template-columns:1fr;gap:26px}
}
@media (max-width:560px){
  :root{--gutter:18px}
  .stage{height:clamp(290px,72vw,370px)}
  .memobj{height:clamp(215px,54vw,275px)}
  .cta{width:100%;max-width:340px;text-align:center;padding-inline:1.2em}
  


  .brandline{font-size:var(--fs-micro);letter-spacing:.08em}
}
 
@media (max-width:430px){
  header .wrap{flex-wrap:wrap;row-gap:8px}
  .brandline,.f-mark{font-size:var(--fs-micro);letter-spacing:.08em}
  .fanpill{font-size:.58rem;letter-spacing:.08em;padding:5px 10px}
}

@keyframes my-widget-opening-spin{to{transform:rotate(360deg)}}
