:root{--font-serif:"Georgia",serif;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--gd-title-xl:32px;--gd-title-lg:26px;--gd-title-md:20px;--gd-body:16px;--gd-small:14px}*{margin:0;padding:0;box-sizing:border-box}body,html{font-family:var(--font-sans);background:var(--app-bg);color:var(--text);transition:background-color .3s ease,color .3s ease}:root{--app-bg:#faf8f6;--card-bg:#fff;--text:#4a3f35;--subtle:rgba(0,0,0,.03);--border:rgba(0,0,0,.08);--muted:#7c746c;--accent:#c89e8a;--accent-hover:#b47b68;--accent-soft:hsla(19,36%,66%,.22);--success:#54c77c;--danger:#e35d6a;--warn:#e5b35d}html.dark{--app-bg:#1a1817;--card-bg:#1f1d1b;--text:#e8e6e3;--subtle:hsla(0,0%,100%,.04);--border:hsla(0,0%,100%,.1);--muted:#8f8a85;--accent:#c89e8a;--accent-hover:#b47b68;--accent-soft:hsla(19,36%,66%,.14);--success:#54c77c;--danger:#e35d6a;--warn:#e5b35d}.gd-title-xl{font-weight:800;font-size:var(--gd-title-xl);letter-spacing:-.5px}.gd-title-lg,.gd-title-xl{font-family:var(--font-serif)}.gd-title-lg{font-weight:700;font-size:var(--gd-title-lg)}.gd-title-md{font-size:var(--gd-title-md)}.gd-section-label,.gd-title-md{font-family:var(--font-serif);font-weight:600}.gd-section-label{font-size:13px;opacity:.75;letter-spacing:.2px;text-transform:uppercase}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:14px;padding:24px;box-shadow:0 18px 40px rgba(0,0,0,.1)}html.dark .card{box-shadow:0 28px 55px rgba(0,0,0,.55)}.nav-active{background:var(--accent-soft);color:var(--accent)!important;font-weight:600;border-left:3px solid var(--accent)}.gd-container{max-width:1180px;margin:0 auto;padding:4rem 2rem 2rem}@media (max-width:768px){.gd-container{padding:2rem 1.25rem 1.25rem}}@media (max-width:480px){.gd-container{padding:1.5rem 1rem 1rem}}@media (max-width:768px){:root{--gd-title-xl:28px;--gd-title-lg:22px;--gd-title-md:18px;--gd-body:15px;--gd-small:13px}}@media (max-width:480px){:root{--gd-title-xl:24px;--gd-title-lg:20px;--gd-title-md:17px;--gd-body:14px;--gd-small:12px}}.gd-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}@keyframes spin{to{transform:rotate(1turn)}}:root,html{font-family:var(--font-inter),sans-serif}