.hero{position:relative;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--color-white)}.hero-slideshow{position:absolute;top:0;left:0;width:100%;height:100%}.hero-slide{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;opacity:0;transition:opacity 1.5s ease-in-out}.hero-slide.active{opacity:1}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to bottom,#1a233280,#1a2332b3)}.hero-content{position:relative;z-index:2;text-align:center;padding:var(--spacing-md);max-width:900px}.hero-hashtag{font-size:1rem;font-weight:500;letter-spacing:2px;margin-bottom:var(--spacing-md);color:var(--color-gold);text-transform:uppercase}.hero-names{font-size:clamp(3rem,8vw,6rem);font-weight:300;margin-bottom:var(--spacing-sm);line-height:1.1}.ampersand{font-size:.8em;font-style:italic;color:var(--color-gold);margin:0 .2em}.hero-subtitle{font-size:clamp(1.2rem,3vw,1.8rem);font-weight:300;margin-bottom:var(--spacing-lg);letter-spacing:3px;text-transform:uppercase}.hero-dates{margin-bottom:var(--spacing-xl)}.hero-date{font-size:1.2rem;font-weight:400;letter-spacing:1px}.countdown{display:flex;justify-content:center;gap:var(--spacing-lg);margin-top:var(--spacing-xl);flex-wrap:wrap}.countdown-item{display:flex;flex-direction:column;align-items:center;min-width:80px}.countdown-value{font-size:3rem;font-family:var(--font-heading);font-weight:600;color:var(--color-gold);line-height:1}.countdown-label{font-size:.875rem;text-transform:uppercase;letter-spacing:2px;margin-top:var(--spacing-xs);opacity:.9}@media (max-width: 768px){.hero{height:100vh}.hero-names{font-size:clamp(2.5rem,12vw,4rem)}.countdown{gap:var(--spacing-md)}.countdown-item{min-width:60px}.countdown-value{font-size:2rem}}.invitation{padding:var(--spacing-2xl) 0;background:linear-gradient(to bottom,var(--color-cream),var(--color-white))}.invitation-content{max-width:800px;margin:0 auto;text-align:center}.invitation-header{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.decorative-line{width:60px;height:1px;background:linear-gradient(to right,transparent,var(--color-gold),transparent)}.invitation-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:300;color:var(--color-navy);letter-spacing:2px}.invitation-text{margin-top:var(--spacing-xl)}.invitation-paragraph{font-size:1.125rem;line-height:1.8;margin-bottom:var(--spacing-sm);color:var(--color-navy)}.family-names{font-size:1.25rem;margin:var(--spacing-md) 0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.family-names strong{font-family:var(--font-heading);font-size:1.5rem;font-weight:600;color:var(--color-navy)}.family-location{font-size:1rem;font-style:italic;color:#666}.conjunction{font-size:1.125rem;font-style:italic;margin:var(--spacing-md) 0;color:#666}.main-text{margin:var(--spacing-xl) 0 var(--spacing-lg) 0;font-size:1.25rem}.couple-names{margin-top:var(--spacing-xl);padding:var(--spacing-xl) var(--spacing-md);background:linear-gradient(135deg,#d4af370d,#0596690d);border-radius:16px;border:1px solid rgba(212,175,55,.2)}.couple-names h3{font-size:clamp(1.5rem,4vw,2.5rem);font-weight:600;color:var(--color-navy);margin:var(--spacing-sm) 0}.heart{display:block;font-size:2rem;color:var(--color-burgundy);margin:var(--spacing-md) 0}@media (max-width: 768px){.invitation{padding:var(--spacing-xl) 0}.decorative-line{width:40px}.invitation-title{font-size:2rem}.family-names strong{font-size:1.25rem}.couple-names{padding:var(--spacing-md)}}.event-details{padding:var(--spacing-2xl) 0;background:var(--color-white)}.section-header{text-align:center;margin-bottom:var(--spacing-2xl)}.section-header h2{font-size:clamp(2.5rem,5vw,4rem);font-weight:300;color:var(--color-navy);margin-bottom:var(--spacing-sm);letter-spacing:2px}.section-subtitle{font-size:1.125rem;color:#666;font-style:italic}.events-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--spacing-xl);max-width:1000px;margin:0 auto}.event-card{background:linear-gradient(135deg,var(--color-cream),var(--color-white));border-radius:16px;padding:var(--spacing-xl);box-shadow:0 10px 40px #00000014;transition:transform .3s ease,box-shadow .3s ease;border:1px solid rgba(212,175,55,.2)}.event-card:hover{transform:translateY(-8px);box-shadow:0 20px 60px #0000001f}.event-icon{width:60px;height:60px;margin:0 auto var(--spacing-md);color:var(--color-gold)}.event-icon svg{width:100%;height:100%}.event-title{font-size:1.75rem;text-align:center;margin-bottom:var(--spacing-lg);color:var(--color-navy);font-weight:600}.event-date{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:linear-gradient(135deg,#d4af371a,#d4af370d);border-radius:12px}.date-number{font-size:4rem;font-family:var(--font-heading);font-weight:600;color:var(--color-gold);line-height:1}.date-text{display:flex;flex-direction:column;text-align:left}.month{font-size:1.5rem;font-weight:600;color:var(--color-navy);text-transform:uppercase;letter-spacing:1px}.year{font-size:1rem;color:#666}.event-details-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.detail-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);font-size:1rem;line-height:1.6}.detail-item svg{width:20px;height:20px;color:var(--color-gold);flex-shrink:0;margin-top:2px}.detail-item.colors{flex-direction:column;gap:var(--spacing-xs)}.color-info{display:flex;flex-direction:column;gap:var(--spacing-xs);width:100%}.color-label{font-weight:600;color:var(--color-navy)}.color-swatches{display:flex;gap:var(--spacing-xs);margin:var(--spacing-xs) 0}.color-swatch{width:32px;height:32px;border-radius:50%;box-shadow:0 2px 8px #00000026;transition:transform .2s ease}.color-swatch:hover{transform:scale(1.15)}.color-names{font-size:.875rem;color:#666;font-style:italic}.reception-divider{margin:var(--spacing-lg) 0;padding:var(--spacing-sm) 0;text-align:center;border-top:1px solid rgba(212,175,55,.3);border-bottom:1px solid rgba(212,175,55,.3)}.reception-divider span{font-family:var(--font-heading);font-size:1.25rem;font-weight:600;color:var(--color-gold);text-transform:uppercase;letter-spacing:2px}@media (max-width: 768px){.event-details{padding:var(--spacing-xl) 0}.events-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.event-card{padding:var(--spacing-md)}.date-number{font-size:3rem}.month{font-size:1.25rem}}.gallery{padding:var(--spacing-2xl) 0;background:linear-gradient(to bottom,var(--color-white),var(--color-cream))}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-md);max-width:1200px;margin:0 auto}.gallery-item{position:relative;overflow:hidden;border-radius:12px;cursor:pointer;aspect-ratio:4/5;box-shadow:0 8px 24px #0000001a;transition:transform .3s ease,box-shadow .3s ease}.gallery-item:hover{transform:translateY(-8px);box-shadow:0 16px 40px #00000026}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.gallery-item:hover img{transform:scale(1.1)}.gallery-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#1a2332b3;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-overlay svg{width:48px;height:48px;color:var(--color-white)}.lightbox{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md);animation:fadeIn .3s ease}.lightbox-content{position:relative;max-width:90vw;max-height:90vh;animation:fadeInUp .4s ease}.lightbox-content img{max-width:100%;max-height:90vh;object-fit:contain;border-radius:8px}.lightbox-close{position:absolute;top:-40px;right:0;background:transparent;border:none;color:var(--color-white);cursor:pointer;padding:var(--spacing-xs);transition:transform .2s ease}.lightbox-close:hover{transform:scale(1.1)}.lightbox-close svg{width:32px;height:32px}@media (max-width: 768px){.gallery{padding:var(--spacing-xl) 0}.gallery-grid{grid-template-columns:1fr;gap:var(--spacing-sm)}.gallery-item{aspect-ratio:3/4}.lightbox-content{max-width:95vw}.lightbox-close{top:-50px}}.contact{padding:var(--spacing-2xl) 0;background:var(--color-white)}.contact-content{max-width:800px;margin:0 auto}.contact-card{background:linear-gradient(135deg,var(--color-cream),var(--color-white));border-radius:16px;padding:var(--spacing-xl);text-align:center;box-shadow:0 10px 40px #00000014;border:1px solid rgba(212,175,55,.2);margin-bottom:var(--spacing-xl)}.contact-icon{width:60px;height:60px;margin:0 auto var(--spacing-md);color:var(--color-gold)}.contact-icon svg{width:100%;height:100%}.contact-card h3{font-size:1.5rem;margin-bottom:var(--spacing-sm);color:var(--color-navy)}.contact-name{font-size:1.25rem;font-weight:600;color:var(--color-navy);margin-bottom:var(--spacing-sm)}.contact-phone{display:inline-block;font-size:1.5rem;font-family:var(--font-heading);font-weight:600;color:var(--color-gold);margin:var(--spacing-md) 0;padding:var(--spacing-sm) var(--spacing-lg);background:#d4af371a;border-radius:50px;transition:all .3s ease}.contact-phone:hover{background:var(--color-gold);color:var(--color-white);transform:scale(1.05)}.contact-description{font-size:1rem;line-height:1.6;color:#666;margin-top:var(--spacing-md);max-width:500px;margin-left:auto;margin-right:auto}.save-date-banner{background:linear-gradient(135deg,var(--color-navy),#2a3f5f);border-radius:16px;padding:var(--spacing-xl);text-align:center;color:var(--color-white);position:relative;overflow:hidden}.save-date-banner:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(212,175,55,.1) 0%,transparent 70%);animation:pulse 4s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.1);opacity:.8}}.banner-content{position:relative;z-index:1}.banner-content h3{font-size:2rem;font-weight:300;margin-bottom:var(--spacing-sm);letter-spacing:2px}.banner-content p{font-size:1.5rem;font-family:var(--font-heading);font-weight:600;margin-bottom:var(--spacing-md)}.hashtag{font-size:1.25rem;font-weight:500;letter-spacing:1px;color:var(--color-gold);margin-top:var(--spacing-md)}.rsvp-form{background:linear-gradient(135deg,var(--color-cream),var(--color-white));border-radius:16px;padding:var(--spacing-xl);box-shadow:0 10px 40px #00000014;border:1px solid rgba(212,175,55,.2);margin-top:var(--spacing-xl)}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;font-weight:600;margin-bottom:var(--spacing-xs);color:var(--color-navy);font-size:1rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px 16px;border:2px solid rgba(212,175,55,.3);border-radius:8px;font-family:var(--font-body);font-size:1rem;transition:border-color .3s ease,box-shadow .3s ease;background:var(--color-white)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-gold);box-shadow:0 0 0 3px #d4af371a}.form-group textarea{min-height:100px;resize:vertical}.form-group.required label:after{content:" *";color:var(--color-burgundy)}.checkbox-group{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;padding:var(--spacing-sm);border-radius:8px;transition:background-color .2s ease}.checkbox-label:hover{background:#d4af370d}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-gold)}.checkbox-label span{font-size:1rem;color:var(--color-navy)}.submit-button{width:100%;padding:16px 32px;background:linear-gradient(135deg,var(--color-gold),var(--color-dark-gold));color:var(--color-white);border:none;border-radius:8px;font-size:1.125rem;font-weight:600;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease;text-transform:uppercase;letter-spacing:1px}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #d4af374d}.submit-button:disabled{opacity:.6;cursor:not-allowed}.success-message{background:linear-gradient(135deg,#0596691a,#0596690d);border:2px solid var(--color-emerald);border-radius:8px;padding:var(--spacing-md);margin-bottom:var(--spacing-md);color:var(--color-emerald);text-align:center;font-weight:600;animation:fadeInUp .5s ease}.error-message{background:linear-gradient(135deg,#8000201a,#8000200d);border:2px solid var(--color-burgundy);border-radius:8px;padding:var(--spacing-md);margin-bottom:var(--spacing-md);color:var(--color-burgundy);text-align:center;font-weight:600;animation:fadeInUp .5s ease}@media (max-width: 768px){.contact{padding:var(--spacing-xl) 0}.contact-card{padding:var(--spacing-md)}.contact-phone{font-size:1.25rem;padding:var(--spacing-sm) var(--spacing-md)}.save-date-banner{padding:var(--spacing-md)}.banner-content h3{font-size:1.5rem}.banner-content p{font-size:1.25rem}.hashtag{font-size:1rem}.rsvp-form{padding:var(--spacing-md)}.checkbox-group{gap:var(--spacing-xs)}.submit-button{font-size:1rem;padding:14px 24px}}.footer{background:var(--color-navy);color:var(--color-white);padding:var(--spacing-xl) 0;text-align:center}.footer-content{max-width:600px;margin:0 auto}.footer-names{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-family:var(--font-heading);font-size:2rem;font-weight:600;margin-bottom:var(--spacing-md)}.footer-names .name{color:var(--color-white)}.footer-names .ampersand{color:var(--color-gold);font-style:italic;font-size:1.5rem}.footer-date{font-size:1.125rem;margin-bottom:var(--spacing-sm);opacity:.9}.footer-hashtag{font-size:1rem;font-weight:500;letter-spacing:1px;color:var(--color-gold);margin-bottom:var(--spacing-md)}.footer-copyright{font-size:.875rem;opacity:.7;margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid rgba(255,255,255,.1);margin-bottom:var(--spacing-md)}.admin-link{background:transparent;color:#ffffff80;border:1px solid rgba(255,255,255,.2);padding:6px 16px;border-radius:6px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;margin-top:var(--spacing-sm)}.admin-link:hover{color:var(--color-white);border-color:#ffffff80;background:#ffffff1a}@media (max-width: 768px){.footer{padding:var(--spacing-md) 0}.footer-names{font-size:1.5rem}.footer-names .ampersand{font-size:1.25rem}}.admin-login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-navy),#2a3f5f);padding:var(--spacing-md)}.admin-login-container{width:100%;max-width:450px}.admin-login-card{background:var(--color-white);border-radius:16px;box-shadow:0 20px 60px #0000004d;overflow:hidden;animation:fadeInUp .6s ease}.admin-login-header{background:linear-gradient(135deg,var(--color-gold),var(--color-dark-gold));padding:var(--spacing-xl);text-align:center;color:var(--color-white)}.admin-login-header h2{font-size:2rem;margin-bottom:var(--spacing-xs)}.admin-login-header p{font-size:1rem;opacity:.9}.admin-login-form{padding:var(--spacing-xl)}.admin-login-form .form-group{margin-bottom:var(--spacing-md)}.admin-login-form label{display:block;font-weight:600;margin-bottom:var(--spacing-xs);color:var(--color-navy);font-size:1rem}.admin-login-form input{width:100%;padding:12px 16px;border:2px solid rgba(212,175,55,.3);border-radius:8px;font-family:var(--font-body);font-size:1rem;transition:border-color .3s ease,box-shadow .3s ease;background:var(--color-white)}.admin-login-form input:focus{outline:none;border-color:var(--color-gold);box-shadow:0 0 0 3px #d4af371a}.login-button{width:100%;padding:14px 24px;background:linear-gradient(135deg,var(--color-navy),#2a3f5f);color:var(--color-white);border:none;border-radius:8px;font-size:1.125rem;font-weight:600;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease;text-transform:uppercase;letter-spacing:1px}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #1a23324d}.login-button:disabled{opacity:.6;cursor:not-allowed}.admin-login-footer{padding:var(--spacing-md);text-align:center;background:var(--color-light-gray);border-top:1px solid rgba(0,0,0,.1)}.admin-login-footer a{color:var(--color-navy);text-decoration:none;font-weight:600;transition:color .3s ease}.admin-login-footer a:hover{color:var(--color-gold)}.error-message{background:linear-gradient(135deg,#8000201a,#8000200d);border:2px solid var(--color-burgundy);border-radius:8px;padding:var(--spacing-sm);margin-bottom:var(--spacing-md);color:var(--color-burgundy);text-align:center;font-weight:600;font-size:.875rem}@media (max-width: 768px){.admin-login-card{border-radius:12px}.admin-login-header{padding:var(--spacing-md)}.admin-login-header h2{font-size:1.5rem}.admin-login-form{padding:var(--spacing-md)}}.admin-dashboard{min-height:100vh;background:var(--color-light-gray)}.admin-header{background:linear-gradient(135deg,var(--color-navy),#2a3f5f);color:var(--color-white);padding:var(--spacing-lg) 0;box-shadow:0 2px 8px #0000001a}.admin-header-content{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.admin-header h1{font-size:2rem;margin-bottom:var(--spacing-xs)}.admin-header p{font-size:1rem;opacity:.9;color:var(--color-gold);letter-spacing:1px}.logout-button{padding:10px 24px;background:#ffffff26;color:var(--color-white);border:2px solid var(--color-white);border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px}.logout-button:hover{background:var(--color-white);color:var(--color-navy)}.admin-content{padding:var(--spacing-xl) 0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.stat-card{background:var(--color-white);border-radius:12px;padding:var(--spacing-lg);box-shadow:0 2px 8px #00000014;display:flex;align-items:center;gap:var(--spacing-md);transition:transform .3s ease,box-shadow .3s ease}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.stat-icon{width:50px;height:50px;border-radius:12px;background:linear-gradient(135deg,var(--color-gold),var(--color-dark-gold));color:var(--color-white);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon.emerald{background:linear-gradient(135deg,var(--color-emerald),#047857)}.stat-icon.blue{background:linear-gradient(135deg,var(--color-blue),#2563EB)}.stat-icon svg{width:28px;height:28px}.stat-info{flex:1}.stat-value{font-size:2rem;font-family:var(--font-heading);font-weight:600;color:var(--color-navy);line-height:1}.stat-label{font-size:.875rem;color:#666;margin-top:var(--spacing-xs);text-transform:uppercase;letter-spacing:.5px}.rsvp-list-container{background:var(--color-white);border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.rsvp-list-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-light-gray);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.rsvp-list-header h2{font-size:1.5rem;color:var(--color-navy)}.filter-buttons{display:flex;gap:var(--spacing-xs)}.filter-buttons button{padding:8px 16px;background:var(--color-light-gray);color:var(--color-navy);border:2px solid transparent;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.filter-buttons button:hover{background:var(--color-cream)}.filter-buttons button.active{background:var(--color-gold);color:var(--color-white);border-color:var(--color-dark-gold)}.rsvp-table-wrapper{overflow-x:auto}.rsvp-table{width:100%;border-collapse:collapse}.rsvp-table thead{background:var(--color-light-gray)}.rsvp-table th{padding:var(--spacing-md);text-align:left;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px;color:var(--color-navy)}.rsvp-table td{padding:var(--spacing-md);border-bottom:1px solid var(--color-light-gray)}.rsvp-table tbody tr:hover{background:#d4af370d}.name-cell{font-weight:600;color:var(--color-navy)}.contact-cell{display:flex;flex-direction:column;gap:4px}.contact-cell .phone{font-size:.875rem;color:#666}.events-cell{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge.emerald{background:#0596691a;color:var(--color-emerald)}.badge.blue{background:#3b82f61a;color:var(--color-blue)}.guests-cell{font-weight:600;color:var(--color-navy);text-align:center}.dietary-cell,.message-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#666}.date-cell{font-size:.875rem;color:#666;white-space:nowrap}.loading,.no-data{padding:var(--spacing-xl);text-align:center;color:#666;font-size:1.125rem}.error-message{padding:var(--spacing-md);margin:var(--spacing-md);background:linear-gradient(135deg,#8000201a,#8000200d);border:2px solid var(--color-burgundy);border-radius:8px;color:var(--color-burgundy);text-align:center;font-weight:600}@media (max-width: 768px){.admin-header{padding:var(--spacing-md) 0}.admin-header h1{font-size:1.5rem}.admin-header-content{flex-direction:column;align-items:flex-start}.logout-button{width:100%}.stats-grid{grid-template-columns:1fr}.rsvp-list-header{flex-direction:column;align-items:flex-start}.filter-buttons{width:100%;flex-wrap:wrap}.filter-buttons button{flex:1;min-width:100px}.rsvp-table{font-size:.875rem}.rsvp-table th,.rsvp-table td{padding:var(--spacing-xs)}.dietary-cell,.message-cell{max-width:150px}}.app{min-height:100vh}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}.fade-in{animation:fadeIn .8s ease-out}.fade-in-up{animation:fadeInUp 1s ease-out}.slide-in-left{animation:slideInLeft .8s ease-out}.slide-in-right{animation:slideInRight .8s ease-out}*{margin:0;padding:0;box-sizing:border-box}:root{--font-heading: "Cormorant Garamond", serif;--font-body: "Montserrat", sans-serif;--color-gold: #D4AF37;--color-dark-gold: #B8941F;--color-navy: #1a2332;--color-emerald: #059669;--color-burgundy: #800020;--color-blue: #3B82F6;--color-white: #FFFFFF;--color-cream: #FAF9F6;--color-light-gray: #F3F4F6;--spacing-xs: 8px;--spacing-sm: 16px;--spacing-md: 24px;--spacing-lg: 32px;--spacing-xl: 48px;--spacing-2xl: 64px}body{font-family:var(--font-body);line-height:1.6;color:var(--color-navy);background:var(--color-cream);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.2}button{font-family:var(--font-body)}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}@media (max-width: 768px){:root{--spacing-xl: 32px;--spacing-2xl: 48px}}
