@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(../media/32687112bd2dd8db-s.0gspg~~t9nou8.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:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(../media/28868e710e86be81-s.0rx81dn62y51_.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:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.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:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(../media/32687112bd2dd8db-s.0gspg~~t9nou8.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:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(../media/28868e710e86be81-s.0rx81dn62y51_.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:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.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:Space Grotesk Fallback;src:local(Arial);ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.0%;size-adjust:109.69%}.space_grotesk_a86eaa83-module__dyT-lq__className{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.space_grotesk_a86eaa83-module__dyT-lq__variable{--font-heading:"Space Grotesk", "Space Grotesk Fallback"}
@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9cc5c0547f229dea-s.00b2_ptq3xnpy.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:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b0947914c9718a1e-s.0l.9lak812di~.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d0b60be57f16ee32-s.0m2lc_66fsc~9.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:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1f9e983605289f29-s.0~7_67muh398v.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:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/01e4147cff8141ee-s.p.10ked.7w885.g.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:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9cc5c0547f229dea-s.00b2_ptq3xnpy.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:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b0947914c9718a1e-s.0l.9lak812di~.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/d0b60be57f16ee32-s.0m2lc_66fsc~9.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:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1f9e983605289f29-s.0~7_67muh398v.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:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/01e4147cff8141ee-s.p.10ked.7w885.g.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:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9cc5c0547f229dea-s.00b2_ptq3xnpy.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:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b0947914c9718a1e-s.0l.9lak812di~.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/d0b60be57f16ee32-s.0m2lc_66fsc~9.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:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1f9e983605289f29-s.0~7_67muh398v.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:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/01e4147cff8141ee-s.p.10ked.7w885.g.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:Cormorant Garamond Fallback;src:local(Times New Roman);ascent-override:95.27%;descent-override:29.59%;line-gap-override:0.0%;size-adjust:96.98%}.cormorant_garamond_565e430f-module__lrEv9a__className{font-family:Cormorant Garamond,Cormorant Garamond Fallback;font-style:normal}.cormorant_garamond_565e430f-module__lrEv9a__variable{--font-body:"Cormorant Garamond", "Cormorant Garamond Fallback"}
:root{--bg:#f5f2ea;--bg-strong:#ece5d6;--ink:#1f2828;--ink-soft:#3a4444;--brand:#18443f;--brand-2:#b6864f;--panel:#fbfaf6;--line:#d6c7ab}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:radial-gradient(circle at 85% 15%, #b6864f33, transparent 40%), radial-gradient(circle at 15% 80%, #18443f29, transparent 45%), var(--bg);color:var(--ink);font-family:var(--font-body), Georgia, serif;line-height:1.6}h1,h2,h3,.brand,.btn,nav a,.faq-toggle{font-family:var(--font-heading), "Segoe UI", sans-serif}a{color:inherit}.container{width:min(1120px,92vw);margin:0 auto}.skip-link{background:var(--brand);color:#fff;z-index:1000;padding:.6rem .9rem;position:absolute;top:0;left:-999px}.skip-link:focus{top:.75rem;left:.75rem}.site-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:999;background:#f5f2eae0;border-bottom:1px solid #1f28281a;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:1rem;min-height:72px;display:flex}.brand{letter-spacing:.04em;flex-direction:column;align-items:flex-start;gap:.08rem;font-size:1rem;font-weight:700;text-decoration:none;display:inline-flex}.brand-wordmark{letter-spacing:.14em;font-size:1.15rem;font-weight:700;line-height:1}.brand-subtitle{letter-spacing:.17em;text-transform:uppercase;color:var(--ink-soft);font-size:.67rem}nav{gap:1.1rem;display:flex}nav a{font-size:.95rem;font-weight:500;text-decoration:none;position:relative}nav a:after{content:"";background:var(--brand-2);width:0;height:2px;transition:width .26s;position:absolute;bottom:-.2rem;left:0}nav a:hover:after,nav a:focus-visible:after{width:100%}.site-main{overflow:clip}.section{padding:5.2rem 0}.hero{align-items:center;min-height:calc(100vh - 72px);display:grid;position:relative}.ambient-shape{background:linear-gradient(120deg,#18443ff0,#18443fad 50%,#0000 80%),radial-gradient(circle at 10% 30%,#b6864f47,#0000 45%);position:absolute;inset:0}.hero-grid{z-index:2;grid-template-columns:1.05fr .95fr;gap:2rem;padding:3rem 0;display:grid;position:relative}.hero-copy{color:#fcf9f2}.eyebrow{letter-spacing:.13em;text-transform:uppercase;margin:0 0 1rem;font-size:.82rem}.hero h1{margin:0;font-size:clamp(2.1rem,7vw,4.25rem);line-height:1.08;animation:.8s ease-out .1s both rise}.hero p{max-width:48ch;margin:1.2rem 0 0;font-size:clamp(1.1rem,2.8vw,1.32rem);animation:.8s ease-out .28s both rise}.hero-actions{flex-wrap:wrap;gap:.8rem;margin-top:1.5rem;animation:.8s ease-out .45s both rise;display:flex}.btn{letter-spacing:.02em;cursor:pointer;border:1px solid #0000;border-radius:3px;padding:.72rem 1.1rem;font-weight:700;text-decoration:none;transition:transform .24s,background-color .24s,color .24s}.btn:hover,.btn:focus-visible{transform:translateY(-2px)}.btn-primary{background:var(--brand-2);color:#1f1205}.btn-secondary{color:#fcf9f2;border-color:#fcf9f2b3}.hero-media{align-self:center;margin:0}.hero-image{object-fit:cover;will-change:transform;border-radius:3px;width:100%;height:min(65vh,520px);transition:transform .2s linear;box-shadow:0 20px 30px #0000002e}.services{background:linear-gradient(#fbfaf6f2,#ece5d6e0)}h2{margin:0 0 1.4rem;font-size:clamp(1.8rem,4vw,2.8rem)}.section-intro{color:var(--ink-soft);margin:0 0 1.6rem;font-size:1.1rem}.services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.service-card{background:var(--panel);border:1px solid #1f28281a;min-height:190px;padding:1.3rem;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;position:relative;box-shadow:0 2px 8px #0000000d}.service-card:after{content:"";background:var(--brand-2);width:0;height:3px;transition:width .35s;position:absolute;bottom:0;left:0}.service-card:hover,.service-card:focus-within{transform:translateY(-5px)scale(1.02);box-shadow:0 14px 22px #0000001a}.service-card:hover:after,.service-card:focus-within:after{width:100%}.service-card h3{margin:0 0 .7rem;font-size:1.14rem}.service-card p{color:var(--ink-soft);margin:0}.process{background:var(--panel)}.process-list{gap:.9rem;margin:0;padding:0;list-style:none;display:grid}.process-step{border:1px dashed var(--line);background:#fff;grid-template-columns:auto 1fr;align-items:start;gap:1rem;padding:1rem;display:grid}.step-number{font-family:var(--font-heading), "Segoe UI", sans-serif;color:var(--brand-2);font-size:1.1rem;font-weight:700}.process-step p{margin:0}.projects{background:linear-gradient(#ece5d68a,#f5f2eafa)}.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;display:grid}.gallery img{aspect-ratio:3/2;object-fit:cover;border-radius:3px;width:100%;transition:transform .35s,filter .35s}.gallery img:hover{filter:saturate(1.08);transform:scale(1.03)}.faq{background:#fff}.faq-list{gap:.7rem;display:grid}.faq-item{background:#faf8f2;border:1px solid #1f28281f}.faq-toggle{text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;padding:.85rem 1rem;font-size:1rem;display:flex}.faq-icon{color:var(--brand-2);transition:transform .3s}.faq-content{max-height:0;transition:max-height .3s;overflow:hidden}.faq-content p{color:var(--ink-soft);margin:0;padding:0 1rem 1rem}.faq-item.open .faq-content{max-height:140px}.faq-item.open .faq-icon{transform:rotate(180deg)}.contact{background:var(--bg-strong)}.contact-grid{grid-template-columns:1.2fr .8fr;gap:1rem;display:grid}.contact-form{gap:.8rem;display:grid}.contact-form label{gap:.35rem;font-weight:600;display:grid}.contact-form input,.contact-form textarea{font:inherit;background:#fff;border:1px solid #1f282842;border-radius:3px;padding:.7rem}.contact-panel{background:#fffefb;border:1px solid #1f28281f;align-self:start;padding:1rem}.contact-panel h3{margin-top:0}.site-footer{color:#efe7d9;background:#232b2a;padding:2.2rem 0}.footer-brand{flex-direction:column;gap:.08rem;margin-bottom:.7rem;display:inline-flex}.site-footer .brand-wordmark{color:#efe7d9}.site-footer .brand-subtitle{color:#d4c3a8}.footer-grid{grid-template-columns:1fr 1fr 1fr;gap:1rem;display:grid}.site-footer h3{margin-top:0;margin-bottom:.6rem;font-size:1.05rem}.site-footer ul{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.site-footer a{color:#f0dcbf}.site-footer a:hover,.site-footer a:focus-visible{color:#fff}[data-animate]{opacity:0;transition:opacity .64s,transform .64s;transform:translateY(18px)}[data-animate].in-view{opacity:1;transform:translateY(0)}.toast{color:#fff;opacity:0;pointer-events:none;background:#18443f;border:1px solid #ffffff4d;border-radius:3px;padding:.7rem 1rem;transition:opacity .25s,transform .25s;position:fixed;bottom:1rem;right:1rem;transform:translateY(12px)}.toast.show{opacity:1;transform:translateY(0)}:focus-visible{outline:2px solid var(--brand-2);outline-offset:2px}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (max-width:980px){.hero-grid,.contact-grid,.footer-grid{grid-template-columns:1fr}.services-grid,.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}nav{gap:.75rem}}@media (max-width:680px){.section{padding:4.2rem 0}.header-inner{flex-direction:column;justify-content:center;padding:.8rem 0}.hero{min-height:auto;padding-top:1.5rem}.hero-image{height:320px}.services-grid,.gallery{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
