@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=Jost:wght@300;400;500&display=swap";:root{--ink:#1f3a52;--ink-soft:#34506a;--cream:#f3efe6;--cream-2:#ece5d8;--paper:#fbf9f4;--line:#c9bfae;--pearl-1:#e8ddd0;--pearl-2:#cdd6dd;--pearl-3:#d8c9d4;--serif:"Cormorant Garamond", Georgia, serif;--sans:"Jost", system-ui, sans-serif;--maxw:1180px;--gut:clamp(20px, 5vw, 64px)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-weight:300}h1,h2{font-family:var(--serif);margin:0;font-weight:500}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.eyebrow{letter-spacing:.28em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:1.4rem;font-size:11px;display:block}.eyebrow--center{text-align:center}.rule{background:var(--line);width:46px;height:1px;margin:1.4rem 0 1.8rem;display:block}.btn{font-family:var(--sans);letter-spacing:.22em;text-transform:uppercase;cursor:pointer;border:none;padding:14px 30px;font-size:11px;transition:background .3s,color .3s,opacity .3s;display:inline-block}.btn--solid{background:var(--ink);color:var(--paper)}.btn--solid:hover{background:var(--ink-soft)}.link{letter-spacing:.22em;text-transform:uppercase;color:var(--ink);align-items:center;gap:10px;font-size:11px;display:inline-flex}.link .arrow{transition:transform .3s}.link:hover .arrow{transform:translate(6px)}.nav{z-index:50;background:color-mix(in srgb, var(--cream) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid color-mix(in srgb, var(--line) 50%, transparent);position:sticky;top:0}.nav__inner{max-width:var(--maxw);padding:18px var(--gut);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.nav__links{gap:34px;margin:0;padding:0;list-style:none;display:flex}.nav__links a{letter-spacing:.2em;text-transform:uppercase;padding-bottom:3px;font-size:11px;position:relative}.nav__links a:after{content:"";background:var(--ink);width:0;height:1px;transition:width .3s;position:absolute;bottom:0;left:0}.nav__links a:hover:after{width:100%}.nav__right{align-items:center;gap:22px;display:flex}.nav__book{letter-spacing:.2em;text-transform:uppercase;border-bottom:1px solid var(--ink);padding-bottom:2px;font-size:11px}.lang{position:relative}.lang__btn{border:1px solid var(--line);color:var(--ink);font-family:var(--sans);letter-spacing:.12em;cursor:pointer;background:0 0;align-items:center;gap:7px;padding:7px 11px;font-size:11px;transition:border-color .3s;display:flex}.lang__btn:hover{border-color:var(--ink)}.lang__menu{background:var(--paper);border:1px solid var(--line);z-index:60;min-width:140px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 30px #1f3a521f}.lang__item{text-align:left;cursor:pointer;width:100%;font-family:var(--sans);color:var(--ink-soft);background:0 0;border:none;padding:9px 12px;font-size:13px;transition:background .2s,color .2s}.lang__item:hover{background:var(--cream);color:var(--ink)}.lang__item.is-active{color:var(--ink);font-weight:500}.nav__burger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:4px;display:none}.nav__burger span{background:var(--ink);width:24px;height:1.5px;transition:transform .3s,opacity .3s}.nav__burger.is-open span:first-child{transform:translateY(6.5px)rotate(45deg)}.nav__burger.is-open span:nth-child(2){opacity:0}.nav__burger.is-open span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.logo{color:var(--ink);flex-direction:column;align-items:center;gap:14px;display:flex}.logo__mark{width:var(--logo-size);height:auto}.logo__words{text-align:center}.logo__name{font-family:var(--serif);letter-spacing:.34em;padding-left:.34em;font-size:1.9rem;font-weight:500;display:block}.logo__tag{letter-spacing:.34em;text-transform:uppercase;color:var(--ink-soft);margin-top:8px;font-size:10px;display:block}.hero{max-width:var(--maxw);padding:clamp(48px, 9vw, 110px) var(--gut) clamp(56px, 9vw, 96px);text-align:center;flex-direction:column;align-items:center;margin:0 auto;display:flex}.hero__subtitle{font-family:var(--serif);letter-spacing:.04em;color:var(--ink-soft);max-width:30ch;margin:1.6rem 0 2.2rem;font-size:clamp(1.1rem,2.2vw,1.5rem);font-style:italic}.hero__chevron{color:var(--ink-soft);margin-top:2.6rem;animation:2.6s ease-in-out infinite float}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(7px)}}.split{background:var(--paper);grid-template-columns:1fr 1fr;display:grid}.split--reverse .split__media{order:2}.split__media{min-height:460px}.split__text{flex-direction:column;justify-content:center;padding:clamp(40px,6vw,86px) clamp(32px,5vw,78px);display:flex}.split__text h2{max-width:16ch;font-size:clamp(1.8rem,3.4vw,2.7rem);line-height:1.16}.split__text p{color:var(--ink-soft);max-width:46ch;margin:0 0 1.3rem;font-size:.95rem;line-height:1.85}.split__text .link{margin-top:.6rem}.media--garden{background:radial-gradient(circle at 30% 60%,#b9c7a8 0 14%,#0000 15%),radial-gradient(circle at 48%,#d6dcc6 0 12%,#0000 13%),radial-gradient(circle at 62% 64%,#aec1cf 0 13%,#0000 14%),linear-gradient(160deg,#2f3a2c,#46553c 60%,#6f7d5e)}.media--nacre{background:repeating-radial-gradient(circle at 50% 0%, var(--pearl-2) 0 18px, var(--pearl-3) 18px 36px, var(--pearl-1) 36px 54px);filter:saturate(.85)brightness(1.05);background-size:90px 54px;position:relative}.media--nacre:after{content:"";mix-blend-mode:screen;background:linear-gradient(115deg,#fff6,#cdd6dd1a 30%,#d8c9d459 60%,#fff3);position:absolute;inset:0}.media--candle{background:radial-gradient(circle at 20% 40%,#f5e0aa8c 0 6%,#0000 7%),radial-gradient(circle at 78% 36%,#f5e0aa80 0 5%,#0000 6%),linear-gradient(150deg,#15110c,#2c241a 55%,#4a3c2a)}.universe{max-width:var(--maxw);padding:clamp(56px, 8vw, 104px) var(--gut);text-align:center;margin:0 auto}.universe__title{font-family:var(--serif);max-width:24ch;margin:.3rem auto 3rem;font-size:clamp(1.5rem,3vw,2.3rem);font-style:italic}.universe__grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.universe__grid .media{aspect-ratio:3/3.4}.media--shells{background:radial-gradient(at 40% 45%,#f0ece2 0 22%,#0000 24%),radial-gradient(at 65% 60%,#e2d8c6 0 20%,#0000 22%),linear-gradient(150deg,#cfc4ad,#ece3d2)}.media--dress{background:linear-gradient(135deg,#fdfbf6 0 40%,#e6ddcd 70%,#d4c9b6)}.media--ceremony{background:radial-gradient(circle at 50% 30%,#f7e4b273 0 8%,#0000 9%),linear-gradient(150deg,#243024,#3a4a35 60%,#5d6b4d)}.contact{max-width:var(--maxw);padding:clamp(48px, 7vw, 92px) var(--gut) clamp(64px, 8vw, 100px);grid-template-columns:1fr 1.1fr;align-items:start;gap:clamp(32px,6vw,90px);margin:0 auto;display:grid;position:relative}.contact__title{font-size:clamp(1.7rem,3vw,2.4rem)}.contact__intro p{color:var(--ink-soft);max-width:40ch;font-size:.95rem;line-height:1.85}.contact__form{flex-direction:column;gap:16px;display:flex}.field-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.contact input,.contact textarea{font-family:var(--sans);color:var(--ink);background:var(--paper);border:1px solid var(--line);resize:vertical;width:100%;padding:14px 16px;font-size:.9rem}.contact input::placeholder,.contact textarea::placeholder{color:var(--ink-soft);opacity:.7;letter-spacing:.05em}.contact input:focus,.contact textarea:focus{border-color:var(--ink);outline:none}.contact .btn--solid{align-self:flex-start}.contact__flower{right:var(--gut);width:88px;color:var(--ink-soft);display:none;position:absolute;bottom:40px}@media (width>=1080px){.contact__flower{display:block}}.footer{border-top:1px solid color-mix(in srgb, var(--line) 60%, transparent);background:var(--cream-2);padding:40px var(--gut);max-width:var(--maxw);grid-template-columns:2fr 1fr 1fr;align-items:center;gap:30px;margin:0 auto;display:grid}.footer__brand{align-items:center;gap:18px;display:flex}.footer__brandtext{flex-direction:column;gap:5px;display:flex}.footer__name{font-family:var(--serif);letter-spacing:.28em;font-size:1rem}.footer__role{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);font-size:10px}.footer__col{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);flex-direction:column;gap:9px;margin:0;padding:0;font-size:11px;list-style:none;display:flex}.footer__col a:hover{color:var(--ink)}.footer__col--right{text-align:right}@media (width<=860px){.nav__links{background:var(--paper);padding:10px var(--gut) 24px;border-bottom:1px solid var(--line);z-index:40;flex-direction:column;gap:0;transition:transform .35s;position:fixed;inset:64px 0 auto;transform:translateY(-120%)}.nav__links.is-open{transform:translateY(0)}.nav__links li{border-bottom:1px solid color-mix(in srgb, var(--line) 40%, transparent);padding:14px 0}.nav__book{display:none}.nav__burger{display:flex}.split,.split--reverse{grid-template-columns:1fr}.split--reverse .split__media{order:0}.split__media{min-height:300px}.universe__grid,.contact{grid-template-columns:1fr}.footer{text-align:center;grid-template-columns:1fr;gap:22px}.footer__brand{justify-content:center}.footer__col,.footer__col--right{text-align:center;align-items:center}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}html{scroll-behavior:auto}}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.nav__textbtn{cursor:pointer;color:var(--ink);font-family:var(--sans);letter-spacing:.2em;text-transform:uppercase;background:0 0;border:none;padding:0;font-size:11px}.nav__textbtn:hover{color:var(--ink-soft)}.nav__links a.is-current:after{width:100%}main{min-height:60vh}.pagebody{max-width:var(--maxw);padding:clamp(40px, 7vw, 90px) var(--gut) clamp(56px, 8vw, 96px);margin:0 auto}.pagebody--narrow{max-width:720px}.pagehead{text-align:center;margin-bottom:clamp(32px,5vw,56px)}.pagehead--left{text-align:left}.pagehead__title{margin:.2rem 0 1rem;font-size:clamp(2rem,4.4vw,3rem);line-height:1.1}.pagehead__intro{color:var(--ink-soft);max-width:52ch;margin:0 auto;font-size:.98rem;line-height:1.8}.pagehead--left .pagehead__intro{margin:0}.filters{flex-wrap:wrap;justify-content:center;gap:6px;margin-bottom:38px;display:flex}.filters__btn{cursor:pointer;font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);background:0 0;border:1px solid #0000;padding:9px 18px;font-size:11px;transition:color .25s,border-color .25s}.filters__btn:hover{color:var(--ink)}.filters__btn.is-active{color:var(--ink);border-color:var(--line)}.gallery{grid-template-columns:repeat(3,1fr);grid-auto-flow:dense;gap:16px;display:grid}.gallery__item{cursor:pointer;aspect-ratio:4/5;background:0 0;border:none;padding:0;position:relative;overflow:hidden}.gallery__item--tall{aspect-ratio:4/6;grid-row:span 2}.gallery__item--wide{aspect-ratio:auto;grid-column:span 2}.photo{width:100%;height:100%;display:block}.gallery__item .photo{transition:transform .6s}.gallery__item:hover .photo{transform:scale(1.05)}.gallery__cap{text-align:left;letter-spacing:.2em;text-transform:uppercase;color:var(--paper);opacity:0;background:linear-gradient(#0000,#1f3a528c);padding:14px 16px;font-size:10px;transition:opacity .3s;position:absolute;bottom:0;left:0;right:0}.gallery__item:hover .gallery__cap,.gallery__item:focus-visible .gallery__cap{opacity:1}.ph--garden{background:radial-gradient(circle at 35% 55%,#bcccae 0 16%,#0000 17%),radial-gradient(circle at 60% 62%,#aec1cf 0 14%,#0000 15%),linear-gradient(160deg,#2f3a2c,#56654a 70%,#7e8c66)}.ph--garden2{background:radial-gradient(circle at 50% 40%,#d6dcc6 0 20%,#0000 22%),linear-gradient(150deg,#3a4733,#6d7c57)}.ph--nacre{background:repeating-radial-gradient(circle at 50% 0, var(--pearl-2) 0 16px, var(--pearl-3) 16px 32px, var(--pearl-1) 32px 48px);filter:saturate(.85)brightness(1.05);background-size:80px 48px}.ph--candle{background:radial-gradient(circle at 30% 40%,#f5e0aa99 0 6%,#0000 7%),linear-gradient(150deg,#15110c,#34291c 60%,#4f4030)}.ph--candle2{background:radial-gradient(circle at 65% 35%,#f7e4b280 0 7%,#0000 8%),linear-gradient(140deg,#1a140d,#3d3122)}.ph--ceremony{background:radial-gradient(circle at 50% 30%,#f7e4b266 0 8%,#0000 9%),linear-gradient(150deg,#243024,#41513a 60%,#64734f)}.ph--ceremony2{background:linear-gradient(150deg,#2b3a44,#51666f 65%,#8094a0)}.ph--shells{background:radial-gradient(at 42% 45%,#f0ece2 0 24%,#0000 26%),radial-gradient(at 64% 60%,#e2d8c6 0 20%,#0000 22%),linear-gradient(150deg,#cfc4ad,#ece3d2)}.ph--dress{background:linear-gradient(135deg,#fdfbf6 0 38%,#e6ddcd 70%,#d2c7b4)}.lightbox{z-index:200;background:#141c26eb;justify-content:center;align-items:center;padding:4vw;display:flex;position:fixed;inset:0}.lightbox__figure{flex-direction:column;gap:16px;max-width:70vw;max-height:84vh;margin:0;display:flex}.lightbox__photo{width:min(70vw,560px);height:min(74vh,700px)}.lightbox__figure figcaption{color:var(--cream);text-align:center;letter-spacing:.2em;text-transform:uppercase;font-size:11px}.lightbox__close{color:var(--cream);cursor:pointer;opacity:.8;background:0 0;border:none;font-size:34px;line-height:1;position:absolute;top:22px;right:26px}.lightbox__close:hover{opacity:1}.lightbox__nav{color:var(--cream);cursor:pointer;background:0 0;border:1px solid #f3efe666;border-radius:50%;flex-shrink:0;width:48px;height:48px;font-size:26px;transition:background .25s}.lightbox__nav:hover{background:#f3efe624}.lightbox__nav--prev{margin-right:clamp(8px,3vw,36px)}.lightbox__nav--next{margin-left:clamp(8px,3vw,36px)}.booking{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(28px,5vw,64px);display:grid}.booking__panel{background:var(--paper);padding:clamp(24px,3vw,38px)}.booking__steptitle{font-family:var(--serif);align-items:center;gap:12px;margin:0 0 22px;font-size:1.4rem;font-weight:500;display:flex}.booking__steptitle--mt{margin-top:34px}.stepnum{border:1px solid var(--line);width:26px;height:26px;font-family:var(--sans);color:var(--ink-soft);border-radius:50%;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.booking__hint{color:var(--ink-soft);font-size:.9rem;font-style:italic}.booking__hint--note{letter-spacing:.04em;margin-top:18px;font-style:normal}.cal__head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.cal__month{font-family:var(--serif);text-transform:capitalize;font-size:1.15rem}.cal__arrow{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;width:32px;height:32px;font-size:18px;line-height:1;transition:border-color .2s}.cal__arrow:hover{border-color:var(--ink)}.cal__grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal__grid--dow{margin-bottom:6px}.cal__dow{text-align:center;letter-spacing:.1em;color:var(--ink-soft);font-size:10px}.cal__day{aspect-ratio:1;cursor:pointer;font-family:var(--sans);color:var(--ink);background:0 0;border:1px solid #0000;font-size:.9rem;transition:background .2s,border-color .2s,color .2s}.cal__day:hover:not(.is-disabled){border-color:var(--line)}.cal__day.is-selected{background:var(--ink);color:var(--paper)}.cal__day.is-disabled{color:color-mix(in srgb, var(--ink-soft) 35%, transparent);cursor:default}.slots{flex-direction:column;gap:16px;display:flex}.slots__label{letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px;font-size:10px;display:block}.slots__row{flex-wrap:wrap;gap:8px;display:flex}.slot{border:1px solid var(--line);cursor:pointer;font-family:var(--sans);color:var(--ink);background:0 0;padding:9px 16px;font-size:.85rem;transition:background .2s,color .2s,border-color .2s}.slot:hover{border-color:var(--ink)}.slot.is-selected{background:var(--ink);color:var(--paper);border-color:var(--ink)}.booking__form{flex-direction:column;gap:12px;display:flex}.booking__form input,.booking__form textarea{font-family:var(--sans);color:var(--ink);background:var(--cream);border:1px solid var(--line);resize:vertical;padding:12px 14px;font-size:.9rem}.booking__form input:focus,.booking__form textarea:focus{border-color:var(--ink);outline:none}.booking__confirm{width:100%;margin-top:24px}.booking__confirm:disabled{opacity:.4;cursor:not-allowed}.success{text-align:center;padding:clamp(20px,5vw,50px) 0}.success__check{color:var(--ink);margin-bottom:24px}.success__title{margin-bottom:1rem;font-size:clamp(1.8rem,3.6vw,2.5rem)}.success__body{color:var(--ink-soft);max-width:40ch;margin:0 auto 2rem;line-height:1.8}.success__summary{border:1px solid var(--line);flex-direction:column;gap:6px;margin-bottom:2rem;padding:20px 40px;display:inline-flex}.success__summary span:first-child{font-family:var(--serif);text-transform:capitalize;font-size:1.2rem}.success__summary span:last-child{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);font-size:11px}.success__actions{flex-direction:column;align-items:center;gap:16px;display:flex}.authcard{background:var(--paper);text-align:center;padding:clamp(30px,5vw,54px)}.authcard__title{margin-bottom:.8rem;font-size:clamp(1.7rem,3.4vw,2.3rem)}.authcard__intro{color:var(--ink-soft);max-width:38ch;margin:0 auto 2rem;font-size:.95rem;line-height:1.7}.authcard__form{text-align:left;flex-direction:column;gap:13px;display:flex}.authcard__form input{font-family:var(--sans);color:var(--ink);background:var(--cream);border:1px solid var(--line);padding:14px 16px;font-size:.92rem}.authcard__form input:focus{border-color:var(--ink);outline:none}.authcard__form .btn{margin-top:8px}.authcard__toggle{cursor:pointer;font-family:var(--sans);color:var(--ink-soft);text-underline-offset:3px;background:0 0;border:none;margin-top:22px;font-size:.85rem;text-decoration:underline}.authcard__toggle:hover{color:var(--ink)}.formerror{color:#9a3b3b;margin:2px 0 0;font-size:.85rem}.account__h{font-family:var(--serif);margin:0 0 22px;font-size:1.4rem;font-weight:500}.account__empty{background:var(--paper);text-align:center;flex-direction:column;align-items:center;gap:22px;padding:48px;display:flex}.account__empty p{color:var(--ink-soft);margin:0}.account__list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.bookingcard{background:var(--paper);border-left:2px solid var(--ink);justify-content:space-between;align-items:center;gap:20px;padding:22px 26px;display:flex}.bookingcard__date{flex-direction:column;gap:5px;display:flex}.bookingcard__day{font-family:var(--serif);text-transform:capitalize;font-size:1.15rem}.bookingcard__time{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-size:11px}.bookingcard__with{color:var(--ink-soft);font-size:.85rem}.bookingcard__cancel{border:1px solid var(--line);cursor:pointer;font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);background:0 0;flex-shrink:0;padding:9px 16px;font-size:10px;transition:border-color .2s,color .2s}.bookingcard__cancel:hover{border-color:var(--ink);color:var(--ink)}@media (width<=860px){.gallery{grid-template-columns:repeat(2,1fr)}.gallery__item--wide{grid-column:span 2}.booking{grid-template-columns:1fr}.lightbox__photo{aspect-ratio:4/5;width:84vw;height:auto}.lightbox__nav--prev{margin-right:10px}.lightbox__nav--next{margin-left:10px}}@media (width<=520px){.gallery{grid-template-columns:1fr}.gallery__item--wide,.gallery__item--tall{aspect-ratio:4/5;grid-area:auto}.bookingcard{flex-direction:column;align-items:flex-start}}.formok{color:#3a6b4f;margin:2px 0 0;font-size:.88rem}.slot.is-taken{opacity:.35;cursor:not-allowed;text-decoration:line-through}
