:root{--font-display:"Montserrat", "Segoe UI", Helvetica, Arial, sans-serif;--font-body:"Lato", "Segoe UI", Helvetica, Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, monospace}@font-face{font-family:Lato;font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/lato-italic-400-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lato;font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/lato-italic-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lato;font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/lato-normal-300-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lato;font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/lato-normal-300-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lato;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/lato-normal-400-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lato;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/lato-normal-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lato;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/lato-normal-700-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lato;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/lato-normal-700-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lato;font-style:normal;font-weight:900;font-display:swap;src:url(../fonts/lato-normal-900-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lato;font-style:normal;font-weight:900;font-display:swap;src:url(../fonts/lato-normal-900-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/montserrat-normal-400-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/montserrat-normal-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/montserrat-normal-500-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/montserrat-normal-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/montserrat-normal-600-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/montserrat-normal-600-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/montserrat-normal-700-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/montserrat-normal-700-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/montserrat-normal-800-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/montserrat-normal-800-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--navy-900:#10202e;--navy-800:#14242f;--navy-700:#1a2a3a;--navy-600:#2c4054;--navy-500:#47607a;--navy-400:#6d8299;--navy-300:#9fb0c0;--navy-200:#cbd5de;--navy-100:#e6ecf1;--sky-700:#0f63b8;--sky-600:#1b7de0;--sky-500:#4da3ff;--sky-400:#7bbcff;--sky-300:#a8d3ff;--sky-200:#d0e7ff;--sky-100:#eaf4ff;--grey-100:#f2f2f2;--grey-050:#f8f8f8;--grey-200:#e4e4e4;--grey-300:#d2d2d2;--grey-500:#8a8a8a;--grey-700:#5a5a5a;--white:#fff;--success-600:#1f7a4d;--success-100:#e6f4ec;--warning-600:#a86b00;--warning-100:#fdf3e0;--danger-600:#b3261e;--danger-100:#fbeae9;--mark-navy:#1b2a5b;--mark-blue:#1f6fd6;--color-primary:var(--navy-700);--color-primary-hover:var(--navy-800);--color-primary-active:var(--navy-900);--color-accent:var(--sky-500);--color-accent-strong:var(--sky-700);--color-accent-hover:var(--sky-600);--text-heading:var(--navy-700);--text-body:var(--navy-600);--text-muted:var(--navy-500);--text-inverse:var(--white);--text-inverse-muted:var(--navy-200);--text-link:var(--sky-700);--text-link-hover:var(--navy-700);--text-on-accent:var(--navy-700);--surface-page:var(--white);--surface-subtle:var(--grey-100);--surface-card:var(--white);--surface-inverse:var(--navy-700);--surface-accent-soft:var(--sky-100);--surface-disabled:var(--grey-100);--border-subtle:var(--grey-200);--border-default:var(--navy-200);--border-strong:var(--navy-700);--border-accent:var(--sky-500);--border-inverse:#ffffff38;--focus-ring:var(--sky-500);--text-3xs:11px;--text-2xs:12px;--text-xs:13px;--text-sm:15px;--text-base:17px;--text-md:19px;--text-lg:22px;--text-xl:26px;--text-2xl:32px;--text-3xl:40px;--text-4xl:50px;--text-5xl:62px;--leading-tight:1.08;--leading-snug:1.22;--leading-normal:1.5;--leading-relaxed:1.65;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-black:800;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.04em;--tracking-caps:.12em;--type-hero-family:var(--font-display);--type-hero-size:var(--text-4xl);--type-hero-weight:var(--weight-black);--type-hero-leading:var(--leading-tight);--type-hero-tracking:var(--tracking-tight);--type-h1-size:var(--text-3xl);--type-h2-size:var(--text-2xl);--type-h3-size:var(--text-xl);--type-h4-size:var(--text-lg);--type-body-family:var(--font-body);--type-body-size:var(--text-base);--type-body-leading:var(--leading-relaxed);--type-eyebrow-family:var(--font-display);--type-eyebrow-size:var(--text-2xs);--type-eyebrow-weight:var(--weight-bold);--type-eyebrow-tracking:var(--tracking-caps);--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--gutter:var(--space-6);--section-y:var(--space-20);--section-y-tight:var(--space-12);--card-pad:var(--space-6);--card-pad-lg:var(--space-8);--stack-tight:var(--space-2);--stack:var(--space-4);--stack-loose:var(--space-8);--container-narrow:720px;--container:1080px;--container-wide:1280px;--radius-none:0;--radius-xs:3px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-pill:999px;--radius-control:var(--radius-sm);--radius-card:var(--radius-lg);--radius-panel:var(--radius-lg);--radius-chip:var(--radius-pill);--shadow-none:none;--shadow-xs:0 1px 2px #1a2a3a0f;--shadow-sm:0 2px 6px #1a2a3a12;--shadow-md:0 6px 18px #1a2a3a17;--shadow-lg:0 16px 40px #1a2a3a1f;--shadow-inset-top:inset 0 1px 0 #ffffff14;--shadow-card:var(--shadow-sm);--shadow-card-hover:var(--shadow-md);--shadow-panel:var(--shadow-lg);--ring-focus:0 0 0 3px #4da3ff73;--gradient-navy-panel:linear-gradient(180deg, #22344a, #1a2a3a 62%, #16242f);--gradient-page-wash:linear-gradient(180deg, #fff, #f8f8f8);--gradient-accent-rule:linear-gradient(90deg, var(--sky-500) 0%, var(--navy-700) 100%);--duration-instant:90ms;--duration-fast:.14s;--duration-base:.2s;--duration-slow:.32s;--ease-out:cubic-bezier(.22, .61, .36, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--transition-control:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);--transition-card:box-shadow var(--duration-base) var(--ease-out), transform var(--duration-base) var(--ease-out)}*,:after,:before{box-sizing:border-box}body{font-family:var(--type-body-family);font-size:var(--type-body-size);line-height:var(--type-body-leading);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased;text-wrap:pretty;margin:0}h1,h2,h3,h4,h5{font-family:var(--font-display);color:var(--text-heading);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);margin:0 0 var(--space-4)}h1{font-size:var(--type-h1-size);font-weight:var(--weight-black);line-height:var(--leading-tight)}h2{font-size:var(--type-h2-size)}h2,h3{font-weight:var(--weight-bold)}h3{font-size:var(--type-h3-size)}h4{font-size:var(--type-h4-size);font-weight:var(--weight-semibold)}p{margin:0 0 var(--space-4)}a{color:var(--text-link);border-bottom:1px solid var(--sky-300);transition:var(--transition-control);text-decoration:none}a:hover{color:var(--text-link-hover);border-bottom-color:var(--navy-700)}strong{font-weight:var(--weight-bold);color:var(--text-heading)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}body{background:var(--surface-page)}.site-head{z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-subtle);background:#ffffffeb;position:sticky;top:0}.site-head-in{max-width:var(--container-wide);align-items:center;gap:clamp(16px,3vw,32px);height:76px;margin:0 auto;padding:0 clamp(20px,4vw,32px);display:flex}.site-nav{gap:clamp(14px,2vw,24px);display:flex}.site-burger{all:unset;border-radius:var(--radius-sm);cursor:pointer;width:40px;height:40px;color:var(--color-primary);justify-content:center;align-items:center;display:none}.site-head-cta{display:flex}@media (width<=600px){.site-head-cta{display:none}}@media (width<=860px){.site-nav{background:var(--white);border-bottom:1px solid var(--border-subtle);flex-direction:column;gap:0;padding:8px clamp(20px,4vw,32px) 16px;display:none;position:absolute;top:76px;left:0;right:0}.site-nav.open{display:flex}.site-nav a{padding:12px 0;border-bottom:1px solid var(--border-subtle)!important}.site-burger{display:inline-flex}}.hero-grid{grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(32px,5vw,64px);display:grid}.hero-grid>*{min-width:0}@media (width<=900px){.hero-grid{grid-template-columns:1fr}}.ui-btn,button{max-width:100%;white-space:normal!important}.example-grid{gap:var(--space-4);grid-template-columns:repeat(3,1fr);display:grid}.example-tile{box-sizing:border-box;cursor:pointer;gap:var(--space-4);min-height:128px;padding:var(--space-5);background:var(--white);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-card);color:inherit;transition:var(--transition-card),border-color var(--duration-fast) var(--ease-out);flex-direction:column;text-decoration:none;display:flex}.example-tile:hover{box-shadow:var(--shadow-card-hover);border-color:var(--color-accent);transform:translateY(-2px)}.example-tile:focus-visible{box-shadow:var(--ring-focus);outline:none}@media (width<=900px){.example-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.example-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.example-tile{transition:none}.example-tile:hover{transform:none}}.retainer-band{grid-template-columns:1fr auto;align-items:start;gap:clamp(24px,4vw,56px);display:grid}@media (width<=760px){.retainer-band{grid-template-columns:1fr}}.retainer-list{gap:var(--space-3) var(--space-6);grid-template-columns:repeat(2,1fr);display:grid}@media (width<=900px){.retainer-list{grid-template-columns:1fr}}.portrait-frame{aspect-ratio:4/5;border-radius:var(--radius-card);background:var(--grey-200);border:1px solid var(--border-subtle);width:100%;max-width:320px;box-shadow:var(--shadow-card);justify-content:center;align-items:center;display:flex;overflow:hidden}.portrait-frame img,.portrait-frame picture{width:100%;height:100%;display:block}.portrait-frame img{-o-object-fit:cover;object-fit:cover}.anchor-target{scroll-margin-top:92px}.skip-link{z-index:100;background:var(--color-primary);color:var(--text-inverse);border-radius:0 0 var(--radius-sm) 0;font-family:var(--font-display);padding:12px 20px;font-weight:700;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}.ui-btn:not(.ui-btn--disabled):active{transform:translateY(1px)}.ui-btn--primary:not(.ui-btn--disabled):hover{background:var(--color-primary-hover)!important;border-color:var(--color-primary-hover)!important}.ui-btn--accent:not(.ui-btn--disabled):hover{background:var(--sky-400)!important;border-color:var(--sky-400)!important}.ui-btn--secondary:not(.ui-btn--disabled):hover{background:var(--grey-050)!important;border-color:var(--color-primary)!important}.ui-btn--ghost:not(.ui-btn--disabled):hover{background:var(--surface-accent-soft)!important}.ui-btn--inverse:not(.ui-btn--disabled):hover{background:var(--sky-100)!important;border-color:var(--sky-100)!important}.ui-btn:focus-visible{box-shadow:var(--ring-focus);outline:none}.ui-card--interactive:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){.ui-card--interactive:hover{transform:none}}
