@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&family=Lato:wght@300;400;700&display=swap";:root{--color-bg:#f9f7f2;--color-text:#7b2d2d;--color-accent:#8b3535;--color-muted:#9b6b6b;--color-line:#7b2d2d40;--font-heading:"Cormorant Garamond", serif;--font-body:"Lato", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;min-height:100vh}a{color:inherit;text-decoration:none;transition:opacity .2s}a:hover{opacity:.6}.page{flex-direction:column;align-items:center;min-height:100vh;padding:2rem 1.5rem 3rem;display:flex}.countdown-bar{text-align:center;letter-spacing:.18em;color:var(--color-text);padding:1.2rem 0 .8rem;font-size:.72rem;font-weight:400;line-height:1.8}.countdown-timer{justify-content:center;align-items:center;gap:1.2rem;margin:.8rem auto 1rem;display:flex}.countdown-slot{flex-direction:column;align-items:center;display:flex}.slot-value{font-family:var(--font-heading);color:var(--color-accent);font-size:2rem;font-weight:400;line-height:1}.slot-label{letter-spacing:.14em;color:var(--color-muted);margin-top:.4rem;font-size:.58rem}.countdown-divider{color:var(--color-line);margin-top:-.8rem;font-size:1.2rem}.nav{border-bottom:1px solid var(--color-line);flex-wrap:wrap;justify-content:center;gap:.25rem 2rem;width:100%;max-width:900px;padding:1rem 0 1.5rem;display:flex}.hero{text-align:center;flex-direction:column;flex:1;align-items:center;padding:3rem 1rem 2rem;display:flex}.wreath-ornament{width:150px;height:auto;margin-bottom:2.5rem;margin-left:auto;margin-right:auto}.couple-names{font-family:var(--font-heading);letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:1.5rem;font-size:clamp(2.4rem,6vw,4rem);font-weight:400;line-height:1.1}.wedding-date{letter-spacing:.22em;text-transform:uppercase;color:var(--color-text);font-size:.72rem;line-height:2}.divider{background:var(--color-line);width:80px;height:1px;margin:2rem auto}.section-page{width:100%;max-width:960px;margin:0 auto;padding:3rem 1.5rem}.section-page h2{font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase;text-align:center;margin-bottom:2rem;font-size:2rem;font-weight:400}.section-page p{color:var(--color-muted);text-align:center;font-size:.9rem;line-height:1.9}.table-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;width:100%;max-width:900px;margin:0 auto;display:grid}.table-card{border:1px solid var(--color-line);background:#ffffff80;border-radius:2px;flex-direction:column;padding:1.5rem;display:flex}.table-card h3{font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.8rem;font-size:1.3rem;font-weight:400}.table-card ul{flex-wrap:wrap;gap:.3rem 1.5rem;list-style:none;display:flex}.table-card ul li{letter-spacing:.06em;color:var(--color-muted);font-size:.82rem}.footer{text-align:center;letter-spacing:.1em;color:var(--color-muted);padding:2rem 0 1rem;font-size:.68rem;line-height:2}.footer a{text-decoration:underline}.nav-container{border-bottom:1px solid var(--color-line);z-index:1001;justify-content:center;width:100%;max-width:900px;margin-bottom:1rem;display:flex;position:relative}.menu-toggle{cursor:pointer;z-index:1002;background:0 0;border:none;flex-direction:column;gap:6px;padding:1rem;display:none;position:absolute;top:50%;right:0;transform:translateY(-50%)}.menu-toggle span{background-color:var(--color-text);width:25px;height:2px;transition:all .3s;display:block}.menu-toggle.open span:first-child{transform:translateY(8px)rotate(45deg)}.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:nth-child(3){transform:translateY(-8px)rotate(-45deg)}.nav{flex-wrap:wrap;justify-content:center;gap:.25rem 2rem;width:100%;padding:1rem 0 1.5rem;display:flex}.nav a{letter-spacing:.14em;text-transform:uppercase;padding:.2rem 0;font-size:.72rem;font-weight:400;position:relative}.nav a.active:after{content:"";background:var(--color-text);height:1px;position:absolute;bottom:-2px;left:0;right:0}@media (width<=900px){.nav{gap:.25rem 1.2rem}}@media (width<=768px){.menu-toggle{display:flex}.nav{background:var(--color-bg);z-index:1000;flex-direction:column;justify-content:center;align-items:center;gap:2rem;width:100%;height:100vh;padding:0;transition:right .5s cubic-bezier(.77,0,.175,1);position:fixed;top:0;right:-100%}.nav.menu-open{right:0}.nav a{letter-spacing:.2em;padding:.5rem 0;font-size:1.4rem}.nav a.active:after{height:2px;bottom:-5px}.hero{padding:2rem 1rem}.couple-names{letter-spacing:.08em;font-size:2.2rem}.countdown-timer{gap:.8rem}.slot-value{font-size:1.6rem}.section-page{padding:2rem 1.2rem}.section-page h2{font-size:1.8rem}.table-list{grid-template-columns:1fr;gap:1rem}.invitation-page{width:100%!important}.invitation-card{margin:.5rem!important;padding:1.5rem .75rem!important}.wreath-ornament{width:120px;margin-bottom:1.5rem}.parent-name{font-size:1rem}.together-with{margin:.5rem 0}.guest-name{font-size:1.5rem}.couple-main-names{font-size:1.8rem}}@media (width<=400px){.couple-names{font-size:1.8rem}.countdown-timer{transform:scale(.85)}.invitation-page{width:100%!important}.invitation-card{margin:.25rem!important;padding:1rem .5rem!important}.wreath-ornament{width:100px}.guest-name{font-size:1.3rem}.couple-main-names{font-size:1.6rem}.date-main{gap:.8rem;padding:.8rem 1rem}}.invitation-page{background-color:var(--color-bg);justify-content:center;align-items:center;width:50%;min-height:100vh;padding:3rem .5rem;display:flex}.invitation-card{border:1px solid var(--color-line);text-align:center;background:#fff;border-radius:4px;width:100%;max-width:1200px;padding:4rem 2.5rem;position:relative;box-shadow:0 10px 40px #00000008}.invitation-header{flex-direction:column;gap:1.5rem;display:flex}.parents-section{flex-direction:column;gap:.8rem;display:flex}.parent-name{font-family:var(--font-heading);color:var(--color-accent);font-size:1.1rem;font-style:italic}.together-with{letter-spacing:.1em;color:var(--color-muted);font-size:.75rem}.request-honour{font-family:var(--font-heading);color:var(--color-text);margin:1rem 0;font-size:1.1rem;font-style:italic}.guest-name-box{margin:1.5rem auto;display:inline-block;position:relative}.guest-name{font-family:var(--font-heading);color:var(--color-accent);padding:0 1rem;font-size:1.8rem}.name-underline{background:var(--color-line);width:100%;height:1px;margin-top:.5rem}.at-marriage{letter-spacing:.05em;color:var(--color-muted);font-size:.8rem}.couple-main-names{font-family:var(--font-heading);color:var(--color-accent);margin:1rem 0;font-size:clamp(2.4rem,5vw,3.4rem);line-height:1.1}.and-text{color:var(--color-text);font-size:1.2rem;font-style:italic}.date-section{flex-direction:column;align-items:center;gap:.5rem;margin:2rem 0;display:flex}.date-top-line{letter-spacing:.2em;font-size:.8rem}.date-main{border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line);align-items:center;gap:1.5rem;padding:.8rem 2rem;display:flex}.date-month,.date-year{letter-spacing:.15em;font-size:.8rem}.date-day{font-family:var(--font-heading);color:var(--color-accent);font-size:2.2rem}.time-venue-details{flex-direction:column;gap:.5rem;margin:1.5rem 0;display:flex}.detail-line{letter-spacing:.12em;color:var(--color-text);font-size:.75rem}.highlighted{color:var(--color-accent);font-weight:700}.rsvp-section{border-top:1px solid var(--color-line);margin-top:2rem;padding-top:1.5rem}.rsvp-title{letter-spacing:.2em;margin-bottom:.5rem;font-size:.7rem}.rsvp-phone{color:var(--color-muted);font-size:.8rem}.wreath-ornament{width:150px;height:auto;margin:0 auto 2rem}.wreath-ornament img{width:100%;height:auto;display:block}
