@import"https://fonts.googleapis.com/css2?family=Bodoni+Moda:opsz,wght@6..96,400;6..96,500;6..96,600&display=swap";@font-face{font-family:AstonScript;src:local("Aston Script"),local("Astonscript"),url(/assets/fonts/AstonScript.ttf) format("truetype"),url(/assets/fonts/Astonscript.ttf) format("truetype"),url(/assets/fonts/AstonScript.woff2) format("woff2"),url(/assets/fonts/Astonscript.woff2) format("woff2"),url(/assets/fonts/AstonScript.woff) format("woff"),url(/assets/fonts/Astonscript.woff) format("woff");font-display:swap}@font-face{font-family:Amarante;src:local("Amarante"),url(/assets/fonts/Amarante.ttf) format("truetype"),url(/assets/fonts/Amarante.woff2) format("woff2"),url(/assets/fonts/Amarante.woff) format("woff");font-display:swap}:root{--sage-100: #deead7;--sage-300: #9cb396;--sage-500: #5f7659;--sage-700: #384835;--sage-900: #1c261a;--gold-300: #e2c882;--gold-400: #d4a94a;--gold-500: #b5882d;--cream: #f8f5ee;--cream-alt: #f1ede4;--ink: #1a1a18;--ink-light: #3d3d38;--shadow-soft: 0 8px 28px rgba(0, 0, 0, .18);--shadow-strong: 0 14px 40px rgba(0, 0, 0, .32);--radius: .5rem;--max-width: 1040px;--transition: .22s ease}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Bodoni Moda,Times New Roman,serif;color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}.topbar{position:fixed;top:0;left:0;right:0;z-index:50;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:.85rem 1.25rem;background:transparent;transition:background var(--transition),box-shadow var(--transition)}.topbar.is-solid{background:#1c261ad9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px #ffffff0f}.menu-btn{width:2.5rem;height:2.5rem;display:inline-flex;flex-direction:column;justify-content:center;gap:5px;padding:.6rem;border:0;border-radius:50%;background:transparent;color:var(--cream);cursor:pointer;transition:background var(--transition)}.menu-btn:hover{background:#ffffff1a}.menu-btn span{width:100%;height:1.5px;background:currentColor;transition:transform .18s ease,opacity .18s ease}.menu-btn.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-btn.is-open span:nth-child(2){opacity:0}.menu-btn.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.brandmark{justify-self:center;font-family:Amarante,serif;font-size:1rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cream)}.topbar-rsvp{padding:.55rem 1rem;border-radius:999px;border:1px solid var(--gold-400);background:transparent;color:var(--cream);font-size:.72rem;font-family:Amarante,serif;letter-spacing:.12em;text-transform:uppercase;transition:background var(--transition),color var(--transition)}.topbar-rsvp:hover{background:var(--gold-400);color:var(--ink)}.menu-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;display:grid;align-items:start;padding:5rem 1rem 1rem;background:#0a0e0ab3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;pointer-events:none;transition:opacity .2s ease}.menu-panel.is-open{opacity:1;pointer-events:auto}.menu-panel-inner{width:min(100%,20rem);margin-left:auto;padding:1.25rem;border-radius:var(--radius);background:#1c261aeb;box-shadow:var(--shadow-strong);display:grid;gap:.4rem}.menu-eyebrow,.eyebrow{margin:0;font-family:Amarante,serif;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-300)}.eyebrow.dark{color:var(--sage-500)}.eyebrow.light{color:var(--gold-300)}.menu-link{text-align:left;padding:.65rem 0;border:0;background:transparent;color:var(--cream);font-family:Amarante,serif;font-size:1.15rem;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:color var(--transition)}.menu-link:hover,.menu-link.is-active{color:var(--gold-300)}.menu-rsvp-link{margin-top:.5rem;display:inline-flex;justify-content:center;padding:.75rem 1rem;border-radius:999px;border:1px solid var(--gold-400);color:var(--cream);font-family:Amarante,serif;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;transition:background var(--transition),color var(--transition)}.menu-rsvp-link:hover{background:var(--gold-400);color:var(--ink)}.hero{position:sticky;top:0;z-index:1;height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#00000026,#0000000d 40%,#0006)}.hero-copy{position:relative;z-index:2;text-align:center;color:#fff;opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.hero-copy.is-ready{opacity:1;transform:translateY(0)}.hero-copy .eyebrow{color:#ffffffd9;text-shadow:0 2px 12px rgba(0,0,0,.4);gap:1.3rem}.hero-copy h1{margin:.7rem 0 0;display:grid;gap:1rem;text-shadow:0 3px 20px rgba(0,0,0,.5)}.hero-name{font-family:AstonScript,Astonscript,Segoe Script,cursive;font-size:clamp(2.8rem,12vw,6rem);font-weight:400;line-height:1.55;color:#fff}.hero-amp{font-family:Amarante,serif;font-size:.85rem;letter-spacing:.22em;text-transform:uppercase;color:#ffffffbf}.scroll-cue{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);z-index:2;border:0;background:transparent;color:#fff9;cursor:pointer;animation:bobCue 2.4s ease-in-out infinite;transition:color var(--transition)}.scroll-cue:hover{color:#fff}@keyframes bobCue{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(8px)}}.countdown{position:relative;z-index:2;background:var(--sage-900);color:var(--cream);overflow:hidden}.countdown-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center}.countdown-bg-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0a0e0aa6}.countdown-inner{position:relative;z-index:1;max-width:var(--max-width);margin:0 auto;padding:5rem 1.5rem}.countdown-content h2{margin:.4rem 0 .2rem;font-family:Amarante,serif;font-size:clamp(1.6rem,5vw,2.4rem);text-transform:uppercase;letter-spacing:.03em;line-height:1.1}.countdown-location{margin:0 0 1.5rem;font-size:1rem;opacity:.75}.countdown-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:2rem}.countdown-cell{text-align:center;padding:1rem .5rem;border-radius:var(--radius);background:#ffffff0f;border:1px solid rgba(255,255,255,.08)}.countdown-value{display:block;font-size:clamp(1.4rem,6vw,2.6rem);font-weight:600;line-height:1;color:var(--gold-300)}.countdown-label{display:block;margin-top:.3rem;font-family:Amarante,serif;font-size:.65rem;letter-spacing:.14em;text-transform:uppercase;opacity:.7}.shuttle-callout{display:flex;gap:1rem;align-items:flex-start;padding:1.25rem;border-radius:var(--radius);border:1px solid var(--gold-400);background:#d4a94a14;margin-bottom:2rem}.shuttle-callout strong{display:block;font-family:Amarante,serif;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-300);margin-bottom:.3rem}.shuttle-callout p{margin:0;font-size:.95rem;line-height:1.5;opacity:.85}.shuttle-icon{font-size:1.5rem;flex-shrink:0}.countdown-actions{display:grid;gap:.6rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.25rem;border:0;border-radius:999px;font-family:Amarante,serif;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:transform var(--transition),box-shadow var(--transition),background var(--transition)}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-soft)}.btn-primary{background:var(--gold-400);color:var(--ink)}.btn-secondary{background:#ffffff1f;color:var(--cream);border:1px solid rgba(255,255,255,.2)}.btn-secondary:hover{background:#ffffff2e}.btn-gold{background:linear-gradient(135deg,var(--gold-400),var(--gold-500));color:var(--ink);box-shadow:var(--shadow-soft)}.btn-lg{padding:1rem 2rem;font-size:.88rem}.section{position:relative;z-index:2;background:var(--cream);padding:4.5rem 1.5rem}.section-alt{background:var(--cream-alt)}.container{max-width:var(--max-width);margin:0 auto}.section-title{margin:.3rem 0 .6rem;font-family:Amarante,serif;font-size:clamp(1.5rem,5vw,2.2rem);text-transform:uppercase;letter-spacing:.02em;line-height:1.1;color:var(--ink)}.section-subtitle{margin:0 0 1.5rem;font-size:1.05rem;line-height:1.55;color:var(--ink-light);max-width:36rem}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem;margin:2rem 0}.gallery-item{border-radius:var(--radius);overflow:hidden;aspect-ratio:4 / 5;background:var(--cream-alt)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.gallery-item:hover img{transform:scale(1.04)}.gallery-cta{text-align:center;margin-top:2rem}.explore-grid{display:grid;gap:1.5rem;margin-top:2rem}.map-shell{height:360px;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-soft)}.map-shell iframe{width:100%;height:100%}.spot-list{display:grid;gap:.5rem}.spot-item{display:grid;gap:.2rem;padding:.75rem 0 .75rem 1rem;border-left:2px solid var(--gold-400);transition:border-color var(--transition),background var(--transition)}.spot-item:hover{border-left-color:var(--sage-500);background:#5f76590a}.spot-item h3{margin:0;font-family:Amarante,serif;font-size:1rem;text-transform:uppercase;letter-spacing:.03em;color:var(--ink)}.spot-item p{margin:0;font-size:.92rem;line-height:1.45;color:var(--ink-light)}.faq-list{display:grid;gap:0;margin-top:1.5rem}.faq-item{border-bottom:1px solid rgba(0,0,0,.1)}.faq-item.is-highlighted{background:#d4a94a0f;border-left:3px solid var(--gold-400);padding-left:.5rem}.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem .25rem;border:0;background:transparent;color:var(--ink);text-align:left;font-size:1.05rem;cursor:pointer;transition:color var(--transition)}.faq-question:hover{color:var(--sage-500)}.faq-icon{font-size:1.2rem;color:var(--gold-400);transition:transform .2s ease;flex-shrink:0}.faq-item.is-open .faq-icon{transform:rotate(45deg)}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease}.faq-answer>p{overflow:hidden;margin:0;padding:0 .25rem;font-size:.98rem;line-height:1.6;color:var(--ink-light)}.faq-item.is-open .faq-answer{grid-template-rows:1fr}.faq-item.is-open .faq-answer>p{padding-bottom:1rem}.registry-grid{display:grid;gap:1.25rem;margin-top:2rem}.registry-card{padding:1.5rem;border-radius:var(--radius);border:1px solid rgba(0,0,0,.08);background:#fff}.card-label{display:block;margin:0 0 .4rem;font-family:Amarante,serif;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--sage-500)}.registry-card h3{margin:0 0 .4rem;font-family:Amarante,serif;font-size:1.15rem;text-transform:uppercase;letter-spacing:.03em;color:var(--ink)}.registry-card p{margin:0;font-size:.95rem;line-height:1.5;color:var(--ink-light)}.inline-link{display:inline-flex;align-items:center;margin-top:.75rem;font-family:Amarante,serif;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-500);transition:color var(--transition)}.inline-link:hover{color:var(--sage-500)}.rsvp{position:relative;z-index:2;min-height:75vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.rsvp-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center}.rsvp-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080}.rsvp-copy{position:relative;z-index:2;text-align:center;color:#fff;padding:3rem 1.5rem;max-width:36rem;text-shadow:0 2px 16px rgba(0,0,0,.4)}.rsvp-copy .eyebrow{color:var(--gold-300)}.rsvp-copy h2{margin:.4rem 0 .6rem;font-family:Amarante,serif;font-size:clamp(1.7rem,6vw,2.8rem);text-transform:uppercase;line-height:1.05}.rsvp-copy p{margin:0 0 1.5rem;font-size:1.05rem;line-height:1.5;opacity:.9}.floating-rsvp{position:fixed;right:1rem;bottom:1rem;z-index:40;display:inline-flex;align-items:center;padding:.65rem 1.1rem;border-radius:999px;background:var(--gold-400);color:var(--ink);font-family:Amarante,serif;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;box-shadow:var(--shadow-strong);transition:transform var(--transition),box-shadow var(--transition)}.floating-rsvp:hover{transform:translateY(-2px);box-shadow:0 18px 48px #00000059}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (min-width: 768px){.gallery-grid{grid-template-columns:repeat(3,1fr);gap:.8rem}.explore-grid{grid-template-columns:1.1fr .9fr;align-items:start}.map-shell{height:440px;position:sticky;top:5rem}.registry-grid,.countdown-actions{grid-template-columns:repeat(2,1fr)}.countdown-inner{padding:6rem 2rem}.section{padding:5.5rem 2rem}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal,.hero-copy{opacity:1;transform:none}}
