:root{
  --bg:#F6F7FB; --ink:#0B1020; --muted:#5D6675; --line:#E1E5EE;
  --card:#FFFFFF; --accent:#7C5CFF; --accent-ink:#fff; --accent-2:#00C2A8;
  --radius:18px; --gap:20px; --max:1100px
}
*{box-sizing:border-box}
html,body,div,span,h1,h2,h3,h4,h5,h6,p,a,ul,li,header,nav,main,footer,section,article,figure,figcaption{margin:0;padding:0}
html:focus-within{scroll-behavior:smooth}
body{min-height:100dvh;background:var(--bg);color:var(--ink);font:400 16px/1.65 "IBM Plex Sans",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{display:block;max-width:100%}
ul{list-style:none}
a{text-decoration:none;color:inherit}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}
.material-symbols-rounded{font-family:"Material Symbols Rounded";font-weight:normal;font-style:normal;font-size:20px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;font-feature-settings:"liga";-webkit-font-smoothing:antialiased}
.container{max-width:var(--max);margin-inline:auto;padding-inline:20px}

/* pledge */
.pledgeband{background:#0C1530;color:#E9EFFE}
.pledgeband__inner{max-width:var(--max);margin:0 auto;padding:8px 20px;text-align:center}
.pledgeband__text{font:600 13px/1.4 Manrope,system-ui}
.pledgeband__tel{color:#9CE3D9;text-decoration:underline}

/* header nav centered */
.halo-nav{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.75);backdrop-filter:saturate(140%) blur(8px);border-bottom:1px solid var(--line)}
.halo-nav__belt{max-width:var(--max);margin:0 auto;padding:14px 20px}
.halo-nav__rail{display:grid;place-items:center}
.halo-nav__toggle{display:none;padding:8px 10px;border-radius:12px;border:1px solid var(--line);background:var(--card)}
.halo-nav__menu{display:flex;gap:16px;align-items:center;justify-content:center}
.halo-nav__link{padding:10px 14px;border-radius:12px;font:700 14px/1 Manrope,system-ui;color:#0B1020}
.halo-nav__link--focus{background:var(--ink);color:#fff}
.halo-nav__link--home{border:1px dashed var(--line)}
@media (max-width:860px){
  .halo-nav__toggle{display:inline-flex;justify-self:end}
  .halo-nav__menu{position:absolute;left:50%;transform:translateX(-50%);top:64px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:10px;flex-direction:column;gap:8px;display:none;min-width:240px;box-shadow:0 20px 40px rgba(16,24,40,.12)}
  .halo-nav__menu.is-open{display:flex}
}

/* hero */
.intro-stage{position:relative;display:grid;place-items:center;min-height:min(86vh,820px);text-align:center;background-image:url("../pix-stack/intro-bg.webp");background-size:cover;background-position:center}
.intro-stage__veil{position:absolute;inset:0;background:linear-gradient(180deg,#0b1120a6,#0b112020)}
.intro-stage__wrap{position:relative;z-index:2;max-width:880px;padding:40px 20px}
.intro-stage__title{font:800 clamp(28px,4.8vw,54px)/1.1 Manrope,system-ui}
.intro-stage__text{margin-top:10px;color:#2E3751}
.intro-stage__scroll{position:absolute;left:50%;bottom:24px;transform:translateX(-50%);width:46px;height:46px;border-radius:999px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;box-shadow:0 10px 30px rgba(124,92,255,.35)}
.intro-stage__scroll:active{transform:translateX(-50%) translateY(1px)}
@media (max-width:400px) {.intro-stage__title {font: 800 clamp(24px,4.8vw,54px)/1.1 Manrope,system-ui;}}

/* perks */
.perk-tiles{padding:40px 20px}
.perk-tiles__grid{max-width:var(--max);margin:0 auto;display:grid;gap:14px;grid-template-columns:repeat(3,1fr)}
.perk-tiles__card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px;text-align:center;display:grid;gap:8px;box-shadow:0 8px 30px rgba(16,24,40,.06)}
.perk-tiles__icon{font-size:26px;color:var(--accent)}
.perk-tiles__head{font:800 16px/1.2 Manrope,system-ui}
.perk-tiles__copy{color:var(--muted)}
@media (max-width:920px){.perk-tiles__grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:540px){.perk-tiles__grid{grid-template-columns:1fr}}

/* catalog vertical card */
.stack-cards{padding:40px 20px;background:#F1F3F9;border-top:1px solid var(--line)}
.stack-cards__wrap{max-width:780px;margin:0 auto;display:grid;gap:16px;justify-items:center}
.stack-cards__title{font:800 26px/1.2 Manrope,system-ui;text-align:center}
.stackcard{width:min(720px,86vw);display:grid;gap:14px;justify-items:center;background:linear-gradient(180deg,#fff,#f9f9ff);border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:0 14px 40px rgba(16,24,40,.08)}
.stackcard__brand img{border-radius:14px;border:1px solid var(--line);padding:8px;background:#fff}
.stackcard__name{font:800 18px/1.2 Manrope,system-ui; text-align: center;}
.stackcard__bonus{color:#0E9B86; text-align: center;}
.stackcard__desc{color:#394358;text-align:center;max-width:56ch}
.stackcard__chips{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.stackcard__chip{display:inline-flex;gap:8px;align-items:center;border:1px dashed #D9DFF0;border-radius:999px;padding:6px 12px;color:#2E3751}
.stackcard__cta{display:inline-flex;gap:10px;align-items:center;justify-content:center;min-width:240px;padding:14px 18px;border-radius:14px;background:var(--accent);color:var(--accent-ink);font-weight:800;box-shadow:0 10px 30px rgba(124,92,255,.3)}
.stackcard__cta:active{transform:translateY(1px)}
.stackcard__rate{display:flex;gap:4px;color:#FFB703}

/* contact form on homepage */
.contact-plate{padding:50px 20px}
.contact-plate__wrap{max-width:820px;margin:0 auto;display:grid;gap:12px;justify-items:center;text-align:center}
.contact-plate__title{font:800 26px/1.2 Manrope,system-ui}
.contact-plate__sub{color:#3b455f}
.contact-plate__form{width:min(820px,86vw);background:var(--card);border:1px solid var(--line);border-radius:20px;padding:20px;display:grid;gap:14px;box-shadow:0 14px 40px rgba(16,24,40,.06)}
.contact-plate__row{display:grid;gap:6px;text-align:left}
.contact-plate__label{font-weight:700;font-family:Manrope,system-ui}
.contact-plate__input,.contact-plate__area{width:100%;border-radius:14px;background:#FBFCFF;border:1px solid #DDE3EF;color:#0B1020;padding:14px}
.contact-plate__area{resize:vertical}
.contact-plate__input:focus-visible,.contact-plate__area:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.contact-plate__agree{display:flex;align-items:center;gap:10px}
.contact-plate__check{width:18px;height:18px;border-radius:4px;accent-color:var(--accent)}
.contact-plate__agree-label a{color:#6A5AE0;text-decoration:underline}
.contact-plate__ctrl{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap}
.contact-plate__send{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:230px;padding:14px 22px;border-radius:14px;background:linear-gradient(180deg,var(--accent),#6A5AE0);color:var(--accent-ink);border:1px solid transparent;font:800 14px/1 Manrope;box-shadow:0 10px 28px rgba(106,90,224,.35)}
.contact-plate__send:active{transform:translateY(1px)}
.contact-plate__status{font-size:14px;color:#3b455f}

/* disclaimer / responsible */
.caution-hub{padding:44px 20px;background:#FFFFFF;border-top:1px solid var(--line)}
.caution-hub__wrap{max-width:980px;margin:0 auto;display:grid;gap:16px;justify-items:center;text-align:center}
.caution-hub__title{font:800 24px/1.2 Manrope,system-ui}
.caution-hub__text p{color:#3b455f}
.caution-hub__bullets{display:grid;gap:6px;color:#2E3751;justify-items:center}
.caution-hub__links{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.caution-hub__link{display:inline-flex;align-items:center;justify-content:center;background:#6A5AE0;border:1px solid var(--line);border-radius:12px;padding:6px 10px}

/* footer */
.footnote-pad{border-top:1px solid var(--line);background:#F6F7FB}
.footnote-pad__grid{max-width:var(--max);margin:0 auto;display:grid;gap:22px;grid-template-columns:1.2fr .8fr;padding:24px 20px}
.footnote-pad__head{font:800 16px/1.2 Manrope}
.footnote-pad__copy,.footnote-pad__note{color:#3b455f}
.footnote-pad__links{display:grid;gap:8px;justify-items:end}
.footnote-pad__link{color:#2E3751}
.footnote-pad__age{display:flex;justify-content:center}
.footnote-pad__chip{display:inline-flex;gap:8px;align-items:center;border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;color:#2E3751}
.footnote-pad__tail{display:flex;justify-content:center;padding:10px 20px;border-top:1px dashed var(--line);color:#4a546b}
@media (max-width:860px){.footnote-pad__grid{grid-template-columns:1fr}.footnote-pad__links{justify-items:start}}

/* cookie */
.cookie-pad{position:fixed;left:0;right:0;bottom:0;z-index:50;display:none}
.cookie-pad__box{width:min(780px,94vw);margin:0 auto 16px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;background:#FFFFFF;border:1px solid var(--line);border-radius:16px;padding:14px 16px;box-shadow:0 20px 50px rgba(16,24,40,.12)}
.cookie-pad__icon{font-size:22px;color:#FFB703}
.cookie-pad__title{font:800 16px/1.2 Manrope}
.cookie-pad__text{color:#3b455f}
.cookie-pad__ctrl{display:flex;gap:10px;flex-wrap:wrap}
.cookie-pad__btn{display:inline-flex;gap:10px;align-items:center;justify-content:center;padding:10px 14px;border-radius:12px;border:1px solid var(--line);background:#fff}
.cookie-pad__btn--accept{background:var(--accent);border-color:transparent;color:#fff}
.cookie-pad.show{display:block}

/* age modal */
.age-modal{position:fixed;inset:0;background:#0b1120cc;backdrop-filter:blur(4px);z-index:60;display:grid;place-items:center;padding:20px}
.age-modal__box{width:min(760px,86vw);background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px;display:grid;gap:14px;justify-items:center;text-align:center;box-shadow:0 30px 80px rgba(16,24,40,.2)}
.age-modal__head{display:flex;gap:12px;align-items:center}
.age-modal__glyph{font-size:24px;color:#6A5AE0}
.age-modal__title{font:800 20px/1.2 Manrope}
.age-modal__text{color:#3b455f}
.age-modal__refs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;align-items:center;justify-items:center}
.age-modal__refs a img {background:#6A5AE0; padding: 5px; border-radius: 3px;}
.age-modal__ctrl{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.age-modal__btn{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-width:160px;padding:12px 16px;border-radius:12px;border:1px solid var(--line);background:#fff}
.age-modal__btn--allow{background:var(--accent);border-color:transparent;color:#fff}
@media (max-width:640px){.age-modal__refs{grid-template-columns:repeat(2,1fr)}}

/* thanks modal */
.thanks-shell{position:fixed;inset:0;background:#0b1120a6;backdrop-filter:blur(4px);z-index:70;display:none;place-items:center;padding:20px}
.thanks-shell__box{width:min(560px,92vw);background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;display:grid;gap:10px;justify-items:center;text-align:center;box-shadow:0 24px 70px rgba(16,24,40,.2)}
.thanks-shell__icon{font-size:28px;color:#00C2A8}
.thanks-shell__title{font:800 18px/1.2 Manrope}
.thanks-shell__text{color:#3b455f}
.thanks-shell__btn{display:inline-flex;gap:8px;align-items:center;justify-content:center;padding:10px 14px;border-radius:12px;border:1px solid var(--line);background:#fff}
.thanks-shell.show{display:grid}
