:root{--gold:#c8a55a;--gold-lt:#e8d5a3;--gold-dark:#8b7332;--ink:#0a0806;--cream:#f5efe4;--smoke:rgba(245,239,228,0.55);--ivory:#faf6ee;--champagne:#1a1610;--obsidian:#0e0c08;--transition:cubic-bezier(0.2,0.8,0.2,1)}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:auto}
body{background:#050505;color:var(--cream);font-family:'Outfit',sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6{font-family:'Cormorant Garamond',serif;font-weight:400}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
a,button,.g-item,.g-item img,.pkg-btn,.nav-cta,.hero-btn,.cta-big-btn,.form-submit,.modal-close,.lightbox-close,.lightbox-nav,.hamburger,.social-btn{cursor:pointer!important}

/* CURSOR */
#cursor-outer{position:fixed;width:40px;height:40px;border:1px solid rgba(212,175,55,.3);border-radius:50%;pointer-events:none;z-index:99999;transform:translate(-50%,-50%);transition:transform .15s}
#cursor-inner{position:fixed;width:6px;height:6px;background:var(--gold);border-radius:50%;pointer-events:none;z-index:99999;transform:translate(-50%,-50%)}

/* NAV */
#nav{position:fixed;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:30px 50px;z-index:1000;transition:all .5s}
#nav.scrolled{background:rgba(10,10,10,.92);padding:15px 50px;backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.05)}
.nav-logo{font-family:'Cormorant Garamond',serif;font-size:1.5rem;letter-spacing:.1em;color:var(--gold);display:flex;align-items:center;gap:6px}
.nav-logo span{color:var(--cream);font-weight:300}
.nav-links{list-style:none;display:flex;gap:30px}
.nav-links a{font-size:.82rem;text-transform:uppercase;letter-spacing:.15em;color:var(--smoke);transition:color .3s;font-family:'Outfit',sans-serif}
.nav-links a:hover{color:var(--gold)}
.nav-cta{background:transparent;border:1px solid rgba(212,175,55,.4);color:var(--gold);padding:10px 24px;font-family:'Outfit',sans-serif;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;transition:all .3s;border-radius:0}
.nav-cta:hover{background:var(--gold);color:var(--ink)}
.hamburger{display:none;background:none;border:none;flex-direction:column;gap:5px;padding:5px}
.hamburger span{width:25px;height:2px;background:var(--cream);transition:.3s;display:block}
.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.hamburger.active span:nth-child(2){opacity:0}
.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
.mobile-menu{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(5,5,5,.97);z-index:999;flex-direction:column;align-items:center;justify-content:center;gap:25px}
.mobile-menu.open{display:flex}
.mob-link{font-size:1.2rem;color:var(--cream);letter-spacing:.15em;text-transform:uppercase}

/* PETAL CANVAS */
#petal-canvas{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:.15;filter:sepia(1) hue-rotate(10deg) saturate(3)}

/* HERO */
#hero{height:100vh;position:relative;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}
.hero-bg{position:absolute;inset:-50px;background-image:url('https://images.unsplash.com/photo-1519225421980-715cb0215aed?w=1600&q=80');background-size:cover;background-position:center;z-index:0;filter:brightness(.15) saturate(1.1) contrast(1.2);animation:heroFloat 40s ease-in-out infinite alternate}
@keyframes heroFloat{0%{transform:scale(1) translate(0,0)}100%{transform:scale(1.05) translate(-1%,-1%)}}
.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(5,5,5,.6) 0%,rgba(5,5,5,.2) 40%,rgba(5,5,5,.98) 100%),radial-gradient(ellipse at 50% 50%,transparent 30%,rgba(5,5,5,.85) 100%)}
#hero::before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(circle at 70% 30%,rgba(200,165,90,.08) 0%,transparent 40%);animation:heroGlow 8s ease-in-out infinite alternate}
#hero::after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(circle at 30% 70%,rgba(200,165,90,.05) 0%,transparent 40%);animation:heroGlow 12s ease-in-out infinite alternate-reverse}
@keyframes heroGlow{0%{opacity:.5;transform:scale(.9)}100%{opacity:1;transform:scale(1.1)}}
/* MAGICAL PARTICLES */
.particle-container{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.magic-particle{position:absolute;border-radius:50%;background:rgba(200,165,90,.5);box-shadow:0 0 8px rgba(200,165,90,.8),0 0 15px rgba(200,165,90,.4);animation:floatParticle linear infinite;opacity:0}
@keyframes floatParticle{
  0%{transform:translateY(0) translateX(0) scale(1);opacity:0}
  10%{opacity:.8}
  90%{opacity:.8}
  100%{transform:translateY(-100vh) translateX(50px) scale(0.2);opacity:0}
}
.hero-content{position:relative;z-index:2;padding:0 20px}
.hero-eyebrow{background:linear-gradient(90deg,#d4af37 0%,#f9e5a1 20%,#d4af37 40%,#997a00 60%,#d4af37 80%,#f9e5a1 100%);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmerLux 4s linear infinite;font-weight:500;font-family:'Outfit',sans-serif;letter-spacing:.3em;font-size:.85rem;margin-bottom:25px}
@keyframes shimmerLux{0%{background-position:0% 50%}100%{background-position:200% 50%}}
.hero-title{font-size:5.5rem;line-height:1.05;margin-bottom:20px;color:var(--cream);text-shadow:0 0 100px rgba(212,175,55,.15),0 10px 40px rgba(0,0,0,.8);letter-spacing:-.01em}
.hero-title em{font-style:italic;text-shadow:0 0 120px rgba(212,175,55,.2)}
.hero-sub{font-size:1.1rem;color:var(--smoke);letter-spacing:.2em;text-transform:uppercase;margin-bottom:40px;font-family:'Outfit',sans-serif;font-weight:300}
.hero-divider{display:flex;align-items:center;justify-content:center;gap:15px;margin-bottom:40px}
.hero-divider-line{width:60px;height:1px;background:linear-gradient(90deg,transparent,rgba(212,175,55,.5),transparent)}
.hero-divider-diamond{width:6px;height:6px;background:var(--gold);transform:rotate(45deg)}
.hero-btn{padding:18px 40px;font-size:.82rem;font-family:'Outfit',sans-serif;text-transform:uppercase;letter-spacing:.25em;border:none;border-radius:30px;background:rgba(212,175,55,.05);color:var(--gold);transition:all .4s var(--transition);backdrop-filter:blur(10px);box-shadow:0 10px 40px rgba(212,175,55,.2),0 0 0 1px rgba(212,175,55,.2) inset}
.hero-btn:hover{box-shadow:0 15px 50px rgba(212,175,55,.3),0 0 0 1px rgba(212,175,55,.5) inset;transform:translateY(-3px);background:rgba(212,175,55,.1);color:#fff}
.hero-scroll{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:10px}
.hero-scroll span{font-size:.65rem;text-transform:uppercase;letter-spacing:.2em;color:var(--smoke);font-family:'Outfit',sans-serif}
.scroll-line{width:1px;height:40px;background:linear-gradient(180deg,var(--gold),transparent);animation:scrollLine 2s infinite}
@keyframes scrollLine{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}50.1%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* SECTIONS COMMON */
section{padding:120px 50px;position:relative}
.section-title{font-family:'Cormorant Garamond',serif;font-size:3.8rem;font-weight:300;color:var(--cream);margin-bottom:20px;text-shadow:0 5px 30px rgba(0,0,0,.8);line-height:1.1;letter-spacing:1px}
.section-title em{color:var(--gold);font-style:italic;font-weight:300;letter-spacing:2px}
.section-label{text-transform:uppercase;margin-bottom:15px;display:block;color:var(--gold);letter-spacing:.3em;font-family:'Outfit',sans-serif;font-weight:500;font-size:.85rem}
.gold-rule{display:flex;justify-content:center;align-items:center;gap:10px;margin-bottom:30px}
.gold-rule span{width:40px;height:1px;background:rgba(212,175,55,.3)}
.gold-rule i{width:4px;height:4px;background:var(--gold);border-radius:50%;display:inline-block}
.reveal{opacity:0;transform:translateY(30px);transition:all .8s var(--transition)}
.reveal.visible{opacity:1;transform:translateY(0)}

/* INTRO */
#intro{background:linear-gradient(180deg,#050505 0%,#0a0a0a 50%,#050505 100%);position:relative}
#intro::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(212,175,55,.03) 0%,transparent 70%);pointer-events:none}
.intro-container{display:flex;flex-direction:column;gap:60px;max-width:1200px;margin:0 auto}
.intro-text{text-align:center;margin-bottom:0}
.intro-p{font-family:'Outfit',sans-serif;font-size:1.1rem;line-height:1.8;color:var(--smoke);max-width:800px;margin:0 auto}
.intro-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.stat-glass{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);border-radius:20px;padding:40px 20px;text-align:center;backdrop-filter:blur(10px);transition:all .5s}
.stat-glass:hover{transform:translateY(-10px);background:rgba(212,175,55,.05);border-color:rgba(212,175,55,.3);box-shadow:0 20px 40px rgba(0,0,0,.5)}
.stat-num{font-size:3rem;font-weight:300;color:var(--cream);font-family:'Outfit',sans-serif;margin-bottom:8px}
.stat-lbl{font-size:.8rem;text-transform:uppercase;letter-spacing:.15em;color:var(--smoke);font-family:'Outfit',sans-serif}

/* GALLERY */
#gallery{background:#050505}
.gallery-header{text-align:center;margin-bottom:60px}
.masonry-gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:250px;gap:20px;max-width:1400px;margin:0 auto}
.masonry-item{position:relative;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.4);cursor:pointer}
.masonry-item img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}
.masonry-item:hover img{transform:scale(1.08)}
.masonry-item.tall{grid-row:span 2}
.masonry-item.wide{grid-column:span 2}
.masonry-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.8) 0%,rgba(0,0,0,0) 50%);display:flex;align-items:flex-end;padding:30px;opacity:0;transition:opacity .5s}
.masonry-item:hover .masonry-overlay{opacity:1}
.masonry-overlay span{font-family:'Outfit',sans-serif;font-weight:300;letter-spacing:.2em;text-transform:uppercase;color:var(--ivory);font-size:.9rem;transform:translateY(20px);transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.masonry-item:hover .masonry-overlay span{transform:translateY(0)}
.luxury-link{font-family:'Outfit',sans-serif;font-weight:300;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);text-decoration:none;padding-bottom:5px;border-bottom:1px solid rgba(212,175,55,.3);transition:all .3s}
.luxury-link:hover{color:var(--ivory);border-color:var(--ivory)}

