@font-face{font-family:fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/fraunces-latin-600-normal.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:fraunces;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/fraunces-latin-800-normal.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:archivo;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/archivo-latin-400-normal.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:archivo;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/archivo-latin-500-normal.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:archivo;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/archivo-latin-700-normal.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}:root{--ink:#161b13;--ink-soft:#232b1f;--paper:#f5f2e9;--paper-dim:#ece8da;--moss:#3f7a3c;--moss-deep:#2c5c2a;--moss-wash:#e2ecdd;--error:#a03a22;--error-wash:#f4e2da;--font-display:"Fraunces", Georgia, "Times New Roman", serif;--font-body:"Archivo", "Helvetica Neue", Arial, sans-serif;--rule:2px solid var(--ink);--shadow-hard:8px 8px 0 var(--ink);--shadow-hard-sm:5px 5px 0 var(--ink);--wrap:1140px;--pad:clamp(1rem, 4vw, 2rem)}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:1.0625rem;line-height:1.65;font-weight:400}img,svg,video{max-width:100%;height:auto;min-width:0}img{display:block}h1,h2,h3,h4{font-family:var(--font-display);font-weight:800;line-height:1.12;letter-spacing:-.01em;margin:0 0 1rem;overflow-wrap:break-word}h1{font-size:clamp(2.35rem,5.2vw,4rem)}h2{font-size:clamp(1.75rem,3.4vw,2.5rem)}h3{font-size:clamp(1.25rem,2.2vw,1.55rem);font-weight:600}p{margin:0 0 1rem;overflow-wrap:break-word}a{color:var(--ink);text-decoration-thickness:2px;text-underline-offset:3px}a:hover{color:var(--moss-deep)}ul,ol{margin:0 0 1rem;padding-left:1.3rem}li{margin-bottom:.4rem}strong{font-weight:700}:focus-visible{outline:3px solid var(--moss-deep);outline-offset:2px}.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--pad)}.comp__media,.comp__text,.hero__media,.hero__rail,.hero__panel,.bento-card,.staggered__row,.staggered__row--media>*{min-width:0}.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--paper);padding:.8rem 1.2rem;z-index:100;font-weight:700}.skip-link:focus{left:0}.visually-hidden{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.top-bar__tel{display:none;font-weight:700;text-decoration:none;min-height:44px;align-items:center;white-space:nowrap}[x-cloak]{display:none!important}.kicker{display:inline-block;font-family:var(--font-body);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;border:var(--rule);background:var(--paper);padding:.35rem .7rem;margin:0 0 1.1rem}.kicker--ink{background:var(--ink);color:var(--paper)}.kicker--accent{background:var(--moss);color:var(--paper);border-color:var(--ink)}.btn{display:inline-block;min-height:44px;padding:.75rem 1.35rem;border:var(--rule);font-family:var(--font-body);font-size:1rem;font-weight:700;line-height:1.3;text-decoration:none;cursor:pointer;background:var(--paper);color:var(--ink);box-shadow:var(--shadow-hard-sm);transition:transform 120ms ease,box-shadow 120ms ease}.btn:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink);color:var(--ink)}.btn:active{transform:translate(1px,1px);box-shadow:3px 3px 0 var(--ink)}.btn--accent{background:var(--moss);color:var(--paper)}.btn--accent:hover{color:var(--paper)}.btn--ink{background:var(--ink);color:var(--paper)}.btn--ink:hover{color:var(--paper)}.btn--ghost{box-shadow:none}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:var(--shadow-hard-sm);background:var(--paper-dim);color:var(--ink)}.media-frame{position:relative;border:var(--rule);background:var(--ink);overflow:hidden;box-shadow:var(--shadow-hard);margin:0;min-width:0;max-width:100%}.media-frame img{width:100%;height:100%;object-fit:cover}.media-tag{position:absolute;bottom:.9rem;left:.9rem;max-width:calc(100% - 1.8rem);background:var(--paper);border:var(--rule);padding:.35rem .7rem;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.media-tag--ink{background:var(--ink);color:var(--paper)}.img-grade--warm-grade{filter:sepia(.25)saturate(1.15)}.top-bar{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:var(--rule)}.top-bar__inner{max-width:var(--wrap);margin-inline:auto;padding:.55rem var(--pad);display:flex;align-items:center;gap:1.2rem}.brand{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;font-family:var(--font-display);font-weight:800;font-size:1.08rem;letter-spacing:-.01em;min-height:44px}.brand__mark{color:var(--moss-deep);flex:none}.top-nav{margin-left:auto}.top-nav__list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:1.4rem}.top-nav__link{text-decoration:none;font-weight:500;min-height:44px;display:inline-flex;align-items:center}.top-nav__link--tel{font-weight:700}.nav-toggle{display:none;margin-left:auto;background:var(--paper);border:var(--rule);min-height:44px;min-width:64px;padding:0 .9rem;font-family:var(--font-body);font-size:.85rem;font-weight:700;cursor:pointer;align-items:center;gap:.5rem}.nav-toggle__bars,.nav-toggle__bars::before,.nav-toggle__bars::after{display:block;width:16px;height:2px;background:var(--ink);content:""}.nav-toggle__bars{position:relative}.nav-toggle__bars::before{position:absolute;top:-5px}.nav-toggle__bars::after{position:absolute;top:5px}.hero{border-bottom:var(--rule);background:var(--paper-dim)}.hero__grid{display:grid;grid-template-columns:minmax(0,1.65fr)minmax(0,1fr);max-width:var(--wrap);margin-inline:auto}.hero__media{position:relative;border-right:var(--rule);min-height:clamp(420px,62vh,640px)}.hero__media img{position:absolute;inset:0}.hero__panel{position:absolute;left:clamp(1rem,4vw,2.5rem);bottom:clamp(1rem,4vw,2.5rem);right:clamp(1rem,4vw,2.5rem);background:var(--ink);color:var(--paper);border:var(--rule);box-shadow:10px 10px rgba(22,27,19,.55);padding:clamp(1.3rem,3vw,2.2rem);max-width:640px}.hero__panel h1{color:var(--paper);margin-bottom:.9rem}.hero__lead{font-size:1.05rem;margin-bottom:1.4rem}.hero__cta{display:flex;flex-wrap:wrap;gap:.9rem}.hero__cta .btn--ghost{box-shadow:var(--shadow-hard-sm);background:var(--ink);color:var(--paper)}.hero__cta .btn--ghost:hover{color:var(--paper)}.hero__rail{background:var(--paper);padding:clamp(1.3rem,3vw,2rem);display:flex;flex-direction:column;gap:1.1rem;justify-content:center}.fact{border:var(--rule);background:var(--paper);box-shadow:var(--shadow-hard-sm);padding:.85rem 1rem}.fact__num{font-family:var(--font-display);font-weight:800;font-size:1.5rem;display:block;line-height:1.1}.fact__label{display:block;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}.band{padding-block:clamp(3rem,7.5vw,5.5rem);border-bottom:var(--rule)}.band--ink{background:var(--ink);color:var(--paper)}.band--ink h2,.band--ink h3{color:var(--paper)}.band--ink a{color:var(--paper)}.band--dim{background:var(--paper-dim)}.section-head{max-width:62ch;margin-bottom:2rem}.section-head--ink .kicker{background:var(--paper)}.comp--media-left-text-right{display:grid;grid-template-columns:minmax(0,1fr)minmax(0,1.1fr);gap:clamp(1.5rem,4vw,3rem);align-items:start}.comp--media-left-text-right .comp__media{align-self:stretch}.comp--media-left-text-right .comp__media img{height:100%;min-height:380px}.comp--media-left-text-right .comp__text>:last-child{margin-bottom:0}.comp--staggered-rows{display:grid;gap:clamp(1.4rem,3vw,2rem)}.staggered__row{border:var(--rule);background:var(--paper);box-shadow:var(--shadow-hard);padding:clamp(1.2rem,3vw,1.9rem);max-width:780px}.staggered__row--ink{background:var(--ink);color:var(--paper)}.staggered__row--ink h3{color:var(--paper)}.staggered__row:nth-child(even){margin-left:clamp(0rem,9vw,140px)}.staggered__index{font-family:var(--font-display);font-weight:800;font-size:1.05rem;background:var(--moss);color:var(--paper);border:var(--rule);display:inline-block;padding:.1rem .6rem;margin-bottom:.7rem}.staggered__row p:last-child{margin-bottom:0}.staggered__row--media{display:grid;grid-template-columns:minmax(0,220px)minmax(0,1fr);gap:1.5rem;align-items:center;max-width:860px}.staggered__row--media .media-frame{aspect-ratio:1/1;box-shadow:var(--shadow-hard-sm)}.comp--asymmetric-grid-3{display:grid;grid-template-columns:minmax(0,2.1fr)minmax(0,1fr)minmax(0,1fr);gap:clamp(1.2rem,3vw,1.6rem);align-items:stretch}.comp--asymmetric-grid-3 .bento-card{border:var(--rule);background:var(--paper);box-shadow:var(--shadow-hard);padding:clamp(1.2rem,2.6vw,1.7rem);margin:0}.comp--asymmetric-grid-3 .bento-card--media{padding:0;overflow:hidden;display:flex;flex-direction:column}.comp--asymmetric-grid-3 .bento-card--media .media-frame{border:0;box-shadow:none;flex:1}.comp--asymmetric-grid-3 .bento-card--media .bento-card__body{padding:1.2rem 1.4rem 1.4rem}.comp--asymmetric-grid-3 .bento-card--ink{background:var(--ink);color:var(--paper)}.comp--asymmetric-grid-3 .bento-card--ink h3{color:var(--paper)}.bento-card ul{margin-bottom:0}.bento-card p:last-child{margin-bottom:0}.price-line{font-family:var(--font-display);font-weight:800;font-size:clamp(1.6rem,3vw,2.1rem);margin:.4rem 0 .6rem}.check-list{list-style:none;padding:0;margin:0 0 1rem}.check-list li{position:relative;padding-left:1.6rem;margin-bottom:.5rem}.check-list li::before{content:"▪";position:absolute;left:0;color:var(--moss-deep);font-weight:700}.band--ink .check-list li::before{color:#9fcf98}.notice{border:var(--rule);border-left-width:8px;background:var(--paper);padding:1rem 1.3rem;margin:0 0 1.4rem}.notice--warn{border-left-color:var(--moss-deep);background:var(--moss-wash)}.page-head{background:var(--paper-dim);border-bottom:var(--rule);padding-block:clamp(2.2rem,5vw,3.6rem)}.page-head h1{max-width:30ch;margin-bottom:.6rem}.page-head .kicker{margin-bottom:.9rem}.page-head p{max-width:68ch;margin-bottom:0}.page-body{padding-block:clamp(2.2rem,5vw,3.6rem)}.page-body>.wrap>*{max-width:72ch}.page-body .wrap>.bento-card,.page-body .wrap>.notice{max-width:none}.meta-line{font-size:.9rem;color:var(--ink-soft)}.identity-block{border:var(--rule);box-shadow:var(--shadow-hard-sm);background:var(--paper-dim);padding:1.3rem 1.5rem;margin:0 0 2rem;max-width:none!important}.identity-block dl{margin:0;display:grid;grid-template-columns:minmax(0,210px)minmax(0,1fr);gap:.35rem 1.2rem}.identity-block dt{font-weight:700;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase}.identity-block dd{margin:0;min-width:0;overflow-wrap:anywhere}.contact-grid{display:grid;grid-template-columns:minmax(0,1fr)minmax(0,1.15fr);gap:clamp(1.5rem,4vw,3rem);align-items:start}.inquiry form{border:var(--rule);box-shadow:var(--shadow-hard);background:var(--paper);padding:clamp(1.2rem,3vw,1.8rem);margin:0}.field{margin-bottom:1.1rem}.field label{display:block;font-weight:700;margin-bottom:.35rem}.field__optional{font-weight:400;color:var(--ink-soft)}.field input,.field textarea{width:100%;min-height:44px;border:var(--rule);background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:1rem;padding:.65rem .8rem}.field textarea{min-height:140px;resize:vertical}.field input:focus-visible,.field textarea:focus-visible{outline:3px solid var(--moss-deep);outline-offset:1px}.field--invalid input,.field--invalid textarea{border-color:var(--error);background:var(--error-wash)}.field__error{color:var(--error);font-weight:500;font-size:.92rem;margin:.35rem 0 0}.field--hp{position:absolute;left:-9999px;top:-9999px;height:1px;width:1px;overflow:hidden}.inquiry__submit{margin-top:.4rem}.inquiry__hint{font-size:.88rem;color:var(--ink-soft);margin:1rem 0 0}.inquiry__success{border:var(--rule);border-left-width:8px;border-left-color:var(--moss-deep);background:var(--moss-wash);padding:1.1rem 1.4rem;margin-top:1.2rem}.inquiry__error{border:var(--rule);border-left-width:8px;border-left-color:var(--error);background:var(--error-wash);padding:1.1rem 1.4rem;margin-top:1.2rem}.inquiry__error .btn{margin-top:.6rem}.inquiry__success p:last-child,.inquiry__error p:last-of-type{margin-bottom:0}.site-footer{background:var(--ink);color:var(--paper)}.site-footer__inner{max-width:var(--wrap);margin-inline:auto;padding:clamp(1.8rem,4vw,2.6rem)var(--pad)}.site-footer__identity{font-size:.92rem;line-height:1.8;margin:0 0 1.1rem;max-width:none}.site-footer__brand{font-family:var(--font-display);font-size:1.02rem}.site-footer__sep{color:#8a937e;padding-inline:.35rem}.site-footer__nowrap{white-space:nowrap}.site-footer__link{color:var(--paper)}.site-footer__nav{display:flex;flex-wrap:wrap;gap:.4rem 1.3rem;border-top:1px solid #3a4433;padding-top:1.1rem;margin-bottom:1rem}.site-footer__nav a{color:var(--paper);font-size:.92rem;min-height:44px;display:inline-flex;align-items:center}.site-footer__nav a:hover{color:#cfe3c8}.site-footer__fine{font-size:.82rem;color:#b7bdb0;margin:0;max-width:76ch}.consent{position:fixed;inset-inline:1rem;bottom:1rem;z-index:90;pointer-events:none}.consent__panel{pointer-events:auto;max-width:620px;margin-inline:auto;background:var(--paper);border:var(--rule);box-shadow:10px 10px rgba(22,27,19,.5);padding:1.2rem 1.4rem}.consent__title{font-family:var(--font-display);font-weight:800;font-size:1.15rem;margin-bottom:.5rem}.consent__text{font-size:.92rem;margin-bottom:1rem}.consent__actions{display:flex;flex-wrap:wrap;gap:.8rem}.error-page{padding-block:clamp(3rem,9vw,6rem);text-align:left}.error-page h1{font-size:clamp(3rem,8vw,5rem)}.table-wrap{overflow-x:auto;margin-bottom:1.4rem}table{border-collapse:collapse;width:100%;font-size:.95rem}th,td{border:var(--rule);padding:.55rem .8rem;text-align:left;vertical-align:top}th{background:var(--paper-dim);font-weight:700}td code{background:var(--paper-dim);padding:.1rem .35rem;border:1px solid var(--ink-soft)}@media(max-width:980px){.hero__grid{grid-template-columns:minmax(0,1fr)}.hero__media{border-right:0;border-bottom:var(--rule);min-height:460px}.comp--asymmetric-grid-3{grid-template-columns:minmax(0,1fr)minmax(0,1fr)}.comp--asymmetric-grid-3 .bento-card:first-child{grid-column:1/-1}.contact-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:900px){html.js .nav-toggle{display:inline-flex;margin-left:0}html.js .top-bar__tel{display:inline-flex;margin-left:auto}html.js .top-nav__link--tel{display:none}html.js .top-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);border-bottom:var(--rule);box-shadow:0 12px rgba(22,27,19,.15)}html.js .top-nav.is-open{display:block}.top-nav__list{flex-direction:column;align-items:stretch;gap:0;padding:.5rem var(--pad)1rem}.top-nav__list li{border-bottom:1px solid var(--paper-dim)}.top-nav__link{padding:.55rem 0;width:100%}.top-nav__cta{margin-top:.8rem;text-align:center;display:inline-flex;justify-content:center}.comp--media-left-text-right{grid-template-columns:minmax(0,1fr)}.comp--media-left-text-right .comp__media img{min-height:300px}.staggered__row:nth-child(even){margin-left:0}.staggered__row--media{grid-template-columns:minmax(0,1fr)}.staggered__row--media .media-frame{aspect-ratio:4/3}}@media(max-width:620px){.top-bar__inner{gap:.55rem;padding-block:.45rem}.brand{font-size:.95rem;gap:.4rem}.brand__mark{width:22px;height:22px}.top-bar__tel{font-size:.82rem}.nav-toggle{min-width:44px;padding:0 .55rem}.nav-toggle__label{display:none}.comp--asymmetric-grid-3{grid-template-columns:minmax(0,1fr)}.comp--asymmetric-grid-3 .bento-card:first-child{grid-column:auto}.hero__media{min-height:380px}.hero__cta .btn{width:100%;text-align:center}.hero__cta{flex-direction:column}.fact{display:flex;align-items:baseline;gap:.7rem}.fact__num{font-size:1.2rem}.consent{inset-inline:.6rem;bottom:.6rem}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}.btn:hover{transform:none}}