*,:after,:before{box-sizing:border-box;margin:0;padding:0;border-width:0;border-style:solid;border-color:var(--color-divider)}html{font-size:16px;line-height:var(--lh-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}body{color:var(--color-text);text-rendering:optimizeLegibility}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}button{cursor:pointer;background:none;border:none;padding:0}a{color:inherit;text-decoration:inherit}ol,ul{list-style:none}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid var(--color-focus-outline);outline-offset:2px;border-radius:var(--border-radius-button)}:root{--font-heading:"EB Garamond",Garamond,Georgia,"Times New Roman",Times,serif;--font-body:"Palatino Linotype","Book Antiqua",Palatino,Georgia,"Times New Roman",Times,serif;--font-label:Optima,"Gill Sans","Segoe UI","Helvetica Neue",Helvetica,Arial,sans-serif;--font-mono:"Courier New",Courier,"IBM Plex Mono",ui-monospace,monospace;--font-sans:var(--font-label);--font-serif:var(--font-heading);--color-background:#fff;--color-surface:#f8f3e1;--color-border:#e7e3d3;--color-text:#0b0b0b;--color-text-secondary:#6b7280;--color-text-tertiary:#1f2937;--color-accent:#005897;--color-accent-dark:#004a7d;--color-accent-hover:#004a7d;--color-accent-light:#e6eef5;--color-success:#2a6f4d;--color-warning:#e3a008;--color-error:#b00020;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--fs-xs:0.75rem;--fs-sm:0.875rem;--fs-base:1.0625rem;--fs-lg:1.125rem;--fs-xl:1.5rem;--fs-2xl:2rem;--fs-3xl:2.5rem;--fs-4xl:2.5rem;--fs-5xl:3rem;--lh-tight:1.15;--lh-normal:1.5;--lh-relaxed:1.8;--ls-tight:-0.005em;--ls-normal:0;--ls-wide:0.025em;--ls-wider:0.05em;--container-sm:640px;--container-md:768px;--container-lg:1024px;--container-xl:1280px;--radius-sm:0.25rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--radius-full:9999px;--border-radius-button:8px;--shadow-sm:0 1px 2px rgba(0,0,0,.05);--shadow-md:0 4px 6px rgba(0,0,0,.07);--shadow-lg:0 10px 15px rgba(0,0,0,.1);--shadow-xl:0 20px 25px rgba(0,0,0,.15);--transition-fast:150ms ease-in-out;--transition-base:200ms ease-in-out;--transition-slow:300ms ease-in-out;--color-focus-outline:var(--color-accent);--chart-primary:#0066b8;--chart-secondary:#00a572;--chart-accent:#e85d75;--chart-quaternary:#ffa726;--chart-quinary:#7b68ee;--z-base:0;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal-backdrop:400;--z-modal:500;--z-popover:600;--z-tooltip:700}body{font-family:var(--font-body);font-size:var(--fs-base);line-height:1.6;color:#111;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:var(--lh-tight);color:var(--color-text);margin:0;letter-spacing:.2px}h1{font-size:var(--fs-4xl);margin-bottom:var(--space-6)}h1,h2{letter-spacing:var(--ls-tight)}h2{font-size:var(--fs-2xl);margin-top:var(--space-7);margin-bottom:var(--space-5)}h3{font-size:var(--fs-xl);margin-top:var(--space-6);margin-bottom:var(--space-4)}h4{font-size:var(--fs-2xl);margin-top:var(--space-5);margin-bottom:var(--space-3)}h5{font-size:var(--fs-xl);margin-top:var(--space-4)}h5,h6{margin-bottom:var(--space-2)}h6{font-size:var(--fs-lg);margin-top:var(--space-3)}.section-title{font-weight:600;border-bottom:none;text-transform:lowercase;margin:.25rem 0 1.5rem}p{margin-bottom:var(--space-4);line-height:var(--lh-relaxed)}p:last-child{margin-bottom:0}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-dark);text-decoration:underline}ol,ul{margin-bottom:var(--space-4);padding-left:var(--space-5)}li{margin-bottom:var(--space-2);line-height:var(--lh-normal)}li:last-child{margin-bottom:0}blockquote{margin:var(--space-6) 0;padding-left:var(--space-5);border-left:3px solid var(--color-border);font-style:italic;color:var(--color-text-secondary)}code{font-size:.875em;padding:.125em .25em;border-radius:var(--radius-sm)}code,pre{font-family:var(--font-mono);background-color:var(--color-surface)}pre{font-size:var(--fs-sm);padding:var(--space-4);border-radius:var(--radius-md);overflow-x:auto;margin-bottom:var(--space-4)}pre code{background-color:transparent;padding:0}table{width:100%;border-collapse:collapse;margin-bottom:var(--space-5)}td,th{padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--color-border)}th{font-weight:600;background-color:var(--color-surface)}.text-sm{font-size:var(--fs-sm)}.text-lg{font-size:var(--fs-lg)}.text-secondary{color:var(--color-text-secondary)}.text-label{font-family:var(--font-label);font-size:var(--fs-sm);letter-spacing:.05em;text-transform:uppercase}.text-tertiary{color:var(--color-text-tertiary)}.font-sans{font-family:var(--font-sans)}.font-mono{font-family:var(--font-mono)}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}@media (max-width:640px){h1{font-size:var(--fs-4xl)}h2{font-size:var(--fs-3xl)}h3{font-size:var(--fs-2xl)}h4{font-size:var(--fs-xl)}}.container{width:100%;margin-left:auto;margin-right:auto;padding-left:var(--space-4);padding-right:var(--space-4)}@media (min-width:640px){.container{max-width:var(--container-sm)}}@media (min-width:768px){.container{max-width:var(--container-md)}}@media (min-width:1024px){.container{max-width:var(--container-lg)}}@media (min-width:1280px){.container{max-width:var(--container-xl)}}.flex{display:flex}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.m-0{margin:0}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.m-5{margin:var(--space-5)}.m-6{margin:var(--space-6)}.mt-0{margin-top:0}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.mt-7{margin-top:var(--space-7)}.mt-8{margin-top:var(--space-8)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-5{margin-bottom:var(--space-5)}.mb-6{margin-bottom:var(--space-6)}.mb-7{margin-bottom:var(--space-7)}.mb-8{margin-bottom:var(--space-8)}.mx-auto{margin-left:auto;margin-right:auto}.p-0{padding:0}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.p-6{padding:var(--space-6)}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:var(--space-1);padding-right:var(--space-1)}.px-2{padding-left:var(--space-2);padding-right:var(--space-2)}.px-3{padding-left:var(--space-3);padding-right:var(--space-3)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.px-5{padding-left:var(--space-5);padding-right:var(--space-5)}.px-6{padding-left:var(--space-6);padding-right:var(--space-6)}.py-0{padding-top:0;padding-bottom:0}.py-1{padding-top:var(--space-1);padding-bottom:var(--space-1)}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.py-3{padding-top:var(--space-3);padding-bottom:var(--space-3)}.py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}.py-5{padding-top:var(--space-5);padding-bottom:var(--space-5)}.py-6{padding-top:var(--space-6);padding-bottom:var(--space-6)}.border{border:1px solid var(--color-border)}.border-t{border-top:1px solid var(--color-border)}.border-b{border-bottom:1px solid var(--color-border)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.bg-white{background-color:var(--color-background)}.bg-surface{background-color:var(--color-surface)}.bg-accent{background-color:var(--color-accent)}.bg-accent-light{background-color:var(--color-accent-light)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.hidden{display:none}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:-webkit-sticky;position:sticky}.z-0{z-index:var(--z-base)}.z-10{z-index:var(--z-dropdown)}.z-20{z-index:var(--z-sticky)}.z-30{z-index:var(--z-fixed)}.w-full{width:100%}.w-auto{width:auto}.max-w-sm{max-width:var(--container-sm)}.max-w-md{max-width:var(--container-md)}.max-w-lg{max-width:var(--container-lg)}.max-w-xl{max-width:var(--container-xl)}.max-w-4xl{max-width:56rem}.h-full{height:100%}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.transition-all{transition:all var(--transition-base)}.transition-colors{transition:color var(--transition-base),background-color var(--transition-base),border-color var(--transition-base)}.transition-transform{transition:transform var(--transition-base)}.scale-95{transform:scale(.95)}.scale-100{transform:scale(1)}.scale-105{transform:scale(1.05)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (min-width:640px){.sm\:block{display:block}.sm\:hidden{display:none}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:768px){.md\:block{display:block}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:1024px){.lg\:block{display:block}.lg\:hidden{display:none}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.btn{padding:10px 16px;border-radius:var(--border-radius-button);font-family:var(--font-label);font-size:14px;letter-spacing:.04em;box-shadow:0 1px 2px rgba(0,0,0,.06);transition:all .2s;border:1px solid transparent}.btn--primary{background:var(--color-accent);color:#fff}.btn--secondary{background:var(--color-success);color:#fff}.btn--accent{background:#c43366;color:#fff}.btn--ghost{background:#f8f3e1;color:var(--color-text);border-color:var(--color-border)}.btn--outline{background:transparent;color:var(--color-accent);border-color:var(--color-accent)}.card{background:#fff;border:1px solid var(--color-border);border-radius:8px;padding:24px;box-shadow:0 1px 2px rgba(0,0,0,.06)}.chip{display:inline-block;padding:4px 10px;border-radius:999px;background:#f2c84b;color:var(--color-text);font-family:var(--font-label);font-size:11px}.callout{padding:16px;border-radius:8px;border:1px solid rgba(42,111,77,.35);background:rgba(42,111,77,.1)}.callout--warning{border-color:#e3a008;background:rgba(227,160,8,.1)}.callout--danger{border-color:#b00020;background:rgba(176,0,32,.1)}.table{width:100%;border-collapse:collapse;font-family:var(--font-body);font-size:14px}.table thead th{background:#f8f3e1;padding:12px;text-align:left;font-family:var(--font-label);font-size:13px;letter-spacing:.05em}.table td{padding:12px;border-top:1px solid var(--color-border)}.table tbody tr:hover{background:hsla(47,62%,93%,.3)}.figcap{font-family:var(--font-label);font-size:var(--fs-xs);color:var(--color-text-tertiary);margin-top:var(--space-3)}.figcap strong{color:var(--color-accent)}body{margin:0;padding:0;background-color:var(--color-background)}