@font-face{font-family:DM Serif Display;font-style:italic;font-weight:400;font-display:swap;src:url(../media/26a0a19eb96a029d-s.2ajvp03xtic_0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Serif Display;font-style:italic;font-weight:400;font-display:swap;src:url(../media/fad69795a077455b-s.p.0t285orp4l5or.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Serif Display;font-style:normal;font-weight:400;font-display:swap;src:url(../media/8dd8a3188b79fd8f-s.2o9_j983y90g0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Serif Display;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0c8f209abc35ee02-s.p.0c0g8ifvh7k7-.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Serif Display Fallback;src:local(Times New Roman);ascent-override:94.37%;descent-override:30.51%;line-gap-override:0.0%;size-adjust:109.78%}.dm_serif_display_490d9c26-module__LlMY0q__className{font-family:DM Serif Display,DM Serif Display Fallback;font-weight:400}.dm_serif_display_490d9c26-module__LlMY0q__variable{--font-dm:"DM Serif Display", "DM Serif Display Fallback"}
@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/91bd2e40df15814e-s.19s5evoqhirey.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/a63431c4ac64ea8b-s.386o_ri1vb0yv.woff2)format("woff2");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:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8b4ed0a90d903ab5-s.44dak0sams9f0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/c47649aa31f9e140-s.p.3lxpqujs87tck.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Hanken Grotesk Fallback;src:local(Arial);ascent-override:99.07%;descent-override:30.02%;line-gap-override:0.0%;size-adjust:100.94%}.hanken_grotesk_64e1985d-module__trJxcW__className{font-family:Hanken Grotesk,Hanken Grotesk Fallback;font-style:normal}.hanken_grotesk_64e1985d-module__trJxcW__variable{--font-body:"Hanken Grotesk", "Hanken Grotesk Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.0rgnxg2b64rzs.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.2vemzm0itqzfy.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.3cb5lpr2l6xud.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1u30mmyq6lnsd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.40sczeszzbjw1.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.1yd4_i3e35931.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.1qc6dx89jd2qv.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.29yke99gs9qpn.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.1i-sca43-qwng.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.0oace-s_gkfks.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_9d88f727-module__1NxLqG__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_9d88f727-module__1NxLqG__variable{--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}
:root{--ground:#f6efeb;--surface:#fbf7f4;--ink:#2a160c;--ink-soft:#6e5a52;--line:#e2d2ca;--accent:#7a0e42;--accent-ink:#fbf7f4;--arch-bg:#efe3dc;--invert-bg:#2a160c;--invert-ink:#f6efeb;--invert-accent:#e3b7a6;--f-display:var(--font-dm), Georgia, serif;--dw:400;--f-body:var(--font-body), system-ui, -apple-system, "Segoe UI", sans-serif;--f-mono:var(--font-mono), ui-monospace, Consolas, monospace;--gutter:clamp(16px, 4vw, 56px);--max:1280px;--ease:cubic-bezier(.2, .7, .2, 1);--arch:20px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}body{background:var(--ground);color:var(--ink);font:400 17px/1.6 var(--f-body);-webkit-font-smoothing:antialiased;transition:background-color .8s var(--ease), color .8s var(--ease);margin:0;overflow-x:clip}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3{font-family:var(--f-display);font-weight:var(--dw);text-wrap:balance;margin:0}p{margin:0}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:4px}.container{max-width:var(--max);margin-inline:auto}.btn{font:600 15px/1 var(--f-body);white-space:nowrap;transition:transform .45s var(--ease), background-color .8s var(--ease), color .8s var(--ease), border-color .45s var(--ease);border-radius:999px;align-items:center;padding:16px 26px;text-decoration:none;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn--solid{background:var(--accent);color:var(--accent-ink)}.btn--ghost{border:1px solid var(--line)}.btn--ghost:hover{border-color:var(--ink)}.placeholder{border:1px dashed color-mix(in srgb, var(--accent) 60%, transparent);background:color-mix(in srgb, var(--accent) 6%, transparent);color:var(--accent);font:500 13px/1.6 var(--f-mono);border-radius:6px;padding:2px 10px;display:inline-block}.nav{z-index:50;padding:14px var(--gutter);justify-content:space-between;align-items:center;gap:16px;display:flex;position:fixed;inset:0 0 auto}.nav:before{content:"";z-index:-1;background:color-mix(in srgb, var(--ground) 80%, transparent);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid color-mix(in srgb, var(--line) 70%, transparent);position:absolute;inset:0}.nav__mark{font:var(--dw) 22px/1 var(--f-display);text-decoration:none}.nav__links{gap:32px;margin:0;padding:0;font-size:15px;list-style:none;display:flex}.nav__links a{text-decoration:none}.nav__links a:hover{color:var(--accent)}.nav .btn{padding:11px 20px;font-size:14px}@media (max-width:760px){.nav__links{display:none}}main>section{padding-inline:var(--gutter)}.section{padding-block:clamp(64px,9vw,120px)}.section__head{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px 32px;margin-bottom:clamp(28px,4vw,48px);padding-top:24px;display:flex}.section__head h2{letter-spacing:-.02em;font-size:clamp(40px,5vw,72px);line-height:1}.section__head p{color:var(--ink-soft)}.hero{padding-block:clamp(112px,13vw,160px) clamp(48px,6vw,80px)}.hero__grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(32px,6vw,96px);display:grid}.hero__title{letter-spacing:-.025em;font-size:clamp(56px,8.4vw,128px);line-height:.92}.hero__title em{color:var(--accent)}.hero__lead{max-width:34ch;color:var(--ink-soft);margin-top:24px;font-size:clamp(18px,1.6vw,22px)}.hero__actions{flex-wrap:wrap;gap:12px;margin-top:36px;display:flex}.hero__photo{aspect-ratio:4/5;border-radius:var(--arch);background:var(--arch-bg);justify-self:end;width:100%;max-width:480px;margin:0;position:relative;overflow:hidden}.hero__photo img{object-fit:cover}@media (max-width:900px){.hero__grid{grid-template-columns:1fr}.hero__photo{justify-self:start;max-width:420px}}.gallery{columns:3 240px;column-gap:20px}.gallery__item{break-inside:avoid;background:var(--arch-bg);border-radius:16px;margin:0 0 20px;overflow:hidden}.gallery__item img{width:100%;height:auto;transition:transform 1s var(--ease)}.gallery__item:hover img{transform:scale(1.03)}@media (max-width:560px){.gallery{columns:2;column-gap:12px}.gallery__item{border-radius:12px;margin-bottom:12px}}.services{margin:0;padding:0;list-style:none}.services__row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;align-items:baseline;gap:8px 32px;padding-block:24px;display:grid}.services__row h3{font-size:clamp(28px,3vw,40px);line-height:1.1}.services__row p{color:var(--ink-soft)}.services__note{margin-top:24px}@media (max-width:700px){.services__row{grid-template-columns:minmax(0,1fr) auto}.services__row p{grid-area:2/1/auto/-1}}.reviews{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.review{border:1px solid var(--line);background:var(--surface);border-radius:20px;align-content:space-between;gap:32px;min-height:200px;margin:0;padding:28px;display:grid}.review blockquote{font:var(--dw) clamp(24px, 2.4vw, 30px) / 1.25 var(--f-display);margin:0}.review figcaption{font:400 12px/1.5 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.visit{background:var(--invert-bg);color:var(--invert-ink);transition:background-color .8s var(--ease), color .8s var(--ease);border-radius:clamp(24px,4vw,48px) clamp(24px,4vw,48px) 0 0;padding-block:clamp(80px,11vw,140px) clamp(48px,6vw,72px)}.visit .placeholder{border-color:color-mix(in srgb, var(--invert-accent) 70%, transparent);background:color-mix(in srgb, var(--invert-accent) 10%, transparent);color:var(--invert-accent)}.visit__title{letter-spacing:-.025em;font-size:clamp(56px,8vw,120px);line-height:.95}.visit__grid{border-top:1px solid color-mix(in srgb, var(--invert-ink) 20%, transparent);grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:clamp(40px,5vw,64px);padding-top:32px;display:grid}.visit__grid>div{align-content:start;gap:8px;display:grid}.visit__grid h3{font:500 12px/1.4 var(--f-mono);letter-spacing:.16em;text-transform:uppercase;opacity:.7;margin-bottom:4px}.visit__grid p{overflow-wrap:anywhere;font-size:18px;line-height:1.6}.visit__grid a{text-underline-offset:4px}@media (max-width:800px){.visit__grid{grid-template-columns:1fr}}.footer{padding:24px var(--gutter) 40px;background:var(--invert-bg);color:var(--invert-ink);transition:background-color .8s var(--ease), color .8s var(--ease)}.footer__row{border-top:1px solid color-mix(in srgb, var(--invert-ink) 20%, transparent);font:400 12px/1.5 var(--f-mono);opacity:.75;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding-top:20px;display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
