*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{color:#2e3d59;background-color:#fff;font-family:Jost,sans-serif;font-weight:300;line-height:1.7}img{max-width:100%;display:block}.nav{z-index:100;-webkit-backdrop-filter:blur(12px);background:#ffffffe0;border-bottom:1px solid #ffc4bf54;justify-content:space-between;align-items:center;padding:1.1rem 3rem;display:flex;position:fixed;top:0;left:0;right:0}.nav-monogram{color:#2e3d59;letter-spacing:.12em;font-family:Cormorant Garamond,serif;font-size:1.5rem;font-weight:600;text-decoration:none}.nav-links{gap:2.2rem;list-style:none;display:flex}.nav-links a{letter-spacing:.15em;text-transform:uppercase;color:#2e3d59;padding-bottom:2px;font-family:Jost,sans-serif;font-size:.78rem;font-weight:400;text-decoration:none;transition:color .25s;position:relative}.nav-links a:after{content:"";background:#ff9f8c;width:0;height:1px;transition:width .3s;position:absolute;bottom:0;left:0}.nav-links a:hover{color:#ff9f8c}.nav-links a:hover:after{width:100%}.hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:6rem 2rem 5rem;display:flex;position:relative;overflow:hidden}.hero-bg{background-image:url(/images/wedding-hero-bg.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.hero-overlay{background:linear-gradient(#ffffff59 0%,#ffe5e51f 50%,#fff9 100%);position:absolute;inset:0}.hero-content{z-index:1;max-width:680px;position:relative}.hero-eyebrow{letter-spacing:.32em;text-transform:uppercase;color:#ff9f8c;margin-bottom:1.4rem;font-family:Jost,sans-serif;font-size:.72rem;font-weight:400}.hero-names{color:#2e3d59;font-family:Cormorant Garamond,serif;font-size:clamp(3.6rem,9vw,7rem);font-weight:300;line-height:1.05}.hero-ampersand{color:#ff9f8c;margin:.1em 0;font-size:clamp(2.8rem,7vw,5.5rem);font-style:italic;line-height:.9;display:block}.hero-divider{justify-content:center;align-items:center;gap:.8rem;width:220px;margin:1.6rem auto;display:flex}.hero-divider:before,.hero-divider:after{content:"";background:#ffc4bf;flex:1;height:1px}.hero-divider-dot{background:#ff9f8c;border-radius:50%;flex-shrink:0;width:6px;height:6px}.hero-date{color:#2e3d59;letter-spacing:.05em;margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:1.35rem;font-style:italic}.hero-location{letter-spacing:.22em;text-transform:uppercase;color:#2e3d59;opacity:.65;font-family:Jost,sans-serif;font-size:.8rem}.hero-scroll{z-index:1;flex-direction:column;align-items:center;gap:.5rem;display:flex;position:absolute;bottom:2.5rem;left:50%;transform:translate(-50%)}.hero-scroll span{letter-spacing:.2em;text-transform:uppercase;color:#2e3d59;opacity:.45;font-size:.65rem}.scroll-line{background:linear-gradient(#ffc4bf,#0000);width:1px;height:48px;animation:2s ease-in-out infinite scrollPulse}@keyframes scrollPulse{0%,to{opacity:.3}50%{opacity:1}}#hero button{letter-spacing:.18em;text-transform:uppercase;color:#fff;cursor:pointer;background:#ff9f8c;border:none;border-radius:999px;margin-top:2rem;padding:.75rem 1.8rem;font-family:Jost,sans-serif;font-size:.82rem;transition:background-color .3s}#hero button:hover{background-color:#ff7a5c}.section{padding:7rem 2rem}.section-inner{max-width:1100px;margin:0 auto}.section-label{letter-spacing:.3em;text-transform:uppercase;color:#ff9f8c;text-align:center;margin-bottom:.8rem;font-family:Jost,sans-serif;font-size:.7rem}.section-title{color:#2e3d59;text-align:center;margin-bottom:1.2rem;font-family:Cormorant Garamond,serif;font-size:clamp(2.2rem,5vw,3.4rem);font-weight:300}.section-subtitle{color:#2e3d59;opacity:.6;text-align:center;margin-bottom:4rem;font-family:Cormorant Garamond,serif;font-size:1.1rem;font-style:italic}.couple-section{background:#ffe5e5}.couple-grid{grid-template-columns:1fr auto 1fr;align-items:start;gap:2rem;display:grid}.couple-card{text-align:center;flex-direction:column;align-items:center;display:flex}.couple-img-frame{border:6px solid;border-radius:50%/40% 40% 60% 60%;width:280px;height:320px;margin-bottom:2rem;transition:transform .4s;overflow:hidden;box-shadow:0 16px 48px -8px #2e3d592e}.couple-img-frame:hover{transform:translateY(-6px)}.couple-card--him .couple-img-frame{background:#c9edeb;border-color:#c9edeb}.couple-card--her .couple-img-frame{background:#ffc4bf;border-color:#ffc4bf}.couple-img-frame img{object-fit:cover;object-position:top center;width:100%;height:100%}.couple-name{color:#2e3d59;margin-bottom:.8rem;font-family:Cormorant Garamond,serif;font-size:2rem;font-weight:400}.couple-bio-list{flex-direction:column;gap:.45rem;list-style:none;display:flex}.couple-bio-list li{letter-spacing:.04em;color:#2e3d59;opacity:.75;justify-content:center;align-items:center;gap:.5rem;font-size:.88rem;display:flex}.couple-bio-list li:before{content:"✦";color:#ff9f8c;opacity:.8;flex-shrink:0;font-size:.55rem}.couple-middle{flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding-top:6rem;display:flex}.couple-ampersand{color:#ff9f8c;font-family:Cormorant Garamond,serif;font-size:5rem;font-style:italic;line-height:1}.couple-since{letter-spacing:.2em;text-transform:uppercase;color:#2e3d59;opacity:.5;font-family:Jost,sans-serif;font-size:.68rem}.wave-divider{margin-top:-1px;line-height:0;overflow:hidden}.wave-divider svg{width:100%;height:60px;display:block}.details-section{background:#fff}.details-grid{grid-template-columns:1fr 1fr;gap:2rem;display:grid}.detail-card{text-align:center;background:#fff;border:1px solid #ffc4bf66;border-radius:1.5rem;padding:2.5rem;transition:transform .3s,box-shadow .3s;box-shadow:0 4px 24px #2e3d590f}.detail-card:hover{transform:translateY(-4px);box-shadow:0 12px 36px #2e3d591f}.detail-card--mint{background:linear-gradient(135deg,#c9edeb21,#c9edeb57);border-color:#c9edeb}.detail-card--blush{background:linear-gradient(135deg,#ffc4bf21,#ffe5e5);border-color:#ffc4bf}.detail-icon{margin-bottom:1rem;font-size:2rem;display:block}.detail-card-label{letter-spacing:.28em;text-transform:uppercase;color:#ff9f8c;margin-bottom:.7rem;font-family:Jost,sans-serif;font-size:.65rem}.detail-card-value{color:#2e3d59;margin-bottom:.4rem;font-family:Cormorant Garamond,serif;font-size:1.6rem;font-weight:400;line-height:1.3}.detail-card-sub{color:#2e3d59;opacity:.55;letter-spacing:.04em;font-size:.82rem}.countdown-card{color:#fff;text-align:center;background:linear-gradient(135deg,#2e3d59,#3d5278);border:none;border-radius:1.5rem;grid-column:span 2;padding:3rem 2rem;box-shadow:0 12px 48px -8px #2e3d5966}.countdown-card:hover{transform:none;box-shadow:0 12px 48px -8px #2e3d5966}.countdown-title{color:#c9edeb;margin-bottom:2rem;font-family:Cormorant Garamond,serif;font-size:1.2rem;font-style:italic}.countdown-boxes{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:1.5rem;display:flex}.countdown-box{flex-direction:column;align-items:center;gap:.4rem;display:flex}.countdown-num{color:#fff;background:#ffffff14;border:1px solid #c9edeb40;border-radius:.75rem;justify-content:center;align-items:center;width:90px;height:90px;font-family:Cormorant Garamond,serif;font-size:3.8rem;font-weight:300;line-height:1;display:flex}.countdown-unit{letter-spacing:.2em;text-transform:uppercase;color:#c9edeb;opacity:.7;font-family:Jost,sans-serif;font-size:.62rem}.countdown-sep{color:#ff9f8c;align-self:flex-start;margin-top:.8rem;font-family:Cormorant Garamond,serif;font-size:2.5rem;line-height:1}.countdown-note{color:#c9edeb;opacity:.45;letter-spacing:.12em;margin-top:1.5rem;font-size:.7rem}.footer{color:#fff;text-align:center;background:#2e3d59;padding:4rem 2rem}.footer-monogram{color:#ffc4bf;margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:3.5rem;font-style:italic;font-weight:300;line-height:1}.footer-date{letter-spacing:.3em;text-transform:uppercase;color:#c9edeb;opacity:.6;margin-bottom:1.5rem;font-family:Jost,sans-serif;font-size:.72rem}.footer-hashtag{color:#ffe5e5;margin-bottom:2rem;font-family:Cormorant Garamond,serif;font-size:1.4rem;font-style:italic}.footer-divider{background:#ffc4bf45;width:60px;height:1px;margin:1.5rem auto}.footer-love{letter-spacing:.16em;text-transform:uppercase;color:#fff;opacity:.25;font-size:.72rem}@media (width<=768px){.nav{padding:1rem 1.5rem}.nav-links{gap:1.1rem}.nav-links a{font-size:.65rem}.couple-grid{grid-template-columns:1fr;justify-items:center}.couple-middle{flex-direction:row;justify-content:center;padding-top:0}.couple-since{display:none}.couple-img-frame{width:220px;height:260px}.details-grid{grid-template-columns:1fr}.countdown-card,.map-card{grid-column:span 1}.countdown-num{width:70px;height:70px;font-size:2.8rem}.dates-grid{grid-template-columns:1fr}.dresscode-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=480px){.nav-links{gap:.7rem}.dresscode-grid{grid-template-columns:repeat(2,1fr)}}
