.celebrate-page{background:var(--nala-shell);color:var(--nala-ocean)}.celebrate-page main{overflow:clip;overflow-anchor:none}.celebrate-page :is(h1,h2,h3){margin:0;font-family:var(--font-display),serif;font-weight:400;letter-spacing:-.035em;text-wrap:balance}.celebrate-page h1{font-size:clamp(88px,11.5vw,174px);line-height:1}.celebrate-page h2{font-size:clamp(40px,4.4vw,66px);line-height:1.12}.celebrate-page main :is(p,li){margin:0;font-size:18px;line-height:1.65;text-wrap:pretty}.celebrate-page main :is(section,article){scroll-margin-top:100px}.cb-faq-item summary:focus-visible,.celebrate-page main a:focus-visible{outline:2px solid currentColor;outline-offset:5px}.cb-section{padding:clamp(56px,6.4vw,96px) var(--edge)}.cb-prose{display:flex;flex-direction:column;gap:24px;min-width:0}.cb-photo{position:relative;overflow:hidden;isolation:isolate;background:var(--nala-ocean)}.cb-photo :is(picture,img){display:block;width:100%;height:100%}.cb-photo img{object-fit:cover}.cb-hero{position:relative;isolation:isolate;min-height:calc(100svh - var(--nv-header-expanded));padding:clamp(60px,7vw,110px) var(--edge);display:flex;align-items:flex-end;color:var(--nala-salt);background:var(--nala-ocean)}.cb-hero-photo{position:absolute;inset:0;z-index:-2}.cb-hero-photo img{object-position:62% 56%}.cb-hero:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(7,39,46,.89),rgba(7,39,46,.64) 38%,rgba(7,39,46,.06) 76%),linear-gradient(0deg,rgba(7,39,46,.5),transparent 70%)}.cb-hero-content{max-width:760px}.celebrate-page .cb-eyebrow{font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:24px}.cb-hero-copy{margin-top:34px;max-width:54ch}.cb-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.celebrate-page .cb-actions .nv-text-action,.celebrate-page .cb-links a{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:54px;padding:14px 20px;border:1px solid color-mix(in srgb,currentColor 50%,transparent);color:inherit;font-size:14px;line-height:1.5;text-decoration:none;transition:background .24s ease-out,color .24s ease-out}.celebrate-page .cb-actions .nv-text-action:after,.celebrate-page .cb-actions .nv-text-action:before{display:none}.celebrate-page .cb-actions .nv-text-action:hover,.celebrate-page .cb-links a:hover{background:var(--nala-ocean);color:var(--nala-salt)}.celebrate-page .cb-actions .nv-text-action:active,.celebrate-page .cb-links a:active{background:var(--nala-veli-sand);color:var(--nala-ocean)}.cb-links{display:flex;flex-wrap:wrap;gap:12px}.cb-links svg{flex-shrink:0;transition:transform .24s ease-out}.cb-links a:hover svg{transform:translateX(4px)}.cb-wedding-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;align-items:start}.cb-wedding-intro h2{max-width:14ch}.cb-wedding-intro .cb-prose{max-width:62ch}.cb-setting{display:grid;grid-template-columns:1.2fr 1fr;background:var(--nala-veli-sand);min-width:0}.cb-setting-photo{min-height:560px}.cb-setting-photo img{position:absolute;inset:0;object-position:50% 55%}#island-wedding .cb-setting-photo img{object-position:50% 80%}.cb-setting-copy{padding:48px clamp(32px,5vw,76px);align-self:center;min-width:0}.cb-setting-number{display:block;font-size:11px;letter-spacing:.12em;margin-bottom:24px}.celebrate-page .cb-setting h3{font-size:clamp(34px,3.4vw,52px);line-height:1.13;margin-bottom:26px}.cb-settings-stage{position:relative}.cb-settings[data-mode=pin] .cb-settings-stage{height:var(--cb-stage-height);overflow:hidden}.cb-settings[data-mode=pin] .cb-settings-track{display:flex;height:100%}.cb-settings[data-mode=pin] .cb-setting{flex:0 0 100%;width:100%;height:100%}.cb-settings[data-mode=pin] .cb-setting-photo{min-height:0;height:100%}.cb-setting-progress{display:none}.cb-settings[data-mode=pin] .cb-setting-progress{display:block;position:absolute;height:2px;bottom:0;left:0;right:0;background:color-mix(in srgb,var(--nala-ocean) 15%,transparent)}.cb-setting-progress span{display:block;height:100%;background:var(--nala-ocean);transform-origin:left}.cb-sandbank{padding-top:clamp(56px,6.4vw,96px);background:var(--nala-ocean);color:var(--nala-salt)}.cb-sandbank-heading{padding:0 var(--edge) 40px}.cb-sandbank-heading h2{max-width:16ch}.cb-sandbank-window{height:clamp(480px,53vw,780px)}.cb-sandbank-window img{object-position:50% 48%}.cb-sandbank-copy{padding-block:42px 64px}.cb-sandbank-copy .cb-prose{max-width:850px;margin-left:auto}.cb-occasion-intro{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:8vw}.cb-occasion-heading h2{max-width:13ch;margin-bottom:30px}.cb-occasion-heading{max-width:55ch}.cb-occasion-photo{aspect-ratio:4/5;max-height:570px}.cb-occasion-details{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:8vw;margin-top:64px}.cb-occasion-dinner{aspect-ratio:4/5;max-height:590px}.cb-occasion-dinner img{object-position:50% 55%}.cb-faq,.cb-planning{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}.cb-planning{background:var(--nala-veli-sand)}.cb-planning h2{max-width:13ch}.cb-faq{background:var(--nala-salt)}.celebrate-page .cb-faq h2{font-size:clamp(34px,3.5vw,50px);max-width:16ch}.cb-faq-item{border-bottom:1px solid color-mix(in srgb,var(--nala-ocean) 25%,transparent)}.cb-faq-item:first-child{border-top:1px solid color-mix(in srgb,var(--nala-ocean) 25%,transparent)}.cb-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:72px;padding:22px 0;cursor:pointer;list-style:none}.cb-faq-item summary::-webkit-details-marker{display:none}.celebrate-page .cb-faq-item h3{font-family:var(--font-body),sans-serif;font-size:18px;line-height:1.5;letter-spacing:0;font-weight:500;text-wrap:pretty}.cb-faq-plus{flex:none;width:18px;height:18px;position:relative}.cb-faq-plus:after,.cb-faq-plus:before{content:"";position:absolute;top:8px;left:0;width:18px;height:1px;background:currentColor}.cb-faq-plus:after{transform:rotate(90deg);transition:transform .24s ease-out}.cb-faq-item[open] .cb-faq-plus:after{transform:rotate(0)}.cb-faq-answer{padding:0 25px 24px 0}.cb-faq-answer p+p{margin-top:16px}.cb-faq-item[open] .cb-faq-answer{animation:cb-answer-in .24s ease-out}@keyframes cb-answer-in{0%{transform:translateY(5px);opacity:.5}to{transform:none;opacity:1}}.celebrate-page .cb-invitation h2{max-width:16ch}.celebrate-page .cb-invitation .invitation-copy{margin-top:26px}.cb-invitation .cb-actions{justify-content:center}@media(min-width:700px) and (max-width:1099px){.cb-hero{min-height:700px}.cb-hero-content{max-width:620px}.cb-faq,.cb-occasion-details,.cb-occasion-intro,.cb-planning,.cb-wedding-intro{gap:5vw}.cb-setting{grid-template-columns:1fr 1fr}.cb-setting-copy{padding:32px}.cb-setting-photo{min-height:500px}.cb-setting-copy p{font-size:17px}.cb-occasion-details{margin-top:48px}}@media(max-width:699px){.celebrate-page h1{font-size:clamp(68px,19vw,108px)}.celebrate-page h2{font-size:clamp(36px,10vw,48px)}.celebrate-page main :is(p,li){font-size:17px}.cb-section{padding:48px var(--edge)}.cb-hero{display:block;min-height:0;padding:0}.cb-hero-photo{position:relative;z-index:0;height:68svh;min-height:390px;max-height:550px}.cb-hero-photo img{object-position:62% 54%}.cb-hero:after{inset:0 0 auto;height:68svh;min-height:390px;max-height:550px;z-index:1;background:linear-gradient(0deg,var(--nala-ocean),transparent 53%)}.cb-hero-content{position:relative;z-index:2;margin-top:-102px;padding:0 var(--edge) 44px}.celebrate-page .cb-eyebrow{font-size:10px;margin-bottom:18px}.cb-actions,.cb-hero-copy{margin-top:26px}.cb-actions{gap:12px}.cb-actions>a{flex:1 1 auto}.cb-faq,.cb-occasion-details,.cb-occasion-intro,.cb-planning,.cb-setting,.cb-wedding-intro{grid-template-columns:1fr;gap:26px}.cb-setting{gap:0}.cb-setting-photo{min-height:0;height:340px}.cb-setting-copy{padding:30px var(--edge) 42px}.cb-setting-number{margin-bottom:18px}.celebrate-page .cb-setting h3{font-size:36px;margin-bottom:22px}.cb-sandbank{padding-top:48px}.cb-sandbank-heading{padding-bottom:30px}.cb-sandbank-window{height:490px}.cb-sandbank-window img{object-position:52% 50%}.cb-sandbank-copy{padding-block:28px 46px}.cb-occasion-heading h2{margin-bottom:24px}.cb-occasion-photo{aspect-ratio:4/5}.cb-occasion-details{margin-top:32px}.cb-occasion-dinner{aspect-ratio:4/3}.cb-occasion-heading{max-width:none}.celebrate-page .cb-faq h2{font-size:36px}.celebrate-page .cb-faq-item h3{font-size:17px}.cb-faq-answer{padding-right:4px}}@media(prefers-reduced-motion:reduce){.celebrate-page *,.celebrate-page :after,.celebrate-page :before{animation:none!important}.cb-faq-plus:after,.cb-links svg{transition:none}}