/* PACKAGES */
#services{background:radial-gradient(ellipse at top,rgba(212,175,55,.04) 0%,#050505 50%);padding:120px 50px}
.pkg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;max-width:1300px;margin:0 auto;align-items:center}
.pkg{background:rgba(255,255,255,.01);border:1px solid rgba(255,255,255,.04);border-radius:24px;padding:50px 40px;position:relative;transition:all .5s var(--transition);backdrop-filter:blur(20px);text-align:left;display:flex;flex-direction:column;height:100%}
.pkg:hover{border-color:rgba(212,175,55,.3);transform:translateY(-10px)}
.pkg.featured{background:rgba(200,165,90,.03);border:1px solid rgba(200,165,90,.2);transform:scale(1.05);box-shadow:0 30px 60px rgba(0,0,0,.5),0 0 40px rgba(200,165,90,.05);z-index:10}
.pkg.featured:hover{transform:scale(1.05) translateY(-10px)}
.pkg-badge{display:block;position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--gold);color:var(--ink);font-family:'Outfit',sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.2em;padding:6px 16px;border-radius:20px;box-shadow:0 5px 15px rgba(200,165,90,.3);white-space:nowrap;z-index:2}
.pkg h3{font-family:'Cormorant Garamond',serif;font-size:2.4rem;font-weight:400;color:var(--cream);margin-bottom:10px;letter-spacing:1px}
.pkg-price{font-family:'Outfit',sans-serif;font-size:2.2rem;font-weight:300;color:var(--gold-lt);margin-bottom:25px;letter-spacing:1px}
.pkg-price span{font-size:1rem;color:var(--smoke);letter-spacing:2px;text-transform:uppercase}
.pkg-desc{font-family:'Outfit',sans-serif;font-size:.95rem;color:var(--smoke);margin-bottom:30px;line-height:1.6}
.pkg-features{list-style:none;margin-bottom:40px;flex-grow:1;padding:0}
.pkg-features li{position:relative;padding-left:30px;margin-bottom:15px;font-family:'Outfit',sans-serif;font-size:.95rem;color:var(--ivory);font-weight:300;letter-spacing:0.5px}
.pkg-features li::before{content:'✦';position:absolute;left:0;color:var(--gold);font-size:.8rem;top:2px}
.pkg-btn{width:100%;padding:16px;background:transparent;border:1px solid rgba(212,175,55,.3);color:var(--gold);font-family:'Outfit',sans-serif;font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;transition:all .3s;border-radius:8px}
.pkg-btn:hover{background:var(--gold);color:var(--ink);border-color:var(--gold)}

