/* Shared, framework-independent components. Load after tokens.css. */
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg-paper);color:var(--bg-ink);font:400 var(--text-base)/1.7 var(--font-body);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{line-height:1.12;font-weight:400;letter-spacing:-.045em}h1{font-size:var(--text-display)}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3)}h4{font-size:1.2rem}em{font-family:var(--font-expression);font-weight:400;letter-spacing:-.025em;font-size:1.17em}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--bg-blue);outline-offset:5px}img{display:block;width:auto;max-width:100%;height:auto}svg{display:block}::selection{background:#cbd6fa;color:var(--bg-ink)}[hidden]{display:none!important}.container{width:calc(100% - 2*var(--layout-gutter));max-width:var(--layout-max);margin-inline:auto}.section{padding-block:var(--space-9)}.section-compact{padding-block:var(--space-8)}.eyebrow{font-size:var(--text-xs);font-weight:500;letter-spacing:.14em;text-transform:uppercase;line-height:1.6;display:flex;align-items:center;gap:10px}.eyebrow-dot:before{content:'';height:5px;width:5px;background:currentColor;border-radius:50%;flex:none}.muted{color:var(--bg-muted)}.blue{color:var(--bg-blue)}.lede{font-size:var(--text-lg);line-height:1.8;color:var(--bg-muted)}.icon{height:21px;width:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round;flex:none}.icon-lg{width:32px;height:32px}.arrow-diagonal{transform:rotate(-45deg)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:16px 21px;background:var(--bg-blue);color:var(--bg-paper);font-size:var(--text-sm);font-weight:500;line-height:1.6;border:1px solid transparent;border-radius:0;transition:background var(--duration),transform var(--duration);min-height:52px}.button:hover{background:var(--bg-ink);transform:translateY(-2px)}.button .icon{width:18px;height:18px}.button-ink{background:var(--bg-ink)}.button-ink:hover{background:var(--bg-blue)}.button-paper{background:var(--bg-paper);color:var(--bg-ink)}.button-paper:hover{background:var(--bg-mist)}.button-outline{background:transparent;color:var(--bg-ink);border-color:var(--bg-line)}.button-outline:hover{background:var(--bg-mist)}.text-link{display:inline-flex;align-items:center;gap:25px;font-size:var(--text-sm);font-weight:500;line-height:1.5;padding-block:9px}.text-link .icon{width:18px;height:18px;transition:transform var(--duration)}.text-link:hover{color:var(--bg-blue)}.text-link:hover .icon{transform:translateX(4px)}.tag{display:inline-flex;align-items:center;border:1px solid var(--bg-line);padding:5px 9px;font-size:10px;letter-spacing:.03em;line-height:1.6}.tag-list{display:flex;flex-wrap:wrap;gap:7px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:42px}.section-heading .eyebrow{margin-bottom:24px}.section-heading>p{max-width:330px;font-size:var(--text-sm);color:var(--bg-muted);line-height:1.9}.section-heading h2{max-width:750px}.number{font-family:var(--font-expression);font-size:29px;font-style:italic;color:var(--bg-blue);line-height:1}.card{background:var(--bg-surface);padding:30px;position:relative;min-width:0}.card-bordered{border:1px solid var(--bg-line);background:transparent}.card p{color:var(--bg-muted);font-size:var(--text-sm);line-height:1.9}.card-icon{color:var(--bg-blue);margin-bottom:37px}.card h3{font-size:25px;margin-bottom:17px;letter-spacing:-.035em}.card-link{display:flex;justify-content:space-between;align-items:center;margin-top:30px;font-size:var(--text-sm);font-weight:500}.card-link .icon{width:18px;height:18px;transition:transform var(--duration)}a.card{transition:background var(--duration),transform var(--duration)}a.card:hover{background:var(--bg-mist);transform:translateY(-4px)}a.card:hover .card-link .icon{transform:translateX(4px)}.card-meta{font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:var(--bg-muted)}.divider{border:0;border-top:1px solid var(--bg-line);margin:0}.accordion{border-top:1px solid var(--bg-line)}.accordion details{border-bottom:1px solid var(--bg-line)}.accordion summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:25px;cursor:pointer;font-size:17px;letter-spacing:-.02em;padding:25px 0;line-height:1.5}.accordion summary::-webkit-details-marker{display:none}.accordion summary:after{content:'+';font-size:24px;font-weight:400;color:var(--bg-blue);flex:none}.accordion details[open] summary:after{content:'−'}.accordion details>div{color:var(--bg-muted);max-width:690px;font-size:14px;line-height:1.9;padding-bottom:26px}.accordion details>div p+p{margin-top:14px}.tabs{display:flex;gap:6px;flex-wrap:wrap}.tabs button{border:1px solid var(--bg-line);padding:10px 17px;background:transparent;color:var(--bg-muted);font-size:12px;transition:background var(--duration),color var(--duration)}.tabs button[aria-selected=true],.tabs button[aria-pressed=true]{background:var(--bg-ink);border-color:var(--bg-ink);color:var(--bg-paper)}.tabs button:hover{border-color:var(--bg-ink)}.field{display:flex;flex-direction:column;gap:8px}.field label{font-size:12px;font-weight:500}.field input,.field select,.field textarea{width:100%;border:1px solid #7f8e97;border-radius:0;background:var(--bg-paper);padding:13px 14px;color:var(--bg-ink);font-size:14px;min-height:50px}.field input::placeholder,.field textarea::placeholder{color:var(--bg-muted)}.field textarea{min-height:150px;resize:vertical}.field-note{font-size:11px;line-height:1.7;color:var(--bg-muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-stack{display:grid;gap:22px}.notice{padding:18px 20px;border-left:2px solid var(--bg-blue);background:var(--bg-surface);font-size:13px;line-height:1.8}.notice strong{font-weight:600}.skip-link{position:fixed;z-index:100;top:-100px;left:20px;background:var(--bg-ink);color:var(--bg-paper);padding:14px 20px}.skip-link:focus{top:12px}.reveal{opacity:1;transform:none}.motion-ready .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.motion-ready .reveal.in-view{opacity:1;transform:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){.section{padding-block:72px}.section-heading{gap:30px}.section-heading>p{max-width:260px}.card{padding:25px}.card h3{font-size:22px}}
@media(max-width:600px){html{scroll-padding-top:90px}.section{padding-block:58px}.section-compact{padding-block:40px}.section-heading{display:block;margin-bottom:30px}.section-heading .eyebrow{margin-bottom:20px}.section-heading>p{max-width:100%;margin-top:23px}.eyebrow{font-size:9px;letter-spacing:.12em}.lede{font-size:16px}.card{padding:26px}.form-row{grid-template-columns:1fr}.button{gap:28px;padding:14px 18px;font-size:12px;min-height:50px}.text-link{font-size:12px}.accordion summary{font-size:15px;padding:21px 0}.accordion details>div{font-size:13px}.tabs{gap:5px}.tabs button{font-size:11px;padding:9px 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}}
