/* Readable type, consistent spacing and calmer surfaces for the shared storefront. */
body { --muted:#aab9cd; --line:#273244; background:#090d14; }
body .site-header { border-bottom:1px solid #ffffff0a; padding-top:18px; padding-bottom:18px; gap:24px; }
body .site-header nav a { font-size:12px; color:#b8c6d9; }
body .header-actions { gap:12px; }
body .hero { min-height:560px; padding:52px 48px 24px; border-radius:26px; background:linear-gradient(135deg,#17263b,#0c1420); }
body .hero::before { opacity:.36; }
body .hero h1 { font-size:clamp(44px,5.5vw,74px); }
body .hero h1 em { background:transparent; padding:0; color:#aed1ff; }
body .hero-lead { font-size:16px; line-height:1.8; max-width:590px; }
body .hero-stage { margin-top:34px; }
body .stage-topline,body .live-stat>span,body .stage-meta small,body .stage-meta span { font-size:12px; }
body .stage-meta strong { font-size:13px; line-height:1.6; overflow-wrap:anywhere; }
body .join-short-help { font-size:13px; }
body .activity-model-note { font-size:12px; line-height:1.7; }
body .kicker { font-size:11px; letter-spacing:.15em; }
body .newcomer-guide { margin-top:24px; margin-bottom:16px; border-radius:20px; background:#101b2a; }
body .newcomer-guide h2 { font-size:30px; letter-spacing:-.03em; }
body .newcomer-guide p:not(.kicker) { font-size:14px; line-height:1.8; }
body .connect-guide { border-radius:16px; background:#0e1723; }
body .community-section,body .catalog-section,body .process-section,body .faq-section { padding-top:64px; padding-bottom:64px; }
body .community-heading>p,body .split-heading>p,body .section-heading>p { font-size:14px; line-height:1.8; }
body .community-status { font-size:12px; }
body .community-card { padding:28px; background:#111c2a; border-radius:18px; }
body .community-card-top { font-size:10px; }
body .community-card>p { font-size:13px; line-height:1.8; }
body .public-poll-options button { min-height:48px; padding:12px; font-size:13px; border-radius:10px; }
body .public-poll-options button:focus-visible { outline:2px solid #b4d4ff; outline-offset:3px; }
body .community-reward small,body .goal-numbers small { font-size:10px; line-height:1.5; }
body .community-reward b { font-size:12px; }
body .leaderboard-panel { margin-top:28px; border-radius:18px; }
body .leaderboard-table { font-size:14px; }
body .leaderboard-table th { font-size:11px; color:#a6b6cc; }
body .leaderboard-panel label,body .leaderboard-panel select { font-size:13px; }
body .filter-row { gap:8px; padding:0 0 16px; margin:28px 0; border-bottom:1px solid var(--line); flex-wrap:wrap; }
body .filter-row button { border:1px solid #2c3b50; border-radius:999px; padding:10px 17px; font-size:13px; min-height:44px; color:#b9c8da; background:#111a27; }
body .filter-row button.active { background:#d7e8ff; color:#142339; border-color:#d7e8ff; }
body .kit-grid { gap:24px; }
body .kit-card,body .kit-card.featured { padding:26px; border:1px solid #2a374b; border-radius:18px; background:#111c2b; transition:border-color .18s ease,box-shadow .18s ease; }
body .kit-card:hover { border-color:#6484af; box-shadow:0 12px 32px #00000026; }
body .kit-card.featured { border-color:#7f9fc8; background:linear-gradient(145deg,#1a2b42,#101c2c); }
body .kit-card-top { font-size:10px; letter-spacing:.09em; }
body .kit-card-top b { font-size:9px; }
body .kit-icons { margin:18px -26px 22px; min-height:144px; background:radial-gradient(ellipse at center,#263c59,#152338 74%); }
body .kit-icons img { width:86px; height:98px; filter:drop-shadow(0 8px 8px #00000030); }
body .kit-card h3,body .kit-card.featured h3 { font-size:27px; line-height:1.25; }
body .kit-card>p,body .kit-card.featured>p { font-size:14px; min-height:0; line-height:1.75; color:#b5c3d7; }
body .kit-card ul,body .kit-card.featured ul { font-size:13px; line-height:1.9; color:#b6c5da; }
body .details-trigger { min-height:48px; gap:12px; text-align:left; }
body .details-trigger span { font-size:10px; line-height:1.6; }
body .details-trigger b { font-size:12px; white-space:nowrap; }
body .card-gift { font-size:12px; color:#bfdbac; }
body .card-action { gap:14px; align-items:center; }
body .card-action strong { font-size:28px; font-variant-numeric:tabular-nums; }
body .card-action small { font-size:10px; color:#9bacc5; }
body .card-action button { min-height:44px; font-size:12px; padding:11px 15px; }
body button:disabled { cursor:not-allowed; }
body .card-action button:disabled { color:#8291a8; border-color:#344154; background:#172130; box-shadow:none; }
body .bonus-section p,body .bonus-grid strong { font-size:13px; line-height:1.8; }
body .bonus-grid span,body .bonus-grid small { font-size:10px; line-height:1.7; }
body .contact-copy>p { font-size:14px; line-height:1.85; }
body .contact-form { border-radius:20px; border:1px solid #2b3b51; background:#111c2a; padding:30px; }
body .contact-form-heading p,body .contact-form label { font-size:13px; line-height:1.7; }
body .contact-form input,body .contact-form textarea,body .contact-form select { font-size:16px; min-height:46px; border-radius:10px; }
body .world-age { border-radius:14px; }
body .world-age small { font-size:12px; line-height:1.6; }
body #contact-result { overflow-wrap:anywhere; line-height:1.8; }
body #contact-result .button { margin-top:14px; white-space:normal; text-align:center; }
body .process-grid p,body .payment-note p,body .faq-list p { font-size:14px; line-height:1.85; }
body .faq-list summary { padding:22px 0; font-size:16px; }
body .order-card { max-height:calc(100dvh - 32px); overflow-y:auto; overscroll-behavior:contain; border:1px solid #40516a; }
body .details-footer .button { white-space:normal; }
body .modal-close { min-width:44px; min-height:44px; }
body :is(a,button,input,select,textarea,summary):focus-visible { outline:2px solid #b7d7ff; outline-offset:4px; }
body .site-footer,body .site-footer a { font-size:12px; }
@media (max-width:1050px) {
 body .kit-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body .hero { padding:42px 30px 24px; }
 body .community-grid { gap:16px; }
 body .community-card { padding:22px; }
}
@media (max-width:650px) {
 body .site-header { display:grid; grid-template-columns:1fr auto; gap:16px 10px; padding:16px; }
 body .store-brand { grid-row:1; grid-column:1; }
 body .header-actions { grid-row:1; grid-column:2; gap:9px; flex-wrap:nowrap; }
 body .header-actions .nav-connect { display:none; }
 body .header-actions .account-nav { font-size:12px; white-space:nowrap; }
 body .language-switch { gap:3px; }
 body .language-switch a { padding:6px 5px; font-size:11px; }
 body .store-brand b { font-size:12px; }
 body .brand-icon { width:25px; height:25px; }
 body .site-header nav { grid-row:2; grid-column:1/-1; width:100%; justify-content:space-between; gap:3px; }
 body .site-header nav a { font-size:11px; padding:9px 5px; }
 body .hero { min-height:0; padding:34px 20px 20px; margin-top:8px; border-radius:22px; }
 body .hero h1 { font-size:clamp(32px,9vw,48px); }
 body .hero h1 span+span { margin-top:6px; }
 body .hero-lead { font-size:14px; line-height:1.85; }
 body .hero-actions .button { max-width:none; font-size:14px; min-height:48px; }
 body .hero-stage { margin-top:28px; }
 body .hero .kicker { font-size:10px; }
 body .newcomer-guide { width:calc(100% - 28px); padding:25px 22px; margin-top:18px; }
 body .newcomer-guide h2 { font-size:27px; }
 body .connect-guide { width:calc(100% - 28px); }
 body .signal-strip { margin-top:18px; }
 body .community-section,body .catalog-section,body .process-section,body .faq-section { padding-top:44px; padding-bottom:44px; }
 body .section-heading h2,body .community-heading h2 { font-size:32px; }
 body .kit-grid { grid-template-columns:1fr; gap:20px; }
 body .kit-card,body .kit-card.featured { padding:24px; }
 body .kit-icons { margin-left:-24px; margin-right:-24px; }
 body .kit-card-top { font-size:10px; }
 body .kit-card h3,body .kit-card.featured h3 { font-size:28px; }
 body .filter-row { gap:7px; }
 body .filter-row button { font-size:12px; padding:10px 13px; }
 body .card-action button { min-width:120px; }
 body .contact-form { padding:22px; }
 body .contact-fields { grid-template-columns:1fr; }
 body .order-card { width:calc(100% - 20px); max-height:calc(100dvh - 20px); padding:26px 22px; border-radius:18px; }
 body .details-heading { padding-right:30px; }
 body .details-footer { align-items:stretch; }
 body .leaderboard-table td,body .leaderboard-table th { padding:12px 9px; }
 body .leaderboard-table th:first-child,body .leaderboard-table td:first-child { width:40px; }
}
@media (prefers-reduced-motion:reduce) { body *,body *::before,body *::after { animation:none!important; transition:none!important; } }
