@font-face{font-family: "Cormorant Garamond";src: url("/fonts/cormorant-garamond-latin.woff2") format("woff2");font-weight: 400 500;font-style: normal;font-display: swap;unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: "Cormorant Garamond";src: url("/fonts/cormorant-garamond-latin-ext.woff2") format("woff2");font-weight: 400 500;font-style: normal;font-display: swap;unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family: "Instrument Sans";src: url("/fonts/instrument-sans-latin.woff2") format("woff2");font-weight: 400 600;font-style: normal;font-display: swap;unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: "Instrument Sans";src: url("/fonts/instrument-sans-latin-ext.woff2") format("woff2");font-weight: 400 600;font-style: normal;font-display: swap;unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family: "Cormorant Fallback";src: local("Georgia"),local("Times New Roman");size-adjust: 88%;ascent-override: 98%;descent-override: 30%;line-gap-override: 0%}@font-face{font-family: "Instrument Fallback";src: local("Helvetica Neue"),local("Arial");size-adjust: 98%;ascent-override: 94%;descent-override: 24%;line-gap-override: 0%}:root{--ink: #0f0f0e;--ink-2: #1a1a18;--ink-3: #262522;--ivory: #f3eee5;--paper: #faf7f2;--sand: #d6c7ad;--sand-2: #b39d78;--accent-ink: #7d6440;--stone: #8d877c;--muted: #57534b;--muted-dark: #aaa397;--line: rgba(15,15,14,.14);--line-strong: rgba(15,15,14,.32);--line-dark: rgba(243,238,229,.16);--error: #9b2c1f;--success: #2f5d3a;--serif: "Cormorant Garamond","Cormorant Fallback",Georgia,serif;--sans: "Instrument Sans","Instrument Fallback",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--container: 1440px;--gutter: clamp(1rem,4.2vw,4.5rem);--section-y: clamp(5rem,12vw,11rem);--header-h: 4.5rem;--ease: cubic-bezier(.22,.61,.36,1);--ease-out: cubic-bezier(.16,1,.3,1);--dur: .6s;color-scheme: light}*,*::before,*::after{box-sizing: border-box}html{-webkit-text-size-adjust: 100%;text-size-adjust: 100%;scroll-behavior: smooth;scroll-padding-top: calc(var(--header-h) + 1rem)}body{margin: 0;background: var(--paper);color: var(--ink);font-family: var(--sans);font-size: clamp(1rem,.96rem + .2vw,1.0625rem);line-height: 1.65;font-feature-settings: "kern","liga","calt";-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;text-rendering: optimizeLegibility;overflow-x: clip}img,svg,video,picture{display: block;max-width: 100%;height: auto}a{color: inherit;text-decoration-thickness: 1px;text-underline-offset: .22em}html{caret-color: var(--accent-ink);accent-color: var(--ink);scrollbar-color: var(--stone) var(--ivory)}time,.post-meta,.case-facts dd{font-variant-numeric: tabular-nums lining-nums}svg.arrow{display: inline-block;width: 1em;height: 1em;flex: none}button,input,select,textarea{font: inherit;color: inherit}button{cursor: pointer}::selection{background: var(--sand);color: var(--ink)}:focus-visible{outline: 2px solid currentColor;outline-offset: 4px;border-radius: 2px}[hidden]{display: none !important}.skip-link{position: absolute;left: 1rem;top: -4rem;z-index: 200;background: var(--ink);color: var(--paper);padding: .75rem 1.25rem;text-decoration: none;transition: top .2s var(--ease)}.skip-link:focus{top: 1rem}.visually-hidden{position: absolute !important;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0 0 0 0);white-space: nowrap;border: 0}h1,h2,h3,h4{margin: 0;font-weight: 400;line-height: 1.05;letter-spacing: -.01em}.serif,h1,h2,.display{font-family: var(--serif)}h3{font-family: var(--serif);font-size: clamp(1.6rem,1.3rem + 1vw,2.25rem);line-height: 1.15}.section--dark :is(h1,h2,h3,.statement),.site-footer .big,.menu-overlay .menu-main a{font-weight: 500}h4{font-size: 1rem;font-weight: 600;letter-spacing: .01em}p{margin: 0 0 1.1em}p:last-child{margin-bottom: 0}em{font-style: italic}.display-xxl{font-size: clamp(2.9rem,1.4rem + 5.6vw,6rem);line-height: .96;letter-spacing: -.025em}.display-xl{font-size: clamp(2.4rem,1.4rem + 4.2vw,5.25rem);line-height: 1;letter-spacing: -.02em}.display-l{font-size: clamp(2.1rem,1.3rem + 3.4vw,4.6rem);line-height: 1.04;letter-spacing: -.018em}.display-m{font-size: clamp(1.75rem,1.3rem + 1.9vw,3rem);line-height: 1.1}h1 em,h2 em,h3 em{font-style: normal}.display-xl em,.display-l em,.display-xxl em,.display-m em{color: var(--accent-ink)}.section--dark .display-xl em,.section--dark .display-l em,.section--dark .display-xxl em,.section--dark .display-m em{color: var(--sand)}.lead{font-size: clamp(1.125rem,1rem + .55vw,1.45rem);line-height: 1.55;color: var(--muted);max-width: 40ch}.section--dark .lead{color: var(--muted-dark)}.statement{font-family: var(--serif);font-size: clamp(1.7rem,1.1rem + 2.6vw,3.6rem);line-height: 1.18;letter-spacing: -.01em}.eyebrow{display: inline-flex;align-items: center;gap: .9rem;margin: 0 0 1.6rem;font-size: .75rem;font-weight: 500;letter-spacing: .22em;text-transform: uppercase;color: var(--muted)}.eyebrow::before{content: "";width: 2.25rem;height: 1px;background: currentColor;opacity: .6}.section--dark .eyebrow{color: var(--muted-dark)}.label-heading{margin: 0 0 1.5rem;font-family: var(--sans);font-size: .78rem;font-weight: 500;line-height: 1.4;letter-spacing: .14em;text-transform: uppercase;color: var(--muted)}.section--dark .label-heading{color: var(--muted-dark)}.prose{max-width: 68ch}.prose h2{font-size: clamp(1.8rem,1.4rem + 1.5vw,2.6rem);margin: 2.4em 0 .7em}.prose h3{font-size: clamp(1.35rem,1.2rem + .6vw,1.7rem);margin: 2em 0 .6em}.prose h2:first-child,.prose h3:first-child{margin-top: 0}.prose ul,.prose ol{padding-left: 1.2em;margin: 0 0 1.3em}.prose li{margin-bottom: .5em}.prose li::marker{color: var(--sand-2)}.prose a{text-decoration-color: var(--sand-2)}.prose a:hover{text-decoration-color: currentColor}.prose blockquote{margin: 2em 0;padding: .2em 0 .2em 1.5em;border-left: 1px solid var(--sand-2);font-family: var(--serif);font-size: 1.45em;line-height: 1.35}.prose strong{font-weight: 600}.prose hr{border: 0;border-top: 1px solid var(--line);margin: 3em 0}.container{width: 100%;max-width: var(--container);margin-inline: auto;padding-inline: var(--gutter)}.container--narrow{max-width: 62rem}.section{padding-block: var(--section-y);position: relative}.section--tight{padding-block: clamp(3.5rem,8vw,7rem)}.section--paper{background: var(--paper)}.section--ivory{background: var(--ivory)}.section--dark{background: var(--ink);color: var(--ivory)}.section--dark ::selection{background: var(--sand);color: var(--ink)}.section + .section--paper:not(.section--flush),.section--ivory + .section--ivory{border-top: 1px solid var(--line)}.grid{display: grid;gap: clamp(1.5rem,3vw,3rem);grid-template-columns: repeat(12,minmax(0,1fr))}.grid>*{grid-column: 1 / -1}@media (min-width: 900px){.col-4{grid-column: span 4}.col-5{grid-column: span 5}.col-6{grid-column: span 6}.col-7{grid-column: span 7}.col-8{grid-column: span 8}.col-start-6{grid-column-start: 6}.col-start-7{grid-column-start: 7}.col-start-5{grid-column-start: 5}}.section-head{display: grid;gap: 1.5rem;margin-bottom: clamp(3rem,6vw,5.5rem)}@media (min-width: 900px){.section-head{grid-template-columns: 7fr 5fr;align-items: end;gap: 4rem}.section-head>:last-child{justify-self: end}}.rule{height: 1px;background: var(--line);border: 0;margin: 0}.section--dark .rule{background: var(--line-dark)}.demo-tag{display: inline-flex;align-items: center;gap: .45rem;padding: .3rem .7rem;border: 1px dashed currentColor;border-radius: 99px;font-family: var(--sans);font-size: .75rem;font-weight: 600;letter-spacing: .12em;text-transform: uppercase;color: #8a5a12;background: rgba(255,236,200,.55);line-height: 1.2;vertical-align: middle}.section--dark .demo-tag{color: #f1cf8f;background: rgba(241,207,143,.08)}.demo-note{border: 1px dashed #c29a55;background: #fff6e4;color: #5f420f;padding: 1rem 1.25rem;font-size: .9rem;border-radius: 2px;margin-block: 1.5rem}.site-header{position: fixed;inset: 0 0 auto;z-index: 100;height: var(--header-h);color: var(--ink);transition: transform .5s var(--ease-out),background-color .4s var(--ease),color .4s var(--ease),box-shadow .4s var(--ease)}.site-header.is-hidden{transform: translateY(-100%)}.site-header.is-solid{background: rgba(250,247,242,.86);-webkit-backdrop-filter: saturate(140%) blur(14px);backdrop-filter: saturate(140%) blur(14px);box-shadow: 0 1px 0 var(--line)}.has-dark-hero .site-header:not(.is-solid){color: var(--ivory)}.menu-open .site-header{color: var(--ivory);background: transparent;box-shadow: none;-webkit-backdrop-filter: none;backdrop-filter: none;transform: none}.header-inner{display: flex;align-items: center;justify-content: space-between;height: 100%;gap: 1.5rem}.logo{font-family: var(--serif);font-size: 1.8rem;font-weight: 500;letter-spacing: -.01em;text-decoration: none;line-height: 1;display: inline-flex;flex-direction: column;align-items: flex-start;gap: .3rem;position: relative;z-index: 2;white-space: nowrap}.logo .dot{color: var(--sand-2)}.logo-sub{font-family: var(--sans);font-size: .72rem;letter-spacing: .42em;text-transform: uppercase;opacity: .75;padding-left: .1rem}@media (min-width: 600px){.logo{flex-direction: row;align-items: baseline;gap: .7rem;font-size: 1.95rem}.logo-sub{font-size: .75rem;letter-spacing: .3em}}.nav-primary{display: none}.nav-primary>ul{list-style: none;display: flex;gap: clamp(1.25rem,2.4vw,2.6rem);margin: 0;padding: 0}.nav-primary a,.nav-primary button.nav-link{font-size: .9rem;letter-spacing: .01em;text-decoration: none;position: relative;padding-block: .5rem;background: none;border: 0;display: inline-block}.nav-primary>ul>li>a::after{content: "";position: absolute;left: 0;right: 0;bottom: .2rem;height: 1px;background: currentColor;transform: scaleX(0);transform-origin: right;transition: transform .45s var(--ease-out)}.nav-primary>ul>li>a:hover::after,.nav-primary>ul>li>a[aria-current="page"]::after,.nav-primary>ul>li>a.is-active::after{transform: scaleX(1);transform-origin: left}.has-sub{position: relative}.subnav{position: absolute;top: 100%;left: -1.5rem;min-width: 18rem;padding: 1rem 0;margin: 0;list-style: none;background: var(--paper);color: var(--ink);box-shadow: 0 20px 50px -20px rgba(15,15,14,.35),0 0 0 1px var(--line);opacity: 0;visibility: hidden;transform: translateY(8px);transition: opacity .3s var(--ease),transform .4s var(--ease-out),visibility 0s .3s}.has-sub:hover .subnav,.has-sub:focus-within .subnav{opacity: 1;visibility: visible;transform: none;transition-delay: 0s}.subnav a{display: block;padding: .55rem 1.5rem;font-size: .9rem;transition: background-color .2s,padding .3s var(--ease-out)}.subnav a:hover{background: var(--ivory);padding-left: 1.8rem}.header-actions{display: flex;align-items: center;gap: .75rem;position: relative;z-index: 2}.btn-quote{display: inline-flex;align-items: center;gap: .5rem;height: 2.5rem;padding: 0 1.1rem;border: 1px solid currentColor;border-radius: 99px;font-size: .82rem;letter-spacing: .02em;text-decoration: none;transition: background-color .35s var(--ease),color .35s var(--ease),border-color .35s;white-space: nowrap}.btn-quote:hover{background: var(--ink);color: var(--paper);border-color: var(--ink)}.has-dark-hero .site-header:not(.is-solid) .btn-quote:hover,.menu-open .btn-quote:hover{background: var(--ivory);color: var(--ink);border-color: var(--ivory)}.btn-quote .short{display: inline}.btn-quote .long{display: none}@media (min-width: 480px){.btn-quote .short{display: none}.btn-quote .long{display: inline}}.menu-toggle{display: inline-flex;align-items: center;gap: .65rem;height: 2.5rem;padding: 0 .25rem;background: none;border: 0;font-size: .82rem;letter-spacing: .08em;text-transform: uppercase}.menu-toggle .bars{width: 1.6rem;height: .6rem;position: relative;display: inline-block}.menu-toggle .bars::before,.menu-toggle .bars::after{content: "";position: absolute;left: 0;right: 0;height: 1px;background: currentColor;transition: transform .45s var(--ease-out),top .45s var(--ease-out)}.menu-toggle .bars::before{top: 0}.menu-toggle .bars::after{top: 100%}.menu-toggle[aria-expanded="true"] .bars::before{top: 50%;transform: rotate(45deg)}.menu-toggle[aria-expanded="true"] .bars::after{top: 50%;transform: rotate(-45deg)}.menu-overlay{position: fixed;inset: 0;z-index: 90;background: var(--ink);color: var(--ivory);display: flex;flex-direction: column;padding: calc(var(--header-h) + 2rem) var(--gutter) 2rem;overflow-y: auto;overscroll-behavior: contain;clip-path: inset(0 0 100% 0);transition: clip-path .7s var(--ease-out),visibility 0s .7s;visibility: hidden}.menu-overlay.is-open{clip-path: inset(0 0 0 0);visibility: visible;transition: clip-path .7s var(--ease-out)}.menu-overlay nav ul{list-style: none;margin: 0;padding: 0}.menu-main>li{border-bottom: 1px solid var(--line-dark);overflow: hidden}.menu-main>li>a{display: flex;align-items: baseline;gap: 1rem;padding: .7rem 0;text-decoration: none;font-family: var(--serif);font-size: clamp(2rem,1.4rem + 3vw,3.4rem);line-height: 1.1;transform: translateY(110%);transition: transform .8s var(--ease-out),color .3s}.menu-main>li>a small{font-family: var(--sans);font-size: .72rem;letter-spacing: .15em;color: var(--muted-dark);min-width: 1.8rem}.menu-main>li>a:hover{color: var(--sand)}.menu-overlay.is-open .menu-main>li>a{transform: none}.menu-overlay.is-open .menu-main>li:nth-child(2)>a{transition-delay: .05s}.menu-overlay.is-open .menu-main>li:nth-child(3)>a{transition-delay: .1s}.menu-overlay.is-open .menu-main>li:nth-child(4)>a{transition-delay: .15s}.menu-overlay.is-open .menu-main>li:nth-child(5)>a{transition-delay: .2s}.menu-overlay.is-open .menu-main>li:nth-child(6)>a{transition-delay: .25s}.menu-sub{display: flex;flex-wrap: wrap;gap: .3rem 1.25rem;padding: 0 0 1rem 2.8rem}.menu-sub a{font-size: .9rem;color: var(--muted-dark);text-decoration: none}.menu-sub a:hover{color: var(--ivory)}.menu-foot{margin-top: auto;padding-top: 2.5rem;display: grid;gap: .4rem;font-size: .9rem;color: var(--muted-dark)}.menu-foot a{color: var(--ivory)}body.menu-open{overflow: hidden}@media (min-width: 1080px){.nav-primary{display: block}.menu-toggle{display: none}.menu-overlay{display: none}}.btn{--btn-bg: var(--ink);--btn-fg: var(--paper);position: relative;display: inline-flex;align-items: center;justify-content: center;gap: .85rem;min-height: 3.5rem;padding: 0 2rem;border: 1px solid var(--btn-bg);border-radius: 99px;background: var(--btn-bg);color: var(--btn-fg);text-decoration: none;font-size: .92rem;letter-spacing: .02em;overflow: hidden;isolation: isolate;transition: color .45s var(--ease),border-color .45s var(--ease)}.btn::before{content: "";position: absolute;inset: 0;z-index: -1;background: var(--btn-fg);transform: translateY(101%);border-radius: inherit;transition: transform .55s var(--ease-out)}.btn:hover{color: var(--btn-bg)}.btn:hover::before{transform: none}.btn .arrow{transition: transform .45s var(--ease-out)}.btn:hover .arrow{transform: translateX(4px)}.btn--light{--btn-bg: var(--ivory);--btn-fg: var(--ink)}.btn--ghost{background: transparent;color: var(--btn-bg)}.btn--ghost::before{background: var(--btn-bg)}.btn--ghost:hover{color: var(--btn-fg)}.btn--ghost-light{--btn-bg: var(--ivory);--btn-fg: var(--ink);background: transparent;color: var(--ivory)}.btn--ghost-light::before{background: var(--ivory)}.btn--ghost-light:hover{color: var(--ink)}.btn[disabled]{opacity: .55;pointer-events: none}.link-arrow{display: inline-flex;align-items: center;gap: .75rem;text-decoration: none;font-size: .95rem;padding-bottom: .3rem;background: linear-gradient(currentColor,currentColor) 0 100% / 100% 1px no-repeat;transition: background-size .5s var(--ease-out)}.link-arrow:hover{background-size: 0 1px;background-position: 100% 100%}.link-arrow .arrow{transition: transform .45s var(--ease-out)}.link-arrow:hover .arrow{transform: translateX(5px)}.btn-row{display: flex;flex-wrap: wrap;gap: 1rem 1.5rem;align-items: center}.hero{position: relative;min-height: 100vh;min-height: 100svh;display: flex;flex-direction: column;justify-content: flex-end;padding-top: calc(var(--header-h) + 3rem);padding-bottom: clamp(2rem,5vw,3.5rem);overflow: hidden}.hero-art{position: absolute;inset: 0;pointer-events: none;overflow: hidden}.hero-art svg{position: absolute;right: -12%;bottom: 0;width: 125%;max-width: none;height: auto;opacity: .9}@media (min-width: 900px){.hero-art svg{right: -4%;width: 78%}}.hero-art::after{content: "";position: absolute;inset: 0;background: radial-gradient(120% 80% at 15% 85%,rgba(15,15,14,.92) 0%,rgba(15,15,14,.55) 45%,rgba(15,15,14,0) 75%)}.hero-content{position: relative;z-index: 1}.hero-title{font-size: clamp(2.6rem,1rem + 5.4vw,6rem);line-height: .98;letter-spacing: -.028em;max-width: 21ch;margin-bottom: clamp(2rem,4vw,3.5rem)}.hero-title .line{display: block;overflow: hidden;padding-bottom: .16em;margin-bottom: -.16em}.hero-title .line>span{display: inline-block}.hero-title em{color: var(--sand)}.hero-bottom{display: grid;gap: 2rem}@media (min-width: 900px){.hero-bottom{grid-template-columns: minmax(0,34rem) auto;justify-content: space-between;align-items: end}}.hero-sub{color: var(--muted-dark);font-size: clamp(1rem,.95rem + .3vw,1.18rem);max-width: 36rem;margin: 0}.hero-meta{position: relative;z-index: 1;margin-top: clamp(2.5rem,6vw,4.5rem);padding-top: 1.25rem;border-top: 1px solid var(--line-dark);display: flex;flex-wrap: wrap;justify-content: space-between;gap: .75rem 2rem;font-size: .72rem;letter-spacing: .18em;text-transform: uppercase;color: var(--muted-dark)}.hero-meta .hide-sm{display: none}@media (min-width: 700px){.hero-meta .hide-sm{display: inline}}.scroll-cue{display: inline-flex;align-items: center;gap: .75rem}.scroll-cue::after{content: "";width: 1px;height: 1.6rem;background: currentColor;transform-origin: top;animation: cue 2.4s var(--ease) infinite}@keyframes cue{0%{transform: scaleY(0)}45%{transform: scaleY(1);transform-origin: top}55%{transform: scaleY(1);transform-origin: bottom}100%{transform: scaleY(0);transform-origin: bottom}}.hero-art .arch{fill: none;stroke: var(--sand);stroke-width: 1;vector-effect: non-scaling-stroke;opacity: .55;stroke-dasharray: 2400;stroke-dashoffset: 2400;animation: draw 3.2s var(--ease-out) forwards}.hero-art .arch:nth-of-type(2){animation-delay: .15s;opacity: .45}.hero-art .arch:nth-of-type(3){animation-delay: .3s;opacity: .36}.hero-art .arch:nth-of-type(4){animation-delay: .45s;opacity: .28}.hero-art .arch:nth-of-type(5){animation-delay: .6s;opacity: .2}.hero-art .arch:nth-of-type(6){animation-delay: .75s;opacity: .14}.hero-art .horizon{stroke: var(--sand);stroke-width: 1;vector-effect: non-scaling-stroke;opacity: .5}.hero-art .wave{fill: none;stroke: var(--ivory);stroke-width: 1;vector-effect: non-scaling-stroke;opacity: .12;animation: swell 9s ease-in-out infinite alternate}.hero-art .wave:nth-of-type(2n){animation-duration: 12s;animation-delay: -3s;opacity: .08}.hero-art .sun{fill: var(--sand);opacity: .12}@keyframes draw{to{stroke-dashoffset: 0}}@keyframes swell{from{transform: translateX(-2%)}to{transform: translateX(2%)}}.hero-title .line>span{animation: rise 1.3s var(--ease-out) both}.hero-title .line:nth-child(2)>span{animation-delay: .12s}.hero-title .line:nth-child(3)>span{animation-delay: .24s}.hero .eyebrow,.hero-bottom,.hero-meta{animation: fade 1.4s var(--ease) .5s both}@keyframes rise{from{transform: translateY(105%)}to{transform: none}}@keyframes fade{from{opacity: 0;transform: translateY(12px)}to{opacity: 1;transform: none}}.philosophy .statement{max-width: 22ch}.philosophy-body{display: grid;gap: 2.5rem;margin-top: clamp(3rem,6vw,5rem)}@media (min-width: 900px){.philosophy-body{grid-template-columns: 5fr 7fr;gap: 5rem}}.philosophy-body .lead{max-width: none}.pillars{list-style: none;margin: 0;padding: 0;display: grid;gap: 0;border-top: 1px solid var(--line)}.pillars li{display: grid;grid-template-columns: 1fr;gap: 1rem;padding: 1.4rem 0;border-bottom: 1px solid var(--line)}.pillars li span{font-size: .75rem;letter-spacing: .15em;color: var(--muted);padding-top: .35rem}.pillars strong{display: block;font-family: var(--serif);font-weight: 400;font-size: 1.5rem;line-height: 1.2;margin-bottom: .25rem}.pillars p{color: var(--muted);margin: 0}.expertise-list{list-style: none;margin: 0;padding: 0;border-top: 1px solid var(--line);counter-reset: exp}.section--dark .expertise-list,.section--dark .expertise-row{border-color: var(--line-dark)}.expertise-row{position: relative;display: grid;grid-template-columns: 2.75rem 1fr auto;gap: .5rem 1rem;align-items: baseline;padding: clamp(1.6rem,3vw,2.6rem) 0;border-bottom: 1px solid var(--line);text-decoration: none;isolation: isolate;transition: color .5s var(--ease),padding .6s var(--ease-out)}.expertise-row::before{content: "";position: absolute;inset: 0 calc(var(--gutter) * -1);z-index: -1;background: var(--ink);transform: scaleY(0);transform-origin: bottom;transition: transform .6s var(--ease-out)}.expertise-row .num{font-size: .75rem;letter-spacing: .15em;color: var(--muted);transition: color .5s}.expertise-row h3{font-size: clamp(1.75rem,1.1rem + 2.8vw,3.9rem);line-height: 1.05;letter-spacing: -.015em}.expertise-row p{grid-column: 2 / 3;color: var(--muted);margin: .35rem 0 0;max-width: 46ch;transition: color .5s}.expertise-row .arrow-circle{grid-row: 1;grid-column: 3}.arrow-circle{display: inline-grid;place-items: center;width: 3rem;height: 3rem;border-radius: 50%;border: 1px solid var(--line-strong);transition: transform .6s var(--ease-out),background-color .4s,border-color .4s,color .4s}.arrow-circle svg{width: 1rem;height: 1rem;transition: transform .5s var(--ease-out)}@media (hover: hover){.expertise-row:hover{color: var(--ivory)}.expertise-row:hover::before{transform: scaleY(1)}.expertise-row:hover .num,.expertise-row:hover p{color: var(--muted-dark)}.expertise-row:hover .arrow-circle{background: var(--ivory);color: var(--ink);border-color: var(--ivory);transform: rotate(-45deg)}}@media (min-width: 900px){.expertise-row{grid-template-columns: 5rem minmax(0,1.3fr) minmax(0,1fr) auto;align-items: center}.expertise-row p{grid-column: 3;margin: 0}.expertise-row .arrow-circle{grid-column: 4}}.reasons{list-style: none;margin: 0;padding: 0;display: grid;grid-template-columns: 1fr;border-top: 1px solid var(--line)}.reasons li{padding: 2rem 0;border-bottom: 1px solid var(--line);display: grid;gap: .6rem}.reasons .num{font-size: .75rem;letter-spacing: .15em;color: var(--muted)}.reasons h3{font-size: clamp(1.4rem,1.2rem + .7vw,1.85rem)}.reasons p{color: var(--muted);margin: 0;max-width: 42ch}@media (min-width: 700px){.reasons{grid-template-columns: 1fr 1fr;border-top: 0}.reasons li{padding: 2.25rem 2rem 2.25rem 0;border-top: 1px solid var(--line);border-bottom: 0}}@media (min-width: 1100px){.reasons{grid-template-columns: repeat(4,1fr)}.reasons li:first-child{grid-column: span 2;padding-right: 4rem}.reasons li:first-child h3{font-size: clamp(2rem,1.4rem + 1.4vw,2.8rem)}}.steps{list-style: none;margin: 0;padding: 0;display: grid;gap: 0;counter-reset: step}.steps li{position: relative;padding: 2rem 0 2rem 4rem;border-top: 1px solid var(--line-dark)}.section--paper .steps li,.section--ivory .steps li{border-color: var(--line)}.steps li::before{counter-increment: step;content: counter(step,decimal-leading-zero);position: absolute;left: 0;top: 2.2rem;font-size: .75rem;letter-spacing: .15em;color: var(--muted-dark)}.section--paper .steps li::before,.section--ivory .steps li::before{color: var(--muted)}.steps h3{font-size: 1.6rem;margin-bottom: .6rem}.steps p{color: var(--muted-dark);margin: 0;font-size: .95rem}.section--paper .steps p,.section--ivory .steps p{color: var(--muted)}@media (min-width: 1000px){.steps{grid-template-columns: repeat(5,1fr);gap: 2rem}.steps li{padding: 4.5rem 0 0}.steps li::before{top: 1.5rem}}.sector-grid{display: grid;gap: 1px;background: var(--line);border: 1px solid var(--line)}@media (min-width: 700px){.sector-grid{grid-template-columns: repeat(2,1fr)}}@media (min-width: 1100px){.sector-grid{grid-template-columns: repeat(3,1fr)}}.sector-card{position: relative;display: flex;flex-direction: column;gap: 1rem;min-height: 19rem;padding: clamp(1.75rem,3vw,2.75rem);background: var(--paper);text-decoration: none;overflow: hidden;isolation: isolate;transition: color .5s var(--ease)}.section--ivory .sector-card{background: var(--ivory)}.sector-card::before{content: "";position: absolute;inset: 0;z-index: -1;background: var(--ink);clip-path: circle(0% at 100% 100%);transition: clip-path .8s var(--ease-out)}.sector-card .num{font-size: .75rem;letter-spacing: .15em;color: var(--muted)}.sector-card h3{font-size: clamp(1.7rem,1.3rem + 1.2vw,2.4rem);margin-top: auto}.sector-card p{color: var(--muted);margin: 0;font-size: .95rem;transition: color .5s}.sector-card .link-label{font-size: .85rem;display: inline-flex;gap: .5rem;align-items: center}a.sector-card:hover{color: var(--ivory)}a.sector-card:hover::before{clip-path: circle(150% at 100% 100%)}a.sector-card:hover p,a.sector-card:hover .num{color: var(--muted-dark)}.testimonials{display: grid;gap: 3rem}@media (min-width: 900px){.testimonials{grid-template-columns: repeat(2,1fr);gap: 5rem}}.testimonial blockquote{margin: 0 0 1.5rem;font-family: var(--serif);font-size: clamp(1.5rem,1.2rem + 1vw,2.1rem);line-height: 1.3}.testimonial figcaption{font-size: .9rem;color: var(--muted)}.cta-block{text-align: left}.cta-block .display-xl{max-width: 15ch;margin-bottom: 2rem}.cta-block .lead{margin-bottom: 3rem}.cta-split{display: grid;gap: 3rem;align-items: end}@media (min-width: 900px){.cta-split{grid-template-columns: 1fr auto}}.faq{border-top: 1px solid var(--line)}.section--dark .faq,.section--dark .faq-item{border-color: var(--line-dark)}.faq-item{border-bottom: 1px solid var(--line)}.faq-item summary{list-style: none;cursor: pointer;display: flex;justify-content: space-between;gap: 2rem;align-items: center;padding: 1.6rem 0;font-family: var(--serif);font-size: clamp(1.25rem,1.1rem + .6vw,1.65rem);line-height: 1.35}.faq-item summary::-webkit-details-marker{display: none}.faq-item summary::after{content: "";flex: none;width: .9rem;height: .9rem;background: linear-gradient(currentColor,currentColor) center / 100% 1px no-repeat,linear-gradient(currentColor,currentColor) center / 1px 100% no-repeat;transition: transform .45s var(--ease-out)}.faq-item[open] summary::after{transform: rotate(135deg)}.faq-item .faq-answer{padding: 0 0 1.8rem;color: var(--muted);max-width: 70ch}.section--dark .faq-item .faq-answer{color: var(--muted-dark)}.page-hero{padding-top: calc(var(--header-h) + clamp(4rem,10vw,9rem));padding-bottom: clamp(3.5rem,8vw,7rem);position: relative;overflow: hidden}.page-hero h1{max-width: 16ch}.page-hero .lead{margin-top: clamp(1.5rem,3vw,2.5rem);max-width: 44ch}.page-hero-grid{display: grid;gap: 2rem}@media (min-width: 900px){.page-hero-grid{grid-template-columns: 8fr 4fr;align-items: end}}.page-hero-aside{font-size: .9rem;color: var(--muted);border-left: 1px solid var(--line);padding-left: 1.5rem}.section--dark .page-hero-aside{color: var(--muted-dark);border-color: var(--line-dark)}.page-hero-aside dl{margin: 0;display: grid;gap: 1rem}.page-hero-aside dt{font-size: .75rem;letter-spacing: .18em;text-transform: uppercase;margin-bottom: .15rem}.page-hero-aside dd{margin: 0;color: inherit}.section--dark .page-hero-aside dd{color: var(--ivory)}.page-hero-aside dd{color: var(--ink)}.breadcrumb{margin-bottom: 2rem;font-size: .78rem;letter-spacing: .04em}.breadcrumb ol{list-style: none;margin: 0;padding: 0;display: flex;flex-wrap: wrap;gap: .4rem;color: var(--muted)}.section--dark .breadcrumb ol{color: var(--muted-dark)}.breadcrumb li + li::before{content: "/";margin-right: .4rem;opacity: .6}.breadcrumb a{text-decoration: none}.breadcrumb a:hover{text-decoration: underline}.two-col{display: grid;gap: 2.5rem}@media (min-width: 900px){.two-col{grid-template-columns: 4fr 8fr;gap: 6rem}.two-col>:first-child{position: sticky;top: calc(var(--header-h) + 2rem);align-self: start}}.feature-list{list-style: none;margin: 0;padding: 0;display: grid;gap: 0;border-top: 1px solid var(--line)}.feature-list li{padding: 1.75rem 0;border-bottom: 1px solid var(--line);display: grid;gap: .5rem}@media (min-width: 700px){.feature-list li{grid-template-columns: 16rem 1fr;gap: 2rem}}.feature-list h3{font-size: 1.45rem}.feature-list p{margin: 0;color: var(--muted)}.section--dark .feature-list,.section--dark .feature-list li{border-color: var(--line-dark)}.section--dark .feature-list p{color: var(--muted-dark)}.card-grid{display: grid;gap: 1.5rem}@media (min-width: 700px){.card-grid{grid-template-columns: repeat(2,1fr)}}@media (min-width: 1100px){.card-grid--3{grid-template-columns: repeat(3,1fr)}}.info-card{padding: 2rem;border: 1px solid var(--line);display: grid;gap: .75rem;align-content: start}.info-card h3{font-size: 1.5rem}.info-card p{color: var(--muted);margin: 0}.related{display: grid;gap: 1px;background: var(--line);border-block: 1px solid var(--line)}@media (min-width: 800px){.related{grid-template-columns: repeat(3,1fr)}}.related a{display: grid;gap: .5rem;padding: 2rem 1.5rem 2rem 0;background: var(--paper);text-decoration: none;transition: padding .5s var(--ease-out)}.section--ivory .related a{background: var(--ivory)}.related a:hover{padding-left: 1rem}.related small{font-size: .72rem;letter-spacing: .16em;text-transform: uppercase;color: var(--muted)}.related span{font-family: var(--serif);font-size: 1.6rem;line-height: 1.15}.founder{display: grid;gap: 3rem;align-items: center}@media (min-width: 900px){.founder{grid-template-columns: 5fr 7fr;gap: 6rem}}.portrait-slot{aspect-ratio: 4 / 5;background: var(--ink-2);border: 1px solid var(--line-dark);display: grid;place-items: center;text-align: center;padding: 2rem;color: var(--muted-dark);font-size: .85rem;position: relative;overflow: hidden}.portrait-slot img{position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover}.portrait-slot svg{width: 40%;opacity: .5;margin: 0 auto 1rem}.values-band{display: flex;flex-wrap: wrap;gap: .5rem 2.5rem;font-family: var(--serif);font-size: clamp(1.6rem,1.2rem + 2vw,3rem);line-height: 1.2}.values-band span:not(:last-child)::after{content: "·";margin-left: 2.5rem;color: var(--sand-2)}.legal h2{font-size: 1.8rem;margin: 2.5em 0 .6em}.legal p,.legal li{color: var(--muted)}.filters{display: flex;flex-wrap: wrap;gap: .6rem;margin-bottom: 3rem}.filter-btn{height: 2.6rem;padding: 0 1.2rem;border-radius: 99px;border: 1px solid var(--line-strong);background: transparent;font-size: .85rem;transition: background-color .3s,color .3s,border-color .3s}.section--dark .filter-btn{border-color: var(--line-dark)}.filter-btn:hover{border-color: currentColor}.filter-btn[aria-pressed="true"]{background: var(--ink);color: var(--paper);border-color: var(--ink)}.section--dark .filter-btn[aria-pressed="true"]{background: var(--ivory);color: var(--ink);border-color: var(--ivory)}.projects{display: grid;gap: clamp(3rem,6vw,5rem) clamp(1.5rem,3vw,3rem)}@media (min-width: 900px){.projects{grid-template-columns: repeat(12,1fr)}.projects>.project-card{grid-column: span 6}.projects>.project-card:nth-child(3n+1){grid-column: 1 / -1}.projects>.project-card:nth-child(3n+1) .project-media{aspect-ratio: 16 / 8.5}.projects>.project-card:nth-child(3n+3){margin-top: 8rem}}.project-card{display: block;text-decoration: none}.project-media{position: relative;aspect-ratio: 16 / 11;overflow: hidden;background: var(--ink-2)}.project-media img{width: 100%;height: 100%;object-fit: cover;transition: transform 1.4s var(--ease-out),filter .8s}.project-media::after{content: "Voir le projet";position: absolute;left: 50%;top: 50%;width: 7.5rem;height: 7.5rem;margin: -3.75rem 0 0 -3.75rem;display: grid;place-items: center;border-radius: 50%;background: var(--ivory);color: var(--ink);font-size: .78rem;letter-spacing: .06em;transform: scale(0);transition: transform .6s var(--ease-out)}@media (hover: hover){.project-card:hover .project-media img{transform: scale(1.045)}.project-card:hover .project-media::after{transform: scale(1)}}.project-media .demo-tag{position: absolute;top: 1rem;left: 1rem;z-index: 1;background: var(--ink) !important;color: #f1cf8f !important;border-style: solid}.project-info{display: flex;justify-content: space-between;gap: 1.5rem;padding-top: 1.4rem;align-items: baseline;flex-wrap: wrap}.project-info h3{font-size: clamp(1.6rem,1.2rem + 1.2vw,2.4rem)}.project-meta{font-size: .78rem;letter-spacing: .1em;text-transform: uppercase;color: var(--muted);display: flex;flex-wrap: wrap;gap: .3rem 1rem}.section--dark .project-meta{color: var(--muted-dark)}.projects-empty{padding: 3rem 0;color: var(--muted)}.case-hero-media{margin-top: clamp(3rem,6vw,5rem);aspect-ratio: 16 / 9;overflow: hidden;background: var(--ink-2)}.case-hero-media img{width: 100%;height: 100%;object-fit: cover}.case-facts{display: grid;grid-template-columns: repeat(2,1fr);gap: 1.5rem;padding: 2rem 0;border-block: 1px solid var(--line);margin: 0}@media (min-width: 900px){.case-facts{grid-template-columns: repeat(4,1fr)}}.case-facts dt{font-size: .75rem;letter-spacing: .18em;text-transform: uppercase;color: var(--muted);margin-bottom: .35rem}.case-facts dd{margin: 0;font-family: var(--serif);font-size: 1.3rem;line-height: 1.35}.devices{display: grid;gap: 2rem;align-items: end}@media (min-width: 900px){.devices{grid-template-columns: 3fr 1fr;gap: 3rem}}.devices figure{margin: 0}.devices figcaption{font-size: .8rem;color: var(--muted-dark);margin-top: .8rem;letter-spacing: .04em}.device-mobile{max-width: 18rem;margin-inline: auto}.case-nav{display: flex;justify-content: space-between;gap: 2rem;flex-wrap: wrap}.posts{display: grid;gap: 0;border-top: 1px solid var(--line)}.post-row{display: grid;gap: .6rem;padding: 2rem 0;border-bottom: 1px solid var(--line);text-decoration: none;transition: padding .5s var(--ease-out)}.post-row:hover{padding-left: .75rem}.post-row h3,.post-row h2{font-size: clamp(1.5rem,1.2rem + 1.1vw,2.3rem);transition: color .3s}.post-row:hover h3,.post-row:hover h2{color: var(--accent-ink)}.post-row p{color: var(--muted);margin: 0;max-width: 60ch}.post-meta{font-size: .75rem;letter-spacing: .14em;text-transform: uppercase;color: var(--muted);display: flex;gap: 1rem;flex-wrap: wrap}@media (min-width: 900px){.post-row{grid-template-columns: 12rem minmax(0,1fr) minmax(0,.8fr);gap: 3rem;align-items: baseline}.post-row .post-meta{flex-direction: column;gap: .3rem}}.post-cards{display: grid;gap: 2.5rem}@media (min-width: 900px){.post-cards{grid-template-columns: repeat(3,1fr);gap: 2rem}}.post-card{display: grid;gap: .9rem;text-decoration: none;padding-top: 1.5rem;border-top: 1px solid var(--line)}.post-card h3{font-size: 1.6rem;transition: color .3s}.post-card:hover h3{color: var(--accent-ink)}.post-card p{color: var(--muted);margin: 0;font-size: .95rem}.article-header{padding-top: calc(var(--header-h) + clamp(4rem,9vw,8rem));padding-bottom: clamp(3rem,6vw,5rem)}.article-header h1{max-width: 20ch}.article-layout{display: grid;gap: 3rem}@media (min-width: 1000px){.article-layout{grid-template-columns: 1fr minmax(0,44rem) 1fr}.article-layout .prose{grid-column: 2}.article-aside{grid-column: 3;padding-left: 3rem}}.article-body{font-size: clamp(1.05rem,1rem + .2vw,1.15rem)}.article-body>p:first-of-type::first-letter{font-family: var(--serif);float: left;font-size: 4.6em;line-height: .8;padding: .08em .1em 0 0;color: var(--accent-ink)}.article-aside{font-size: .9rem;color: var(--muted)}.article-aside .sticky{position: sticky;top: calc(var(--header-h) + 2rem);display: grid;gap: 1rem}.article-cta{margin-top: 4rem;padding: 2.5rem;background: var(--ivory)}.article-cta h2{margin-top: 0 !important;font-size: 2rem !important}.toc{list-style: none;margin: 0;padding: 0;display: grid;gap: .6rem;counter-reset: toc}.toc li{counter-increment: toc;display: grid;grid-template-columns: 1.8rem 1fr;line-height: 1.4}.toc li::before{content: counter(toc,decimal-leading-zero);font-size: .75rem;letter-spacing: .1em;padding-top: .2rem}.toc a{text-decoration: none;color: var(--muted);transition: color .2s}.toc a:hover{color: var(--ink)}@media (max-width: 999px){.article-aside{display: none}}code{font-family: ui-monospace,SFMono-Regular,Menlo,monospace;font-size: .88em;background: var(--ivory);padding: .1em .35em;border-radius: 3px}.form-layout{display: grid;gap: 4rem}@media (min-width: 1000px){.form-layout{grid-template-columns: 4fr 8fr;gap: 6rem}.form-layout>aside{position: sticky;top: calc(var(--header-h) + 2rem);align-self: start}}.contact-aside dl{margin: 2rem 0 0;display: grid;gap: 1.5rem}.contact-aside dt{font-size: .75rem;letter-spacing: .18em;text-transform: uppercase;color: var(--muted);margin-bottom: .2rem}.contact-aside dd{margin: 0;font-family: var(--serif);font-size: 1.35rem}.quote-form{--field-line: var(--line-strong)}.form-progress{display: none;gap: .5rem;margin-bottom: 2.5rem;list-style: none;padding: 0}.js .quote-form.is-stepped .form-progress{display: flex}.form-progress li{flex: 1;font-size: .72rem;letter-spacing: .14em;text-transform: uppercase;color: var(--muted);padding-top: .8rem;border-top: 2px solid var(--line);transition: color .3s,border-color .3s}.form-progress li.is-current,.form-progress li.is-done{color: var(--ink);border-color: var(--ink)}.form-step{border: 0;margin: 0 0 3.5rem;padding: 0;min-width: 0}.form-step legend{font-family: var(--serif);font-size: clamp(1.7rem,1.3rem + 1.4vw,2.5rem);line-height: 1.15;margin-bottom: 2rem;padding: 0}.form-step legend small{display: block;font-family: var(--sans);font-size: .72rem;letter-spacing: .18em;text-transform: uppercase;color: var(--muted);margin-bottom: .6rem}.js .quote-form.is-stepped .form-step:not(.is-current){display: none}.js .quote-form.is-stepped .form-step.is-current{animation: fade .6s var(--ease) both}.fields{display: grid;gap: 1.75rem 2rem}@media (min-width: 700px){.fields{grid-template-columns: 1fr 1fr}.field--full{grid-column: 1 / -1}}.field{display: grid;gap: .5rem;align-content: start}.field label,.field .label{font-size: .85rem;font-weight: 500}.field .opt{color: var(--muted);font-weight: 400}.field .hint{font-size: .8rem;color: var(--muted)}.field input[type="text"],.field input[type="email"],.field input[type="tel"],.field input[type="url"],.field select,.field textarea{width: 100%;min-height: 3.25rem;padding: .75rem 0;border: 0;border-bottom: 1px solid var(--field-line);border-radius: 0;background: transparent;font-size: 1.05rem;transition: border-color .3s;-webkit-appearance: none;appearance: none}.field select{background-image: linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position: calc(100% - 10px) 55%,calc(100% - 5px) 55%;background-size: 5px 5px;background-repeat: no-repeat;padding-right: 1.5rem}.field textarea{min-height: 9rem;resize: vertical;line-height: 1.55}.field input:focus,.field select:focus,.field textarea:focus{outline: none;border-bottom-color: var(--ink);box-shadow: 0 1px 0 var(--ink)}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline: 2px solid var(--ink);outline-offset: 4px}.field.has-error input,.field.has-error select,.field.has-error textarea{border-bottom-color: var(--error)}.field-error{color: var(--error);font-size: .82rem}.choice-group{display: flex;flex-wrap: wrap;gap: .6rem}.choice{position: relative}.choice input{position: absolute;opacity: 0;inset: 0;width: 100%;height: 100%;margin: 0;cursor: pointer}.choice span{display: inline-flex;align-items: center;min-height: 2.9rem;padding: .55rem 1.15rem;border: 1px solid var(--line-strong);border-radius: 99px;font-size: .9rem;transition: background-color .25s,color .25s,border-color .25s;user-select: none}.choice input:hover + span{border-color: var(--ink)}.choice input:checked + span{background: var(--ink);color: var(--paper);border-color: var(--ink)}.choice input:focus-visible + span{outline: 2px solid var(--ink);outline-offset: 3px}.consent{display: grid;grid-template-columns: auto 1fr;gap: .9rem;align-items: start;font-size: .88rem;color: var(--muted)}.consent input{width: 1.25rem;height: 1.25rem;margin-top: .15rem;accent-color: var(--ink)}.hp-field{position: absolute !important;left: -10000px;width: 1px;height: 1px;overflow: hidden}.form-actions{display: flex;flex-wrap: wrap;gap: 1rem;justify-content: space-between;align-items: center;margin-top: 2.5rem}.form-nav-btns{display: flex;gap: 1rem;flex-wrap: wrap}.form-status{margin-top: 2rem;padding: 1.25rem 1.5rem;border: 1px solid;font-size: .95rem}.form-status.is-error{border-color: var(--error);background: #fbeeec;color: #5a1b13}.form-status.is-success{border-color: var(--success);background: #edf3ee;color: #1d3a24}.form-success{padding: 3rem 0}.form-success h2{margin-bottom: 1.5rem}.cf-turnstile{margin-top: 1.5rem;min-height: 65px}.spinner{width: 1rem;height: 1rem;border: 1.5px solid currentColor;border-right-color: transparent;border-radius: 50%;animation: spin .8s linear infinite;display: none}.is-loading .spinner{display: inline-block}@keyframes spin{to{transform: rotate(360deg)}}.site-footer{background: var(--ink);color: var(--ivory);padding-top: clamp(5rem,10vw,9rem);padding-bottom: 2rem;position: relative;overflow: hidden}.footer-cta{display: block;text-decoration: none;padding-bottom: clamp(3rem,7vw,6rem);border-bottom: 1px solid var(--line-dark)}.footer-cta small{display: block;font-size: .75rem;letter-spacing: .22em;text-transform: uppercase;color: var(--muted-dark);margin-bottom: 1.5rem}.footer-cta span.big{font-family: var(--serif);font-size: clamp(2.4rem,1rem + 5.4vw,6rem);line-height: .98;letter-spacing: -.025em;display: inline-flex;align-items: center;gap: .3em;flex-wrap: wrap}.footer-cta .arrow-circle{width: clamp(3.5rem,6vw,6rem);height: clamp(3.5rem,6vw,6rem);border-color: var(--line-dark)}.footer-cta:hover .arrow-circle{background: var(--ivory);color: var(--ink);transform: rotate(-45deg)}.footer-cta:hover em{color: var(--sand)}.footer-grid{display: grid;gap: 2.5rem;padding-block: clamp(3rem,6vw,5rem);grid-template-columns: repeat(2,1fr)}@media (min-width: 900px){.footer-grid{grid-template-columns: 2fr 1fr 1fr 1fr}}.footer-grid>div:first-child{grid-column: 1 / -1}@media (min-width: 900px){.footer-grid>div:first-child{grid-column: auto}}.footer-grid h2{font-family: var(--sans);font-size: .72rem;letter-spacing: .2em;text-transform: uppercase;color: var(--muted-dark);margin-bottom: 1.25rem;font-weight: 500}.footer-grid ul{list-style: none;margin: 0;padding: 0;display: grid;gap: .55rem}.footer-grid a{text-decoration: none;font-size: .93rem}.footer-grid a:hover{text-decoration: underline}.footer-grid address{font-style: normal;color: var(--muted-dark);font-size: .93rem;line-height: 1.7}.footer-grid address a{color: var(--ivory)}.footer-bottom{display: flex;flex-wrap: wrap;justify-content: space-between;gap: 1rem;padding-top: 2rem;border-top: 1px solid var(--line-dark);font-size: .8rem;color: var(--muted-dark)}.footer-bottom ul{display: flex;flex-wrap: wrap;gap: 1.5rem;list-style: none;margin: 0;padding: 0}.footer-bottom a{text-decoration: none}.footer-bottom a:hover{color: var(--ivory)}.js .reveal-mask img{transform: scale(1.06);filter: saturate(.85);transition: transform 1.6s var(--ease-out),filter 1.2s var(--ease)}.js .reveal-mask.is-in img{transform: none;filter: none}@view-transition{navigation: auto}::view-transition-old(root){animation: vt-out .35s var(--ease) both}::view-transition-new(root){animation: vt-in .6s var(--ease-out) both}@keyframes vt-out{to{opacity: 0;transform: translateY(-8px)}}@keyframes vt-in{from{opacity: 0;transform: translateY(14px)}}@media (prefers-reduced-motion: reduce){html{scroll-behavior: auto}*,*::before,*::after{animation-duration: .01ms !important;animation-iteration-count: 1 !important;transition-duration: .01ms !important;transition-delay: 0s !important}.js .reveal,.js .reveal-mask,.js .reveal-mask img{opacity: 1;transform: none;clip-path: none}.hero-art .arch{stroke-dashoffset: 0}::view-transition-old(root),::view-transition-new(root){animation: none}}@media print{.site-header,.menu-overlay,.site-footer,.btn,.hero-art{display: none !important}body{background: #fff;color: #000}.section--dark{background: #fff;color: #000}}