
:root{--ink:#211b2e;--muted:#6e667b;--paper:#fcfafc;--panel:#fff;--violet:#6e4aa6;--violet2:#8c6bc1;--gold:#b88a44;--line:#e9e2ed;--soft:#f4eff8;--max:1120px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.72 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:var(--violet);text-decoration-thickness:1px;text-underline-offset:3px}header{position:sticky;top:0;z-index:20;background:rgba(252,250,252,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav{max-width:var(--max);margin:auto;display:flex;align-items:center;justify-content:space-between;padding:14px 22px}.logo{font-weight:850;letter-spacing:-.03em;color:var(--ink);text-decoration:none}.logo i{color:var(--gold);font-style:normal}
nav{display:flex;gap:20px;font-size:14px}nav a{color:var(--ink);text-decoration:none}.menu{display:none}
main{max-width:850px;margin:auto;padding:64px 24px 80px}main.home{max-width:var(--max)}h1,h2,h3{line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(2.5rem,7vw,5rem);margin:.2em 0 .25em}article h1{font-size:clamp(2.4rem,6vw,4.4rem)}h2{font-size:clamp(1.6rem,3vw,2.35rem);margin-top:2.2em}.lede{font-size:1.25rem;color:var(--muted);max-width:760px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:800;color:var(--violet)}
.hero{padding:42px 0 32px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.btn{display:inline-block;background:var(--violet);color:#fff!important;text-decoration:none;padding:13px 18px;border-radius:999px;font-weight:750;box-shadow:0 8px 24px rgba(110,74,166,.16)}.btn.ghost{background:transparent;color:var(--ink)!important;border:1px solid var(--line);box-shadow:none}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{display:flex;flex-direction:column;gap:8px;background:var(--panel);border:1px solid var(--line);padding:22px;border-radius:18px;color:var(--ink);text-decoration:none;min-height:145px}.card:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(40,25,60,.07)}.card span{color:var(--muted);font-size:.94rem}.path{margin:60px 0;padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--soft);text-align:center;font-weight:750}.path span{white-space:nowrap}
.notice{background:#f5f0df;border:1px solid #e7d7ad;border-radius:12px;padding:12px 15px;font-size:.9rem}.productbox{margin:38px 0;background:linear-gradient(135deg,#f4eff8,#fff9ed);border:1px solid var(--line);border-radius:22px;padding:28px}.productbox h2{margin:.3em 0}.productbox small{display:block;color:var(--muted);margin-top:10px}.textlink{display:inline-block;margin-left:14px}
.related{border-top:1px solid var(--line);margin-top:50px;padding-top:28px}.related a{margin-right:16px}footer{border-top:1px solid var(--line);padding:40px 24px;color:var(--muted);font-size:.9rem}.foot{max-width:var(--max);margin:auto;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.foot a{color:var(--muted);margin-right:14px}
.popup-backdrop{position:fixed;inset:0;background:rgba(25,18,34,.58);display:none;align-items:center;justify-content:center;z-index:100;padding:20px}.popup-backdrop.show{display:flex}.popup{position:relative;width:min(560px,100%);background:#fff;border-radius:24px;padding:34px;box-shadow:0 30px 90px rgba(0,0,0,.3);border:1px solid var(--line)}.popup:before{content:"";position:absolute;inset:0 0 auto;height:6px;border-radius:24px 24px 0 0;background:linear-gradient(90deg,var(--violet),var(--gold))}.popup h2{margin:.25em 0;font-size:2rem}.popup p{color:var(--muted)}.popup-close{position:absolute;right:15px;top:14px;border:0;background:transparent;font-size:1.6rem;cursor:pointer;color:var(--muted)}.popup small{display:block;margin-top:12px;color:var(--muted);font-size:.78rem}
.breadcrumb{font-size:.82rem;color:var(--muted);margin-bottom:24px}.breadcrumb a{color:var(--muted)}
dl dt{font-weight:800;margin-top:18px}dl dd{margin-left:0;color:var(--muted)}
@media(max-width:760px){nav{display:none}.grid{grid-template-columns:1fr}.nav{padding:12px 18px}main{padding:42px 20px 64px}.popup{padding:28px 22px}.path{line-height:2.2}.textlink{display:block;margin:12px 0 0}}
