
:root{--bg:#f5fbff;--panel:rgba(255,255,255,.88);--text:#17324d;--muted:#627b96;--cyan:#48bdd7;--blue:#79a8ff;--amber:#ffc96b;--line:rgba(31,80,132,.14);--shadow:0 24px 70px rgba(61,101,145,.14)}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:radial-gradient(circle at 18% 6%,rgba(72,189,215,.16),transparent 32%),radial-gradient(circle at 82% 0%,rgba(255,201,107,.20),transparent 30%),linear-gradient(180deg,#fbfeff 0%,#edf8ff 50%,#fff8ed 100%);color:var(--text);min-height:100vh}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.50;background-image:linear-gradient(rgba(72,189,215,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(72,189,215,.055) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(180deg,rgba(0,0,0,.6),transparent 75%)}
.home-shell{position:relative;width:min(1120px,calc(100% - 32px));margin:auto;padding:44px 0}
.home-hero{position:relative;min-height:390px;padding:58px 38px;border:1px solid var(--line);border-radius:34px;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(243,250,255,.93) 60%,rgba(255,248,236,.95));box-shadow:var(--shadow);overflow:hidden}
.home-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(72,189,215,.06),transparent 34%,rgba(255,201,107,.10));pointer-events:none}.home-hero:after{content:"";position:absolute;right:12px;bottom:0;width:min(48vw,520px);height:330px;background:url('../images/home-scene.svg') center/contain no-repeat;filter:drop-shadow(0 18px 30px rgba(31,80,132,.18));opacity:.94}
.badge{position:relative;z-index:1;display:inline-flex;padding:9px 13px;border:1px solid rgba(72,189,215,.34);border-radius:999px;color:#237c92;background:rgba(72,189,215,.09);font-size:13px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.home-hero h1{position:relative;z-index:1;font-size:clamp(40px,8vw,80px);line-height:.93;margin:22px 0 14px;color:#12314f;letter-spacing:-.05em}.lead{position:relative;z-index:1;max-width:720px;font-size:clamp(18px,2vw,22px);color:var(--muted);line-height:1.55}.hero-buttons{position:relative;z-index:1;display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border-radius:17px;text-decoration:none;font-weight:900;border:1px solid var(--line);color:var(--text);box-shadow:0 8px 22px rgba(40,86,130,.09);transition:transform .15s ease,box-shadow .15s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 13px 28px rgba(40,86,130,.13)}.btn.primary{background:linear-gradient(135deg,var(--cyan),var(--blue));color:#092237;border:0}.btn.ghost{background:rgba(255,255,255,.78)}.btn.ghost:hover{background:#fff}.band-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:22px 0}.band-card{position:relative;overflow:hidden;padding:24px;border:1px solid var(--line);border-radius:26px;background:rgba(255,255,255,.86);box-shadow:0 10px 30px rgba(60,103,150,.09)}.band-card:before{content:"";position:absolute;right:-40px;top:-40px;width:130px;height:130px;border-radius:50%;background:rgba(72,189,215,.08)}.band-card.active{background:linear-gradient(180deg,rgba(72,189,215,.10),rgba(255,255,255,.92));border-color:rgba(72,189,215,.30)}.band-card.locked{opacity:.86;background:linear-gradient(180deg,rgba(255,201,107,.10),rgba(255,255,255,.90))}.band-no{display:inline-block;position:relative;color:#237c92;font-weight:950;font-size:13px;letter-spacing:.09em;text-transform:uppercase}.band-card h2{position:relative;margin:10px 0 8px;font-size:23px;color:#16324d}.band-card p{position:relative;color:var(--muted);line-height:1.55}.band-card a,.coming{position:relative;display:inline-block;margin-top:12px;color:#237c92;font-weight:900;text-decoration:none}.info-panel{padding:24px;border:1px solid var(--line);border-radius:26px;background:rgba(255,255,255,.86);box-shadow:0 10px 30px rgba(60,103,150,.08)}.info-panel p{color:var(--muted);line-height:1.6}.tiny{font-size:14px}code{background:rgba(72,189,215,.10);padding:2px 6px;border-radius:8px}@media(max-width:920px){.home-hero:after{opacity:.25;right:-70px}.lead{max-width:620px}}@media(max-width:820px){.band-grid{grid-template-columns:1fr}.home-hero{padding:38px 22px;min-height:auto}.home-hero:after{display:none}.home-shell{width:min(100% - 20px,1120px);padding:22px 0}}


.btn.disabled{cursor:default;opacity:.86;box-shadow:none}
.access-panel{padding:24px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(243,250,255,.86));box-shadow:0 10px 30px rgba(0,0,0,.06);margin:22px 0}
.access-panel h2{margin:0 0 8px;color:#16324d}
.access-panel p{color:var(--muted);line-height:1.6;margin:0 0 14px}.unlocked-list{display:flex;gap:12px;flex-wrap:wrap}.unlocked-list .tiny{margin:0;color:var(--muted)}
.band-card .coming{color:#7d8fa3}



.archive-request{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:12px;
  padding:11px 14px;
  border:1px solid rgba(72,189,215,.24);
  border-radius:14px;
  background:rgba(255,255,255,.78);
  color:#237c92;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 6px 18px rgba(40,86,130,.07);
}
.archive-request:hover{background:#fff;transform:translateY(-1px)}
.qr-modal[hidden]{display:none}
.qr-modal{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:20px;background:rgba(15,45,76,.28);backdrop-filter:blur(7px)}
.qr-modal__card{position:relative;width:min(680px,100%);padding:30px;border:1px solid var(--line);border-radius:28px;background:rgba(255,255,255,.96);box-shadow:0 24px 70px rgba(20,55,90,.22)}
.qr-modal__card h2{font-size:clamp(28px,5vw,44px);line-height:1;margin:18px 0 12px;color:#12314f}
.qr-modal__card p{color:var(--muted);line-height:1.6;font-size:17px}
.qr-modal__close{position:absolute;right:18px;top:16px;width:40px;height:40px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--text);font-size:24px;line-height:1;cursor:pointer}
body.modal-open{overflow:hidden}
