/* ============ ZYANA HOLIDAYS — MODERN THEME ============ */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@500;600;700;800&family=Poppins:wght@300;400;500;600;700&display=swap');

:root{
  --gold:#d4af6a;
  --gold-dark:#a67c2e;
  --gold-light:#f1dfae;
  --gold-grad:linear-gradient(135deg,#e8c77a 0%,#c09340 100%);
  --dark:#0f1419;
  --soft:#1e2530;
  --cream:#fbf9f4;
  --white:#ffffff;
  --muted:#7a8291;
  --line:rgba(212,175,106,.25);
  --shadow-sm:0 4px 20px rgba(15,20,25,.06);
  --shadow-md:0 15px 45px rgba(15,20,25,.1);
  --shadow-lg:0 30px 80px rgba(15,20,25,.18);
  --shadow-gold:0 15px 40px rgba(212,175,106,.35);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{
  font-family:'Poppins',sans-serif;
  color:#3a4250;
  background:var(--white);
  line-height:1.75;
  font-size:15px;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,h5,h6{
  font-family:'Playfair Display',serif;
  font-weight:700;
  color:var(--dark);
  line-height:1.25;
  letter-spacing:-.5px;
}
a{text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1)}
img{max-width:100%;display:block}
section{padding:120px 0;position:relative;overflow:hidden}

/* ============ LOADER ============ */
#loader{
  position:fixed;inset:0;background:var(--white);z-index:99999;
  display:flex;align-items:center;justify-content:center;
  transition:opacity .6s,visibility .6s;
}
#loader.hide{opacity:0;visibility:hidden}
.loader-ring{
  width:60px;height:60px;border-radius:50%;
  border:3px solid transparent;border-top-color:var(--gold);
  border-right-color:var(--gold);animation:spin 1s linear infinite;
}
@keyframes spin{to{transform:rotate(360deg)}}

/* ============ NAVBAR ============ */
.navbar{
  background:rgba(255,255,255,.08)!important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  padding:10px 0;
  transition:all .45s cubic-bezier(.4,0,.2,1);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.navbar.scrolled{
  padding:10px 0;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 10px 40px rgba(15,20,25,.08);
  border-bottom-color:transparent;
}
.navbar-brand{padding:0}
.navbar-brand img{
  width: 150px;
  transition:all .4s;
}
.navbar.scrolled .navbar-brand img{
  width: 150px;
  background:transparent;padding:0;box-shadow:none;
}
.navbar-nav{align-items:center;gap:4px}
.navbar-nav .nav-link{
  color:#fff!important;
  font-weight:500;font-size:14px;
  padding:10px 18px!important;
  position:relative;
  letter-spacing:.3px;
  text-transform:uppercase;
}
.navbar.scrolled .navbar-nav .nav-link{color:var(--dark)!important}
.navbar-nav .nav-link::before{
  content:"";position:absolute;left:50%;bottom:4px;
  width:0;height:2px;background:var(--gold);
  transition:all .4s cubic-bezier(.4,0,.2,1);transform:translateX(-50%);
}
.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active{color:var(--gold)!important}
.navbar-nav .nav-link:hover::before,
.navbar-nav .nav-link.active::before{width:22px}

/* Dropdown caret — custom */
.nav-item.dropdown > .nav-link::after{
  display:inline-block;
  content:"";
  width:6px;height:6px;
  margin-left:7px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
  border-top:0;border-left:0;
  vertical-align:middle;
  transition:transform .3s;
}
.nav-item.dropdown:hover > .nav-link::after{
  transform:rotate(-135deg) translateY(-2px);
}

/* Hover dropdown */
.nav-item.dropdown .dropdown-menu{
  display:block;
  opacity:0;visibility:hidden;
  transform:translateY(15px);
  transition:all .35s cubic-bezier(.4,0,.2,1);
  margin-top:0;
  border:none;
  border-radius:14px;
  box-shadow:0 25px 60px rgba(15,20,25,.18);
  padding:12px;
  min-width:240px;
  background:#fff;
  pointer-events:none;
}
.nav-item.dropdown:hover .dropdown-menu{
  opacity:1;visibility:visible;
  transform:translateY(8px);
  pointer-events:auto;
}
.dropdown-menu::before{
  content:"";position:absolute;top:-6px;left:30px;
  width:12px;height:12px;background:#fff;
  transform:rotate(45deg);border-radius:2px;
}
.dropdown-item{
  padding:13px 18px;
  border-radius:10px;
  font-weight:500;font-size:14px;
  color:var(--dark);
  display:flex;align-items:center;gap:12px;
  transition:all .3s;
}
.dropdown-item i{
  width:34px;height:34px;border-radius:9px;
  background:var(--gold-light);color:var(--gold-dark);
  display:flex;align-items:center;justify-content:center;
  transition:all .3s;
}
.dropdown-item:hover{
  background:var(--cream);color:var(--gold-dark);
  transform:translateX(5px);
}
.dropdown-item:hover i{
  background:var(--gold-grad);color:#fff;
}
.navbar-toggler{border:none;color:#fff;font-size:26px;padding:0}
.navbar-toggler:focus{box-shadow:none}
.navbar.scrolled .navbar-toggler{color:var(--dark)}

/* CTA nav button */
.nav-cta{
  margin-left:10px;
  padding:11px 26px!important;
  background:var(--gold-grad);
  color:#fff!important;
  border-radius:50px;
  box-shadow:var(--shadow-gold);
}
.nav-cta::before{display:none}
.nav-cta:hover{transform:translateY(-2px);color:#fff!important}

/* ============ HERO ============ */
.hero{
  min-height:100vh;
  position:relative;
  display:flex;align-items:center;
  color:#fff;
  padding:170px 0 80px;
  overflow:hidden;
}
.hero-bg{
  position:absolute;inset:0;
  background:url('https://images.unsplash.com/photo-1507525428034-b723cf961d3e?w=1920&q=80') center/cover;
  z-index:-2;
  animation:heroZoom 20s ease-in-out infinite alternate;
}
@keyframes heroZoom{
  from{transform:scale(1)}
  to{transform:scale(1.12)}
}
.hero::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(120deg,rgba(15,20,25,.85) 0%,rgba(15,20,25,.55) 50%,rgba(15,20,25,.75) 100%);
  z-index:-1;
}
.hero-badge{
  display:inline-flex;align-items:center;gap:10px;
  padding:8px 20px;
  background:rgba(255,255,255,.08);
  backdrop-filter:blur(10px);
  border:1px solid rgba(212,175,106,.4);
  border-radius:50px;
  color:var(--gold-light);
  font-size:12px;font-weight:500;
  letter-spacing:2px;text-transform:uppercase;
  margin-bottom:30px;
}
.hero-badge::before{
  content:"";width:6px;height:6px;border-radius:50%;
  background:var(--gold);box-shadow:0 0 10px var(--gold);
  animation:pulse 2s infinite;
}
@keyframes pulse{
  0%,100%{opacity:1}
  50%{opacity:.4}
}
.hero h1{
  font-size:5rem;color:#fff;
  margin-bottom:25px;font-weight:700;
  letter-spacing:-2px;line-height:1.05;
}
.hero h1 .accent{
  background:linear-gradient(135deg,#f5d98f 0%,#d4af6a 50%,#a67c2e 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  font-style:italic;
  font-family:'Playfair Display',serif;
}
.hero p{
  font-size:1.1rem;max-width:620px;
  color:rgba(255,255,255,.85);
  margin-bottom:40px;font-weight:300;
}
.hero-stats{
  display:flex;gap:50px;margin-top:60px;
  padding-top:40px;
  border-top:1px solid rgba(255,255,255,.12);
}
.hero-stat .num{
  font-family:'Playfair Display',serif;
  font-size:2.5rem;font-weight:700;
  color:var(--gold-light);line-height:1;
}
.hero-stat .lbl{
  font-size:12px;text-transform:uppercase;
  letter-spacing:2px;color:rgba(255,255,255,.7);
  margin-top:8px;
}
.scroll-down{
  position:absolute;bottom:40px;left:50%;transform:translateX(-50%);
  color:#fff;font-size:12px;letter-spacing:3px;text-transform:uppercase;
  text-align:center;opacity:.8;
}
.scroll-down::after{
  content:"";display:block;width:1px;height:40px;
  background:var(--gold);margin:12px auto 0;
  animation:scrollLine 2s ease-in-out infinite;
}
@keyframes scrollLine{
  0%,100%{transform:scaleY(1);opacity:1}
  50%{transform:scaleY(.4) translateY(15px);opacity:.3}
}

/* ============ BUTTONS ============ */
.btn-gold,.btn-outline-gold{
  padding:14px 38px;
  font-weight:600;font-size:13px;
  letter-spacing:2px;text-transform:uppercase;
  border-radius:50px;
  transition:all .5s cubic-bezier(.4,0,.2,1);
  position:relative;overflow:hidden;
  display:inline-flex;align-items:center;gap:10px;
  border:none;cursor:pointer;
}
.btn-gold{
  background:var(--gold-grad);color:#fff;
  box-shadow:var(--shadow-gold);
}
.btn-gold::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(135deg,#a67c2e 0%,#e8c77a 100%);
  opacity:0;transition:opacity .5s;z-index:0;
}
.btn-gold span,.btn-gold i{position:relative;z-index:1}
.btn-gold:hover{
  transform:translateY(-4px);color:#fff;
  box-shadow:0 25px 50px rgba(212,175,106,.5);
}
.btn-gold:hover::before{opacity:1}
.btn-outline-gold{
  background:transparent;color:#fff;
  border:2px solid rgba(255,255,255,.4);
}
.btn-outline-gold:hover{
  background:#fff;color:var(--dark);
  border-color:#fff;transform:translateY(-4px);
}

/* ============ SECTION TITLE ============ */
.section-title{text-align:center;margin-bottom:80px;max-width:750px;margin-left:auto;margin-right:auto}
.section-title .small-label{
  display:inline-flex;align-items:center;gap:12px;
  color:var(--gold-dark);font-weight:600;
  letter-spacing:4px;text-transform:uppercase;font-size:12px;
  margin-bottom:20px;
}
.section-title .small-label::before,
.section-title .small-label::after{
  content:"";width:30px;height:1px;background:var(--gold);
}
.section-title h2{
  font-size:3.4rem;
  line-height:1.15;
}
.section-title h2 .accent{
  font-style:italic;
  background:var(--gold-grad);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}
.section-title p{color:var(--muted);margin-top:22px;font-size:1.02rem}

.bg-cream{background:var(--cream)}
.bg-soft{background:linear-gradient(180deg,#fff 0%,var(--cream) 100%)}

/* ============ ABOUT ============ */
.about-visual{position:relative;padding:20px}
.about-visual .main-img{
  border-radius:20px;overflow:hidden;
  box-shadow:var(--shadow-lg);
  position:relative;
}
.about-visual .main-img img{
  width:100%;aspect-ratio:4/5;object-fit:cover;
  transition:transform 1.2s;
}
.about-visual:hover .main-img img{transform:scale(1.05)}
.about-visual .accent-shape{
  position:absolute;top:0;left:0;right:40px;bottom:40px;
  border:2px solid var(--gold);border-radius:20px;z-index:-1;
}
.about-visual .floating-card{
  position:absolute;bottom:40px;right:-20px;
  background:#fff;padding:25px 30px;
  border-radius:16px;
  box-shadow:var(--shadow-lg);
  display:flex;align-items:center;gap:18px;
}
.about-visual .floating-card i{
  width:55px;height:55px;border-radius:50%;
  background:var(--gold-grad);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;
}
.about-visual .floating-card .num{
  font-family:'Playfair Display',serif;
  font-size:1.8rem;font-weight:700;color:var(--dark);line-height:1;
}
.about-visual .floating-card .lbl{
  font-size:11px;letter-spacing:2px;color:var(--muted);
  text-transform:uppercase;margin-top:4px;
}
.about-text .small-label{
  display:inline-flex;align-items:center;gap:12px;
  color:var(--gold-dark);font-weight:600;
  letter-spacing:4px;text-transform:uppercase;font-size:12px;
  margin-bottom:18px;
}
.about-text .small-label::before{
  content:"";width:30px;height:1px;background:var(--gold);
}
.about-text h2{font-size:2.8rem;margin-bottom:22px}
.about-text h2 .accent{
  font-style:italic;
  background:var(--gold-grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.about-text p{color:var(--muted);margin-bottom:18px}
.about-features{list-style:none;padding:0;margin:30px 0;display:grid;grid-template-columns:1fr 1fr;gap:15px}
.about-features li{
  display:flex;align-items:center;gap:12px;
  font-weight:500;color:var(--dark);font-size:14px;
}
.about-features li i{
  width:28px;height:28px;border-radius:50%;
  background:var(--gold-light);color:var(--gold-dark);
  display:flex;align-items:center;justify-content:center;
  font-size:11px;
}

/* ============ SERVICE CARDS ============ */
.service-card{
  background:#fff;border-radius:20px;overflow:hidden;
  box-shadow:var(--shadow-sm);
  transition:all .6s cubic-bezier(.4,0,.2,1);
  height:100%;position:relative;
  border:1px solid transparent;
}
.service-card:hover{
  transform:translateY(-15px);
  box-shadow:var(--shadow-lg);
  border-color:var(--line);
}
.service-card-img{position:relative;overflow:hidden;aspect-ratio:4/3}
.service-card-img img{
  width:100%;height:100%;object-fit:cover;
  transition:transform 1s cubic-bezier(.4,0,.2,1);
}
.service-card:hover .service-card-img img{transform:scale(1.12)}
.service-card-img::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 40%,rgba(15,20,25,.5) 100%);
}
.service-card-num{
  position:absolute;top:20px;left:20px;
  width:42px;height:42px;border-radius:50%;
  background:rgba(255,255,255,.95);
  color:var(--gold-dark);
  display:flex;align-items:center;justify-content:center;
  font-weight:700;font-size:13px;
  z-index:2;
}
.service-card .card-body{padding:35px 30px;text-align:left;position:relative}
.service-card .icon-badge{
  position:absolute;top:-30px;right:30px;
  width:60px;height:60px;border-radius:50%;
  background:var(--gold-grad);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:1.3rem;
  box-shadow:var(--shadow-gold);
  transition:all .5s;
}
.service-card:hover .icon-badge{transform:rotate(360deg) scale(1.1)}
.service-card h4{margin-bottom:14px;font-size:1.5rem;transition:color .3s}
.service-card:hover h4{color:var(--gold-dark)}
.service-card p{color:var(--muted);font-size:14px;margin-bottom:18px}
.service-card .learn-more{
  color:var(--gold-dark);font-weight:600;font-size:13px;
  letter-spacing:1px;text-transform:uppercase;
  display:inline-flex;align-items:center;gap:8px;
}
.service-card .learn-more i{transition:transform .3s}
.service-card:hover .learn-more i{transform:translateX(6px)}

/* ============ SERVICE BLOCKS ============ */
.service-block{padding:130px 0}
.service-block:nth-of-type(even){background:var(--cream)}
.service-block .service-head{text-align:center;max-width:800px;margin:0 auto 70px}
.service-block .service-head .small-label{
  display:inline-flex;align-items:center;gap:12px;
  color:var(--gold-dark);font-weight:600;
  letter-spacing:4px;text-transform:uppercase;font-size:12px;margin-bottom:20px;
}
.service-block .service-head .small-label::before,
.service-block .service-head .small-label::after{
  content:"";width:30px;height:1px;background:var(--gold);
}
.service-block .service-head h2{font-size:3rem;margin-bottom:25px}
.service-block .service-head h2 .accent{
  font-style:italic;
  background:var(--gold-grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.service-block .service-head p{color:var(--muted);font-size:1rem}

/* ============ GALLERY ============ */
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.gallery-item{
  position:relative;overflow:hidden;border-radius:16px;
  aspect-ratio:1/1;cursor:pointer;
  box-shadow:var(--shadow-sm);
}
.gallery-item img{
  width:100%;height:100%;object-fit:cover;
  transition:all .8s cubic-bezier(.4,0,.2,1);
}
.gallery-item::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 40%,rgba(166,124,46,.85) 100%);
  opacity:0;transition:all .5s;z-index:1;
}
.gallery-item::after{
  content:"\f00e";font-family:"Font Awesome 6 Free";font-weight:900;
  position:absolute;left:50%;top:50%;
  transform:translate(-50%,-50%) scale(.5);
  color:#fff;font-size:1.5rem;
  width:55px;height:55px;border-radius:50%;
  background:rgba(255,255,255,.2);backdrop-filter:blur(8px);
  border:1.5px solid rgba(255,255,255,.5);
  display:flex;align-items:center;justify-content:center;
  opacity:0;transition:all .5s;z-index:2;
}
.gallery-item:hover::before{opacity:1}
.gallery-item:hover::after{opacity:1;transform:translate(-50%,-50%) scale(1)}
.gallery-item:hover img{transform:scale(1.2) rotate(2deg)}
@media(max-width:991px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:576px){.gallery-grid{grid-template-columns:repeat(2,1fr);gap:12px}}

/* ============ MINI CONTACT ============ */
.mini-contact{
  background:#fff;
  padding:50px;border-radius:24px;
  box-shadow:var(--shadow-md);
  margin-top:70px;
  border:1px solid var(--line);
  position:relative;overflow:hidden;
}
.mini-contact::before{
  content:"";position:absolute;top:-80px;right:-80px;
  width:220px;height:220px;border-radius:50%;
  background:radial-gradient(circle,rgba(212,175,106,.15),transparent 70%);
}
.mini-contact h4{
  text-align:center;margin-bottom:10px;font-size:1.8rem;
  position:relative;
}
.mini-contact .sub{
  text-align:center;color:var(--muted);margin-bottom:35px;
  font-size:14px;
}

/* FORMS */
.form-control,.form-select{
  border:1.5px solid #eae6da;
  border-radius:12px;
  padding:15px 20px;
  background:#fcfaf4;
  font-size:14px;
  transition:all .35s;
  font-family:inherit;
}
.form-control:focus,.form-select:focus{
  border-color:var(--gold);
  box-shadow:0 0 0 4px rgba(212,175,106,.12);
  background:#fff;outline:none;
}
.form-control::placeholder{color:#a8afbd}

/* ============ MAIN CONTACT ============ */
.contact-wrap{
  background:#fff;padding:70px;border-radius:30px;
  box-shadow:var(--shadow-lg);
  position:relative;overflow:hidden;
}
.contact-wrap::before{
  content:"";position:absolute;top:-100px;left:-100px;
  width:300px;height:300px;border-radius:50%;
  background:radial-gradient(circle,rgba(212,175,106,.15),transparent 70%);
}
.contact-info-item{
  display:flex;align-items:flex-start;margin-bottom:30px;
  transition:transform .35s;
}
.contact-info-item:hover{transform:translateX(5px)}
.contact-info-item .ico{
  width:55px;height:55px;border-radius:16px;
  background:var(--gold-grad);color:#fff;
  display:flex;align-items:center;justify-content:center;
  margin-right:20px;flex-shrink:0;font-size:1.1rem;
  box-shadow:var(--shadow-gold);
}
.contact-info-item h5{
  margin:0 0 6px;font-size:1.1rem;
  font-family:'Poppins',sans-serif;font-weight:600;
}
.contact-info-item p{margin:0;color:var(--muted);font-size:14px}

/* ============ FOOTER ============ */
footer{
  background:var(--dark);color:#a8afbd;padding:90px 0 30px;
  position:relative;overflow:hidden;
}
footer::before{
  content:"";position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
}
footer h5{
  color:#fff;margin-bottom:25px;font-size:1.2rem;
  font-family:'Poppins',sans-serif;font-weight:600;
  position:relative;padding-bottom:15px;
}
footer h5::after{
  content:"";position:absolute;bottom:0;left:0;
  width:35px;height:2px;background:var(--gold);
}
footer p{font-size:14px;line-height:1.8}
footer a{color:#a8afbd;font-size:14px;transition:all .3s}
footer a:hover{color:var(--gold-light);padding-left:6px}
footer ul{list-style:none;padding:0}
footer ul li{padding:8px 0;transition:transform .3s}
footer ul li i{color:var(--gold);margin-right:8px;font-size:10px}
.footer-brand img{
  height:65px;background:#fff;padding:10px 15px;
  border-radius:12px;margin-bottom:20px;
}
.social-links{display:flex;gap:12px;margin-top:25px}
.social-links a{
  width:42px;height:42px;border-radius:12px;
  background:rgba(255,255,255,.05);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:15px;border:1px solid rgba(255,255,255,.08);
  transition:all .4s;
}
.social-links a:hover{
  background:var(--gold-grad);color:#fff;
  transform:translateY(-4px);padding-left:0;
  border-color:transparent;
  box-shadow:var(--shadow-gold);
}
.newsletter{display:flex;gap:0;margin-top:15px}
.newsletter input{
  flex:1;padding:13px 18px;border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.04);color:#fff;
  border-radius:12px 0 0 12px;font-size:13px;
  font-family:inherit;outline:none;
}
.newsletter input::placeholder{color:#7a8291}
.newsletter button{
  padding:0 22px;border:none;border-radius:0 12px 12px 0;
  background:var(--gold-grad);color:#fff;font-weight:600;
  cursor:pointer;transition:all .3s;
}
.newsletter button:hover{filter:brightness(1.1)}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.08);
  margin-top:60px;padding-top:30px;
  text-align:center;color:#6b7280;font-size:13px;
}
.footer-bottom i{color:var(--gold)}

/* ============ PAGE BANNER ============ */
.page-banner{
  height:420px;
  background:linear-gradient(120deg,rgba(15,20,25,.85),rgba(15,20,25,.55)),
    url('https://images.unsplash.com/photo-1488646953014-85cb44e25828?w=1920&q=80') center/cover;
  display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;
  position:relative;
}
.page-banner .hero-badge{margin-bottom:20px}
.page-banner h1{color:#fff;font-size:4rem}
.page-banner h1 .accent{
  font-style:italic;
  background:var(--gold-grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.breadcrumb-nav{
  margin-top:15px;font-size:13px;
  color:rgba(255,255,255,.8);letter-spacing:2px;text-transform:uppercase;
}
.breadcrumb-nav a{color:var(--gold-light)}
.breadcrumb-nav a:hover{color:#fff}
.breadcrumb-nav span{margin:0 12px;color:var(--gold)}

/* ============ SCROLL TOP ============ */
#scrollTop{
  position:fixed;bottom:30px;right:30px;
  width:52px;height:52px;border-radius:50%;
  background:var(--gold-grad);color:#fff;border:none;
  display:none;align-items:center;justify-content:center;
  box-shadow:var(--shadow-gold);z-index:999;
  transition:all .4s;font-size:15px;
}
#scrollTop:hover{transform:translateY(-5px) scale(1.05)}

/* ============ REVEAL ANIMATIONS ============ */
.reveal{
  opacity:0;transform:translateY(40px);
  transition:all 1s cubic-bezier(.25,.46,.45,.94);
}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-left{opacity:0;transform:translateX(-50px);transition:all 1s cubic-bezier(.25,.46,.45,.94)}
.reveal-left.visible{opacity:1;transform:translateX(0)}
.reveal-right{opacity:0;transform:translateX(50px);transition:all 1s cubic-bezier(.25,.46,.45,.94)}
.reveal-right.visible{opacity:1;transform:translateX(0)}
.reveal-scale{opacity:0;transform:scale(.9);transition:all 1s cubic-bezier(.25,.46,.45,.94)}
.reveal-scale.visible{opacity:1;transform:scale(1)}

/* ============ RESPONSIVE ============ */
@media(max-width:991px){
  .navbar{background:rgba(15,20,25,.95)!important;backdrop-filter:blur(14px)}
  .navbar-brand img{filter:none}
  .navbar-collapse{
    background:#fff;margin-top:15px;padding:20px;
    border-radius:16px;box-shadow:var(--shadow-md);
  }
  .navbar-nav .nav-link{color:var(--dark)!important}
  .nav-item.dropdown .dropdown-menu{
    position:static;opacity:1;visibility:visible;
    transform:none;box-shadow:none;padding:5px 10px;
    pointer-events:auto;
  }
  .dropdown-menu::before{display:none}
  .hero h1{font-size:3rem}
  .section-title h2,.service-block .service-head h2{font-size:2.2rem}
  .about-text h2{font-size:2rem}
  .about-features{grid-template-columns:1fr}
  .about-visual .floating-card{right:10px;bottom:10px;padding:18px 22px}
  .contact-wrap,.mini-contact{padding:35px 25px}
  section{padding:80px 0}
  .service-block{padding:90px 0}
  .hero-stats{gap:25px;flex-wrap:wrap}
}
@media(max-width:576px){
  .hero h1{font-size:2.3rem}
  .hero p{font-size:1rem}
  .section-title h2,.service-block .service-head h2{font-size:1.8rem}
  .btn-gold,.btn-outline-gold{padding:12px 25px;font-size:11px}
}
