:root{--ink:#11110f;--paper:#f5f2eb;--white:#fff;--line:rgba(17,17,15,.18);--serif:"Italiana",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55}a{color:inherit}.skip{position:fixed;left:1rem;top:-4rem;background:#fff;padding:.75rem 1rem;z-index:100}.skip:focus{top:1rem}.site-header{height:86px;padding:0 clamp(1.4rem,4vw,4.5rem);display:flex;align-items:center;justify-content:space-between;background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:20}.wordmark{font-size:1rem;font-weight:600;letter-spacing:.23em;text-decoration:none}.wordmark span{font-weight:400}.site-header nav{display:flex;align-items:center;gap:2rem}.site-header nav a{font-size:.84rem;text-decoration:none}.site-header nav a:not(.nav-cta):hover{text-decoration:underline;text-underline-offset:5px}.nav-cta{border:1px solid var(--ink);padding:.75rem 1.1rem;transition:.2s}.nav-cta:hover{background:var(--ink);color:var(--white)}.menu-button{display:none;background:transparent;border:0;font:inherit}.hero{min-height:calc(100vh - 86px);position:relative;display:flex;align-items:center;overflow:hidden;background:#111;color:#fff}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.56) 37%,rgba(0,0,0,.08) 72%)}.hero-copy{position:relative;z-index:2;width:min(720px,90%);padding:6rem clamp(1.5rem,7vw,8rem)}.eyebrow,.section-index{text-transform:uppercase;letter-spacing:.17em;font-size:.72rem;font-weight:600;margin:0 0 2.2rem}.hero h1,.statement h2,.details h2,.section-head h2,.about h2,.inquire h2{font:400 clamp(3.6rem,7.8vw,8rem)/.9 var(--serif);letter-spacing:-.03em;margin:0}.hero h1 em,.details h2 em,.section-head h2 em,.about h2 em,.inquire h2 em{font-weight:400}.hero-text{font-size:1.08rem;max-width:540px;margin:2rem 0 2.25rem;color:rgba(255,255,255,.82)}.hero-actions{display:flex;align-items:center;gap:2rem}.button{display:inline-block;padding:1rem 1.4rem;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:600;text-decoration:none;border:1px solid var(--ink);transition:.2s}.button.light{background:#fff;color:#111;border-color:#fff}.button:hover{transform:translateY(-2px)}.text-link{display:inline-flex;gap:.7rem;align-items:center;text-transform:uppercase;letter-spacing:.11em;font-size:.72rem;font-weight:600;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:.25rem}.light-link{color:#fff}.hero-note{position:absolute;z-index:2;right:3rem;bottom:2rem;margin:0;font-size:.68rem;text-transform:uppercase;letter-spacing:.15em;writing-mode:vertical-rl}.statement{padding:clamp(5rem,10vw,10rem) clamp(1.5rem,7vw,8rem);display:grid;grid-template-columns:.55fr 1.4fr 1fr;gap:4rem;align-items:start}.statement h2{font-size:clamp(3.5rem,6vw,6.5rem)}.statement-copy{padding-top:.4rem;max-width:440px}.statement-copy p{margin:0 0 1.5rem;font-size:1.05rem}.process{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.process article{padding:4rem clamp(1.5rem,4vw,4rem);min-height:330px;border-right:1px solid var(--line)}.process article:last-child{border:0}.process span{font-size:.72rem;letter-spacing:.1em}.process h3{font:400 2.1rem/1 var(--serif);margin:5rem 0 1.25rem}.process p{max-width:320px;color:#4b4a44}.details{background:var(--ink);color:#fff;padding:clamp(5rem,9vw,9rem) clamp(1.5rem,7vw,8rem);display:grid;grid-template-columns:1.2fr 1fr;gap:8vw}.details h2{font-size:clamp(3.4rem,5.7vw,6rem)}.eyebrow.dark{color:rgba(255,255,255,.62)}.details-grid{border-top:1px solid rgba(255,255,255,.25)}.details-grid div{display:flex;justify-content:space-between;gap:2rem;padding:1.6rem 0;border-bottom:1px solid rgba(255,255,255,.25)}.details-grid strong{font-weight:500}.details-grid span{color:rgba(255,255,255,.62);text-align:right;max-width:250px}.packages{padding:clamp(5rem,10vw,10rem) clamp(1.5rem,7vw,8rem)}.section-head{display:grid;grid-template-columns:.55fr 2.4fr;align-items:start;margin-bottom:5rem}.section-head h2{font-size:clamp(3.6rem,6.4vw,7rem)}.package-list{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--ink)}.package{padding:clamp(2rem,4vw,4rem)}.package+.package{border-left:1px solid var(--ink)}.package-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.16em}.package-title{display:flex;align-items:end;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--ink);padding:2rem 0 1.25rem}.package-title h3{font:400 clamp(2.8rem,4.3vw,4.5rem)/1 var(--serif);margin:0}.package-title p{font:400 1.5rem var(--serif);margin:0}.package-title p span{font:400 .65rem var(--sans);text-transform:uppercase;letter-spacing:.12em}.package-description{max-width:530px;margin:2rem 0}.package ul{list-style:none;padding:0;margin:0 0 2.5rem}.package li{padding:.7rem 0;border-bottom:1px solid var(--line);font-size:.9rem}.package li:before{content:"—";margin-right:.8rem}.package-footnote{font-size:.8rem;max-width:720px;margin:1.5rem 0 0;color:#5c5a54}.about{padding:clamp(5rem,10vw,10rem) clamp(1.5rem,7vw,8rem);border-top:1px solid var(--line);display:grid;grid-template-columns:.55fr 2.4fr}.about-copy{max-width:850px}.about h2{font-size:clamp(3.6rem,6.4vw,7rem);margin-bottom:3rem}.about-copy p{font-size:1.13rem;max-width:670px;margin:0 0 1.4rem}.inquire{background:var(--ink);color:#fff;text-align:center;padding:clamp(6rem,12vw,12rem) 1.5rem}.inquire h2{font-size:clamp(4rem,8vw,8rem)}.inquire>p:not(.eyebrow){max-width:600px;margin:2rem auto 2.5rem;color:rgba(255,255,255,.72)}.contact-row{display:flex;justify-content:center;gap:2rem;margin-top:4rem}.contact-row a{font-size:.78rem;letter-spacing:.06em;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.4)}footer{padding:2rem clamp(1.5rem,4vw,4rem);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}footer p{margin:0}footer p:last-child{text-align:right}.footer-mark{font-size:.75rem}
@media(max-width:850px){.site-header{height:72px}.menu-button{display:block}.site-header nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);padding:1.5rem;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--ink)}.site-header nav.open{display:flex}.nav-cta{text-align:center}.hero{min-height:calc(100svh - 72px)}.hero-copy{padding:5rem 1.5rem 7rem}.hero h1{font-size:clamp(3.2rem,15vw,5rem)}.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.35)),linear-gradient(0deg,rgba(0,0,0,.65),transparent 55%)}.hero-image{object-position:62% center}.hero-note{display:none}.hero-actions{align-items:flex-start;flex-direction:column;gap:1.4rem}.statement,.details,.about,.section-head{grid-template-columns:1fr;gap:2rem}.statement{padding-top:5rem}.process{grid-template-columns:1fr}.process article{min-height:auto;border-right:0;border-bottom:1px solid var(--line)}.process h3{margin-top:3rem}.details-grid div{flex-direction:column;gap:.4rem}.details-grid span{text-align:left}.package-list{grid-template-columns:1fr}.package+.package{border-left:0;border-top:1px solid var(--ink)}.package-title{align-items:start;flex-direction:column}.contact-row{flex-direction:column;gap:1rem}footer{grid-template-columns:1fr;gap:1rem;text-align:center}footer p:last-child{text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

.fun-moment{display:grid;grid-template-columns:1.35fr .65fr;background:var(--paper);border-bottom:1px solid var(--line)}
.fun-moment img{width:100%;height:100%;min-height:620px;object-fit:cover;display:block}
.fun-caption{padding:clamp(3rem,6vw,6rem);display:flex;flex-direction:column;justify-content:center}
.fun-caption h2{font:400 clamp(3rem,5vw,5.4rem)/.94 var(--serif);letter-spacing:-.03em;margin:0}
.fun-caption p:last-child{max-width:430px;margin:2rem 0 0;color:#4b4a44}
.inquire{text-align:left;padding:clamp(6rem,10vw,10rem) clamp(1.5rem,7vw,8rem);display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:start}
.inquire h2{font-size:clamp(4rem,7vw,7rem)}
.inquire-intro>p:not(.eyebrow){max-width:520px;margin:2rem 0;color:rgba(255,255,255,.72)}
.inquire .contact-row{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.8rem;margin-top:3rem}
.inquiry-form{border-top:1px solid rgba(255,255,255,.35);padding-top:2rem}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem 1.5rem}
.inquiry-form label{display:flex;flex-direction:column;gap:.45rem;text-align:left;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}
.inquiry-form label span{font-size:.62rem;color:rgba(255,255,255,.48)}
.inquiry-form input,.inquiry-form select,.inquiry-form textarea{width:100%;border:0;border-bottom:1px solid rgba(255,255,255,.42);border-radius:0;background:transparent;color:#fff;padding:.75rem 0;font:400 1rem var(--sans);outline:none}
.inquiry-form select option{color:#111}
.inquiry-form input:focus,.inquiry-form select:focus,.inquiry-form textarea:focus{border-color:#fff}
.wide-label{margin-top:1.3rem}
.inquiry-form textarea{resize:vertical}
.inquiry-form .check-label{margin-top:1.25rem;display:grid;grid-template-columns:auto 1fr;align-items:start;text-transform:none;letter-spacing:0;font-size:.82rem;color:rgba(255,255,255,.76)}
.check-label input{width:1rem;height:1rem;margin:.15rem 0 0;accent-color:#fff}
.submit-button{margin-top:2rem;cursor:pointer}
.form-note{font-size:.68rem;color:rgba(255,255,255,.52);margin:.9rem 0 0}
.form-status{padding:1rem;margin:1.5rem 0 0;background:#fff;color:#111;font-size:.88rem}
.honey{position:absolute!important;left:-9999px!important}

@media(max-width:850px){
  .fun-moment,.inquire{grid-template-columns:1fr}
  .fun-moment img{min-height:430px}
  .inquire{gap:3rem}
  .form-grid{grid-template-columns:1fr}
}

.package li:before{content:"•"}

.about{grid-template-columns:.34fr .9fr 1.35fr;gap:clamp(2rem,5vw,6rem);align-items:start}
.about-photo{margin:0}
.about-photo img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center 58%}
.about-photo figcaption{margin-top:.8rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.15em;color:#5c5a54}
.about h2{font-size:clamp(3.6rem,5.2vw,6.2rem)}

@media(max-width:850px){
  .about{grid-template-columns:1fr}
  .about-photo{max-width:520px}
  .about h2{font-size:clamp(3.4rem,13vw,5rem)}
}
