@import "https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Inter:wght@300;400;500&display=swap";
*{box-sizing:border-box;margin:0;padding:0}:root{--eucalyptus:#6b8a7a;--eucalyptus-light:#8fa394;--eucalyptus-dark:#5a7468;--creme:#fbf9f3;--creme-dark:#f5f2e8;--gold-accent:#d4af37;--text-dark:#2c3e50;--text-light:#7f8c8d}body{color:var(--text-dark);background:var(--creme);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,Arial,sans-serif;line-height:1.6}.serif{font-family:Playfair Display,Georgia,Times New Roman,Times,serif}.hero{background:linear-gradient(135deg,var(--eucalyptus-light)0%,var(--eucalyptus)100%);justify-content:center;align-items:center;height:100vh;display:flex;position:relative;overflow:hidden}.hero:before{content:"";opacity:.1;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M30 30c0-11.046-8.954-20-20-20s-20 8.954-20 20 8.954 20 20 20 20-8.954 20-20zm0 0c0 11.046 8.954 20 20 20s20-8.954 20-20-8.954-20-20-20-20 8.954-20 20z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");width:200%;height:200%;animation:20s linear infinite float;position:absolute;top:-50%;left:-50%}@keyframes float{0%{transform:translate(0)rotate(0)}to{transform:translate(-60px,-60px)rotate(360deg)}}.hero-content{text-align:center;z-index:10;color:var(--creme)}.hero-content h1{opacity:0;margin-bottom:1rem;font-size:4rem;font-weight:400;animation:1s .5s forwards fadeInUp}.hero-content .date{letter-spacing:3px;opacity:0;font-size:1.5rem;font-weight:300;animation:1s 1s forwards fadeInUp}.hero-content .divider{background:var(--gold-accent);opacity:0;width:100px;height:2px;margin:2rem auto;animation:1s 1.5s forwards fadeInUp}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.nav{background:var(--creme);z-index:100;width:100%;padding:1rem 2rem;transition:transform .3s;position:fixed;top:0;box-shadow:0 2px 20px rgba(0,0,0,.1)}.nav-container{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.nav-logo{color:var(--eucalyptus);font-size:1.5rem;font-weight:400}.nav-links{gap:2rem;list-style:none;display:flex}.nav-links a{color:var(--text-dark);font-weight:400;text-decoration:none;transition:color .3s}.nav-links a:hover{color:var(--eucalyptus)}.section{max-width:1200px;margin:0 auto;padding:5rem 2rem}.section-title{text-align:center;color:var(--eucalyptus-dark);margin-bottom:3rem;font-size:3rem}.story-content{grid-template-columns:1fr 1fr;align-items:center;gap:4rem;display:grid}.story-text{color:var(--text-light);font-size:1.1rem;line-height:1.8}.story-text p{margin-bottom:1.5rem}.story-image{border-radius:10px;width:100%;height:400px;transition:transform .3s;overflow:hidden;box-shadow:0 10px 30px rgba(107,138,122,.2)}.story-image:hover{transform:translateY(-5px)}.engagement-photo{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .3s}.story-image:hover .engagement-photo{transform:scale(1.05)}.details-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:3rem;margin-top:3rem;display:grid}.detail-card{text-align:center;background:#fff;border-radius:10px;padding:2rem;transition:transform .3s;box-shadow:0 5px 30px rgba(0,0,0,.1)}.detail-card:hover{transform:translateY(-5px)}.detail-card h3{color:var(--eucalyptus);margin-bottom:1rem}.rsvp{background:var(--eucalyptus);color:var(--creme);text-align:center}.rsvp .section-title{color:var(--creme)}.rsvp-form{max-width:500px;margin:0 auto}.form-group{text-align:left;margin-bottom:1.5rem}.form-group label{margin-bottom:.5rem;font-weight:500;display:block}.form-group input,.form-group select,.form-group textarea{background:var(--creme);width:100%;color:var(--text-dark);border:none;border-radius:5px;padding:1rem;font-family:inherit}.btn{background:var(--gold-accent);color:#fff;cursor:pointer;border:none;border-radius:5px;padding:1rem 2rem;font-size:1.1rem;transition:background .3s}.btn:hover{background:#b8941f}html{scroll-behavior:smooth}.section{opacity:0;max-width:1200px;margin:0 auto;padding:5rem 2rem;transition:all .8s ease-out;transform:translateY(30px)}.section.visible{opacity:1;transform:translateY(0)}.footer{background:var(--eucalyptus-dark);color:var(--creme);text-align:center;padding:3rem 2rem}.footer h3{color:var(--creme);margin-bottom:1rem}.footer p{color:var(--creme);opacity:.9;margin-bottom:.5rem}@media (max-width:768px){.hero-content h1{font-size:2.5rem}.story-content{grid-template-columns:1fr;gap:2rem}.story-image{height:300px;margin-top:2rem}.section{padding:3rem 1rem}}@media (max-width:480px){.story-image{border-radius:8px;height:250px}}