/* QUOTE */
#quote-section{position:relative;padding:150px 50px;overflow:hidden;text-align:center}
.quote-bg{position:absolute;inset:0;background-image:url('https://images.unsplash.com/photo-1465495976277-4387d4b0b4c6?w=1600&q=80');background-size:cover;background-position:center;filter:brightness(.12);z-index:0}
.quote-text{font-family:'Cormorant Garamond',serif;font-size:3rem;font-style:italic;color:var(--cream);max-width:800px;margin:0 auto 20px;line-height:1.4;position:relative;z-index:2}
.quote-attr{font-family:'Outfit',sans-serif;font-size:.85rem;color:var(--gold);letter-spacing:.2em;text-transform:uppercase;position:relative;z-index:2}

/* TESTIMONIALS */
#testimonials{background:#050505}
.testimonials-header{text-align:center;margin-bottom:60px}
.testi-track{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;max-width:1300px;margin:0 auto}
.testi{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.04);border-radius:20px;padding:40px;transition:all .5s;backdrop-filter:blur(10px)}
.testi:hover{border-color:rgba(212,175,55,.2);transform:translateY(-5px);box-shadow:0 20px 40px rgba(0,0,0,.4)}
.stars{color:var(--gold);font-size:1.1rem;margin-bottom:20px;letter-spacing:4px}
.testi-text{font-family:'Outfit',sans-serif;font-size:.95rem;line-height:1.7;color:var(--smoke);margin-bottom:25px;font-style:italic}
.testi-meta{display:flex;align-items:center;gap:15px}
.testi-img{width:50px;height:50px;border-radius:50%;overflow:hidden;border:2px solid rgba(212,175,55,.3);flex-shrink:0}
.testi-img img{width:100%;height:100%;object-fit:cover}
.testi-name{font-family:'Outfit',sans-serif;font-weight:500;color:var(--cream);font-size:.9rem}
.testi-date{font-family:'Outfit',sans-serif;font-size:.75rem;color:var(--smoke)}

