:root{font-family:system-ui,-apple-system,'Segoe UI',sans-serif;color:#18243c;background:#f4f7ff}*{box-sizing:border-box}body{margin:0;padding-bottom:88px}button,a{touch-action:manipulation}button{font:inherit;cursor:pointer}.top{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;padding:10px max(15px,calc((100vw - 960px)/2));box-shadow:0 2px 15px #152b5814;position:sticky;top:0;z-index:4}.brand{display:flex;align-items:center;gap:10px;min-width:0}.brand img{width:49px;height:49px;object-fit:contain;border-radius:50%}.brand strong{display:block;font-size:clamp(13px,2.4vw,17px);color:#0d2676}.brand small{display:block;color:#697387;font-size:11px}.web-pill{background:#e6f2ff;border-radius:30px;color:#0d54ac;padding:10px 12px;text-decoration:none;font-weight:700;font-size:12px;white-space:nowrap}main{max-width:960px;margin:auto;padding:18px}.page{display:none;animation:appear .22s ease}.page.active{display:block}@keyframes appear{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.hero{position:relative;overflow:hidden;text-align:center;border-radius:24px;padding:28px 18px 25px;background:radial-gradient(circle at 50% 6%,#fff5a1 0,#ffd76a 18%,#ffad61 37%,#64c4e9 74%,#2056a2 120%);box-shadow:0 10px 25px #1b468229}.sun{position:absolute;font-size:135px;opacity:.17;top:-50px;right:-15px}.hero-logo{width:min(205px,55vw);height:auto;aspect-ratio:1;object-fit:contain;border-radius:50%;box-shadow:0 8px 22px #26344a42;background:white}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;color:#173b7a}.hero h1{font-size:clamp(25px,5vw,39px);line-height:1.1;color:#102a72;max-width:660px;margin:8px auto}.hero p{max-width:570px;margin:12px auto 22px;color:#19355e}.primary{display:inline-block;background:#0b398d;color:#fff;text-decoration:none;font-weight:800;padding:15px 22px;border-radius:15px;box-shadow:0 5px 12px #163c7d38}.hero .hero-note{font-size:12px;margin:13px auto 0}h1{color:#102a72;font-size:30px}h2{color:#102a72;font-size:21px;margin-top:25px}.tiles,.media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tile{border:1px solid #dfe6f5;background:#fff;border-radius:18px;padding:22px 12px;text-align:center;text-decoration:none;color:#1b2944;box-shadow:0 4px 12px #172c4d10}.tile span{display:block;font-size:32px}.tile b{display:block;margin:7px 0;color:#102a72}.tile small{color:#65718a}.quote{text-align:center;font-weight:800;color:#bb324a;margin:27px 0;font-size:20px}.feature{background:#fff;border:1px solid #e0e8f6;border-radius:20px;padding:20px;margin:14px 0;box-shadow:0 4px 15px #112a5110}.feature h2{margin:0 0 10px}.feature p{line-height:1.55}.answer{display:block;width:100%;text-align:left;background:#f1f6ff;border:1px solid #dce7ff;border-radius:12px;padding:13px;margin:9px 0;color:#15346c}.answer:focus-visible,.bottom button:focus-visible,.tile:focus-visible{outline:3px solid #f5a623}#feedback{font-weight:700;margin-top:10px}.outline{border:2px solid #1c57a4;background:white;color:#164b91;padding:11px 16px;border-radius:12px;font-weight:700;margin-top:10px}.link-stack{display:grid;gap:10px}.link-stack a{background:#eaf2ff;padding:14px;border-radius:12px;text-decoration:none;color:#0b398d;font-weight:700}.feature a:not(.primary){color:#0b4a9e;font-weight:700}.topics{display:flex;flex-wrap:wrap;gap:8px}.topics span{padding:9px;background:#eaf5ff;border-radius:30px;color:#15477e;font-size:13px;font-weight:700}.coming{background:#fff0d5;color:#8e4c00;padding:6px 10px;border-radius:20px;font-size:11px;font-weight:800}select{padding:12px;border:1px solid #b8c8e4;border-radius:10px;width:100%;background:#fff;font-size:16px}.bottom{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #e2e8f3;display:flex;justify-content:space-around;padding:8px 4px max(9px,env(safe-area-inset-bottom));z-index:5;box-shadow:0 -5px 18px #142d4c15}.bottom button,.bottom a{flex:1;border:0;background:transparent;text-decoration:none;color:#64728b;font-size:11px;font-weight:700;display:flex;align-items:center;flex-direction:column;gap:4px;padding:4px 0}.bottom span{font-size:23px}.bottom .selected{color:#1048a1}@media(min-width:700px){.tiles{grid-template-columns:repeat(4,1fr)}.media-grid{grid-template-columns:repeat(2,1fr)}main{padding:26px}.hero{padding:35px}}@media(max-width:380px){.brand small{display:none}.brand img{width:39px;height:39px}.web-pill{font-size:11px;padding:8px}.top{padding:8px}}

.shop-hero{background:linear-gradient(145deg,#fff4b8,#ffb77b 48%,#79c8f3);border-radius:22px;text-align:center;padding:25px 17px;box-shadow:0 8px 22px #2b5c9625}.shop-hero h1{margin:7px 0;color:#102a72}.shop-hero p{max-width:570px;margin:9px auto;line-height:1.5}.shop-sun{font-size:48px}.shop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.shop-card{background:linear-gradient(160deg,#fff,#f0f7ff);border:1px solid #dbe7f8;border-radius:16px;padding:17px 11px;text-decoration:none;color:#173466;display:flex;flex-direction:column;gap:9px;align-items:center;text-align:center;min-height:150px;justify-content:center;box-shadow:0 3px 12px #1a386316}.shop-card:focus-visible{outline:3px solid #e79a18}.shop-card strong{font-size:14px}.shop-card small{font-size:12px;color:#1359a0;font-weight:700}.shop-emoji{font-size:31px}.shop-disclosure{background:#fff7e7;padding:13px;border-radius:12px;font-size:13px;color:#5d4a28}@media(min-width:700px){.shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Version 1.2: mobile readability and safe navigation */
body{padding-bottom:calc(112px + env(safe-area-inset-bottom,0px));}
main{padding-top:12px;padding-bottom:28px;}
.hero{padding-top:22px;padding-bottom:20px;}
.hero .hero-note{font-size:clamp(16px,3.8vw,18px);font-weight:750;line-height:1.4;color:#ffe38a;text-shadow:0 1px 3px #0b376a,0 1px 1px #0b376a;max-width:490px;margin:15px auto 0;}
.hero-logo{background:transparent;border-radius:50%;box-shadow:0 8px 22px #26344a42;}
.bottom{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));min-height:76px;}
.bottom button,.bottom a{min-height:52px;justify-content:center;}
@media(max-width:420px){.tile{padding:18px 10px}.tiles{gap:10px}.hero{padding-left:15px;padding-right:15px}.bottom span{font-size:21px}.bottom button,.bottom a{font-size:10px}}
/* V1.2.1: smaller, polished circular emblem with fine black outer rim */
.hero-logo{display:block;width:min(188px,49vw);height:auto;margin:0 auto 16px;padding:3px;border:2px solid #171717;border-radius:50%;background:transparent;box-shadow:0 5px 15px #26344a30;}

/* V1.2.2: fully opaque white circular badge backing behind all outer lettering */
.hero-logo{background:#fff;border-color:#171717;}
