@font-face{font-family:Fraunces;font-style:italic;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c56fbb5486862d1b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:italic;font-weight:100 900;font-display:swap;src:url(/_next/static/media/bd7a9b1ce2297c14-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Fraunces;font-style:italic;font-weight:100 900;font-display:swap;src:url(/_next/static/media/45d0fdf0988e07ff-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7452ca4a93358909-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e0ecb571b51ea3b5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/6e8c7cb283336a9d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces Fallback;src:local("Times New Roman");ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.00%;size-adjust:115.45%}.__className_35b0e9{font-family:Fraunces,Fraunces Fallback}.__variable_35b0e9{--font-fraunces:"Fraunces","Fraunces Fallback"}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans Fallback;src:local("Arial");ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.00%;size-adjust:101.17%}.__className_1bc20f{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.__variable_1bc20f{--font-ibm-plex:"IBM Plex Sans","IBM Plex Sans Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_82b921{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_82b921{--font-jetbrains:"JetBrains Mono","JetBrains Mono Fallback"}

/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--default-font-family:var(--font-sans);--default-mono-font-family:var(--brand-font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sticky{position:sticky}.block{display:block}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.italic{font-style:italic}}:root,[data-theme=light]{--brand-primary:#22648d;--brand-primary-dk:#143c5a;--brand-primary-lt:#e8f1f6;--brand-accent:#c8a96e;--brand-on-accent:#2b2110;--brand-bg:#f4f6f8;--brand-surface:#fff;--brand-surface-2:#edf1f5;--brand-ink:#0b1f2e;--brand-muted:#5a6b78;--brand-border:#dce4ea;--brand-glow:#c8a96e80;--brand-glass:#ffffffb8;--brand-glass-border:#0b1f2e1a;--brand-shadow:0 10px 34px #0b1f2e1f;--brand-hero-grad:linear-gradient(135deg,#22648d,#143c5a);--brand-cv-dot:34,100,141;--brand-cv-link:160,124,62;--brand-cv-alpha:.85;--brand-r:10px;--brand-r-lg:16px;--brand-r-xl:22px;--brand-pill:999px;--brand-font-display:"Fraunces",Georgia,serif;--brand-font-body:"IBM Plex Sans",system-ui,sans-serif;--brand-font-mono:"JetBrains Mono",Consolas,monospace;--brand-ease-out:cubic-bezier(.23,1,.32,1);--brand-ease-in-out:cubic-bezier(.77,0,.175,1);--brand-ease:ease;--brand-ease-drawer:cubic-bezier(.32,.72,0,1)}.dark,[data-theme=dark]{--brand-primary:#2d6bff;--brand-primary-dk:#1652f0;--brand-primary-lt:#2d6bff2e;--brand-accent:#22d3ee;--brand-on-accent:#04121a;--brand-bg:#0a0e1a;--brand-surface:#10172a;--brand-surface-2:#0c1322;--brand-ink:#f2f5fa;--brand-muted:#94a3b8;--brand-border:#1e2a44;--brand-glow:#2d6bff80;--brand-glass:#10172a9e;--brand-glass-border:#f2f5fa1a;--brand-shadow:0 12px 44px #0000008c;--brand-hero-grad:radial-gradient(circle at 72% 26%,#17284f 0%,#0a0e1a 70%);--brand-cv-dot:34,211,238;--brand-cv-link:45,107,255;--brand-cv-alpha:.75}:root{--ink:var(--brand-ink);--ink-soft:var(--brand-muted);--ink-muted:var(--brand-muted);--line:var(--brand-border);--surface:var(--brand-surface);--surface-soft:var(--brand-surface-2);--surface-tint:var(--brand-primary-lt);--accent:var(--brand-accent);--radius:var(--brand-r)}.cst :focus-visible,.m-btn:focus-visible,a.cst-focus:focus-visible{outline:3px solid var(--brand-primary);outline-offset:3px}.rv{opacity:0;transition:opacity .65s var(--brand-ease-out) var(--rv-d,0s),transform .65s var(--brand-ease-out) var(--rv-d,0s);transform:translateY(16px)}.rv.in{opacity:1;transform:none}.rv--zoom{transform:translateY(10px)scale(.965)}.rv--zoom.in{transform:none}.rv--left{transform:translate(-22px)}.rv--left.in{transform:none}.lr,.lr__l{display:block}.lr__l{opacity:0;transition:opacity .55s var(--brand-ease-out) var(--lr-d,0s),transform .55s var(--brand-ease-out) var(--lr-d,0s);transform:translateY(.5em)}.lr.in .lr__l{opacity:1;transform:none}.hl{position:relative}.hl:after{content:"";background:var(--brand-accent);transform-origin:0;height:.14em;transition:transform .5s var(--brand-ease-out);position:absolute;bottom:.04em;left:0;right:0;transform:scaleX(0)}.hl.in:after{transform:scaleX(1)}.m-btn{border-radius:var(--brand-r);font-size:.88rem;font-weight:600;font-family:var(--brand-font-body);border:2px solid var(--brand-primary);color:var(--brand-primary);transition:transform .15s var(--brand-ease),background .15s var(--brand-ease),border-color .15s var(--brand-ease),color .15s var(--brand-ease),filter .15s var(--brand-ease);background:0 0;align-items:center;gap:8px;padding:12px 22px;display:inline-flex;position:relative}.m-btn:active{transform:scale(.97)}.m-btn--accent{background:var(--brand-accent);color:var(--brand-on-accent);border-color:var(--brand-accent)}.m-btn .arr{transition:transform .18s var(--brand-ease-out)}.glass{border-radius:var(--brand-r-lg);background:var(--brand-glass);border:1px solid var(--brand-glass-border);transition:transform .25s var(--brand-ease-out),border-color .25s var(--brand-ease);padding:24px;position:relative;overflow:hidden}@supports ((-webkit-backdrop-filter:blur(12px)) or (backdrop-filter:blur(12px))){.glass{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}}.glass:before{border-radius:inherit;background:linear-gradient(135deg,var(--brand-primary),var(--brand-accent));padding:1px;inset:-1px;-webkit-mask-image:linear-gradient(currentColor 0 0),linear-gradient(currentColor 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.glass:after,.glass:before{content:"";pointer-events:none;opacity:0;transition:opacity .3s var(--brand-ease);position:absolute}.glass:after{background:var(--brand-glow);filter:blur(46px);width:130px;height:130px;border-radius:50%;top:-50px;right:-40px}.grain{pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");position:absolute;inset:0}.dark .grain,[data-theme=dark] .grain{opacity:.07;mix-blend-mode:overlay}.watermark{font-family:var(--brand-font-display);letter-spacing:-.02em;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;color:#0000;-webkit-text-stroke:1px var(--brand-primary);font-size:clamp(6rem,17vw,11.5rem);font-weight:700;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-52%)}@supports (color:color-mix(in lab,red,red)){.watermark{-webkit-text-stroke:1px color-mix(in srgb,var(--brand-primary) 26%,transparent)}}.hud{z-index:10;border-radius:var(--brand-r-lg);background:var(--brand-glass);border:1px solid var(--brand-glass-border);gap:7px;padding:14px 18px;display:grid;position:absolute;bottom:26px;right:30px}@supports ((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){.hud{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}}.hud__row{font:500 .68rem var(--brand-font-mono);color:var(--brand-muted);align-items:baseline;gap:10px;display:flex}.hud__row b{color:var(--brand-ink);font-variant-numeric:tabular-nums;text-align:right;min-width:64px;font-size:.92rem;font-weight:600}.hud__dot{background:var(--brand-accent);width:5px;height:5px;animation:cst-pulse 2.4s var(--brand-ease-in-out) infinite;border-radius:50%;flex-shrink:0}.hud__row:nth-child(2) .hud__dot{animation-delay:.8s}.hud__row:nth-child(3) .hud__dot{animation-delay:1.6s}@keyframes cst-pulse{0%,to{opacity:1}50%{opacity:.25}}.pin__title{align-self:start;position:sticky;top:24px}.pin__rail{gap:6px;display:flex}.pin__rail i{background:var(--brand-surface-2);border:1px solid var(--brand-border);border-radius:99px;width:34px;height:4px;position:relative;overflow:hidden}.pin__rail i:after{content:"";background:var(--brand-accent);transform-origin:0;transition:transform .45s var(--brand-ease-out);position:absolute;inset:0;transform:scaleX(0)}.pin__rail i.on:after{transform:scaleX(1)}.pin__step{border-radius:var(--brand-r-xl);background:var(--brand-surface);border:1px solid var(--brand-border);opacity:.42;min-height:208px;transition:opacity .45s var(--brand-ease),transform .45s var(--brand-ease-out),border-color .45s var(--brand-ease);padding:26px 28px;transform:scale(.985)}@supports ((-webkit-backdrop-filter:blur(12px)) or (backdrop-filter:blur(12px))){.pin__step{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}}.pin__step.on{opacity:1;border-color:var(--brand-accent);transform:none}@supports (color:color-mix(in lab,red,red)){.pin__step.on{border-color:color-mix(in srgb,var(--brand-accent) 45%,var(--brand-border))}}canvas.constellation{width:100%;height:100%;position:absolute;inset:0}.cv-veil{pointer-events:none;background:linear-gradient(180deg,transparent 38%,var(--brand-bg) 97%);position:absolute;inset:0}@media (hover:hover) and (pointer:fine){.m-btn:active{transform:scale(.97)}.m-btn:hover{background:var(--brand-primary-lt)}.m-btn--accent:hover{filter:brightness(1.06);background:var(--brand-accent);transform:translateY(-1px)}.m-btn:hover .arr{transform:translate(3px)}.glass:hover{transform:translateY(-4px)}.glass:hover:after,.glass:hover:before{opacity:1}}@media (prefers-reduced-motion:reduce){.rv,.rv--left,.rv--zoom{transition:opacity .3s var(--brand-ease);transform:none}.lr__l{transition:none;transform:none}.hl:after{transition:opacity .3s var(--brand-ease);opacity:0;transform:scaleX(1)}.hl.in:after{opacity:.55}.hud__dot{animation:none}.pin__step{transform:none}}@media print{.grain,.hud,.watermark,canvas.constellation{display:none}}:root{--brand-font-display:var(--font-fraunces),Georgia,serif;--brand-font-body:var(--font-ibm-plex),system-ui,sans-serif;--brand-font-mono:var(--font-jetbrains),Consolas,monospace}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--brand-bg);color:var(--brand-ink);font-family:var(--brand-font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .45s var(--brand-ease-out),color .45s var(--brand-ease-out);margin:0;font-size:1rem;line-height:1.62}h1,h2,h3{font-family:var(--brand-font-display);letter-spacing:-.02em;text-wrap:balance;margin:0;font-weight:600;line-height:1.08}p{margin:0}::selection{background:var(--brand-accent);color:var(--brand-on-accent)}a{color:inherit}:focus-visible{outline:3px solid var(--brand-primary);outline-offset:3px;border-radius:4px}.cst-contact :focus-visible,.cst-hero :focus-visible{outline-color:#fff}.skip-link{z-index:100;background:var(--brand-primary);color:#fff;border-radius:var(--brand-r);transition:top .15s var(--brand-ease-out);padding:.75rem 1.25rem;font-weight:600;text-decoration:none;position:absolute;top:-100px;left:1rem}.skip-link:focus-visible{top:1rem}.shell{width:100%;max-width:1180px;margin-inline:auto;padding-inline:clamp(1.25rem,5vw,2.5rem)}.cst-section{padding-block:clamp(4.5rem,10vw,8rem)}.cst-h2{color:var(--brand-ink);font-size:clamp(1.9rem,4vw,3rem)}.cst-lead{max-width:60ch;color:var(--brand-muted);margin-top:1.1rem;font-size:clamp(1.05rem,1.6vw,1.2rem)}.cst-em{color:inherit;font-style:italic}.m-btn{min-height:44px}.cst-hero{isolation:isolate;background:var(--brand-hero-grad);--hero-ink:#fff;--hero-soft:#ffffffd1;flex-direction:column;min-height:min(100svh,940px);display:flex;position:relative;overflow:hidden}.cst-canvas{z-index:0;width:100%;height:100%;position:absolute;inset:0}.cst-hero .cv-veil{z-index:1}.cst-hero .watermark{z-index:2}.cst-hero__nav{z-index:4;justify-content:space-between;align-items:center;gap:1.5rem;padding-block:clamp(1.1rem,2.4vw,1.6rem);display:flex;position:relative}.cst-nav__brand{color:var(--hero-ink);font-size:1.3rem;text-decoration:none}.cst-brand{font-family:var(--brand-font-display);letter-spacing:-.02em;font-weight:600}.cst-brand__accent{color:var(--brand-accent)}.cst-nav__links{gap:clamp(1rem,2.5vw,2rem);display:flex}.cst-nav__link{color:var(--hero-soft);transition:color .18s var(--brand-ease);font-size:.92rem;font-weight:500;text-decoration:none}.cst-nav__link:hover{color:var(--hero-ink)}.cst-nav__actions{align-items:center;gap:.75rem;display:flex}@media (max-width:860px){.cst-nav__links{display:none}}.cst-hero__content{z-index:3;max-width:60rem;padding-block:clamp(2.5rem,8vh,5.5rem);position:relative}.cst-hero__title{font-family:var(--brand-font-display);color:var(--hero-ink);letter-spacing:-.025em;font-size:clamp(2.5rem,6.2vw,4.6rem);font-weight:600;line-height:1.04}.cst-hero__title .hl:after{height:.1em;bottom:.02em}.cst-hero__lead{max-width:46ch;color:var(--hero-soft);margin-top:1.6rem;font-size:clamp(1.08rem,1.7vw,1.3rem);line-height:1.55}.cst-hero__cta{flex-wrap:wrap;gap:.9rem;margin-top:2.2rem;display:flex}.cst-contact .m-btn:not(.m-btn--accent),.cst-hero .m-btn:not(.m-btn--accent){color:var(--hero-ink,#fff);background:0 0;border-color:#ffffff80}@media (hover:hover) and (pointer:fine){.cst-contact .m-btn:not(.m-btn--accent):hover,.cst-hero .m-btn:not(.m-btn--accent):hover{background:#ffffff1f}}.cst-toggle{border-radius:var(--brand-pill);width:44px;height:44px;color:var(--hero-ink,var(--brand-ink));background:var(--brand-glass);border:1px solid var(--brand-glass-border);cursor:pointer;transition:transform .15s var(--brand-ease),filter .15s var(--brand-ease);justify-content:center;align-items:center;display:inline-flex}@supports ((-webkit-backdrop-filter:blur(8px)) or (backdrop-filter:blur(8px))){.cst-toggle{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}.cst-toggle:hover{filter:brightness(1.12)}.cst-toggle:active{transform:scale(.94)}@media (max-width:760px){.cst-hero .hud{display:none}}.cst-diff__intro{max-width:46rem}.cst-diff__cols{grid-template-columns:1fr;gap:1.25rem;margin-top:clamp(2.5rem,5vw,3.5rem);display:grid}@media (min-width:880px){.cst-diff__cols{grid-template-columns:.9fr 1.1fr;align-items:stretch}}.cst-diff__col{border-radius:var(--brand-r-xl);padding:clamp(1.5rem,3vw,2.2rem)}.cst-diff__col--against{background:var(--brand-surface-2);border:1px dashed var(--brand-border)}.cst-diff__col--for{border-radius:var(--brand-r-xl)}.cst-diff__tag{font:600 .72rem var(--brand-font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--brand-muted);margin-bottom:1.1rem}.cst-diff__tag--for{color:var(--brand-primary)}.cst-diff__list{gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.cst-diff__list li{padding-left:1.6rem;line-height:1.5;position:relative}.cst-diff__col--against li{color:var(--brand-muted)}.cst-diff__col--against li:before{content:"—";color:var(--brand-muted);position:absolute;left:0}.cst-diff__col--for li{color:var(--brand-ink);font-weight:450}.cst-diff__col--for li:before{content:"";background:var(--brand-accent);border-radius:3px;width:.7rem;height:.7rem;position:absolute;top:.55em;left:0}.cst-method{background:var(--brand-surface-2)}.cst-method__grid{grid-template-columns:1fr;gap:clamp(2rem,5vw,4rem);display:grid}@media (min-width:900px){.cst-method__grid{grid-template-columns:.85fr 1.15fr}}.cst-method__aside .pin__title{gap:1.1rem;display:grid}.cst-method .pin__rail{margin-top:.5rem}.cst-method__steps{gap:1.1rem;margin:0;padding:0;list-style:none;display:grid}.cst-step__n{font:600 .8rem var(--brand-font-mono);color:var(--brand-accent);letter-spacing:.05em}.cst-step__title{color:var(--brand-ink);margin-top:.5rem;font-size:clamp(1.2rem,2vw,1.5rem)}.cst-step__body{color:var(--brand-muted);max-width:52ch;margin-top:.6rem;line-height:1.55}.cst-work__intro{max-width:46rem}.cst-work__grid{grid-template-columns:1fr;gap:clamp(1.5rem,3vw,2.2rem);margin-top:clamp(2.5rem,5vw,3.5rem);display:grid}@media (min-width:820px){.cst-work__grid{grid-template-columns:repeat(2,1fr)}}.cst-case{margin:0}.cst-case__frame{border-radius:var(--brand-r-lg);border:1px solid var(--brand-border);background:var(--brand-surface);box-shadow:var(--brand-shadow);aspect-ratio:16/10;position:relative;overflow:hidden}.cst-case__img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.cst-case__badge{z-index:2;border-radius:var(--brand-pill);font:600 .66rem var(--brand-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--brand-on-accent);background:var(--brand-accent);padding:.25rem .6rem;position:absolute;top:.8rem;left:.8rem}.cst-case__cap{margin-top:1.1rem}.cst-case__name{font-family:var(--brand-font-display);color:var(--brand-ink);font-size:1.25rem;font-weight:600}.cst-case__metier{font:500 .82rem var(--brand-font-mono);color:var(--brand-primary);margin-top:.15rem}.cst-case__note{color:var(--brand-muted);max-width:44ch;margin-top:.7rem;line-height:1.5}.cst-contact{background:linear-gradient(135deg,var(--brand-primary),var(--brand-primary-dk));color:#fff}.cst-contact__inner{text-align:center;max-width:48rem;margin-inline:auto}.cst-contact__title{color:#fff}.cst-contact__lead{color:#ffffffdb;margin-inline:auto}.cst-contact__actions{flex-wrap:wrap;justify-content:center;gap:.9rem;margin-top:2.2rem;display:flex}.cst-footer{background:var(--brand-surface);border-top:1px solid var(--brand-border);padding-block:clamp(2.5rem,5vw,3.5rem)}.cst-footer__inner{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.5rem 2.5rem;display:flex}.cst-lockup{color:var(--brand-ink);align-items:baseline;gap:.5rem;font-size:1.2rem;display:inline-flex}.cst-lockup__baseline,.cst-lockup__sep{color:var(--brand-muted)}.cst-lockup__baseline{font:500 .85rem var(--brand-font-mono)}.cst-footer__tag{color:var(--brand-muted);max-width:36ch;margin-top:.6rem}.cst-footer__nav{flex-wrap:wrap;gap:.6rem 1.4rem;display:flex}.cst-footer__nav a{color:var(--brand-muted);transition:color .18s var(--brand-ease);font-size:.92rem;text-decoration:none}.cst-footer__nav a:hover{color:var(--brand-ink)}.cst-footer__legal{border-top:1px solid var(--brand-border);color:var(--brand-muted);flex-wrap:wrap;justify-content:space-between;gap:.4rem 1.5rem;margin-top:clamp(1.5rem,4vw,2.5rem);padding-top:1.2rem;font-size:.8rem;display:flex}.cst-footer__legal-links{flex-wrap:wrap;gap:.5rem 1.2rem;display:flex}.cst-footer__legal-links a{color:var(--brand-muted);transition:color .18s var(--brand-ease);text-decoration:none}.cst-footer__legal-links a:hover{color:var(--brand-ink)}.cst-legal{min-height:100svh;padding-bottom:clamp(3rem,8vw,6rem)}.cst-legal__bar{border-bottom:1px solid var(--brand-border);justify-content:space-between;align-items:center;padding-block:clamp(1.1rem,2.4vw,1.6rem);display:flex}.cst-legal__home{color:var(--brand-ink);font-size:1.3rem;text-decoration:none}.cst-legal__body{max-width:46rem;padding-top:clamp(2.5rem,6vw,4rem)}.cst-legal__back{color:var(--brand-primary);margin-bottom:1.5rem;font-size:.9rem;text-decoration:none;display:inline-block}.cst-legal__back:hover{text-decoration:underline}.cst-legal__title{color:var(--brand-ink);font-size:clamp(2rem,4vw,3rem)}.cst-legal__updated{font:500 .82rem var(--brand-font-mono);color:var(--brand-muted);margin-top:.6rem}.cst-legal__prose{margin-top:2.5rem}.cst-legal__prose h2{color:var(--brand-ink);margin-top:2.2rem;font-size:1.25rem}.cst-legal__prose h2:first-child{margin-top:0}.cst-legal__prose p{color:var(--brand-ink);max-width:70ch;margin-top:.7rem;line-height:1.65}.cst-legal__prose a{color:var(--brand-primary);text-underline-offset:2px;text-decoration:underline}:root:not(.js) .lr__l,:root:not(.js) .rv,:root:not(.js) .rv--left,:root:not(.js) .rv--zoom{opacity:1!important;transform:none!important}:root:not(.js) .hl:after{transform:scaleX(1)}:root:not(.js) .pin__step{opacity:1!important;transform:none!important}.am{width:100%;position:relative}.am__svg{width:100%;height:auto;display:block;overflow:visible}.am__source{opacity:.6;animation:am-breathe 7s var(--brand-ease-in-out) infinite}.am__stars circle{fill:var(--brand-primary);opacity:.18;animation:am-twinkle 5s var(--brand-ease-in-out) infinite;animation-delay:var(--d,0s)}.am__link{stroke:var(--brand-primary);stroke-width:1.4px;stroke-opacity:.26;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;animation:am-draw .9s var(--brand-ease-out) var(--d,0s) forwards;transition:stroke-opacity .3s var(--brand-ease),stroke .3s var(--brand-ease)}.am__link.is-on{stroke:var(--brand-accent);stroke-opacity:.95;stroke-width:1.8px}.am__node{cursor:pointer;transition:opacity .35s var(--brand-ease);outline:none}.am__node.is-dim{opacity:.3}.am__drift{transform-box:fill-box;transform-origin:50%;animation:am-float 9s var(--brand-ease-in-out) var(--d,0s) infinite;transition:scale .28s var(--brand-ease-out)}.am__node.is-active .am__drift{scale:1.18}.am__dot{fill:var(--brand-primary);transition:fill .3s var(--brand-ease)}.am__node--socle .am__dot,.am__node--web .am__dot,.am__node.is-active .am__dot{fill:var(--brand-accent)}.am__ring{fill:none;stroke:var(--brand-accent);stroke-width:1.3px;stroke-opacity:.5}.am__halo{fill:var(--brand-accent);opacity:0;transition:opacity .3s var(--brand-ease)}.am__node.is-active .am__halo{opacity:.22}.am__label{fill:var(--brand-ink);font:600 16px var(--brand-font-display);letter-spacing:-.01em;pointer-events:none}.am__code{fill:var(--brand-muted);font:500 10.5px var(--brand-font-mono);letter-spacing:.08em;text-transform:uppercase;opacity:.78;pointer-events:none}.am__node:focus-visible .am__dot{stroke:var(--brand-accent);stroke-width:3px;paint-order:stroke}.am__detail{flex-wrap:wrap;align-items:baseline;gap:.45rem .9rem;min-height:3.4em;margin-top:clamp(1rem,2.5vw,1.6rem);font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.5;display:flex}.am__detail-code{font:600 .7rem var(--brand-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--brand-accent);border:1px solid var(--brand-accent);border-radius:var(--brand-pill);padding:.18rem .55rem}.am__detail-label{color:var(--brand-ink);font-weight:600}.am__detail-blurb,.am__detail-hint{color:var(--brand-muted)}.am__detail-hint{max-width:62ch}@keyframes am-draw{to{stroke-dashoffset:0}}@keyframes am-breathe{0%,to{opacity:.45}50%{opacity:.8}}@keyframes am-twinkle{0%,to{opacity:.14}50%{opacity:.55}}@keyframes am-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media (prefers-reduced-motion:reduce){.am__drift,.am__source,.am__stars circle{animation:none}.am__stars circle{opacity:.4}.am__link{stroke-dashoffset:0;animation:none}}@media (max-width:640px){.am__label{font-size:19px}.am__code{display:none}}.am-scene{isolation:isolate;background:var(--brand-hero-grad);border:1px solid var(--brand-glass-border);border-radius:var(--brand-r-xl);padding:clamp(1.5rem,4vw,3.25rem) clamp(1rem,3vw,2.5rem);position:relative;overflow:hidden}.am-scene .am__label{fill:#fff}.am-scene .am__code{fill:#ffffff94}.am-scene .am__link{stroke:#fff;stroke-opacity:.16}.am-scene .am__link.is-on{stroke:var(--brand-accent);stroke-opacity:.95}.am-scene .am__stars circle{fill:#fff}.am-scene .am__detail-label{color:#fff}.am-scene .am__detail-blurb{color:#ffffffbd}.am-scene .am__detail-hint{color:#ffffffb8}.cst-hero__kicker{font:500 .8rem var(--brand-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--hero-soft);margin-bottom:1.1rem}.cst-acts__intro,.cst-eco__intro{max-width:46rem}.cst-acts__grid{grid-template-columns:1fr;gap:clamp(1.25rem,3vw,2rem);margin-top:clamp(2.5rem,5vw,3.5rem);display:grid}@media (min-width:820px){.cst-acts__grid{grid-template-columns:repeat(2,1fr)}}.cst-act{border-radius:var(--brand-r-xl);flex-direction:column;display:flex}.cst-act__eyebrow{font:600 .72rem var(--brand-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--brand-primary);margin-bottom:.9rem}.cst-act__title{color:var(--brand-ink);font-size:clamp(1.4rem,2.4vw,1.95rem)}.cst-act__lead{color:var(--brand-muted);margin-top:.8rem;line-height:1.55}.cst-act__points{gap:.65rem;margin:1.4rem 0 0;padding:0;list-style:none;display:grid}.cst-act__points li{color:var(--brand-ink);padding-left:1.5rem;line-height:1.45;position:relative}.cst-act__points li:before{content:"";background:var(--brand-accent);border-radius:3px;width:.62rem;height:.62rem;position:absolute;top:.5em;left:0}.cst-act__cta{color:var(--brand-primary);align-items:center;gap:.4rem;margin-top:auto;padding-top:1.6rem;font-weight:600;text-decoration:none;display:inline-flex}.cst-act__cta .arr{transition:transform .18s var(--brand-ease-out)}@media (hover:hover) and (pointer:fine){.cst-act__cta:hover .arr{transform:translate(4px)}}.cst-about__inner{max-width:52rem}.cst-about__body{gap:1.1rem;margin-top:1.5rem;display:grid}.cst-about__p{color:var(--brand-ink);font-size:clamp(1.05rem,1.5vw,1.2rem);line-height:1.7}.cst-about__signature{font-family:var(--brand-font-display);color:var(--brand-primary);letter-spacing:-.015em;max-width:24ch;margin-top:2.2rem;font-size:clamp(1.35rem,2.6vw,2.1rem);line-height:1.22}.cst-about__signature .cst-em{color:inherit}.cst-header{z-index:50;background:var(--brand-bg);position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.cst-header{background:color-mix(in srgb,var(--brand-bg) 86%,transparent)}}.cst-header{border-bottom:1px solid var(--brand-border)}@supports ((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){.cst-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}}.cst-header__nav{justify-content:space-between;align-items:center;gap:1.5rem;padding-block:clamp(.8rem,1.8vw,1.15rem);display:flex}.cst-header .cst-nav__brand{color:var(--brand-ink);font-size:1.3rem;text-decoration:none}.cst-header__links{gap:clamp(1rem,2.5vw,2rem);display:flex}.cst-header__link{color:var(--brand-muted);transition:color .18s var(--brand-ease);font-size:.92rem;font-weight:500;text-decoration:none}.cst-header .cst-toggle,.cst-header__link:hover{color:var(--brand-ink)}@media (max-width:760px){.cst-header__links{display:none}}.cst-pagehero{padding-block:clamp(2.8rem,7vw,5rem) clamp(1.2rem,3vw,2rem)}.cst-pagehero__title{color:var(--brand-ink);letter-spacing:-.025em;max-width:20ch;font-size:clamp(2.2rem,5vw,3.8rem)}.cst-pagehero__lead{max-width:54ch;color:var(--brand-muted);margin-top:1.3rem;font-size:clamp(1.1rem,1.7vw,1.3rem);line-height:1.55}.cst-modules__intro{max-width:46rem}.cst-modules__grid{grid-template-columns:1fr;gap:clamp(1rem,2.5vw,1.5rem);margin-top:clamp(2.5rem,5vw,3.5rem);display:grid}@media (min-width:720px){.cst-modules__grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1040px){.cst-modules__grid{grid-template-columns:repeat(3,1fr)}}.cst-module{border-radius:var(--brand-r-lg);background:var(--brand-surface);border:1px solid var(--brand-border);transition:border-color .25s var(--brand-ease),transform .25s var(--brand-ease-out);padding:clamp(1.3rem,2.5vw,1.7rem)}@media (hover:hover) and (pointer:fine){.cst-module:hover{border-color:var(--brand-accent);transform:translateY(-3px)}@supports (color:color-mix(in lab,red,red)){.cst-module:hover{border-color:color-mix(in srgb,var(--brand-accent) 40%,var(--brand-border))}}}.cst-module__head{justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.cst-module__name{color:var(--brand-ink);font-size:1.15rem}.cst-module__statut{font:600 .62rem var(--brand-font-mono);letter-spacing:.05em;text-transform:uppercase;border-radius:var(--brand-pill);white-space:nowrap;flex-shrink:0;padding:.22rem .5rem}.cst-module__statut--prod{color:var(--brand-on-accent);background:var(--brand-accent)}.cst-module__statut--interne{color:var(--brand-primary);border:1px solid var(--brand-primary)}.cst-module__statut--chantier,.cst-module__statut--proto{color:var(--brand-muted);border:1px dashed var(--brand-border)}.cst-module__body{color:var(--brand-muted);margin-top:.9rem;line-height:1.5}.cst-form__wrapper{max-width:44rem}.cst-form{gap:1.4rem;display:grid}.cst-form__hp{opacity:0;pointer-events:none;height:0;position:absolute;overflow:hidden}.cst-form__field{gap:.45rem;display:grid}.cst-form__label{color:var(--brand-ink);font-size:.92rem;font-weight:500}.cst-form__req{color:var(--brand-primary);margin-left:.15em}.cst-form__opt{color:var(--brand-muted);font-size:.85em;font-weight:400}.cst-form__input,.cst-form__textarea{background:var(--brand-surface);border:1.5px solid var(--brand-border);border-radius:var(--brand-r);width:100%;min-height:44px;color:var(--brand-ink);font-family:var(--brand-font-body);transition:border-color .18s var(--brand-ease),box-shadow .18s var(--brand-ease);box-sizing:border-box;padding:.65rem .85rem;font-size:1rem;line-height:1.5}.cst-form__input::placeholder,.cst-form__textarea::placeholder{color:var(--brand-muted);opacity:.7}.cst-form__input:focus,.cst-form__textarea:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px var(--brand-primary);outline:none}@supports (color:color-mix(in lab,red,red)){.cst-form__input:focus,.cst-form__textarea:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-primary) 22%,transparent)}}.cst-form__input[aria-invalid=true],.cst-form__textarea[aria-invalid=true]{border-color:var(--brand-error,#c0392b)}.cst-form__input[aria-invalid=true]:focus,.cst-form__textarea[aria-invalid=true]:focus{box-shadow:0 0 0 3px var(--brand-error,#c0392b)}@supports (color:color-mix(in lab,red,red)){.cst-form__input[aria-invalid=true]:focus,.cst-form__textarea[aria-invalid=true]:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-error,#c0392b) 20%,transparent)}}.cst-form__textarea{resize:vertical;min-height:130px}.cst-form__field-error{color:var(--brand-error,#c0392b);margin:0;font-size:.86rem;line-height:1.4}.cst-form__error-global{border-radius:var(--brand-r);background:var(--brand-error,#c0392b);padding:.75rem 1rem}@supports (color:color-mix(in lab,red,red)){.cst-form__error-global{background:color-mix(in srgb,var(--brand-error,#c0392b) 10%,transparent)}}.cst-form__error-global{border:1px solid var(--brand-error,#c0392b)}@supports (color:color-mix(in lab,red,red)){.cst-form__error-global{border:1px solid color-mix(in srgb,var(--brand-error,#c0392b) 30%,transparent)}}.cst-form__error-global{color:var(--brand-error,#c0392b);margin:0;font-size:.92rem}.cst-form__field--check{gap:.55rem}.cst-form__check-label{cursor:pointer;color:var(--brand-ink);align-items:flex-start;gap:.65rem;font-size:.9rem;line-height:1.55;display:flex}.cst-form__check{width:20px;height:20px;accent-color:var(--brand-primary);cursor:pointer;flex-shrink:0;margin-top:.15em}.cst-form__consent-link{color:var(--brand-primary);text-underline-offset:2px;text-decoration:underline}.cst-form__alt{color:var(--brand-muted);margin:0;font-size:.88rem}.cst-form__alt-link{color:var(--brand-primary);text-underline-offset:2px;text-decoration:underline}.cst-form__success{background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:var(--brand-r-lg);gap:.75rem;padding:clamp(1.5rem,3vw,2.2rem);display:grid}.cst-form__success-title{font-family:var(--brand-font-display);color:var(--brand-ink);margin:0;font-size:clamp(1.4rem,2.5vw,1.9rem);font-weight:600}.cst-form__success-body{color:var(--brand-muted);margin:0;line-height:1.55}@media (prefers-reduced-motion:reduce){.cst-form__input,.cst-form__textarea{transition:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}