@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");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:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-italic-B5xAaiFk.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-italic-DzZdc28x.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-italic-DcOpz6Lw.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-italic-CILZdfAp.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-italic-K3WlGtc8.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-italic-0pjOp8NU.woff2)format("woff2-variations");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:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-italic-DpCbqKDY.woff2)format("woff2-variations");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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2)format("woff2-variations");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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2)format("woff2-variations");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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-vietnamese-wght-italic-xAqemagA.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-ext-wght-italic-DFS986qL.woff2)format("woff2-variations");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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-wght-italic-Bxi8ein9.woff2)format("woff2-variations");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-italic-BqAiT5Ww.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-italic-66oory27.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}@layer theme{:root,:host{--font-sans:"Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-serif:"Newsreader Variable", Georgia, serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--ease-out:cubic-bezier(0, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-display:"Space Grotesk Variable", "Inter Variable", sans-serif;--font-editorial:"Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--color-surface-primary:#f2f2f2;--color-surface-secondary:#fafaf9;--color-surface-tan:#e7e9ef;--color-surface-dark:#573333;--color-surface-placeholder:#dcdde0;--color-surface-placeholder-dark:#c4c6cc;--color-text-primary:#15151a;--color-text-secondary:#55565e;--color-text-tertiary:#666770;--color-text-inverse:#fff;--color-accent:#844343;--color-accent-hover:#5b2e2e;--color-accent-soft:#ceabab;--color-danger:#b23a3a}}@layer base{*,:after,:before,::backdrop{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}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-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{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components,utilities;:root{--accent-rgb:132 67 67;--text-rgb:21 21 26;--inverse-rgb:255 255 255;--danger-rgb:178 58 58;--surface-secondary-rgb:250 250 249;--rule-rgb:137 138 147;--shadow-rgb:0 0 0;--gutter:clamp(1rem, 3vw, 2.5rem);--max-width:90rem;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.87, 0, .13, 1);--text-label:.75rem;--touch-target:2.75rem;--border-subtle:rgb(var(--text-rgb) / .08);--border-default:rgb(var(--text-rgb) / .15);--border-strong:rgb(var(--text-rgb) / .3);--border-accent:rgb(var(--accent-rgb) / .3);--border-input:rgb(var(--text-rgb) / .5);--on-dark-muted:rgb(var(--inverse-rgb) / .62);--on-dark-soft:rgb(var(--inverse-rgb) / .75);--focus-color:var(--color-accent);--z-nav:50;--z-frame:90;--z-grain:100;--z-media:101;--z-preview:102;--z-chrome:150;--z-ruler:200;--z-lightbox:500;--z-modal:600}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:100%}body{background-color:var(--color-surface-primary);color:var(--color-text-primary);font-family:var(--font-sans);font-feature-settings:"kern", "liga", "onum";font-size:.9375rem;line-height:1.6;position:relative;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}em{font-family:var(--font-serif);font-weight:500}body:after{content:"";border:1px solid rgb(var(--rule-rgb) / .45);pointer-events:none;z-index:var(--z-frame);position:fixed;inset:clamp(.5rem,1.2vw,1rem)}::view-transition-old(root){animation-duration:.3s;animation-timing-function:ease}::view-transition-new(root){animation-duration:.3s;animation-timing-function:ease}::selection{background-color:var(--color-accent);color:var(--color-text-inverse)}:focus-visible{outline:2px solid var(--focus-color);outline-offset:3px;border-radius:2px}.approach,.footer,.case-section--outcome,.blog-index-contact,.blog-post-contact,.author-links,.lightbox{--focus-color:var(--color-accent-soft)}.wrap{max-width:var(--max-width);padding:0 var(--gutter);margin:0 auto;position:relative}section{padding:clamp(4rem,10vw,10rem) 0;position:relative}.route-announcer,.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.placeholder{z-index:1;isolation:isolate;background-color:var(--color-surface-placeholder);border:1px solid var(--border-default);position:relative;overflow:hidden}.placeholder picture{width:100%;height:100%;display:block}.placeholder:has(.placeholder-img){z-index:var(--z-media)}.placeholder:before{content:"";background-image:linear-gradient(135deg, transparent 40%, rgb(var(--text-rgb) / .04) 40%, rgb(var(--text-rgb) / .04) 50%, transparent 50%), radial-gradient(circle at 30% 40%, rgb(var(--text-rgb) / .06), transparent 55%);pointer-events:none;position:absolute;inset:0}.placeholder:after{content:attr(data-label);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);z-index:2;position:absolute;bottom:1rem;left:1rem}.placeholder-dark{background-color:var(--color-surface-placeholder-dark)}.placeholder-img{object-fit:cover;object-position:center;z-index:1;width:100%;height:100%;display:block;position:absolute;inset:0}.placeholder-img--contain{object-fit:contain}.placeholder:has(.placeholder-img):before{display:none}.placeholder:has(.placeholder-img):after{display:none}.fig-plate{z-index:2;background-color:var(--color-surface-secondary);border-top:1px solid var(--border-default);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);text-align:left;justify-content:space-between;align-items:baseline;gap:1rem;padding:.4rem .7rem;line-height:1.4;display:flex;position:absolute;bottom:0;left:0;right:0}.fig-plate-num{color:var(--color-accent);flex-shrink:0}.fig-plate-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dot-grid{pointer-events:none;background-image:linear-gradient(rgb(var(--accent-rgb) / .055) 1px, transparent 1px), linear-gradient(90deg, rgb(var(--accent-rgb) / .055) 1px, transparent 1px);z-index:0;background-size:2.5rem 2.5rem;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 55%,#0000 100%);mask-image:linear-gradient(#000 55%,#0000 100%)}.grain-canvas{pointer-events:none;opacity:.16;mix-blend-mode:multiply;z-index:var(--z-grain);position:fixed;inset:0}.scroll-ruler{height:.5rem;z-index:var(--z-ruler);pointer-events:none;background-image:repeating-linear-gradient(90deg, rgb(var(--rule-rgb) / .6) 0 1px, transparent 1px 3.125rem), repeating-linear-gradient(90deg, rgb(var(--rule-rgb) / .35) 0 1px, transparent 1px .625rem);background-position:0 0;background-repeat:no-repeat;background-size:100% .5rem,100% .25rem;position:fixed;top:0;left:0;right:0}.scroll-progress{background-color:var(--color-accent);transform-origin:0;will-change:transform;width:100%;height:2px;transition:transform .1s linear;position:absolute;top:0;left:0;transform:scaleX(0)}.scroll-progress-marker{background-color:var(--color-accent);will-change:transform;width:2px;height:.5rem;position:absolute;top:0;left:0}.chapter-index{left:var(--gutter);z-index:var(--z-chrome);pointer-events:none;font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;font-variant-numeric:tabular-nums;mix-blend-mode:difference;color:var(--color-text-inverse);opacity:0;transition:opacity .6s;position:fixed;bottom:1.75rem}.chapter-index.visible{opacity:.85}@media (width<=45rem){.chapter-index{display:none}}.back-to-top{right:var(--gutter);bottom:calc(1.25rem + env(safe-area-inset-bottom,0px));z-index:var(--z-chrome);appearance:none;width:var(--touch-target);height:var(--touch-target);border:1px solid var(--border-default);background-color:var(--color-surface-secondary);color:var(--color-text-primary);box-shadow:0 8px 24px rgb(var(--text-rgb) / .14);font-family:var(--font-display);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .3s ease, transform .3s var(--ease-out), border-color .2s ease, color .2s ease;border-radius:50%;place-items:center;font-size:1rem;line-height:1;display:grid;position:fixed;transform:translateY(.5rem)}.back-to-top.visible{opacity:1;pointer-events:auto;transform:translateY(0)}@media (hover:hover){.back-to-top:hover{border-color:var(--color-accent);color:var(--color-accent)}}@media (width<=45rem){.back-to-top{bottom:calc(4.75rem + env(safe-area-inset-bottom,0px))}}.nav{z-index:var(--z-nav);padding:2rem var(--gutter) 1.5rem;mix-blend-mode:difference;color:var(--color-text-inverse);pointer-events:none;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex;position:absolute;top:0;left:0;right:0}.nav>*{pointer-events:auto}.nav-dock{left:50%;bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:var(--z-chrome);background-color:rgb(var(--surface-secondary-rgb) / .92);-webkit-backdrop-filter:blur(6px);border:1px solid var(--border-default);box-shadow:0 10px 30px rgb(var(--text-rgb) / .14);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-primary);white-space:nowrap;align-items:center;gap:.25rem;padding:0 .5rem;font-size:.8125rem;display:none;position:fixed;transform:translate(-50%)}.nav-dock a{min-height:var(--touch-target);min-width:var(--touch-target);justify-content:center;align-items:center;padding:0 .45rem;display:inline-flex}.nav-dock a:active{color:var(--color-accent)}@media (width<=45rem){.nav-dock{display:flex}}.nav-brand{font-family:var(--font-display);letter-spacing:.02em;font-size:1.25rem;font-weight:600;line-height:1}.nav-meta{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:1.5rem;font-size:.8125rem;display:flex}.nav-meta a{border-bottom:1px solid #0000;padding-bottom:2px;transition:border-color .3s}@media (hover:hover){.nav-meta a:hover{border-bottom-color:currentColor}}@media (width<=45rem){.nav-meta a:not(.nav-contact){display:none}}.hero{flex-direction:column;justify-content:space-between;min-height:100svh;padding:0;display:flex;position:relative;overflow:hidden}.hero-top{padding:7.5rem var(--gutter) 0;z-index:2;justify-content:flex-end;align-items:flex-start;gap:2rem;display:flex;position:relative}.hero-coordinates{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-tertiary);text-align:right;font-variant-numeric:tabular-nums;will-change:transform;line-height:1.6}.hero-coordinates strong{color:var(--color-text-primary);font-weight:400;display:block}.hero{--hero-portrait-w:clamp(11rem, 18vw, 20rem);--hero-free:calc(100vw - 1rem - 2 * var(--gutter) - var(--hero-portrait-w) - 1.5rem)}.hero-portrait{right:var(--gutter);width:var(--hero-portrait-w);aspect-ratio:3/4;z-index:1;transform-origin:100% 100%;will-change:transform;position:absolute;top:18vh}.hero-portrait .placeholder{border-radius:2px;width:100%;height:100%}.hero-portrait:before{content:"";border:1px solid var(--color-accent);z-index:3;border-radius:50%;width:3.75rem;height:3.75rem;position:absolute;top:-1.25rem;right:-1.25rem}@media (width<=56.25rem){.hero-portrait{opacity:.9;width:7.5rem;height:10rem;top:6vh}.hero-portrait:before{width:2rem;height:2rem;top:-.625rem;right:-.625rem}.hero-portrait .fig-plate{display:none}.hero-top{justify-content:flex-start}.hero-coordinates{text-align:left}}.hero-display-wrap{z-index:2;flex-direction:column;flex:1;justify-content:center;align-items:stretch;padding:clamp(2rem,6vw,5rem) 0;display:flex;position:relative}.hero-display{width:100%;padding-left:var(--gutter);padding-right:var(--gutter);will-change:transform;position:relative}.hero-line{font-family:var(--font-display);letter-spacing:-.03em;color:var(--color-text-primary);padding-top:.06em;padding-bottom:.2em;font-size:clamp(3.5rem,17vw,18rem);font-weight:500;line-height:.96;display:block;overflow:hidden}.hero-line+.hero-line{margin-top:-.34em}.hero-line>span{display:inline-block}.hero-line em{color:var(--color-accent);font-style:italic;font-weight:500}.hero-line.line-2,.hero-line.line-3{font-size:min(max(2.5rem, 14.3vw), calc((100vw - 2 * var(--gutter) - clamp(1.5rem, 6vw, 9rem)) / 6.2), 15.5rem)}.hero-line.line-2{padding-left:clamp(1.5rem,6vw,9rem)}.hero-line.line-2>span{white-space:nowrap}.hero-line.line-3{padding-left:clamp(3rem,13vw,15rem)}@media (width>=56.25rem){.hero-line{font-size:min(17vw, 18rem, calc(var(--hero-free) / 4.9))}.hero-line.line-2,.hero-line.line-3{font-size:min(14.3vw, 15.5rem, calc((var(--hero-free) - clamp(1.5rem, 6vw, 9rem)) / 6.2))}}.hero-word-stack{vertical-align:baseline;display:inline-grid}.hero-word{white-space:nowrap;grid-area:1/1}.hero-word[data-swap=in]{animation:hero-word-in .7s var(--ease-out) both}.hero-word[data-swap=out]{animation:hero-word-out .7s var(--ease-out) both}@keyframes hero-word-in{0%{opacity:0;transform:translateY(.12em)}to{opacity:1;transform:none}}@keyframes hero-word-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-.12em)}}.hero-dot{background-color:var(--color-accent);vertical-align:baseline;border-radius:50%;width:.35em;height:.35em;margin-left:.04em;display:inline-block}.hero-bottom{padding:0 var(--gutter) 3rem;border-top:1px solid var(--border-subtle);z-index:2;grid-template-columns:1fr;gap:0;display:grid;position:relative}.hero-bottom-row{grid-template-columns:2fr repeat(4,minmax(min(8rem,100%),1fr));align-items:start;gap:2rem;padding:2rem 0 0;display:grid}.hero-intro{font-family:var(--font-editorial);color:var(--color-text-secondary);max-width:32em;font-size:clamp(.95rem,1.05vw,1.125rem);line-height:1.58}.hero-intro strong{color:var(--color-text-primary);font-weight:500}.stat-label{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-tertiary);margin-top:.625rem}.stat-value{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-text-primary);font-variant-numeric:tabular-nums;font-size:clamp(1.5rem,3vw,2.5rem);font-weight:500;line-height:1}.stat-value em{color:var(--color-accent);font-style:italic;font-weight:500}.stat-value--small{font-size:clamp(1.3rem,2.5vw,2rem)}.stat-value--suffix{font-size:.6em}@media (width<=56.25rem){.hero-bottom-row{grid-template-columns:repeat(auto-fit,minmax(min(10rem,100%),1fr));gap:1.5rem 2rem}.hero-intro{grid-column:1/-1;margin-bottom:1rem}}.position{background-color:var(--color-surface-primary);border-top:1px solid var(--border-subtle);overflow:hidden}.position-grid{grid-template-columns:3fr 5.5fr 3.5fr;align-items:start;gap:clamp(2rem,4vw,5rem);display:grid}.position-numeral{will-change:transform;position:relative}.position-numeral .big-n{font-family:var(--font-serif);letter-spacing:-.025em;color:var(--color-accent);font-size:clamp(7rem,18vw,18rem);font-style:italic;font-weight:500;line-height:.82;display:block}.position-numeral .big-n-label,.chrono-header-left .big-n-label{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-tertiary);margin-top:1.5rem;display:block}.position-numeral .big-n-label:before,.chrono-header-left .big-n-label:before{content:"";background-color:var(--border-accent);vertical-align:middle;width:2rem;height:1px;margin-right:.875rem;display:inline-block}.position-body{max-width:56ch}.position-head{font-family:var(--font-display);letter-spacing:-.025em;color:var(--color-text-primary);margin-bottom:2.5rem;font-size:clamp(2rem,5vw,4rem);font-weight:500;line-height:1.02}.position-head em{color:var(--color-accent);font-style:italic;font-weight:500}.position-body p.editorial{font-family:var(--font-editorial);color:var(--color-text-secondary);margin-bottom:1.5rem;font-size:clamp(1rem,1.2vw,1.15rem);line-height:1.75}.position-figures{position:relative}.position-fig{margin:0;position:relative}.position-fig .placeholder{border-radius:2px;width:100%;height:100%}.position-fig--main{will-change:transform;width:min(100%,21rem);margin-left:auto}.position-fig--main .placeholder{aspect-ratio:3/4}.position-fig--detail{z-index:2;will-change:transform;width:58%;margin-top:-24%}.position-fig--detail .placeholder{aspect-ratio:3/4;box-shadow:0 18px 50px rgb(var(--text-rgb) / .18)}.position-fig--detail .placeholder-img{transform-origin:50% 12%;transform:scale(1.55)}@media (width<=56.25rem){.position-grid{grid-template-columns:1fr;gap:2rem}.position-figures{align-items:flex-start;gap:1rem;display:flex}.position-fig--main{flex:1.25;margin-left:0}.position-fig--detail{flex:1;width:auto;margin-top:2.5rem}}.work{background-color:var(--color-surface-primary);border-top:1px solid var(--border-subtle)}.work-header{grid-template-columns:3fr 9fr;align-items:end;gap:clamp(2rem,5vw,6rem);margin-bottom:clamp(3rem,7vw,6rem);display:grid}.work-header-left{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-tertiary);will-change:transform}.work-header-left strong{font-family:var(--font-serif);letter-spacing:-.03em;color:var(--color-accent);margin-bottom:1.5rem;font-size:clamp(6rem,15vw,14rem);font-style:italic;font-weight:500;line-height:.85;display:block}.work-header-right{font-family:var(--font-display);letter-spacing:-.015em;color:var(--color-text-primary);font-size:clamp(1.5rem,3.2vw,2.6rem);font-weight:500;line-height:1.15}.work-header-right em{color:var(--color-accent);font-style:italic;font-weight:500}@media (width<=56.25rem){.work-header{grid-template-columns:1fr;gap:1rem}}.catalogue{container:catalogue/inline-size}.catalogue-row{border-top:1px solid var(--border-default);border-bottom:1px solid var(--border-default);cursor:pointer;grid-template-columns:1fr auto;align-items:center;gap:2rem;padding:clamp(2rem,4vw,3.5rem) 0;display:grid;position:relative}.catalogue-title{font-family:var(--font-display);letter-spacing:-.025em;color:var(--color-text-primary);font-size:clamp(2rem,6vw,5rem);font-weight:500;line-height:1.02;transition:color .15s}.catalogue-title em{font-style:italic;font-weight:500}@media (hover:hover){.catalogue-row:hover .catalogue-title{color:var(--color-accent)}}.catalogue-meta{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-tertiary);text-align:right;font-variant-numeric:tabular-nums;line-height:1.6;transition:color .15s}.catalogue-meta strong{color:var(--color-text-primary);font-weight:400;transition:color .15s;display:block}@media (hover:hover){.catalogue-row:hover .catalogue-meta,.catalogue-row:hover .catalogue-meta strong{color:var(--color-accent)}}.catalogue-preview{width:clamp(14rem,22vw,21rem);z-index:var(--z-preview);pointer-events:none;background-color:var(--color-surface-secondary);border:1px solid var(--border-default);box-shadow:0 18px 50px rgb(var(--text-rgb) / .22);opacity:0;transition:opacity .24s var(--ease-out);will-change:transform;position:fixed;top:0;left:0}.catalogue-preview.visible{opacity:1}.catalogue-preview img{width:100%;height:auto;display:block}.catalogue-preview .fig-plate{position:static}@container catalogue (width<=50rem){.catalogue-row{grid-template-columns:1fr;gap:.75rem}.catalogue-meta{text-align:left}}.catalogue-detail{background-color:var(--color-surface-primary);padding:clamp(2rem,4vw,3.5rem) 0}.catalogue-detail-inner{grid-template-columns:3fr 9fr;gap:clamp(2rem,5vw,6rem);display:grid}.catalogue-detail-label{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-tertiary)}.catalogue-detail-label:before{content:"";background-color:var(--border-accent);vertical-align:middle;width:2rem;height:1px;margin-right:.75rem;display:inline-block}.catalogue-detail-body{grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr));gap:3rem;display:grid}.detail-block h4{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-primary);border-bottom:1px solid var(--border-default);margin-bottom:1rem;padding-bottom:.75rem}.detail-block p{font-family:var(--font-editorial);color:var(--color-text-secondary);font-size:.9375rem;line-height:1.7}.project-collage{grid-column:1/-1;grid-template-columns:repeat(12,1fr);grid-auto-rows:5rem;gap:.75rem;margin-top:2.5rem;display:grid}.project-collage .placeholder{border-radius:4px}.project-collage .p-wide{grid-area:span 4/span 8}.project-collage .p-narrow{grid-area:span 2/span 4}.project-collage .p-tall{grid-area:span 3/span 4}.project-collage .p-square{grid-area:span 2/span 4}@container catalogue (width<=50rem){.project-collage{grid-template-columns:1fr 1fr;grid-auto-rows:6.25rem}.project-collage .p-wide,.project-collage .p-narrow,.project-collage .p-tall,.project-collage .p-square{grid-area:span 2/span 2}.catalogue-detail-inner{grid-template-columns:1fr;gap:1.5rem}}.detail-highlights{border-top:1px dashed var(--border-subtle);columns:2;grid-column:1/-1;column-gap:3rem;margin-top:2rem;padding-top:2rem}.detail-highlights li{font-family:var(--font-sans);color:var(--color-text-primary);break-inside:avoid;padding:.5rem 0 .5rem 1.5rem;font-size:.84375rem;line-height:1.4;list-style:none;position:relative}.detail-highlights li:before{content:"–";color:var(--color-accent);position:absolute;top:.5rem;left:0}.detail-cta{border-top:1px solid var(--border-subtle);flex-wrap:wrap;grid-column:1/-1;justify-content:flex-start;gap:1rem;margin-top:2.5rem;padding-top:2rem;display:flex}.detail-cta a{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);border-bottom:1px solid var(--border-accent);padding-bottom:4px;transition:border-bottom-color .3s}@media (hover:hover){.detail-cta a:hover{border-bottom-color:var(--color-accent)}}@container catalogue (width<=50rem){.detail-highlights{columns:1}}.chronology{background-color:var(--color-surface-tan);border-top:1px solid var(--border-subtle);overflow:hidden}.chrono-header{grid-template-columns:3fr 9fr;align-items:end;gap:clamp(2rem,5vw,6rem);margin-bottom:clamp(3rem,6vw,5rem);display:grid}.chrono-header-left{will-change:transform}.chrono-header-left .big-n{font-family:var(--font-serif);letter-spacing:-.025em;color:var(--color-accent);font-size:clamp(7rem,18vw,18rem);font-style:italic;font-weight:500;line-height:.82;display:block}.chrono-header-right h2{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(1.75rem,3.5vw,3rem);font-weight:500;line-height:1.1}.chrono-header-right h2 em{color:var(--color-accent);font-style:italic;font-weight:500}.chrono-intro{max-width:48rem;font-family:var(--font-editorial);color:var(--color-text-secondary);margin-top:clamp(1.25rem,2vw,1.75rem);font-size:clamp(1rem,1.35vw,1.1875rem);line-height:1.75}@media (width<=56.25rem){.chrono-header{grid-template-columns:1fr}}.chrono-list{--chrono-pad:clamp(1.5rem, 3vw, 2.5rem);padding-left:var(--chrono-pad);list-style:none;position:relative;container:chrono/inline-size}.chrono-list:before{content:"";background-color:var(--border-strong);width:1px;position:absolute;top:0;bottom:0;left:0}.chrono-row:after{content:"";left:calc(-1 * var(--chrono-pad));background-color:var(--border-strong);width:.625rem;height:1px;position:absolute;top:calc(clamp(1.25rem,2.5vw,2rem) + 1.1em)}.chrono-row{border-bottom:1px solid var(--border-default);grid-template-columns:11.25rem 1fr auto;align-items:baseline;gap:2rem;padding:clamp(1.25rem,2.5vw,2rem) 0;display:grid;position:relative}.chrono-row:last-child{border-bottom:none}.chrono-row.current:before{content:"";left:calc(-1 * var(--chrono-pad) - .1875rem + .5px);background-color:var(--color-accent);border-radius:50%;width:.375rem;height:.375rem;animation:2s ease-in-out infinite chrono-pulse;position:absolute;top:50%;transform:translateY(-50%)}@keyframes chrono-pulse{0%,to{opacity:1;transform:translateY(-50%)scale(1)}50%{opacity:.5;transform:translateY(-50%)scale(1.4)}}.chrono-year{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-tertiary);font-variant-numeric:tabular-nums;padding-top:.8em}.chrono-role{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-text-primary);font-size:clamp(1.5rem,3.5vw,2.75rem);font-weight:500;line-height:1.08}.chrono-role em{color:var(--color-accent);font-style:italic;font-weight:500}.chrono-badge{vertical-align:middle;border:1px solid var(--border-accent);background-color:rgb(var(--accent-rgb) / .06);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);white-space:nowrap;border-radius:999px;margin-left:1rem;padding:.35em .8em;display:inline-block;transform:translateY(-.45em)}.chrono-place{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);text-align:right;flex-direction:column;gap:.2rem;max-width:18rem;padding-top:.8em;font-size:.75rem;line-height:1.45;display:flex}.chrono-company{color:var(--color-text-primary)}.chrono-location{color:var(--color-text-tertiary)}@container chrono (width<=56.25rem){.chrono-row{grid-template-columns:1fr;gap:.5rem}.chrono-year,.chrono-place{text-align:left;padding-top:0}}.approach{background-color:var(--color-surface-dark);color:var(--color-text-inverse);border-top:1px solid var(--border-subtle);padding:clamp(6rem,14vw,14rem) 0;position:relative;overflow:hidden}.approach:before{content:"";background-image:linear-gradient(rgb(var(--inverse-rgb) / .045) 1px, transparent 1px), linear-gradient(90deg, rgb(var(--inverse-rgb) / .045) 1px, transparent 1px);z-index:0;background-size:2.5rem 2.5rem;position:absolute;inset:0}.approach .wrap{z-index:1;position:relative}.approach-tag{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--on-dark-muted);flex-wrap:wrap;align-items:center;gap:.875rem;margin-bottom:3rem;display:flex}.approach-tag:before{content:"";background-color:rgb(var(--inverse-rgb) / .3);width:3rem;height:1px}.approach-statement{font-family:var(--font-display);letter-spacing:-.025em;color:var(--color-text-inverse);max-width:9.9em;transition:opacity 1s var(--ease-out), transform 1s var(--ease-out);font-size:clamp(2.25rem,7.2vw,8rem);font-weight:500;line-height:1.06}.js .approach-statement:not(.revealed){opacity:0;transform:translateY(1.5rem)}.approach-statement em{color:var(--color-accent-soft);font-style:italic;font-weight:500}.pillars{border-top:1px solid rgb(var(--inverse-rgb) / .15);grid-template-columns:repeat(auto-fit,minmax(min(15rem,100%),1fr));gap:0;margin-top:clamp(4rem,10vw,8rem);display:grid}.pillar{border-right:1px solid rgb(var(--inverse-rgb) / .15);border-bottom:1px solid rgb(var(--inverse-rgb) / .15);padding:clamp(2rem,4vw,3rem) clamp(1.5rem,3vw,2.5rem) 2rem;transition:background-color .5s}@media (hover:hover){.pillar:hover{background-color:rgb(var(--inverse-rgb) / .03)}}.pillar-num{font-family:var(--font-serif);color:var(--color-accent-soft);margin-bottom:1.5rem;font-size:clamp(3rem,6vw,5rem);font-style:italic;font-weight:500;line-height:1;transition:color .4s;display:block}@media (hover:hover){.pillar:hover .pillar-num{color:var(--color-text-inverse)}}.pillar-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--color-text-inverse);margin-bottom:1rem;font-size:clamp(1.25rem,1.75vw,1.75rem);font-weight:500;line-height:1.15}.pillar-body{font-family:var(--font-editorial);color:rgb(var(--inverse-rgb) / .65);font-size:.875rem;line-height:1.65}.offer{background-color:var(--color-surface-secondary);border-top:1px solid var(--border-subtle)}.offer-header,.faq-header{grid-template-columns:3fr 9fr;align-items:end;gap:clamp(2rem,5vw,6rem);margin-bottom:clamp(3rem,6vw,6rem);display:grid}.offer-header-left,.faq-header-left{will-change:transform}.offer-header-left .big-n,.faq-header-left .big-n{font-family:var(--font-serif);letter-spacing:-.03em;color:var(--color-accent);font-size:clamp(5rem,12vw,11rem);font-style:italic;font-weight:500;line-height:.85;display:block}.offer-header-left .big-n-label,.faq-header-left .big-n-label{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-tertiary);margin-top:1rem;display:block}.offer-header-left .big-n-label:before,.faq-header-left .big-n-label:before{content:"";background-color:var(--border-accent);vertical-align:middle;width:2rem;height:1px;margin-right:.75rem;display:inline-block}.offer-header-right h2,.faq-header-right h2{font-family:var(--font-display);letter-spacing:-.025em;color:var(--color-text-primary);font-size:clamp(2rem,4.5vw,4rem);font-weight:500;line-height:1}.offer-header-right h2 em,.faq-header-right h2 em{color:var(--color-accent);font-style:italic;font-weight:500}.offer-intro{max-width:48rem;font-family:var(--font-editorial);color:var(--color-text-secondary);margin-top:clamp(1.25rem,2vw,1.75rem);font-size:clamp(1rem,1.35vw,1.1875rem);line-height:1.75}@media (width<=56.25rem){.offer-header,.faq-header{grid-template-columns:1fr;gap:1.5rem}}.offer-grid{background-color:var(--border-default);border-top:1px solid var(--border-default);border-bottom:1px solid var(--border-default);grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr));gap:1px;display:grid}.offer-card{background-color:var(--color-surface-secondary);transition:background-color .4s var(--ease-out);flex-direction:column;gap:1.5rem;padding:clamp(2rem,3.5vw,3.5rem) clamp(1.5rem,2.5vw,2.5rem);display:flex}@media (hover:hover){.offer-card:hover{background-color:var(--color-surface-primary)}}.offer-num{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);align-items:center;gap:.75rem;display:flex}.offer-num:before{content:"";background-color:var(--color-accent);width:1.5rem;height:1px}.offer-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--color-text-primary);font-size:clamp(1.5rem,2.4vw,2rem);font-weight:500;line-height:1.1}.offer-title em{color:var(--color-accent);font-style:italic;font-weight:500}.offer-body{font-family:var(--font-editorial);color:var(--color-text-secondary);flex:1;font-size:.9375rem;line-height:1.65}.offer-meta{border-top:1px solid var(--border-subtle);flex-direction:column;gap:.375rem;padding-top:1.5rem;display:flex}.offer-meta-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1rem;display:flex}.offer-meta-key{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-tertiary)}.offer-meta-value{font-family:var(--font-sans);color:var(--color-text-primary);text-align:right;font-size:.8125rem;font-weight:500}.offer-cta{border-bottom:1px solid var(--border-accent);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;align-self:flex-start;padding-bottom:.25rem;transition:border-color .3s}@media (hover:hover){.offer-cta:hover{border-bottom-color:var(--color-accent)}}.faq{background-color:var(--color-surface-primary);border-top:1px solid var(--border-subtle)}.faq-list{border-top:1px solid var(--border-default)}.faq-item{border-bottom:1px solid var(--border-default);transition:background-color .3s}.faq-item[open]{background-color:var(--color-surface-tan)}.faq-item summary{cursor:pointer;grid-template-columns:5rem 1fr auto;align-items:center;gap:2rem;padding:clamp(1.5rem,2.5vw,2.5rem) clamp(.75rem,1.5vw,1.25rem) clamp(1.5rem,2.5vw,2.5rem) 0;list-style:none;display:grid}.faq-item summary::-webkit-details-marker{display:none}.faq-num{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-tertiary);font-variant-numeric:tabular-nums}.faq-q{font-family:var(--font-display);letter-spacing:-.01em;color:var(--color-text-primary);font-size:clamp(1.25rem,2.2vw,1.85rem);font-weight:500;line-height:1.2}.faq-q em{color:var(--color-accent);font-style:italic;font-weight:500}.faq-toggle{border:1px solid var(--border-default);width:2rem;height:2rem;transition:transform .4s var(--ease-out), background-color .3s ease, border-color .3s ease;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.faq-toggle:before{content:"+";font-family:var(--font-display);color:var(--color-text-primary);font-size:1.125rem;line-height:1;transition:color .3s}.faq-item[open] .faq-toggle{background-color:var(--color-accent);border-color:var(--color-accent);transform:rotate(135deg)}.faq-item[open] .faq-toggle:before{color:var(--color-text-inverse)}.faq-answer{max-width:75ch;padding:0 clamp(1rem,2vw,2rem) clamp(2rem,3.5vw,3rem) 7rem}.faq-answer p{font-family:var(--font-editorial);color:var(--color-text-secondary);font-size:clamp(1rem,1.3vw,1.15rem);line-height:1.7}.faq-answer p+p{margin-top:1rem}.faq-answer strong{color:var(--color-text-primary);font-weight:600}.faq-answer em{color:var(--color-accent);font-style:italic}@media (width<=45rem){.faq-item summary{grid-template-columns:3.125rem 1fr 2rem;gap:1rem}.faq-answer{padding-left:4.125rem;padding-right:0}}.contact{background-color:var(--color-surface-primary);border-top:1px solid var(--border-subtle);padding:clamp(6rem,14vw,16rem) 0 clamp(4rem,8vw,6rem);position:relative;overflow:hidden}.contact-statement{font-family:var(--font-display);letter-spacing:-.035em;color:var(--color-text-primary);margin:0 calc(-1 * var(--gutter));font-size:clamp(4rem,22vw,24rem);font-weight:500;line-height:.86}.contact-statement--single{white-space:nowrap;font-size:clamp(2.75rem,13vw,15rem);line-height:1}.contact-statement em{color:var(--color-accent);font-style:italic;font-weight:500}.contact-statement .line{display:block;overflow:hidden}.contact-statement .line>span{transition:transform 1.1s var(--ease-out);display:block}.js .contact-statement:not(.revealed) .line>span{transform:translateY(110%)}.contact-statement.revealed .line:first-child>span{transition-delay:.1s}.contact-statement.revealed .line:nth-child(2)>span{transition-delay:.26s}.contact-block{grid-template-columns:5fr 7fr;align-items:start;gap:clamp(2rem,5vw,6rem);margin-top:clamp(3rem,8vw,6rem);display:grid}.contact-side{font-family:var(--font-editorial);color:var(--color-text-secondary);max-width:32em;font-size:.875rem;line-height:1.72}.contact-side p+p{margin-top:1rem}.contact-links{flex-direction:column;gap:.75rem;margin-top:2rem;display:flex}.contact-link{border-bottom:1px solid var(--border-subtle);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-primary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;padding:.75rem 0;transition:color .3s;display:flex}.contact-link span:first-child{transition:transform .3s}@media (hover:hover){.contact-link:hover{color:var(--color-accent)}.contact-link:hover span:first-child{transform:translate(.5rem)}}.contact-link span:last-child{color:var(--color-text-tertiary);font-family:var(--font-sans);letter-spacing:0;text-transform:none;font-size:.8125rem}@media (width<=56.25rem){.contact-block{grid-template-columns:1fr}}@media (width<=45rem){.contact-statement{margin:0}}.footer{background-color:var(--color-surface-dark);color:var(--color-text-inverse);padding:clamp(3rem,6vw,5rem) 0 2rem;position:relative}@media (width<=45rem){.footer{padding-bottom:calc(5rem + env(safe-area-inset-bottom,0px))}}.footer-inner{max-width:var(--max-width);padding:0 var(--gutter);margin:0 auto}.titleblock{background-color:rgb(var(--inverse-rgb) / .18);border:1px solid rgb(var(--inverse-rgb) / .18);grid-template-columns:repeat(auto-fit,minmax(min(11rem,100%),1fr));gap:1px;display:grid}.titleblock-cell{background-color:var(--color-surface-dark);flex-direction:column;gap:.45rem;min-width:0;padding:1rem 1.1rem .9rem;display:flex}.titleblock-key{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--on-dark-muted)}.titleblock-value{font-family:var(--font-sans);color:var(--color-text-inverse);overflow-wrap:anywhere;font-size:.8125rem;line-height:1.4}.titleblock-value em{color:var(--color-accent-soft);font-style:italic}.titleblock-value a{border-bottom:1px solid rgb(var(--inverse-rgb) / .35);padding-bottom:1px;transition:border-color .2s,color .2s}@media (hover:hover){.titleblock-value a:hover{border-bottom-color:var(--color-text-inverse)}}.footer-base{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--on-dark-muted);padding-right:calc(var(--touch-target) + 1rem);flex-wrap:wrap;justify-content:flex-end;align-items:baseline;gap:1rem 2rem;margin-top:1.5rem;display:flex}.footer-nav{border:1px solid rgb(var(--inverse-rgb) / .18);flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem;margin-top:1.5rem;padding:1rem 1.1rem;display:flex}.footer-nav ul{flex-wrap:wrap;gap:.5rem 1.75rem;margin:0;padding:0;list-style:none;display:flex}.footer-nav a{color:var(--color-text-inverse);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid rgb(var(--inverse-rgb) / .35);padding-bottom:1px}@media (hover:hover){.footer-nav a:hover{border-bottom-color:var(--color-text-inverse)}}.legal-page{border-top:1px solid var(--border-subtle);padding:clamp(6rem,12vw,10rem) 0 clamp(4rem,8vw,6rem)}.legal-page .wrap{max-width:47.5rem}.legal-page h1{font-family:var(--font-display);letter-spacing:-.025em;margin-bottom:clamp(2rem,4vw,3rem);font-size:clamp(2.5rem,6vw,5rem);font-weight:500;line-height:1.02}.legal-page h2{font-family:var(--font-display);letter-spacing:-.015em;margin-top:3rem;margin-bottom:1rem;font-size:clamp(1.5rem,3vw,2rem);font-weight:500;line-height:1.15}.legal-page h3{font-family:var(--font-serif);color:var(--color-text-primary);margin-top:2rem;margin-bottom:.75rem;font-size:clamp(1.1rem,1.5vw,1.4rem);font-style:italic;font-weight:500}.legal-page p{font-family:var(--font-editorial);color:var(--color-text-secondary);margin-bottom:1rem;font-size:1rem;line-height:1.75}.legal-page p strong{color:var(--color-text-primary);font-weight:500}.legal-page ul{margin-bottom:1rem;padding-left:0;list-style:none}.legal-page li{font-family:var(--font-editorial);color:var(--color-text-secondary);margin-bottom:.5rem;padding-left:1.5rem;font-size:1rem;line-height:1.7;position:relative}.legal-page li:before{content:"–";color:var(--color-accent);position:absolute;left:0}.legal-page a{color:var(--color-accent);border-bottom:1px solid var(--border-accent);transition:border-bottom-color .2s}@media (hover:hover){.legal-page a:hover{border-bottom-color:var(--color-accent)}}.legal-page-back{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);border-bottom:1px solid var(--border-accent);margin-bottom:2rem;padding-bottom:4px;display:inline-block}.not-found-ways{grid-template-columns:repeat(auto-fit,minmax(min(13rem,100%),1fr));gap:2rem;margin-top:2.5rem;display:grid}.legal-page .not-found-ways h2{border-bottom:1px solid var(--border-default);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-tertiary);margin:0 0 1rem;padding-bottom:.75rem;font-weight:400}.legal-page .not-found-ways li{flex-direction:column;align-items:flex-start;gap:.15rem;margin-bottom:.9rem;padding-left:0;display:flex}.legal-page .not-found-ways li:before{content:none}.not-found-ways li span{color:var(--color-text-tertiary);font-size:.8125rem}.case-study{border-top:1px solid var(--border-subtle);background-color:var(--color-surface-primary)}.case-hero{border-bottom:1px solid var(--border-subtle);padding:clamp(6rem,12vw,10rem) 0 clamp(3rem,6vw,6rem)}.case-back{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);border-bottom:1px solid var(--border-accent);margin-bottom:clamp(2rem,4vw,3rem);padding-bottom:4px;transition:border-bottom-color .2s;display:inline-block}@media (hover:hover){.case-back:hover{border-bottom-color:var(--color-accent)}}.case-hero-meta{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem 2rem;margin-bottom:clamp(1.5rem,3vw,2.5rem);padding-bottom:1rem;display:flex}.case-hero-badge{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent)}.case-hero-coords{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-tertiary);text-align:right}.case-hero-coords strong{color:var(--color-text-primary);margin-bottom:.25rem;font-weight:400;display:block}.case-hero-title{font-family:var(--font-display);letter-spacing:-.025em;color:var(--color-text-primary);max-width:14ch;margin-bottom:clamp(2.5rem,5vw,4rem);font-size:clamp(2.5rem,8vw,8rem);font-weight:500;line-height:.95}.case-hero-title em{color:var(--color-accent);font-style:italic;font-weight:500}.case-hero-image{width:100%;max-height:88vh}.case-hero-image .placeholder{aspect-ratio:auto;border-radius:4px;width:100%;height:auto;max-height:88vh}.case-hero-image .placeholder-img{object-fit:contain;width:100%;height:auto;max-height:88vh;position:static}.case-hero-image .placeholder picture,.case-gallery .placeholder picture,.case-next-card-preview .placeholder picture{height:auto}.case-section{border-bottom:1px solid var(--border-subtle);padding:clamp(4rem,8vw,8rem) 0}.case-section--solution{background-color:var(--color-surface-secondary)}.case-section--gallery{background-color:var(--color-surface-tan)}.case-section--outcome{background-color:var(--color-surface-dark);color:var(--color-text-inverse);border-bottom-color:rgb(var(--inverse-rgb) / .1)}.case-section--live{border-bottom:none;padding-bottom:clamp(5rem,10vw,8rem)}.case-section-grid{grid-template-columns:3fr 9fr;align-items:start;gap:clamp(2rem,5vw,6rem);display:grid}@media (width<=56.25rem){.case-section-grid{grid-template-columns:1fr;gap:2rem}}.case-section-label{align-self:start;position:sticky;top:6rem}.case-section-num{font-family:var(--font-serif);letter-spacing:-.025em;color:var(--color-accent);margin-bottom:1rem;font-size:clamp(3rem,7vw,6rem);font-style:italic;font-weight:500;line-height:.85;display:block}.case-section-title{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-tertiary);display:block}.case-section-title:before{content:"";background-color:var(--border-accent);vertical-align:middle;width:2rem;height:1px;margin-right:.875rem;display:inline-block}@media (width<=56.25rem){.case-section-label{position:static}}.case-section-body{max-width:56ch}.case-editorial{font-family:var(--font-editorial);color:var(--color-text-secondary);margin-bottom:1.5rem;font-size:clamp(1rem,1.2vw,1.15rem);line-height:1.75}.case-editorial:last-child{margin-bottom:0}.case-section--outcome .case-editorial{color:rgb(var(--inverse-rgb) / .75)}.case-process{gap:clamp(1.5rem,3vw,2.5rem);list-style:none;display:grid}.case-process-step{border-top:1px solid var(--border-default);padding:clamp(1.25rem,2vw,1.75rem) 0 0}.case-process-num{font-family:var(--font-serif);color:var(--color-accent);margin-bottom:.75rem;font-size:clamp(1.75rem,3vw,2.5rem);font-style:italic;font-weight:500;line-height:1;display:block}.case-process-title{font-family:var(--font-display);letter-spacing:-.015em;color:var(--color-text-primary);margin-bottom:.75rem;font-size:clamp(1.5rem,2.5vw,2rem);font-weight:500;line-height:1.1}.case-process-body{font-family:var(--font-editorial);color:var(--color-text-secondary);max-width:56ch;font-size:1rem;line-height:1.7}.case-gallery{flex-direction:column;gap:clamp(1rem,2vw,1.75rem);display:flex}.case-gallery .placeholder{aspect-ratio:auto;border-radius:4px;width:100%;height:auto;max-height:88vh}.case-gallery .placeholder-img{object-fit:contain;width:100%;height:auto;max-height:88vh;position:static}.case-stack-wrap{grid-template-columns:repeat(auto-fit,minmax(min(16rem,100%),1fr));gap:clamp(2rem,4vw,3rem);display:grid}.case-stack-head{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);border-bottom:1px solid var(--border-accent);margin-bottom:1rem;padding-bottom:.75rem}.case-stack-list,.case-highlights-list{flex-direction:column;gap:.5rem;list-style:none;display:flex}.case-stack-list li,.case-highlights-list li{font-family:var(--font-sans);color:var(--color-text-primary);padding-left:1.5rem;font-size:.875rem;line-height:1.4;position:relative}.case-stack-list li:before,.case-highlights-list li:before{content:"–";color:var(--color-accent);position:absolute;left:0}.case-outcome-tag{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--on-dark-muted);flex-wrap:wrap;align-items:center;gap:.875rem;margin-bottom:2rem;display:flex}.case-outcome-tag:before{content:"";background-color:rgb(var(--inverse-rgb) / .3);width:3rem;height:1px}.case-outcome-statement{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--color-text-inverse);max-width:28ch;margin-bottom:clamp(3rem,6vw,5rem);font-size:clamp(1.75rem,4vw,3.5rem);font-style:italic;font-weight:500;line-height:1.15}.case-outcome-metrics{background-color:rgb(var(--inverse-rgb) / .15);border-top:1px solid rgb(var(--inverse-rgb) / .15);border-bottom:1px solid rgb(var(--inverse-rgb) / .15);grid-template-columns:repeat(auto-fit,minmax(min(12rem,100%),1fr));gap:1px;display:grid}.case-outcome-metric{background-color:var(--color-surface-dark);padding:clamp(1.5rem,3vw,2.5rem) clamp(1rem,2vw,1.75rem)}.case-outcome-value{font-family:var(--font-display);letter-spacing:-.025em;color:var(--color-text-inverse);font-variant-numeric:tabular-nums;margin-bottom:.75rem;font-size:clamp(2rem,4vw,3.25rem);font-weight:500;line-height:1}.case-outcome-value em{color:var(--color-accent-soft);font-style:italic;font-weight:500}.case-outcome-label{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--on-dark-muted)}.case-live-block{grid-template-columns:5fr 7fr;align-items:start;gap:clamp(2rem,5vw,6rem);margin-bottom:clamp(4rem,8vw,6rem);display:grid}@media (width<=56.25rem){.case-live-block{grid-template-columns:1fr}}.case-live-tag{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-tertiary);margin-bottom:1rem;display:block}.case-live-url{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-accent);border-bottom:2px solid var(--border-accent);word-break:break-all;padding-bottom:.5rem;font-size:clamp(1.5rem,3.5vw,2.75rem);font-weight:500;line-height:1.1;transition:border-bottom-color .4s;display:inline-block}@media (hover:hover){.case-live-url:hover{border-bottom-color:var(--color-accent)}}.case-live-url .arrow{margin-left:.3em;font-size:.5em;transition:transform .3s;display:inline-block;transform:translateY(-.8em)rotate(-45deg)}@media (hover:hover){.case-live-url:hover .arrow{transform:translateY(-.9em)translate(.15em)rotate(-45deg)}}.case-live-side{font-family:var(--font-editorial);color:var(--color-text-secondary);max-width:32em;font-size:.9375rem;line-height:1.7}.case-live-side a{color:var(--color-accent);border-bottom:1px solid var(--border-accent);padding-bottom:1px}.case-next{border-top:1px solid var(--border-default);padding-top:clamp(3rem,5vw,5rem)}.case-next-label{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-tertiary);margin-bottom:1.25rem;display:block}.case-next-card{border:1px solid var(--border-default);background-color:var(--color-surface-secondary);transition:border-color .3s ease, background-color .3s ease, transform .4s var(--ease-out);grid-template-columns:minmax(12rem,22rem) 1fr auto;align-items:center;gap:clamp(1.5rem,3vw,3rem);padding:clamp(1.25rem,2.5vw,2rem);display:grid}@media (hover:hover){.case-next-card:hover{border-color:var(--color-accent);background-color:var(--color-surface-tan)}}.case-next-card-preview{background-color:var(--color-surface-tan);overflow:hidden}.case-next-card-preview .placeholder{aspect-ratio:auto;width:100%;height:auto}.case-next-card-preview .placeholder-img{object-fit:contain;width:100%;height:auto;position:static}.case-next-card-body{flex-direction:column;gap:.5rem;min-width:0;display:flex}.case-next-card-badge{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent)}.case-next-card-title{font-family:var(--font-display);letter-spacing:-.025em;color:var(--color-text-primary);font-size:clamp(1.5rem,3vw,2.5rem);font-weight:500;line-height:1.1;transition:color .3s;display:block}.case-next-card-title em{color:var(--color-accent);font-style:italic;font-weight:500}@media (hover:hover){.case-next-card:hover .case-next-card-title{color:var(--color-accent)}}.case-next-card-meta{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-tertiary)}.case-next-card-arrow{font-family:var(--font-editorial);color:var(--color-accent);transition:transform .4s var(--ease-out);align-self:center;padding:0 .25rem;font-size:1.5rem}@media (hover:hover){.case-next-card:hover .case-next-card-arrow{transform:translate(.5rem)}}@media (width<=45rem){.case-next-card{grid-template-columns:1fr}.case-next-card-arrow{display:none}}.reveal{transition:opacity 1s var(--ease-out), transform 1s var(--ease-out)}.js .reveal:not(.visible){opacity:0;transform:translateY(1.75rem)}.stagger>*{transition:opacity .8s var(--ease-out), transform .8s var(--ease-out)}.js .stagger:not(.visible)>*{opacity:0;transform:translateY(1.25rem)}.stagger.visible>:first-child{transition-delay:80ms}.stagger.visible>:nth-child(2){transition-delay:.18s}.stagger.visible>:nth-child(3){transition-delay:.28s}.stagger.visible>:nth-child(4){transition-delay:.38s}.stagger.visible>:nth-child(5){transition-delay:.48s}.stagger.visible>:nth-child(6){transition-delay:.58s}.stagger.visible>:nth-child(7){transition-delay:.68s}.stagger.visible>:nth-child(8){transition-delay:.78s}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.js .reveal:not(.visible),.js .stagger:not(.visible)>*,.js .approach-statement:not(.revealed){opacity:1!important;transform:none!important}.js .contact-statement:not(.revealed) .line>span{transform:none!important}.grain-canvas,.catalogue-preview{display:none}}button.placeholder--clickable{appearance:none;font:inherit;color:inherit;text-align:left;cursor:pointer;border:0;margin:0;padding:0;display:block}button.placeholder--clickable:focus-visible,.contact-cta:focus-visible{outline-offset:4px}.lightbox{z-index:var(--z-lightbox);background-color:rgb(var(--text-rgb) / .92);-webkit-backdrop-filter:blur(8px);cursor:zoom-out;opacity:0;animation:lightbox-in .28s var(--ease-out) forwards;justify-content:center;align-items:center;padding:clamp(1rem,4vw,3rem);display:flex;position:fixed;inset:0}.lightbox-figure{cursor:default;opacity:0;max-width:92vw;max-height:88vh;animation:lightbox-figure-in .36s var(--ease-out) 60ms forwards;position:relative;transform:scale(.96)}.lightbox-figure picture{display:block}.lightbox-image{object-fit:contain;width:auto;max-width:92vw;height:auto;max-height:88vh;box-shadow:0 30px 80px rgb(var(--shadow-rgb) / .45);border-radius:4px;display:block}.lightbox-caption{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:rgb(var(--inverse-rgb) / .65);text-align:center;position:absolute;bottom:-2rem;left:0;right:0}.lightbox-close{appearance:none;border:1px solid rgb(var(--inverse-rgb) / .4);width:2.75rem;height:2.75rem;color:var(--color-text-inverse);font-family:var(--font-editorial);cursor:pointer;background-color:#0000;border-radius:9999px;font-size:1.25rem;line-height:1;transition:border-color .2s,background-color .2s;position:absolute;top:clamp(1rem,3vw,2rem);right:clamp(1rem,3vw,2rem)}@media (hover:hover){.lightbox-close:hover{border-color:var(--color-text-inverse);background-color:rgb(var(--inverse-rgb) / .08)}}@keyframes lightbox-in{to{opacity:1}}@keyframes lightbox-figure-in{to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.lightbox,.lightbox-figure{opacity:1;animation:none;transform:none}}.contact-cta-row{flex-wrap:wrap;align-items:baseline;gap:clamp(1rem,2vw,1.75rem);display:flex}.contact-cta{appearance:none;text-align:left;font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-accent);border:none;border-bottom:2px solid var(--border-accent);cursor:pointer;background:0 0;padding:0 0 .625rem;font-size:clamp(1.5rem,4vw,3.5rem);font-weight:500;line-height:1.05;transition:color .2s,border-color .4s}.contact-cta .arrow{margin-left:.3em;font-size:.5em;transition:transform .3s;display:inline-block;transform:translateY(-.8em)rotate(-45deg)}@media (hover:hover){.contact-cta:hover{border-bottom-color:var(--color-accent)}.contact-cta:hover .arrow{transform:translateY(-.9em)translate(.15em)rotate(-45deg)}}.contact-modal{z-index:var(--z-modal);background-color:rgb(var(--text-rgb) / .78);-webkit-backdrop-filter:blur(6px);opacity:0;animation:lightbox-in .24s var(--ease-out) forwards;justify-content:center;align-items:center;padding:clamp(.75rem,3vw,2rem);display:flex;position:fixed;inset:0;overflow-y:auto}.contact-modal-card{background-color:var(--color-surface-secondary);width:min(40rem,100%);color:var(--color-text-primary);box-shadow:0 30px 80px rgb(var(--shadow-rgb) / .35);cursor:default;opacity:0;animation:contact-modal-in .32s var(--ease-out) 40ms forwards;border-radius:6px;margin:auto;padding:clamp(1.5rem,4vw,2.75rem);position:relative;transform:translateY(.75rem)scale(.985)}.contact-modal-close{appearance:none;width:var(--touch-target);height:var(--touch-target);border:1px solid var(--border-input);color:var(--color-text-primary);font-family:var(--font-editorial);cursor:pointer;background-color:#0000;border-radius:9999px;font-size:1.25rem;line-height:1;transition:border-color .2s,background-color .2s;position:absolute;top:clamp(.5rem,1.5vw,.85rem);right:clamp(.5rem,1.5vw,.85rem)}@media (hover:hover){.contact-modal-close:hover{border-color:var(--color-accent);color:var(--color-accent);background-color:rgb(var(--accent-rgb) / .06)}}.contact-modal-title{font-family:var(--font-display);letter-spacing:-.01em;margin:0 0 clamp(1.25rem,2.5vw,1.75rem);font-size:clamp(1.75rem,3.6vw,2.5rem);font-weight:400;line-height:1.05}.contact-modal-title em{color:var(--color-accent);font-style:italic}.contact-modal-intro{color:var(--color-text-secondary);font-family:var(--font-editorial);margin:calc(-1*clamp(.5rem,1.2vw,.9rem)) 0 clamp(1.25rem,2.5vw,1.75rem);font-size:.9375rem;line-height:1.55}.contact-modal-intro a{color:var(--color-accent);border-bottom:1px solid}@keyframes contact-modal-in{to{opacity:1;transform:translateY(0)scale(1)}}.contact-form{flex-direction:column;gap:clamp(1rem,2vw,1.4rem);display:flex}.form-field{flex-direction:column;gap:.4rem;display:flex}.form-fieldset{border:none;margin:0;padding:0}.form-row{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:clamp(.75rem,1.6vw,1.1rem);display:grid}.form-label{font-family:var(--font-mono);letter-spacing:.12em;word-spacing:-.2em;text-transform:uppercase;color:var(--color-text-tertiary);padding:0;font-size:.75rem}.form-helper-inline{font-family:var(--font-serif);letter-spacing:0;text-transform:none;color:var(--color-text-tertiary);font-size:.75rem;font-style:italic;font-weight:500}.form-input,.form-textarea{appearance:none;border:none;border-bottom:1px solid var(--border-input);width:100%;font-family:var(--font-editorial);color:var(--color-text-primary);background-color:#0000;padding:.7rem 0 .75rem;font-size:1rem;line-height:1.5;transition:border-color .2s}.form-textarea{font-family:var(--font-editorial);resize:vertical;border:1px solid var(--border-input);border-radius:4px;min-height:6rem;padding:.75rem .85rem}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-text-tertiary);font-style:italic}.form-input:focus,.form-textarea:focus{border-color:var(--color-accent);outline:none}.form-input[aria-invalid=true],.form-textarea[aria-invalid=true]{border-color:var(--color-danger)}.form-radios{margin-top:.35rem}.form-radios--grid{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.form-radios--row{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.form-tile{border:1px solid var(--border-input);min-height:2.85rem;font-family:var(--font-editorial);color:var(--color-text-primary);cursor:pointer;background-color:#0000;border-radius:4px;align-items:center;padding:.7rem .95rem;font-size:.9375rem;line-height:1.35;transition:border-color .18s,background-color .18s,color .18s;display:flex;position:relative}@media (hover:hover){.form-tile:hover{border-color:rgb(var(--accent-rgb) / .5)}}.form-tile input[type=radio]{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.form-tile--active{border-color:var(--color-accent);background-color:rgb(var(--accent-rgb) / .06);color:var(--color-accent)}.form-tile:has(input:focus-visible){outline:2px solid var(--focus-color);outline-offset:2px}@media (width<=32rem){.form-radios--grid,.form-radios--row{grid-template-columns:1fr}}.form-field--checkbox{gap:.3rem}.form-checkbox{font-family:var(--font-editorial);color:var(--color-text-secondary);cursor:pointer;align-items:flex-start;gap:.65rem;font-size:.9375rem;line-height:1.55;display:flex}.form-checkbox a{color:var(--color-accent);border-bottom:1px solid}@media (hover:hover){.form-checkbox a:hover{color:var(--color-accent-hover)}}.form-checkbox input[type=checkbox]{appearance:none;border:1px solid var(--border-input);cursor:pointer;background-color:#0000;border-radius:2px;flex:none;width:1.05rem;height:1.05rem;margin-top:.2rem;transition:border-color .2s,background-color .2s;position:relative}@media (hover:hover){.form-checkbox input[type=checkbox]:hover{border-color:var(--color-accent)}}.form-checkbox input[type=checkbox]:checked{border-color:var(--color-accent);background-color:var(--color-accent)}.form-checkbox input[type=checkbox]:checked:after{content:"";border-right:1.5px solid var(--color-text-inverse);border-bottom:1.5px solid var(--color-text-inverse);width:4px;height:8px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.form-checkbox input[type=checkbox]:focus-visible{outline-offset:2px}.form-honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-actions{justify-content:flex-start;margin-top:.5rem;display:flex}.form-submit{appearance:none;background-color:var(--color-surface-dark);color:var(--color-text-inverse);border:1px solid var(--color-surface-dark);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;padding:.85rem 1.6rem;font-size:.8125rem;transition:background-color .2s,color .2s,transform .2s}@media (hover:hover){.form-submit:hover:not(:disabled){background-color:var(--color-accent);border-color:var(--color-accent)}}.form-submit:disabled{opacity:.55;cursor:not-allowed}.form-error{font-family:var(--font-sans);color:var(--color-danger);letter-spacing:.01em;font-size:.8125rem}.form-error--banner{background-color:rgb(var(--danger-rgb) / .08);border:1px solid rgb(var(--danger-rgb) / .3);font-family:var(--font-editorial);color:var(--color-text-primary);border-radius:4px;margin-bottom:1rem;padding:.75rem .9rem;font-size:.9375rem}.form-error--banner a{color:var(--color-accent);border-bottom:1px solid}.form-success{flex-direction:column;align-items:flex-start;gap:1.25rem;display:flex}.form-success p{font-family:var(--font-editorial);color:var(--color-text-secondary);max-width:32rem;margin:0;font-size:clamp(1rem,1.5vw,1.125rem);line-height:1.6}@media (width<=45rem){.contact-modal{align-items:flex-start;padding:0}.contact-modal-card{border-radius:0;width:100%;min-height:100%;margin:0}.form-input,.form-textarea,.form-checkbox{font-size:1rem}}@media (prefers-reduced-motion:reduce){.contact-modal,.contact-modal-card{opacity:1;animation:none;transform:none}}.blog-index,.blog-post,.author-page{background-color:var(--color-surface-primary);border-top:1px solid var(--border-subtle)}.blog-breadcrumbs{color:var(--color-text-tertiary);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;margin-bottom:clamp(3rem,7vw,6rem);line-height:1.5}.blog-breadcrumbs ol{flex-wrap:wrap;gap:.45rem .65rem;margin:0;padding:0;list-style:none;display:flex}.blog-breadcrumbs li{gap:.65rem;min-width:0;display:flex}.blog-breadcrumbs a{color:var(--color-accent);border-bottom:1px solid #0000;padding-bottom:.15rem}@media (hover:hover){.blog-breadcrumbs a:hover{border-bottom-color:var(--color-accent)}}.blog-breadcrumbs [aria-current=page]{text-overflow:ellipsis;white-space:nowrap;max-width:min(56ch,70vw);overflow:hidden}.blog-section-label,.blog-index-kicker{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-tertiary);line-height:1.4}.blog-index-hero{isolation:isolate;border-bottom:1px solid var(--border-default);padding:clamp(8rem,14vw,13rem) 0 clamp(5rem,10vw,9rem);position:relative;overflow:hidden}.blog-index-hero:before{content:"";z-index:-1;background-image:linear-gradient(rgb(var(--accent-rgb) / .045) 1px, transparent 1px), linear-gradient(90deg, rgb(var(--accent-rgb) / .045) 1px, transparent 1px);background-size:2.5rem 2.5rem;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 95%);mask-image:linear-gradient(#000,#0000 95%)}.blog-index-kicker{color:var(--color-accent);margin-bottom:2rem}.blog-index-hero h1{max-width:12ch;font-family:var(--font-display);letter-spacing:-.035em;margin:0;font-size:clamp(4rem,10vw,9rem);font-weight:500;line-height:.92}.blog-index-hero h1 em{color:var(--color-accent);font-weight:500}.blog-index-intro{border-top:1px solid var(--border-default);grid-template-columns:minmax(0,42rem) auto;align-items:end;gap:2rem;margin-top:clamp(3rem,7vw,6rem);padding-top:1.5rem;display:grid}.blog-index-intro p{color:var(--color-text-secondary);font-family:var(--font-editorial);margin:0;font-size:clamp(1.05rem,1.8vw,1.3rem);line-height:1.65}.blog-index-meta{flex-direction:column;align-items:flex-end;gap:.65rem;display:flex}.blog-index-meta,.blog-index-meta a{color:var(--color-text-tertiary);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase}.blog-index-meta a{border-bottom:1px solid rgb(var(--accent-rgb) / .35);color:var(--color-accent);padding-bottom:.15rem}@media (hover:hover){.blog-index-meta a:hover{border-bottom-color:var(--color-accent)}}.blog-featured{padding:clamp(4rem,8vw,8rem) 0}.blog-featured .blog-section-label{margin-bottom:1.5rem}.blog-featured-card{border:1px solid var(--border-default);background-color:var(--color-surface-secondary);grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr);min-height:31rem;transition:border-color .35s;display:grid}@media (hover:hover){.blog-featured-card:hover{border-color:var(--color-accent)}}.blog-featured-copy{flex-direction:column;align-items:flex-start;padding:clamp(2rem,5vw,4.5rem);display:flex}.blog-featured-meta{color:var(--color-text-tertiary);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;flex-wrap:wrap;gap:.65rem 1.25rem;margin-bottom:auto;display:flex}.blog-featured-copy h2{max-width:15ch;font-family:var(--font-display);letter-spacing:-.035em;margin:3rem 0 1.5rem;font-size:clamp(2.5rem,5vw,5rem);font-weight:500;line-height:1;transition:color .35s}.blog-featured-copy h2 em{color:var(--color-accent);font-weight:500}@media (hover:hover){.blog-featured-card:hover h2{color:var(--color-accent)}}.blog-featured-copy>p{max-width:46rem;color:var(--color-text-secondary);margin:0 0 2rem;font-size:clamp(1rem,1.5vw,1.125rem);line-height:1.7}.blog-featured-link{border-bottom:1px solid var(--color-accent);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;padding-bottom:.25rem}.blog-featured-visual{isolation:isolate;background-color:var(--color-surface-dark);background-image:linear-gradient(rgb(var(--inverse-rgb) / .055) 1px, transparent 1px), linear-gradient(90deg, rgb(var(--inverse-rgb) / .055) 1px, transparent 1px);color:var(--color-text-inverse);background-size:2.5rem 2.5rem;flex-direction:column;justify-content:space-between;padding:clamp(2rem,4vw,3.5rem);display:flex;position:relative;overflow:hidden}.blog-featured-visual:after{content:"";aspect-ratio:1;border:1px solid rgb(var(--accent-rgb) / .8);border-radius:50%;width:clamp(7rem,13vw,12rem);position:absolute;top:clamp(-3rem,-2vw,-1rem);right:clamp(-3rem,-2vw,-1rem)}.blog-featured-visual>span{z-index:1;font-family:var(--font-serif);color:var(--color-accent-soft);font-size:clamp(7rem,17vw,15rem);font-style:italic;font-weight:500;line-height:.75;position:relative}.blog-featured-visual>small{z-index:1;font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--on-dark-muted);line-height:1.6;position:relative}.blog-featured-visual>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.blog-featured-visual>picture{position:absolute;inset:0}.blog-featured-visual>picture img{object-fit:cover;width:100%;height:100%}.blog-archive{background-color:var(--color-surface-secondary);border-top:1px solid var(--border-default);padding:clamp(5rem,9vw,9rem) 0}.blog-archive-head{grid-template-columns:minmax(10rem,.35fr) minmax(0,1fr);align-items:end;gap:2rem;margin-bottom:clamp(3rem,6vw,5rem);display:grid}.blog-archive-head h2,.blog-related-head h2{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:clamp(2.5rem,5vw,4.5rem);font-weight:500;line-height:1}.blog-archive-head h2 em,.blog-related-head h2 em{color:var(--color-accent);font-weight:500}.blog-list{border-top:1px solid var(--border-default)}.blog-row{border-bottom:1px solid var(--border-default);grid-template-columns:minmax(8rem,.25fr) minmax(0,1fr) minmax(8rem,.22fr);align-items:center;gap:clamp(1.5rem,4vw,4rem);padding:clamp(2rem,4vw,3.5rem) 0;transition:color .3s;display:grid}.blog-row-index,.blog-row-main{transition:transform .3s var(--ease-out)}@media (hover:hover){.blog-row:hover{color:var(--color-accent)}.blog-row:hover .blog-row-index,.blog-row:hover .blog-row-main{transform:translate(.5rem)}}.blog-row-index,.blog-row-side{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-tertiary);flex-direction:column;gap:.65rem;line-height:1.5;display:flex}.blog-row-main{min-width:0}.blog-row-category{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.8rem;display:flex}.blog-row-title{font-family:var(--font-display);letter-spacing:-.025em;margin:0;font-size:clamp(1.8rem,3.4vw,3.5rem);font-weight:500;line-height:1.05}.blog-row-title em{font-weight:500}.blog-row-main>p{max-width:50rem;color:var(--color-text-secondary);margin:1rem 0 0;line-height:1.7}.blog-row-side{text-align:right;align-items:flex-end}.blog-row-arrow{color:var(--color-accent);font-family:var(--font-display);transition:transform .3s var(--ease-out);font-size:1.8rem;line-height:1}@media (hover:hover){.blog-row:hover .blog-row-arrow{transform:translate(.4rem)}}.blog-draft-badge{border:1px solid var(--border-accent);min-height:1.25rem;color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;border-radius:9999px;align-items:center;padding:.1rem .45rem;line-height:1;display:inline-flex}.blog-index-contact,.blog-post-contact{background-color:var(--color-surface-dark);color:var(--color-text-inverse);padding:clamp(4rem,8vw,7rem) 0}.blog-index-contact-grid{grid-template-columns:minmax(10rem,.3fr) minmax(0,1fr) auto;align-items:center;gap:2rem;display:grid}.blog-index-contact .blog-section-label,.blog-post-contact .blog-section-label{color:var(--color-accent-soft)}.blog-index-contact p,.blog-post-contact p{max-width:42rem;margin:0;font-size:clamp(1.1rem,2vw,1.4rem);line-height:1.6}.blog-index-contact a,.blog-post-contact a{border-bottom:1px solid var(--color-accent-soft);color:var(--color-accent-soft);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;padding-bottom:.25rem}.blog-empty{min-height:25rem}@media (width<=56.25rem){.blog-featured-card{grid-template-columns:1fr}.blog-featured-visual{order:-1;min-height:20rem}}@media (width<=45rem){.blog-index-hero{padding-top:7rem}.blog-index-hero h1{font-size:clamp(3.5rem,18vw,5.8rem)}.blog-breadcrumbs li:nth-child(3):last-child{flex-basis:100%}.blog-breadcrumbs li:nth-child(3):last-child>span[aria-hidden=true]{display:none}.blog-breadcrumbs li:nth-child(3):last-child [aria-current=page]{max-width:100%}.blog-index-intro,.blog-archive-head,.blog-index-contact-grid{grid-template-columns:1fr}.blog-index-meta{align-items:flex-start}.blog-featured-card{min-height:0}.blog-featured-visual{min-height:15rem}.blog-featured-copy{padding:1.5rem}.blog-featured-copy h2{margin-top:2.5rem}.blog-row{grid-template-columns:1fr auto;align-items:start;gap:1rem}.blog-row-index{border-bottom:1px solid var(--border-subtle);flex-direction:row;grid-column:1/-1;justify-content:space-between;padding-bottom:.75rem}.blog-row-side>span:first-child{display:none}.blog-row-main>p{font-size:.9375rem}.blog-index-contact a{justify-self:start}}@media (prefers-reduced-motion:reduce){.blog-row,.blog-row-arrow,.blog-featured-card,.blog-featured-copy h2{transition:none}}.blog-post-hero{border-bottom:1px solid var(--border-default);padding:clamp(8rem,13vw,12rem) 0 clamp(4rem,8vw,7rem)}.blog-post-meta{color:var(--color-text-tertiary);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;flex-wrap:wrap;gap:.75rem 1.5rem;margin-bottom:clamp(2rem,5vw,4rem);display:flex}.blog-post-meta>span:first-child{color:var(--color-accent)}.blog-post-author a{border-bottom:1px solid rgb(var(--accent-rgb) / .35);color:var(--color-accent);padding-bottom:.12rem}@media (hover:hover){.blog-post-author a:hover{border-bottom-color:var(--color-accent)}}.blog-post-title{max-width:15ch;font-family:var(--font-display);letter-spacing:-.04em;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;margin:0;font-size:clamp(3.5rem,8.5vw,8rem);font-weight:500;line-height:.95}.blog-post-title em{color:var(--color-accent);font-weight:500}.blog-post-lead{max-width:48rem;color:var(--color-text-secondary);margin:clamp(2rem,5vw,4rem) 0 0;font-size:clamp(1.2rem,2.4vw,1.75rem);line-height:1.55}.blog-post-updated{color:var(--color-text-tertiary);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;margin-top:1.25rem;display:block}.blog-post-cover.placeholder--clickable{aspect-ratio:16/8;border:1px solid var(--border-default);width:100%;margin-top:clamp(3rem,7vw,6rem)}.blog-reading{padding:clamp(4rem,8vw,7rem) 0 clamp(6rem,11vw,10rem)}.blog-reading-grid{grid-template-columns:minmax(10rem,14rem) minmax(0,48rem) minmax(10rem,1fr);align-items:start;gap:clamp(2.5rem,6vw,7rem);display:grid}.blog-toc{min-width:0}.blog-toc-desktop{border-top:1px solid var(--border-default);padding-top:1rem;position:sticky;top:2rem}.blog-toc-label,.blog-toc-mobile summary{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;margin-bottom:1.25rem;display:block}.blog-toc ol{flex-direction:column;gap:.7rem;margin:0;padding:0;list-style:none;display:flex}.blog-toc li{font-family:var(--font-mono);font-size:var(--text-label);color:var(--color-text-tertiary);line-height:1.45}.blog-toc li.toc-level-3{padding-left:1rem}.blog-toc a{transition:color .25s ease, padding .25s var(--ease-out), border-color .25s ease;border-left:1px solid #0000;padding-left:0;display:block}.blog-toc a.active{border-left-color:var(--color-accent);color:var(--color-accent);padding-left:.6rem}@media (hover:hover){.blog-toc a:hover{color:var(--color-accent)}}.blog-toc-mobile{display:none}.blog-prose{min-width:0;color:var(--color-text-secondary);font-family:var(--font-editorial);font-size:clamp(1.05rem,1.35vw,1.15rem);line-height:1.82}.blog-reading-grid>.blog-prose{grid-column:2}.blog-prose>:first-child{margin-top:0}.blog-prose>:is(p,ul,ol,h2,h3,h4,h5,h6,blockquote){max-width:36em}.blog-prose>p:first-child{color:var(--color-text-primary);font-size:clamp(1.15rem,1.7vw,1.3rem)}.blog-prose h2,.blog-prose h3,.blog-prose h4,.blog-prose h5,.blog-prose h6{color:var(--color-text-primary);font-family:var(--font-display);letter-spacing:-.025em;scroll-margin-top:4rem;font-weight:500}.blog-prose h2{border-top:1px solid var(--border-default);margin:4.5rem 0 1.5rem;padding-top:1.5rem;font-size:clamp(2rem,4vw,3.25rem);line-height:1.08}.blog-prose h3{margin:3rem 0 1rem;font-size:clamp(1.45rem,2.5vw,2rem);line-height:1.15}.blog-prose h4{margin:2.5rem 0 .8rem;font-size:1.2rem}.blog-prose h5,.blog-prose h6{letter-spacing:-.01em;margin:2rem 0 .6rem;font-size:1.05rem}.blog-prose h6{color:var(--color-text-secondary)}.blog-prose p{margin:0 0 1.5rem}.blog-prose strong{color:var(--color-text-primary);font-weight:600}.blog-prose em{color:var(--color-accent)}.blog-prose a{color:var(--color-accent);border-bottom:1px solid rgb(var(--accent-rgb) / .45)}@media (hover:hover){.blog-prose a:hover{border-bottom-color:var(--color-accent)}}.blog-prose ul,.blog-prose ol{margin:0 0 2rem;padding-left:1.5rem;list-style-position:outside}.blog-prose ul{list-style-type:disc}.blog-prose ol{list-style-type:decimal}.blog-prose li{margin-bottom:.7rem}.blog-prose li::marker{color:var(--color-accent)}.blog-prose li:has(>input[type=checkbox]){margin-left:-1.5rem;list-style:none}.blog-prose li>input[type=checkbox]{vertical-align:-.1em;width:1rem;height:1rem;accent-color:var(--color-accent);margin:0 .6rem 0 0}.blog-prose blockquote{border-left:2px solid var(--color-accent);color:var(--color-text-primary);font-family:var(--font-serif);margin:clamp(3rem,6vw,5rem) 0;padding:.25rem 0 .25rem clamp(1.5rem,4vw,3rem);font-size:clamp(1.5rem,2.6vw,2.25rem);font-style:italic;font-weight:500;line-height:1.25}.blog-prose blockquote p{margin:0}.blog-prose blockquote p+p{margin-top:1rem}.blog-prose blockquote:has(>:nth-child(2)){font-size:clamp(1.15rem,1.7vw,1.35rem);line-height:1.55}.blog-prose cite{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;margin-top:1rem;font-style:normal;display:block}.blog-prose del{color:var(--color-text-tertiary);text-decoration-thickness:1px}.blog-prose :is(a,code){overflow-wrap:anywhere}.blog-prose code{border:1px solid var(--border-default);background-color:var(--color-surface-secondary);color:var(--color-text-primary);font-family:var(--font-mono);border-radius:2px;padding:.12rem .35rem;font-size:.88em}.blog-prose pre{background-color:var(--color-surface-dark);color:var(--color-text-inverse);font-family:var(--font-mono);border-radius:4px;margin:2rem 0;padding:1.5rem;font-size:.875rem;line-height:1.65;overflow-x:auto}.blog-prose pre code{color:inherit;font-size:inherit;overflow-wrap:normal;background:0 0;border:0;padding:0}.blog-table{margin:2.5rem 0;overflow-x:auto}.blog-prose table{border-collapse:collapse;width:100%;min-width:32rem;font-size:.95em;line-height:1.55}.blog-prose th,.blog-prose td{border:1px solid var(--border-default);text-align:left;vertical-align:top;padding:.75rem 1rem}.blog-prose th{background-color:var(--color-surface-secondary);color:var(--color-text-primary);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;font-weight:500}.blog-prose hr{background-color:var(--border-default);border:0;height:1px;margin:4rem 0}.blog-figure{border:1px solid var(--border-default);background-color:var(--color-surface-secondary);margin:clamp(3rem,7vw,5rem) 0}.blog-figure img{width:100%;height:auto;display:block}.blog-figure picture{display:block}.blog-figure .fig-plate{align-items:flex-start;padding:.65rem .85rem;position:static}.blog-figure .fig-plate-label{white-space:normal;font-family:var(--font-sans);letter-spacing:0;text-transform:none;font-size:.875rem;line-height:1.5;overflow:visible}.blog-post-end{background-color:var(--color-surface-secondary);border-top:1px solid var(--border-default);padding:clamp(5rem,9vw,9rem) 0}.blog-end-row{border-bottom:1px solid var(--border-default);grid-template-columns:minmax(10rem,.3fr) minmax(0,1fr);gap:1rem 2rem;padding:1.75rem 0;display:grid}.blog-end-row:first-child{border-top:1px solid var(--border-default)}.blog-end-row+.blog-related{margin-top:clamp(4rem,7vw,6rem)}.blog-share{flex-wrap:wrap;align-items:center;gap:.5rem 1.75rem;display:flex}.blog-share-link{appearance:none;border:0;border-bottom:1px solid var(--border-accent);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;padding:0 0 .2rem}.blog-author{grid-template-columns:5rem minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}.blog-author-portrait{aspect-ratio:1;border:1px solid var(--border-default);background-color:var(--color-surface-placeholder);border-radius:50%;overflow:hidden}.blog-author-portrait img{object-fit:cover;width:100%;height:100%}.blog-author-portrait picture{height:100%;display:block}.blog-author-name{color:var(--color-text-primary);font-family:var(--font-display);letter-spacing:-.01em;font-size:1.35rem;font-weight:500}.blog-author-copy p{max-width:42rem;color:var(--color-text-secondary);margin:.4rem 0 .9rem;line-height:1.65}.blog-author-links{flex-wrap:wrap;gap:.5rem 1.75rem;display:flex}.blog-author-links a{border-bottom:1px solid var(--border-accent);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;padding-bottom:.2rem}@media (hover:hover){.blog-share-link:hover,.blog-author-links a:hover{border-bottom-color:var(--color-accent)}.blog-author-name:hover{color:var(--color-accent)}}.blog-tags ul{flex-wrap:wrap;gap:.65rem;margin:0;padding:0;list-style:none;display:flex}.blog-tags li{border:1px solid var(--border-default);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;border-radius:9999px;padding:.45rem .75rem}.blog-related-head{grid-template-columns:minmax(10rem,.3fr) minmax(0,1fr);align-items:end;gap:2rem;margin-bottom:3rem;display:grid}.blog-row--related .blog-row-title{font-size:clamp(1.6rem,3vw,2.8rem)}.blog-row--related .blog-row-category{margin-bottom:.5rem}.blog-post-contact .wrap{grid-template-columns:minmax(10rem,.3fr) minmax(0,1fr) auto;align-items:center;gap:2rem;display:grid}@media (width<=56.25rem){.blog-reading-grid{grid-template-columns:minmax(0,1fr)}.blog-reading-grid>.blog-prose{grid-column:auto}.blog-toc-desktop{display:none}.blog-toc-mobile{border-top:1px solid var(--border-default);border-bottom:1px solid var(--border-default);margin-bottom:1rem;padding:1rem 0;display:block}.blog-toc-mobile summary{cursor:pointer;margin:0;list-style:none}.blog-toc-mobile summary::-webkit-details-marker{display:none}.blog-toc-mobile summary:after{content:"+";float:right;color:var(--color-accent)}.blog-toc-mobile[open] summary:after{content:"−"}.blog-toc-mobile nav{padding-top:1.25rem}}@media (width<=45rem){.blog-end-row,.blog-related-head,.blog-post-contact .wrap{grid-template-columns:1fr}.blog-post-hero{padding-top:7rem}.blog-post-title{font-size:clamp(3rem,15vw,5.2rem)}.blog-reading{padding-top:3rem}.blog-prose{font-size:1rem;line-height:1.75}.blog-prose h2{margin-top:3.5rem}.blog-prose blockquote{margin:2.5rem 0}.blog-post-contact a{justify-self:start}}@media (prefers-reduced-motion:reduce){.blog-toc a{transition:none}}.author-hero{border-bottom:1px solid var(--border-default);padding:clamp(8rem,13vw,12rem) 0 clamp(5rem,9vw,8rem)}.author-hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(18rem,.7fr);align-items:end;gap:clamp(3rem,8vw,8rem);display:grid}.author-copy h1{max-width:10ch;font-family:var(--font-display);letter-spacing:-.04em;margin:0;font-size:clamp(4rem,9vw,8rem);font-weight:500;line-height:.92}.author-copy h1 em{color:var(--color-accent);font-weight:500}.author-lead{max-width:38rem;color:var(--color-text-secondary);font-family:var(--font-editorial);margin:clamp(2rem,5vw,4rem) 0 0;font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.6}.author-portrait{aspect-ratio:4/5;margin:0}.author-profile{padding:clamp(5rem,10vw,9rem) 0}.author-profile-grid{grid-template-columns:minmax(15rem,.7fr) minmax(0,1.3fr);gap:clamp(3rem,8vw,8rem);display:grid}.author-profile h2{max-width:13ch;font-family:var(--font-display);letter-spacing:-.035em;margin:1.25rem 0 0;font-size:clamp(2.5rem,5vw,4.5rem);font-weight:500;line-height:1}.author-profile h2 em{color:var(--color-accent);font-weight:500}.author-prose{color:var(--color-text-secondary);font-family:var(--font-editorial);font-size:clamp(1.05rem,1.45vw,1.2rem);line-height:1.8}.author-prose p{margin:0 0 1.6rem}.author-prose p:last-child{margin-bottom:0}.author-facts{border-top:1px solid var(--border-default);border-bottom:1px solid var(--border-default);grid-template-columns:repeat(4,minmax(0,1fr));margin:clamp(4rem,8vw,7rem) 0 0;display:grid}.author-facts>div{border-right:1px solid var(--border-default);padding:1.5rem}.author-facts>div:first-child{padding-left:0}.author-facts>div:last-child{border-right:0;padding-right:0}.author-facts dt{color:var(--color-text-tertiary);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.8rem}.author-facts dd{color:var(--color-text-primary);margin:0;font-size:.9375rem;line-height:1.5}.author-links{background-color:var(--color-surface-dark);color:var(--color-text-inverse);padding:clamp(4rem,8vw,7rem) 0}.author-links .wrap{grid-template-columns:minmax(10rem,.3fr) minmax(0,1fr);gap:2rem;display:grid}.author-links .blog-section-label{color:var(--color-accent-soft)}.author-links .wrap>div{flex-wrap:wrap;gap:1.25rem 2rem;display:flex}.author-links a{border-bottom:1px solid var(--color-accent-soft);color:var(--color-accent-soft);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;padding-bottom:.25rem}@media (width<=56.25rem){.author-hero-grid{grid-template-columns:1fr}.author-portrait{aspect-ratio:4/4.5;width:min(100%,34rem)}.author-profile-grid{grid-template-columns:1fr}.author-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.author-facts>div:nth-child(2){border-right:0}.author-facts>div:nth-child(3),.author-facts>div:nth-child(4){border-top:1px solid var(--border-default)}.author-facts>div:nth-child(3){padding-left:0}}@media (width<=45rem){.author-facts{grid-template-columns:1fr}.author-facts>div,.author-facts>div:first-child,.author-facts>div:last-child{border-right:0;border-top:1px solid var(--border-default);padding:1.25rem 0}.author-facts>div:first-child{border-top:0}.author-links .wrap{grid-template-columns:1fr}}@media (pointer:coarse){.nav-meta a,.legal-page-back,.case-back,.blog-breadcrumbs a,.detail-cta a,.offer-cta,.blog-index-meta a,.blog-post-author a,.blog-index-contact a,.blog-post-contact a,.blog-share-link,.blog-author-links a,.author-links a,.case-live-side a,.contact-modal-intro a,.not-found-ways a,.titleblock-value a,.footer-nav a{position:relative}.nav-meta a:after,.legal-page-back:after,.case-back:after,.blog-breadcrumbs a:after,.detail-cta a:after,.offer-cta:after,.blog-index-meta a:after,.blog-post-author a:after,.blog-index-contact a:after,.blog-post-contact a:after,.blog-share-link:after,.blog-author-links a:after,.author-links a:after,.case-live-side a:after,.contact-modal-intro a:after,.not-found-ways a:after,.titleblock-value a:after,.footer-nav a:after{content:"";min-width:var(--touch-target);height:var(--touch-target);position:absolute;top:50%;left:-.35rem;right:-.35rem;transform:translateY(-50%)}.footer-nav ul,.blog-share,.blog-author-links,.author-links .wrap>div{row-gap:1.75rem}.blog-index-meta{gap:1.75rem}.legal-page .not-found-ways li{margin-bottom:1.75rem}.blog-toc ol{gap:0}.blog-toc a{min-height:var(--touch-target);align-items:center;display:flex}}@media print{@page{margin:18mm 16mm}body:after,.grain-canvas,.scroll-ruler,.chapter-index,.back-to-top,.nav,.nav-dock,.dot-grid,.catalogue-preview,.blog-toc,.blog-share,.blog-related,.blog-index-contact,.blog-post-contact,.case-next,.contact-cta-row,.offer-cta,.footer-nav,.back-to-top{display:none}.blog-end-row:has(.blog-share){display:none}body{color:var(--color-text-primary);background:0 0;font-size:11pt}section{padding:1.5rem 0}.js .reveal:not(.visible),.js .stagger:not(.visible)>*,.js .approach-statement:not(.revealed){opacity:1;transform:none}.js .contact-statement:not(.revealed) .line>span{transform:none}.blog-post-hero,.blog-reading,.blog-post-end,.case-hero,.case-section{padding:1rem 0}.blog-reading-grid{display:block}.blog-prose{font-size:11pt}.blog-prose h2,.blog-prose h3,.blog-prose h4{break-after:avoid}.blog-figure,.blog-table,.blog-prose pre,.blog-prose blockquote,.case-process-step{break-inside:avoid}.blog-prose a[href^=http]:after,.case-live-url:after{content:" (" attr(href) ")";color:var(--color-text-secondary);overflow-wrap:anywhere;font-size:.85em}.blog-post-cover.placeholder--clickable{aspect-ratio:auto}.footer,.approach,.case-section--outcome,.case-outcome-metric,.titleblock-cell,.blog-post-end{color:var(--color-text-primary);background:0 0}.titleblock{background-color:var(--border-default);border-color:var(--border-default)}.titleblock-key,.footer-base,.case-outcome-tag,.case-outcome-label,.approach-tag,.pillar-body{color:var(--color-text-secondary)}.titleblock-value,.titleblock-value a,.case-outcome-statement,.case-outcome-value,.approach-statement,.pillar-title{color:var(--color-text-primary)}.approach:before{display:none}}
