@font-face{font-family:'Cormorant Garamond';src:url('assets/cormorant-garamond.ttf') format('truetype');font-weight:300 700;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/dm-sans.ttf') format('truetype');font-weight:100 1000;font-display:swap}
:root{--paper:#f5f0e6;--ink:#272723;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--space:clamp(64px,9vw,136px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:6px}p{max-width:62ch;margin:0 0 24px;text-wrap:pretty}h1,h2,h3{margin:0 0 24px;font-weight:500;line-height:1.05;text-wrap:balance}h1,h2,.brand,.price,.occasion-heading{font-family:var(--serif);letter-spacing:-.035em}h1{font-size:clamp(48px,8.8vw,126px);line-height:.98}h2{font-size:clamp(40px,5.3vw,76px)}h3{font-size:20px;letter-spacing:-.02em;line-height:1.25}figure{margin:0}img{display:block;width:100%;height:auto}ul{padding-left:20px}.wrap{width:min(1280px,calc(100% - 80px));margin-inline:auto}.section{padding-block:var(--space)}.nav{min-height:100px;display:flex;justify-content:space-between;align-items:center;gap:28px}.brand{font-size:38px;line-height:1.1;white-space:nowrap}.nav-links{display:flex;gap:28px;align-items:center}.nav-links a:not(.button){font-size:14px;padding:12px 0}.nav-links a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:14px 24px;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--paper);font:500 15px/1.4 var(--sans);text-align:center;cursor:pointer;transition:transform .18s,opacity .18s}.button:hover{transform:translateY(-2px);opacity:.86}.button:active{transform:translateY(0)}.button.outline{background:transparent;color:inherit;border-color:currentColor}.mobile-menu{display:none}.hero{padding-top:60px}.hero h1{margin-bottom:40px}.hero-bottom{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:60px}.hero-bottom>p{font-size:20px;max-width:43ch;margin:0}.hero-bottom>div{flex-shrink:0}.hero-bottom .small{font-size:14px;margin:12px 0 0}.hero-media{width:100%;display:grid;grid-template-columns:1.3fr .7fr;gap:48px;align-items:end}.hero-media img{max-height:620px;object-fit:contain;object-position:left center}.hero-media figcaption{font-size:14px;max-width:29ch;padding-bottom:32px}.launch-note{margin:24px 0 0;font-size:14px;max-width:76ch}.event-section{padding-bottom:0}.event-section>h2{margin-bottom:40px}.event-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.occasion-panel{display:flex;flex-direction:column;align-items:start}.occasion-panel h3{font-size:16px;font-weight:500}.occasion-heading{font-size:clamp(40px,4.7vw,68px);line-height:1.05;margin:0 0 24px}.occasion-description{max-width:38ch}.occasion-cover{display:grid;gap:4px;margin:auto 0 28px}.occasion-cover span{font-size:14px}.occasion-cover strong{font-weight:500}.services{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.services-list{display:grid;grid-template-columns:1fr 1fr;gap:32px}.service p{margin:0}.service h3{font-size:18px;margin-bottom:12px}.package-section{background:var(--ink);color:var(--paper)}.package-section h2{margin-bottom:24px}.packages{display:grid;grid-template-columns:1fr 1fr;gap:100px;margin-top:60px}.package{display:flex;flex-direction:column;align-items:start}.package h3{font-size:24px;margin-bottom:16px}.package .price{font-size:clamp(72px,9vw,120px);line-height:1;margin:0 0 12px;font-variant-numeric:lining-nums tabular-nums}.price span{font-size:.6em}.package>p:not(.price){margin-bottom:14px}.package ul{display:grid;gap:8px;margin:12px 0 32px;list-style-type:'–  '}.package .button{margin-top:auto;background:var(--paper);color:var(--ink);border-color:var(--paper)}.package .button.outline{background:transparent;color:var(--paper)}.package-details{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:64px}.package-details strong{font-weight:600}.package-note{font-size:14px;max-width:90ch;margin-bottom:0}.process .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:40px}.step h3{font-size:20px}.step p{margin:0}.faq{padding-top:0;display:grid;grid-template-columns:.7fr 1.3fr;gap:60px}.faq details{margin-bottom:12px}.faq summary{cursor:pointer;padding:18px 32px 18px 0;font-size:18px;line-height:1.4;font-weight:500}.faq details p{margin:0;padding:0 24px 18px 0}.inquiry{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-top:24px}.inquiry-intro{min-width:0}.inquiry h2{font-size:clamp(36px,4.2vw,60px)}.form-note{font-size:14px;overflow-wrap:anywhere}.text-link{text-decoration:underline;text-underline-offset:4px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:28px}.form-grid label{display:grid;gap:8px;font-size:14px;font-weight:500;min-width:0}.full{grid-column:1/-1}input,select,textarea{width:100%;min-width:0;max-width:100%;padding:13px 14px;min-height:50px;border:1px solid var(--ink);border-radius:0;color:var(--ink);background:var(--paper);font:400 16px/1.5 var(--sans)}input::placeholder{color:var(--ink);opacity:.7}textarea{resize:vertical}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.form-required-note{font-size:14px}.form-trap{display:none}.form-result{padding:20px;border:1px solid var(--ink);margin:20px 0;overflow-wrap:anywhere}.button:disabled{opacity:.6;cursor:wait;transform:none}.date-control{display:flex;align-items:center;min-height:52px;padding:13px 14px;border:1px solid var(--ink);min-width:0}.date-control input[type=date]{flex:1 1 0;min-width:0;height:24px;min-height:24px;padding:0;border:0;-webkit-appearance:none;appearance:none;line-height:24px}.date-control input[type=date]::-webkit-date-and-time-value{text-align:left;min-height:24px}.date-control input[type=date]::-webkit-datetime-edit{padding:0;min-width:0}.date-control:focus-within{outline:2px solid var(--ink);outline-offset:3px}.date-control input[type=date]:focus-visible{outline:none}.address-field{display:grid;gap:8px;min-width:0}.address-field small{font-size:13px;line-height:1.5}.address-field small:empty{display:none}.address-input{min-width:0}.address-toggle{justify-self:start;border:0;background:transparent;color:var(--ink);min-height:44px;padding:6px 0;text-align:left;font-size:14px;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.address-popup{margin-top:8px;border:1px solid var(--ink)}.address-popup ul{list-style:none;margin:0;padding:4px;max-height:260px;overflow-y:auto}.address-popup li{padding:12px;min-height:48px;cursor:pointer;overflow-wrap:anywhere}.address-popup li:hover,.address-popup li[aria-selected=true]{background:var(--ink);color:var(--paper)}.address-popup li small{display:block}.address-attribution{padding:12px;font-size:13px}.address-attribution a{text-decoration:underline}.footer{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding-bottom:40px}.footer .brand{grid-column:1/-1;font-size:clamp(72px,13vw,180px);line-height:1}.footer p,.footer-links{font-size:14px}.footer-links{display:flex;gap:24px;justify-content:end;align-items:start}.skip-link{position:absolute;left:20px;top:10px;transform:translateY(-200%);background:var(--ink);color:var(--paper);padding:12px;z-index:20}.skip-link:focus{transform:none}[hidden]{display:none!important}
@media(max-width:1050px){.nav-links{gap:18px}.nav-links a:not(.button){font-size:13px}.wrap{width:calc(100% - 48px)}.services{gap:40px;grid-template-columns:.8fr 1.2fr}.services-list{grid-template-columns:1fr}.inquiry{grid-template-columns:1fr;gap:32px}.inquiry-intro{display:grid;grid-template-columns:1fr 1fr;gap:20px 40px}.inquiry-intro h2{grid-row:span 2}.inquiry-intro p{margin:0}.packages{gap:60px}.hero-media{gap:28px}.event-grid{gap:50px}}
@media(max-width:767px){.wrap{width:calc(100% - 40px)}.nav{min-height:80px}.brand{font-size:32px}.nav-links{display:none}.mobile-menu{display:block;position:relative}.menu-toggle{min-height:44px;padding:10px 0 10px 20px;border:0;background:transparent;color:var(--ink);cursor:pointer}.menu-links{position:absolute;right:0;top:52px;z-index:10;background:var(--ink);color:var(--paper);width:230px;padding:16px;display:grid}.menu-links a{padding:12px;min-height:44px}.hero{padding-top:32px}h1{font-size:clamp(37px,8.9vw,68px);letter-spacing:-.04em}.hero h1{margin-bottom:28px}.hero-bottom{display:grid;gap:24px;margin-bottom:36px}.hero-bottom>p{font-size:17px;max-width:40ch}.hero-bottom .button{width:100%}.hero-bottom .small{margin-top:12px}.hero-media{grid-template-columns:1fr;gap:12px}.hero-media img{max-height:none}.hero-media figcaption{max-width:none;padding:0}.launch-note{margin-top:20px}.event-grid,.services,.packages,.package-details,.process .steps,.faq,.inquiry-intro{grid-template-columns:1fr;gap:36px}.occasion-heading{font-size:44px}.services-list{grid-template-columns:1fr;gap:28px}.service{max-width:55ch}.packages{margin-top:36px;gap:48px}.package{padding-bottom:16px}.package .price{font-size:88px}.package-details{margin-top:32px;gap:0}.package ul{margin-bottom:24px}.package .button{width:100%}.package-note{font-size:14px}.process .steps{margin-top:32px;gap:28px}.faq{gap:16px}.faq summary{font-size:17px;min-height:48px}.inquiry{padding-top:0}.inquiry-intro{gap:16px}.inquiry-intro h2{grid-row:auto}.form-grid{grid-template-columns:1fr;gap:20px}.full{grid-column:auto}.inquiry form>.button{width:100%}.footer{grid-template-columns:1fr;gap:18px}.footer .brand{font-size:clamp(62px,14vw,100px)}.footer-links{justify-content:start;flex-wrap:wrap}.footer p{margin:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}