/* JOURNEY CARDS */
#process{background:linear-gradient(180deg,var(--obsidian) 0%,#080604 50%,var(--obsidian) 100%);position:relative;overflow:hidden}
#process::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(200,165,90,.06) 0%,transparent 60%);pointer-events:none}
.process-header{text-align:center;margin-bottom:70px}
.process-subtitle{font-family:'Outfit',sans-serif;font-size:1rem;color:var(--smoke);margin-top:10px;letter-spacing:.1em}
.journey-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;max-width:1300px;margin:0 auto}
.journey-card{position:relative;background:linear-gradient(160deg,rgba(200,165,90,.04) 0%,rgba(255,255,255,.01) 100%);border:1px solid rgba(200,165,90,.08);border-radius:24px;padding:50px 30px 40px;text-align:center;transition:all .6s var(--transition);overflow:hidden}
.journey-card::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:60%;height:1px;background:linear-gradient(90deg,transparent,rgba(200,165,90,.4),transparent)}
.journey-card:hover{transform:translateY(-12px);border-color:rgba(200,165,90,.3);box-shadow:0 30px 60px rgba(0,0,0,.6),0 0 40px rgba(200,165,90,.06)}
.journey-icon{width:70px;height:70px;margin:0 auto 25px;border-radius:50%;background:linear-gradient(135deg,rgba(200,165,90,.12),rgba(200,165,90,.03));border:1px solid rgba(200,165,90,.2);display:flex;align-items:center;justify-content:center;font-size:1.4rem;color:var(--gold);transition:all .5s;box-shadow:0 0 30px rgba(200,165,90,.05)}
.journey-card:hover .journey-icon{background:linear-gradient(135deg,rgba(200,165,90,.25),rgba(200,165,90,.08));box-shadow:0 0 40px rgba(200,165,90,.15);transform:scale(1.1)}
.journey-number{font-family:'Outfit',sans-serif;font-size:.7rem;letter-spacing:.3em;color:var(--gold-dark);text-transform:uppercase;margin-bottom:18px}
.journey-card h4{font-family:'Cormorant Garamond',serif;font-size:1.5rem;color:var(--cream);margin-bottom:15px}
.journey-card p{font-family:'Outfit',sans-serif;font-size:.88rem;color:var(--smoke);line-height:1.7}
.journey-glow{position:absolute;bottom:-50%;left:50%;transform:translateX(-50%);width:200px;height:200px;background:radial-gradient(circle,rgba(200,165,90,.08) 0%,transparent 70%);pointer-events:none;transition:opacity .5s;opacity:0}
.journey-card:hover .journey-glow{opacity:1}

