:root {
  color-scheme: dark;
  --bg: #130b16;
  --surface: #1b0f20;
  --surface-2: #24122d;
  --surface-3: #321541;
  --violet: #8a38b9;
  --violet-light: #b950e7;
  --green: #78ff58;
  --green-soft: #a7ff83;
  --pink: #ef75f5;
  --text: #fffaff;
  --muted: #cabbd0;
  --subtle: #9986a1;
  --line: #502961;
  font-family: Inter, "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--bg); }
body { margin: 0; background: var(--bg); color: var(--text); min-width: 320px; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; }
a:focus-visible, summary:focus-visible { outline: 3px solid var(--green); outline-offset: 4px; border-radius: 5px; }
p { color: var(--muted); line-height: 1.68; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { color: var(--text); letter-spacing: -.035em; }
code { color: #d9a2fb; font-family: ui-monospace, Consolas, monospace; font-size: .92em; overflow-wrap: anywhere; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 30;
  min-height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 9px clamp(16px, 3vw, 42px);
  background: rgba(61, 23, 86, .97);
  border-bottom: 1px solid rgba(204, 116, 255, .2);
  box-shadow: 0 8px 24px rgba(10, 4, 14, .22);
  backdrop-filter: blur(14px);
}
.brand { display: inline-flex; align-items: center; gap: 12px; color: #fff; text-decoration: none; font-size: 25px; font-weight: 850; letter-spacing: -.045em; }
.brand::before { content: "4"; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: linear-gradient(145deg, #a248dc, #632589); border: 1px solid #c56af3; color: var(--green); font-size: 25px; line-height: 1; box-shadow: 0 0 24px rgba(169, 58, 222, .3); }
.header-cta, .hero-cta, .secondary-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 52px;
  padding: 13px 23px;
  border: 0;
  border-radius: 999px;
  background: var(--green);
  color: #0e1710;
  font-size: 15px;
  font-weight: 850;
  line-height: 1.15;
  text-align: center;
  text-decoration: none;
  box-shadow: 0 7px 22px rgba(106, 255, 82, .18);
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.header-cta { min-width: 178px; }
.header-cta-disabled, .header-cta-disabled:hover { cursor: not-allowed; color: #ecdfef; background: #684477; box-shadow: none; transform: none; }
.header-cta:hover, .hero-cta:hover, .secondary-cta:hover { transform: translateY(-2px); background: #95ff75; box-shadow: 0 10px 26px rgba(106, 255, 82, .26); }
.hero-cta { width: fit-content; min-width: 186px; font-size: 16px; }
.secondary-cta { min-width: 160px; background: #a94cdb; color: white; box-shadow: 0 7px 22px rgba(169, 76, 219, .2); }
.secondary-cta:hover { background: #bd64ee; box-shadow: 0 10px 26px rgba(169, 76, 219, .28); }

main { width: 100%; }
.app-shell { display: grid; grid-template-columns: 248px minmax(0, 1fr); align-items: start; min-height: calc(100vh - 72px); }
.sidebar {
  position: sticky;
  top: 72px;
  align-self: start;
  height: calc(100vh - 72px);
  min-height: 450px;
  padding: 28px 13px 22px;
  background: #190d1d;
  border-right: 1px solid #592369;
}
.sidebar-label { margin: 0 12px 15px; color: #9e81aa; font-size: 10px; font-weight: 850; letter-spacing: .15em; }
.side-links { display: grid; gap: 6px; }
.side-link { display: flex; align-items: center; gap: 13px; min-height: 48px; padding: 0 13px; border: 1px solid transparent; border-radius: 12px; color: #f3eaf7; font-size: 14px; font-weight: 750; text-decoration: none; transition: background .16s ease, border-color .16s ease, color .16s ease; }
.side-link:hover { background: #2b1335; border-color: #572367; }
.side-link.is-active { color: var(--green); background: linear-gradient(100deg, rgba(92, 34, 125, .76), rgba(34, 60, 34, .55)); border-color: #67ec51; }
.side-link-muted { margin-top: 4px; color: #c1afc9; }
.nav-glyph { width: 22px; color: var(--green); font-size: 20px; line-height: 1; text-align: center; }
.side-divider { position: relative; height: 1px; margin: 18px 8px 14px; background: linear-gradient(90deg, #542269, #a445cc, #542269); }
.side-divider span { position: absolute; left: 50%; top: 50%; width: 9px; height: 9px; background: #9d3cc5; transform: translate(-50%, -50%) rotate(45deg); }
.side-note { position: absolute; left: 18px; right: 18px; bottom: 24px; display: flex; align-items: flex-start; gap: 10px; padding: 14px 12px; border: 1px solid #482252; border-radius: 13px; background: linear-gradient(140deg, rgba(111, 42, 149, .28), rgba(28, 12, 34, .8)); }
.side-note-icon { display: grid; flex: 0 0 22px; width: 22px; height: 22px; place-items: center; border-radius: 50%; background: var(--green); color: #102012; font-size: 12px; font-weight: 900; }
.side-note p { margin: 0; color: #e3d5e9; font-size: 12px; line-height: 1.4; }
.page-column { min-width: 0; width: 100%; max-width: 1660px; margin: 0 auto; padding: 28px clamp(18px, 2.6vw, 42px) 44px; }
.eyebrow { margin: 0 0 11px; color: var(--green); font-size: 11px; font-weight: 850; letter-spacing: .13em; line-height: 1.35; }
.live-dot { display: inline-block; width: 8px; height: 8px; margin-right: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 12px rgba(120, 255, 88, .8); vertical-align: 1px; }

.hero { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(310px, .86fr); align-items: stretch; min-height: 400px; overflow: hidden; border: 1px solid #542266; border-radius: 24px; background: radial-gradient(ellipse at 75% 20%, rgba(128, 45, 169, .34), transparent 46%), linear-gradient(118deg, #291135, #1a0d20 64%, #291137); box-shadow: 0 18px 38px rgba(7, 4, 10, .24); }
.hero-home { min-height: 433px; }
.hero-copy { position: relative; z-index: 2; align-self: center; max-width: 680px; padding: clamp(28px, 4vw, 58px); }
.hero-phrase { margin: 0 0 8px; color: var(--green); font-size: clamp(17px, 1.7vw, 22px); font-weight: 900; letter-spacing: -.025em; }
.hero h1 { max-width: 660px; margin: 0 0 15px; font-size: clamp(36px, 4.2vw, 58px); font-weight: 900; line-height: 1.04; }
.hero-intro { max-width: 580px; margin: 0 0 23px; color: #e0d2e7; font-size: 16px; line-height: 1.58; }
.hero-caption { max-width: 520px; margin: 12px 0 0; color: #ad99b7; font-size: 12px; line-height: 1.45; }
.hero-visual { position: relative; min-width: 0; min-height: 100%; overflow: hidden; background: #291338; }
.hero-visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #24102e 0%, rgba(36, 16, 46, .38) 18%, transparent 53%), linear-gradient(0deg, rgba(20, 9, 25, .18), transparent 40%); pointer-events: none; }
.hero-visual img { width: 100%; height: 100%; min-height: 400px; object-fit: cover; object-position: center; }
.visual-chip { position: absolute; z-index: 2; right: 20px; bottom: 20px; display: flex; align-items: center; gap: 8px; padding: 10px 13px; border: 1px solid rgba(188, 98, 225, .72); border-radius: 999px; background: rgba(27, 12, 34, .88); color: white; font-size: 10px; font-weight: 850; letter-spacing: .12em; box-shadow: 0 9px 24px rgba(0, 0, 0, .26); }
.chip-star { color: var(--green); font-size: 15px; }
.hero-page { min-height: 365px; grid-template-columns: minmax(0, 1.05fr) minmax(285px, .8fr); }
.hero-page .hero-copy { padding: 38px clamp(27px, 3.4vw, 49px); }
.hero-page .hero h1 { font-size: clamp(34px, 3.7vw, 51px); }
.hero-page .hero-visual img { min-height: 365px; }
.hero-bonus { background: radial-gradient(ellipse at 78% 18%, rgba(167, 58, 202, .33), transparent 48%), linear-gradient(125deg, #30113d, #180b1e); }
.hero-faq { background: radial-gradient(ellipse at 80% 20%, rgba(96, 44, 142, .4), transparent 50%), linear-gradient(125deg, #241034, #160b1b); }
.hero-facts { background: radial-gradient(ellipse at 80% 20%, rgba(67, 147, 55, .19), transparent 50%), linear-gradient(125deg, #271033, #150b1b); }
.hero-notes { background: radial-gradient(ellipse at 80% 20%, rgba(176, 57, 208, .28), transparent 50%), linear-gradient(125deg, #30123f, #160a1a); }
.hero-404 { background: radial-gradient(ellipse at 80% 20%, rgba(146, 51, 192, .29), transparent 50%), linear-gradient(125deg, #2e123b, #160b1d); }

.section-block { margin-top: 46px; }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 22px; margin: 0 0 20px; }
.section-heading h2 { margin: 0; font-size: clamp(25px, 2.7vw, 36px); line-height: 1.12; }
.section-aside { max-width: 290px; margin: 0 0 3px; color: var(--subtle); font-size: 13px; line-height: 1.5; text-align: right; }
.topic-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.topic-card { position: relative; isolation: isolate; display: flex; min-height: 225px; flex-direction: column; justify-content: flex-end; overflow: hidden; padding: 20px; border: 1px solid #5b2b6b; border-radius: 18px; background: #281335; text-decoration: none; transition: transform .18s ease, border-color .18s ease; }
.topic-card:hover { transform: translateY(-4px); border-color: var(--green); }
.topic-card::before { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(0deg, rgba(18, 8, 22, .96) 0%, rgba(18, 8, 22, .77) 42%, rgba(18, 8, 22, .1) 100%); }
.topic-card > img { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; opacity: .75; }
.topic-card-violet { box-shadow: inset 0 0 50px rgba(167, 54, 212, .17); }
.topic-card-green { box-shadow: inset 0 0 50px rgba(89, 229, 74, .12); }
.topic-card-magenta { box-shadow: inset 0 0 50px rgba(230, 72, 225, .12); }
.topic-index { position: absolute; top: 16px; left: 17px; color: #e5d5ec; font-size: 10px; font-weight: 850; letter-spacing: .12em; text-shadow: 0 2px 10px #130919; }
.topic-arrow { position: absolute; top: 13px; right: 15px; display: grid; width: 31px; height: 31px; place-items: center; border: 1px solid rgba(193, 112, 227, .72); border-radius: 50%; background: rgba(25, 10, 31, .55); color: var(--green); font-size: 17px; }
.topic-card h3, .topic-card h2 { margin: 0 0 6px; font-size: 22px; line-height: 1.12; }
.topic-card p { max-width: 330px; margin: 0; color: #decfe5; font-size: 13px; line-height: 1.45; }
.topic-grid-small { gap: 13px; margin-top: 16px; }
.topic-grid-small .topic-card { min-height: 200px; }

.feature-band { position: relative; display: grid; grid-template-columns: 220px minmax(0, 1fr) 88px; align-items: center; gap: 23px; margin-top: 44px; padding: 23px 29px; overflow: hidden; border: 1px solid #57306a; border-radius: 21px; background: linear-gradient(105deg, #31133e, #21102a 62%, #2c1338); }
.feature-art { align-self: stretch; overflow: hidden; border-radius: 16px; background: #2b123a; }
.feature-art img { width: 100%; height: 100%; min-height: 160px; object-fit: cover; }
.feature-copy h2 { max-width: 620px; margin: 0 0 10px; font-size: clamp(25px, 2.65vw, 35px); line-height: 1.1; }
.feature-copy p:not(.eyebrow) { max-width: 740px; margin: 0 0 12px; font-size: 14px; }
.text-link { display: inline-flex; align-items: center; gap: 9px; color: var(--green); font-size: 14px; font-weight: 800; text-decoration: none; }
.text-link:hover { color: #b2ff96; text-decoration: underline; text-underline-offset: 4px; }
.feature-mark { color: rgba(212, 116, 247, .32); font-size: 46px; font-weight: 950; letter-spacing: -.1em; text-align: right; }
.feature-mark span { color: var(--green); }

.content-split { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); align-items: start; gap: clamp(28px, 5vw, 72px); margin-top: 48px; }
.content-split-tight { margin-top: 20px; }
.inline-source { color: var(--green-soft); text-decoration-thickness: 1px; text-underline-offset: 3px; }
.article-copy { max-width: 770px; }
.article-copy h2 { margin: 0 0 16px; font-size: clamp(29px, 3.1vw, 41px); line-height: 1.08; }
.article-copy p { margin-bottom: 15px; font-size: 15px; }
.fact-card { position: relative; overflow: hidden; padding: 23px 23px 19px; border: 1px solid #633378; border-radius: 20px; background: linear-gradient(145deg, #321441, #1e1026 74%); box-shadow: 0 14px 32px rgba(7, 4, 10, .24); }
.fact-card::after { content: ""; position: absolute; top: -50px; right: -55px; width: 160px; height: 160px; border-radius: 50%; background: rgba(173, 59, 220, .13); filter: blur(4px); }
.fact-card-pink { background: linear-gradient(145deg, #35133f, #1d0e25 76%); border-color: #78367b; }
.fact-card-top { position: relative; z-index: 1; display: flex; align-items: center; gap: 9px; margin-bottom: 15px; color: #d5c2de; font-size: 10px; font-weight: 850; letter-spacing: .13em; }
.fact-orb { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 50%; background: var(--green); color: #1a1520; font-size: 16px; font-weight: 900; }
.fact-card h3 { position: relative; z-index: 1; margin: 0 0 15px; font-size: 22px; }
.fact-list { position: relative; z-index: 1; display: grid; gap: 2px; margin: 0 0 17px; padding: 0; list-style: none; }
.fact-list li { display: flex; align-items: center; gap: 11px; padding: 10px 0; border-bottom: 1px solid rgba(185, 131, 202, .16); }
.fact-check, .fact-unknown { display: grid; flex: 0 0 25px; width: 25px; height: 25px; place-items: center; border-radius: 50%; font-size: 13px; font-weight: 900; }
.fact-check { background: rgba(114, 255, 84, .17); color: var(--green); border: 1px solid rgba(120, 255, 88, .55); }
.fact-unknown { background: rgba(219, 145, 243, .13); color: #e7b4f8; border: 1px solid rgba(220, 140, 248, .45); }
.fact-list strong { display: block; color: #fff; font-size: 13px; }
.fact-list small { display: block; margin-top: 3px; color: #bcaac6; font-size: 11px; line-height: 1.35; }
.fact-card-link { position: relative; z-index: 1; display: flex; justify-content: space-between; gap: 8px; color: var(--green); font-size: 13px; font-weight: 800; text-decoration: none; }

.faq-preview { margin-top: 49px; }
.faq-preview .section-heading { margin-bottom: 15px; }
.faq-row { position: relative; display: grid; grid-template-columns: 45px minmax(0, 1fr) 35px; align-items: center; gap: 10px; min-height: 64px; padding: 10px 15px; border-top: 1px solid #46234f; background: linear-gradient(90deg, rgba(117, 42, 144, .13), rgba(32, 15, 38, .22)); }
.faq-row::after { content: ""; position: absolute; z-index: 0; top: 8px; right: 45px; width: 52px; height: 46px; background: url("/assets/images/faq-orbit.svg") center/contain no-repeat; opacity: .15; pointer-events: none; }
.faq-num { color: #b463d6; font-size: 11px; font-weight: 850; letter-spacing: .08em; }
.faq-row p { position: relative; z-index: 1; margin: 0; color: #f0e8f4; font-size: 15px; font-weight: 700; }
.faq-row > a { position: relative; z-index: 1; display: grid; width: 32px; height: 32px; place-items: center; border: 1px solid #694078; border-radius: 50%; color: var(--green); text-decoration: none; }

.closing-cta { position: relative; display: grid; grid-template-columns: 150px minmax(0, 1fr) auto; align-items: center; gap: 22px; margin-top: 48px; padding: 17px 21px; overflow: hidden; border: 1px solid #67357c; border-radius: 20px; background: linear-gradient(102deg, #351343, #24102d 60%, #33133e); }
.closing-cta > img { width: 150px; height: 100px; object-fit: cover; border-radius: 13px; }
.closing-cta h2 { margin: 0 0 6px; font-size: clamp(21px, 2.2vw, 29px); line-height: 1.13; }
.closing-cta p:not(.eyebrow) { margin: 0; font-size: 13px; }
.closing-cta .eyebrow { margin-bottom: 6px; }
.closing-cta .hero-cta, .closing-cta .secondary-cta { white-space: nowrap; }
.link-after-cta { margin-top: 16px; }

.status-panel { display: grid; grid-template-columns: 45px minmax(0, 1fr) auto; align-items: center; gap: 16px; margin-top: 24px; padding: 18px 20px; border: 1px solid #633378; border-radius: 17px; background: linear-gradient(110deg, rgba(105, 42, 132, .24), rgba(30, 14, 37, .92)); }
.status-panel-alert { border-color: #9f55b7; background: linear-gradient(110deg, rgba(132, 48, 140, .25), rgba(30, 14, 37, .92)); }
.status-icon { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; background: var(--pink); color: #211027; font-size: 22px; font-weight: 950; box-shadow: 0 0 24px rgba(239, 117, 245, .2); }
.status-panel h2 { margin: 0 0 5px; font-size: 20px; line-height: 1.15; }
.status-panel p:not(.eyebrow) { margin: 0; font-size: 13px; }
.status-panel .eyebrow { margin-bottom: 6px; }
.status-panel .text-link { white-space: nowrap; }

.check-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; }
.check-card { position: relative; min-width: 0; overflow: hidden; padding: 0 15px 17px; border: 1px solid #502660; border-radius: 17px; background: #21102a; }
.check-card img { width: calc(100% + 30px); max-width: none; height: 132px; margin: 0 -15px 14px; object-fit: cover; }
.check-card > span { position: absolute; top: 13px; left: 13px; display: grid; width: 29px; height: 29px; place-items: center; border: 1px solid rgba(199, 115, 232, .8); border-radius: 50%; background: rgba(24, 10, 30, .82); color: var(--green); font-size: 11px; font-weight: 850; }
.check-card h3 { margin: 0 0 7px; font-size: 18px; }
.check-card p { margin: 0; font-size: 12px; line-height: 1.5; }
.bonus-explainer { margin-top: 47px; }

.faq-layout { display: grid; grid-template-columns: minmax(220px, .65fr) minmax(0, 1.35fr); align-items: start; gap: 22px; }
.faq-sidebar-card { position: sticky; top: 96px; overflow: hidden; padding: 0 20px 20px; border: 1px solid #603175; border-radius: 18px; background: linear-gradient(150deg, #31123e, #1b0d21); }
.faq-sidebar-card > img { width: calc(100% + 40px); max-width: none; height: 155px; margin: 0 -20px 18px; object-fit: cover; }
.faq-sidebar-card h2 { margin: 0 0 8px; font-size: 24px; line-height: 1.12; }
.faq-sidebar-card p:not(.eyebrow) { margin-bottom: 13px; font-size: 13px; }
.faq-sidebar-card .text-link { display: flex; justify-content: space-between; padding: 10px 0; border-top: 1px solid #542664; font-size: 13px; }
.faq-list { display: grid; gap: 10px; }
.faq-item { position: relative; overflow: hidden; padding: 0 19px; border: 1px solid #4e285e; border-radius: 15px; background: linear-gradient(110deg, rgba(82, 33, 103, .53), rgba(28, 13, 34, .92)); }
.faq-item::after { content: ""; position: absolute; top: 5px; right: 9px; width: 71px; height: 64px; background: url("/assets/images/faq-orbit.svg") center/contain no-repeat; opacity: .13; pointer-events: none; }
.faq-item[open] { border-color: #8850a0; background: linear-gradient(110deg, rgba(103, 43, 131, .52), rgba(28, 13, 34, .96)); }
.faq-item summary { position: relative; z-index: 1; display: block; padding: 18px 55px 18px 0; color: #fff; font-size: 15px; font-weight: 800; line-height: 1.35; cursor: pointer; list-style: none; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::after { content: "+"; position: absolute; top: 50%; right: 0; display: grid; width: 30px; height: 30px; place-items: center; border: 1px solid #a94dc9; border-radius: 50%; color: var(--green); font-size: 20px; font-weight: 500; transform: translateY(-50%); }
.faq-item[open] summary::after { content: "−"; }
.faq-item p { position: relative; z-index: 1; max-width: 690px; margin: -1px 0 18px; padding-right: 22px; color: #d5c6de; font-size: 14px; line-height: 1.6; }
.note-band { display: grid; grid-template-columns: 110px minmax(0, 1fr) auto; align-items: center; gap: 19px; margin-top: 40px; padding: 17px; border: 1px solid #592d6c; border-radius: 18px; background: linear-gradient(105deg, #32123f, #201027); }
.note-band > img { width: 110px; height: 88px; object-fit: cover; border-radius: 12px; }
.note-band h2 { margin: 0 0 5px; font-size: 21px; line-height: 1.15; }
.note-band p:not(.eyebrow) { margin: 0; font-size: 13px; }
.note-band .eyebrow { margin-bottom: 5px; }

.register-layout { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; }
.register-card { overflow: hidden; border: 1px solid #5a2b70; border-radius: 20px; background: #21102a; box-shadow: 0 12px 25px rgba(6, 3, 8, .22); }
.register-card-main { border-color: #6c4380; }
.register-card-ggl { border-color: #4f7046; }
.register-card-visual { position: relative; height: 170px; overflow: hidden; background: #291138; }
.register-card-visual img { width: 100%; height: 100%; object-fit: cover; }
.register-card-content { padding: 20px; }
.status-pill { display: inline-flex; align-items: center; gap: 7px; margin-bottom: 12px; padding: 6px 9px; border: 1px solid #6d5080; border-radius: 999px; color: #f3e7f8; font-size: 9px; font-weight: 900; letter-spacing: .1em; }
.status-pill i { display: block; width: 7px; height: 7px; border-radius: 50%; background: var(--green); }
.status-pill-note i { background: #e7a2f1; }
.register-card h3 { margin: 0 0 9px; font-size: 21px; }
.register-card p { margin: 0 0 13px; font-size: 13px; line-height: 1.6; }
.source-link { display: inline-flex; gap: 8px; align-items: center; color: var(--green); font-size: 13px; font-weight: 800; text-decoration: none; }
.source-link:hover { color: #bdff9e; text-decoration: underline; text-underline-offset: 4px; }
.source-note { margin: 13px 1px 0; color: #a794b2; font-size: 12px; line-height: 1.5; }
.payment-section { margin-top: 47px; }
.payment-art-card { position: relative; min-height: 350px; overflow: hidden; border: 1px solid #5d3271; border-radius: 20px; background: #25102f; }
.payment-art-card > img { width: 100%; height: 100%; min-height: 350px; object-fit: cover; opacity: .84; }
.payment-art-card > div { position: absolute; inset: auto 0 0; padding: 23px; background: linear-gradient(0deg, rgba(17, 8, 21, .98), rgba(17, 8, 21, .06)); }
.payment-art-card strong { display: block; max-width: 300px; margin-bottom: 6px; color: white; font-size: 21px; line-height: 1.2; }
.payment-art-card p { max-width: 420px; margin: 0; font-size: 13px; }
.source-strip { display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; align-items: center; gap: 16px; margin-top: 40px; padding: 20px; border: 1px solid #5a326b; border-radius: 18px; background: linear-gradient(115deg, #2e133b, #1e1026); }
.source-strip-icon { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 50%; background: var(--green); color: #172015; font-size: 21px; font-weight: 900; }
.source-strip h2 { margin: 0 0 5px; font-size: 22px; }
.source-strip p:not(.eyebrow) { max-width: 750px; margin: 0; font-size: 13px; }
.source-strip .eyebrow { margin-bottom: 5px; }

.legal-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; margin-top: 40px; }
.legal-card { overflow: hidden; border: 1px solid #592d70; border-radius: 19px; background: linear-gradient(145deg, #30133e, #1c0e23); }
.legal-card-green { border-color: #4a7247; background: linear-gradient(145deg, #20361f, #191021); }
.legal-card-pink { border-color: #793874; background: linear-gradient(145deg, #3b153c, #1a0e22); }
.legal-card > img { width: 100%; height: 150px; object-fit: cover; }
.legal-card > p, .legal-card > h2 { margin-right: 17px; margin-left: 17px; }
.legal-card > .eyebrow { margin-top: 17px; margin-bottom: 8px; }
.legal-card h2 { margin-top: 0; margin-bottom: 8px; font-size: 21px; }
.legal-card p:not(.eyebrow) { margin-bottom: 18px; font-size: 13px; line-height: 1.56; }
.responsible-panel { display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 16px; margin-top: 28px; padding: 20px; border: 1px solid #5b4260; border-radius: 17px; background: linear-gradient(105deg, #271a2b, #1a1020); }
.responsible-icon { display: grid; width: 52px; height: 52px; place-items: center; border: 1px solid #b376c5; border-radius: 50%; color: var(--green); font-size: 25px; font-weight: 700; }
.responsible-panel h2 { margin: 0 0 7px; font-size: 22px; }
.responsible-panel p:not(.eyebrow) { margin: 0; font-size: 13px; }
.responsible-panel a { color: var(--green); font-weight: 750; text-underline-offset: 3px; }

.footer { padding: 24px clamp(18px, 3vw, 40px); border-top: 1px solid #32183c; background: #170c1c; }
footer { padding: 25px clamp(18px, 3vw, 40px); border-top: 1px solid #32183c; background: #170c1c; }
footer a { color: #dccae4; font-size: 13px; font-weight: 800; text-decoration: none; }

@media (max-width: 1120px) {
  .app-shell { grid-template-columns: 210px minmax(0, 1fr); }
  .sidebar { padding-right: 10px; padding-left: 10px; }
  .side-link { gap: 9px; padding-right: 9px; padding-left: 9px; font-size: 12px; }
  .page-column { padding-right: 22px; padding-left: 22px; }
  .hero { grid-template-columns: minmax(0, 1fr) minmax(250px, .75fr); }
  .check-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .feature-band { grid-template-columns: 160px minmax(0, 1fr); }
  .feature-mark { display: none; }
}

@media (max-width: 900px) {
  .site-header { min-height: 64px; padding: 7px 13px; gap: 8px; }
  .brand { gap: 8px; font-size: 21px; }
  .brand::before { width: 33px; height: 33px; font-size: 22px; }
  .header-cta { min-width: 0; min-height: 43px; padding: 10px 15px; font-size: 12px; }
  .app-shell { display: block; min-height: calc(100vh - 64px); }
  .sidebar { position: sticky; top: 64px; z-index: 20; width: 100%; height: auto; min-height: 0; padding: 7px 8px; border-right: 0; border-bottom: 1px solid #5b286d; background: rgba(25, 13, 29, .97); }
  .sidebar-label, .side-divider, .side-note { display: none; }
  .side-links { display: flex; gap: 5px; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; }
  .side-links::-webkit-scrollbar { display: none; }
  .side-link { flex: 0 0 auto; min-height: 40px; gap: 7px; padding: 0 10px; border-radius: 10px; font-size: 11px; }
  .side-link-muted { margin: 0; }
  .nav-glyph { width: 17px; font-size: 16px; }
  .page-column { padding: 16px 14px 28px; }
  .hero, .hero-page { grid-template-columns: minmax(0, 1fr); min-height: 0; border-radius: 19px; }
  .hero-copy, .hero-page .hero-copy { padding: 24px 20px 19px; }
  .hero h1, .hero-page .hero h1 { max-width: 580px; margin-bottom: 11px; font-size: clamp(32px, 8.4vw, 43px); line-height: 1.02; }
  .hero-phrase { margin-bottom: 7px; font-size: 18px; }
  .hero-intro { margin-bottom: 17px; font-size: 14px; line-height: 1.53; }
  .hero-cta { min-height: 49px; min-width: 174px; font-size: 14px; }
  .hero-caption { margin-top: 8px; font-size: 11px; }
  .hero-visual, .hero-page .hero-visual { min-height: 180px; max-height: 220px; }
  .hero-visual img, .hero-page .hero-visual img { width: 100%; min-height: 180px; max-height: 220px; object-fit: cover; object-position: center 45%; }
  .hero-visual::after { background: linear-gradient(0deg, rgba(20, 9, 25, .5), transparent 60%); }
  .visual-chip { right: 12px; bottom: 12px; padding: 8px 10px; font-size: 9px; }
  .section-block, .faq-preview { margin-top: 34px; }
  .section-heading { align-items: flex-start; flex-direction: column; gap: 8px; margin-bottom: 15px; }
  .section-heading h2 { font-size: 27px; }
  .section-aside { max-width: none; margin: 0; font-size: 12px; text-align: left; }
  .topic-grid { grid-template-columns: 1fr; gap: 10px; }
  .topic-card { min-height: 175px; padding: 17px; }
  .topic-grid-small { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .topic-grid-small .topic-card { min-height: 175px; }
  .topic-card h3, .topic-card h2 { font-size: 19px; }
  .topic-card p { max-width: 270px; font-size: 12px; }
  .topic-index { top: 13px; left: 14px; font-size: 9px; }
  .feature-band { grid-template-columns: minmax(0, 1fr); gap: 15px; margin-top: 31px; padding: 15px; }
  .feature-art { max-height: 180px; }
  .feature-art img { height: 180px; min-height: 0; object-fit: cover; }
  .feature-copy h2 { font-size: 27px; }
  .feature-copy p:not(.eyebrow) { font-size: 13px; }
  .content-split { grid-template-columns: minmax(0, 1fr); gap: 19px; margin-top: 35px; }
  .article-copy h2 { font-size: 30px; }
  .article-copy p { font-size: 14px; }
  .fact-card { padding: 19px; }
  .closing-cta { grid-template-columns: 75px minmax(0, 1fr); gap: 12px; margin-top: 32px; padding: 13px; }
  .closing-cta > img { width: 75px; height: 78px; object-fit: cover; }
  .closing-cta h2 { font-size: 19px; }
  .closing-cta p:not(.eyebrow) { font-size: 11px; line-height: 1.4; }
  .closing-cta .eyebrow { font-size: 9px; }
  .closing-cta .hero-cta, .closing-cta .secondary-cta { grid-column: 1 / -1; width: 100%; min-height: 46px; }
  .faq-row { grid-template-columns: 30px minmax(0, 1fr) 31px; gap: 7px; min-height: 61px; padding: 9px 7px; }
  .faq-row p { font-size: 13px; }
  .faq-row::after { right: 37px; }
  .status-panel { grid-template-columns: 39px minmax(0, 1fr); gap: 11px; padding: 15px; }
  .status-icon { width: 36px; height: 36px; font-size: 19px; }
  .status-panel h2 { font-size: 18px; }
  .status-panel p:not(.eyebrow) { font-size: 12px; }
  .status-panel .text-link { grid-column: 2; justify-self: start; }
  .check-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .check-card { padding: 0 11px 13px; border-radius: 14px; }
  .check-card img { width: calc(100% + 22px); height: 112px; margin: 0 -11px 12px; }
  .check-card h3 { font-size: 16px; }
  .check-card p { font-size: 11px; }
  .faq-layout { grid-template-columns: minmax(0, 1fr); gap: 15px; }
  .faq-sidebar-card { position: static; padding: 0 16px 15px; }
  .faq-sidebar-card > img { width: calc(100% + 32px); height: 140px; margin: 0 -16px 15px; }
  .faq-sidebar-card h2 { font-size: 22px; }
  .faq-item { padding: 0 14px; }
  .faq-item summary { padding-top: 16px; padding-bottom: 16px; font-size: 13px; }
  .faq-item p { font-size: 12px; }
  .note-band { grid-template-columns: 64px minmax(0, 1fr); gap: 11px; padding: 12px; }
  .note-band > img { width: 64px; height: 70px; }
  .note-band h2 { font-size: 17px; }
  .note-band p:not(.eyebrow) { font-size: 11px; }
  .note-band .secondary-cta { grid-column: 1 / -1; width: 100%; min-height: 44px; }
  .register-layout { grid-template-columns: 1fr; gap: 12px; }
  .register-card-visual { height: 145px; }
  .register-card-content { padding: 16px; }
  .register-card p { font-size: 12px; }
  .payment-art-card, .payment-art-card > img { min-height: 260px; }
  .source-strip { grid-template-columns: 38px minmax(0, 1fr); gap: 11px; padding: 15px; }
  .source-strip-icon { width: 36px; height: 36px; }
  .source-strip h2 { font-size: 19px; }
  .source-strip p:not(.eyebrow) { font-size: 12px; }
  .source-strip .secondary-cta { grid-column: 1 / -1; width: 100%; }
  .legal-grid { grid-template-columns: 1fr; gap: 12px; margin-top: 30px; }
  .legal-card { display: grid; grid-template-columns: 92px minmax(0, 1fr); column-gap: 12px; padding: 12px; }
  .legal-card > img { grid-row: 1 / span 3; width: 92px; height: 100%; min-height: 132px; object-fit: cover; border-radius: 11px; }
  .legal-card > p, .legal-card > h2 { margin-right: 0; margin-left: 0; }
  .legal-card > .eyebrow { margin-top: 1px; margin-bottom: 4px; font-size: 9px; }
  .legal-card h2 { margin-bottom: 5px; font-size: 18px; }
  .legal-card p:not(.eyebrow) { margin-bottom: 0; font-size: 11px; }
  .responsible-panel { grid-template-columns: 41px minmax(0, 1fr); gap: 11px; padding: 15px; }
  .responsible-icon { width: 40px; height: 40px; font-size: 21px; }
  .responsible-panel h2 { font-size: 19px; }
  .responsible-panel p:not(.eyebrow) { font-size: 12px; }
  footer { padding: 19px 15px; }
}

@media (max-width: 410px) {
  .site-header { padding-right: 10px; padding-left: 10px; }
  .brand { font-size: 19px; }
  .brand::before { width: 30px; height: 30px; font-size: 20px; }
  .header-cta { padding: 9px 12px; font-size: 11px; }
  .page-column { padding-right: 11px; padding-left: 11px; }
  .topic-grid-small { grid-template-columns: 1fr; }
  .topic-grid-small .topic-card { min-height: 164px; }
  .check-grid { grid-template-columns: 1fr; }
  .check-card { display: grid; grid-template-columns: 78px minmax(0, 1fr); align-items: center; column-gap: 12px; padding: 10px; }
  .check-card img { grid-row: 1 / span 2; width: 78px; height: 86px; margin: 0; border-radius: 10px; }
  .check-card > span { top: 15px; left: 15px; width: 25px; height: 25px; }
  .check-card h3 { align-self: end; margin: 0 0 4px; }
  .check-card p { align-self: start; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
