:root{color:#382a2a;--paper:#f5efe5;--wine:#702c3e;--rose:#c8a2a0;--ink:#382a2a;--muted:#82756d;--line:#d8c9bb;background:#f5efe5;font-family:DM Sans,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}.announcement{background:var(--wine);color:#f8eee3;letter-spacing:.15em;justify-content:space-between;align-items:center;height:29px;padding:0 6%;font:8px DM Mono,monospace;display:flex}.header{border-bottom:1px solid var(--line);background:var(--paper);z-index:9;justify-content:space-between;align-items:center;height:91px;padding:0 6%;display:flex;position:sticky;top:0}.brand{letter-spacing:.12em;align-items:center;gap:10px;font:600 15px Playfair Display,serif;display:flex}.brand-symbol{color:var(--wine);place-items:center;display:grid}.brand small{letter-spacing:.19em;color:#8c7770;margin-top:5px;font:8px DM Mono,monospace;display:block}.nav{color:#67534e;align-items:center;gap:32px;font-size:11px;display:flex}.nav a:hover,.header-cta:hover{color:var(--wine)}.header-cta{border-bottom:1px solid var(--wine);align-items:center;gap:12px;padding:10px 0;font-size:11px;display:flex}.mobile-menu{background:0 0;border:0;display:none}.hero{grid-template-columns:1fr 1.05fr;align-items:center;gap:6%;min-height:660px;padding:65px 10% 56px 9%;display:grid;position:relative}.hero-copy{z-index:1;padding:20px 0 0;position:relative}.kicker,.section-label,.photo-caption,.hero-footnote,.hero-vertical,.quote-line>span,.journal-end,.contact-top,.contact-bottom,footer{letter-spacing:.12em;font:8px DM Mono,monospace}.kicker{color:#8a756d;justify-content:space-between;max-width:390px;display:flex}.hero h1{letter-spacing:-.065em;margin:42px 0 28px;font:400 clamp(66px,7.5vw,112px)/.91 Playfair Display,serif}.hero h1 em,.philosophy h2 em,.stories h2 em,.services h2 em,.closing-note em,.contact h2 em{color:var(--wine);font-weight:400}.hero-description{color:#79675f;max-width:320px;font-size:13px;line-height:1.9}.under-link{letter-spacing:.07em;border-bottom:1px solid #bca8a0;align-items:center;gap:17px;margin-top:21px;padding:12px 0;font:9px DM Mono,monospace;display:inline-flex}.under-link svg{color:var(--wine)}.hero-footnote{color:#9d8980;gap:23px;margin-top:73px;font-size:7px;display:flex}.hero-visual{height:520px;margin-right:4%;position:relative}.hero-visual:before{content:"";border:1px solid #c6aaa4;width:55%;height:60%;position:absolute;top:-18px;left:-18px}.hero-visual>img{object-fit:cover;z-index:1;filter:saturate(.78);width:100%;height:100%;position:relative}.photo-caption{z-index:2;color:#fff;text-shadow:0 1px 5px #3a2424;justify-content:space-between;font-size:7px;display:flex;position:absolute;bottom:13px;left:15px;right:15px}.floating-note{z-index:3;color:var(--wine);background:#e5d4c4;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:108px;height:108px;font-size:11px;line-height:1.1;display:flex;position:absolute;top:58px;right:-35px;transform:rotate(8deg);box-shadow:0 5px 20px #4d30201a}.floating-note i{font:italic 23px Playfair Display,serif}.floating-note span{margin-top:5px;font-size:15px}.hero-vertical{writing-mode:vertical-rl;color:#9a877d;letter-spacing:.18em;font-size:7px;position:absolute;top:50%;right:3%}.philosophy{background:#e9dfd2;padding:75px 10% 42px}.section-label{color:#8b746a;justify-content:space-between;gap:20px;display:flex}.philosophy-body{grid-template-columns:.6fr 1.4fr;gap:8%;padding:76px 0 85px;display:grid}.ornament{color:var(--wine);flex-direction:column;align-items:center;gap:15px;padding-top:20px;display:flex}.ornament span{writing-mode:vertical-rl;letter-spacing:.16em;color:#9d8379;font:7px DM Mono,monospace}.philosophy h2,.stories h2,.services h2,.contact h2{letter-spacing:-.055em;margin:0 0 25px;font:400 clamp(48px,6vw,78px)/1.03 Playfair Display,serif}.philosophy-body>div:last-child{max-width:570px}.philosophy-body p{color:#6d5a53;max-width:460px;font-size:13px;line-height:1.9}.quote-line{color:#8d776c;border-top:1px solid #d1bfb1;justify-content:space-between;gap:20px;padding-top:17px;display:flex}.quote-line p{letter-spacing:.1em;color:var(--wine);font:8px DM Mono,monospace}.stories{padding:100px 9% 80px}.stories-heading{justify-content:space-between;align-items:end;gap:35px;margin:67px 0 45px;display:flex}.stories-heading .kicker{margin-bottom:22px;display:block}.stories h2{margin-bottom:0}.stories-heading>p{color:#817069;max-width:280px;margin-bottom:5px;font-size:12px;line-height:1.9}.story-grid{grid-template-columns:1fr 1fr 1fr;align-items:start;gap:22px;display:grid}.story-1{margin-top:60px}.story-2{margin-top:18px}.story-image{background:#e1d5c9;height:350px;display:block;position:relative;overflow:hidden}.story-1 .story-image{height:410px}.story-2 .story-image{height:320px}.story-image img{object-fit:cover;filter:saturate(.73);width:100%;height:100%;transition:transform .6s,filter .4s}.story-image:hover img{filter:saturate();transform:scale(1.04)}.story-arrow{background:var(--paper);width:34px;height:34px;color:var(--wine);border-radius:50%;place-items:center;display:grid;position:absolute;top:12px;right:12px}.story-meta{border-bottom:1px solid var(--line);padding:17px 0}.story-meta>span{letter-spacing:.09em;color:#9a8278;font:8px DM Mono,monospace}.story-meta h3{margin:10px 0 5px;font:400 25px Playfair Display,serif}.story-meta p{color:#89776e;margin:0;font-size:11px}.journal-end{color:#947c71;justify-content:space-between;align-items:center;margin-top:60px;display:flex}.journal-end svg{color:var(--wine)}.services{color:#f5efe5;background:#702c3e;padding:82px 10% 100px}.services .section-label{color:#d4b8ae}.services-grid{grid-template-columns:1fr 1fr;gap:12%;padding-top:70px;display:grid}.services h2{font-size:clamp(47px,5.5vw,72px)}.services h2 em{color:#e1b9ae}.services-grid>div:first-child>p{color:#e1cfc5;max-width:260px;font-size:12px;line-height:1.8}.service-accordion{border-top:1px solid #9b6570}.service{border-bottom:1px solid #9b6570}.service button{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:34px 1fr 22px;align-items:center;gap:12px;width:100%;padding:22px 0;font:21px Playfair Display,serif;display:grid}.service button svg{transition:transform .2s}.service.expanded button svg{transform:rotate(45deg)}.service-index{color:#d8b3a8;font:9px DM Mono,monospace}.service>p{color:#e2cfc7;margin:0 0 22px 46px;font-size:12px;line-height:1.8}.closing-note{text-align:center;color:#4b3333;background:#e4d3c4;padding:82px 5%}.closing-note>span{letter-spacing:.15em;color:#8d6f67;font:8px DM Mono,monospace}.closing-note p{letter-spacing:-.04em;margin:28px 0;font:clamp(36px,5.4vw,66px)/1.1 Playfair Display,serif}.contact{background:#f5efe5;padding:34px 9% 25px}.contact-top{color:#8e796f;border-bottom:1px solid var(--line);justify-content:space-between;padding-bottom:16px;display:flex}.contact-body{grid-template-columns:1fr .8fr;align-items:center;gap:12%;padding:65px 0 75px;display:grid}.contact h2{font-size:clamp(55px,6vw,82px)}.contact-body>div:first-child>p{color:#7b6961;max-width:310px;font-size:13px;line-height:1.9}.contact-card{background:#e9dfd2;max-width:390px;padding:32px;position:relative}.contact-flower{color:var(--wine)}.contact-card>p{max-width:250px;margin:24px 0;font:24px/1.35 Playfair Display,serif}.contact-card>a{background:var(--wine);color:#fff4e9;justify-content:space-between;align-items:center;gap:15px;padding:16px;font-size:11px;display:flex}.contact-card small{color:#8a746b;margin-top:18px;font:7px/1.7 DM Mono,monospace;display:block}.contact-bottom{border-top:1px solid var(--line);color:#8e796f;justify-content:space-between;align-items:center;gap:20px;padding-top:18px;font-size:7px;display:flex}.contact-bottom .brand{color:var(--ink);font-size:13px}footer{color:#d9c5bb;background:#3b292c;justify-content:space-between;gap:15px;padding:20px 9%;font-size:7px;display:flex}@media (width>=1500px){.hero,.header,.announcement{padding-left:max(6%,50vw - 690px);padding-right:max(6%,50vw - 690px)}.philosophy,.services{padding-left:max(10%,50vw - 620px);padding-right:max(10%,50vw - 620px)}}@media (width<=760px){.announcement{padding:0 5%;font-size:7px}.header{height:75px;padding:0 5%}.mobile-menu{order:3;padding:5px;display:block}.brand{letter-spacing:.08em;font-size:12px}.brand-symbol svg{width:20px}.header-cta{margin-left:auto;margin-right:18px;font-size:10px}.nav{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:22px;padding:25px 6%;display:none;position:absolute;top:74px;left:0;right:0}.nav.show{display:flex}.hero{grid-template-columns:1fr;gap:35px;padding:44px 7% 50px}.hero h1{margin-top:32px;font-size:clamp(66px,15vw,94px)}.hero-description{max-width:350px}.hero-footnote{gap:14px;margin-top:45px;font-size:6px}.hero-visual{height:115vw;min-height:330px;max-height:520px;margin:0 10px 0 0}.floating-note{width:90px;height:90px;right:-20px}.hero-vertical{display:none}.philosophy{padding:58px 7% 30px}.section-label{font-size:7px}.philosophy-body{grid-template-columns:1fr;gap:25px;padding:50px 0 55px}.ornament{flex-direction:row;justify-content:flex-start;gap:12px;padding:0}.ornament span{writing-mode:initial}.ornament svg{width:30px}.philosophy h2,.stories h2,.services h2{font-size:clamp(48px,11vw,70px)}.quote-line{flex-direction:column;gap:5px}.quote-line p{line-height:1.8}.stories{padding:70px 6% 60px}.stories-heading{margin:50px 0 35px;display:block}.stories-heading>p{margin-top:25px}.story-grid{grid-template-columns:1fr 1fr;gap:14px}.story-2{margin-top:0}.story-image,.story-1 .story-image,.story-2 .story-image{height:58vw;min-height:210px}.story-1{margin-top:36px}.story-meta h3{font-size:20px}.story-meta p{line-height:1.6}.story-meta>span{font-size:7px}.journal-end{margin-top:45px;font-size:7px}.services{padding:60px 7% 70px}.services-grid{grid-template-columns:1fr;gap:35px;padding-top:50px}.service button{font-size:20px}.closing-note{padding:65px 5%}.closing-note p{font-size:clamp(36px,8vw,54px)}.contact{padding:28px 6% 20px}.contact-top{font-size:7px}.contact-body{grid-template-columns:1fr;gap:28px;padding:50px 0}.contact h2{font-size:68px}.contact-card{max-width:none}.contact-bottom{flex-wrap:wrap;font-size:6px}.contact-bottom>span{text-align:center;max-width:110px}footer{padding:18px 6%;font-size:6px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}.location{color:#382a2a;background:#e9dfd2;padding:76px 10% 82px}.location-heading{grid-template-columns:1fr 1fr;align-items:end;gap:8%;padding:48px 0 30px;display:grid}.location-heading h2{letter-spacing:-.055em;margin:0;font:400 clamp(44px,5.5vw,74px)/1.02 Playfair Display,serif}.location-heading h2 em{color:#702c3e}.location-heading p{color:#6d5a53;max-width:430px;margin:0;font-size:13px;line-height:1.8}.map-frame{border:1px solid #d1bfb1;height:350px;overflow:hidden}.map-frame iframe{border:0;width:100%;height:100%}.map-directions{border-bottom:1px solid #bca8a0;align-items:center;gap:18px;margin-top:18px;padding:10px 0;font-size:12px;display:inline-flex}.quick-actions{z-index:20;flex-direction:column;gap:9px;display:flex;position:fixed;bottom:18px;right:18px}.quick-actions a{color:#fff;background:#702c3e;border:1px solid #f5efe5;border-radius:50%;place-items:center;width:46px;height:46px;transition:transform .2s,background .2s;display:grid;box-shadow:0 3px 16px #3b292c44}.quick-actions a:hover{background:#4f1d2c;transform:translateY(-2px)}.quick-actions a:focus-visible,a:focus-visible,button:focus-visible{outline-offset:4px;outline:3px solid #702c3e}@media (width<=760px){.story-grid{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#702c3e #d8c9bb;gap:14px;margin-right:-6%;padding:0 6% 16px 0;display:flex;overflow-x:auto}.story-grid .story,.story-grid .story-1,.story-grid .story-2{scroll-snap-align:start;flex:0 0 82%;margin-top:0}.story-grid .story-image,.story-grid .story-1 .story-image,.story-grid .story-2 .story-image{height:64vw;max-height:340px}.location{padding:58px 7% 65px}.location-heading{grid-template-columns:1fr;gap:20px;padding:38px 0 25px}.map-frame{height:300px}.quick-actions{bottom:12px;right:12px}.quick-actions a{width:42px;height:42px}}
