@import url("https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,300;1,9..40,400&display=swap");*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#faf7f2;--bg2:#f3ede2;--surface:#fff;--surface-warm:#fefcf8;--border:#e8e2d6;--border2:#d4ccbf;--text:#1a2744;--text2:#3c4a68;--text3:#7a859e;--indigo:#1d8a7a;--indigo-dark:#156b5e;--indigo-light:#e0f4f1;--indigo-mid:#9fd4cc;--coral:#d96b50;--coral-light:#fdeee9;--coral-mid:#f0b09a;--sage:#5e8c6a;--sage-light:#eaf3ec;--lavender:#ede8f8;--lavender-mid:#c4bce8;--lavender-text:#4a3f7a;--amber:#d97706;--amber-dark:#b45309;--amber-light:#fef3c7;--green:#2e7d52;--green-light:#e6f5ed;--rose:#c0334d;--rose-light:#fce8ec;--teal:#0f7369;--teal-light:#e0f4f1;--orange:#c05e1a;--orange-light:#fdeee3;--purple:#6d3ab5;--purple-light:#f0e8ff;--pink:#b52468;--pink-light:#fce7f0;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:40px;--space-2xl:64px;--radius:16px;--radius-sm:10px;--radius-xs:6px;--radius-lg:24px;--radius-pill:999px;--shadow:0 1px 4px rgba(26,39,68,.07),0 4px 16px rgba(26,39,68,.05);--shadow-md:0 2px 8px rgba(26,39,68,.08),0 8px 24px rgba(26,39,68,.08);--shadow-lg:0 4px 16px rgba(26,39,68,.1),0 16px 40px rgba(26,39,68,.1);--font:"DM Sans",system-ui,-apple-system,sans-serif;--font-display:"DM Serif Display",Georgia,serif;--ease-out:cubic-bezier(0.16,1,0.3,1);--dur-fast:150ms;--dur-base:250ms;--dur-slow:400ms;--max-w:980px;--max-w-prose:680px;--max-w-narrow:520px;--focus-ring:0 0 0 3px rgba(29,138,122,.35)}html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.65;min-height:100vh;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;background:none}button,input,select,textarea{font-family:var(--font)}img{max-width:100%;display:block}.serif{font-weight:400}.section-title,.serif{font-family:var(--font-display);letter-spacing:-.02em}.section-title{font-size:clamp(22px,4vw,30px);color:var(--text);line-height:1.2}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-xs)}.btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--indigo);color:#fff;padding:14px 28px;border-radius:var(--radius-pill);font-weight:600;font-size:15px;letter-spacing:.01em;transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);cursor:pointer;text-decoration:none;border:none}.btn-primary:hover{background:var(--indigo-dark);transform:translateY(-1px);box-shadow:0 6px 20px rgba(29,138,122,.3)}.btn-primary:active{transform:translateY(0)}.btn-secondary{display:inline-flex;align-items:center;gap:8px;background:var(--surface);color:var(--indigo);padding:13px 26px;border-radius:var(--radius-pill);font-weight:600;font-size:15px;border:1.5px solid var(--indigo-mid);transition:background var(--dur-fast),border-color var(--dur-fast);cursor:pointer;text-decoration:none}.btn-secondary:hover{background:var(--indigo-light);border-color:var(--indigo)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.card-lift{transition:transform var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.card-lift:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.tag{display:inline-block;font-size:11px;font-weight:600;padding:3px 10px;border-radius:var(--radius-pill);letter-spacing:.03em}.fade-in{animation:fadeIn var(--dur-slow) var(--ease-out) both}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}