@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url('/fonts/instrument-serif-italic-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url('/fonts/instrument-serif-italic-latin.woff2') format('woff2');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 Serif';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/instrument-serif-regular-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Instrument Serif';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/instrument-serif-regular-latin.woff2') format('woff2');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:'Inter';font-style:normal;font-weight:300;font-display:swap;src:url('/fonts/inter-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Inter';font-style:normal;font-weight:300;font-display:swap;src:url('/fonts/inter-latin.woff2') format('woff2');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:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/inter-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/inter-latin.woff2') format('woff2');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:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/inter-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/inter-latin.woff2') format('woff2');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:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/jetbrains-mono-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/jetbrains-mono-latin.woff2') format('woff2');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:'Quicksand';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/quicksand-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Quicksand';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/quicksand-latin.woff2') format('woff2');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:'Quicksand';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/quicksand-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Quicksand';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/quicksand-latin.woff2') format('woff2');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:'Quicksand';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/quicksand-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Quicksand';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/quicksand-latin.woff2') format('woff2');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:'Quicksand';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/quicksand-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Quicksand';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/quicksand-latin.woff2') format('woff2');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}
html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}:root{--bg:#f5f3ee;--ink:#1a1a1a;--ink-2:#2b2a27;--muted:#8a7861;--rule:rgba(26,26,26,0.12);--rule-strong:rgba(26,26,26,0.28);--accent:#8a7861;--yellow:#f2b705;--sans:"Inter","Helvetica Neue",Helvetica,Arial,sans-serif;--serif:"Instrument Serif","Times New Roman",serif;--mono:"JetBrains Mono",ui-monospace,Menlo,monospace;--pad-x:clamp(20px,4vw,56px);--pad-y:clamp(24px,4vw,40px);--ease:cubic-bezier(.22,.61,.36,1)}*{box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:hidden;overflow-x:clip}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:400;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;letter-spacing:-0.005em}a{color:inherit;text-decoration:none}::selection{background:var(--ink);color:var(--bg)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:1100;max-width:760px;margin:0 auto;background:var(--bg);border:1px solid var(--rule-strong);box-shadow:0 14px 44px rgba(0,0,0,0.10);padding:22px 26px;font-family:var(--sans);max-height:calc(100vh - 32px);overflow-y:auto}.consent h2{font-family:var(--mono);font-weight:400;font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--ink-2);opacity:.7;margin:0 0 10px}.consent p{margin:0 0 16px;font-size:14px;line-height:1.55;color:var(--ink-2)}.consent p a{color:var(--ink);border-bottom:1px solid var(--rule-strong);transition:border-color .25s var(--ease)}.consent p a:hover{border-bottom-color:var(--ink)}.consent .actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.consent button,.btn-pref{font-family:var(--mono);font-size:11px;font-weight:400;letter-spacing:0.14em;text-transform:uppercase;padding:12px 22px;border:1px solid var(--ink);background:var(--bg);color:var(--ink);cursor:pointer;transition:background .25s var(--ease),color .25s var(--ease),opacity .25s var(--ease)}.consent button:hover,.btn-pref:hover{background:var(--ink);color:var(--bg)}.consent button.primary{background:var(--ink);color:var(--bg)}.consent button.primary:hover{opacity:0.85}.consent .consent-cats{list-style:none;margin:0 0 22px;padding:0;border-top:1px solid var(--rule)}.consent .consent-cats>li{padding:16px 0;border-bottom:1px solid var(--rule)}.consent .cat-row{display:flex;align-items:center;gap:14px;cursor:pointer;user-select:none}.consent .cat-row input[type="checkbox"]{width:16px;height:16px;margin:0;cursor:pointer;flex-shrink:0;accent-color:var(--ink)}.consent .cat-row input[disabled]{cursor:not-allowed;opacity:0.6}.consent .cat-meta{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.consent .cat-name{font-family:var(--sans);font-size:15px;color:var(--ink);font-weight:500}.consent .cat-badge{font-family:var(--mono);font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-2);opacity:.7}.consent .cat-desc{margin:8px 0 0 30px;font-size:13px;color:var(--ink-2);opacity:.75;line-height:1.5}@media (max-width:720px){.consent{padding:18px 20px;left:8px;right:8px;bottom:8px}.consent .actions{flex-direction:column-reverse;gap:8px}.consent .actions button{width:100%}.consent .cat-desc{margin-left:30px}}.filters{display:flex;gap:4px;flex-wrap:wrap;font-family:var(--mono);font-size:11px;letter-spacing:0.08em;text-transform:uppercase}.filters button{background:none;border:1px solid var(--rule);padding:8px 14px;border-radius:999px;color:var(--ink-2);cursor:pointer;font:inherit;letter-spacing:0.08em;text-transform:uppercase;transition:background .3s var(--ease),border-color .3s var(--ease),color .3s var(--ease)}.filters button.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}.filters button:hover:not(.on){border-color:var(--rule-strong)}
.chrome{position:fixed;inset:0 0 auto 0;z-index:50;display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:clamp(16px,3vw,40px);padding:var(--pad-y) var(--pad-x);pointer-events:none;color:#fff;transition:color .5s var(--ease)}.chrome.on-light{color:var(--ink)}.chrome>*{pointer-events:auto}.chrome .mark{display:inline-flex;align-items:center;gap:14px;line-height:1}.chrome .mark .glyph{font-family:"Quicksand",var(--sans);font-weight:500;font-size:26px;line-height:0.9;letter-spacing:-0.02em;display:inline-flex;align-items:baseline}.chrome .mark .glyph .plus{font-weight:700;font-size:22px;margin-right:1px}.chrome .mark .glyph .r{font-weight:700}.chrome .mark .bar{width:3px;height:28px;background:var(--yellow);flex:0 0 auto}.chrome .mark .words{display:inline-flex;flex-direction:column;font-family:"Quicksand",var(--sans);font-weight:500;font-size:10px;letter-spacing:0.16em;text-transform:uppercase;line-height:1.15}.chrome .mark .words span:last-child{font-weight:600;letter-spacing:0.28em}.chrome nav{justify-self:center;display:flex;gap:32px;font-size:12px;letter-spacing:0.14em;text-transform:uppercase}.chrome nav a{position:relative;padding:2px 0}.chrome nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-4px;height:1px;background:currentColor;transition:right .4s var(--ease)}.chrome nav a:hover::after,.chrome nav a.active::after{right:0}.chrome .meta{justify-self:end;display:flex;gap:24px;align-items:center;font-size:12px;letter-spacing:0.14em;text-transform:uppercase}.chrome .quick{display:flex;align-items:center;gap:14px}.chrome .quick a{display:inline-flex;align-items:center;justify-content:center;opacity:.8;transition:opacity .3s var(--ease)}.chrome .quick a:hover{opacity:1}.chrome .quick svg{display:block;width:18px;height:18px}.lang{display:flex;gap:6px}.lang button,.lang a{background:none;border:0;color:inherit;cursor:pointer;font:inherit;letter-spacing:0.14em;text-transform:uppercase;opacity:.5;padding:0;text-decoration:none}.lang button.on,.lang a.on{opacity:1}.lang span{opacity:.4}.burger{display:none;background:none;border:0;cursor:pointer;color:inherit;width:28px;height:22px;position:relative;padding:0}.burger span{position:absolute;left:0;right:0;height:1.5px;background:currentColor;transition:transform .4s var(--ease),top .3s var(--ease),opacity .2s var(--ease)}.burger span:nth-child(1){top:5px}.burger span:nth-child(2){top:50%;margin-top:-0.75px}.burger span:nth-child(3){top:calc(100% - 6.5px)}.burger.open span:nth-child(1){top:50%;margin-top:-0.75px;transform:rotate(45deg)}.burger.open span:nth-child(2){opacity:0}.burger.open span:nth-child(3){top:50%;margin-top:-0.75px;transform:rotate(-45deg)}.drawer{position:fixed;inset:0;z-index:49;background:var(--bg);color:var(--ink);opacity:0;pointer-events:none;transition:opacity .5s var(--ease);display:flex;flex-direction:column;justify-content:center;padding:120px var(--pad-x) 60px}.drawer.open{opacity:1;pointer-events:auto}.drawer nav{display:flex;flex-direction:column;gap:0;font-family:var(--serif);font-size:clamp(40px,8vw,72px);line-height:1;letter-spacing:-0.02em}.drawer nav a{display:flex;justify-content:space-between;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--rule);transform:translateY(12px);opacity:0;transition:transform .5s var(--ease),opacity .5s var(--ease)}.drawer nav a .num{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;color:var(--muted);text-transform:uppercase}.drawer.open nav a{transform:translateY(0);opacity:1}.drawer.open nav a:nth-child(1){transition-delay:.1s}.drawer.open nav a:nth-child(2){transition-delay:.16s}.drawer.open nav a:nth-child(3){transition-delay:.22s}.drawer.open nav a:nth-child(4){transition-delay:.28s}.drawer .foot{margin-top:40px;display:flex;flex-direction:column;gap:10px;font-family:var(--mono);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--muted)}.drawer .foot a{color:var(--ink)}body.drawer-open{overflow:hidden}@media (max-width:900px){.chrome{grid-template-columns:auto 1fr auto;align-items:center}.chrome nav{display:none}.chrome .meta{display:flex;gap:0}.chrome .meta>a,.chrome .meta .lang{display:none}.chrome .quick{gap:2px}.chrome .quick a{padding:10px;margin:-10px 0}.burger{display:inline-block;justify-self:end;color:currentColor}}
body>section{padding:clamp(80px,10vw,160px) var(--pad-x)}.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:0.12em;color:var(--muted);text-transform:uppercase;margin:0 0 clamp(40px,6vw,80px) 0;display:flex;gap:12px;align-items:center}.eyebrow::before{content:"";width:28px;height:1px;background:var(--muted)}.contact{background:var(--ink);color:var(--bg);padding:clamp(80px,10vw,160px) var(--pad-x) clamp(40px,5vw,64px)}.contact .eyebrow{color:rgba(245,243,238,0.6)}.contact .eyebrow::before{background:rgba(245,243,238,0.5)}.contact .grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(40px,6vw,100px);align-items:start}.contact h2{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(48px,6vw,96px);line-height:0.95;letter-spacing:-0.025em;text-wrap:balance}.contact h2 em{font-style:italic;color:#bfb29a}.contact .info{display:grid;gap:28px;padding-bottom:8px;margin-top:clamp(40px,6vw,80px)}.contact .info .row span{display:block;font-family:var(--mono);font-size:10px;letter-spacing:0.12em;color:rgba(245,243,238,0.55);text-transform:uppercase;margin-bottom:6px}.contact .info .row a,.contact .info .row strong{font-weight:400;font-size:17px;color:var(--bg);letter-spacing:-0.005em}.contact-form{display:grid;gap:0}.contact-form .field{position:relative;padding:22px 0 14px;border-bottom:1px solid rgba(245,243,238,0.32);transition:border-color .3s var(--ease)}.contact-form .field:focus-within{border-color:#fff}.contact-form .field label{font-family:var(--mono);font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:rgba(245,243,238,0.75);display:block;margin-bottom:6px;transition:color .3s var(--ease)}.contact-form .field:focus-within label{color:#fff}.contact-form .row2{display:grid;grid-template-columns:1fr 1fr;gap:0 clamp(24px,4vw,56px)}.contact-form input,.contact-form textarea{width:100%;background:transparent;border:0;outline:0;color:var(--bg);font-family:var(--sans);font-size:17px;letter-spacing:-0.005em;padding:4px 0 2px;resize:none;font-weight:400}.contact-form textarea{min-height:100px;line-height:1.55}.contact-form input::placeholder,.contact-form textarea::placeholder{color:rgba(245,243,238,0.45)}.rgpd{margin-top:28px;padding-top:24px}.rgpd .check{display:flex;gap:14px;align-items:flex-start;cursor:pointer;user-select:none}.rgpd .check input{position:absolute;opacity:0;pointer-events:none;width:0;height:0;margin:0;padding:0}.rgpd .check .box{flex:0 0 auto;width:18px;height:18px;border:1px solid rgba(245,243,238,0.5);margin-top:2px;position:relative;transition:background .25s var(--ease),border-color .25s var(--ease)}.rgpd .check .box::after{content:"";position:absolute;inset:3px;background:var(--bg);transform:scale(0);transition:transform .25s var(--ease)}.rgpd .check input:checked ~ .box{border-color:var(--bg)}.rgpd .check input:checked ~ .box::after{transform:scale(1)}.rgpd .check input:focus-visible ~ .box{box-shadow:0 0 0 2px rgba(245,243,238,0.3)}.rgpd .check .txt{font-size:13px;line-height:1.55;color:rgba(245,243,238,0.9)}.rgpd .check .txt a{color:var(--bg);border-bottom:1px solid rgba(245,243,238,0.4)}.rgpd .more{display:inline-flex;gap:10px;align-items:center;background:none;border:0;color:rgba(245,243,238,0.7);cursor:pointer;padding:14px 0 0 32px;font-family:var(--mono);font-size:10px;letter-spacing:0.12em;text-transform:uppercase;transition:color .3s var(--ease)}.rgpd .more:hover{color:var(--bg)}.rgpd .more .chev{display:inline-block;width:8px;height:8px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);transition:transform .35s var(--ease);margin-top:-3px}.rgpd .more.open .chev{transform:rotate(-135deg);margin-top:2px}.rgpd .panel{max-height:0;overflow:hidden;transition:max-height .5s var(--ease),opacity .5s var(--ease),margin .5s var(--ease);opacity:0;margin-left:32px;border-left:1px solid rgba(245,243,238,0.18);padding-left:0}.rgpd .panel.open{max-height:1200px;opacity:1;margin-top:18px;padding-left:20px}.rgpd table{width:100%;border-collapse:collapse;font-size:12.5px;line-height:1.5;color:rgba(245,243,238,0.75)}.rgpd table th,.rgpd table td{text-align:left;vertical-align:top;padding:10px 12px 10px 0;border-bottom:1px solid rgba(245,243,238,0.12);font-weight:400}.rgpd table th{font-family:var(--mono);font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:rgba(245,243,238,0.55);width:32%}.rgpd table tr:last-child th,.rgpd table tr:last-child td{border-bottom:0}.rgpd table td em{color:var(--bg);font-style:normal;border-bottom:1px dotted rgba(245,243,238,0.4);cursor:help}.rgpd .caption{font-family:var(--mono);font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:rgba(245,243,238,0.5);margin:0 0 14px}.submit-row{margin-top:28px;display:flex;gap:16px;align-items:center;justify-content:space-between}.btn-submit{background:var(--bg);color:var(--ink);border:0;cursor:pointer;padding:18px 28px;font-family:var(--mono);font-size:11px;letter-spacing:0.16em;text-transform:uppercase;display:inline-flex;gap:14px;align-items:center;transition:gap .3s var(--ease),background .3s var(--ease)}.btn-submit:hover{gap:22px;background:#fff}.btn-submit:disabled{opacity:0.4;cursor:not-allowed}.submit-row .req{font-family:var(--mono);font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:rgba(245,243,238,0.4)}.contact .foot{margin-top:clamp(60px,8vw,120px);padding-top:32px;border-top:1px solid rgba(245,243,238,0.15);display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;font-family:var(--mono);font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:rgba(245,243,238,0.55)}.contact .foot a{color:rgba(245,243,238,0.85)}.contact .foot .c-right{text-align:right}.contact .foot .c-center{text-align:center}@media (max-width:900px){.contact .grid{grid-template-columns:1fr}.contact .foot{grid-template-columns:1fr;gap:8px}.contact .foot .c-right,.contact .foot .c-center{text-align:left}.contact-form .row2{grid-template-columns:1fr}}[data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .9s var(--ease),transform .9s var(--ease)}[data-reveal].in{opacity:1;transform:none}@media (max-width:640px){.contact h2{font-size:clamp(40px,11vw,64px)}.contact .info .row a,.contact .info .row strong{font-size:15px}.contact-form input,.contact-form textarea{font-size:16px}}
.page main{max-width:1180px;margin:0 auto;padding:clamp(100px,12vw,160px) clamp(20px,5vw,60px) clamp(60px,8vw,100px)}.page--index main{max-width:none;padding-left:var(--pad-x);padding-right:var(--pad-x)}.page .chrome{background:var(--bg)}.project-head h1,.service-head h1{font-family:var(--serif);font-size:clamp(38px,6vw,72px);line-height:1.05;font-weight:400}.project-head .loc,.service-head .lead{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.6;margin-top:14px}.project-head .tagline,.service-head .tagline{font-family:var(--serif);font-size:clamp(19px,2.2vw,26px);font-weight:400;line-height:1.25;margin-top:12px;color:var(--ink-2)}.crumbs{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-top:22px}.crumbs a,.crumbs span{opacity:.68}.crumbs a{border-bottom:1px solid transparent}.crumbs a:hover{border-bottom-color:currentColor}.crumbs span{margin:0 4px}.crumbs [aria-current]{opacity:.85}.project-hero{margin:clamp(32px,5vw,56px) 0}.project-hero img{width:100%;height:auto;display:block}.service-img{float:right;width:min(320px,38%);margin:0 0 24px 32px}.service-img img{width:100%;height:auto;display:block}@media (max-width:700px){.service-img{float:none;width:100%;margin:0 0 24px}}.project-text{margin-top:clamp(24px,4vw,40px);columns:2;column-gap:clamp(32px,5vw,72px)}.project-text p{break-inside:avoid;margin-bottom:1.1em}.project-text p{margin-top:0}.project-text p:last-child{margin-bottom:0}@media (max-width:900px){.project-text{columns:1}}.service-body{max-width:68ch;margin-top:clamp(24px,4vw,40px)}.service-body p{margin-bottom:1.1em}.service-body h2{font-family:var(--serif);font-size:clamp(24px,3vw,34px);font-weight:400;margin:2em 0 .6em}.service-body ul,.service-body ol{margin:0 0 1.1em 1.2em;padding:0}.service-body li{margin-bottom:.5em}.service-body a{border-bottom:1px solid var(--rule-strong);transition:border-color .25s var(--ease)}.service-body a:hover{border-bottom-color:var(--ink)}.faq{margin-top:clamp(48px,6vw,72px)}.faq-item{padding-top:20px;margin-top:20px;border-top:1px solid var(--rule)}.faq-item h3{font-size:17px;font-weight:600;margin:0 0 .5em}.faq-item p{color:var(--ink-2);margin-bottom:0}.project-specs{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:clamp(40px,6vw,64px) 0;padding-top:28px;border-top:1px solid var(--rule)}.project-specs dt{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;opacity:.62;margin-bottom:6px}.project-specs dd{margin:0;font-size:16px}@media (max-width:700px){.project-specs{grid-template-columns:1fr 1fr}}.rel-services{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:clamp(40px,6vw,64px)}.project-gallery h2,.rel-projects h2{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.62;margin-bottom:20px}.project-gallery img{width:100%;height:auto;display:block}.gal{margin:0 0 clamp(44px,6vw,80px);display:grid;gap:clamp(18px,2.5vw,32px);align-items:center;justify-items:center}.gal img{max-width:100%;max-height:76vh;width:auto;height:auto}.gal figcaption{font-size:15px;line-height:1.55;color:var(--ink-2);opacity:.82;max-width:42ch}.gal--wide{grid-template-columns:1fr}.gal--wide figcaption{max-width:68ch}.gal--left,.gal--right{grid-template-columns:1.6fr 1fr}.gal--right>img{grid-column:2;grid-row:1}.gal--right>figcaption{grid-column:1;grid-row:1}.gal--center{grid-template-columns:1fr;justify-items:center}.gal--center>img{width:min(100%,720px)}.gal--center>figcaption{text-align:center;max-width:54ch}@media (max-width:900px){.gal--left,.gal--right,.gal--center{grid-template-columns:1fr;justify-items:stretch}.gal--right>img,.gal--right>figcaption{grid-column:1;grid-row:auto}.gal--center>img{width:100%}.gal--center>figcaption{text-align:left}.gal figcaption{max-width:none}}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:clamp(20px,3vw,36px)}.card-grid article{display:block;position:relative}.card-grid .name a{color:inherit;text-decoration:none}.card-grid .name a::after{content:"";position:absolute;inset:0;z-index:1}.card-grid img{width:100%;height:auto;display:block;margin-bottom:12px;aspect-ratio:4 / 5;object-fit:cover;object-position:center;background:#e8e4dc}.card-grid .name{font-family:var(--serif);font-size:22px}.card-grid .sub{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;opacity:.62;margin-top:4px}.index-head{display:grid;grid-template-columns:1fr auto;align-items:end;gap:24px;margin-bottom:clamp(40px,6vw,80px)}@media (max-width:1100px){.index-head{grid-template-columns:1fr;align-items:start}}.page--index .card-grid{grid-template-columns:repeat(4,1fr);gap:clamp(20px,2.4vw,32px)}@media (max-width:1100px){.page--index .card-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:780px){.page--index .card-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.page--index .card-grid{grid-template-columns:1fr}}.card-grid h2.name{margin:0;font-weight:400;line-height:1.15}.card-grid .desc{margin:8px 0 0;font-size:14px;line-height:1.45;color:var(--ink-2);opacity:.8;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.card-grid [hidden]{display:none}.card-grid--svc img{aspect-ratio:3 / 2;object-fit:contain;background:none}.card-grid--svc .name{min-height:2.3em}.svc-related{margin-top:clamp(48px,6vw,72px)}.svc-related h2{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.62;margin-bottom:20px}.card-grid.compact article{display:block;padding:20px 22px;border:1px solid var(--rule);border-radius:2px;transition:border-color .2s ease}.card-grid.compact article:hover{border-color:var(--yellow)}.card-grid.compact .sub{opacity:.62;margin-top:6px}