:root{--primary-color: #C87E67;--background-color: #F4F1DE;--text-color: #3D405B;--accent-color: #A3624D;--heading-font: "Great Vibes", cursive;--body-font: "Lato", sans-serif}body{font-family:var(--body-font);background-color:var(--background-color);color:var(--text-color);padding-top:70px}h1,h2,h3,h4,h5,h6{font-family:var(--heading-font);color:var(--accent-color);font-weight:700}.section-title{text-align:center;margin-bottom:4rem;font-size:3.5rem}.navbar{background-color:#f4f1dee6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background-color .3s ease}.navbar-brand{font-family:var(--heading-font);font-size:2.5rem;color:var(--accent-color)}.nav-link{color:var(--text-color);margin-left:15px;font-weight:500;transition:color .3s ease}.nav-link:hover,.nav-link.active{color:var(--accent-color)}#hero{height:80vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background-color:var(--primary-color);color:var(--background-color)}#hero .illustration{max-height:40vh;margin-bottom:1rem}#hero h1{font-size:4.5rem;color:var(--background-color);margin-bottom:.5rem}#hero h2{font-family:var(--body-font);font-size:1.75rem;font-weight:400;color:var(--background-color);margin-bottom:2rem}#hero p{font-size:1.5rem;font-family:var(--body-font);color:var(--background-color)}#hero .btn{background-color:var(--background-color);color:var(--text-color);font-weight:700}.page-hero{padding:6rem 0;text-align:center;background-color:#f8f5e8}.page-hero h1{font-size:5rem;margin-bottom:1rem}.section{padding:6rem 0}.section.bg-light{background-color:#f8f5e8}.btn-primary{background-color:var(--primary-color);border-color:var(--primary-color);padding:.75rem 2rem;font-size:1rem;font-weight:500;border-radius:50px;transition:background-color .3s,border-color .3s,transform .2s}.btn-primary:hover{background-color:#d46a4d;border-color:#d46a4d;transform:translateY(-2px)}#rsvp{background-color:var(--primary-color);color:var(--background-color)}#rsvp .section-title,#rsvp p,#rsvp .lead,#rsvp h3,#rsvp h5{color:var(--background-color)}#rsvp .text-muted{color:#f4f1decc!important}#rsvp a{color:var(--background-color);text-decoration:underline}#rsvp a:hover{color:var(--background-color);opacity:.8}#rsvp .alert{color:var(--text-color)}#rsvp form{background-color:#fff;padding:2.5rem;border-radius:15px;box-shadow:0 10px 30px #0000000d;color:var(--text-color)}#rsvp form h3,#rsvp form h5,#rsvp form p{color:var(--text-color)}#rsvp form .text-muted{color:#6c757d!important}.btn-maps{color:var(--text-color);border-color:var(--text-color);background-color:transparent}.btn-maps:hover{color:#fff;background-color:var(--text-color);border-color:var(--text-color)}#rsvp .nav-tabs{border-bottom:2px solid var(--background-color)}#rsvp .nav-tabs .nav-link{color:var(--background-color);border:none;border-bottom:3px solid transparent;padding:.75rem 1.5rem;transition:all .3s ease;opacity:.6;background-color:transparent}#rsvp .nav-tabs .nav-link:hover{border-bottom-color:var(--background-color);color:var(--background-color);opacity:.9;background-color:#f4f1de1a}#rsvp .nav-tabs .nav-link.active{color:var(--background-color);border-bottom-color:var(--background-color);border-bottom-width:4px;font-weight:700;opacity:1;background-color:#f4f1de33;text-shadow:0 1px 2px rgba(0,0,0,.2)}footer{background-color:var(--text-color);color:var(--background-color);text-align:center;padding:2rem 0}.timeline{position:relative}.timeline:before{content:"";position:absolute;top:0;left:20%;height:100%;width:4px;background-color:var(--primary-color);transform:translate(-50%)}.timeline-item{position:relative;margin-bottom:50px}.timeline-item:last-child{margin-bottom:0}.timeline-time{position:absolute;left:0;top:5px;width:20%;text-align:right;padding-right:30px;font-size:1.2rem;font-weight:700;color:var(--text-color)}.timeline-content{padding-left:25%}.timeline-content h3{font-size:2rem;color:var(--text-color);font-family:var(--body-font);font-weight:600}.timeline-content p{margin-bottom:0}.timeline-item:after{content:"";position:absolute;top:10px;left:20%;width:20px;height:20px;background-color:var(--background-color);border:4px solid var(--primary-color);border-radius:50%;transform:translate(-50%)}
