@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&family=Quicksand:wght@400;500;600;700&family=Great+Vibes&display=swap";:root{--honey: #E8A838;--honey-light: #F5D78E;--honey-glow: #FFCC4D;--cream: #FFF8E7;--cream-dark: #F5ECD7;--bark: #6B4226;--bark-light: #8B6040;--meadow: #7DB87D;--meadow-light: #A8D8A8;--sky: #B8D4E8;--blush: #F4C2C2;--white: #FFFFFF;--shadow: rgba(107, 66, 38, .15);--shadow-strong: rgba(107, 66, 38, .25);--font-display: "Playfair Display", Georgia, serif;--font-body: "Quicksand", "Segoe UI", sans-serif;--radius: 16px;--radius-lg: 24px;--transition: .4s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%;overflow:hidden}body{font-family:var(--font-body);background:var(--cream);color:var(--bark);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.video-container{position:fixed;inset:0;z-index:10;background:#000;display:flex;align-items:center;justify-content:center;transition:opacity 1s ease,visibility 1s ease}.video-container.hidden{opacity:0;visibility:hidden;pointer-events:none}.video-container video{width:100%;height:100%;object-fit:cover}.skip-btn{position:absolute;bottom:2rem;right:2rem;z-index:20;background:#ffffff26;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.25);color:#fff;padding:.6rem 1.5rem;border-radius:100px;font-family:var(--font-body);font-size:.85rem;font-weight:600;letter-spacing:.05em;cursor:pointer;transition:var(--transition);text-transform:uppercase}.skip-btn:hover{background:#ffffff4d;transform:scale(1.05)}.video-choice-panel{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);z-index:20;width:min(calc(100% - 3rem),24rem);padding:1.5rem;border-radius:28px;border:1px solid rgba(255,255,255,.2);background:#160e0957;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 24px 60px #00000047;display:flex;flex-direction:column;gap:1rem;text-align:center}.video-choice-kicker{color:#ffffffb8;font-size:.82rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.video-choice-title{color:#fff;font-family:var(--font-display);font-size:clamp(1.7rem,5vw,2.2rem);line-height:1.1}.video-choice-actions{display:flex;flex-direction:column;gap:.7rem}.video-choice-btn{min-height:48px;padding:.95rem 1.2rem;border-radius:999px;border:1px solid rgba(255,255,255,.24);background:#ffffff24;color:#fff;font-family:var(--font-body);font-size:.95rem;font-weight:700;letter-spacing:.03em;cursor:pointer;transition:var(--transition)}.video-choice-btn:hover:not(:disabled){background:#ffffff3d;transform:translateY(-1px)}.video-choice-btn:disabled{opacity:.6;cursor:wait}.video-choice-btn--ghost{background:#ffffff14}.scene-bg{position:fixed;inset:0;z-index:0;background:#1a1008;overflow:hidden}.scene-bg-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;animation:bg-fade-in 1.5s ease forwards}@keyframes bg-fade-in{to{opacity:1}}.scene-bg-overlay{position:absolute;inset:0;background:#fff8e740;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.scene-bg:before{content:"";position:absolute;bottom:-5%;left:-10%;width:120%;height:40%;background:radial-gradient(ellipse at center,rgba(168,216,168,.15) 0%,transparent 70%);z-index:1}.floating-particle{position:absolute;border-radius:50%;opacity:0;animation:float-up 8s ease-in-out infinite}.floating-particle:nth-child(1){width:8px;height:8px;background:var(--honey-glow);left:15%;bottom:10%;animation-delay:0s}.floating-particle:nth-child(2){width:6px;height:6px;background:var(--blush);left:35%;bottom:15%;animation-delay:2s}.floating-particle:nth-child(3){width:10px;height:10px;background:var(--honey-light);left:60%;bottom:5%;animation-delay:4s}.floating-particle:nth-child(4){width:5px;height:5px;background:var(--meadow-light);left:80%;bottom:20%;animation-delay:6s}.floating-particle:nth-child(5){width:7px;height:7px;background:var(--sky);left:50%;bottom:8%;animation-delay:1s}@keyframes float-up{0%{transform:translateY(0) scale(0);opacity:0}20%{opacity:.6}80%{opacity:.3}to{transform:translateY(-60vh) scale(1.5);opacity:0}}.form-overlay{position:fixed;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;padding:1rem;opacity:0;transform:translateY(30px) scale(.95);transition:opacity .5s ease 0s,transform .5s ease 0s;pointer-events:none}.form-overlay.visible{opacity:1;transform:translateY(0) scale(1);transition:opacity 2s ease 1s,transform 1.5s cubic-bezier(.34,1.56,.64,1) 1s;pointer-events:all}.form-card{background:#fff8e7d9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(232,168,56,.2);border-radius:var(--radius-lg);padding:2.5rem 2rem;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:transparent transparent;box-shadow:0 8px 32px var(--shadow),0 2px 8px var(--shadow),inset 0 1px #fff9;position:relative;transition:scrollbar-color .3s ease}.form-card:hover{scrollbar-color:var(--honey-light) transparent}.splash-overlay-cinematic{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;background:#2b1f1766;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);cursor:pointer;padding:24px;text-align:center}.splash-content-cinematic{max-width:800px;display:flex;flex-direction:column;gap:1.15rem;color:#fff;text-shadow:0 4px 12px rgba(0,0,0,.3);overflow:visible}.splash-kicker-cinematic{align-items:center;color:#fff8e7e6;display:inline-flex;font-family:var(--font-body);font-size:.92rem;font-weight:700;gap:.9rem;justify-content:center;letter-spacing:.22em;margin:0;text-align:center;text-transform:uppercase}.splash-kicker-cinematic:before,.splash-kicker-cinematic:after{background:linear-gradient(90deg,transparent,rgba(245,215,142,.78),transparent);content:"";height:1px;width:clamp(2.25rem,10vw,4rem)}.splash-title-stack{display:flex;flex-direction:column;gap:.08em;margin:.1rem 0 0;padding:.45rem .35rem .3rem;overflow:visible;text-align:center}.splash-title-line{display:block;font-family:Great Vibes,cursive;font-weight:400;line-height:1.02;will-change:transform,opacity,filter}.splash-title-jose,.splash-title-solmaaz{font-size:clamp(4.6rem,12vw,6.8rem);padding:.14em .18em}.splash-title-jose{background:linear-gradient(140deg,#fffaf0,#ffe29a 38%,#f0b541);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 5px 12px rgba(126,83,14,.3));text-shadow:0 0 26px rgba(255,211,97,.26)}.splash-title-ampersand-main{color:#fff7df;font-size:clamp(3.8rem,10vw,5.4rem);line-height:.88;margin:-.02em 0;padding:.04em 0;text-shadow:0 0 16px rgba(255,246,212,.42),0 0 34px rgba(245,215,142,.32)}.splash-title-solmaaz{background:linear-gradient(140deg,#fffaf6,#ffd8cd 42%,#f4c2c2);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 5px 12px rgba(132,78,65,.28));text-shadow:0 0 24px rgba(255,211,204,.24)}.splash-subtitle-cinematic{font-family:var(--font-body);font-weight:500;color:#fdfbf7;text-transform:uppercase;margin:0;text-shadow:0 2px 10px rgba(0,0,0,.5)}.splash-subtitle-cinematic.split-events{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;margin:1rem 0 .6rem}.splash-subtitle-cinematic.split-events span{display:flex;align-items:center;font-family:var(--font-body);font-weight:600;text-transform:uppercase;letter-spacing:.15em;font-size:1.2rem}.text-baby-shower{color:var(--honey-glow);text-shadow:0 0 15px rgba(232,168,56,.4)}.text-ampersand{font-family:Great Vibes,cursive!important;font-size:2.5rem!important;color:#fff;opacity:.9;letter-spacing:0!important;text-transform:lowercase!important;margin:-.5rem 0}.text-gender-reveal{background:linear-gradient(120deg,#ffb3c6,#fff,#a2d2ff,#fff,#ffb3c6);background-size:300% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:genderRevealShimmer 4s linear infinite;text-shadow:0 0 20px rgba(255,255,255,.15)}@keyframes genderRevealShimmer{to{background-position:300% center}}.splash-hint-cinematic{font-family:var(--font-body);font-size:1.125rem;font-weight:300;margin-top:2rem;opacity:.8}.splash-tap-hint{font-size:.875rem;opacity:.6;margin-top:.5rem;display:inline-block}@media(max-width:768px){.splash-kicker-cinematic{font-size:.78rem;gap:.65rem;letter-spacing:.18em}.splash-kicker-cinematic:before,.splash-kicker-cinematic:after{width:1.8rem}.splash-title-jose,.splash-title-solmaaz{font-size:clamp(3.9rem,18vw,4.9rem)}.splash-title-ampersand-main{font-size:clamp(3.2rem,13vw,4rem)}.splash-title-stack{gap:.02em;padding:.3rem .1rem .2rem}.splash-subtitle-cinematic.split-events{gap:.6rem;margin:1rem 0}.splash-subtitle-cinematic.split-events span{font-size:.9rem;letter-spacing:.1em}.text-ampersand{font-size:2rem!important}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important}}.form-overlay.visible .form-group,.form-overlay.visible .form-row,.form-overlay.visible .registry-btn,.form-overlay.visible .submit-btn{animation:field-enter .5s cubic-bezier(.34,1.56,.64,1) both}.form-overlay.visible .form-group:nth-child(1){animation-delay:.15s}.form-overlay.visible .form-group:nth-child(2){animation-delay:.25s}.form-overlay.visible .form-group:nth-child(3){animation-delay:.35s}.form-overlay.visible .form-row{animation-delay:.45s}.form-overlay.visible .form-group:nth-child(5){animation-delay:.55s}.form-overlay.visible .registry-btn{animation-delay:.65s}.form-overlay.visible .submit-btn{animation-delay:.75s}@keyframes field-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.form-header{position:relative;z-index:1;text-align:center;margin-bottom:2rem}.form-card-wrapper{position:relative;width:100%;max-width:480px;padding-top:120px}.form-hero-img{margin-top:-100px;position:absolute;top:0;left:50%;transform:translate(-50%);height:350px;width:auto;object-fit:contain;z-index:2;pointer-events:none;filter:drop-shadow(0 4px 12px rgba(0,0,0,.1))}.form-footer-note{text-align:center;font-size:.85rem;color:var(--bark-light);margin:1rem 0 .5rem;opacity:.8}.form-header h1{font-family:var(--font-display);font-size:1.8rem;font-weight:700;color:var(--bark);line-height:1.2;margin-bottom:.5rem}.form-header h1 em{color:var(--honey);font-style:italic}.gender-reveal-text{font-family:var(--font-display);font-style:italic;font-weight:700;background:linear-gradient(90deg,#6bb8e8,#f4a0b8,#ffcc4d,#7db87d);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer-gradient 4s ease infinite}@keyframes shimmer-gradient{0%,to{background-position:0% center}50%{background-position:100% center}}.event-details-container{display:flex;flex-direction:column;align-items:center;gap:.8rem;margin-top:1rem;width:100%}.event-address-row{display:flex;align-items:stretch;gap:.5rem;justify-content:center;position:relative;width:min(100%,32rem);flex-wrap:nowrap}.event-address-main{position:relative;flex:1 1 auto;min-width:0}.copy-action-wrapper{position:relative;display:flex;align-self:stretch;align-items:center;flex:0 0 auto;margin-left:auto}.copy-btn{background:none;border:none;cursor:pointer;color:var(--bark-light);display:flex;align-items:center;justify-content:center;height:100%;padding:4px;min-width:36px;min-height:36px;border-radius:4px;transition:all .2s}.copy-btn:hover{background:#6b42260d;color:var(--honey-glow)}.copy-toast-shell{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);z-index:100;pointer-events:none}.copy-toast{background:var(--meadow);color:#fff;padding:6px 12px;border-radius:6px;font-size:.8rem;font-family:var(--font-body);font-weight:700;letter-spacing:.05em;white-space:nowrap;pointer-events:none;box-shadow:0 4px 10px #00000026}.copy-toast.error{background:#e05555}.event-detail{font-weight:600;font-size:.88rem;color:var(--bark);min-height:44px}.event-detail.hover-gold{background:none;border:none;cursor:pointer;text-decoration:none;transition:color .3s ease;font-family:inherit;display:flex;align-items:center;justify-content:center;gap:.4rem;flex-wrap:wrap;text-align:center;min-width:0;padding:0}.event-detail--calendar{width:min(100%,32rem);justify-content:center;text-align:center}.event-detail--address{width:100%;align-items:center;flex-wrap:nowrap;justify-content:center;text-align:center;line-height:1.4}.event-address-copy{display:flex;flex:1 1 auto;flex-direction:column;align-items:center;min-width:0;text-align:center}.event-address-venue{font-weight:700}.event-address-location{color:var(--bark-light);overflow-wrap:anywhere}.event-rsvp-deadline{width:min(100%,32rem);margin:0;color:var(--bark-light);font-family:var(--font-body);font-size:.92rem;font-weight:600;line-height:1.5;text-align:center}.event-rsvp-deadline span{color:var(--bark);font-weight:700}.event-detail.hover-gold:hover{color:var(--honey-glow)}.form-header p{font-size:.95rem;color:var(--bark-light);line-height:1.5}.form-divider{width:60px;height:2px;background:linear-gradient(90deg,transparent,var(--honey),transparent);margin:1rem auto;border:none}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--bark-light);margin-bottom:.4rem}.form-group label .required{color:#e05555;font-weight:700}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem 1rem;font-family:var(--font-body);font-size:.95rem;color:var(--bark);background:#ffffffb3;border:1.5px solid rgba(232,168,56,.2);border-radius:var(--radius);outline:none;transition:var(--transition)}.form-group input::placeholder,.form-group textarea::placeholder{color:#6b422659}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--honey);background:#ffffffe6;box-shadow:0 0 0 3px #e8a8381f}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-row--guests{grid-template-columns:80px 1fr}.form-group--small select{text-align:center}.radio-group{display:flex;gap:.75rem}.radio-option{flex:1}.radio-option input[type=radio]{display:none}.radio-option label{display:flex;align-items:center;justify-content:center;padding:.65rem;background:#ffffff80;border:1.5px solid rgba(232,168,56,.15);border-radius:var(--radius);cursor:pointer;font-size:.9rem;font-weight:500;text-transform:none;letter-spacing:0;transition:var(--transition);text-align:center}.radio-option input[type=radio]:checked+label{background:var(--honey);border-color:var(--honey);color:var(--white);box-shadow:0 2px 8px #e8a8384d}.radio-option label:hover{border-color:var(--honey-light);background:#fffc}.radio-option input[type=radio]:checked+label:hover{background:var(--honey)}.submit-btn{width:100%;padding:.9rem;margin-top:.5rem;font-family:var(--font-body);font-size:1rem;font-weight:700;letter-spacing:.04em;color:var(--white);background:linear-gradient(135deg,var(--honey) 0%,var(--honey-glow) 100%);border:none;border-radius:var(--radius);cursor:pointer;transition:var(--transition);box-shadow:0 4px 14px #e8a8384d;position:relative;overflow:hidden}.submit-btn:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 0%,rgba(255,255,255,.2) 100%);opacity:0;transition:opacity .3s ease}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #e8a83866}.submit-btn:hover:after{opacity:1}.submit-btn:active{transform:translateY(0)}.submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.thankyou-overlay{position:fixed;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;padding:1rem;opacity:0;transform:translateY(30px) scale(.95);transition:opacity .5s ease 0s,transform .5s ease 0s;pointer-events:none}.thankyou-overlay.visible{opacity:1;transform:translateY(0) scale(1);transition:opacity 1.5s ease .6s,transform 1.5s cubic-bezier(.34,1.56,.64,1) .6s;pointer-events:all}.thankyou-card-shell{position:relative;width:100%;max-width:460px;padding-top:2.8rem}.thankyou-card{background:#fff8e7eb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(232,168,56,.2);border-radius:var(--radius-lg);padding:4.8rem 2rem 2.5rem;width:100%;max-height:90vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:transparent transparent;text-align:center;box-shadow:0 8px 32px var(--shadow),inset 0 1px #fff9}.thankyou-card:hover{scrollbar-color:var(--honey-light) transparent}.thankyou-emoji{position:absolute;top:10px;left:50%;transform:translate(-50%,-28%);z-index:2;font-size:3.5rem;animation:gentle-bounce-centered 2s ease-in-out infinite}.thankyou-hero-img{position:absolute;top:10px;left:50%;z-index:2;height:132px;width:auto;object-fit:contain;transform:translate(-50%,-28%);pointer-events:none;animation:gentle-bounce-centered 2s ease-in-out infinite;filter:drop-shadow(0 12px 22px rgba(107,66,38,.14))}@keyframes gentle-bounce-centered{0%,to{transform:translate(-50%,-28%) translateY(0)}50%{transform:translate(-50%,-28%) translateY(-8px)}}.thankyou-card h2{font-family:var(--font-display);font-size:1.8rem;color:var(--bark);margin-bottom:.5rem}.thankyou-card>p{font-size:.95rem;color:var(--bark-light);line-height:1.6}.thankyou-details{display:flex;flex-direction:column;gap:.5rem;margin:1.25rem 0;padding:1rem;background:#ffffff80;border-radius:var(--radius);border:1px solid rgba(232,168,56,.1)}.thankyou-event-actions{padding:1rem 1rem 1.15rem}.thankyou-event-actions .event-details-container{margin-top:0;gap:.65rem}.thankyou-event-actions .event-address-row{width:100%}.skip-btn--audio{left:2rem;right:auto}.thankyou-detail-item{display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.9rem;font-weight:500;color:var(--bark)}.detail-icon{font-size:1.1rem}.raffle-section{margin:1.25rem 0 .5rem;padding:1rem;background:#ffffff80;border-radius:var(--radius);border:1px solid rgba(232,168,56,.15)}.raffle-title{font-family:var(--font-display);font-size:1.1rem;color:var(--bark);margin-bottom:.4rem}.raffle-desc{font-size:.85rem;color:var(--bark-light);line-height:1.5;margin-bottom:.85rem}.raffle-teams{display:flex;gap:.75rem}.raffle-team{flex:1;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem .5rem;border-radius:var(--radius);border:1.5px solid transparent;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;font-family:inherit;background-color:transparent}.raffle-team:not(:disabled):hover{transform:translateY(-2px)}.raffle-team:disabled{cursor:default}.raffle-team--boy.selected{border-color:#6bb8e8cc;background:#6bb8e838;box-shadow:0 0 0 3px #6bb8e833}.raffle-team--girl.selected{border-color:#f4c2c2e6;background:#f4c2c259;box-shadow:0 0 0 3px #f4c2c240}.raffle-team--boy{background:#6bb8e81f;border-color:#6bb8e859}.raffle-team--girl{background:#f4c2c233;border-color:#f4c2c280}.raffle-team-icon{font-size:1.5rem}.raffle-team-label{font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--bark)}.raffle-team-item{font-size:.82rem;color:var(--bark-light);font-weight:500}.team-submit-btn{display:block;width:100%;margin-top:.75rem;padding:.65rem 1.25rem;border:none;border-radius:var(--radius);background:linear-gradient(135deg,var(--honey),var(--honey-glow, #f0c060));color:#fff;font-family:var(--font-display);font-size:.95rem;font-weight:700;cursor:pointer;transition:opacity .15s ease,transform .15s ease}.team-submit-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.team-submit-btn:disabled{opacity:.7;cursor:not-allowed}.team-confirmed-msg{margin-top:.75rem;font-size:.9rem;font-weight:600;color:var(--bark);text-align:center}.team-error-msg{margin-top:.5rem;font-size:.82rem;color:#c0392b;text-align:center}.thankyou-quote{font-size:.85rem!important;font-style:italic;opacity:.65;margin-top:1rem;line-height:1.5}.thankyou-quote span{font-style:normal;font-weight:600}.registry-btn.registry-btn--thankyou{margin-top:1.25rem;background:linear-gradient(135deg,var(--honey) 0%,var(--honey-glow) 100%);color:var(--white);border:none;font-weight:700;box-shadow:0 4px 14px #e8a8384d}.registry-btn.registry-btn--thankyou:hover{background:linear-gradient(135deg,var(--honey-glow) 0%,var(--honey) 100%);color:var(--white);transform:translateY(-2px);box-shadow:0 6px 20px #e8a83866}.registry-nudge{margin-top:1rem;font-size:.88rem;font-weight:500;color:var(--bark)}.contact-trigger-btn{display:block;width:100%;margin-top:.75rem;padding:.7rem;font-family:var(--font-body);font-size:.88rem;font-weight:600;color:var(--bark-light);background:transparent;border:1.5px solid rgba(107,66,38,.2);border-radius:var(--radius);cursor:pointer;transition:var(--transition)}.contact-trigger-btn:hover{border-color:var(--bark-light);background:#fff6;transform:translateY(-1px)}.replay-btn{margin-top:.75rem;padding:.6rem 1.5rem;font-family:var(--font-body);font-size:.85rem;font-weight:600;color:var(--honey);background:transparent;border:1.5px solid var(--honey);border-radius:100px;cursor:pointer;transition:var(--transition)}.replay-btn:hover{background:var(--honey);color:var(--white)}.contact-backdrop{position:fixed;inset:0;z-index:50;background:#00000073;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:backdrop-in .25s ease}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.contact-modal{background:var(--cream);border:1px solid rgba(232,168,56,.2);border-radius:var(--radius-lg);padding:2rem 1.75rem;width:100%;max-width:400px;position:relative;box-shadow:0 12px 40px #00000026,inset 0 1px #fff9;animation:modal-in .3s cubic-bezier(.34,1.56,.64,1)}@keyframes modal-in{0%{opacity:0;transform:scale(.92) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.contact-close{position:absolute;top:.75rem;right:.75rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:50%;font-size:1rem;color:var(--bark-light);cursor:pointer;transition:var(--transition)}.contact-close:hover{background:#6b422614;color:var(--bark)}.contact-title{font-family:var(--font-display);font-size:1.3rem;color:var(--bark);margin-bottom:1.25rem;text-align:center}.contact-field{margin-bottom:1rem}.contact-field label{display:block;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--bark-light);margin-bottom:.35rem}.contact-field input,.contact-field textarea{width:100%;padding:.65rem .85rem;font-family:var(--font-body);font-size:.9rem;color:var(--bark);background:#ffffffb3;border:1.5px solid rgba(232,168,56,.2);border-radius:12px;outline:none;transition:var(--transition)}.contact-field input:focus,.contact-field textarea:focus{border-color:var(--honey);background:#ffffffe6;box-shadow:0 0 0 3px #e8a8381f}.contact-field textarea{resize:vertical;min-height:70px}.contact-error{color:#c0392b;font-size:.8rem;margin-bottom:.75rem;padding:.4rem .65rem;background:#c0392b14;border-radius:8px;border-left:3px solid #c0392b}.contact-send-btn{width:100%;padding:.75rem;font-family:var(--font-body);font-size:.95rem;font-weight:700;color:var(--white);background:linear-gradient(135deg,var(--honey) 0%,var(--honey-glow) 100%);border:none;border-radius:var(--radius);cursor:pointer;transition:var(--transition);box-shadow:0 4px 14px #e8a8384d}.contact-send-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #e8a83866}.contact-send-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.contact-sent{text-align:center;padding:1rem 0}.contact-sent-icon{font-size:3rem;margin-bottom:.75rem}.contact-sent h3{font-family:var(--font-display);font-size:1.4rem;color:var(--bark);margin-bottom:.5rem}.contact-sent p{color:var(--bark-light);font-size:.9rem}.contact-done-btn{margin-top:1.25rem;padding:.6rem 2rem;font-family:var(--font-body);font-size:.85rem;font-weight:600;color:var(--honey);background:transparent;border:1.5px solid var(--honey);border-radius:100px;cursor:pointer;transition:var(--transition)}.contact-done-btn:hover{background:var(--honey);color:var(--white)}.spinner{display:inline-block;width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;vertical-align:middle;margin-right:.5rem}@keyframes spin{to{transform:rotate(360deg)}}.registry-btn{display:block;width:100%;margin-top:1rem;padding:.75rem;font-family:var(--font-body);font-size:.9rem;font-weight:600;color:var(--bark);text-align:center;text-decoration:none;background:#ffffff80;border:1.5px solid rgba(232,168,56,.25);border-radius:var(--radius);transition:var(--transition)}.registry-btn:hover{background:#fffc;border-color:var(--honey);transform:translateY(-1px);box-shadow:0 3px 10px var(--shadow)}.form-error{color:#c0392b;font-size:.85rem;margin-bottom:.75rem;padding:.5rem .75rem;background:#c0392b14;border-radius:8px;border-left:3px solid #c0392b}@media(max-width:600px){html,body,#root{overflow:auto;height:100dvh}.form-overlay{align-items:flex-start;padding:.75rem;overflow-y:auto}.form-card{padding:1.75rem 1.25rem;border-radius:var(--radius);max-height:none;margin:.5rem 0}.form-header h1{font-size:clamp(1.2rem,4.5vw,1.6rem)}.form-header p{font-size:.85rem}.form-row,.form-row--guests{grid-template-columns:1fr;gap:0}.radio-group{flex-direction:column;gap:.5rem}.radio-option label{padding:.75rem;min-height:44px}.form-group input,.form-group select,.form-group textarea{font-size:16px;min-height:44px}.submit-btn{min-height:48px;font-size:1rem}.registry-btn{min-height:44px;display:flex;align-items:center;justify-content:center}.skip-btn{bottom:1.5rem;right:1.5rem;min-height:44px}.video-choice-panel{width:min(calc(100% - 2rem),22rem);padding:1.35rem 1.1rem}.skip-btn--audio{left:1.5rem;right:auto}.copy-btn{min-width:44px;min-height:44px}.thankyou-card{padding:4.15rem 1.5rem 2rem}.thankyou-card-shell{padding-top:2.35rem}.thankyou-hero-img{height:116px}}@media(max-width:380px){.form-card{padding:1.5rem 1rem}.form-header h1{font-size:1.15rem}}.form-card::-webkit-scrollbar{width:5px}.form-card::-webkit-scrollbar-track{background:transparent}.form-card::-webkit-scrollbar-thumb{background:transparent;border-radius:3px;transition:background .3s ease}.form-card:hover::-webkit-scrollbar-thumb{background:#e8a83859}.form-card::-webkit-scrollbar-thumb:hover{background:var(--honey-light)}.form-group.has-error input,.form-group.has-error select,.form-group.has-error textarea{border-color:#e74c3c;animation:shake .4s ease}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}.field-error{color:#c0392b;font-size:.75rem;margin-top:.25rem;opacity:0;transform:translateY(-4px);animation:error-in .3s ease forwards}@keyframes error-in{to{opacity:1;transform:translateY(0)}}