/* CTA */
#cta-band{text-align:center;padding:120px 50px;background:radial-gradient(ellipse at center,rgba(200,165,90,.06) 0%,var(--obsidian) 70%)}
.cta-tagline{font-family:'Outfit',sans-serif;font-size:.9rem;color:var(--smoke);letter-spacing:.2em;text-transform:uppercase;margin-bottom:15px}
.cta-title{font-size:3.5rem;color:var(--cream);margin-bottom:40px}
.cta-title em{font-style:italic}
.cta-big-btn{padding:20px 50px;font-family:'Outfit',sans-serif;font-size:.85rem;letter-spacing:.2em;text-transform:uppercase;background:var(--gold);color:var(--ink);border:none;border-radius:30px;transition:all .4s;box-shadow:0 10px 40px rgba(200,165,90,.25)}
.cta-big-btn:hover{transform:translateY(-3px);box-shadow:0 15px 50px rgba(200,165,90,.4);background:var(--gold-lt)}

/* TEAM SWIPER 3D */
#team{background:linear-gradient(180deg,var(--obsidian),#060503,var(--obsidian));padding:120px 0;overflow:hidden}
.team-swiper{width:100%;padding:50px 0 80px}
.team-swiper .swiper-slide{width:350px;height:480px;border-radius:20px;overflow:visible;opacity:.35;transform:scale(.85);transition:all .5s var(--transition)}
.team-swiper .swiper-slide-active{opacity:1;transform:scale(1)}
.team-swiper .swiper-slide-prev,.team-swiper .swiper-slide-next{opacity:.55;transform:scale(.9)}
.swiper-pagination{bottom:10px!important}
.swiper-pagination-bullet{background:rgba(200,165,90,.3);width:8px;height:8px;opacity:1}
.swiper-pagination-bullet-active{background:var(--gold);width:24px;border-radius:4px}
.team-card-inner{position:relative;border-radius:20px;overflow:hidden;background:linear-gradient(180deg,rgba(200,165,90,.03),rgba(10,8,6,.95));border:1px solid rgba(200,165,90,.08);transition:all .6s var(--transition);box-shadow:0 15px 40px rgba(0,0,0,.5);height:100%}
.swiper-slide-active .team-card-inner{border-color:rgba(200,165,90,.25);box-shadow:0 30px 60px rgba(0,0,0,.7),0 0 60px rgba(200,165,90,.06)}
.team-card-img{position:relative;width:100%;height:360px;overflow:hidden}
.team-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--transition);filter:brightness(.85) contrast(1.05)}
.swiper-slide-active .team-card-img img{filter:brightness(1) contrast(1.1)}
.team-card-shine{position:absolute;inset:0;background:linear-gradient(135deg,transparent 40%,rgba(200,165,90,.1) 50%,transparent 60%);transform:translateX(-100%);transition:transform .8s}
.swiper-slide-active:hover .team-card-shine{transform:translateX(100%)}
.team-card-img::after{content:'';position:absolute;bottom:0;left:0;right:0;height:50%;background:linear-gradient(0deg,rgba(10,8,6,.95) 0%,transparent 100%);pointer-events:none}
.team-card-placeholder{width:100%;height:100%;background:linear-gradient(135deg,rgba(200,165,90,.08),rgba(200,165,90,.02));display:flex;align-items:center;justify-content:center;font-size:4rem;color:rgba(200,165,90,.15);font-family:'Cormorant Garamond',serif}
.team-card-info{position:relative;padding:20px 20px 30px;text-align:center;z-index:2;margin-top:-40px}
.team-card-info h3{font-size:1.2rem;color:var(--cream);margin-bottom:4px;letter-spacing:.02em}
.team-card-role{font-family:'Outfit',sans-serif;font-size:.75rem;color:var(--gold);letter-spacing:.15em;text-transform:uppercase;display:block;margin-bottom:10px}
.team-card-social{display:inline-flex;width:32px;height:32px;border-radius:50%;border:1px solid rgba(200,165,90,.25);align-items:center;justify-content:center;color:var(--gold);font-size:.8rem;transition:all .3s}
.team-card-social:hover{background:var(--gold);color:var(--ink);border-color:var(--gold)}

