:root{--color-primary-light:#abbdb2;--color-bg-primary:#f6f5ee;--color-bg-secondary:#f1f0e9;--color-bg-light:#f6f5ee;--color-bg-floral:#efeee8;--color-text-main:#4a6b5d;--color-text-light:#82938a;--color-text-muted:#aab5af;--color-primary:#82938a;--color-primary-dark:#4a6b5d;--color-accent:#eabee0;--font-heading:"Cormorant Garamond", serif;--font-text:"Cormorant Garamond", serif;--spacing-section:6rem;--spacing-section-mobile:4rem;--max-width-content:800px;--border-radius:8px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1;font-size:16px}body{font-family:var(--font-text);color:var(--color-text-main);background-color:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-text-main);font-weight:400}h1{margin-bottom:1rem;font-size:3.5rem;line-height:1.1}h2{text-align:center;margin-bottom:1.5rem;font-size:2.5rem;position:relative}h2:after{content:"";background-color:var(--color-primary);width:60px;height:2px;margin:1rem auto 0;display:block}h3{margin-bottom:1rem;font-size:1.75rem}p{margin-bottom:1rem}a{color:var(--color-primary-dark);text-decoration:none;transition:color .3s}a:hover{text-decoration:underline}.section-container{padding:var(--spacing-section) 1.5rem;max-width:var(--max-width-content);margin:0 auto}@media (width<=768px){h1{font-size:2.8rem}h2{font-size:2rem}.section-container{padding:var(--spacing-section-mobile) 1.5rem}}.text-center{text-align:center}.button{background-color:var(--color-primary);color:#fff;border-radius:var(--border-radius);font-family:var(--font-text);letter-spacing:1px;text-transform:uppercase;cursor:pointer;border:none;padding:.75rem 1.5rem;font-size:.85rem;font-weight:700;transition:background-color .3s;display:inline-block}.button:hover{background-color:var(--color-primary-dark);color:#fff;text-decoration:none}.with-decoration{justify-content:center;align-items:center;gap:1.5rem;flex-direction:row!important;display:flex!important}.decoration-img{opacity:.8;flex-shrink:0;width:100px;height:auto}@media (width<=768px){.with-decoration{gap:1rem}.decoration-img{width:70px}}.header{z-index:1000;width:100%;padding:1.5rem 0;transition:all .3s;position:fixed;top:0;left:0}.header.scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fdfbf7f2;padding:1rem 0;box-shadow:0 2px 10px #0000000d}.header-container{max-width:var(--max-width-content);justify-content:space-between;align-items:center;margin:0 auto;padding:0 1.5rem;display:flex}.logo{font-family:var(--font-heading);color:var(--color-text-main);letter-spacing:2px;font-size:1.5rem;font-weight:700;text-decoration:none}.logo:hover{text-decoration:none}.desktop-nav{display:none}.desktop-nav a{color:var(--color-text-main);text-transform:uppercase;letter-spacing:1px;margin-left:2rem;font-size:.9rem}.desktop-nav a:hover{color:var(--color-primary);text-decoration:none}.mobile-toggle{color:var(--color-text-main);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.mobile-nav{background-color:var(--color-bg-primary);flex-direction:column;width:100%;max-height:0;transition:max-height .3s;display:flex;position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 5px 10px #0000000d}.mobile-nav.open{max-height:400px}.mobile-nav a{border-bottom:1px solid var(--color-bg-secondary);color:var(--color-text-main);text-transform:uppercase;letter-spacing:1px;text-align:center;padding:1rem 1.5rem;font-size:.9rem}.mobile-nav a:hover{background-color:var(--color-bg-secondary);text-decoration:none}@media (width>=768px){.desktop-nav{display:flex}.mobile-toggle{display:none}.mobile-nav{display:none!important}}.footer{background-color:var(--color-bg-primary);margin-top:2rem;padding:0 0 2rem}.footer-decoration{width:100%;max-width:700px;margin:0 auto 2rem;display:block}.footer-title{color:var(--color-primary-dark);margin-bottom:.5rem;font-size:2rem}.footer-date{text-transform:uppercase;letter-spacing:2px;margin-bottom:2rem;font-size:.9rem}.footer-thanks{font-style:italic;font-family:var(--font-heading);color:var(--color-text-light);font-size:1.25rem}.hero{flex-direction:column;justify-content:center;align-items:center;height:100vh;padding-top:80px;display:flex;position:relative;overflow:hidden}.hero-background{opacity:1;z-index:-1;background-position:bottom;background-repeat:no-repeat;background-size:auto 100%;position:absolute;inset:0}.hero-content{z-index:1;justify-content:center;align-items:center;max-width:600px;display:flex;position:relative}.hero-wreath{opacity:.9;pointer-events:none;z-index:-1;width:140%;max-width:800px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-text-inner{text-align:center;flex-direction:column;align-items:center;padding:1rem;display:flex}.hero-subtitle{font-family:var(--font-heading);letter-spacing:6px;color:var(--color-text-light);text-transform:uppercase;margin-bottom:2.5rem;font-size:.9rem}.hero-names-wrapper{flex-direction:column;align-items:center;gap:1rem;margin-bottom:3.5rem;display:flex}.hero-name{color:var(--color-text-main);letter-spacing:6px;margin:0;font-size:4rem;font-weight:300;line-height:1}.hero-ampersand{color:var(--color-text-main);font-size:2rem;font-family:var(--font-heading);opacity:.9}.hero-date{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:6px;color:var(--color-text-light);margin-bottom:3.5rem;font-size:1rem;font-weight:400}.hero-location-wrapper{flex-direction:column;align-items:center;display:flex}.hero-location{font-family:var(--font-heading);letter-spacing:5px;color:var(--color-text-light);text-transform:uppercase;font-size:.95rem}@media (width<=768px){.hero-name{letter-spacing:4px;font-size:2.8rem}.hero-date,.hero-location{letter-spacing:3px;font-size:.85rem}.hero-subtitle{letter-spacing:4px;font-size:.8rem}}.story-content{align-items:center;gap:4rem;margin-top:3rem;display:flex}.story-text{flex:1;font-size:1.1rem}.story-text p{margin-bottom:1.5rem}.story-text p:first-letter{font-family:var(--font-heading);float:left;color:var(--color-primary-dark);padding-right:.5rem;font-size:3rem;line-height:.8}.story-image-placeholder{flex:1;justify-content:center;display:flex;position:relative}.image-frame{aspect-ratio:4/5;background-color:var(--color-bg-floral);width:100%;max-width:350px;color:var(--color-text-muted);font-family:var(--font-heading);border:4px solid #fff;border-radius:16px;justify-content:center;align-items:center;font-size:1.25rem;font-style:italic;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px #0000000d}.story-img{object-fit:cover;z-index:10;border-radius:12px;width:100%;height:100%;position:absolute;top:0;left:0}.image-frame:before{content:"";border:1px solid var(--color-primary);z-index:-1;border-radius:20px;position:absolute;inset:-10px}@media (width<=768px){.story-content{flex-direction:column;gap:2rem}}.timeline{flex-direction:column;align-items:center;margin-top:3rem;display:flex;position:relative}.timeline:before{content:"";background-color:var(--color-primary);width:1px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.timeline-item{opacity:.9;width:100%;max-width:600px;margin-bottom:2rem;display:flex}.timeline-time{text-align:right;font-family:var(--font-heading);color:var(--color-text-main);flex:1;padding-top:5px;padding-right:2rem;font-size:1.5rem}.timeline-divider{z-index:1;flex-direction:column;align-items:center;display:flex;position:relative}.timeline-icon{background-color:var(--color-bg-primary);border:1px solid var(--color-primary);width:40px;height:40px;color:var(--color-primary-dark);border-radius:50%;justify-content:center;align-items:center;display:flex}.timeline-content{flex:1;padding-top:5px;padding-left:2rem}.timeline-content h3{color:var(--color-text-main);margin-bottom:0;font-size:1.25rem}@media (width<=600px){.timeline:before{left:40px}.timeline-item{flex-direction:column;position:relative}.timeline-time{text-align:left;padding-top:0;padding-bottom:.5rem;padding-left:80px}.timeline-divider{position:absolute;top:10px;left:20px}.timeline-content{padding-left:80px}}.gallery-subtitle{color:var(--color-text-light);font-family:var(--font-heading);margin-bottom:2rem;font-size:1.25rem;font-style:italic}.gallery-info-box{text-align:center;max-width:600px;color:var(--color-text-main);background-color:#4a6b5d0d;border:1px solid #4a6b5d33;border-radius:8px;margin:0 auto 3rem;padding:1.5rem 2rem;line-height:1.6}.gallery-info-box strong{color:var(--color-primary-dark)}.gallery-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:250px;gap:1.5rem;display:grid}.gallery-item{border-radius:var(--border-radius);overflow:hidden;box-shadow:0 4px 15px #0000000d}.gallery-actual-img{object-fit:cover;z-index:2;width:100%;height:100%;position:absolute;top:0;left:0}.placeholder-img{background-color:var(--color-bg-floral);width:100%;height:100%;color:var(--color-text-muted);font-family:var(--font-heading);justify-content:center;align-items:center;transition:transform .5s;display:flex}.placeholder-img:hover{transform:scale(1.05)}.item-1{grid-area:span 2/span 2}.item-2,.item-3,.item-4{grid-area:span 1/span 1}.item-5{grid-area:span 1/span 2}@media (width<=768px){.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:200px;gap:1rem}.item-1,.item-5{grid-area:span 1/span 2}}.info-cards{grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:3rem;display:grid}.info-card{border-radius:var(--border-radius);text-align:center;background-color:#fff;border-bottom:3px solid #0000;padding:2.5rem 2rem;transition:transform .3s;box-shadow:0 4px 20px #00000008}.info-card:hover{border-bottom-color:var(--color-primary);transform:translateY(-5px)}.info-icon{background-color:var(--color-bg-floral);width:60px;height:60px;color:var(--color-primary-dark);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.5rem;display:flex}.info-icon svg{width:28px;height:28px}.info-card h3{color:var(--color-text-main);text-transform:uppercase;letter-spacing:4px;margin-bottom:1rem;font-size:1.5rem}.info-card p{color:var(--color-text-light);text-transform:uppercase;letter-spacing:2px;margin-bottom:1.5rem;font-size:.95rem;line-height:1.8}@media (width<=768px){.info-cards{grid-template-columns:1fr;gap:1.5rem}}.gifts-container{background-color:var(--color-bg-secondary);border-radius:var(--border-radius);max-width:700px;margin:0 auto;padding:4rem 3rem;position:relative}.gifts-icon{width:70px;height:70px;color:var(--color-primary-dark);background-color:#fff;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-35px;left:50%;transform:translate(-50%);box-shadow:0 5px 15px #0000000d}.gifts-text{text-transform:uppercase;letter-spacing:2px;color:var(--color-text-light);margin-top:1rem;font-size:1rem;line-height:1.8}.gifts-thanks{font-family:var(--font-heading);color:var(--color-primary-dark);text-transform:uppercase;letter-spacing:2px;margin-top:2rem;margin-bottom:0;font-size:1.5rem;font-style:italic}@media (width<=768px){.gifts-container{padding:3rem 1.5rem}}.contacts-grid{grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:3rem;display:grid}.contact-card{border-radius:var(--border-radius);text-align:center;background-color:#fff;padding:2rem;box-shadow:0 4px 15px #00000008}.svdk-card{grid-column:span 2;justify-self:center;width:100%;max-width:500px}.contact-card h3{color:var(--color-text-main);margin-bottom:.25rem;font-size:1.5rem}.contact-role{color:var(--color-text-light);margin-bottom:1.5rem;font-size:.9rem;font-style:italic}.contact-links{flex-direction:column;align-items:center;gap:.75rem;display:flex}.contact-links a{color:var(--color-text-main);align-items:center;gap:.5rem;display:flex}.contact-links a:hover{color:var(--color-primary-dark)}@media (width<=768px){.contacts-grid{grid-template-columns:1fr}.svdk-card{grid-column:span 1}}#faq{padding-bottom:0}.faq-list{flex-direction:column;gap:1rem;max-width:700px;margin:3rem auto 0;display:flex}.faq-item{border-radius:var(--border-radius);background-color:#fff;overflow:hidden;box-shadow:0 4px 15px #00000005}.faq-question{font-family:var(--font-heading);color:var(--color-text-main);cursor:pointer;justify-content:space-between;align-items:center;padding:1.5rem;font-size:1.35rem;font-weight:600;list-style:none;display:flex}.faq-question::-webkit-details-marker{display:none}.faq-icon{font-size:1.5rem;font-family:var(--font-text);color:var(--color-primary);transition:transform .3s}details[open] .faq-icon{transform:rotate(45deg)}.faq-answer{color:var(--color-text-light);padding:0 1.5rem 1.5rem;line-height:1.6}details[open] summary~*{animation:.5s ease-in-out sweep}@keyframes sweep{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
