:root{--ink:#253a33;--paper:#f9f8f4;--accent:#a96743;--line:#d6d9d2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}header{min-height:112px;display:flex;align-items:center;justify-content:space-between;padding:24px 6%;border-bottom:1px solid var(--line);gap:24px}.brand{font-family:Georgia,serif;font-size:28px;letter-spacing:-1px;white-space:nowrap}.brand i{font-weight:400;color:var(--accent)}.brand span{display:block;font-family:Arial,sans-serif;font-size:10px;letter-spacing:2.8px;text-align:center;margin-top:1px}nav{display:flex;gap:32px;font-size:14px}nav a:hover,.textLink:hover{color:var(--accent)}.languages{display:flex;gap:8px;font-size:14px}.languages button{border:0;background:none;color:inherit;padding:6px}.languages button[aria-pressed=true]{text-decoration:underline;text-underline-offset:5px}.hero{padding:76px 6% 62px;display:grid;grid-template-columns:1.08fr 1fr;gap:6%;align-items:center}.eyebrow{font-size:12px;font-weight:600;letter-spacing:2.4px;margin:0 0 24px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12;margin:0}h1{font-size:clamp(42px,4.7vw,78px);letter-spacing:-2.5px}h1 em{color:var(--accent);font-weight:400}h2{font-size:clamp(32px,3.2vw,48px);letter-spacing:-1px}h3{font-size:26px}.intro{max-width:420px;margin:30px 0;line-height:1.8;color:#58655d}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{display:inline-block;background:var(--ink);color:#fff;border:1px solid var(--ink);padding:14px 22px;font-size:14px;text-align:center}.button:hover{background:#40584d}.button:disabled{opacity:.6}.textLink{font-size:14px;border-bottom:1px solid var(--accent);padding-bottom:4px}.location{font-size:12px;letter-spacing:1.5px;margin-top:58px}.heroFrame{padding:0 18px 0 0}.photoSpace{height:540px;background:#e7e9e2;border:1px solid #d6d9cd;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:36px;text-align:center;position:relative;color:#667464}.photoSpace>span{position:absolute;top:22px;left:24px;font-size:12px;letter-spacing:2px}.photoSpace p{font-family:Georgia,serif;font-style:italic;font-size:26px;max-width:280px}.photoSpace small{font-size:12px;letter-spacing:1px}.caption{text-align:right;font-family:Georgia,serif;font-style:italic;font-size:17px;margin:14px -18px 0 0}.portfolio,.sessions,.process{padding:80px 6%}.portfolio{border-top:1px solid var(--line)}.sectionTop{display:flex;justify-content:space-between;align-items:end;gap:28px}.sectionTop>p{max-width:280px;color:#59665e;margin:0}.filters{display:flex;flex-wrap:wrap;gap:12px;margin:36px 0 28px}.filters button{background:none;border:1px solid transparent;color:inherit;padding:8px 15px;font-size:14px}.filters button[aria-pressed=true]{border-color:var(--ink)}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.placeholder{aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;background:#e1e5de;padding:22px;position:relative;color:#64715f}.placeholder span{position:absolute;top:15px;left:18px;font-size:12px}.placeholder p{text-align:center;font-family:Georgia,serif;font-style:italic;font-size:20px}.p1{background:#ece2d8;color:#886e58}.p2{background:#e5e3d7;color:#807d5f}.p3{background:#dfe5e3;color:#667775}.gallery h3{font-size:21px;margin-top:16px}.sessions{background:#eaece5}.sectionIntro{max-width:540px;color:#57645a;margin:22px 0 40px}.serviceGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.serviceGrid article{border-top:1px solid #a9b1a3;padding-top:20px;display:flex;flex-direction:column}.number{font-size:12px;color:#71806b;margin-bottom:24px}.serviceGrid p{color:#586457;flex:1}.offer{font-size:14px;margin-top:20px}.serviceGrid a{font-size:14px;text-decoration:underline;text-underline-offset:7px;margin-top:16px}.about{padding:100px 10%;display:grid;grid-template-columns:.8fr 1fr;gap:12%;align-items:center}.portraitPlaceholder{height:410px;background:#e7dfd2;display:flex;flex-direction:column;align-items:center;justify-content:center;border:14px solid #fff;outline:1px solid #ddd7ce;color:#826c57}.portraitPlaceholder span{font-size:12px;letter-spacing:2px}.portraitPlaceholder p{font-family:Georgia,serif;font-size:54px;font-style:italic;margin:22px 0}.portraitPlaceholder small{font-size:12px}.about>div>p:not(.eyebrow){color:#5c675e}.about .textLink{display:inline-block;margin-top:16px}.process{border-top:1px solid var(--line);padding-top:58px}.process>div{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:44px}.process article>span{color:var(--accent);font-family:Georgia,serif;font-size:26px}.process h3{font-size:23px;margin-top:16px}.process p{max-width:300px;color:#5c675e}.booking{background:var(--ink);color:#f9f8f4;padding:80px 6%;display:grid;grid-template-columns:.8fr 1fr;gap:9%}.booking h2{font-size:54px;max-width:380px}.booking>div>p:not(.eyebrow){max-width:365px;color:#cbd5cd;margin-top:26px}.bookingLocation{display:block;margin-top:45px;letter-spacing:1px;font-size:14px}.formRow{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:14px;margin-bottom:20px}input:not([type=checkbox]),select,textarea{display:block;width:100%;color:var(--ink);background:#f9faf6;border:1px solid #bcc6bb;border-radius:0;padding:12px;margin-top:8px;min-height:47px}textarea{resize:vertical}.consent{display:flex;gap:12px;align-items:start;color:#d4ded5;font-size:12px}.consent input{margin-top:5px;flex-shrink:0;width:17px;height:17px}.consent button{color:inherit;background:none;border:0;text-decoration:underline;padding:0;font-size:12px}.booking .button{background:#f5f5ed;color:var(--ink);border-color:#f5f5ed}.honeypot{display:none!important}.formStatus{font-size:14px;min-height:24px}footer{padding:45px 6%;display:flex;justify-content:space-between;gap:25px;align-items:center}footer p{font-size:12px;color:#66736a}footer button{background:none;border:0;padding:0;margin-right:22px;font-size:12px;color:inherit;text-decoration:underline}.modalBackdrop{position:fixed;inset:0;z-index:50;background:#13241ab3;display:grid;place-items:center;padding:24px}.modal{background:var(--paper);padding:38px;max-width:580px;max-height:85vh;overflow:auto}.modal h2{font-size:32px}.modal p{margin:24px 0}@media(max-width:1000px){nav{gap:18px}.hero{gap:4%;padding-top:50px}h1{font-size:48px}.photoSpace{height:450px}.serviceGrid{grid-template-columns:1fr 1fr;gap:35px}.gallery{grid-template-columns:1fr 1fr}.booking{gap:6%}.booking h2{font-size:44px}}@media(max-width:650px){header{padding:20px 6%;flex-wrap:wrap;gap:15px}.brand{font-size:25px}nav{order:3;width:100%;justify-content:space-between;gap:8px;font-size:13px}.hero{grid-template-columns:1fr;padding-top:45px;gap:36px}h1{font-size:46px;letter-spacing:-1.8px}.location{margin-top:26px}.heroFrame{padding:0}.photoSpace{height:360px}.caption{margin-right:0}.portfolio,.sessions,.process{padding:48px 6%}.sectionTop{display:block}.sectionTop>p{margin-top:20px;max-width:none}.filters{gap:4px}.filters button{padding:7px 8px}.gallery{gap:14px}.placeholder{padding:16px}.placeholder p{font-size:17px}.gallery h3{font-size:20px}.serviceGrid{gap:30px 20px}.serviceGrid h3{font-size:23px}.serviceGrid p{font-size:14px}.about{grid-template-columns:1fr;padding:55px 6%;gap:36px}.portraitPlaceholder{height:300px}.process>div{grid-template-columns:1fr;gap:20px}.process p{max-width:none}.booking{grid-template-columns:1fr;gap:32px;padding:50px 6%}.booking h2{font-size:42px}.bookingLocation{margin-top:25px}.formRow{grid-template-columns:1fr;gap:0}footer{align-items:start;flex-direction:column}.modal{padding:26px}h2{font-size:34px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.heroPhoto{display:block;width:100%;height:540px;object-fit:cover;object-position:center 34%}.gallery{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.galleryItem{margin:0}.galleryItem img{display:block;width:100%;height:auto}.galleryItem figcaption{font-size:14px;margin:12px 0 20px;color:#59665e}.galleryItem a{display:block}.galleryItem a:hover{opacity:.93}@media(max-width:1000px){.heroPhoto{height:450px}}@media(max-width:650px){.heroPhoto{height:auto;max-height:570px;object-fit:cover}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.galleryItem figcaption{font-size:12px}}

.portfolio{padding-left:12%;padding-right:12%}.portfolio .sectionTop{margin-bottom:44px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.galleryItem img{aspect-ratio:2/3;object-fit:contain;background:transparent}.galleryItem a:hover{opacity:1}.galleryItem{margin:0}@media(max-width:650px){.portfolio{padding:48px 6%}.portfolio .sectionTop{margin-bottom:28px}.gallery{grid-template-columns:1fr;gap:24px}}

@font-face{font-family:'Caveat';src:url('/fonts/caveat.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{--ink:#4b503a;--paper:#fbf6ed;--accent:#94704d;--line:#dfdacb}
body{color:var(--ink)}
header{background:#fbf6ed;border-bottom-color:#e4ddce}
.brand{font-family:'Caveat',cursive;font-size:40px;letter-spacing:0;line-height:1.08}
.brand i{font-style:normal;color:#8b704d}
.brand span{font-size:10px;letter-spacing:2.4px;margin-top:8px;line-height:1.5}
h1{font-size:clamp(42px,4.5vw,72px);letter-spacing:-1.8px;line-height:1.18}
h1 em{display:inline-block;font-family:'Caveat',cursive;font-style:normal;font-size:1.14em;line-height:1.12;letter-spacing:0;color:#77805a;margin-top:8px}
.caption{font-family:'Caveat',cursive;font-size:27px;color:#7b704e;line-height:1.4}
.intro,.sectionTop>p,.sectionIntro,.about>div>p:not(.eyebrow),.process p{color:#6d6c59}
.sessions{background:#e8e8d7}
.serviceGrid article{border-color:#bbbba2}
.serviceGrid p{color:#686951}.number{color:#747958}
.offer{color:#596044}
.button{background:#626a48;border-color:#626a48;color:#fffdf6}
.button:hover{background:#50583b;border-color:#50583b}
.about h2{font-family:'Caveat',cursive;font-size:clamp(44px,4vw,62px);letter-spacing:0;line-height:1.15}
.portraitPlaceholder{background:#e5dfcb;color:#7b7551;border-color:#fbf8ef;outline-color:#d9d4c1}
.portraitPlaceholder p{font-family:'Caveat',cursive;font-style:normal;font-size:62px}
.booking{background:#555f40;color:#fffaf0}
.booking h2{font-family:'Caveat',cursive;font-size:66px;line-height:1.06;letter-spacing:0}
.booking>div>p:not(.eyebrow),.consent{color:#eee9d8}
.booking input:not([type=checkbox]),.booking select,.booking textarea{background:#fcf8ef;border-color:#d5d6bc}
.booking .button{background:#f2e7d4;color:#4b503a;border-color:#f2e7d4}
.booking .button:hover{background:#fff9ec}
footer{background:#f0eedf}footer p{color:#6f705b}
.modalBackdrop{background:#393d2bb3}
@media(max-width:650px){.brand{font-size:34px}h1{font-size:43px;letter-spacing:-1px}.booking h2{font-size:54px}.about h2{font-size:47px}.caption{font-size:25px}}

.hero{max-width:1180px;margin:0 auto;padding-top:48px;padding-bottom:48px;grid-template-columns:1.2fr .8fr;gap:7%}.heroFrame{max-width:330px;justify-self:end;width:100%}.heroPhoto{height:410px;width:100%;object-fit:cover;object-position:center 32%}.hero h1{font-size:clamp(36px,4vw,60px)}.hero h1 em{font-size:1.2em}.portfolio{padding:56px 6%;max-width:1120px;margin:auto}.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:960px;margin:auto}.galleryItem img{width:100%;height:auto;max-height:440px;object-fit:contain}.galleryItem{min-width:0}.sectionTop{margin-bottom:32px}.about{max-width:1120px;margin:auto;padding-top:65px;padding-bottom:65px}.portraitPlaceholder{height:300px}.booking h2{font-size:58px}.booking{padding-top:60px;padding-bottom:50px}
@media(max-width:650px){.hero{grid-template-columns:1fr;padding:36px 6%;gap:25px}.hero h1{font-size:39px}.heroFrame{max-width:280px;justify-self:center}.heroPhoto{height:350px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.galleryItem img{max-height:320px}.portfolio{padding:40px 6%}.booking h2{font-size:50px}}

.brand i,.hero h1 em,.heroFrame .caption{color:#8b704d}

/* A small, evenly spaced portfolio with optional additional photographs. */
.gallery{align-items:start;gap:24px}.galleryItem{margin:0}.galleryItem a{display:block}.galleryItem img{display:block;width:100%;height:auto;aspect-ratio:2/3;max-height:none;object-fit:contain}.portfolioActions{display:flex;justify-content:center;margin-top:32px}.portfolioToggle{font:inherit;font-size:14px;color:var(--ink);background:transparent;border:1px solid #a5a98b;padding:12px 24px;cursor:pointer}.portfolioToggle:hover{background:#e8e8d7}.portfolioToggle:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@media(max-width:650px){.gallery{gap:14px}.galleryItem img{max-height:none}.portfolioActions{margin-top:24px}}

.hero .button{background:#e8decc;border-color:#c9bda6;color:#4b503a}.hero .button:hover{background:#dcd0ba;border-color:#b6a68b}

.heroPhoto{border:1px solid #8b704d;padding:7px;background:var(--paper);box-shadow:none}

.aboutPortrait{width:100%;max-width:350px;justify-self:center;padding:7px;border:1px solid #8b704d;background:var(--paper)}.aboutPortrait img{display:block;width:100%;height:300px;object-fit:cover;object-position:center bottom}@media(max-width:650px){.aboutPortrait{max-width:300px}.aboutPortrait img{height:260px}}

.storyList{max-width:960px;margin:40px auto 0}.story{border-top:1px solid var(--line);padding:22px 0}.story:last-child{border-bottom:1px solid var(--line)}.story summary{display:flex;align-items:center;gap:28px;cursor:pointer;list-style:none}.story summary::-webkit-details-marker{display:none}.story summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.storyCover{display:block;width:150px;height:160px;object-fit:cover}.storyTitle{font-family:Georgia,serif;font-size:26px;line-height:1.3}.storyTitle small{display:block;margin-top:12px;font-family:Arial,sans-serif;font-size:14px;color:#6d6c59}.story[open] .storyTitle{color:#8b704d}.storyGallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:26px;align-items:center}.storyGallery figure{margin:0;min-width:0}.storyGallery img{display:block;width:100%;height:auto;max-height:380px;object-fit:contain}.storyGallery a{display:block}@media(max-width:650px){.story summary{gap:18px}.storyCover{width:100px;height:120px}.storyTitle{font-size:21px}.storyGallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.storyGallery img{max-height:280px}}

.dateControl{display:block;position:relative}.dateControl input[type=text]{padding-right:48px}.booking .nativeDatePicker{position:absolute;width:1px;height:1px;opacity:0;bottom:0;left:0;padding:0;pointer-events:none}.datePickerButton{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:0;background:transparent;color:#4b503a;cursor:pointer}.datePickerButton:focus-visible{outline:2px solid #8b704d}

.sessionPackage{margin:24px 0 22px}.sessionPrice{display:block;font-family:Georgia,serif;font-size:30px;color:#4b503a;line-height:1.2}.serviceGrid .packageDetails{margin:12px 0 8px;min-height:0;font-size:15px;line-height:1.6}.sessionPackage small{font-size:14px;color:#686951}

.heroFrame .caption{text-align:center;margin:14px 0 0;width:100%}.priceButton{display:block;margin:22px 0;font:inherit;font-size:14px;color:var(--ink);background:#e8decc;border:1px solid #c9bda6;padding:11px 20px;cursor:pointer}.priceButton:hover{background:#dcd0ba}.priceButton:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.priceList article{padding:18px 0;border-bottom:1px solid var(--line)}.priceList article:first-child{padding-top:0}.priceList h3{font-size:22px;margin:0 0 10px}.priceList p{margin:10px 0 6px}.priceList small{font-size:14px;color:#686951}.priceList{margin-bottom:24px}

.pricesModal{width:100%;max-width:440px;padding:28px 30px;border:1px solid #c9bda6}.pricesModal h2{font-size:27px;margin:0 0 20px}.pricesModal .priceList{margin-bottom:20px}.pricesModal .priceList article{padding:13px 0}.pricesModal .priceList article:first-child{padding-top:0}.pricesModal .priceList h3{font-size:19px;margin:0 0 6px}.pricesModal .sessionPrice{font-size:25px;color:#8b704d}.pricesModal .priceList p{font-size:15px;line-height:1.5;margin:7px 0 4px}.pricesModal .priceList small{font-size:14px}.pricesModal .button{font-size:14px;padding:10px 20px}@media(max-width:650px){.pricesModal{padding:23px;max-width:380px}}

.gallery{max-width:820px;gap:28px}@media(max-width:650px){.gallery{max-width:460px;gap:18px}}

/* Moments and Light — editorial identity, review draft */
@font-face{font-family:'Cormorant Garamond';src:url('/fonts/cormorant-garamond.ttf') format('truetype');font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:'DM Sans';src:url('/fonts/dm-sans.ttf') format('truetype');font-weight:100 1000;font-style:normal;font-display:swap}
@font-face{font-family:'Allison';src:url('/fonts/allison.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--paper:#F8F4EF;--sand:#D9C9B7;--clay:#B58E7C;--sage:#858777;--ink:#34332F;--accent:#B58E7C;--line:#D9C9B7;--muted:#626159}
body{font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.8;background:var(--paper);color:var(--ink)}
header{background:var(--paper);padding:23px 6%;min-height:128px;border-bottom:1px solid var(--line)}
.brand{display:block;font-family:'Cormorant Garamond',serif;font-size:31px;font-weight:500;line-height:1;letter-spacing:1.5px;text-align:center;white-space:normal}
.brand .brandName{display:block;font-family:inherit;font-size:31px;letter-spacing:1.5px;line-height:1.15;margin:0;text-transform:none}
.brand i{color:var(--clay);font-style:italic}
.brand>span:last-child:not(.brandName){font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:3px;margin-top:8px}
.brand .monogram{font-family:'Cormorant Garamond',serif;font-size:42px;font-weight:400;line-height:.9;letter-spacing:-7px;display:block;margin:0 auto 10px;width:64px;text-align:left}
.brand .monogram span{display:inline;font:inherit;position:relative;top:6px;letter-spacing:-3px;margin:0 0 0 -4px}
nav{gap:28px;font-size:14px}nav a{padding-bottom:5px;border-bottom:1px solid transparent}nav a:hover{color:var(--ink);border-color:var(--clay)}
h1,h2,h3,.storyTitle,.sessionPrice{font-family:'Cormorant Garamond',serif;font-weight:400;letter-spacing:-.7px}
.hero{padding-top:62px;padding-bottom:64px;gap:9%;grid-template-columns:1.2fr .8fr}.hero h1{font-size:clamp(40px,4.5vw,64px);line-height:1.04}.hero h1 em{font-family:'Allison',cursive;font-size:1.08em;font-weight:400;font-style:normal;line-height:1.3;letter-spacing:0;color:#846655;margin-top:9px}
.eyebrow{font-family:'DM Sans',sans-serif;font-size:12px;font-weight:500;letter-spacing:2.4px;color:var(--muted);margin-bottom:20px}
.intro{font-size:16px;line-height:1.85;max-width:445px;margin:26px 0 28px}.intro,.sectionTop>p,.sectionIntro,.about>div>p:not(.eyebrow),.process p,.serviceGrid p{color:var(--muted)}
.heroFrame{padding:0;max-width:330px}.heroPhoto{border-color:var(--sand);padding:7px;background:var(--paper);box-shadow:9px 10px 0 -4px #e9dfd2}
.caption,.heroFrame .caption{font-family:'Allison',cursive;font-style:normal;font-size:31px;color:#846655;text-align:center;line-height:1.4;margin-top:17px}
.location{color:var(--muted);font-size:12px;letter-spacing:2px;margin-top:34px}.heroText:before{content:'❧';display:block;font-family:Georgia,serif;font-size:40px;line-height:1;color:var(--sage);margin:0 0 25px}
.button,.hero .button,.booking .button{background:var(--sand);color:var(--ink);border:1px solid var(--sand);padding:12px 22px;font-size:14px;letter-spacing:.2px;transition:background .2s,border-color .2s}
.button:hover,.hero .button:hover,.booking .button:hover{background:#e8ddd0;border-color:var(--clay)}.textLink{color:var(--ink);border-color:var(--clay)}.textLink:hover{color:#846655}
.portfolio{padding-top:64px;padding-bottom:64px;border-top-color:var(--sand)}.sectionTop{align-items:center;margin-bottom:34px}.sectionTop h2,h2{font-size:clamp(36px,3.7vw,51px);line-height:1.12}.sectionTop>p{font-size:15px}.gallery{max-width:820px;gap:28px}.galleryItem img{background:transparent}.galleryItem a{transition:opacity .2s}.galleryItem a:hover{opacity:.9}
.portfolioToggle,.priceButton{background:transparent;border:1px solid var(--sage);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px;padding:11px 22px;letter-spacing:.2px}.portfolioToggle:hover,.priceButton:hover{background:#eae5dc;border-color:var(--clay)}
.sessions{background:#eee6dc;padding-top:65px;padding-bottom:64px;border-top:1px solid var(--sand);border-bottom:1px solid var(--sand)}.sectionIntro{margin:18px 0 34px}.serviceGrid article{border-color:var(--clay)}.serviceGrid h3{font-size:30px}.serviceGrid p{font-size:16px}.number{color:var(--sage);letter-spacing:2px;margin-bottom:18px}.offer{color:var(--ink)}
.about{padding-top:76px;padding-bottom:76px;gap:10%}.about h2{font-family:'Cormorant Garamond',serif;font-size:clamp(38px,4vw,52px);letter-spacing:-.7px;line-height:1.12}.aboutPortrait{border-color:var(--sand);padding:7px;background:var(--paper)}.about .eyebrow:before{content:'❧';display:block;font-family:Georgia,serif;color:var(--sage);font-size:36px;line-height:1;margin-bottom:24px}
.process{background:var(--paper);border-color:var(--sand);padding-top:56px;padding-bottom:62px}.process article>span{font-family:'Cormorant Garamond',serif;color:#846655;font-size:31px}.process h3{font-size:29px}.process>div{gap:40px;margin-top:30px}
.booking{background:var(--sage);color:var(--paper);padding-top:64px;padding-bottom:58px}.booking h2{font-family:'Cormorant Garamond',serif;font-size:clamp(44px,4.6vw,62px);line-height:1.05;letter-spacing:-.7px}.booking .eyebrow,.booking>div>p:not(.eyebrow),.consent{color:var(--paper)}.booking .textLink{color:var(--paper);border-color:var(--sand);overflow-wrap:anywhere}.booking input:not([type=checkbox]),.booking select,.booking textarea{font-family:'DM Sans',sans-serif;background:var(--paper);border-color:var(--sand);color:var(--ink);padding:11px 12px}.consent,.consent button{font-size:14px}.datePickerButton{color:var(--ink)}.bookingLocation{margin-top:30px}
footer{background:#eee6dc;border-top:1px solid var(--sand);padding-top:36px;padding-bottom:36px}footer p{color:var(--muted);font-size:14px}footer button{font-family:'DM Sans',sans-serif;font-size:14px;color:var(--ink)}
.story{border-color:var(--sand)}.storyTitle{font-size:31px}.storyTitle small{font-family:'DM Sans',sans-serif;color:var(--muted);font-size:14px}.story[open] .storyTitle{color:#846655}.storyGallery{gap:22px}.story summary{gap:30px}
.modalBackdrop{background:#34332f99;backdrop-filter:blur(3px)}.modal{background:var(--paper);border:1px solid var(--sand)}.modal h2{font-family:'Cormorant Garamond',serif;font-size:34px}.pricesModal{max-width:440px}.pricesModal h2{font-size:31px}.pricesModal .priceList h3{font-size:24px}.pricesModal .sessionPrice{font-family:'Cormorant Garamond',serif;font-size:30px;color:#846655}.priceList small{color:var(--muted)}
@media(max-width:1000px){nav{gap:17px}.hero{gap:6%}.brand .brandName{font-size:27px}}
@media(max-width:650px){header{padding:20px 6%;min-height:0}.brand .brandName{font-size:25px}.brand .monogram{font-size:36px;width:54px}.brand>span:last-child:not(.brandName){font-size:9px;letter-spacing:2px}.hero{grid-template-columns:1fr;padding:38px 6% 44px;gap:30px}.hero h1{font-size:44px}.heroText:before{font-size:32px;margin-bottom:20px}.heroFrame{max-width:280px;justify-self:center}.heroPhoto{height:350px}.gallery{max-width:460px;gap:18px}.portfolio,.sessions,.process{padding:44px 6%}.about{padding:48px 6%;gap:30px}.sectionTop h2,h2,.about h2{font-size:38px}.booking{padding:48px 6%}.booking h2{font-size:47px}.storyTitle{font-size:25px}.serviceGrid h3{font-size:27px}.serviceGrid p{font-size:16px}.story summary{gap:18px}.process h3{font-size:27px}.actions{gap:20px}.caption{font-size:30px}}
@media(prefers-reduced-motion:reduce){a,button{transition:none!important}}
/* Stronger palette and calligraphic brand */
.brand,.brand .brandName{font-family:'Allison',cursive;font-size:43px;letter-spacing:0;line-height:1.15;font-weight:400}.brand i{font-family:inherit;color:#846655}.about h2{font-family:'Allison',cursive;font-size:58px;letter-spacing:0;color:#755647;line-height:1.15}.heroText:before,.about .eyebrow:before{content:none}.heroText{position:relative}.botanicalSprig{display:block;width:100px;height:115px;object-fit:contain;margin:0 0 16px;mix-blend-mode:multiply}.about .botanicalSprig{width:90px;height:100px;margin-bottom:14px}.sessions{background:var(--sand);border-color:var(--clay)}.sessions h2{color:var(--ink);font-weight:600}.sessions .sectionIntro{color:#48433d}.serviceGrid article{border-top:2px solid var(--clay);padding:22px 18px;background:#F8F4EF80}.serviceGrid h3{font-weight:600;color:var(--ink)}.serviceGrid p{color:#48433d}.number{color:#5c6051;font-weight:600}.priceButton{border-color:#7b6b5c;background:var(--paper)}.priceButton:hover{background:#e4d7c9}.portfolioToggle{border-color:#646957;color:#34332F}.hero .button{background:var(--sage);border-color:#666a59;color:#fff}.hero .button:hover{background:#686c5c;border-color:#686c5c}.hero h1 em,.heroFrame .caption{color:#755647}.heroPhoto,.aboutPortrait{border-color:var(--clay)}.process{background:#eee6dc}.process article>span{color:#755647}.process article{border-top:1px solid var(--clay);padding-top:18px}.process h3{font-weight:500}.booking{background:#6b705e}.booking label{font-weight:500}.booking .button{background:var(--sand);border-color:var(--sand)}footer{background:var(--sand)}.story[open] .storyTitle{color:#755647}.storyTitle{font-weight:500}.textLink{border-color:#846655}.sectionTop h2{font-weight:500}@media(max-width:650px){.brand .brandName{font-size:34px}.about h2{font-size:49px}.serviceGrid article{padding:18px 12px}.botanicalSprig{width:80px;height:90px}}
/* Editorial refinement */
header{padding-top:26px;padding-bottom:26px}nav{letter-spacing:.3px}.hero{padding-top:68px;padding-bottom:72px}.botanicalSprig{width:72px;height:80px;margin-bottom:22px}.about .botanicalSprig{width:68px;height:76px}.heroPhoto{box-shadow:none;padding:6px}.sectionTop{padding-bottom:20px;border-bottom:1px solid var(--sand)}.sessions{background:#e8ddd0;padding-top:72px;padding-bottom:72px}.sessions h2{font-weight:500}.serviceGrid{gap:34px}.serviceGrid article{background:transparent;border-top:1px solid #987968;padding:24px 0 0}.serviceGrid h3{font-weight:500;font-size:31px}.number{font-weight:400;letter-spacing:3px;font-size:12px}.serviceGrid p{font-size:15px;line-height:1.85}.priceButton{width:max-content;background:transparent;border-color:#987968;padding:10px 18px}.priceButton:hover{background:var(--paper)}.portfolioToggle{padding:12px 26px}.process article{border-top:1px solid var(--sand)}.process>div{gap:48px}.process h3{font-size:27px}.storyTitle{font-weight:400}.about{padding-top:84px;padding-bottom:84px}.pricesModal{padding:30px 32px}.pricesModal .priceList article{padding:15px 0}.button,.portfolioToggle,.priceButton{letter-spacing:.4px}@media(max-width:650px){.hero{padding-top:42px;padding-bottom:46px}.sessions{padding:48px 6%}.serviceGrid{gap:32px 22px}.serviceGrid h3{font-size:27px}.about{padding:52px 6%}.sectionTop{padding-bottom:18px}.botanicalSprig{width:62px;height:70px}}
/* Restore the serif wordmark from the reference board. */
.brand,.brand .brandName{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:500;letter-spacing:3px;line-height:1.2;text-transform:uppercase}.brand i{font-family:inherit;color:var(--ink);font-style:normal}.brand>span:last-child:not(.brandName){letter-spacing:3px}@media(max-width:650px){.brand,.brand .brandName{font-size:22px;letter-spacing:2px}}
/* Serif pricing typography */
.priceButton,.pricesModal .sessionPrice,.pricesModal .priceList h3{font-family:'Cormorant Garamond',serif;font-weight:500}.priceButton{font-size:20px;letter-spacing:.3px;line-height:1.2;padding:10px 20px}.pricesModal .sessionPrice{font-size:32px}.pricesModal .priceList h3{font-size:25px}
.sessions h2,.serviceGrid h3{font-weight:600;color:#34332F}.priceButton{font-weight:600;color:#34332F;border-color:#846655}.pricesModal .sessionPrice,.pricesModal .priceList h3{font-weight:600}
/* Supplied warm paper texture and botanical section details. */
.sessions{position:relative;isolation:isolate;background-color:#e8ddcd;background-image:linear-gradient(#f8f4ef18,#d9c9b718),url('/paper-texture.png');background-size:auto,750px 481px;background-repeat:repeat;overflow:hidden;border-top:1px solid #b58e7c;border-bottom:1px solid #b58e7c}.sessions>div{position:relative;z-index:1}.sessions:before,.sessions:after{content:'';position:absolute;z-index:0;pointer-events:none;width:210px;height:260px;background:url('/botanical-sprig.png') center/contain no-repeat;opacity:.14;mix-blend-mode:multiply}.sessions:before{right:1%;top:-35px;transform:rotate(30deg)}.sessions:after{left:-70px;bottom:-100px;transform:rotate(195deg)}.sessions .sectionTop{border-bottom-color:#b58e7c}.sessions .priceButton{background:#f8f4ef80}.sessions .priceButton:hover{background:var(--paper)}.portfolioActions:after{content:'';display:block;width:52px;height:65px;background:url('/botanical-sprig.png') center/contain no-repeat;opacity:.65;margin-left:22px;transform:rotate(35deg)}.portfolioActions{align-items:center}.process{position:relative}.process:after{content:'';display:block;width:90px;height:1px;background:var(--clay);margin:34px auto 0}@media(max-width:650px){.sessions:before{width:145px;height:190px;right:-35px;opacity:.1}.sessions:after{opacity:.08}.portfolioActions:after{width:38px;height:46px;margin-left:14px}}
/* Softer paper surfaces and transitions */
header{background-color:#f5efe7;background-image:linear-gradient(#f8f4efc9,#f8f4efc9),url('/paper-texture.png');background-size:auto,750px 481px;border-bottom-color:#d9c9b745}.sessions{background-color:#f4eee5;background-image:linear-gradient(#f8f4efb8,#f8f4efb8),url('/paper-texture.png');border-top-color:#d9c9b740;border-bottom-color:#d9c9b740}.sessions .sectionTop{border-bottom-color:#b58e7c50}.sessions .serviceGrid article{border-top-color:#98796880}.sessions:before,.sessions:after{opacity:.09}footer{background-color:#f2ece4;background-image:linear-gradient(#f8f4efc9,#f8f4efc9),url('/paper-texture.png');background-size:auto,750px 481px;border-top-color:#d9c9b745}
/* Selected calligraphic wordmark */
.brand,.brand .brandName{font-family:'Allison',cursive;font-size:43px;font-weight:400;letter-spacing:0;line-height:1.15;text-transform:none;color:#755647}.brand>span:last-child:not(.brandName){color:var(--ink)}@media(max-width:650px){.brand,.brand .brandName{font-size:34px;letter-spacing:0}}
.serviceGrid h3,.pricesModal .priceList h3{font-family:'Allison',cursive;font-weight:400;font-size:36px;letter-spacing:0;line-height:1.25;color:#755647}.pricesModal .priceList h3{font-size:34px}@media(max-width:650px){.serviceGrid h3{font-size:31px}}
.serviceGrid h3,.pricesModal .priceList h3{text-transform:uppercase;font-size:28px;letter-spacing:.5px;line-height:1.45;overflow-wrap:anywhere}@media(max-width:650px){.serviceGrid h3{font-size:24px}}
/* Restore editorial serif session categories. */
.serviceGrid h3,.pricesModal .priceList h3{font-family:'Cormorant Garamond',serif;font-weight:600;text-transform:none;font-size:31px;letter-spacing:-.7px;line-height:1.15;color:#34332F;overflow-wrap:normal}.pricesModal .priceList h3{font-size:25px}@media(max-width:650px){.serviceGrid h3{font-size:27px}}

/* Signature wordmark matching the reference. */
.brand .brandName{display:block;width:290px;max-width:100%;line-height:1}
.brand .brandName img{display:block;width:100%;height:auto}
@media(max-width:650px){.brand .brandName{width:220px}}

.packageHeading{display:flex;align-items:baseline;justify-content:space-between;gap:18px}.pricesModal .packageHeading h3{margin:0}.pricesModal .packageHeading .sessionPrice{white-space:nowrap}.pricesModal .priceList article{padding:20px 0}.pricesModal .priceList article:first-child{padding-top:0}

/* Soft sage price buttons. */
.priceButton{background:#dce0d3;border-color:#a2aa96;color:#34332F}
.priceButton:hover{background:#cbd2bf;border-color:#858777;color:#34332F}

/* Sage paper header. */
header{background-color:#e3e7dc;background-image:linear-gradient(#e3e7dcc9,#e3e7dcc9),url('/paper-texture.png');background-size:auto,750px 481px;border-bottom-color:#a2aa9650}

.sessions .serviceGrid button.priceButton{background-color:#c4cdb5;background-image:none;border:1px solid #858777;color:#34332F}
.sessions .serviceGrid button.priceButton:hover{background-color:#b3bea0;border-color:#6e765f}

/* Price buttons match the sage paper header. */
.sessions .serviceGrid button.priceButton{background-color:#e3e7dc;background-image:linear-gradient(#e3e7dcc9,#e3e7dcc9),url('/paper-texture.png');background-size:auto,750px 481px;border-color:#a2aa96;color:#34332F}
.sessions .serviceGrid button.priceButton:hover{background-color:#e3e7dc;background-image:linear-gradient(#e3e7dcc9,#e3e7dcc9),url('/paper-texture.png');border-color:#858777}

/* Portfolio toggle matches sage paper buttons. */
.portfolio .portfolioToggle{background-color:#e3e7dc;background-image:linear-gradient(#e3e7dcc9,#e3e7dcc9),url('/paper-texture.png');background-size:auto,750px 481px;border-color:#a2aa96;color:#34332F}
.portfolio .portfolioToggle:hover{background-color:#e3e7dc;background-image:linear-gradient(#e3e7dcc9,#e3e7dcc9),url('/paper-texture.png');border-color:#858777}

/* Sage paper pricing surfaces and watercolor leaves. */
.sessions,.pricesModal{background-color:#e3e7dc;background-image:linear-gradient(#e3e7dcc9,#e3e7dcc9),url('/paper-texture.png');background-size:auto,750px 481px;border-color:#a2aa9650}
.sessions .serviceGrid button.priceButton,.portfolio .portfolioToggle,.pricesModal>.button{background-color:#bbc5ad;background-image:linear-gradient(#bbc5add9,#bbc5add9),url('/paper-texture.png');background-size:auto,750px 481px;border:1px solid #858f76;color:#34332f}
.sessions .serviceGrid button.priceButton:hover,.portfolio .portfolioToggle:hover,.pricesModal>.button:hover{background-color:#aebba0;background-image:linear-gradient(#aebba0d9,#aebba0d9),url('/paper-texture.png');border-color:#6e795f;color:#34332f}
.botanicalSprig,.about .botanicalSprig{object-fit:contain;mix-blend-mode:normal;width:72px;height:116px}
.sessions:before,.sessions:after{mix-blend-mode:normal;opacity:.2;width:150px;height:240px}
.portfolioActions:after{mix-blend-mode:normal;width:45px;height:75px;opacity:.65}
@media(max-width:650px){.botanicalSprig,.about .botanicalSprig{width:56px;height:90px}.sessions:before,.sessions:after{width:100px;height:165px;opacity:.14}}

/* Welcome offer */
.welcomeOffer[data-slot="dialog-content"]{width:calc(100% - 32px);max-width:470px;max-height:90dvh;overflow:auto;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;padding:38px 32px 30px;border:1px solid #a2aa96;border-radius:0;color:#34332f;background:#e3e7dc;background-image:linear-gradient(#e3e7dcc9,#e3e7dcc9),url('/paper-texture.png');background-size:auto,750px 481px;box-shadow:0 20px 80px #34332f33}
.welcomeOffer h2{font-family:'Cormorant Garamond',serif;font-size:36px;font-weight:500;line-height:1.15;margin:0}.welcomeOffer .eyebrow{font-size:12px;margin:0;letter-spacing:2px}.welcomeLeaves{width:42px;height:66px;object-fit:contain}.welcomeDiscount{font-family:'Cormorant Garamond',serif;font-size:76px;line-height:1.05;color:#5f6b53}.welcomeOffer [data-slot="dialog-description"]{font-size:16px;line-height:1.7;color:#454a3e;margin:0 0 5px;max-width:340px}.welcomeOffer .button{background:#bbc5ad;border-color:#858f76;color:#34332f;width:100%}.welcomeOffer .button:hover{background:#aebba0}.welcomeClose{position:absolute;top:8px;right:12px;min-width:44px;min-height:44px;font-size:30px;line-height:1;border:0;background:transparent;color:#34332f}.welcomeLater{font-size:14px;background:transparent;border:0;text-decoration:underline;text-underline-offset:4px;color:#454a3e;padding:8px}@media(max-width:480px){.welcomeOffer[data-slot="dialog-content"]{padding:32px 22px 22px;gap:13px}.welcomeOffer h2{font-size:30px}.welcomeDiscount{font-size:64px}}

/* Explicit positioning for the dialog on this site's standalone stylesheet. */
[data-slot="dialog-overlay"]{position:fixed;inset:0;z-index:100;background:#34332f80;backdrop-filter:blur(3px)}
.welcomeOffer[data-slot="dialog-content"]{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:101;margin:0}
