:root{
  --navy:#17365d;--navy-2:#244f79;--coral:#f46f61;--teal:#42ab9e;
  --gold:#f2b641;--cream:#fffaf3;--paper:#fffefd;--sky:#eaf5fb;
  --ink:#24334b;--muted:#68788c;--line:#e7ddcf;--shadow:0 18px 44px rgba(23,54,93,.10);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"Trebuchet MS","Avenir Next",Arial,sans-serif;line-height:1.68}
img{max-width:100%;height:auto;display:block}a{color:var(--navy)}
.topbar{background:var(--navy);color:#fff;text-align:center;font-weight:800;padding:9px 14px;font-size:.82rem}
.container{width:min(900px,calc(100% - 34px));margin:auto}
.site-header{background:#fff;border-bottom:1px solid var(--line)}
.nav{min-height:98px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--navy);font-weight:900}
.brand img{width:76px;height:76px;object-fit:contain}.brand span{font-size:1.04rem;letter-spacing:.01em}
.back{display:inline-flex;align-items:center;justify-content:center;padding:11px 17px;border:1px solid #d9e2eb;border-radius:999px;text-decoration:none;font-weight:900;font-size:.87rem;background:#fff}
.hero{padding:68px 0 55px;background:radial-gradient(circle at 92% 12%,rgba(218,239,227,.8) 0 11%,transparent 11.3%),linear-gradient(180deg,#fffdf8,#fff7ed)}
.eyebrow{color:#a6553d;font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}
h1,h2,h3{color:var(--navy);line-height:1.18}h1{font-size:clamp(2.1rem,5vw,3.5rem);margin:0 0 15px}h2{font-size:1.55rem;margin:42px 0 14px}h3{font-size:1.12rem;margin:26px 0 8px}
.hero p{max-width:720px;color:#506177;font-size:1.05rem;margin:0}.updated{display:inline-block;margin-top:18px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 12px;color:var(--muted);font-size:.82rem;font-weight:800}
main{padding:24px 0 78px}.notice{margin:28px 0;padding:20px 22px;background:var(--sky);border-left:5px solid var(--teal);border-radius:0 16px 16px 0;color:#40546d}.notice strong{color:var(--navy)}
p{margin:0 0 15px}ul{padding-left:22px;margin:12px 0 20px}li{margin:8px 0}
.toc{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px 24px;box-shadow:var(--shadow);margin:28px 0}.toc strong{color:var(--navy)}.toc ol{columns:2;column-gap:32px;margin:12px 0 0;padding-left:22px}.toc a{text-decoration:none;font-weight:800;color:#4d6078}
.legal-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:4px 30px 30px;box-shadow:var(--shadow);margin-top:28px}
.contact{margin-top:35px;padding:24px;border-radius:18px;background:linear-gradient(135deg,#fff2e8,#edf8f5);border:1px solid #eadfce}.contact a{font-weight:900}
.small{font-size:.86rem;color:var(--muted)}
footer{background:#102846;color:#d8e2ed;padding:34px 0;font-size:.84rem}.footer-grid{display:flex;justify-content:space-between;gap:26px}.footer-brand{color:#fff;font-weight:900}.footer-links{max-width:650px}.footer-links a{color:#fff;font-weight:800}.footer-links p{margin-bottom:8px}
@media(max-width:650px){
  body{line-height:1.58}.container{width:min(100% - 24px,900px)}.topbar{font-size:.7rem;padding:7px 10px}
  .nav{min-height:76px;gap:10px}.brand{gap:8px}.brand img{width:58px;height:58px}.brand span{font-size:.78rem}.back{font-size:.72rem;padding:9px 11px}
  .hero{padding:42px 0 36px}.hero p{font-size:.94rem}h1{font-size:2rem}.legal-card{padding:2px 17px 22px;border-radius:17px}.notice{padding:16px}.toc{padding:18px}.toc ol{columns:1}
  h2{font-size:1.35rem;margin-top:34px}.footer-grid{flex-direction:column}.small{font-size:.8rem}
}
