:root{--primary-color: #2E4A3D;--secondary-color: #8B5A2B;--accent-color: #8B2635;--text-color: #2C3531;--bg-color: #ECEBE9;--font-heading: "Playfair Display", serif;--font-editorial: "Cormorant Garamond", serif;--font-body: "Lato", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--bg-color);color:var(--text-color);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3{font-family:var(--font-heading);color:var(--primary-color)}a{text-decoration:none;color:var(--secondary-color);transition:color .3s ease}a:hover{color:var(--primary-color)}header{background-color:#ecebe9f2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:1.2rem 3rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 1px #2e4a3d0d,0 2px 10px #00000005;z-index:1000;position:fixed;height:80px;width:100%;top:0;box-sizing:border-box;transition:all .4s cubic-bezier(.16,1,.3,1)}.site-header-home{background-color:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;position:absolute}header:not(.site-header-home){border-bottom:1px solid rgba(46,74,61,.08)}.logo-container{display:flex;align-items:center}.logo{font-family:var(--font-editorial);font-size:1.4rem;font-weight:500;color:var(--primary-color);letter-spacing:3px;text-decoration:none;text-transform:uppercase;transition:all .3s ease}.logo:hover{opacity:.8;letter-spacing:4px}nav ul{list-style:none;display:flex;gap:28px;margin:0;padding:0}nav a{text-decoration:none;color:var(--text-color);font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:2px;padding:6px 0;border-bottom:2px solid transparent;transition:all .3s cubic-bezier(.16,1,.3,1);opacity:.85}nav a:hover,nav a.active{color:var(--primary-color);border-bottom-color:var(--primary-color);opacity:1}.garland-placeholder{display:flex;flex-direction:row;align-items:center;justify-content:center;margin-bottom:2.2rem;--image-width: 200px;gap:calc(var(--image-width) / 2)}.leafy-illustration{width:var(--image-width);height:auto;opacity:.95;mix-blend-mode:multiply;transition:transform .6s cubic-bezier(.16,1,.3,1)}.leafy-flipped{transform:scaleX(-1)}.mobile-top-bar{display:none}.wedding-names{font-family:var(--font-editorial);font-size:3rem;font-weight:500;color:var(--primary-color);letter-spacing:6px;text-transform:uppercase;margin-bottom:1.2rem;line-height:1.2}.wedding-meta{display:flex;flex-direction:column;align-items:center;gap:.4rem}.wedding-date-location{font-family:var(--font-editorial);font-size:1rem;font-weight:500;color:#4a5650;letter-spacing:3px;text-transform:uppercase}.wedding-countdown{font-family:var(--font-editorial);font-size:.9rem;font-weight:600;color:#7a8b82;letter-spacing:3px;text-transform:uppercase}.hero-section{position:relative;width:100%;height:92vh;min-height:650px;overflow:hidden;display:flex;align-items:center;box-sizing:border-box}.hero-image-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;overflow:hidden}.hero-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;display:block}.hero-gradient-overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:2;pointer-events:none}.hero-layout-container{position:relative;z-index:2;width:100%;max-width:1500px;margin:0 auto;height:100%;pointer-events:none;display:flex;align-items:center}.hero-content-wrapper{width:100%;height:100%;display:flex;align-items:center;pointer-events:none;box-sizing:border-box}.hero-content{pointer-events:auto;animation:slideUpFade 1.4s cubic-bezier(.16,1,.3,1) forwards}.hero-content .wedding-names{color:#f6f5f3}.hero-content .wedding-date-location{color:#ecebe9;opacity:.95}.hero-content .wedding-countdown{color:#c7d5cf}.hero-content .btn-hero{margin-top:1.8rem;font-size:.85rem;padding:14px 38px;background-color:#ecebe9;color:var(--primary-color);border:1px solid #ECEBE9;font-weight:700;transition:all .3s cubic-bezier(.16,1,.3,1)}.hero-content .btn-hero:hover{background-color:transparent;color:#ecebe9;border-color:#ecebe9;transform:translateY(-2px);box-shadow:0 4px 15px #ffffff1a}@media(min-width:768px){.hero-image{width:130vw;left:-14.3vw;transition:all .3s cubic-bezier(.16,1,.3,1)}.hero-gradient-overlay{background:linear-gradient(to left,#000000d9,#00000080,#0000 70%)}.hero-content-wrapper{display:flex;justify-content:flex-end;padding-right:5%}.hero-content{width:50%;max-width:500px;padding:4.5rem 3.5rem;background-color:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;box-shadow:none;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}}@media(min-width:1500px){.hero-image{left:calc(11vw - 375px)}}@media(max-width:767px){header{height:70px;padding:.8rem 1.5rem;position:absolute;background:transparent;box-shadow:none;border-bottom:none!important}nav{display:none}.hero-section{display:flex;flex-direction:column;height:auto;min-height:auto;background-color:transparent;padding:0;gap:0}.mobile-top-bar{display:block;width:100%;background-color:var(--bg-color);padding:1.2rem 1.5rem;text-align:center;border-bottom:1px solid rgba(46,74,61,.08);order:0;box-sizing:border-box}.mobile-top-bar .wedding-names{margin:0;color:var(--primary-color);font-size:clamp(1.6rem,7.5vw,2.2rem);letter-spacing:3px;white-space:nowrap;text-transform:uppercase;font-family:var(--font-editorial);font-weight:500;line-height:1.2}.hero-gradient-overlay{display:none}.hero-layout-container{order:2;width:100%;height:auto;margin:2rem 0 0;pointer-events:auto;display:block}.hero-content-wrapper{width:100%;height:auto;display:block;padding:0}.hero-content{width:100%;max-width:100%;padding:0 1.5rem;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;box-shadow:none;text-align:center;display:flex;flex-direction:column;align-items:center}.hero-content .wedding-names{display:none}.hero-content .wedding-date-location{color:#4a5650;opacity:1;font-size:1.2rem;letter-spacing:2px;margin-bottom:0}.hero-content .wedding-countdown{color:#7a8b82;font-size:1.05rem;letter-spacing:2px}.hero-content .hero-cta-container{display:none}.hero-image-container{order:1;position:relative;width:100%;height:auto;z-index:1;overflow:hidden;border-radius:0;box-shadow:none}.hero-picture,.hero-image{position:relative;width:100%;height:auto;max-height:85vh;display:block;object-fit:contain}.details-editorial-container#details,.editorial-closing{padding:0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.btn{padding:12px 30px;background-color:var(--secondary-color);color:#fff;border-radius:4px;font-weight:700;text-transform:uppercase;letter-spacing:1px;transition:all .3s cubic-bezier(.16,1,.3,1);display:inline-block}.btn:hover{background-color:var(--primary-color);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #2e4a3d26}.btn-dark-green{background-color:var(--primary-color)}.btn-dark-green:hover{background-color:#1a2e24}.container{max-width:1100px;margin:0 auto;padding:4rem 2rem}#details{padding-top:7rem}section{padding:2rem 0;text-align:center}.details-editorial-container{max-width:1200px;margin:0 auto;padding:4rem 2rem}.editorial-header{text-align:center;margin-bottom:4rem;display:flex;flex-direction:column;align-items:center}.mobile-only-header{display:none}.mobile-getting-married{font-family:var(--font-editorial);font-size:1.8rem;font-weight:500;color:var(--primary-color);letter-spacing:2px;text-transform:uppercase;margin-bottom:1.2rem;text-align:center}.editorial-subtitle{font-family:var(--font-body);font-weight:700;font-size:.75rem;color:var(--secondary-color);text-transform:uppercase;letter-spacing:4px;margin-bottom:.6rem;display:block}.editorial-title{font-family:var(--font-editorial);font-size:clamp(2rem,5vw,2.8rem);font-weight:500;color:var(--primary-color);letter-spacing:2px;text-transform:uppercase;margin-bottom:1.5rem}.editorial-divider{width:120px;height:1px;background:linear-gradient(to right,#4a7c5900,#4a7c594d,#4a7c5900);position:relative}.editorial-divider:after{content:"♦";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.5rem;color:var(--secondary-color);background:var(--bg-color);padding:0 6px}.editorial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,280px));justify-content:center;gap:2rem;margin-top:1rem;text-align:center}.editorial-item{position:relative;padding:2.5rem 1.5rem;transition:all .4s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;align-items:center}.editorial-item:not(:last-child):after{content:"";position:absolute;top:20%;right:-.5rem;width:1px;height:60%;background:linear-gradient(to bottom,#2e4a3d00,#2e4a3d1f,#2e4a3d00)}.editorial-num{font-family:var(--font-editorial);font-style:italic;font-size:2.2rem;color:var(--secondary-color);opacity:.35;line-height:1;margin-bottom:.8rem;display:block;transition:all .4s cubic-bezier(.16,1,.3,1)}.editorial-item h3{font-family:var(--font-editorial);font-size:1.25rem;font-weight:500;letter-spacing:2px;margin-bottom:1rem;text-transform:uppercase;color:var(--primary-color)}.editorial-main-detail{font-family:var(--font-editorial);font-size:1.15rem;font-weight:600;color:var(--text-color);margin-bottom:.4rem;line-height:1.4}.editorial-sub-detail{font-family:var(--font-body);font-size:.9rem;color:#5a6a62;line-height:1.6}.editorial-item:hover{transform:translateY(-4px)}.editorial-item:hover .editorial-num{opacity:.8;transform:scale(1.1);color:var(--primary-color)}.stationery-card{background:#f4f3f0;border:1px solid rgba(46,74,61,.15);box-shadow:0 4px 20px #00000005,inset 0 0 40px #ffffff80;padding:3.5rem 3rem;border-radius:2px;position:relative}.stationery-card:before{content:"";position:absolute;inset:10px;border:1px solid rgba(46,74,61,.08);pointer-events:none}.stationery-form .form-group{margin-bottom:2rem}.stationery-form label{font-family:var(--font-editorial);font-size:1.1rem;font-weight:500;letter-spacing:1px;color:var(--primary-color);margin-bottom:.6rem;text-transform:uppercase}.stationery-form input[type=text],.stationery-form select,.stationery-form textarea{width:100%;background:transparent;border:none;border-bottom:1px solid rgba(46,74,61,.25);border-radius:0;padding:10px 4px;font-family:var(--font-editorial);font-size:1.15rem;color:var(--text-color);transition:all .3s ease;box-shadow:none}.stationery-form input[type=text]::placeholder,.stationery-form textarea::placeholder{font-family:var(--font-body);font-size:.85rem;letter-spacing:1px;color:#8c9a93}.stationery-form input[type=text]:focus,.stationery-form select:focus,.stationery-form textarea:focus{outline:none;border-bottom:1px solid var(--primary-color);background:#ffffff26}.stationery-form select{cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%232E4A3D' d='M6 7.4L.6 2 2 .6 6 4.6 10 .6 11.4 2z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:12px;padding-right:30px}.stationery-form .radio-group{display:flex;flex-direction:row;gap:30px;margin-top:.8rem}.stationery-form .radio-option{font-family:var(--font-editorial);font-size:1.1rem;color:var(--text-color)}.stationery-form .radio-option input[type=radio]{accent-color:var(--primary-color);width:1.1rem;height:1.1rem}@media(max-width:900px){.editorial-grid{grid-template-columns:repeat(2,1fr);gap:2rem}.editorial-item:nth-child(2):after{display:none}}@media(max-width:600px){.editorial-grid{grid-template-columns:1fr;gap:1.5rem}.editorial-item{padding:1.8rem 1rem;border-bottom:1px dashed rgba(46,74,61,.15)}.editorial-item:last-child{border-bottom:none}.editorial-item:after{display:none!important}.stationery-card{padding:2.2rem 1.5rem}.stationery-form .radio-group{flex-direction:column;gap:12px}.details-editorial-container{padding:3rem 1.5rem .5rem}#details{padding-top:3rem}.editorial-closing{padding:2.5rem 1.5rem 4rem}.mobile-only-header{display:block;width:100%;margin-bottom:.8rem}.desktop-only-header{display:none!important}}.editorial-closing{padding:1rem 2rem 6rem;text-align:center;display:flex;flex-direction:column;align-items:center}.closing-headline{font-family:var(--font-editorial);font-size:clamp(2rem,5vw,2.8rem);font-weight:500;color:var(--primary-color);letter-spacing:2px;line-height:1.3;margin-bottom:2.5rem}.closing-signature{font-family:var(--font-editorial);font-size:1.25rem;color:var(--secondary-color);letter-spacing:3px;text-transform:uppercase;font-weight:500;margin-top:1rem}.signature-mango{text-decoration:none;margin-left:8px;display:inline-block;transition:transform .3s ease}.signature-mango:hover{transform:scale(1.2) rotate(15deg)}.editorial-closing-simple{padding:4rem 2rem 6rem;text-align:center}.form-group{margin-bottom:1.5rem}label{display:block;font-weight:700;margin-bottom:.5rem;color:var(--primary-color)}input[type=text],select,textarea{width:100%;padding:10px;border:1px solid #ccc;border-radius:4px;font-family:var(--font-body);font-size:1rem;transition:border-color .3s}input[type=text]:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #2e4a3d33}textarea{resize:vertical}small{display:block;margin-top:.25rem;color:#666;font-size:.9rem}.radio-group{display:flex;flex-direction:column;gap:10px}.radio-option{display:flex;align-items:center;gap:10px;font-weight:400;cursor:pointer}.radio-option input[type=radio]{accent-color:var(--primary-color);width:1.2rem;height:1.2rem}
