.weddings-page{min-height:100vh;background:var(--bg-primary);color:var(--text-primary);padding-top:100px}.page-hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--theme-primary) 0,var(--theme-secondary-light) 60%,var(--theme-primary-light) 100%);overflow:hidden;padding:var(--space-3xl) 0}.page-hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.15) 0,transparent 45%),radial-gradient(circle at 70% 60%,rgba(255,255,255,.1) 0,transparent 40%),radial-gradient(circle at 20% 80%,rgba(255,255,255,.12) 0,transparent 35%);opacity:.8;animation:weddingShimmer 12s ease-in-out infinite}@keyframes weddingShimmer{0%,to{opacity:.6;transform:scale(1)}50%{opacity:.9;transform:scale(1.05)}}.page-hero:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;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.04'%3E%3Cpath d='M30 15c0-8.284-6.716-15-15-15s-15 6.716-15 15c0 8.284 6.716 15 15 15s15-6.716 15-15zm-15-12c6.627 0 12 5.373 12 12s-5.373 12-12 12-12-5.373-12-12 5.373-12 12-12z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") repeat;opacity:.2;animation:weddingPattern 25s linear infinite}@keyframes weddingPattern{0%{transform:translateX(0) translateY(0)}to{transform:translateX(60px) translateY(60px)}}.hero-content{text-align:center;max-width:800px;padding:0 2rem;position:relative;z-index:2}.hero-content h1{font-family:var(--font-heading);font-size:clamp(2.5rem,5vw,4rem);font-weight:700;margin-bottom:1.5rem;color:white;line-height:1.2;text-shadow:0 4px 20px rgba(0,0,0,.5),0 2px 8px rgba(0,0,0,.3);letter-spacing:-.02em}.hero-subtitle{font-size:1.25rem;line-height:1.6;color:rgba(255,255,255,.9);margin-bottom:0;font-weight:300;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));grid-gap:3rem;gap:3rem;margin-top:4rem}.wedding-service-card{background:linear-gradient(145deg,#ffffff,#f8f9fa);border:2px solid #e9ecef;border-radius:24px;padding:0;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.wedding-service-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(0,0,0,.02),rgba(0,0,0,.01));opacity:0;transition:opacity .3s ease;z-index:1}.wedding-service-card:hover{transform:translateY(-8px) scale(1.02);border-color:#000000;box-shadow:0 25px 50px -12px rgba(0,0,0,.25),0 0 0 1px rgba(0,0,0,.05)}.wedding-service-card:hover:before{opacity:1}.wedding-card-header{position:relative;z-index:2;padding:2rem 2rem 1rem;display:flex;justify-content:space-between;align-items:flex-start;background:linear-gradient(135deg,#000000,#1a1a1a);border-radius:24px 24px 0 0}.wedding-service-icon{width:70px;height:70px;background:linear-gradient(135deg,#ffffff,#f8f9fa);border-radius:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 16px rgba(0,0,0,.15),inset 0 1px 0 rgba(255,255,255,.1);border:2px solid rgba(255,255,255,.1)}.wedding-service-icon svg{font-size:1.75rem;color:#000000;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.wedding-card-badge{background:linear-gradient(135deg,#ffffff,#f8f9fa);color:#000000;padding:.5rem 1rem;border-radius:12px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border:1px solid rgba(0,0,0,.1);box-shadow:0 2px 4px rgba(0,0,0,.1)}.wedding-card-content{position:relative;z-index:2;padding:2rem;background:#ffffff}.wedding-card-title{font-family:var(--font-serif);font-size:1.75rem;font-weight:700;margin-bottom:1rem;color:#000000;line-height:1.2;letter-spacing:-.01em}.wedding-card-description{font-size:1.1rem;line-height:1.7;color:#4a5568;margin-bottom:2rem;font-weight:400}.wedding-features-section{margin-top:1.5rem}.wedding-features-title{font-size:1rem;font-weight:700;color:#000000;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.5px;position:relative}.wedding-features-title:after{content:"";position:absolute;bottom:-4px;left:0;width:30px;height:2px;background:linear-gradient(90deg,#000000,#4a5568);border-radius:1px}.wedding-service-features{list-style:none;padding:0;margin:0}.wedding-feature-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 0;border-bottom:1px solid #f1f5f9;transition:all .2s ease}.wedding-feature-item:last-child{border-bottom:none}.wedding-feature-item:hover{background:rgba(0,0,0,.02);margin:0 -1rem;padding:.75rem 1rem;border-radius:8px}.wedding-feature-bullet{color:#000000;font-weight:700;font-size:1.2rem;line-height:1;margin-top:.1rem;flex-shrink:0}.wedding-feature-text{color:#4a5568;font-size:.95rem;line-height:1.5;font-weight:500}.wedding-card-footer{position:relative;z-index:2;padding:0 2rem 2rem;background:#ffffff}.wedding-card-accent{height:4px;background:linear-gradient(90deg,#000000,#4a5568 50%,#000000);border-radius:2px;position:relative;overflow:hidden}.wedding-card-accent:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4) 50%,transparent);animation:shimmer 3s ease-in-out infinite}@keyframes shimmer{0%{left:-100%}to{left:100%}}.service-card{background:rgba(255,255,255,.02);border:1px solid rgba(0,0,0,.1);border-radius:20px;padding:3rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;position:relative;overflow:hidden}.service-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(0,0,0,.05),rgba(0,0,0,.02));opacity:0;transition:opacity .3s ease}.service-card:hover:before{opacity:1}.service-card:hover{transform:translateY(-5px);border-color:rgba(0,0,0,.3);box-shadow:0 20px 40px rgba(0,0,0,.1)}.service-icon{width:80px;height:80px;background:var(--gradient-theme-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:2rem;position:relative;z-index:2}.service-icon svg{font-size:2rem;color:var(--bg-primary)}.service-card h3{font-family:var(--font-serif);font-size:1.75rem;font-weight:600;margin-bottom:1.5rem;color:var(--text-primary);position:relative;z-index:2}.service-card p{font-size:1.1rem;line-height:1.7;color:var(--text-secondary);margin-bottom:2rem;position:relative;z-index:2}.service-features{list-style:none;padding:0;position:relative;z-index:2}.service-features li{border-bottom:1px solid rgba(255,255,255,.05);color:var(--text-secondary);position:relative;padding:.75rem 0 .75rem 1.5rem}.service-features li:before{content:"✓";position:absolute;left:0;color:var(--theme-primary);font-weight:700}.service-features li:last-child{border-bottom:none}.lifestyle-services{background:rgba(255,255,255,.01)}.lifestyle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));grid-gap:2.5rem;gap:2.5rem;margin-top:3rem}.lifestyle-card{background:rgba(255,255,255,.02);border:1px solid rgba(0,0,0,.1);border-radius:16px;padding:2.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;position:relative;overflow:hidden}.lifestyle-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(0,0,0,.03),rgba(0,0,0,.01));opacity:0;transition:opacity .3s ease}.lifestyle-card:hover:before{opacity:1}.lifestyle-card:hover{transform:translateY(-3px);border-color:rgba(0,0,0,.2);box-shadow:0 15px 30px rgba(0,0,0,.08)}.lifestyle-icon{width:60px;height:60px;background:var(--gradient-theme-primary);border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;position:relative;z-index:2}.lifestyle-icon svg{font-size:1.5rem;color:var(--bg-primary)}.lifestyle-card h3{font-family:var(--font-serif);font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary);position:relative;z-index:2}.lifestyle-card p{font-size:1rem;line-height:1.6;color:var(--text-secondary);margin-bottom:1.5rem}.lifestyle-card p,.service-details{position:relative;z-index:2}.service-details h4{font-size:1.1rem;font-weight:600;color:var(--theme-primary);margin-bottom:1rem}.service-details ul{list-style:none;padding:0}.service-details li{color:var(--text-secondary);position:relative;padding:.5rem 0 .5rem 1.25rem}.service-details li:before{content:"•";position:absolute;left:0;color:var(--theme-primary);font-weight:700}.themes{background:var(--bg-secondary);position:relative}.themes:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="themes-pattern" patternUnits="userSpaceOnUse" width="30" height="30"><circle cx="15" cy="15" r="0.8" fill="rgba(0,0,0,0.04)"/></pattern></defs><rect fill="url(%23themes-pattern)" width="100" height="100"/></svg>');opacity:.5;pointer-events:none}.themes-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:var(--space-3xl);gap:var(--space-3xl);margin-top:var(--space-3xl);position:relative;z-index:2}.theme-showcase{background:var(--bg-primary);border-radius:var(--radius-2xl);overflow:hidden;box-shadow:var(--shadow-lg);transition:all var(--transition-normal);border:1px solid var(--neutral-200);position:relative}.theme-showcase:hover{transform:translateY(-10px);box-shadow:var(--shadow-2xl);border-color:var(--theme-primary)}.theme-visual{aspect-ratio:1/1;position:relative;overflow:hidden}.theme-visual-bg{background-size:cover;background-position:top;background-repeat:no-repeat;opacity:.9}.theme-visual-bg,.theme-visual-overlay{position:absolute;top:0;left:0;right:0;bottom:0}.theme-visual-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.15) 0,transparent 60%),radial-gradient(circle at 70% 70%,rgba(255,255,255,.1) 0,transparent 50%);z-index:2}.theme-large-icon{width:80px!important;height:80px!important;color:black;filter:drop-shadow(0 6px 12px rgba(0,0,0,.3));margin-bottom:var(--space-lg)}.theme-title-overlay{text-align:center}.theme-title-overlay h3{font-family:var(--font-serif);font-size:clamp(1.5rem,2.5vw,2rem);font-weight:600;color:white;text-shadow:0 2px 8px rgba(0,0,0,.4);margin:0}.theme-visual-pattern{position:absolute;top:10%;left:10%;right:10%;bottom:10%;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="theme-pattern" patternUnits="userSpaceOnUse" width="20" height="20"><circle cx="10" cy="10" r="0.5" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect fill="url(%23theme-pattern)" width="100" height="100"/></svg>');opacity:.3;border-radius:var(--radius-lg)}.theme-details{padding:var(--space-md)}.theme-details h4{font-family:var(--font-serif);font-size:clamp(1.25rem,2vw,1.5rem);font-weight:600;margin-bottom:var(--space-md);color:var(--theme-primary-dark)}.theme-details p{font-size:1rem;line-height:1.6;color:var(--text-secondary);margin-bottom:var(--space-lg)}.theme-features-visual{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-lg)}.feature-tag{padding:var(--space-xs) var(--space-xs);background:var(--gradient-theme-subtle);border:1.2px solid black;border-radius:var(--radius-md);font-size:.85rem;color:var(--theme-primary-dark);font-weight:500;transition:all var(--transition-normal)}.cta{background:var(--gradient-theme-cta);color:white;text-align:center;position:relative;overflow:hidden}.cta:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="wedding-pattern" patternUnits="userSpaceOnUse" width="40" height="40"><circle cx="20" cy="20" r="1" fill="rgba(255,255,255,0.06)"/></pattern></defs><rect fill="url(%23wedding-pattern)" width="100" height="100"/></svg>');opacity:.4}.cta-content{text-align:center;max-width:800px;margin:0 auto;position:relative;z-index:2}.cta-content h2{font-family:var(--font-serif);font-size:clamp(2rem,4vw,3rem);font-weight:600;margin-bottom:var(--space-lg);color:white;text-shadow:0 2px 4px rgba(0,0,0,.3)}.cta-content p{font-size:1.25rem;line-height:1.6;color:rgba(255,255,255,.9);margin-bottom:var(--space-2xl)}.cta-buttons{display:flex;gap:var(--space-lg);justify-content:center;flex-wrap:wrap}.cta-buttons .btn{padding:1rem 2rem;font-size:1.1rem;font-weight:600;border-radius:var(--radius-lg);transition:all var(--transition-normal);background:var(--theme-primary);color:white;border:2px solid var(--theme-primary);box-shadow:0 4px 12px rgba(0,0,0,.3)}.cta-buttons .btn:hover{background:var(--theme-primary-light);border-color:var(--theme-primary-light);transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.4)}.cta-buttons .btn-secondary{background:transparent;color:white;border:2px solid rgba(255,255,255,.7);box-shadow:0 4px 12px rgba(0,0,0,.1)}.cta-buttons .btn-secondary:hover{background:rgba(255,255,255,.1);border-color:white;color:white;transform:translateY(-2px);box-shadow:0 6px 20px rgba(255,255,255,.2)}.weddings-container{max-width:1200px;margin:0 auto;padding:0 2rem}.weddings-luxury-section,.weddings-main-section{padding:5rem 0;position:relative}.weddings-luxury-section{background:linear-gradient(180deg,#fafafa,#ffffff)}.weddings-section-header{text-align:center;max-width:700px;margin:0 auto 4rem}.weddings-section-title{font-family:var(--font-serif);font-size:clamp(2rem,4vw,2.5rem);font-weight:700;color:#000000;margin-bottom:1rem;letter-spacing:-.02em}.weddings-section-subtitle{font-size:1.125rem;line-height:1.7;color:#4a5568;font-weight:400}.weddings-services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:2.5rem;gap:2.5rem;max-width:1000px;margin:0 auto}.weddings-service-card{background:#ffffff;border:1px solid #e5e7eb;border-radius:16px;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px rgba(0,0,0,.1);position:relative}.weddings-service-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#000000,#4a5568);opacity:0;transition:opacity .3s ease}.weddings-service-card:hover{transform:translateY(-4px);box-shadow:0 10px 25px rgba(0,0,0,.15);border-color:#000000}.weddings-service-card:hover:before{opacity:1}.weddings-card-icon-wrapper{padding:2rem 2rem 0;display:flex;justify-content:center}.weddings-card-icon{width:64px;height:64px;background:linear-gradient(135deg,#000000,#2d3748);border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.15)}.weddings-card-icon svg{font-size:1.75rem;color:#ffffff}.weddings-card-body{padding:1.5rem 2rem 2rem}.weddings-card-badge{display:inline-block;background:#f7fafc;color:#000000;padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border:1px solid #e5e7eb;margin-bottom:1rem}.weddings-card-title{font-family:var(--font-serif);font-size:1.5rem;font-weight:700;color:#000000;margin-bottom:.75rem;line-height:1.3}.weddings-card-description{font-size:.9375rem;line-height:1.6;color:#4a5568;margin-bottom:1.5rem}.weddings-features-list{display:flex;flex-direction:column;gap:.75rem}.weddings-feature-item{display:flex;align-items:flex-start;gap:.625rem;font-size:.875rem;line-height:1.5;color:#4a5568}.weddings-feature-check{color:#000000;font-weight:700;flex-shrink:0;margin-top:.1rem}.weddings-feature-text{flex:1 1}.weddings-luxury-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:2rem;gap:2rem;max-width:900px;margin:0 auto}.weddings-luxury-card{background:#ffffff;border:1px solid #e5e7eb;border-radius:12px;padding:2rem;transition:all .3s ease;box-shadow:0 1px 3px rgba(0,0,0,.08)}.weddings-luxury-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.12);border-color:#000000}.weddings-luxury-icon-wrapper{margin-bottom:1.5rem}.weddings-luxury-icon{width:56px;height:56px;background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #000000;border-radius:10px;display:flex;align-items:center;justify-content:center}.weddings-luxury-icon svg{font-size:1.5rem;color:#000000}.weddings-luxury-title{font-family:var(--font-serif);font-size:1.375rem;font-weight:700;color:#000000;margin-bottom:.75rem}.weddings-luxury-description{font-size:.9375rem;line-height:1.6;color:#4a5568;margin-bottom:1.5rem}.weddings-luxury-features{display:flex;flex-direction:column;gap:.625rem}.weddings-luxury-feature{display:flex;align-items:flex-start;gap:.625rem;font-size:.875rem;line-height:1.5;color:#4a5568}.weddings-luxury-bullet{color:#000000;font-weight:700;flex-shrink:0}.weddings-cta-section{background:linear-gradient(135deg,#000000,#1a1a1a);padding:5rem 0;position:relative;overflow:hidden}.weddings-cta-section:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="cta-pattern" patternUnits="userSpaceOnUse" width="30" height="30"><circle cx="15" cy="15" r="0.6" fill="rgba(255,255,255,0.05)"/></pattern></defs><rect fill="url(%23cta-pattern)" width="100" height="100"/></svg>');opacity:.5}.weddings-cta-content{text-align:center;max-width:700px;margin:0 auto;position:relative;z-index:2}.weddings-cta-title{font-family:var(--font-serif);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;color:#ffffff;margin-bottom:1rem;line-height:1.2}.weddings-cta-description{font-size:1.125rem;line-height:1.7;color:rgba(255,255,255,.9);margin-bottom:2rem}.weddings-cta-buttons{display:flex;justify-content:center;gap:1rem}.weddings-cta-btn{display:inline-block;padding:.875rem 2rem;background:#ffffff;color:#000000;border:2px solid #ffffff;border-radius:8px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s ease;box-shadow:0 4px 12px rgba(255,255,255,.2)}.weddings-cta-btn:hover{background:transparent;color:#ffffff;transform:translateY(-2px);box-shadow:0 6px 20px rgba(255,255,255,.3)}@media (max-width:768px){.weddings-container{padding:0 1.5rem}.weddings-cta-section,.weddings-luxury-section,.weddings-main-section{padding:3rem 0}.weddings-section-header{margin-bottom:2.5rem}.weddings-services-grid{grid-template-columns:1fr;gap:2rem}.weddings-luxury-grid{grid-template-columns:1fr;gap:1.5rem}.weddings-card-body{padding:1.25rem 1.5rem 1.5rem}.weddings-luxury-card{padding:1.5rem}.weddings-cta-btn{width:100%;max-width:320px}.services-grid{grid-template-columns:1fr;gap:2rem}.service-card{padding:2rem}.lifestyle-grid{grid-template-columns:1fr;gap:2rem}.themes-gallery{grid-template-columns:1fr;gap:var(--space-2xl)}.theme-visual{aspect-ratio:1/1}.concept-hero-icon{width:80px!important;height:80px!important}.theme-features-visual{justify-content:center}.cta-buttons{flex-direction:column;align-items:center}.cta-buttons .btn{width:100%;max-width:300px}}@media (max-width:480px){.weddings-luxury-grid,.weddings-services-grid{grid-template-columns:1fr}.weddings-card-icon{width:56px;height:56px}.weddings-card-icon svg{font-size:1.5rem}}