@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Montserrat:wght@300;400;500;600;700&display=swap";:root{--ivory: #f4ead8;--cream-dark: #efe1c4;--dark: #120d09;--plum: #351727;--bronze: #9a6a2e;--text: #1f1712;--muted: #7b6d5f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#e8e1d8;color:var(--text);font-family:Montserrat,sans-serif}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid rgba(154,106,46,.75);outline-offset:3px}.site-shell{max-width:480px;margin:0 auto;background:var(--ivory);overflow:hidden;box-shadow:0 0 60px #0000002e}section{position:relative}.sticky-nav{position:sticky;top:0;z-index:10;max-width:480px;margin:0 auto;min-height:48px;background:#1c130af5;border-bottom:1px solid rgba(154,106,46,.36);display:grid;grid-template-columns:repeat(5,1fr);align-items:center;box-shadow:0 12px 34px #00000029;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.sticky-nav a{color:#f4ead8bd;text-align:center;text-decoration:none;text-transform:uppercase;font-size:8px;font-weight:600;letter-spacing:.08em;transition:color .18s ease,background .18s ease}.sticky-nav a:hover,.sticky-nav a:focus-visible{color:var(--ivory);background:#9a6a2e24}.site-sections.is-visible{animation:siteReveal .52s ease-out both}.site-sections.is-visible>section,.site-footer{animation:sectionFadeUp .65s ease-out both}.site-sections.is-visible>section:nth-child(2){animation-delay:80ms}.site-sections.is-visible>section:nth-child(3){animation-delay:.14s}.site-sections.is-visible>section:nth-child(4){animation-delay:.2s}.site-sections.is-visible>section:nth-child(5){animation-delay:.26s}.site-footer{background:#1c130a;color:var(--ivory);text-align:center;padding:54px 32px 64px}.site-footer p{margin:0 0 8px;color:#f4ead8ad;font-size:10px;letter-spacing:.28em;text-transform:uppercase}.site-footer strong{font-family:Cormorant Garamond,serif;font-size:34px;font-weight:500;letter-spacing:.04em}.eyebrow{color:var(--bronze);font-size:10px;letter-spacing:.34em;font-weight:600;text-transform:uppercase;margin:0 0 16px}.monogram{width:58px;height:58px;border:1px solid var(--bronze);color:var(--bronze);border-radius:50%;display:grid;place-items:center;margin:0 auto 42px;font-family:Cormorant Garamond,serif;font-size:14px;letter-spacing:.2em}@keyframes siteReveal{0%{opacity:0}to{opacity:1}}@keyframes sectionFadeUp{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}.site-sections.is-visible,.site-sections.is-visible>section,.site-footer{animation:none}.sticky-nav a{transition:none}}.hero{position:relative;height:100vh;height:100svh;max-width:480px;margin:0 auto;color:#f4ead8;background-image:url(/images/hero.png);background-size:auto 94%;background-position:center top;background-repeat:no-repeat;background-color:#1c130a;overflow:hidden;isolation:isolate;box-shadow:0 0 60px #0000002e}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:radial-gradient(ellipse at center,#0000 46%,#120a061f 76%,#0805045c),linear-gradient(to bottom,#1a0f0905,#4025141a 30%,#4a2b1794 50%,#1e110aeb 62%,#1c130a 78%,#1c130a);pointer-events:none}.hero-content{position:absolute;z-index:1;left:28px;right:28px;bottom:118px;text-align:center;animation:heroContentIn .7s ease-out both}.hero h1{font-family:Cormorant Garamond,serif;font-size:58px;line-height:.95;letter-spacing:.14em;font-weight:500;margin:0 0 22px;color:#f4ead8}.hero h1 span{display:flex;align-items:center;justify-content:center;gap:20px;font-size:28px;color:var(--bronze);letter-spacing:0;margin:8px 0;font-style:italic}.hero h1 span i{width:76px;height:1px;background:linear-gradient(to right,transparent,rgba(154,106,46,.9),transparent)}.hero h2{font-family:Cormorant Garamond,serif;font-size:22px;font-weight:700;letter-spacing:.2em;margin:0 0 12px;color:#f4ead8}.hero p{font-size:10px;letter-spacing:.24em;margin:7px 0;color:#f4ead8db}.hero-buttons{display:grid;grid-template-columns:1fr 1fr;gap:18px;width:min(100%,320px);margin-left:auto;margin-right:auto;margin-top:30px}.hero-buttons button{height:38px;border:1px solid var(--bronze);border-radius:999px;background:#00000014;color:#f4ead8;font-size:11px;font-weight:700;letter-spacing:.16em;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}.hero-buttons button:hover,.hero-buttons button:focus-visible{background:#9a6a2e38;border-color:#c08a4d;transform:translateY(-1px)}.bottom-nav{position:absolute;z-index:1;left:0;right:0;bottom:0;height:72px;background:#120d09f5;border-top:1px solid rgba(154,106,46,.35);display:grid;grid-template-columns:repeat(6,1fr);align-items:center}.bottom-nav a{color:#f4ead8b8;text-decoration:none;font-size:8px;text-transform:uppercase;letter-spacing:.08em;text-align:center;transition:color .18s ease,transform .18s ease}.bottom-nav a:hover,.bottom-nav a:focus-visible{color:#f4ead8;transform:translateY(-1px)}@keyframes heroContentIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.hero-content,.hero-buttons button,.bottom-nav a{animation:none;transition:none}}.quick-links{background:var(--ivory);min-height:620px;text-align:center}.quick-links>img{width:100%;height:170px;object-fit:cover;display:block}.quick-inner{padding:58px 32px 90px}.quick-links h2{font-family:Cormorant Garamond,serif;font-size:36px;line-height:1.08;font-weight:600;margin:0;letter-spacing:.04em}.small-line{width:120px;height:1px;background:#9a6a2e59;margin:28px auto}.countdown{display:flex;justify-content:center;gap:22px;margin-top:10px}.countdown strong{display:block;font-size:18px;letter-spacing:.1em}.countdown span{display:block;color:var(--bronze);font-size:7px;letter-spacing:.18em;text-transform:uppercase;margin-top:5px}.quick-buttons{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:36px}.quick-buttons a{height:38px;border:1px solid var(--bronze);border-radius:999px;background:transparent;color:var(--text);font-size:11px;letter-spacing:.16em;text-decoration:none;display:flex;align-items:center;justify-content:center;transition:background .18s ease,color .18s ease,transform .18s ease}.quick-buttons a:hover,.quick-buttons a:focus-visible{background:#9a6a2e1f;color:var(--bronze);transform:translateY(-1px)}.itinerary{background:var(--cream-dark);padding:118px 42px 120px}.itinerary>.eyebrow,.itinerary>h2{text-align:center}.itinerary h2{font-family:Cormorant Garamond,serif;font-size:46px;line-height:1.05;font-weight:600;margin:0 0 60px}.timeline{position:relative}.timeline:before{content:"";position:absolute;left:84px;top:7px;bottom:8px;width:1px;background:#9a6a2e59}.timeline-item{display:grid;grid-template-columns:70px 20px 1fr;gap:14px;margin-bottom:36px;align-items:start}.timeline-time{font-size:13px;color:var(--bronze);letter-spacing:.04em;text-align:right}.timeline-dot{width:12px;height:12px;background:var(--bronze);border-radius:50%;margin-top:3px;z-index:2}.timeline-item h3{font-family:Cormorant Garamond,serif;font-size:22px;line-height:1;margin:0 0 8px;font-weight:600}.timeline-item p,.timeline-address{display:block;white-space:pre-line;margin:0;font-size:12px;line-height:1.7;color:var(--muted);text-decoration:none;transition:color .18s ease}.timeline-address:hover,.timeline-address:focus-visible{color:var(--text)}.timeline-address span{display:block}.timeline-address em{display:inline-block;margin-top:6px;color:var(--bronze);font-size:8px;font-style:normal;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.venue{padding:80px 48px 100px;background:var(--ivory);text-align:center}.venue h2{font-family:Cormorant Garamond,serif;font-size:28px;line-height:1.15;font-weight:600;text-transform:uppercase;margin:0 0 38px}.map-img{width:100%;border-radius:16px;display:block;margin-bottom:20px}.map-link{display:block;border-radius:16px;transition:transform .18s ease,box-shadow .18s ease}.map-link:hover,.map-link:focus-visible{transform:translateY(-2px);box-shadow:0 16px 36px #1f171224}.address{display:block;text-align:left;font-size:12px;line-height:1.6;color:var(--muted);margin-bottom:48px;text-decoration:none;transition:color .18s ease}.address:hover,.address:focus-visible{color:var(--text)}.address strong{display:block;color:var(--text);font-weight:500}.address span{display:block}.address em{display:inline-block;margin-top:8px;color:var(--bronze);font-size:9px;font-style:normal;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.section-divider{display:flex;align-items:center;gap:16px;margin:30px 0 58px}.section-divider:before,.section-divider:after{content:"";height:1px;background:#9a6a2e59;flex:1}.section-divider span{width:4px;height:4px;background:var(--bronze);border-radius:50%}.rsvp{min-height:650px;text-align:center;color:var(--text);overflow:hidden}.rsvp>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.rsvp-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#f4ead8f5,#f4ead8b8,#f4ead833)}.rsvp-content{position:relative;padding:64px 38px 72px}.rsvp h2{font-family:Cormorant Garamond,serif;font-size:34px;line-height:1.05;margin:0}.rsvp-date{font-size:10px;letter-spacing:.28em;font-weight:700;margin:14px 0 34px}.rsvp-form{display:grid;gap:16px;text-align:left}.rsvp-form label{display:grid;gap:7px}.rsvp-form label span{color:var(--bronze);font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.rsvp-form input,.rsvp-form select,.rsvp-form textarea{width:100%;border:1px solid rgba(154,106,46,.42);border-radius:4px;background:#f4ead8d1;color:var(--text);font:inherit;font-size:14px;padding:12px 13px;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.rsvp-form textarea{resize:vertical;min-height:104px}.rsvp-form input:focus,.rsvp-form select:focus,.rsvp-form textarea:focus{border-color:var(--bronze);box-shadow:0 0 0 3px #9a6a2e24;background:#f4ead8f0;outline:0}.rsvp-form input:disabled,.rsvp-form select:disabled,.rsvp-form textarea:disabled{opacity:.7}.rsvp-form button{height:42px;border:1px solid var(--bronze);border-radius:999px;background:var(--plum);color:#fff;cursor:pointer;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;transition:background .18s ease,border-color .18s ease,transform .18s ease,opacity .18s ease}.rsvp-form button:hover,.rsvp-form button:focus-visible{background:#4b2138;border-color:#c08a4d;transform:translateY(-1px)}.rsvp-form button:disabled{cursor:not-allowed;opacity:.68;transform:none}.rsvp-status{margin:0;border-radius:4px;padding:12px 14px;font-size:12px;line-height:1.5;text-align:center}.rsvp-status.success{background:#32593c24;color:#294d32}.rsvp-status.error{background:#7a2b2b24;color:#753030}.rsvp-note{background:var(--plum);color:#fff;margin-top:34px;padding:26px 20px;border-radius:4px;font-family:Cormorant Garamond,serif;font-size:16px;line-height:1.45;letter-spacing:.16em}.faq{background:var(--cream-dark);min-height:650px;padding:72px 42px 110px;text-align:center}.faq h2{font-family:Cormorant Garamond,serif;font-size:36px;line-height:1.05;margin:0 0 40px}.faq-list{display:grid;gap:14px}.faq-item{background:#f8eddb;border:1px solid rgba(154,106,46,.18);border-radius:14px;overflow:hidden;text-align:left}.faq-item button{width:100%;border:0;background:transparent;padding:18px 20px;font-family:Cormorant Garamond,serif;font-size:16px;display:flex;justify-content:space-between;cursor:pointer;color:var(--text);transition:background .18s ease,color .18s ease}.faq-item button:hover,.faq-item button:focus-visible{background:#9a6a2e14;color:var(--bronze)}.faq-item button>span{color:var(--bronze)}.faq-answer{margin:0;padding:0 20px 18px}.faq-answer p,.faq-answer a{display:block;white-space:pre-line;margin:0 0 12px;font-size:12px;line-height:1.7;color:var(--muted);text-decoration:none}.faq-answer a{padding:10px 0;transition:color .18s ease}.faq-answer a:hover,.faq-answer a:focus-visible{color:var(--text)}.faq-answer a span{display:block}.faq-answer a em{display:inline-block;margin-top:6px;color:var(--bronze);font-size:8px;font-style:normal;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.faq-answer p:last-child,.faq-answer a:last-child{margin-bottom:0}
