:root{--color-primary:#0a0a0a;--color-primary-hover:#1f1f1f;--color-primary-soft:#f1efe9;--color-accent:#a8201a;--color-accent-hover:#8a1814;--color-accent-soft:#f7eeee;--color-bg:#f5f3ee;--color-bg-deep:#ecebe4;--color-surface:#ffffff;--color-surface-alt:#faf8f3;--color-surface-soft:#f1efe9;--color-border:#e8e4dc;--color-border-strong:#cfcabd;--color-text:#1a1815;--color-text-muted:#6b6660;--color-text-faint:#a39e95;--color-success:#2f6e3b;--color-success-soft:#ecf3ec;--color-warning:#b86e1a;--color-warning-soft:#fbf3e7;--color-danger:#a8201a;--color-danger-soft:#f7eeee;--color-info-soft:#e8eef3;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:72px;--radius-sm:2px;--radius-md:4px;--radius-lg:6px;--radius-xl:8px;--radius-pill:999px;--shadow-sm:0 1px 2px rgba(26,24,21,0.04);--shadow-md:0 2px 8px rgba(26,24,21,0.06);--shadow-lg:0 12px 32px rgba(26,24,21,0.10);--topnav-height:68px;--content-max:1240px;--font-display:var(--font-fraunces,"Fraunces"),"Noto Serif SC",Georgia,"Times New Roman",serif;--font-body:var(--font-inter-tight,"Inter Tight"),"Noto Sans SC",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;--font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;--t-fast:140ms cubic-bezier(0.4,0,0.2,1);--t-med:240ms cubic-bezier(0.4,0,0.2,1);--t-slow:420ms cubic-bezier(0.4,0,0.2,1);--color-nav-bg:rgba(255,255,255,0.92);--color-drawer-backdrop:rgba(10,10,10,0.45);--color-drawer-shadow:rgba(10,10,10,0.18)}html[data-theme=dark]{--color-primary:#f5f3ee;--color-primary-hover:#e8e4dc;--color-primary-soft:#2a2825;--color-accent:#d65a52;--color-accent-hover:#e87770;--color-accent-soft:#3a1f1d;--color-bg:#14120f;--color-bg-deep:#0c0b09;--color-surface:#1d1b17;--color-surface-alt:#25221d;--color-surface-soft:#1a1814;--color-border:#3a3631;--color-border-strong:#4a443d;--color-text:#e0dcd0;--color-text-muted:#9c968b;--color-text-faint:#6b6660;--color-success:#6fbf7f;--color-success-soft:#15291b;--color-warning:#e0a04e;--color-warning-soft:#2d2113;--color-danger:#e57369;--color-danger-soft:#2d1816;--color-info-soft:#1a2530;--shadow-sm:0 1px 2px rgba(0,0,0,0.5);--shadow-md:0 2px 8px rgba(0,0,0,0.55);--shadow-lg:0 12px 32px rgba(0,0,0,0.6);--color-nav-bg:rgba(20,18,15,0.88);--color-drawer-backdrop:rgba(0,0,0,0.65);--color-drawer-shadow:rgba(0,0,0,0.5)}html[data-theme=dark] body{color-scheme:dark}html[data-theme=dark] .brand-logo{filter:brightness(0) invert(1)}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-feature-settings:"ss01","cv11";-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:15px;line-height:1.55;letter-spacing:-.005em}::selection{background-color:var(--color-text);color:var(--color-bg)}main{padding:var(--space-6);max-width:var(--content-max);margin:0 auto}a{color:var(--color-text);transition:color var(--t-fast)}a,a:hover{text-decoration:none}a:hover{color:var(--color-accent)}button,input,select,textarea{font:inherit;color:inherit}button{touch-action:manipulation;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:500;letter-spacing:-.015em;color:var(--color-text)}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-content{flex:1 1;width:100%;max-width:var(--content-max);margin:0 auto;padding:var(--space-7) var(--space-6)}.page-title{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:clamp(28px,4vw,40px);font-weight:500;line-height:1.1;letter-spacing:-.02em}.page-subtitle{margin:0 0 var(--space-6);color:var(--color-text-muted);font-size:15px;line-height:1.6;max-width:62ch}.page-section{margin-top:var(--space-7)}.page-section-title{margin:0 0 var(--space-4);font-family:var(--font-body);font-size:11px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.18em;display:flex;align-items:center;gap:var(--space-3)}.page-section-title:after{content:"";flex:1 1;height:1px;background-color:var(--color-border)}.eyebrow{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-3)}.card-grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.feature-card{position:relative;display:flex;flex-direction:column;padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);text-decoration:none;color:var(--color-text);transition:transform var(--t-med),box-shadow var(--t-med),border-color var(--t-med);overflow:hidden;min-height:168px}.feature-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent,transparent 70%,rgba(168,32,26,.025));opacity:0;transition:opacity var(--t-med);pointer-events:none}.feature-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--color-text);text-decoration:none}.feature-card:hover:before{opacity:1}.feature-card-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin-bottom:var(--space-4);color:var(--color-text);position:relative}.feature-card-icon svg{width:24px;height:24px;stroke-width:1.4}.feature-card-title{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:20px;font-weight:500;letter-spacing:-.01em;line-height:1.25}.feature-card-desc{margin:0;color:var(--color-text-muted);font-size:13.5px;line-height:1.6}.feature-card-arrow{margin-top:auto;padding-top:var(--space-4);display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text);opacity:0;transform:translateY(4px);transition:opacity var(--t-med),transform var(--t-med)}.feature-card:hover .feature-card-arrow{opacity:1;transform:translateY(0)}@media (max-width:720px){body{font-size:16px}.app-content,main{padding:var(--space-5) var(--space-4)}.page-title{font-size:28px}button,input,select,textarea{font-size:16px!important}button{min-height:44px}.card-grid{grid-template-columns:1fr;gap:var(--space-3)}.feature-card{padding:var(--space-4);min-height:auto}.feature-card-arrow{opacity:1;transform:translateY(0)}}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.split-2col{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(360px,2fr);grid-gap:var(--space-5);gap:var(--space-5);align-items:start}@media (max-width:900px){.split-2col{grid-template-columns:1fr}}.split-cal{display:grid;grid-template-columns:minmax(560px,2.2fr) minmax(280px,1fr);grid-gap:var(--space-5);gap:var(--space-5);align-items:start}@media (max-width:1024px){.split-cal{grid-template-columns:1fr}}.split-50-50{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-5);gap:var(--space-5)}@media (max-width:720px){.split-50-50{grid-template-columns:1fr}}.row-stack-mobile{display:flex;flex-wrap:wrap;gap:var(--space-3)}@media (max-width:720px){.row-stack-mobile>*{flex:1 1 100%!important;width:100%!important;max-width:100%!important}}.topnav-desktop{display:flex}.topnav-mobile-trigger{display:none}@media (max-width:860px){.topnav-desktop{display:none!important}.topnav-mobile-trigger{display:inline-flex!important}}.brand-logo{display:inline-block;height:22px;width:auto;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none;vertical-align:middle}.brand-logo--lg{height:32px}.brand-logo--xl{height:56px}.brand-logo--inverse{filter:invert(1) brightness(1.08)}@keyframes fade-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.card-grid>*{animation:fade-rise var(--t-slow) backwards}.card-grid>:first-child{animation-delay:60ms}.card-grid>:nth-child(2){animation-delay:.12s}.card-grid>:nth-child(3){animation-delay:.18s}.card-grid>:nth-child(4){animation-delay:.24s}.card-grid>:nth-child(5){animation-delay:.3s}.card-grid>:nth-child(6){animation-delay:.36s}.card-grid>:nth-child(7){animation-delay:.42s}.card-grid>:nth-child(8){animation-delay:.48s}@media (prefers-reduced-motion:reduce){.card-grid>*{animation:none}*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important}}