*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --white:#fff;--w90:rgba(255,255,255,.9);--w70:rgba(255,255,255,.7);
  --w50:rgba(255,255,255,.5);--w30:rgba(255,255,255,.3);--w15:rgba(255,255,255,.15);
  --w08:rgba(255,255,255,.08);--w05:rgba(255,255,255,.05);
  --dark:#0a0a0a;--accent:#c9a96e;--accent-lt:#dfc495;
  --glass:rgba(255,255,255,.06);--glass-b:rgba(255,255,255,.1);
  --ff1:'Outfit',sans-serif;--ff2:'Inter',sans-serif;
}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:var(--ff2);color:var(--white);background:var(--dark);min-height:100vh;overflow:hidden;position:relative;-webkit-font-smoothing:antialiased}
::selection{background:rgba(201,169,110,.3);color:var(--white)}
::-webkit-scrollbar{display:none}

/* BG Slideshow */
.bg-slideshow{position:fixed;inset:0;z-index:0}
.bg-slide{position:absolute;inset:-40px;background-size:cover;background-position:center;opacity:0;transform:scale(1.08);transition:opacity 1.8s cubic-bezier(.4,0,.2,1),transform 8s cubic-bezier(.4,0,.2,1);will-change:opacity,transform}
.bg-slide.active{opacity:1;transform:scale(1)}
.bg-slide.zoom-out{transform:scale(1.12)}
@keyframes panLeft{from{transform:scale(1.08) translateX(0)}to{transform:scale(1.12) translateX(-20px)}}
@keyframes panRight{from{transform:scale(1.08) translateX(0)}to{transform:scale(1.12) translateX(20px)}}
.bg-slide.pan-left{animation:panLeft 8s cubic-bezier(.4,0,.2,1) forwards}
.bg-slide.pan-right{animation:panRight 8s cubic-bezier(.4,0,.2,1) forwards}

/* Overlay */
.overlay{position:fixed;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,.45) 40%,rgba(0,0,0,.5) 70%,rgba(0,0,0,.75) 100%),radial-gradient(ellipse at center,transparent 0%,rgba(0,0,0,.3) 100%);pointer-events:none}

/* Particles */
.particles{position:fixed;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.particle{position:absolute;width:2px;height:2px;background:var(--w30);border-radius:50%;animation:floatP linear infinite}
@keyframes floatP{0%{transform:translateY(100vh) scale(0);opacity:0}10%{opacity:1;transform:translateY(90vh) scale(1)}90%{opacity:.5}100%{transform:translateY(-10vh) scale(0);opacity:0}}

/* Content */
.content{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:40px 24px;text-align:center}

/* Logo */
.logo-wrapper{margin-bottom:32px;opacity:0;transform:translateY(-30px);animation:fsd 1s cubic-bezier(.16,1,.3,1) .3s forwards;position:relative}
.logo-wrapper::before{content:'';position:absolute;width:300px;height:300px;background:radial-gradient(circle,rgba(201,169,110,.08) 0%,transparent 70%);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;animation:glowP 4s ease-in-out infinite}
@keyframes glowP{0%,100%{opacity:.5;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}}
.logo{width:180px;height:auto;filter:drop-shadow(0 4px 20px rgba(0,0,0,.3));transition:transform .6s cubic-bezier(.16,1,.3,1)}
.logo:hover{transform:scale(1.05)}

/* Divider */
.divider{width:60px;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent);margin-bottom:36px;opacity:0;transform:scaleX(0);animation:expDiv 1s cubic-bezier(.16,1,.3,1) .7s forwards}
@keyframes expDiv{to{opacity:1;transform:scaleX(1)}}

/* Coming Soon */
.coming-soon-wrapper{margin-bottom:48px}
.coming-soon-text{font-family:var(--ff1);font-size:clamp(2.2rem,6vw,4.5rem);font-weight:600;letter-spacing:.25em;line-height:1.2;margin-bottom:16px;text-transform:uppercase;color:var(--white);text-shadow:0 2px 20px rgba(0,0,0,.5),0 4px 40px rgba(0,0,0,.3)}
.letter{display:inline-block;opacity:0;transform:translateY(40px) rotateX(40deg);animation:ltr .8s cubic-bezier(.16,1,.3,1) forwards;animation-delay:calc(.9s + var(--delay)*.06s)}
@keyframes ltr{to{opacity:1;transform:translateY(0) rotateX(0)}}
.space-sm{display:inline-block;width:.15em}
.tagline{font-family:var(--ff2);font-size:clamp(.85rem,2vw,1.05rem);font-weight:400;color:var(--w90);letter-spacing:.15em;text-transform:uppercase;opacity:0;transform:translateY(20px);animation:fsu 1s cubic-bezier(.16,1,.3,1) 1.8s forwards;text-shadow:0 1px 10px rgba(0,0,0,.4)}

