/* Finance AI Systems v2.1 — authoritative design tokens. Paths relative to this file. */
@font-face{font-family:FAS Sans;src:url('./fonts/DejaVuSans.woff') format('woff');font-weight:400;font-display:swap}
@font-face{font-family:FAS Sans;src:url('./fonts/DejaVuSans-Bold.woff') format('woff');font-weight:700;font-display:swap}
@font-face{font-family:FAS Serif;src:url('./fonts/DejaVuSerif.woff') format('woff');font-weight:400;font-display:swap}
:root{--canvas:#F7F8F5;--surface:#FFFFFF;--ink:#182C32;--muted:#526166;--action:#166457;--action-hover:#104D43;--border:#CED8D4;--input-border:#63776F;--wash:#EAF0EC;--software:#2459A6;--ai:#6B4C8A;--people:#83551D;--error:#9B2828;--focus:#2459A6;--font-body:'FAS Sans',sans-serif;--font-display:'FAS Serif',serif;--container:1200px;--reading:760px;--gutter:48px;--gap:24px;--section:80px;--radius:12px;--button-radius:8px;--header:80px;--body:18px;--body-leading:28px;--h1:56px;--h1-leading:64px;--h2:36px;--h2-leading:44px;--h3:22px;--h3-leading:30px;--small:14px;--small-leading:22px;--duration:160ms;--ease:cubic-bezier(.2,0,0,1)}
*{box-sizing:border-box}html{scroll-padding-top:104px}body{margin:0;background:var(--canvas);color:var(--ink);font:var(--body)/var(--body-leading) var(--font-body)}
h1,h2{font-family:var(--font-display);font-weight:400;margin:0}h1{font-size:var(--h1);line-height:var(--h1-leading);letter-spacing:-.025em}h2{font-size:var(--h2);line-height:var(--h2-leading);letter-spacing:-.015em}h3{font-size:var(--h3);line-height:var(--h3-leading);font-weight:700;margin:0}p{margin:0}a{color:var(--action);text-underline-offset:4px}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}
.container{width:min(var(--container),calc(100% - 2 * var(--gutter)));margin-inline:auto}.reading{max-width:var(--reading)}.section{padding-block:var(--section);border-top:1px solid var(--border)}.section h2{max-width:900px;margin-bottom:20px}.section-intro{max-width:760px;margin-bottom:32px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:28px}.card h3{margin-bottom:16px}.card p{margin-bottom:20px}.card p:last-child{margin-bottom:0}.card-link{display:inline-flex;align-items:center;min-height:48px;font-size:16px;line-height:24px}.eyebrow{font-size:12px;line-height:20px;letter-spacing:.1em;font-weight:700;color:var(--action);margin-bottom:24px}
.button{min-height:52px;padding:14px 20px;border-radius:8px;border:1px solid transparent;display:inline-flex;justify-content:center;align-items:center;font-size:16px;line-height:24px;font-weight:700;text-decoration:none;background:var(--action);color:white;transition:background var(--duration) var(--ease)}.button:hover{background:var(--action-hover)}.button-secondary{background:transparent;color:var(--action);border-color:var(--input-border)}.button-secondary:hover{background:var(--wash)}.button:active{background:#0B4038}.button-secondary:active{background:#DCE7E0}.button:disabled{background:#E0E5E2;color:#526166;cursor:default;border-color:#CED8D4}
:focus-visible{outline:3px solid var(--focus);outline-offset:4px}a:hover{text-decoration-thickness:2px}.header{height:var(--header);position:sticky;top:0;background:var(--canvas);border-bottom:1px solid var(--border);z-index:30}.hero{padding-block:72px 80px}.hero h1{max-width:900px}.hero p{max-width:760px;margin-top:28px}.hero-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:32px}.home-hero{display:grid;grid-template-columns:1.072fr 1fr;gap:48px;align-items:center}.home-hero h1{font-size:48px;line-height:56px}.home-hero p{font-size:18px;line-height:28px}
.field{width:100%;border:1px solid var(--input-border);border-radius:8px;background:white;color:var(--ink);padding:16px;font-size:16px;line-height:24px;min-height:52px}.field[aria-invalid=true]{border:2px solid var(--error);padding:15px}textarea.field{min-height:184px;resize:vertical}.field-label{display:block;font-size:16px;line-height:24px;font-weight:700;margin-bottom:8px}.field-hint{font-size:14px;line-height:22px;color:var(--muted);margin-bottom:12px}.error{color:var(--error);font-size:14px;line-height:22px}.status{background:var(--wash);padding:16px;border-radius:8px}.selected{border:2px solid var(--action);background:var(--wash)}.chip{min-height:44px;padding:8px 14px;border:1px solid var(--input-border);border-radius:8px;background:white;font-size:14px;line-height:22px}.chip[aria-pressed=true]{border:2px solid var(--action);padding:7px 13px;background:var(--wash);font-weight:700}.faq{border-top:1px solid var(--border);padding:20px 0}.faq summary{min-height:44px;cursor:pointer;font-weight:700}.faq p{margin-top:16px;max-width:760px}.footer{background:var(--ink);color:white;padding-block:48px}.footer a{color:white;font-size:14px;line-height:22px;min-height:44px;display:inline-flex;align-items:center}.footer :focus-visible{outline-color:white}
@media (max-width:1199px){:root{--gutter:32px;--h1:48px;--h1-leading:56px;--section:64px}.home-hero{grid-template-columns:1fr;gap:40px}.home-hero h1{max-width:900px}.hero{padding-block:56px 64px}.grid-three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){:root{--gutter:20px;--header:64px;--gap:16px;--section:48px;--h1:36px;--h1-leading:44px;--h2:28px;--h2-leading:36px;--h3:20px;--h3-leading:28px;--body:16px;--body-leading:26px}.hero{padding-block:40px 48px}.home-hero h1{font-size:36px;line-height:44px}.home-hero p{font-size:16px;line-height:26px}.hero p{margin-top:24px}.hero-actions{flex-direction:column;gap:12px;margin-top:24px}.hero-actions .button{width:100%}.grid,.grid-three{grid-template-columns:1fr;gap:16px}.card{padding:24px}.section h2{margin-bottom:16px}.section-intro{margin-bottom:24px}html{scroll-padding-top:88px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}}

.header .button{width:230px;white-space:nowrap}.grid{align-items:start}

/* Additional responsive and semantic contracts */
@media(min-width:768px) and (max-width:1199px){:root{--header:64px}html{scroll-padding-top:88px}}
a[aria-current="page"]{text-decoration:underline;text-decoration-thickness:2px}.email-address,.draft-preview{overflow-wrap:anywhere}.draft-preview{min-height:200px;max-height:480px;overflow:auto}.composer-actions{display:flex;gap:16px;flex-wrap:wrap}.explorer-views,.explorer-examples,.explorer-topics{display:flex;gap:12px;flex-wrap:wrap}.explorer-examples{gap:16px}.explorer-examples button{width:320px}.explorer-views button{width:208px}.explorer-topics button{width:208px}.site-header-nav{display:flex}.mobile-menu-trigger{display:none}@media(max-width:1199px){.site-header-nav{display:none}.mobile-menu-trigger{display:block}}@media(max-width:767px){.explorer-examples,.explorer-views,.composer-actions{flex-direction:column}.explorer-examples button,.explorer-views button,.composer-actions button{width:100%}.explorer-topics{display:grid;grid-template-columns:1fr}.explorer-topics button{width:100%}}
