@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('/_astro/inter-latin-wght-normal.Dx4kXJAl.woff2')}@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500;font-display:swap;src:url('/_astro/cormorant-garamond-latin-500-normal.BsRWmXhO.woff2')}@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:600;font-display:swap;src:url('/_astro/cormorant-garamond-latin-600-normal.Co1r35X9.woff2')}@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:500;font-display:swap;src:url('/_astro/cormorant-garamond-latin-500-italic.Y14P-dkT.woff2')}
:root{--paper:#faf5f0;--ink:#202830;--muted:#55606b;--rose:#95545e;--line:#a1626b2e;--soft:#f9f4ee}body{font-family:'Inter',Arial,sans-serif;-webkit-font-smoothing:antialiased;font-size:17px}.wrap{max-width:1392px;width:100%;padding-inline:clamp(20px,5vw,40px)}html{scroll-padding-top:100px}.header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--paper) 94%,transparent);backdrop-filter:blur(10px);padding:0;display:block;max-width:none;width:100%}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px}.brand>span{font-family:'Cormorant Garamond',Georgia,serif;font-size:24px;letter-spacing:.01em;font-weight:600}nav{font-size:15px;gap:32px;max-width:none}nav>a:not(.nav-contact){padding:8px 0;border-bottom:1.5px solid transparent}nav>.active{color:var(--rose);border-bottom-color:var(--rose)!important}.nav-contact,.button{border:1.5px solid transparent;border-radius:999px;background:var(--rose);color:white;padding:12px 28px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;font-size:15px;font-weight:600}.nav-contact:hover{color:white;background:#7d454e}.hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(32px,6vw,80px);padding-top:clamp(48px,7vw,96px);padding-bottom:clamp(56px,8vw,104px)}.hero h1{font-size:clamp(38px,6.2vw,64px);line-height:1.1;letter-spacing:-.01em;font-weight:500;margin-bottom:.6em;max-width:620px}.hero h1 em{font-style:normal;color:var(--ink)}h1,h2,h3,.signature,.formats>span{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500}.hero .eyebrow{font-family:'Cormorant Garamond',Georgia,serif;color:#a1626b;font-size:clamp(24px,2.6vw,30px);font-weight:500;font-style:italic;line-height:1.3;letter-spacing:0;text-transform:none;margin-bottom:20px}.intro{font-size:clamp(18px,1.9vw,21px);line-height:1.65;color:var(--ink);max-width:620px;margin-bottom:22px}.hero-image{width:100%;max-width:480px;height:auto;aspect-ratio:4/5;justify-self:end;border-radius:180px 180px 14px 14px}.hero-image img{height:108%;object-fit:cover}.button{gap:18px;margin-top:10px}.small-note{font-size:13px;margin-top:17px}.topics{padding:clamp(64px,9vw,120px) 0;background:var(--soft)}h2{font-size:clamp(30px,4.2vw,46px);letter-spacing:-.01em;line-height:1.1}.eyebrow{font-size:12px;letter-spacing:.16em}.topic-grid{gap:clamp(16px,2vw,24px);margin-top:48px;margin-bottom:38px}.topic-grid article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:clamp(24px,3vw,32px)}.topic-grid h3{font-size:24px;line-height:1.2}.topic-grid p{font-size:15.5px;line-height:1.7}.number{font-family:'Cormorant Garamond',Georgia,serif;color:#a1626b;font-size:28px}.formats{border-color:var(--line);padding-top:30px}.formats>span{font-size:26px}.formats>div{align-items:center}.formats a{font-size:14px;font-weight:600;color:var(--rose);border-color:var(--line)}.approach{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,72px);padding-top:clamp(64px,9vw,120px);padding-bottom:clamp(64px,9vw,120px)}.portrait{width:100%;max-width:480px;height:auto;aspect-ratio:4/5;border-radius:48% 52% 44% 56%/40% 38% 62% 60%;overflow:hidden}.portrait img{border-radius:0;object-position:center 53%}.approach-copy p:not(.eyebrow):not(.signature){font-size:17px;line-height:1.7;max-width:68ch}.signature{font-size:29px}.contact{background:#f1e4dc;padding:64px 0}.contact p{font-size:16px}.contact-inner{gap:72px}.contact .preview-note{font-size:12px}select{background:var(--paper);border-color:#a1626b52;font-family:inherit}footer{padding-top:32px;padding-bottom:32px;font-size:13px}.menu-toggle{display:none}.skip{z-index:30}
.hero{position:relative;isolation:isolate;overflow:hidden;min-height:740px}.hero-copy{position:relative;z-index:2}.hero-image{position:absolute;z-index:-1;inset:0 0 0 auto;width:65%;max-width:none;height:100%;aspect-ratio:auto;border-radius:0;overflow:hidden}.hero-image img{width:100%;height:110%;object-fit:cover;object-position:center 48%}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--paper) 0%,rgba(250,245,240,.96) 8%,rgba(250,245,240,.7) 23%,rgba(250,245,240,.18) 42%,transparent 60%),linear-gradient(180deg,var(--paper),rgba(250,245,240,.4) 10%,transparent 24%,transparent 92%,var(--paper) 100%);pointer-events:none}.hero .intro{max-width:540px}
@media(max-width:1080px){.header-inner{flex-wrap:wrap;min-height:68px;padding-block:10px}.menu-toggle{display:grid;align-content:center;gap:5px;width:48px;height:48px;border:1px solid #a1626b52;border-radius:50%;background:none;padding:14px;color:var(--ink)}.menu-toggle span{height:2px;background:currentColor;width:18px}nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0;padding-bottom:16px}nav.open{display:flex}nav>a:not(.nav-contact){border-bottom:1px solid var(--line);padding:14px 0}nav a:nth-child(2){display:block}.nav-contact{margin-top:15px}.topic-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.hero{grid-template-columns:1fr;gap:40px}.hero-image{justify-self:start;max-width:420px}.hero h1{max-width:680px}.hero .intro{max-width:680px}.approach{grid-template-columns:1fr;gap:40px}.portrait{max-width:460px}.approach-copy{max-width:680px}.formats{flex-direction:column}.contact-inner{gap:35px}}
@media(max-width:650px){.hero{padding-top:42px;padding-bottom:56px}.hero h1{font-size:44px}.hero-image{height:auto;max-width:100%;aspect-ratio:4/5}.hero-image img{height:108%;object-position:center top}.hero .eyebrow{font-size:24px}.topic-grid{grid-template-columns:1fr;gap:18px;margin-top:30px}.topic-grid h3 br{display:none}.topic-grid article{padding:26px}.topic-grid h3{font-size:28px}.topics{padding:60px 0}.formats>div{align-items:flex-start;flex-direction:column;gap:18px}.portrait{height:auto}.approach{padding-block:60px}.contact-inner{grid-template-columns:1fr}.contact{padding:48px 0}footer{font-size:11px;flex-wrap:wrap;gap:10px}}
@media(max-width:900px){.hero{min-height:0;gap:0;padding-bottom:0}.hero-image{position:relative;inset:auto;z-index:0;width:calc(100% + 80px);max-width:none;height:460px;aspect-ratio:auto;margin:0 -40px;justify-self:stretch}.hero-image img{height:110%;object-position:center 53%}.hero-image:after{background:linear-gradient(180deg,var(--paper) 0%,rgba(250,245,240,.85) 10%,rgba(250,245,240,.35) 28%,transparent 48%,transparent 90%,var(--paper) 100%),linear-gradient(90deg,rgba(250,245,240,.5),transparent 25%)}.hero-copy{padding-bottom:12px}.hero .intro{max-width:680px}}
.hero-image{mask-image:linear-gradient(90deg,transparent 0%,#000 12%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 12%)}
@media(max-width:900px){.hero-image{mask-image:none;-webkit-mask-image:none}}
@media(max-width:650px){.hero-image{height:390px;width:calc(100% + 40px);margin:0 -20px}.hero-image img{object-position:center 55%}}
.booking-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:560px;margin-top:30px}.booking-option{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:178px;padding:22px 22px 45px;border:1px solid #b87f8c55;border-radius:14px;transition:background .2s,transform .2s,box-shadow .2s}.booking-option--individual{background:#95545e;color:#fff}.booking-option--couple{background:#f1e4dc;color:#543b40}.booking-type{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;opacity:.9}.booking-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:33px;line-height:1.15;margin:9px 0 7px}.booking-description{font-size:13px;line-height:1.5}.booking-arrow{position:absolute;right:18px;bottom:16px;display:grid;place-items:center;width:26px;height:26px;border:1px solid currentColor;border-radius:50%;font-size:17px}.booking-option--individual:hover{background:#7d454e;color:white}.booking-option--couple:hover{background:#e7d3ca;color:#543b40}.booking-option:hover{transform:translateY(-3px);box-shadow:0 6px 20px #543b4012}.booking-option:focus-visible{outline:3px solid var(--rose);outline-offset:4px}.hero .small-note{font-size:11px}
@media(max-width:420px){.booking-options{gap:10px}.booking-option{min-height:182px;padding:18px 14px 45px}.booking-title{font-size:29px}.booking-description{font-size:12px}.booking-type{font-size:9px;letter-spacing:.08em}}
@media(prefers-reduced-motion:reduce){.booking-option{transition:none}.booking-option:hover{transform:none}}
.approach{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(110deg,#faf5f0 0%,#f8eee9 46%,#fbf7f3 100%)}.approach:before{content:'';position:absolute;z-index:-1;left:-9%;bottom:8%;width:70%;height:170px;border-top:1.5px solid #a1626b70;border-radius:50% 50% 0 0/100% 100% 0 0;transform:rotate(-6deg);box-shadow:0 -18px 0 -17px #a1626b45,0 -36px 0 -35px #a1626b2e}.approach:after{content:'';position:absolute;z-index:-1;right:-4%;top:0;width:54%;height:100%;opacity:.7;background:radial-gradient(ellipse at 30% 34%,#ead8d3 0%,transparent 58%),linear-gradient(120deg,transparent 42%,#a1626b4d 42.3%,#a1626b4d 42.8%,transparent 43.1%),linear-gradient(134deg,transparent 50%,#a1626b3c 50.3%,#a1626b3c 50.8%,transparent 51.1%),linear-gradient(146deg,transparent 61%,#a1626b32 61.3%,#a1626b32 61.8%,transparent 62.1%)}.portrait{position:relative;z-index:1;max-width:none;aspect-ratio:auto;height:520px;border-radius:8px 150px 8px 8px;overflow:hidden;box-shadow:22px 24px 48px rgba(32,40,48,.18),0 10px 26px rgba(149,84,94,.12);mask-image:linear-gradient(90deg,#000 0%,#000 82%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 82%,transparent 100%)}.portrait:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 56%,rgba(250,245,240,.1) 72%,rgba(250,245,240,.92) 100%);pointer-events:none}.portrait img{height:100%;object-position:center 48%}.approach-copy{position:relative;z-index:3;padding:4% 9% 4% 0}.approach-copy:before{content:'';position:absolute;z-index:-1;inset:-12% -10% -12% -16%;background:linear-gradient(90deg,rgba(250,245,240,.2) 0%,#faf5f0 40%,#faf5f0 100%);opacity:.96}.approach-floral{position:absolute;z-index:2;right:1%;top:6%;width:190px;height:470px;overflow:visible;fill:none;stroke:#a1626b;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;opacity:.52}.approach-wave{position:absolute;z-index:2;left:-4%;bottom:1%;width:78%;height:130px;fill:none;stroke:#a1626b;stroke-width:1.25;stroke-linecap:round;opacity:.38}.approach .signature{color:var(--rose)}
@media(max-width:900px){.portrait{height:auto;aspect-ratio:4/5;border-radius:8px 110px 8px 8px;mask-image:linear-gradient(180deg,#000 0%,#000 86%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 86%,transparent 100%)}.approach-copy{padding-right:0}.approach-copy:before{inset:-8% -4% -8% -4%;background:linear-gradient(180deg,rgba(250,245,240,.2),#faf5f0 16%,#faf5f0 100%)}.approach-floral{right:-2%;top:40%;width:150px;height:360px;opacity:.4}.approach-wave{left:-12%;width:120%;bottom:0}}
@media(max-width:650px){.portrait{border-radius:8px 80px 8px 8px}.approach:before{left:-20%;width:110%;bottom:6%;height:120px}.approach:after{right:-30%;width:85%;opacity:.42}.approach-floral{right:-14%;top:48%;width:125px;height:300px;opacity:.32}.approach-wave{left:-20%;width:145%;height:90px;opacity:.28}}
.topics{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(118deg,#faf5f0 0%,#f6ece6 52%,#fbf7f3 100%)}.topics:before{content:'';position:absolute;z-index:-1;left:-8%;top:4%;width:58%;height:100px;border-bottom:1.5px solid #a1626b62;border-radius:0 0 50% 50%/0 0 100% 100%;transform:rotate(5deg);box-shadow:0 18px 0 -17px #a1626b38,0 36px 0 -35px #a1626b28}.topics:after{content:'';position:absolute;z-index:-1;right:-8%;bottom:-20%;width:34%;height:78%;opacity:.5;background:linear-gradient(72deg,transparent 42%,#a1626b52 42.5%,#a1626b52 43.2%,transparent 43.7%),linear-gradient(82deg,transparent 54%,#a1626b42 54.5%,#a1626b42 55.2%,transparent 55.7%),radial-gradient(ellipse at 35% 45%,#e9d7d1 0%,transparent 62%);transform:rotate(-8deg)}.topics>.wrap,.section-heading,.topic-grid,.formats{position:relative;z-index:1}.approach-floral{opacity:.7;stroke-width:1.5}.approach-wave{opacity:.5;stroke-width:1.4}.portrait{box-shadow:24px 28px 54px rgba(32,40,48,.22),0 12px 30px rgba(149,84,94,.16)}
.interlude{position:relative;width:100%;margin:clamp(40px,6vw,80px) auto;overflow:hidden;background:#f5ebe4;box-shadow:0 20px 50px rgba(32,40,48,.11)}.interlude:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(250,245,240,.12),transparent 34%,rgba(250,245,240,.06) 100%)}.interlude img{display:block;width:100%;height:auto;min-height:240px;object-fit:cover}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.portrait{width:94%;max-width:560px;height:480px;margin-left:2%;border-radius:28px 120px 28px 28px;mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 84%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 84%,transparent 100%)}.portrait:after{background:linear-gradient(90deg,rgba(250,245,240,.18) 0%,transparent 10%,transparent 72%,rgba(250,245,240,.9) 100%)}
.interlude-link{position:absolute;z-index:3;left:6%;bottom:18%;width:24%;height:19%;border-radius:999px}.interlude-link:focus-visible{outline:3px solid #fff;outline-offset:4px}
@media(max-width:900px){.interlude{margin-block:34px}.interlude img{min-height:180px;object-fit:cover;object-position:center}.portrait{width:98%;max-width:520px;height:auto;margin-left:0;border-radius:22px 95px 22px 22px;mask-image:linear-gradient(180deg,transparent 0%,#000 7%,#000 86%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 7%,#000 86%,transparent 100%)}}
@media(max-width:650px){.interlude{margin-block:28px}.interlude img{min-height:150px}.interlude-link{left:6%;bottom:16%;width:34%;height:20%}.portrait{width:100%;border-radius:18px 70px 18px 18px}}
.topics .section-heading{text-align:center;max-width:none}.topics .section-heading .eyebrow{margin-bottom:14px}.topics .section-heading h2{font-size:clamp(36px,4.2vw,52px)}.topics .section-heading h2:after{content:'';display:block;width:64px;height:2px;background:var(--rose);margin:24px auto 0}.topic-grid{gap:0;margin-top:52px;margin-bottom:52px}.topic-grid article{background:transparent;border:0;border-left:1px solid var(--line);border-radius:0;align-items:center;text-align:center;padding:8px clamp(18px,2.5vw,34px) 12px}.topic-grid article:first-child{border-left:0}.topic-icon{width:66px;height:66px;fill:none;stroke:var(--rose);stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;margin:0 auto 20px}.topic-grid h3{font-size:clamp(24px,2.4vw,31px);line-height:1.12;margin:0 0 22px}.topic-rule{display:block;width:58px;height:2px;background:var(--rose);margin:0 auto 24px}.topic-grid p{font-size:15px;line-height:1.7;max-width:30ch;margin:0 auto;color:var(--muted)}.topics .formats{margin-top:12px}.number{display:none}
@media(max-width:1080px){.topic-grid article{padding-inline:20px}.topic-grid p{max-width:34ch}}
@media(max-width:900px){.topic-grid{grid-template-columns:repeat(2,1fr);gap:30px 0}.topic-grid article:nth-child(3){border-left:0}.topic-grid article:nth-child(n+3){border-top:1px solid var(--line);padding-top:32px}.topic-grid p{max-width:38ch}}
@media(max-width:650px){.topics .section-heading h2{font-size:39px}.topic-grid{grid-template-columns:1fr;gap:0}.topic-grid article,.topic-grid article:nth-child(n+3){border-left:0;border-top:1px solid var(--line);padding:34px 10px}.topic-grid article:first-child{border-top:0;padding-top:12px}.topic-icon{width:60px;height:60px}.topic-grid h3{font-size:29px}.topic-grid p{max-width:34ch}.topics .formats{margin-top:25px}}
