:root{--bg-primary:#fcf9f5;--bg-secondary:#f2e6e1;--text-main:#2d2424;--text-muted:#5c5252;--accent:#b8860b;--accent-light:#d4af37;--white:#fff;--glass:#ffffffb3;--border-light:#2d24241a;--font-heading:"Outfit", sans-serif;--font-body:"Inter", sans-serif;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--shadow-soft:0 10px 30px #0000000d;font-family:var(--font-body);background-color:var(--bg-primary);color:var(--text-main);line-height:1.6}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3{font-family:var(--font-heading);font-weight:500;line-height:1.2}a{color:inherit;text-decoration:none;transition:all .3s}button{cursor:pointer;border:none;outline:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.glass{background:var(--glass);-webkit-backdrop-filter:blur(12px);border:1px solid #ffffff4d}.container{max-width:1100px;margin:0 auto;padding:0 24px}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade{animation:1s forwards fadeIn}.delay-1{animation-delay:.2s}.delay-2{animation-delay:.4s}.delay-3{animation-delay:.6s}::selection{background:var(--bg-secondary);color:var(--accent)}.hero-section{text-align:center;padding-top:100px;padding-bottom:80px}.hero-content h1{letter-spacing:-2px;color:var(--text-main);text-transform:uppercase;margin-bottom:8px;font-size:80px}.hero-content h2{color:var(--accent);margin-bottom:40px;font-size:32px;font-weight:300}.hero-divider{background:var(--accent);width:60px;height:2px;margin:0 auto 40px}.hero-tagline{color:var(--text-muted);max-width:600px;margin:0 auto 60px;font-size:20px}.hero-image-container{border-radius:var(--radius-lg);width:100%;height:600px;box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.hero-image{object-fit:cover;width:100%;height:100%;transition:transform 10s ease-out}.hero-image-container:hover .hero-image{transform:scale(1.1)}.hero-overlay{background:linear-gradient(to bottom, transparent 60%, var(--bg-primary));position:absolute;inset:0}.details-section{padding:100px 0}.details-grid{grid-template-columns:repeat(3,1fr);gap:40px;margin-bottom:80px;display:grid}.detail-item{background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);text-align:center;padding:32px}.detail-item h3{text-transform:uppercase;letter-spacing:2px;color:var(--accent);margin-bottom:16px;font-size:14px}.detail-item p{margin-bottom:4px;font-size:18px}.intro-text{text-align:center;max-width:800px;margin:0 auto}.intro-text p{color:var(--text-muted);margin-bottom:24px;font-size:20px}.rsvp-section{padding:80px 0 120px}.rsvp-card{border-radius:var(--radius-lg);text-align:center;max-width:600px;margin:0 auto;padding:60px}.rsvp-card h3{margin-bottom:12px;font-size:32px}.rsvp-card p{color:var(--text-muted);margin-bottom:40px}.rsvp-form{text-align:left;flex-direction:column;gap:24px;display:flex}.form-group-row{grid-template-columns:1fr 1fr;gap:24px;display:grid}@media (width<=600px){.form-group-row{grid-template-columns:1fr}}.form-group label{color:var(--text-main);text-transform:uppercase;letter-spacing:1px;font-size:14px;font-weight:500}.form-group input,.form-group select{border-radius:var(--radius-sm);border:1px solid var(--border-light);background:var(--white);font-family:var(--font-body);padding:16px;font-size:16px;transition:border-color .3s}.form-group input:focus{border-color:var(--accent);outline:none}.rsvp-button{background:var(--text-main);color:var(--white);font-family:var(--font-heading);text-transform:uppercase;letter-spacing:2px;border-radius:var(--radius-sm);margin-top:16px;padding:20px;font-size:18px;font-weight:500}.rsvp-button:hover{background:var(--accent);transform:translateY(-2px);box-shadow:0 5px 15px #b8860b4d}.rsvp-success{text-align:center;max-width:600px;margin:80px auto;padding:40px}.success-badge{background:var(--bg-secondary);color:var(--accent);font-size:14px;font-family:var(--mono,monospace);border-radius:4px;margin-top:24px;padding:8px 16px;display:inline-block}.about-section{padding:60px 0}.about-content{border-radius:var(--radius-md);text-align:center;max-width:800px;margin:0 auto;padding:40px}.about-content h3{color:var(--accent);margin-bottom:24px;font-size:24px}.about-content p{color:var(--text-muted);margin-bottom:16px;font-size:18px}.footer-content{flex-direction:column;align-items:center;gap:16px;display:flex}.footer p{color:var(--text-muted);font-size:14px}.expect-section{border-radius:var(--radius-lg);text-align:center;margin-top:80px;padding:60px}.expect-section h3{color:var(--accent);margin-bottom:32px;font-size:28px}.expect-list{text-align:left;max-width:600px;margin:0 auto 32px;list-style:none}.expect-list li{margin-bottom:16px;padding-left:32px;font-size:18px;position:relative}.expect-list li:before{content:"✦";color:var(--accent);position:absolute;left:0}.expect-summary{color:var(--text-main);font-style:italic;font-weight:500}.reward-banner{background:var(--bg-secondary);border-radius:var(--radius-md);border:1px dashed var(--accent);text-align:center;margin-top:60px;padding:32px}.reward-banner p{color:var(--text-main);font-size:20px}.guidelines-section{text-align:center;padding:100px 0}.guidelines-section h2{margin-bottom:16px;font-size:42px}.guidelines-intro{max-width:700px;color:var(--text-muted);margin:0 auto 60px;font-size:18px}.guidelines-grid{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}.guideline-card{background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);padding:40px;transition:transform .3s;position:relative}.guideline-card:hover{transform:translateY(-5px)}.guideline-num{font-family:var(--font-heading);color:#b8860b1a;font-size:48px;font-weight:700;position:absolute;top:10px;right:20px}.guideline-card h3{color:var(--accent);margin-bottom:16px;font-size:20px}.guideline-card p{font-size:16px;line-height:1.6}@media (width<=900px){.guidelines-grid{grid-template-columns:1fr}}
