/* ── RESET & BASE ── */
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Merriweather',Georgia,serif;background:#fff;color:#384856;line-height:1.7;font-size:16px}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit}
h1,h2,h3,h4{font-family:'Alfa Slab One',serif;font-weight:400;line-height:1.2;color:#1C3D5A}
p{margin-bottom:1rem}
/* ── HEADER ── */
.header{background:#fff;border-bottom:1px solid #e5e5e5;position:sticky;top:0;z-index:200}
.header-top-row{max-width:1260px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;height:72px}
.logo{display:flex;align-items:center;text-decoration:none}
.logo img{width:200px;display:block}
.logo span{font-family:'Alfa Slab One',serif;font-size:1.1rem;color:#173b57}
.signup-btn{border:2px solid #000;border-radius:50px;color:#000!important;padding:8px 20px;font-size:14px;font-family:'Merriweather',serif;white-space:nowrap;text-decoration:none;transition:all .2s;display:inline-block}
.signup-btn:hover{background:#000;color:#fff!important}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:6px}
.hamburger span{display:block;width:24px;height:2px;background:#000;border-radius:1px}
.nav-row{border-top:1px solid #e5e5e5;background:#fff}
.nav-links{max-width:1260px;margin:0 auto;padding:0 16px;display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:0}
.nav-links a{color:#000;font-size:14px;padding:9px 13px;font-family:'Merriweather',serif;font-weight:400;white-space:nowrap;border-bottom:2px solid transparent;display:block;text-decoration:none}
.nav-links a:hover,.nav-links a.active{border-bottom-color:#000}
.mobile-nav{display:none;background:#fff;border-top:1px solid #e5e5e5}
.mobile-nav a{display:block;padding:12px 24px;color:#000;font-size:15px;border-bottom:1px solid #f0f0f0;font-family:'Merriweather',serif;text-decoration:none}
@media(max-width:900px){.nav-row{display:none}.hamburger{display:flex}}

.toc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:8px;margin-bottom:28px}
.toc-btn{background:white;border:2px solid #173b57;border-radius:8px;padding:10px 12px;text-align:center;text-decoration:none;color:#173b57;font-weight:700;font-size:.82rem;display:block;transition:all .2s}
.toc-btn:hover{background:#173b57;color:white;text-decoration:none}
.sec-banner{background:#173b57;color:white;padding:14px 20px;border-radius:10px;margin:28px 0 16px;display:flex;align-items:center;gap:14px}
.sec-banner .icon{font-size:1.8rem;flex-shrink:0}
.sec-banner h2{margin:0;font-size:1.2rem;color:white}
.sec-banner p{margin:3px 0 0;font-size:.82rem;opacity:.9}
.rc{background:white;border-radius:10px;padding:16px 18px;margin-bottom:12px;box-shadow:0 1px 8px rgba(0,0,0,.07);border-left:4px solid #173b57}
.rc.gold{border-left-color:#000000}
.rc h4{margin:0 0 4px;color:#173b57;font-size:.95rem}
.rc .meta{font-size:.79rem;color:#6c849c;margin-bottom:6px}
.rc .desc{font-size:.85rem;line-height:1.65;margin-bottom:6px}
.rc ul{padding-left:18px;font-size:.84rem;line-height:1.7;margin:4px 0}
.rc .tip{background:#FBEACF;border-radius:6px;padding:6px 10px;font-size:.79rem;margin-top:8px;color:#173b57}
.rc .lk{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.rc .lk a{background:#173b57;color:white;padding:3px 10px;border-radius:20px;font-size:.74rem;text-decoration:none}
.rc .lk a.g{background:#000000;color:#ffffff}
.rc .lk a:hover{opacity:.85;text-decoration:none}
.rk{display:inline-flex;align-items:center;justify-content:center;background:#173b57;color:white;width:22px;height:22px;border-radius:50%;font-size:.72rem;font-weight:700;flex-shrink:0;margin-right:6px}
.rk.g{background:#000000;color:#ffffff}
.acl{display:inline-block;background:#FBEACF;border-radius:4px;padding:1px 7px;font-size:.75rem;font-weight:600;color:#7B3F00;margin:2px 2px 0 0}
.hbox{background:#FBEACF;border:2px solid #000000;border-radius:10px;padding:14px 18px;margin:14px 0;font-size:.86rem}
.lg{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:10px;margin:10px 0 16px}
.le{background:white;border-radius:8px;padding:12px 14px;font-size:.83rem;box-shadow:0 1px 4px rgba(0,0,0,.06);border-top:3px solid #173b57}
.le strong{display:block;color:#173b57;margin-bottom:3px;font-size:.87rem}
.back-top{position:fixed;bottom:24px;right:24px;background:#173b57;color:white;border:none;border-radius:50%;width:44px;height:44px;font-size:1.3rem;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.2);display:flex;align-items:center;justify-content:center;z-index:100}
