:root{--plum:#2a2530;--plum-2:#39323f;--blush:#f6eeea;--blush-2:#eaddd6;--rose:#b06a6a;--rose-2:#c58585;--gold:#bd9a5a;--ink:#2a2530;--ink-soft:#4e4655;--muted:#8a7f88;--line:rgba(42,37,48,.13);--line-soft:rgba(42,37,48,.07);--display:"Cormorant Garamond",Georgia,serif;--sans:"Inter",system-ui,sans-serif;--maxw:1160px;--pad:clamp(1.2rem,4vw,4rem);--fs-hero:clamp(3rem,1rem+8.5vw,7.6rem);--fs-h2:clamp(2.2rem,1.4rem+3vw,4rem);--mo:.6s;--mo-slow:1s;--ease:cubic-bezier(.16,1,.3,1)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--blush);color:var(--ink);font-family:var(--sans);font-size:1.04rem;line-height:1.66;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.02;letter-spacing:0;margin:0;text-wrap:balance}h1 em,h2 em,h3 em{font-style:italic;font-weight:400;color:var(--rose)}p{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}::selection{background:var(--rose);color:var(--blush)}.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad)}.muted{color:var(--muted)}.lead{font-size:clamp(1.05rem,.98rem+.5vw,1.28rem)}.eyebrow{font-family:var(--sans);font-size:.72rem;letter-spacing:.3em;text-transform:uppercase;color:var(--rose);font-weight:600;display:inline-flex;align-items:center;gap:.6rem}.eyebrow:before{content:"";width:26px;height:1.5px;background:var(--gold);display:inline-block}.sec-title{font-size:var(--fs-h2)}section{position:relative}.section-pad{padding-block:clamp(4.5rem,9vw,9rem)}.scroll-prog{position:fixed;top:0;left:0;height:2px;width:100%;z-index:9999;transform:scaleX(var(--p,0));transform-origin:0 50%;background:linear-gradient(90deg,var(--rose),var(--gold))}[data-rise]{opacity:0;transform:translateY(26px);transition:opacity var(--mo) var(--ease),transform var(--mo) var(--ease);transition-delay:var(--d,0ms)}[data-rise].in{opacity:1;transform:none}.clip-line{overflow:clip;overflow-clip-margin:.2em;display:block}.clip-line>span{display:block;transform:translateY(112%);transition:transform var(--mo-slow) var(--ease);transition-delay:var(--d,0ms)}.reveal-head.in .clip-line>span{transform:translateY(0)}@media(prefers-reduced-motion:reduce){[data-rise]{opacity:1!important;transform:none!important}.clip-line>span{transform:none!important}.clip-line{overflow:visible}}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.7rem;border-radius:2px;background:var(--plum);color:var(--blush);font-weight:500;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;transition:transform .25s var(--ease),background .25s;will-change:transform}.btn:hover{background:var(--rose);transform:translateY(-2px)}.btn:active{transform:translateY(0) scale(.98)}.btn--ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn--ghost:hover{border-color:var(--rose);color:var(--rose)}.nav{position:sticky;top:0;z-index:900;transition:background .3s,box-shadow .3s,border-color .3s;border-bottom:1px solid transparent}.nav--scrolled{background:#f6eeeaeb;backdrop-filter:blur(10px);border-color:var(--line-soft)}.nav__row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:1.1rem}.brand{font-family:var(--display);font-size:1.5rem;font-weight:500;display:inline-flex;align-items:baseline;gap:.5rem}.brand span{font-family:var(--sans);font-size:.62rem;letter-spacing:.26em;text-transform:uppercase;color:var(--muted);font-weight:600}.nav__links{display:flex;gap:1.9rem}.nav__links a{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);position:relative;transition:color .2s}.nav__links a:after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:1.5px;background:var(--gold);transition:width .3s var(--ease)}.nav__links a:hover:after{width:100%}.nav__cta{padding:.62rem 1.3rem}@media(max-width:820px){.nav__links{display:none}}.hero{position:relative;padding-block:clamp(4rem,12vw,10rem) clamp(3rem,7vw,6rem);overflow:hidden}.hero__wash{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(55% 50% at 84% 8%,rgba(176,106,106,.16),transparent 60%),radial-gradient(45% 45% at 6% 96%,rgba(189,154,90,.14),transparent 60%)}.hero__inner{position:relative;z-index:1;max-width:920px}.hero__title{font-size:var(--fs-hero);margin:1.5rem 0 0;letter-spacing:-.01em}.hero__lead{max-width:60ch;margin-top:1.9rem;font-size:clamp(1.1rem,1rem+.6vw,1.42rem);color:var(--ink-soft)}.hero__actions{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:2.3rem}.hero__awards{display:flex;flex-wrap:wrap;gap:1.4rem;margin-top:2rem;font-size:.82rem;letter-spacing:.06em;color:var(--muted)}.hero__awards span{display:inline-flex;align-items:center;gap:.5rem}.hero__awards span:before{content:"✦";color:var(--gold)}.cer__head{max-width:680px}.cer__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;margin-top:3rem}.cer{background:var(--blush-2);border-radius:6px;padding:clamp(1.8rem,3vw,2.4rem);transition:transform .3s var(--ease),background .3s}.cer:hover{transform:translateY(-5px);background:var(--plum);color:var(--blush)}.cer:hover .cer__d{color:#f6eeeab8}.cer:hover .cer__t{color:var(--blush)}.cer__no{font-family:var(--display);font-style:italic;font-size:1.8rem;color:var(--gold)}.cer__t{font-size:1.9rem;font-weight:500;margin-top:.3rem}.cer__d{margin-top:.6rem}@media(max-width:820px){.cer__grid{grid-template-columns:1fr}}.officiant{background:var(--blush-2)}.off__grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(2rem,5vw,5rem);align-items:start}.off__lead{margin-top:1.4rem;font-size:clamp(1.08rem,1rem+.5vw,1.32rem);color:var(--ink-soft)}.off__copy p+p{margin-top:1.1rem}.off__card{background:var(--plum);color:var(--blush);border-radius:6px;padding:clamp(1.6rem,3vw,2.4rem);position:sticky;top:6rem}.off__quote{font-family:var(--display);font-style:italic;font-size:1.35rem;line-height:1.4;color:var(--blush)}.facts{margin:1.8rem 0 0;padding-top:1.4rem;border-top:1px solid rgba(246,238,234,.18)}.facts>div{padding:.6rem 0;border-bottom:1px solid rgba(246,238,234,.1)}.facts>div:last-child{border-bottom:0}.facts dt{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:#f6eeea8c}.facts dd{margin:.2rem 0 0;font-weight:500;color:var(--blush)}@media(max-width:820px){.off__grid{grid-template-columns:1fr}.off__card{position:static}}.contact__inner{max-width:820px;text-align:center;margin-inline:auto}.contact__inner .eyebrow{display:inline-flex;margin-bottom:1.2rem}.contact__title{font-size:clamp(2.2rem,1.4rem+3vw,4rem)}.contact__lead{margin:1.4rem auto 0;max-width:52ch}.contact__actions{margin-top:2rem;display:flex;justify-content:center}.faq{background:var(--blush-2)}.faq__grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(2rem,5vw,4rem);align-items:start}.faq__head h2{font-size:clamp(2.2rem,1.4rem+2.4vw,3.4rem)}.faq-item{border-bottom:1px solid var(--line)}.faq-q{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;text-align:left;padding:1.4rem 0;font-family:var(--display);font-size:1.4rem;font-weight:500}.faq-q svg{width:22px;height:22px;flex:none;color:var(--rose);transition:transform .3s var(--ease)}.faq-item.open .faq-q svg{transform:rotate(45deg)}.faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s var(--ease)}.faq-item.open .faq-a{grid-template-rows:1fr}.faq-a>div{overflow:hidden}.faq-a p{padding:0 0 1.4rem;color:var(--ink-soft);max-width:62ch}@media(max-width:760px){.faq__grid{grid-template-columns:1fr}}.foot{background:var(--plum);color:var(--blush);padding-block:clamp(2.5rem,5vw,4rem) 2rem}.foot__row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(246,238,234,.14)}.foot__name{font-family:var(--display);font-size:1.8rem}.foot__brand .muted{color:#f6eeea9e;margin-top:.4rem}.foot__meta{display:flex;flex-direction:column;gap:.35rem;text-align:right}.foot__meta .muted{color:#f6eeea8c}.foot__meta a:hover{color:var(--gold)}.foot__fine{margin-top:1.4rem;font-size:.82rem;color:#f6eeea80}@media(max-width:620px){.foot__meta{text-align:left}}
