:root{color-scheme:light;font-family:Quicksand,Helvetica Neue,Arial,sans-serif;line-height:1.6;font-weight:400;color:#1f5a3a;background-color:#fff;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:#fff}a{color:inherit;text-decoration:none}.app{min-height:100vh;background:#fff}.site-header{position:sticky;top:0;background:#1f5a3a;color:#fff;z-index:20;border-bottom:1px solid rgba(255,255,255,.2)}.site-header__inner{max-width:1100px;margin:0 auto;padding:16px 24px;display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:24px}.site-title{font-size:18px;letter-spacing:.3px;text-transform:uppercase}.site-nav{display:flex;gap:24px;font-size:14px;letter-spacing:.3px;text-transform:uppercase}.site-nav a{opacity:.85;transition:opacity .2s ease}.site-nav a.active{opacity:1;border-bottom:1px solid rgba(255,255,255,.7)}.menu-toggle{display:none;background:transparent;border:none;padding:6px;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:6px}.menu-toggle__line{display:block;width:26px;height:2px;background:#fff;border-radius:999px;margin:0}.site-header__language{display:flex;justify-content:flex-end}.site-nav__language{display:none}.language-toggle select{background:transparent;border:1px solid rgba(255,255,255,.7);color:#fff;padding:6px 10px;border-radius:999px;font-family:inherit;text-transform:uppercase;font-size:12px;letter-spacing:.3px;background-color:#1f5a3a}.page{max-width:960px;margin:0 auto;padding:72px 24px 96px}.page--wedding{padding-bottom:0}.hero{text-align:center;padding:72px 0 40px}.hero__mark{display:flex;justify-content:center;margin-bottom:16px}.hero__mark img{width:216px;height:auto;opacity:.75;filter:brightness(0) saturate(100%) invert(18%) sepia(18%) saturate(1400%) hue-rotate(98deg) brightness(78%) contrast(95%)}.hero h1{margin-bottom:8px;text-transform:uppercase;letter-spacing:.3px;font-weight:500}.hero__subtitle{letter-spacing:.3px;text-transform:uppercase;margin:8px 0 16px;font-weight:500}.hero__details{margin:0;text-transform:uppercase;letter-spacing:.3px;font-weight:500}.hero__scroll{margin-top:24px;letter-spacing:.3px;text-transform:uppercase;font-weight:500}.hero h1,.hero__subtitle,.hero__details,.hero__scroll{font-size:22px;line-height:1.8}.hero h1{font-size:28px}.section{margin-top:48px}.section h1{text-align:center;font-size:36px;margin-bottom:8px;text-transform:uppercase;letter-spacing:.6px}.section h2{font-size:22px;margin-bottom:12px;text-transform:uppercase;letter-spacing:.3px}.section--inverse{background:#1f5a3a;color:#fff;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:64px 0}.section__content{max-width:960px;margin:0 auto;padding:0 24px;text-align:center}.section__subtitle{text-align:center;margin-bottom:24px;font-style:italic}.section__intro{text-align:center;max-width:640px;margin:0 auto 24px;white-space:pre-line}.form-embed{margin:32px auto 0;max-width:820px;border:1px solid rgba(31,90,58,.2);border-radius:12px;overflow:hidden;background:#fff}.form-embed iframe{width:100%;height:980px;border:0}.page__mark{display:flex;justify-content:center;margin-bottom:24px}.page__mark img{width:120px;height:auto;opacity:.8;filter:brightness(0) saturate(100%) invert(18%) sepia(18%) saturate(1400%) hue-rotate(98deg) brightness(78%) contrast(95%)}.schedule{display:grid;gap:16px}.schedule__item{display:flex;justify-content:space-between;padding-bottom:8px;border-bottom:1px solid rgba(31,90,58,.2)}.details{display:grid;gap:40px;margin-top:32px}.details__mark{display:flex;justify-content:center;margin-bottom:24px}.details__mark img{width:140px;height:auto;filter:brightness(0) invert(1);opacity:.8}.details__block h3{margin-bottom:12px;text-transform:uppercase;letter-spacing:.3px;font-size:22px;font-weight:600}.details__block p{margin:6px 0;font-size:20px}.details__subtitle{font-weight:300;font-style:italic}.schedule__time{font-weight:600}.button{display:inline-block;margin-top:16px;padding:10px 18px;border-radius:999px;background:#1f5a3a;color:#fff;text-transform:uppercase;font-size:12px;letter-spacing:.3px}.list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.list a{color:#1f5a3a;text-decoration:underline;text-underline-offset:3px;font-weight:600}.list a:hover{opacity:.8}.hotel-grid{display:grid;gap:24px}.hotel-card{border:1px solid rgba(31,90,58,.2);border-radius:12px;background:#fff;padding:0;overflow:hidden}.hotel-summary{list-style:none;cursor:pointer;padding:16px 20px;display:grid;gap:6px;position:relative;transition:background .2s ease}.hotel-summary::-webkit-details-marker{display:none}.hotel-summary:after{content:"+";position:absolute;right:20px;top:18px;font-size:20px;line-height:1;color:#1f5a3ab3}.hotel-card[open] .hotel-summary:after{content:"–"}.hotel-summary:hover{background:#1f5a3a0f}.hotel-summary__title{text-transform:uppercase;letter-spacing:.3px;font-weight:600}.hotel-summary__meta{display:flex;flex-wrap:wrap;gap:10px;color:#1f5a3abf;font-size:14px}.hotel-summary__comment{font-style:italic}.hotel-card[open] .hotel-summary{border-bottom:1px solid rgba(31,90,58,.15)}.hotel-body{padding:16px 20px 20px}.hotel-meta{display:grid;gap:10px}.hotel-meta-row{display:flex;justify-content:space-between;gap:16px}.hotel-meta-label{font-size:12px;text-transform:uppercase;letter-spacing:.3px;color:#1f5a3ab3;min-width:120px}.hotel-meta-value{font-weight:500;text-align:right;word-break:break-word}.hotel-meta-value a{color:inherit;text-decoration:underline;text-underline-offset:3px}.hotel-comment{margin-top:12px;font-style:italic}.hotel-discount{margin-top:12px;border-top:1px solid rgba(31,90,58,.15);padding-top:12px}.hotel-discount summary{cursor:pointer;font-weight:600}.hotel-discount-body{margin-top:10px;display:grid;gap:8px}.hotel-discount-body p{margin:0}.stack{margin-bottom:32px}.stay-map{margin-top:36px;display:grid;gap:10px;justify-items:center}.stay-map__frame{width:100%;max-width:680px;border:1px solid rgba(31,90,58,.2);border-radius:12px;overflow:hidden;background:#fff}.stay-map__frame iframe{width:100%;height:320px;border:0}.stay-map__link{text-decoration:underline;text-underline-offset:3px;font-weight:600;color:#1f5a3a}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px}.contact-card{border:1px solid rgba(31,90,58,.2);padding:16px;border-radius:8px;text-align:center}.registry{display:grid;gap:24px}.registry__item{border:1px solid rgba(31,90,58,.2);padding:20px;border-radius:12px;text-align:center}.registry__image{width:min(520px,100%);max-height:220px;object-fit:cover;border-radius:12px;margin:12px auto 8px;display:block}.registry__description{margin:8px 0 16px;font-style:italic}.registry__options{display:grid;gap:10px;justify-items:center}.registry__option{padding:8px 12px;border:1px solid rgba(31,90,58,.2);border-radius:8px;text-align:center;width:min(520px,100%)}.registry__option-text{display:block}.registry__label{text-transform:uppercase;letter-spacing:.3px;font-size:12px}.registry__value{font-weight:600;word-break:break-word}.gate{min-height:100vh;display:grid;place-items:center;background:#fff;padding:24px}.gate__card{background:#fff;border-radius:12px;padding:32px;max-width:420px;width:100%;text-align:center;box-shadow:0 10px 30px #00000014}.gate__form{display:grid;gap:12px;margin-top:16px}.gate__form input{padding:10px 12px;border-radius:6px;border:1px solid rgba(31,90,58,.3);font-family:inherit}.gate__form button{padding:10px 12px;border-radius:999px;border:none;background:#1f5a3a;color:#fff;text-transform:uppercase;letter-spacing:.3px;font-size:12px;cursor:pointer}.gate__error{margin-top:12px;color:#1f5a3a}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@media (max-width: 720px){.site-header__inner{grid-template-columns:1fr;text-align:center;gap:12px}.site-nav{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:40px 24px;background:#1f5a3a}.site-nav--open{display:flex}.site-nav a{font-size:20px;letter-spacing:1px;border:none}.menu-toggle{display:inline-flex;justify-content:center;position:absolute;right:20px;top:18px;z-index:60}.language-toggle{justify-self:center}.language-toggle select{padding:6px 14px}.site-header__language{display:none}.site-nav__language{display:block;margin-top:12px}}
