*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}:root{--primary: #8b5a3c;--primary-light: #c9a882;--text: #3d3d3d;--text-light: #5a5a5a;--bg: #fdf8f3;--white: #ffffff;--accent: #c67b4e;--sea: #5d8a9b}body{font-family:Georgia,serif;color:var(--text);background-color:var(--bg);line-height:1.7;-webkit-font-smoothing:antialiased}.wedding-site{max-width:100%;overflow-x:hidden}.language-switcher{position:fixed;top:1rem;right:1rem;z-index:100;display:flex;gap:.5rem}.language-switcher button{background:#ffffffe6;border:1px solid var(--primary-light);padding:.5rem .75rem;font-size:.85rem;font-weight:600;color:var(--primary);cursor:pointer;border-radius:4px;transition:all .2s ease}.language-switcher button:hover{background:var(--white);border-color:var(--primary)}.language-switcher button.active{background:var(--primary);color:var(--white);border-color:var(--primary)}.hero{min-height:100vh;background:linear-gradient(#1e161280,#1e16126b),url(https://images.unsplash.com/photo-1606800052052-a08af7148866?auto=format&fit=crop&fm=jpg&ixlib=rb-4.1.0&q=85&w=2400) center/cover;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--white)}.hero-content{max-width:760px;padding:2rem}.save-date{font-size:1.2rem;letter-spacing:.3em;text-transform:uppercase;margin-bottom:1rem;font-weight:300}.hero h1{font-size:clamp(3.2rem,9vw,5.8rem);font-weight:300;font-style:italic;line-height:1;margin-bottom:1rem;letter-spacing:.025em}.subtitle{font-size:clamp(1rem,2.5vw,1.3rem);letter-spacing:.1em;line-height:1.5;margin-top:.5rem;font-weight:300}.daughter-name{font-size:2.5rem;font-style:italic;font-weight:300;margin:.5rem 0 1rem}.wedding-date{font-size:clamp(1.1rem,2.5vw,1.4rem);letter-spacing:.14em}.section{padding:clamp(4rem,9vw,7rem) 2rem;max-width:880px;margin:0 auto;text-align:center}.section h2{font-size:clamp(2rem,5vw,3rem);font-weight:300;line-height:1.15;color:var(--primary);margin-bottom:2rem;letter-spacing:.07em}.section h2:after{content:"";display:block;width:60px;height:1px;background:var(--accent);margin:1rem auto 0;transform-origin:center;transition:transform .8s ease-out,opacity .8s ease-out}.section p{color:var(--text-light);font-size:clamp(1rem,1.8vw,1.1rem);max-width:680px;margin:0 auto 1.35rem}.venue{background:var(--white)}.venue-details h3{font-size:clamp(1.45rem,3vw,1.8rem);font-weight:400;line-height:1.3;color:var(--primary);margin-bottom:1rem}.venue-details h3 a{color:inherit;text-decoration:underline;text-decoration-color:var(--primary-light);text-underline-offset:.2em}.venue-details h3 a:hover{color:var(--accent)}.address{font-style:italic;line-height:2}.accommodation-card{max-width:560px;margin:2rem auto 0;padding:1.5rem 1.75rem;border:1px solid var(--primary-light);border-radius:12px;background:var(--bg);box-shadow:0 10px 24px #3d3d3d0d}.accommodation-card h4{color:var(--primary);font-size:1.2rem;font-weight:400;margin-bottom:.4rem}.accommodation-card p{margin-bottom:.75rem}.accommodation-card a{color:var(--accent);font-size:.95rem;text-underline-offset:.2em}.schedule{background:var(--bg)}.timeline{margin-top:3rem;max-width:620px;margin-left:auto;margin-right:auto}.timeline-item{display:flex;justify-content:center;gap:2rem;padding:1rem 0;border-bottom:1px solid var(--primary-light)}.timeline-item:last-child{border-bottom:none}.time{font-weight:600;color:var(--primary);min-width:100px;text-align:right}.event{color:var(--text-light);text-align:left;flex:1;max-width:300px}.event a{color:var(--primary);text-underline-offset:.2em}.event a:hover{color:var(--accent)}.gift{background:var(--white);padding-bottom:8rem}.iban-card{background:var(--bg);border:1px solid var(--primary-light);border-radius:12px;padding:clamp(1.5rem,4vw,2.25rem);margin-top:2rem;max-width:500px;margin-left:auto;margin-right:auto;box-shadow:0 12px 30px #3d3d3d0f}.iban-card h3{color:var(--primary);font-weight:400;margin-bottom:1.5rem;font-size:1.3rem}.iban-details{text-align:left}.detail-row{display:flex;flex-direction:column;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--primary-light)}.detail-row:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.label{font-size:.85rem;color:var(--text-light);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.3rem}.value{font-size:1.1rem;color:var(--text)}.iban{font-family:Courier New,monospace;font-size:1rem;letter-spacing:.05em;word-break:break-all}.iban-value-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.copy-iban{border:1px solid var(--primary-light);border-radius:999px;padding:.35rem .75rem;background:var(--white);color:var(--primary);font-family:inherit;font-size:.8rem;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}.copy-iban:hover{background:var(--primary);border-color:var(--primary);color:var(--white)}footer{background:linear-gradient(135deg,var(--primary) 0%,var(--sea) 100%);color:var(--white);text-align:center;padding:3rem 2rem}footer p{font-size:1.1rem;margin-bottom:.5rem}.couple-names{font-size:2rem;font-style:italic;font-weight:300;margin-top:1rem}@keyframes heroReveal{0%{opacity:0;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:no-preference){.hero{animation:heroReveal 1s ease-out both}.section.reveal{opacity:0;transform:translateY(36px) scale(.985);transition:opacity .9s ease-out,transform .9s ease-out}.section.reveal:not(.is-visible) h2:after{opacity:0;transform:scaleX(0)}.section.reveal>h2,.section.reveal>p,.section.reveal>.venue-details,.section.reveal>.timeline,.section.reveal>.iban-card{opacity:0;transform:translateY(18px);transition:opacity .7s ease-out,transform .7s ease-out}.section.reveal.is-visible>h2,.section.reveal.is-visible>p,.section.reveal.is-visible>.venue-details,.section.reveal.is-visible>.timeline,.section.reveal.is-visible>.iban-card{opacity:1;transform:translateY(0)}.section.reveal.is-visible>p:nth-of-type(2){transition-delay:.12s}.section.reveal.is-visible>.venue-details,.section.reveal.is-visible>.timeline,.section.reveal.is-visible>.iban-card{transition-delay:.16s}.section.reveal.is-visible{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.hero,.section.reveal,.section.reveal>h2,.section.reveal>p,.section.reveal>.venue-details,.section.reveal>.timeline,.section.reveal>.iban-card{opacity:1;transform:none;animation:none;transition:none}}@media(max-width:600px){.section{padding:3rem 1.5rem}.timeline-item{flex-direction:column;gap:.3rem;text-align:center}.time,.event{text-align:center;max-width:none}.iban-card{padding:1.5rem}.gift{padding-bottom:5rem}}
