@charset "UTF-8";:root{--wedding-primary-color: #1f3d2b;--wedding-secondary-color: #e8ebe4;--wedding-background-color: #faf8f3;--wedding-text-color: #2b2b26;--wedding-accent-color: #c5a572;--wedding-font-family: "Jost", "Segoe UI", sans-serif;--wedding-heading-font: "Cormorant Garamond", Georgia, serif;--wedding-script-font: "Great Vibes", "Segoe Script", cursive}html{scroll-behavior:smooth}body{margin:0;background:var(--wedding-background-color);color:var(--wedding-text-color);font-family:var(--wedding-font-family);font-weight:300;letter-spacing:.01rem}.reveal-hidden{opacity:0;transform:translateY(45px)}.reveal-visible{opacity:1;transform:translateY(0);transition:opacity .85s ease,transform .85s ease}.section-kicker{display:flex;align-items:center;justify-content:center;gap:.9rem;margin-bottom:.8rem;color:var(--wedding-accent-color);text-transform:uppercase;letter-spacing:.3rem;font-size:.8rem;font-weight:500}.section-kicker:before,.section-kicker:after{content:"\2726";font-size:.65rem;opacity:.8}.section-title{font-family:var(--wedding-heading-font);font-weight:500;font-size:clamp(2.2rem,4vw,3.6rem);color:var(--wedding-primary-color);text-align:center;margin-bottom:1rem}.section-subtitle{max-width:680px;margin:0 auto 3rem;text-align:center;line-height:1.8;opacity:.85}.wedding-section{padding:3.25rem 1.5rem}.decorative-line{width:130px;height:1px;background:linear-gradient(90deg,transparent,var(--wedding-accent-color),transparent);margin:0 auto 2.5rem}:root{--ac-canvas: #f2efe9;--ac-surface: #fdfbf8;--ac-surface-2: #ece7df;--ac-ink: #211b1e;--ac-ink-soft: #6c645f;--ac-ink-faint: #9a918a;--ac-line: #e4ded4;--ac-line-strong: #d5cdc0;--ac-accent: #7c2f3e;--ac-accent-strong: #651f2d;--ac-accent-soft: #f1e2e2;--ac-gold: #b0894e;--ac-ok: #3f6b53;--ac-ok-soft: #e3ece3;--ac-no: #a4553f;--ac-no-soft: #f2e4dd;--ac-font-ui: "Inter", "Segoe UI", sans-serif;--ac-font-display: "Playfair Display", Georgia, serif;--ac-font-mono: "IBM Plex Mono", "SFMono-Regular", ui-monospace, monospace;--ac-radius: 10px;--ac-radius-sm: 7px;--ac-shadow: 0 1px 2px rgba(33, 27, 30, .05), 0 12px 32px rgba(33, 27, 30, .06)}.ac-eyebrow{font-family:var(--ac-font-mono);text-transform:uppercase;letter-spacing:.18em;font-size:.68rem;font-weight:500;color:var(--ac-ink-faint)}.ac-masthead{margin:0;font-family:var(--ac-font-display);font-weight:500;font-size:clamp(1.9rem,3vw,2.7rem);line-height:1.05;letter-spacing:0;color:var(--ac-ink)}.ac-mono{font-family:var(--ac-font-mono)}.ac-card{background:var(--ac-surface);border:1px solid var(--ac-line);border-radius:var(--ac-radius);box-shadow:var(--ac-shadow)}.ac-stat{display:flex;flex-direction:column;gap:.35rem;padding:1.1rem 1.2rem;background:var(--ac-surface);border:1px solid var(--ac-line);border-radius:var(--ac-radius);box-shadow:var(--ac-shadow)}.ac-stat__value{font-family:var(--ac-font-display);font-weight:500;font-size:1.9rem;line-height:1;color:var(--ac-ink);font-variant-numeric:tabular-nums}.ac-stat__label{font-family:var(--ac-font-mono);text-transform:uppercase;letter-spacing:.14em;font-size:.62rem;color:var(--ac-ink-faint)}.ac-btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--ac-font-ui);font-size:.85rem;font-weight:500;letter-spacing:.02em;padding:.6rem 1.1rem;border:1px solid transparent;border-radius:var(--ac-radius-sm);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.ac-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--ac-accent-soft)}.ac-btn--primary{background:var(--ac-accent);color:#fdfbf8}.ac-btn--primary:hover{background:var(--ac-accent-strong)}.ac-btn--primary:disabled{opacity:.5;cursor:default}.ac-btn--ghost{background:transparent;border-color:var(--ac-line-strong);color:var(--ac-ink)}.ac-btn--ghost:hover{background:var(--ac-surface-2);border-color:var(--ac-accent)}.ac-btn--danger{background:transparent;border-color:var(--ac-no);color:var(--ac-no)}.ac-btn--danger:hover{background:var(--ac-no-soft)}.ac-btn--quiet{background:transparent;color:var(--ac-ink-soft);padding:.45rem .7rem}.ac-btn--quiet:hover{color:var(--ac-ink)}.ac-field{display:flex;flex-direction:column;gap:.4rem}.ac-field>span{font-size:.78rem;font-weight:500;letter-spacing:.01em;color:var(--ac-ink-soft)}.ac-input{font-family:var(--ac-font-ui);font-size:.92rem;color:var(--ac-ink);background:var(--ac-surface);padding:.6rem .7rem;border:1px solid var(--ac-line-strong);border-radius:var(--ac-radius-sm)}.ac-input::placeholder{color:var(--ac-ink-faint)}.ac-input:focus{outline:none;border-color:var(--ac-accent);box-shadow:0 0 0 3px var(--ac-accent-soft)}.ac-status{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--ac-font-mono);font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--ac-ink-soft);white-space:nowrap}.ac-status:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ac-ink-faint)}.ac-status--ok{color:var(--ac-ok)}.ac-status--ok:before{background:var(--ac-ok)}.ac-status--no{color:var(--ac-no)}.ac-status--no:before{background:var(--ac-no)}.ac-status--muted{color:var(--ac-ink-faint)}.ac-error{margin:0;color:var(--ac-no);font-size:.85rem}.intro-overlay.opening{pointer-events:none}.intro-overlay.opening.exit-dissolve{opacity:0;transition:opacity .6s ease 1s}.intro-overlay.opening.exit-lift{transform:translateY(-100%);opacity:0;transition:transform .75s cubic-bezier(.55,.06,.25,1) 1s,opacity .4s ease 1.35s}.intro-overlay.opening.exit-zoom{transform:scale(1.6);opacity:0;transition:transform .7s ease 1s,opacity .6s ease 1s}@media(prefers-reduced-motion:reduce){.intro-overlay.opening.exit-dissolve,.intro-overlay.opening.exit-lift,.intro-overlay.opening.exit-zoom{transition:opacity .3s ease;transform:none;opacity:0}}