/* FOOTER */
footer{background:var(--champagne);padding:80px 50px 30px;border-top:1px solid rgba(200,165,90,.08)}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;max-width:1300px;margin:0 auto 60px}
.footer-brand p{font-size:.85rem;color:var(--smoke);line-height:1.7;margin-top:15px;font-family:'Outfit',sans-serif}
.footer-col h4{font-family:'Outfit',sans-serif;font-size:.75rem;text-transform:uppercase;letter-spacing:.2em;color:var(--gold);margin-bottom:20px}
.footer-col ul{list-style:none;padding:0}
.footer-col li{margin-bottom:12px;font-size:.85rem;color:var(--smoke);font-family:'Outfit',sans-serif}
.footer-bottom{border-top:1px solid rgba(255,255,255,.05);padding-top:25px;display:flex;justify-content:space-between;align-items:center;max-width:1300px;margin:0 auto}
.footer-copy{font-size:.75rem;color:rgba(245,239,228,.3);font-family:'Outfit',sans-serif}
.footer-socials{display:flex;gap:12px}
.social-btn{width:36px;height:36px;border-radius:50%;border:1px solid rgba(200,165,90,.2);display:flex;align-items:center;justify-content:center;font-size:.7rem;color:var(--smoke);transition:all .3s;font-family:'Outfit',sans-serif}
.social-btn:hover{border-color:var(--gold);color:var(--gold)}