/* Contact */
.contact-section{opacity:0;transform:translateY(30px);animation:fsu 1s cubic-bezier(.16,1,.3,1) 2.2s forwards}
.contact-label{font-family:var(--ff2);font-size:.7rem;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);margin-bottom:20px}
.contact-cards{display:flex;gap:16px;flex-wrap:wrap;justify-content:center}
.contact-card{display:flex;align-items:center;gap:14px;padding:16px 24px;background:var(--glass);border:1px solid var(--glass-b);border-radius:16px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);text-decoration:none;color:var(--white);transition:all .4s cubic-bezier(.16,1,.3,1);cursor:pointer;position:relative;overflow:hidden;min-width:280px}
.contact-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(201,169,110,.1) 0%,transparent 60%);opacity:0;transition:opacity .4s ease}
.contact-card:hover{border-color:rgba(201,169,110,.3);transform:translateY(-3px);box-shadow:0 10px 40px rgba(0,0,0,.3),0 0 0 1px rgba(201,169,110,.1)}
.contact-card:hover::before{opacity:1}
.contact-card:hover .contact-arrow{transform:translateX(4px);opacity:1}
.contact-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--w08);border-radius:12px;color:var(--accent);flex-shrink:0;transition:background .3s ease;position:relative;z-index:1}
.contact-card:hover .contact-icon{background:rgba(201,169,110,.15)}
.contact-info{display:flex;flex-direction:column;align-items:flex-start;gap:3px;position:relative;z-index:1}
.contact-type{font-size:.65rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--w50)}
.contact-value{font-family:var(--ff1);font-size:.95rem;font-weight:400;color:var(--w90);letter-spacing:.02em}
.contact-arrow{margin-left:auto;opacity:0;transform:translateX(-4px);transition:all .4s cubic-bezier(.16,1,.3,1);color:var(--accent);position:relative;z-index:1}

/* Footer */
.footer{position:absolute;bottom:24px;left:0;right:0;text-align:center;opacity:0;animation:fi 1s cubic-bezier(.16,1,.3,1) 2.8s forwards}
.footer p{font-size:.75rem;font-weight:400;color:var(--w70);letter-spacing:.1em;text-shadow:0 1px 8px rgba(0,0,0,.4)}

/* Progress */
.slide-progress{position:fixed;bottom:0;left:0;right:0;height:2px;background:var(--w08);z-index:10}
.slide-progress-bar{height:100%;width:0;background:linear-gradient(90deg,var(--accent),var(--accent-lt));transition:width .1s linear}

/* Indicators */
.slide-indicators{position:fixed;right:30px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:12px;z-index:10;opacity:0;animation:fi 1s ease 3s forwards}
.indicator{width:8px;height:8px;border-radius:50%;border:1px solid var(--w30);background:transparent;cursor:pointer;transition:all .5s cubic-bezier(.16,1,.3,1);padding:0}
.indicator.active{background:var(--accent);border-color:var(--accent);transform:scale(1.3)}
.indicator:hover:not(.active){border-color:var(--w70);background:var(--w15)}

/* Keyframes */
@keyframes fsd{to{opacity:1;transform:translateY(0)}}
@keyframes fsu{to{opacity:1;transform:translateY(0)}}
@keyframes fi{to{opacity:1}}

/* Responsive */
@media(max-width:768px){
  .content{padding:30px 20px}
  .logo{width:140px}
  .contact-cards{flex-direction:column;align-items:center}
  .contact-card{min-width:260px;width:100%;max-width:340px}
  .slide-indicators{right:16px}
  .coming-soon-text{letter-spacing:.2em}
}
@media(max-width:480px){
  .logo{width:120px}
  .coming-soon-text{letter-spacing:.15em}
  .contact-card{padding:14px 18px;min-width:240px}
  .tagline{font-size:.75rem;letter-spacing:.1em}
}
