:root{--burgundy: #4a0f17;--burgundy-deep: #360a10;--burgundy-soft: #5e1620;--gold: #c9a24a;--gold-soft: #e0c57f;--cream: #f4ecd8;--cream-dim: #d8cbb0;--ink: #1a0608;--serif: "Cormorant Garamond", Georgia, "Times New Roman", serif;--script: "Great Vibes", cursive}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--serif);background:var(--burgundy-deep);color:var(--cream);font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased}.nav{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.75rem;background:#360a10d1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(201,162,74,.25)}.nav-brand{font-family:var(--script);font-size:1.6rem;color:var(--gold-soft);text-decoration:none;letter-spacing:.5px}.nav-links{display:flex;gap:1.6rem}.nav-links a{color:var(--cream-dim);text-decoration:none;text-transform:uppercase;letter-spacing:2px;font-size:.8rem;white-space:nowrap;transition:color .2s ease}.nav-links a:hover{color:var(--gold-soft)}.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:38px;height:38px;padding:0;background:none;border:none;cursor:pointer;z-index:50}.nav-toggle span{display:block;height:2px;width:24px;margin:0 auto;background:var(--gold-soft);transition:transform .25s ease,opacity .25s ease}.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media (max-width: 820px){.nav-toggle{display:flex}.nav-links{position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;background:#360a10f7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(201,162,74,.25);overflow:hidden;max-height:0;transition:max-height .3s ease}.nav-links.open{max-height:70vh}.nav-links a{padding:1rem 1.75rem;font-size:.9rem;border-top:1px solid rgba(201,162,74,.12)}}.hero{position:relative;min-height:100vh;display:flex;align-items:flex-start;justify-content:center;text-align:center;background-size:cover;background-position:center 22%;padding:16vh 1.5rem 4rem}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,#360a1059,#360a10bf),linear-gradient(to bottom,#360a108c,#360a108c)}.hero-content{position:relative;z-index:1;max-width:720px}.hero-eyebrow{text-transform:uppercase;letter-spacing:5px;font-size:.85rem;color:var(--cream-dim)}.hero-names{font-family:var(--script);font-size:clamp(3.5rem,12vw,7rem);font-weight:400;color:var(--gold-soft);line-height:1.05;margin:.4rem 0;text-shadow:0 4px 24px rgba(0,0,0,.45)}.hero-tagline{font-style:italic;font-size:clamp(1.2rem,3vw,1.7rem);color:var(--cream)}.hero-divider,.rule{display:flex;align-items:center;justify-content:center;gap:1rem;color:var(--gold);margin:1.4rem 0}.hero-divider span,.rule span{display:block;height:1px;width:70px;background:linear-gradient(to right,transparent,var(--gold))}.hero-divider span:last-child,.rule span:last-child{background:linear-gradient(to left,transparent,var(--gold))}.hero-date{text-transform:uppercase;letter-spacing:6px;font-size:clamp(1rem,2.4vw,1.4rem);color:var(--gold-soft);margin-top:1rem}.btn{display:inline-block;padding:.85rem 2.6rem;border:1px solid var(--gold);color:var(--gold-soft);text-decoration:none;text-transform:uppercase;letter-spacing:3px;font-size:.85rem;background:transparent;transition:all .25s ease}.btn:hover{background:var(--gold);color:var(--burgundy-deep)}.section{max-width:1040px;margin:0 auto;padding:5.5rem 1.5rem}.section-head{text-align:center;margin-bottom:3rem}.eyebrow{text-transform:uppercase;letter-spacing:5px;font-size:.8rem;color:var(--gold)}.sprig{display:block;width:86px;height:auto;margin:0 auto .9rem;color:#6f8f5f;opacity:.9}.section-title{font-family:var(--script);font-weight:400;font-size:clamp(2.6rem,7vw,4rem);color:var(--gold-soft);line-height:1.1;margin-top:.3rem}.countdown-section{text-align:center;padding:3.5rem 1.5rem;background:var(--burgundy);border-top:1px solid rgba(201,162,74,.25);border-bottom:1px solid rgba(201,162,74,.25)}.countdown{display:flex;justify-content:center;gap:clamp(1rem,5vw,3rem);margin-top:1.2rem}.countdown-unit{display:flex;flex-direction:column;align-items:center}.countdown-value{font-size:clamp(2.4rem,8vw,3.6rem);color:var(--gold-soft);line-height:1;font-variant-numeric:tabular-nums}.countdown-label{text-transform:uppercase;letter-spacing:3px;font-size:.75rem;color:var(--cream-dim);margin-top:.4rem}.countdown-done{font-family:var(--script);font-size:2.4rem;color:var(--gold-soft);margin-top:.6rem}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.card{border:1px solid rgba(201,162,74,.35);background:linear-gradient(160deg,#5e16208c,#360a108c);padding:2.2rem 1.6rem;text-align:center}.card-title{font-family:var(--script);font-weight:400;font-size:2.2rem;color:var(--gold-soft)}.card-time{text-transform:uppercase;letter-spacing:3px;font-size:.85rem;color:var(--gold);margin:.6rem 0 1rem}.card-venue{font-size:1.15rem;color:var(--cream)}.card-address{color:var(--cream-dim);font-size:1rem;margin-top:.3rem}.card-note{margin-top:.9rem;font-style:italic;color:var(--gold-soft);font-size:.95rem}.card-link{display:inline-block;margin-top:1.1rem;color:var(--gold);text-decoration:none;letter-spacing:1px;border-bottom:1px solid transparent;transition:border-color .2s ease}.card-link:hover{border-color:var(--gold)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}@media (max-width: 760px){.gallery{grid-template-columns:repeat(2,1fr)}}@media (max-width: 440px){.gallery{grid-template-columns:1fr}}.gallery-item{border:none;padding:0;cursor:pointer;overflow:hidden;background:var(--burgundy);aspect-ratio:4 / 3}.gallery-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease,filter .3s ease;filter:saturate(.95)}.gallery-item:hover img{transform:scale(1.06);filter:saturate(1.1)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#140406eb;display:flex;align-items:center;justify-content:center;padding:2rem;cursor:zoom-out}.lightbox img{max-width:95vw;max-height:90vh;object-fit:contain;border:1px solid rgba(201,162,74,.4)}.lightbox-close{position:absolute;top:1.2rem;right:1.6rem;background:none;border:none;color:var(--cream);font-size:2.5rem;cursor:pointer;line-height:1}.dress-headline{text-align:center;font-family:var(--script);font-size:2.4rem;color:var(--gold-soft);margin-bottom:2.2rem}.swatches{display:flex;flex-wrap:wrap;justify-content:center;gap:2.4rem}.swatch{display:flex;flex-direction:column;align-items:center;gap:.7rem;width:130px}.swatch-dot{width:64px;height:64px;border-radius:50%;border:2px solid rgba(201,162,74,.6);box-shadow:0 6px 18px #00000059}.swatch-name{text-transform:uppercase;letter-spacing:1.5px;font-size:.78rem;color:var(--cream-dim);text-align:center}.dress-note{max-width:560px;margin:2.6rem auto 0;text-align:center;font-style:italic;font-weight:600;font-size:1.1rem;color:var(--gold-soft)}#honeymoon{text-align:center}.honeymoon-copy{max-width:620px;margin:0 auto 2rem;font-size:1.2rem;font-style:italic;color:var(--cream);line-height:1.7}.honeymoon-cta{display:flex;flex-direction:column;align-items:center;gap:1rem}.honeymoon-handle{font-size:.95rem;letter-spacing:1px;color:var(--cream-dim)}.honeymoon-handle a{color:var(--gold-soft);text-decoration:none;border-bottom:1px solid rgba(201,162,74,.5)}.honeymoon-handle a:hover{color:var(--gold)}.rsvp-copy{text-align:center;font-size:1.3rem;font-style:italic;color:var(--cream);margin-bottom:2rem}#rsvp{text-align:center}.footer{text-align:center;padding:4rem 1.5rem;background:var(--burgundy);border-top:1px solid rgba(201,162,74,.25)}.footer-script{font-family:var(--script);font-size:2.8rem;color:var(--gold-soft)}.footer-sub{text-transform:uppercase;letter-spacing:3px;font-size:.8rem;color:var(--cream-dim);margin-top:.6rem}@media (max-width: 640px){.nav-links{gap:1rem}.nav-links a{font-size:.68rem;letter-spacing:1px}.nav-brand{font-size:1.3rem}}
