*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Cairo', sans-serif;
}

body{
  background: #fff;
  overflow-x:hidden;
}

/* ================= NAVBAR ================= */

.navbar{
    position:absolute;
    top:0;
    right:0;
    width:100%;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:20px 7%;
    z-index:1000;
}

.logo{
    display:flex;
    align-items:center;
    gap:10px;
}
.logo img{
    width: 200px;
}
.logo h3{
    font-size:18px;
    font-weight:800;
}

.logo span{
    font-size:11px;
    letter-spacing:2px;
}

.nav-links{
    list-style:none;
    display:flex;
    gap:35px;
}

.nav-links a{
    text-decoration:none;
    color:#000;
    font-weight:600;
}

.booking-btn{
    background:#f7a928;
    padding:12px 30px;
    border-radius:30px;
    text-decoration:none;
    color:#fff;
    font-weight:700;
}


/* ================= RESPONSIVE ================= */

@media(max-width:992px){
    .nav-links{
        display:none;
    }
}
/* ================= MOBILE NAV ================= */

.menu-toggle{
    display:none;
    font-size:22px;
    cursor:pointer;
}

.mobile-menu{
    position:fixed;
    top:0;
    right:-100%;
    width:280px;
    height:100vh;
    background:#111;
    color:#fff;
    padding:30px;
    transition:0.4s ease;
    z-index:2000;
}

.mobile-menu ul{
    list-style:none;
    margin-top:50px;
}

.mobile-menu li{
    margin-bottom:25px;
}

.mobile-menu a{
    color:#fff;
    text-decoration:none;
    font-size:18px;
}

.mobile-menu.active{
    right:0;
}

.close-btn{
    text-align:left;
    font-size:20px;
    cursor:pointer;
}

.overlay-menu{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.5);
    display:none;
    z-index:1500;
}

.overlay-menu.active{
    display:block;
}

/* Responsive */

@media(max-width:992px){

    .nav-links{
        display:none;
    }

    .menu-toggle{
        display:block;
    }

    .booking-btn{
        display:none;
    }
}
.contact-container{
  background: #ffb733;
  width: 100%;
  max-width: 450px;
  padding: 30px;
  border-radius: 20px;
  box-shadow: 0 15px 40px black;
  animation: fadeIn 0.7s ease;
  margin: 180px auto 100px;
}

.contact-container h2{
  text-align: center;
  margin-bottom: 20px;
  color: #333;
  font-weight: 700;
}

.form-group{
  margin-bottom: 15px;
}

input, textarea{
  width: 100%;
  padding: 12px 15px;
  border-radius: 12px;
  border: 1px solid #ddd;
  font-size: 14px;
  transition: 0.3s;
}

input:focus, textarea:focus{
  border-color: black;
  outline: none;
  box-shadow: 0 0 0 3px white;
}

textarea{
  resize: none;
  height: 100px;
}

small{
  font-size: 12px;
  color: #777;
}
.select-wrapper{
  position: relative;
}

select{
  width: 100%;
  padding: 12px 40px 12px 15px;
  border-radius: 12px;
  border: 1px solid #ddd;
  font-size: 14px;
  background: #fff;
  appearance: none;
  cursor: pointer;
  transition: 0.3s;
}

select:focus{
  border-color: black;
  outline: none;
  box-shadow: 0 0 0 3px white;
}

/* Custom Arrow */
.select-wrapper::after{
  content: "\f078";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  left: 15px; /* عشان RTL */
  top: 50%;
  transform: translateY(-50%);
  font-size: 12px;
  pointer-events: none;
  color: #555;
}

button{
  width: 100%;
  padding: 12px;
  border: none;
  border-radius: 12px;
  background: black;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: 0.3s;
}

button:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(0,0,0,0.2);
}

@keyframes fadeIn{
  from{opacity:0; transform: translateY(20px);}
  to{opacity:1; transform: translateY(0);}
}
.contact-container,
.site-footer{
    opacity: 0;
    transform: translateY(20px);
    transition: all 1s ease-out;
}

.contact-container.show,
.site-footer.show{
    opacity: 1;
    transform: translateY(0);
}
button{
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

button:hover{
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 12px 25px rgba(0,0,0,0.25);
}

/* Responsive */
@media (max-width:480px){
  .contact-container{
    padding: 20px;
    border-radius: 15px;
  }
}
/* ================= FOOTER ================= */

.site-footer{
    background:white;
    padding:60px 7%;
}

.footer-container{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    flex-wrap:wrap;
    gap:40px;
}

/* Columns */

.footer-col{
    flex:1;
    min-width:180px;
}

.footer-title{
    font-weight:600;
    margin-bottom:20px;
    color:#333;
}

.footer-btn{
    display:inline-block;
    background:#f7a928;
    padding:15px 40px;
    border-radius:40px;
    text-decoration:none;
    color:#000;
    font-weight:700;
    transition:0.3s;
}

.footer-btn:hover{
    background:#000;
    color:#fff;
}

/* Links */

.footer-col h4{
    margin-bottom:15px;
    font-weight:700;
}

.footer-col ul{
    list-style:none;
}

.footer-col ul li{
    margin-bottom:10px;
}

.footer-col ul li a{
    text-decoration:none;
    color:#333;
    transition:0.3s;
}

.footer-col ul li a:hover{
    color:#f7a928;
}

/* Location */

.location img{
    width:80px;
    margin-bottom:10px;
}

/* Logo */

.logo-footer img{
    width:120px;
    margin-bottom:10px;
}

.logo-footer span{
    font-size:12px;
    letter-spacing:1px;
    color:#555;
}

/* ================= RESPONSIVE ================= */
@media(max-width:768px){

    .footer-container{
        display:grid;
        grid-template-columns: repeat(2, 1fr);
        gap:25px;
    }

    .footer-col{
        min-width:unset;
    }

    /* نخلي اللوجو صف كامل */
    .logo-footer{
        grid-column:1 / -1;
        text-align:center;
        margin-top:10px;
    }

}