:root{--sn-bg-dark:#1b2a4a;--sn-bg-deep:#111b33;--sn-card-bg:#fafafc;--sn-card-border:#e8e4d8;--sn-gold-primary:#c9a44c;--sn-gold-light:#e3c77e;--sn-gold-muted:#d9c9a0;--sn-gold-icon-bg:#f1ebda;--sn-text-navy:#1b2a4a;--sn-text-body:#2b3a5e;--sn-text-muted:#6b7490;--sn-text-white:#fafafc}body{color:var(--sn-text-navy);-webkit-font-smoothing:antialiased;background-color:#0b0c0e;margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.sn-wrapper{background-color:var(--sn-bg-dark);box-sizing:border-box;width:100%;max-width:440px;min-height:100vh;margin:0 auto;padding:30px 20px 60px;position:relative;overflow:hidden;box-shadow:0 40px 45px #0009}.sn-geo-top{pointer-events:none;z-index:1;width:100%;height:300px;position:absolute;top:0;left:0;overflow:hidden}.sn-geo-img{object-fit:cover;width:100%;height:100%;display:block}.sn-hero-section{z-index:5;text-align:center;flex-direction:column;align-items:center;padding-top:24px;display:flex;position:relative}.sn-monogram-badge{background-color:var(--sn-card-bg);border:1px solid var(--sn-gold-muted);border-radius:50%;justify-content:center;align-items:center;width:76px;height:76px;display:flex;position:relative;box-shadow:0 6px 12px #1e293b26}.sn-monogram-inner{justify-content:center;align-items:center;display:flex}.sn-monogram-letter{color:var(--sn-text-navy);font-family:Cormorant Garamond,Georgia,serif;font-size:38px;font-weight:600;line-height:1;transform:translateY(-1px)}.sn-monogram-border-inner{border:1px solid var(--sn-card-border);pointer-events:none;border-radius:50%;width:62px;height:62px;position:absolute}.sn-tag{letter-spacing:3.4px;text-transform:uppercase;color:var(--sn-gold-primary);margin:18px 0 6px;font-family:Inter,sans-serif;font-size:10px;font-weight:600}.sn-heading{flex-direction:column;align-items:center;margin:4px 0 0;font-family:Cormorant Garamond,Georgia,serif;line-height:1.05;display:flex}.sn-heading-main{color:var(--sn-text-white);font-size:44px;font-weight:600}.sn-heading-italic{color:var(--sn-gold-light);font-size:44px;font-style:italic;font-weight:400}.sn-diamond-divider{justify-content:center;align-items:center;gap:8px;margin:16px 0 20px;display:flex}.sn-diamond-line{background-color:var(--sn-gold-primary);opacity:.85;width:40px;height:1px}.sn-diamond-dot{background-color:var(--sn-gold-primary);width:6px;height:6px;transform:rotate(45deg)}.sn-countdown-grid{grid-template-columns:repeat(4,1fr);gap:8px;width:100%;max-width:350px;margin:0 auto;display:grid}.sn-timer-card{background-color:var(--sn-card-bg);border:1px solid var(--sn-card-border);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;padding:10px 4px;display:flex;box-shadow:0 1px 3px #1e293b0d}.sn-timer-num{color:var(--sn-text-navy);font-family:Inter,sans-serif;font-size:22px;font-weight:600;line-height:1.1}.sn-timer-lbl{letter-spacing:1.6px;text-transform:uppercase;color:var(--sn-text-muted);margin-top:4px;font-family:Inter,sans-serif;font-size:10px;font-weight:500}.sn-section{z-index:5;width:100%;max-width:350px;margin:12px auto 0;position:relative}.sn-welcome-card{background-color:var(--sn-card-bg);border:1px solid var(--sn-card-border);text-align:center;border-radius:16px;padding:20px 18px;position:relative;box-shadow:0 1px 2px #1e293b0a}.sn-gold-bar{background-color:var(--sn-gold-primary);border-bottom-right-radius:4px;border-bottom-left-radius:4px;width:56px;height:3px;position:absolute;top:-1px;left:50%;transform:translate(-50%)}.sn-welcome-text{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:19px;line-height:1.38}.sn-welcome-bold{color:var(--sn-text-navy);font-weight:600}.sn-welcome-body{color:var(--sn-text-body);font-weight:400}.sn-info-cards-section{flex-direction:column;gap:12px;display:flex}.sn-info-card{background-color:var(--sn-card-bg);border:1px solid var(--sn-card-border);box-sizing:border-box;border-radius:16px;align-items:center;gap:16px;padding:16px;display:flex;box-shadow:0 1px 2px #1e293b0a}.sn-info-icon-wrapper{background-color:var(--sn-gold-icon-bg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.sn-info-icon{width:20px;height:20px}.sn-info-text-group{text-align:left;flex-direction:column;align-items:flex-start;display:flex}.sn-info-tag{letter-spacing:2.2px;text-transform:uppercase;color:var(--sn-gold-primary);font-family:Inter,sans-serif;font-size:10px;font-weight:600;line-height:1}.sn-info-main{color:var(--sn-text-navy);margin:3px 0 0;font-family:Cormorant Garamond,Georgia,serif;font-size:21px;font-weight:600;line-height:1.25}.sn-info-sub{color:var(--sn-text-muted);margin:2px 0 0;font-family:Inter,sans-serif;font-size:13px;font-weight:400;line-height:1.35}.sn-map-card{background-color:var(--sn-card-bg);border:1px solid var(--sn-card-border);border-radius:16px;padding:12px;box-shadow:0 1px 2px #1e293b0a}.sn-map-box{border:1px solid var(--sn-card-border);background-color:#dbe4ef;border-radius:12px;width:100%;height:160px;position:relative;overflow:hidden}.sn-map-box iframe{border:0!important;width:100%!important;height:100%!important;min-height:160px!important;display:block!important}.sn-nav-grid{flex-direction:column;gap:8px;margin-top:12px;display:flex}.sn-nav-btn{background-color:var(--sn-card-bg);border:1px solid var(--sn-card-border);height:48px;color:var(--sn-text-navy);box-sizing:border-box;border-radius:12px;align-items:center;gap:12px;padding:0 16px;text-decoration:none;transition:background-color .2s,border-color .2s,transform .15s;display:flex}.sn-nav-btn:hover{border-color:var(--sn-gold-primary);background-color:#f5f4ef;transform:translateY(-1px)}.sn-nav-btn:active{transform:translateY(0)}.sn-nav-icon{justify-content:center;align-items:center;width:24px;display:flex}.sn-nav-text{color:var(--sn-text-navy);font-family:Inter,sans-serif;font-size:14px;font-weight:500}.sn-rsvp-grid{flex-direction:column;gap:8px;width:100%;display:flex}.sn-form-inline{width:100%;margin:0}.sn-rsvp-btn{background-color:var(--sn-card-bg);border:1px solid var(--sn-card-border);cursor:pointer;box-sizing:border-box;border-radius:9999px;justify-content:center;align-items:center;gap:10px;width:100%;height:48px;padding:0 20px;transition:background-color .2s,border-color .2s,transform .15s;display:inline-flex}.sn-rsvp-btn:hover{border-color:var(--sn-gold-primary);background-color:#f5f4ef;transform:scale(1.01)}.sn-rsvp-btn:active{transform:scale(.99)}.sn-rsvp-btn.is-selected{border-color:var(--sn-text-navy);background-color:#eef3fc}.sn-rsvp-icon{justify-content:center;align-items:center;display:flex}.sn-rsvp-text{color:var(--sn-text-navy);font-family:Inter,sans-serif;font-size:14px;font-weight:500}.sn-calendar-grid{flex-direction:column;gap:8px;width:100%;display:flex}.sn-cal-btn{background-color:var(--sn-card-bg);border:1px solid var(--sn-card-border);height:48px;color:var(--sn-text-navy);cursor:pointer;box-sizing:border-box;border-radius:12px;align-items:center;gap:12px;width:100%;padding:0 16px;font-family:Inter,sans-serif;text-decoration:none;transition:background-color .2s,border-color .2s,transform .15s;display:flex}.sn-cal-btn:hover{border-color:var(--sn-gold-primary);background-color:#f5f4ef;transform:translateY(-1px)}.sn-cal-btn:active{transform:translateY(0)}.sn-cal-icon{justify-content:center;align-items:center;width:24px;display:flex}.sn-cal-text{color:var(--sn-text-navy);font-family:Inter,sans-serif;font-size:14px;font-weight:500}.sn-qr-card{background-color:var(--sn-card-bg);border:1px solid var(--sn-card-border);text-align:center;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;max-width:210px;margin:16px auto 0;padding:20px 16px 16px;display:flex;box-shadow:0 12px 18px #1e293b26}.sn-qr-title{color:var(--sn-text-navy);margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:17px;font-weight:600}.sn-qr-img-wrapper{border:1px solid var(--sn-card-border);background-color:#fff;border-radius:12px;justify-content:center;align-items:center;margin:12px 0 8px;padding:8px;display:flex}.sn-qr-img-wrapper svg{max-width:126px;height:auto;display:block}.sn-qr-hint{color:var(--sn-text-muted);margin:4px 0 0;font-family:Inter,sans-serif;font-size:11px;font-weight:400}@media (width<=380px){.sn-wrapper{padding:20px 12px 40px}.sn-heading-main,.sn-heading-italic{font-size:38px}.sn-countdown-grid{gap:6px}.sn-timer-num{font-size:19px}}
