/* ===============================
   HEADER 
================================ */

:root{
  --header-height: 96px;
  --header-height-shrink: 76px;
}

/* HEADER */
.main-header{
  position: fixed;
  top:0;
  left:0;
  width:100%;
  height: var(--header-height);
  z-index:1000;

  display:flex;
  align-items:center;

  background: rgba(10,14,30,0.85);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);

  border-bottom:1px solid rgba(255,255,255,0.06);
  transition: height .35s ease, background .35s ease, box-shadow .35s ease;
}

.main-header.shrink{
  height: var(--header-height-shrink);
  background: rgba(8,10,20,0.95);
  box-shadow: 0 15px 40px rgba(0,0,0,0.5);
}

/* CONTAINER */
.header-container{
  display:flex;
  align-items:center;
  justify-content:space-between;

  width:100%;
  max-width:1200px;

  margin:0 auto;
  padding:0 24px;
}

/* ===============================
   LOGO
================================ */

.logo{
  display:flex;
  align-items:center;
}

.logo img{
  height:80px;
  width:auto;
  object-fit:contain;
  transition:transform .3s ease;
}

.logo:hover img{
  transform:scale(1.05);
}
/* NAVIGATION */
.nav-list{
  display:flex;
  align-items:center;
  gap:30px;
  list-style:none;
  margin:0;
  padding:0;
}

/* DROPDOWN OFFRES */

.nav-item.has-dropdown {
  position: relative;
}

.nav-item.has-dropdown .dropdown {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;

  background: rgba(10, 14, 30, 0.95);
  backdrop-filter: blur(12px);

  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 8px;

  padding: 8px 0;
  min-width: 220px;

  z-index: 2000;

  flex-direction: column;
}

.nav-item.has-dropdown:hover .dropdown,
.nav-item.has-dropdown:focus-within .dropdown{
  display:flex;
}

.nav-item.has-dropdown .dropdown a{
  display:block;
  padding:10px 20px;
  color:#fff;
  text-decoration:none;
  font-weight:500;
  white-space:nowrap;
  transition:background .3s;
}

.nav-item.has-dropdown .dropdown a:hover{
  background:rgba(255,255,255,0.05);
}

/* NAV LINKS */

.nav-list a{
  position:relative;
  text-decoration:none;
  color:#fff;
  font-weight:500;
  opacity:.85;
  transition:.3s;
}

.nav-list a:hover{
  opacity:1;
  transform:translateY(-2px);
}

/* CTA */

.btn-header{
  background:linear-gradient(135deg,#7C5CFF,#5A3DFF);
  padding:12px 22px;
  border-radius:40px;
  font-weight:600;
  color:#fff !important;
  text-decoration:none;
  transition:.3s;
  box-shadow:0 15px 40px rgba(124,92,255,0.4);
}

.btn-header:hover{
  transform:translateY(-3px);
  box-shadow:0 20px 50px rgba(124,92,255,0.6);
}

/* ===============================
   BURGER MENU
================================ */

.menu-toggle{
  display:none;
  background:none;
  border:none;
  cursor:pointer;
  z-index:1100;
}

.menu-toggle span{
  display:block;
  width:26px;
  height:2px;
  background:#fff;
  margin:6px 0;
  transition:.3s;
}

/* ===============================
   MOBILE
================================ */

@media(max-width:992px){

  .nav{
    display:none;
  }

  .menu-toggle{
    display:block;
  }

}

/* ================= PREMIUM MOBILE HERO FIX ================= */

@media (max-width: 768px) {

.hero {
    padding: 60px 20px 80px;
    text-align: center;
}

.hero h1 {
    font-size: 34px;
    line-height: 1.2;
}

.hero p {
    font-size: 16px;
    line-height: 1.6;
    margin-top: 20px;
}

.hero .cta {
    display: block;
    width: 100%;
    margin: 30px auto 0;
    text-align: center;
}

}

/* ================= PREMIUM CTA ================= */

.cta {
    background: linear-gradient(135deg, #7c3aed, #9333ea);
    padding: 14px 28px;
    border-radius: 40px;
    font-weight: 600;
    box-shadow: 0 10px 30px rgba(124,58,237,0.4);
    transition: 0.3s ease;
}

.cta:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 40px rgba(124,58,237,0.6);
}

/* ================= HERO ANIMATION ================= */

.hero h1,
.hero p,
.hero .cta {
    opacity: 0;
    transform: translateY(20px);
    animation: fadeUp 0.8s ease forwards;
}

.hero p { animation-delay: 0.2s; }
.hero .cta { animation-delay: 0.4s; }

@keyframes fadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ================= OFFERS RESPONSIVE FIX ================= */

.offers-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

@media (max-width: 992px) {
    .offers-grid {
        grid-template-columns: 1fr !important;
    }

    .offers-grid > * {
        width: 100% !important;
    }
}

.logo img{
  height:80px;
  width:auto;
}

@media (max-width:768px){

  .main-header{
    height:70px;
  }

  .logo img{
    height:50px;
  }

}