:root{color-scheme:light;--ink:#142235;--muted:#2A3B52;--blue:#2F62B5;--glassbg:rgba(255,255,255,.42);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif;color:var(--ink)}
*{box-sizing:border-box}
html{min-height:100%;background-color:#D6E6F8;background-image:radial-gradient(circle 420px at 0% 12%,rgba(160,200,245,.75),transparent 72%),radial-gradient(circle 400px at 100% 4%,rgba(150,185,240,.65),transparent 72%),radial-gradient(circle 460px at 40% 50%,rgba(235,245,255,.8),transparent 72%),radial-gradient(circle 420px at 0% 96%,rgba(150,185,240,.6),transparent 72%),radial-gradient(circle 400px at 100% 100%,rgba(130,175,235,.65),transparent 72%),linear-gradient(160deg,#E6F1FC 0%,#EEF3FF 45%,#BFD9F5 100%);background-repeat:no-repeat;-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;background:transparent;overflow-x:hidden}
a{color:inherit;text-underline-offset:4px}
a:focus-visible{outline:3px solid #2F62B5;outline-offset:4px;border-radius:6px}
.skip{position:absolute;left:16px;top:-100px;background:#fff;padding:14px;z-index:30;border-radius:10px}.skip:focus{top:12px}
header,main,footer{width:min(1080px,calc(100% - 48px));margin:auto}body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
.glass,header,.notice,.hero,.cards article,.purchase,.policy section,.contents{background:var(--glassbg);-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%);border:1.5px solid rgba(255,255,255,.75);box-shadow:0 12px 40px rgba(50,80,130,.18),inset 0 1.5px 0 rgba(255,255,255,.9),inset 0 -1px 0 rgba(255,255,255,.3)}
header{position:sticky;top:12px;z-index:20;margin-top:16px;display:flex;align-items:center;justify-content:space-between;padding:10px 24px;border-radius:999px;gap:20px}
.brand{display:flex;gap:12px;align-items:center;font-weight:800;letter-spacing:1px;text-decoration:none}
.brand img{border-radius:13px}
.brand small{display:block;font-weight:500;font-size:11px;letter-spacing:.7px;margin-top:3px;color:var(--muted)}
nav{display:flex;gap:24px}
header nav a{padding:12px 0;font-size:15px;font-weight:500;text-decoration:none;color:var(--muted)}
header nav a:hover{color:var(--blue)}
nav [aria-current]{font-weight:700;color:var(--ink);border-bottom:2px solid var(--blue)}
.notice{font-size:13px;color:#1F3A5F;padding:14px 20px;border-radius:20px;margin:24px 0;line-height:1.6}
.hero{padding:56px 32px 56px;text-align:center;border-radius:40px;margin-bottom:28px}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:3px;color:#34465E;margin:0}
h1,h2,h3{font-weight:700;color:var(--ink)}
h1{font-size:clamp(40px,6vw,68px);letter-spacing:-1px;line-height:1.05;margin:16px 0 22px}
.hero>p:not(.eyebrow){color:var(--muted);font-size:18px;line-height:1.6}
.button{position:relative;overflow:hidden;display:inline-block;margin-top:16px;padding:16px 30px;background:linear-gradient(180deg,#4C86D6,#2F62B5);color:#fff;text-decoration:none;border-radius:999px;font-weight:650;border:1.5px solid rgba(255,255,255,.5);box-shadow:0 8px 20px rgba(47,98,181,.3)}
.button::after{content:"";position:absolute;top:0;left:-70%;width:45%;height:100%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);animation:shine 4s ease-in-out infinite}
@keyframes shine{0%{left:-70%}35%,100%{left:130%}}
.hero .address{font-size:14px!important;overflow-wrap:anywhere}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cards article{padding:28px;border-radius:32px}
.symbol{display:inline-grid;place-items:center;font-size:26px;width:50px;height:50px;border-radius:16px;background:rgba(120,170,235,.35);color:#14304F;border:1.5px solid #fff}
h2{font-size:27px;line-height:1.2}h3{font-size:22px}
.cards p,.purchase p{font-size:15px;line-height:1.7;color:var(--muted)}
.text-link{font-size:15px;font-weight:700;display:inline-block;padding:12px 0;color:var(--blue)}
.purchase{display:grid;grid-template-columns:1fr 1.6fr;gap:40px;border-radius:36px;margin:28px auto 56px;padding:36px}
.purchase h2{margin:12px 0}.purchase p:first-child{margin-top:0}
footer{padding:22px 24px 40px;display:flex;gap:24px;font-size:13px;color:#34465E;flex-wrap:wrap}
footer span{margin-right:auto}
.policy{max-width:820px;padding-bottom:48px}
.policy h1{font-size:clamp(38px,6vw,56px);margin-bottom:24px}
.policy p,.policy li{font-size:16px;line-height:1.75;color:var(--muted)}
.policy .lead{font-size:20px;line-height:1.6}
.policy section{scroll-margin-top:96px;padding:12px 30px 24px;border-radius:30px;margin-top:22px}
.policy h2{font-size:28px}.policy h3{margin:28px 0 8px}
.policy p{margin:12px 0}.policy li{margin:12px 0}.policy ul{padding-left:23px}
.policy a,.policy code{overflow-wrap:anywhere}.policy a{color:var(--blue)}
.contents{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0;padding:14px;border-radius:28px}
.contents a{font-size:14px;padding:10px 16px;border-radius:999px;text-decoration:none;background:rgba(255,255,255,.6);border:1.5px solid #fff;color:var(--ink)!important;font-weight:600}
.review-note{padding:18px;background:rgba(255,255,255,.5);border-left:3px solid var(--blue)}
@media(max-width:700px){
header,main,footer{width:calc(100% - 28px)}
header{padding:10px 16px;top:8px;margin-top:10px}
.brand{font-size:12px;gap:9px}.brand img{width:40px;height:40px}
nav{gap:14px}header nav a{font-size:14px}
.hero{padding:34px 20px;border-radius:30px}
.hero>p:not(.eyebrow){font-size:16px}
.cards{grid-template-columns:1fr;gap:14px}.cards article{padding:24px;border-radius:28px}
.purchase{grid-template-columns:1fr;gap:16px;padding:26px 22px;border-radius:30px;margin-bottom:36px}
.desktop{display:none}
footer{gap:14px 18px}footer span{width:100%}
.policy .lead{font-size:18px}.policy p,.policy li{font-size:15px}.policy h2{font-size:24px}
.policy section{padding:8px 20px 18px;border-radius:26px}
}
@media(prefers-reduced-motion:reduce){.button::after{animation:none;display:none}}