/* MODAL */
#modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:10000;display:none;align-items:center;justify-content:center;backdrop-filter:blur(5px)}
#modal-overlay.open{display:flex}
.modal{background:var(--champagne);border:1px solid rgba(200,165,90,.15);max-width:650px;width:90%;max-height:90vh;overflow-y:auto;padding:50px;position:relative;border-radius:16px}
.modal-close{position:absolute;top:20px;right:20px;background:none;border:none;color:var(--smoke);font-size:1.5rem;transition:color .3s}
.modal-close:hover{color:var(--gold)}
.modal-header{text-align:center;margin-bottom:30px}
.modal-title{font-size:2rem;color:var(--cream)}
.form-row{display:flex;gap:15px;margin-bottom:0}
.form-group{flex:1;margin-bottom:15px}
.form-group.full{flex:1 1 100%}
.form-group label{display:block;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-bottom:6px;font-family:'Outfit',sans-serif}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;background:rgba(200,165,90,.03);border:1px solid rgba(200,165,90,.1);color:var(--cream);font-family:'Outfit',sans-serif;font-size:.88rem;outline:none;transition:border-color .3s;border-radius:6px}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:rgba(200,165,90,.4)}
.form-group textarea{min-height:100px;resize:vertical}
.form-group select option{background:var(--champagne)}
.form-submit{width:100%;padding:16px;background:var(--gold);color:var(--ink);border:none;font-family:'Outfit',sans-serif;font-size:.82rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;margin-top:10px;transition:all .3s;border-radius:6px}
.form-submit:hover{background:var(--gold-lt);transform:translateY(-2px);box-shadow:0 10px 30px rgba(200,165,90,.2)}
.form-note{text-align:center;font-size:.72rem;color:var(--smoke);margin-top:15px;font-family:'Outfit',sans-serif}
.form-success{text-align:center;padding:40px 20px}
.form-success .check{font-size:3rem;color:var(--gold);margin-bottom:20px}
.form-success h3{color:var(--cream);margin-bottom:10px}
.form-success p{color:var(--smoke);font-family:'Outfit',sans-serif}
.error-msg{background:rgba(200,50,50,.1);border:1px solid rgba(200,50,50,.3);color:#e07070;padding:12px;margin-bottom:15px;font-size:.85rem;text-align:center}

/* LIGHTBOX */
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.95);z-index:10001;display:none;align-items:center;justify-content:center}
.lightbox.open{display:flex}
.lightbox img{max-width:90%;max-height:90vh;object-fit:contain}
.lightbox-close{position:absolute;top:20px;right:20px;background:none;border:none;color:var(--cream);font-size:2rem}
.lightbox-nav{position:absolute;top:50%;background:none;border:none;color:var(--cream);font-size:3rem;transform:translateY(-50%);padding:20px}
.lightbox-prev{left:20px}
.lightbox-next{right:20px}

/* RESPONSIVE */
@media(max-width:1024px){
  .pkg-grid{grid-template-columns:repeat(2,1fr)}
  .pkg:nth-child(2){transform:none}
  .pkg:nth-child(2):hover{transform:translateY(-10px)}
  .intro-stats{grid-template-columns:repeat(2,1fr)}
  .testi-track{grid-template-columns:1fr 1fr}
  .masonry-gallery{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
  .journey-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
  #nav{padding:20px}
  .nav-links{display:none}
  .hamburger{display:flex}
  .hero-title{font-size:3rem}
  .hero-sub{font-size:.85rem}
  section{padding:80px 20px}
  .section-title{font-size:2.2rem}
  .pkg-grid{grid-template-columns:1fr}
  .testi-track{grid-template-columns:1fr}
  .intro-stats{grid-template-columns:1fr 1fr}
  .masonry-gallery{grid-template-columns:1fr 1fr;grid-auto-rows:200px}
  .masonry-item.tall{grid-row:span 1}
  .masonry-item.wide{grid-column:span 1}
  .journey-grid{grid-template-columns:1fr}
  .journey-card{padding:35px 25px 30px}
  .footer-grid{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column;gap:15px;text-align:center}
  #team{padding:60px 0}
  .team-swiper .swiper-slide{width:280px;height:400px}
  #quote-section{padding:80px 20px}
  .quote-text{font-size:1.8rem}
  .modal{padding:30px 20px}
}