:root{--bg-color: #F9F4F0;--accent-color: #C8969B;--accent-rgb: 200, 150, 155;--text-color: #2D2522;--text-muted: #615550;--font-title: "Cormorant Garamond", serif;--font-body: "Inter", sans-serif;--font-signature: "Playfair Display", serif;--tracking-wide: .1em;--tracking-widest: .2em}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background-color:var(--bg-color);color:var(--text-color);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip;transition:background-color .8s cubic-bezier(.25,1,.5,1),color .8s cubic-bezier(.25,1,.5,1)}body{min-height:100vh;position:relative;overflow:visible;transition:background-color .8s cubic-bezier(.25,1,.5,1)}.paper-texture{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;opacity:.04;background-image:radial-gradient(var(--text-color) .5px,transparent .5px),radial-gradient(var(--text-color) .5px,var(--bg-color) .5px);background-size:4px 4px;background-position:0 0,2px 2px}::selection{background-color:rgba(var(--accent-rgb),.3);color:var(--text-color)}html::-webkit-scrollbar{width:8px}html::-webkit-scrollbar-track{background:var(--bg-color)}html::-webkit-scrollbar-thumb{background:var(--accent-color);border-radius:4px}html::-webkit-scrollbar-thumb:hover{background:#b58085}@media(max-width:900px){html::-webkit-scrollbar{display:none}html{-ms-overflow-style:none;scrollbar-width:none}}h1,h2,h3,h4{font-family:var(--font-title);font-weight:300;letter-spacing:var(--tracking-wide)}.reveal{opacity:0;transform:translateY(30px);transition:opacity 1s cubic-bezier(.215,.61,.355,1),transform 1s cubic-bezier(.215,.61,.355,1)}.reveal.active{opacity:1;transform:translateY(0)}.fade-in{opacity:0;transition:opacity 1.5s ease-in-out}.fade-in.active{opacity:1}html.mode-fiesta{--bg-color: #171210;--accent-color: #E8B4B8;--accent-rgb: 232, 180, 184;--text-color: #F9F4F0;--text-muted: #B8A8A2}html.mode-fiesta .paper-texture{opacity:.02}.player-card,.rsvp-card-wrapper,.dress-code-box{transition:background-color .8s cubic-bezier(.25,1,.5,1),border-color .8s cubic-bezier(.25,1,.5,1),color .8s cubic-bezier(.25,1,.5,1)}html.mode-fiesta .player-card,html.mode-fiesta .dress-code-box{background-color:#231b19!important;border-color:#e8b4b84d!important}html.mode-fiesta .rsvp-card-wrapper{background-color:#231b19a6!important;backdrop-filter:blur(12px);border-color:#e8b4b840!important}html.mode-fiesta .google-map{filter:grayscale(1) invert(.9) contrast(1.2) brightness(.9) sepia(.2)!important}html.mode-fiesta .sound-waves .wave-bar{background-color:var(--accent-color)}html.mode-fiesta .card-option-button{background-color:#ffffff0d;border-color:#e8b4b833}html.mode-fiesta .card-radio-input:checked+.card-option-button{background-color:#382522!important;border-color:var(--accent-color)!important;box-shadow:0 15px 35px #e8b4b81a!important}html.mode-fiesta .card-option-label:hover .card-option-button{background-color:#ffffff14!important;border-color:var(--accent-color)!important}html.mode-fiesta .card-option-label:hover .card-radio-input:checked+.card-option-button{background-color:#4a322e!important}html.mode-fiesta .underline-input{border-bottom-color:#f9f4f040!important;color:var(--text-color)!important}html.mode-fiesta .underline-input:focus{border-bottom-color:var(--accent-color)!important}html.mode-fiesta .btn-submit:hover{color:#171210!important}.page-flow{width:100%;display:flex;flex-direction:column;position:relative;background:radial-gradient(circle at 10% 20%,rgba(200,150,155,.03) 0%,transparent 40%),radial-gradient(circle at 90% 80%,rgba(200,150,155,.03) 0%,transparent 40%)}.page-footer{width:100%;text-align:center;padding:60px 4% 40px;border-top:1px solid rgba(200,150,155,.15);margin-top:20px}.footer-text{font-family:var(--font-body);font-size:.6rem;font-weight:400;letter-spacing:.25em;color:var(--text-muted);text-transform:uppercase}.footer-text a{font-weight:600;color:var(--accent-color);text-decoration:none;transition:opacity .3s ease}.footer-text a:hover{opacity:.7}.family-quote-section{padding:80px 4% 40px;width:100%;text-align:center;position:relative}.quote-container{max-width:650px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:20px}.quote-text{font-family:var(--font-title);font-size:clamp(1.25rem,2.5vw,1.8rem);font-style:italic;font-weight:300;line-height:1.6;color:var(--text-color);letter-spacing:.02em}.quote-divider{width:40px;height:1px;background-color:var(--accent-color);margin:5px 0;opacity:.7}.quote-signature{font-family:var(--font-body);font-size:.65rem;font-weight:600;letter-spacing:.25em;color:var(--accent-color);text-transform:uppercase}
