/* ===============================
   إبداع المنازل للتطوير العقاري
================================= */

:root{

    --primary:#0f172a;
    --secondary:#2759c4;
    --white:#ffffff;
    --light:#f8fafc;
    --text:#475569;
    --border:#e5e7eb;
    --gold-color: #b08b3d;

}

*{

    margin:0;
    padding:0;
    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:'Cairo',sans-serif;
    background:var(--light);
    color:var(--text);
    overflow-x:hidden;

}

a{

    text-decoration:none;

}

img{

    max-width:100%;
    display:block;

}

section{

    padding:100px 0;

}

.container{

    max-width:1320px;

}

.text-gold { color: var(--gold-color); }

.btn-gold{

    background:var(--secondary);
    color:#fff;
    padding:14px 34px;
    border:none;
    border-radius:50px;
    font-weight:700;
    transition:.35s;

}

.btn-gold:hover{

    color:#fff;
    transform:translateY(-4px);

}

/* Loader */

#loader{

    position:fixed;
    inset:0;
    background:#fff;
    display:flex;
    justify-content:center;
    align-items:center;
    z-index:99999;
    transition:.4s;

}

#loader img{

    width:150px;

}

/* Navbar */

.navbar{

    padding:18px 0;
    background:rgba(248, 248, 248, 0.93);
    backdrop-filter:blur(12px);
    transition:.35s;
    box-shadow:0 5px 25px rgba(0,0,0,.06);

}

.navbar.scrolled{

    background:#fff;
    box-shadow:0 10px 35px rgba(0,0,0,.08);

}

.navbar-brand img{

    height:72px;
    transition:.4s;

}

.nav-link{

    color:var(--primary)!important;
    font-weight:700;
    margin:0 12px;
    transition:.3s;

}

.nav-link:hover,
.nav-link.active{

    color:var(--secondary)!important;

}

/* رابط العروض - تصميم مميز يجذب الانتباه */

.nav-link.nav-link-offer{

    background:linear-gradient(135deg,#e63946,#c0392b);
    color:#fff!important;
    padding:8px 20px!important;
    border-radius:30px;
    font-weight:800;
    display:inline-flex;
    align-items:center;
    gap:6px;
    box-shadow:0 6px 18px rgba(198,57,43,.35);
    animation:offerPulse 2.4s infinite;

}

.nav-link.nav-link-offer i{

    font-size:13px;

}

.nav-link.nav-link-offer:hover{

    color:#fff!important;
    transform:translateY(-3px);
    box-shadow:0 10px 26px rgba(198,57,43,.5);

}

@keyframes offerPulse{

    0%{
        box-shadow:0 0 0 0 rgba(198,57,43,.55);
    }

    70%{
        box-shadow:0 0 0 10px rgba(198,57,43,0);
    }

    100%{
        box-shadow:0 0 0 0 rgba(198,57,43,0);
    }

}

/* زر العروض بصفحة تصنيفات المشاريع */

.btn-offer{

    background:linear-gradient(135deg,#e63946,#c0392b);
    color:#fff!important;
    border:none;
    font-weight:800;
    box-shadow:0 6px 18px rgba(198,57,43,.35);
    animation:offerPulse 2.4s infinite;

}

.btn-offer:hover{

    color:#fff!important;
    transform:translateY(-3px);
    box-shadow:0 10px 26px rgba(198,57,43,.5);

}

.btn-offer-active{

    outline:3px solid #fff;
    outline-offset:-4px;
    box-shadow:0 0 0 3px rgba(198,57,43,.65);

}

/* Floating WhatsApp + Phone Buttons */

.whatsapp-floating,
.phone-floating{

    position:fixed;
    left:25px;
    width:58px;
    height:58px;
    border-radius:50%;
    color:#fff;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:20px;
    z-index:999;
    box-shadow:0 10px 25px rgba(0,0,0,.2);
    transition:.3s;

}

.whatsapp-floating{

    bottom:25px;
    background:#01531c;

}

.phone-floating{

    bottom:93px;
    background:var(--secondary);

}

.whatsapp-floating:hover,
.phone-floating:hover{

    transform:translateY(-4px);
    color:#fff;

}

/* Back To Top */

#topBtn{

    position:fixed;
    right:25px;
    bottom:25px;
    width:55px;
    height:55px;
    border:none;
    border-radius:50%;
    background:var(--secondary);
    color:#fff;
    display:none;
    justify-content:center;
    align-items:center;
    cursor:pointer;
    z-index:999;

}

/* Hero (الافتراضي القديم إن وجد) */

.hero{

    min-height:100vh;
    display:flex;
    align-items:center;
    background:linear-gradient(135deg,#f8fafc,#eef4f8);

}

.hero-badge{

    display:inline-block;
    background:#fff;
    color:var(--secondary);
    padding:12px 22px;
    border-radius:30px;
    font-weight:700;

}

.hero-title{

    font-size:64px;
    line-height:1.3;
    color:var(--primary);
    font-weight:900;

}

.hero-text{

    font-size:20px;
    line-height:2;
    color:var(--text);

}

.hero-image{

    animation:float 5s ease-in-out infinite;

}

@keyframes float{

0%,100%{

transform:translateY(0);

}

50%{

transform:translateY(-18px);

}

}

/* About */

.about{

    background:#fff;

}

.section-tag{

    color:var(--secondary);
    font-weight:700;

}

.section-title{

    color:var(--primary);
    font-size:42px;
    font-weight:900;

}

.about-image{

    border-radius:24px;
    box-shadow:0 20px 60px rgba(0,0,0,.12);

}

.about h3{

    color:var(--secondary);
    font-size:42px;
    font-weight:900;

}

/* Services */

.services{

    background:#f7f8fa;

}

.service-card{

    background:#fff;
    border-radius:20px;
    padding:45px 30px;
    text-align:center;
    transition:.35s;
    box-shadow:0 10px 35px rgba(0,0,0,.05);

}

.service-card:hover{

    transform:translateY(-10px);

}

.service-card i{

    font-size:48px;
    color:var(--secondary);
    margin-bottom:20px;

}

.service-image{

    height:220px;
    object-fit:contain;
    background:#f4f6f9;
    padding:12px;

}

.service-card h4{

    font-weight:800;
    margin-bottom:15px;

}


/* ===============================
   Projects
================================= */

.projects{

    background:#fff;
    overflow:hidden;

}

.projects .section-tag{

    display:block;
    margin-bottom:10px;

}

.projects .section-title{

    margin-bottom:20px;

}

.projectsSwiper{

    width:100%;
    padding:20px 10px 70px;

}

.projectsSwiper .swiper-slide{

    height:auto;

}

.projectsSwiper .swiper-button-next,
.projectsSwiper .swiper-button-prev{

    color:var(--secondary);

}

.projectsSwiper .swiper-pagination{

    bottom:10px;

}

.projectsSwiper .swiper-pagination-bullet{

    width:10px;
    height:10px;

}

.projectsSwiper .swiper-pagination-bullet-active{

    background:var(--secondary);

}

/* ===============================
   Project Card
================================= */

.project-card{

    background:#fff;
    border-radius:22px;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    height:100%;
    transition:.35s;
    box-shadow:0 15px 40px rgba(23, 41, 202, 0.08);

}

.project-card:hover{

    transform:translateY(-10px);
    box-shadow:0 25px 60px rgba(0,0,0,.15);

}

.project-image{

    position:relative;
    overflow:hidden;

}

.project-image img{

    width:100%;
    height:260px;
    object-fit:contain;
    background:#f4f6f9;
    padding:14px;
    transition:.5s;

}

.project-image-completed{

    width:100%;
    height:280px;
    object-fit:contain;
    background:#f4f6f9;
    padding:14px;

}

.project-card:hover .project-image img{

    transform:scale(1.08);

}

.project-status{
    position:absolute;
    top:18px;
    right:18px;
    color:#fff;
    padding:6px 16px;
    border-radius:30px;
    font-size:14px;
    font-weight:700;
}

.project-status.available{
    background:#28a745;
}

.project-status.construction{
    background:#ffc107;
    color:#000;
}

.project-status.sold{
    background:#dc3545;
}

.project-info{

    padding:24px;
    flex:1;
    display:flex;
    flex-direction:column;

}

.project-info h4{

    font-size:24px;
    color:var(--primary);
    font-weight:800;
    margin-bottom:12px;

}

.project-location{

    color:#64748b;
    margin-bottom:15px;

}

.project-location i{

    color:var(--secondary);
    margin-left:6px;

}

.project-meta{

    display:flex;
    justify-content:space-between;
    margin:18px 0;
    color:#555;
    font-size:15px;

}

.project-meta i{

    color:var(--secondary);
    margin-left:5px;

}

.project-description{

    line-height:1.9;
    color:#666;
    min-height:70px;

}

.project-info .btn{

    margin-top:auto;

}

/* ===============================
   Project Details
================================= */

.project-sidebar{

    background:#fff;
    border-radius:20px;
    padding:30px;
    box-shadow:0 15px 40px rgba(0,0,0,.08);

}

.feature-box{

    display:flex;
    align-items:center;
    gap:15px;
    padding:15px 0;
    border-bottom:1px solid #eee;

}

.feature-box:last-child{

    border-bottom:none;

}

.feature-box i{

    width:45px;
    height:45px;
    border-radius:50%;
    background:var(--secondary);
    color:#fff;
    display:flex;
    justify-content:center;
    align-items:center;

}

.project-details .swiper-slide img{

    width:100%;
    height:500px;
    object-fit:cover;
    border-radius:18px;

}

.projectThumbs{

    margin-top:20px;

}

.projectThumbs .swiper-slide{

    height:90px;
    opacity:.5;
    cursor:pointer;

}

.projectThumbs .swiper-slide-thumb-active{

    opacity:1;

}

.projectThumbs img{

    width:100%;
    height:90px;
    object-fit:cover;
    border-radius:10px;

}



/* ===============================
   Counter
================================= */

.counter-section{

    background:var(--primary);
    padding:90px 0;

}

.counter-box{

    text-align:center;
    color:#fff;

}

.counter-box h2{

    font-size:55px;
    font-weight:900;
    color:var(--secondary);

}

.counter-box p{

    margin-top:10px;
    font-size:18px;

}

/* ===============================
   Testimonials
================================= */

.testimonials{

    background:#f7f8fa;

}

.testimonialSwiper{

    padding-bottom:50px;

}

.testimonial-card{

    background:#fff;
    border-radius:22px;
    padding:40px 30px;
    text-align:center;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
    height:100%;

}

.testimonial-card img{

    width:90px;
    height:90px;
    object-fit:cover;
    border-radius:50%;
    margin:auto;
    margin-bottom:20px;

}

.testimonial-card h4{

    font-weight:800;
    color:var(--primary);

}

.testimonial-card span{

    color:var(--secondary);

}

.testimonial-card p{

    margin-top:20px;
    line-height:1.9;

}

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

.cta{

    background:var(--light);

}

.cta-box{

    background:linear-gradient(135deg,var(--primary),#1e293b);
    border-radius:30px;
    padding:70px 40px;
    text-align:center;
    color:#fff;
    overflow:hidden;

}

.cta-box h2{

    font-size:42px;
    font-weight:900;
    margin-bottom:20px;

}

.cta-box p{

    color:#e5e7eb;
    font-size:19px;
    line-height:2;

}

/* ===============================
   Footer
================================= */

.footer{

    background:var(--primary);
    color:#fff;
    padding:80px 0 40px;

}

.footer-logo{

    width:170px;

}

.footer h4{

    color:#fff;
    margin-bottom:25px;

}

.footer-links{

    list-style:none;
    padding:0;
    margin:0;

}

.footer-links li{

    margin-bottom:12px;

}

.footer-links a{

    color:#d1d5db;
    transition:.3s;

}

.footer-links a:hover{

    color:var(--secondary);

}

.social-icons{

    display:flex;
    gap:15px;
    margin-top:20px;

}

.social-icons a{

    width:45px;
    height:45px;
    border-radius:50%;
    background:rgba(255,255,255,.08);
    display:flex;
    justify-content:center;
    align-items:center;
    color:#fff;
    transition:.3s;

}

.social-icons a:hover{

    background:var(--secondary);

}

/* ===============================
   Swiper General
================================= */

.swiper-button-next,
.swiper-button-prev{

    color:var(--secondary);

}

.swiper-pagination-bullet-active{

    background:var(--secondary);

}


/* ===============================
   Contact
================================= */

.contact-info{

    background:#fff;
    border-radius:20px;
    padding:30px;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
    height:100%;

}

.contact-info .feature-box{

    display:flex;
    align-items:center;
    gap:15px;
    padding:18px 0;
    border-bottom:1px solid #eee;

}

.contact-info .feature-box:last-child{

    border-bottom:none;

}

.contact-info .feature-box i{

    width:48px;
    height:48px;
    border-radius:50%;
    background:var(--secondary);
    color:#fff;
    display:flex;
    justify-content:center;
    align-items:center;

}

/* ===============================
   Forms
================================= */

.form-control{

    border-radius:12px;
    padding:14px;
    border:1px solid #ddd;
    box-shadow:none;

}

.form-control:focus{

    border-color:var(--secondary);
    box-shadow:0 0 0 .2rem rgba(200,164,93,.20);

}

textarea.form-control{

    resize:none;

}

/* ===============================
   Buttons
================================= */

.btn{

    transition:.3s;

}

.btn:hover{

    transform:translateY(-2px);

}

/* ===============================
   Animations
================================= */

.fade-up{

    animation:fadeUp .8s ease;

}

@keyframes fadeUp{

    from{

        opacity:0;
        transform:translateY(30px);

    }

    to{

        opacity:1;
        transform:translateY(0);

    }

}

/* ===========================
   Luxury Navbar
=========================== */

.luxury-navbar{
    padding:18px 0;
    background:transparent;
    transition:.4s ease;
    z-index:9999;
}

.luxury-navbar.scrolled{
    background:#ffffff;
    padding:10px 0;
    box-shadow:0 8px 30px rgba(0,0,0,.08);
}

.luxury-navbar.scrolled .navbar-brand img{
    height:58px;
}

.navbar-nav .nav-link{
    position:relative;
    color:#fff;
    font-weight:700;
    margin:0 12px;
    transition:.35s;
}

.luxury-navbar.scrolled .nav-link{
    color:#222;
}

.navbar-nav .nav-link:hover{
    color:#caa24d;
}

.navbar-nav .nav-link::after{
    content:"";
    position:absolute;
    right:0;
    bottom:-8px;
    width:0;
    height:3px;
    background:#caa24d;
    transition:.35s;
    border-radius:30px;
}

.navbar-nav .nav-link:hover::after,
.navbar-nav .nav-link.active::after{
    width:100%;
}

.navbar-nav .nav-link.active{
    color:#caa24d;
}

.whatsapp-btn{
    position:static;
    display:inline-flex;
    align-items:center;
    gap:8px;
    background:#caa24d;
    color:#fff;
    padding:12px 24px;
    border-radius:40px;
    font-weight:700;
    transition:.35s;
    box-shadow:0 12px 30px rgba(202,162,77,.25);
}

.whatsapp-btn:hover{
    background:#111;
    color:#fff;
    transform:translateY(-3px);
}

.navbar-toggler{
    border:none;
    box-shadow:none!important;
}

.navbar-toggler:focus{
    box-shadow:none;
}

/* ===========================
   Mobile Navbar
=========================== */

@media (max-width:991px){

.luxury-navbar{

background:#fff;

}

.navbar-collapse{

margin-top:18px;

padding:25px;

background:#fff;

border-radius:20px;

box-shadow:0 15px 45px rgba(0,0,0,.12);

animation:fadeMenu .35s;

}

.navbar-nav{

text-align:center;

}

.navbar-nav .nav-link{

color:#222!important;

margin:12px 0;

font-size:18px;

}

.navbar-nav .nav-link.nav-link-offer{

color:#fff!important;
display:inline-flex;
justify-content:center;

}

.whatsapp-btn{

display:block;

margin-top:20px;

text-align:center;

justify-content:center;

}

}

@keyframes fadeMenu{

from{

opacity:0;

transform:translateY(-20px);

}

to{

opacity:1;

transform:translateY(0);

}

}

/*=========================
  HERO PREMIUM (المعدل)
==========================*/

.hero-section{

position:relative;

min-height:100vh;

display:flex;

align-items:center;

background:url("../images/hero.jpg") center center / cover no-repeat;

overflow:hidden;

}

.hero-overlay{

position:absolute;

inset:0;

background:linear-gradient(
90deg,
rgba(0,0,0,.85),
rgba(0,0,0,.55)
);

}

.hero-content{

min-height:100vh;
padding: 100px 0;

}

.hero-title{

font-size:68px;

font-weight:900;

color:#fff;

line-height:1.25;

margin-bottom:25px;

}

.hero-text{

font-size:20px;

line-height:2;

color:#eee;

max-width:620px;

}

.hero-badge{

display:inline-block;

background:rgba(238, 232, 232, 0.993);

border:1px solid rgb(201, 207, 207);

padding:10px 22px;

border-radius:40px;

color:#0442c9;

font-weight:700;

backdrop-filter:blur(10px);

}

.hero-image{

display:none;

}

.hero-section .btn{

padding:15px 36px;

font-size:17px;

font-weight:700;

border-radius:50px;

}


/*====================================
          Project Price
=====================================*/

.project-price{

    margin:25px 0;

}

.old-price{

    color:#6b7280;
    font-size:22px;
    font-weight:700;
    text-decoration:line-through;
    margin-bottom:8px;

}

.new-price{

    color:#02772d;
    font-size:38px;
    font-weight:900;
    line-height:1;

}

.new-price::before{

    content:"ابتداءً من";
    display:block;
    color:#64748b;
    font-size:15px;
    font-weight:600;
    margin-bottom:8px;

}

.completed-gallery{

column-count:4;
column-gap:18px;
}

.completed-item{

display:block;
position:relative;
margin-bottom:18px;
overflow:hidden;
border-radius:18px;
break-inside:avoid;
}

.completed-item img{

width:100%;
display:block;
transition:.45s;
}

.completed-overlay{

position:absolute;
inset:0;
background:rgba(0,0,0,.45);
display:flex;
flex-direction:column;
justify-content:end;
padding:20px;
color:#fff;
opacity:0;
transition:.35s;
}

.completed-item:hover img{

transform:scale(1.08);
}

.completed-item:hover .completed-overlay{

opacity:1;
}

/*==========================
      LUXURY FOOTER
==========================*/

.luxury-footer{

position:relative;

background:#08111d;

padding:90px 0 30px;

overflow:hidden;

color:#fff;

margin-top:120px;

}

.luxury-footer::before{

content:"";

position:absolute;

top:0;

left:0;

width:100%;

height:5px;

background:linear-gradient(90deg,#8b6d2f,#d4b15d,#8b6d2f);

}

.footer-overlay{

position:absolute;

inset:0;

background:

radial-gradient(circle at top,#1a2b42 0%,transparent 55%),

linear-gradient(180deg,#0c1624,#08111d);

opacity:.9;

}

.footer-title{

font-size:26px;

font-weight:800;

color:#d4b15d;

margin-bottom:25px;

}

.footer-description{

line-height:2.1;

font-size:15px;

color:#d6d6d6;

}

.footer-logo img{

width:95px;

height:95px;

border-radius:50%;

border:4px solid #c8a850;

padding:6px;

background:#fff;

box-shadow:0 10px 30px rgba(0,0,0,.35);

}

.footer-social{

display:flex;

gap:14px;

margin-top:35px;

flex-wrap:wrap;

}

.footer-social a{

width:52px;

height:52px;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

background:rgba(255,255,255,.07);

color:#d4b15d;

font-size:20px;

transition:.35s;

text-decoration:none;

}

.footer-social a:hover{

background:#c8a850;

color:#fff;

transform:translateY(-8px);

box-shadow:0 12px 25px rgba(212,177,93,.45);

}

.footer-menu{

padding:0;

margin:0;

list-style:none;

}

.footer-menu li{

margin-bottom:18px;

}

.footer-menu a{

color:#ececec;

font-size:16px;

text-decoration:none;

display:flex;

align-items:center;

gap:12px;

transition:.3s;

}

.footer-menu a i{

color:#c8a850;

font-size:13px;

}

.footer-menu a:hover{

padding-right:10px;

color:#d4b15d;

}

.footer-contact{

display:flex;

flex-direction:column;

gap:18px;

}

.contact-item{

display:flex;

align-items:flex-start;

gap:16px;

}

.contact-item .icon{

width:48px;

height:48px;

border-radius:50%;

background:#c8a850;

display:flex;

align-items:center;

justify-content:center;

color:#fff;

font-size:18px;

flex-shrink:0;

}

.contact-item a{

color:#f2f2f2;

text-decoration:none;

transition:.3s;

}

.contact-item a:hover{

color:#d4b15d;

}

.footer-line{

margin:55px 0 30px;

border-color:rgba(255,255,255,.12);

}

.footer-bottom{

color:#bfbfbf;

font-size:15px;

}

/* السلايدر والصور العامة */
.main-slider-img {
    height: 500px;
    object-fit: cover;
}

.thumb-slider-img {
    height: 90px;
    object-fit: cover;
    cursor: pointer;
}


/* ===============================
   Responsive (استجابة الجوال والأجهزة الشاملة)
================================= */

@media(max-width:991px){

.hero{

padding-top:120px;
text-align:center;

}

.hero-section{

min-height: auto;
padding: 140px 0 80px 0;
background-attachment: scroll !important;
background-position: center center;

}

.hero-content{

min-height: auto;
padding: 0;

}

.hero-title{

font-size:38px;

}

.hero-text{

font-size:16px;

}

.hero-image{

margin-top:40px;

}

.section-title{

font-size:32px;

}

.navbar-brand img{

height:58px;

}

.project-details .swiper-slide img{

height:320px;

}

.projectThumbs img{

height:70px;

}

.counter-box{

margin-bottom:30px;

}

.footer{

text-align:center;

}

.social-icons{

justify-content:center;

}

.completed-gallery{

column-count:2;

}

.footer-title{

margin-top:25px;

}

.footer-logo{

text-align:center;

}

.footer-social{

justify-content:center;

}

.footer-description{

text-align:center;

}

.main-slider-img {

height: 380px;

}

.whatsapp-floating,
.phone-floating{

width:50px;
height:50px;
font-size:18px;

}

.phone-floating{

bottom:83px;

}

}

@media(max-width:768px){

section{

padding:70px 0;

}

.project-image img{

height:220px;

}

.project-info{

padding:18px;

}

.project-info h4{

font-size:20px;

}

.project-sidebar{

margin-top:35px;

}

.feature-box{

font-size:15px;

}

.cta-box{

padding:45px 25px;

}

.cta-box h2{

font-size:30px;

}

}

@media(max-width:576px){

.hero-title{

font-size:32px;

}

.section-title{

font-size:28px;

}

.hero-badge{

font-size:14px;

}

.btn-gold{

width:100%;

margin-bottom:10px;

}

.whatsapp-floating,
.phone-floating{

left:18px;
width:46px;
height:46px;
font-size:16px;

}

.whatsapp-floating{

bottom:18px;

}

.phone-floating{

bottom:76px;

}

#topBtn{

right:18px;
bottom:18px;

}

.completed-gallery{

column-count:1;

}

.main-slider-img {

height: 260px;

}

.thumb-slider-img {

height: 65px;

}

.navbar-brand img {

max-height: 40px;

}

.project-card img {

height: 220px !important;

}

}

/* ===============================
   خدمات ما بعد البيع
================================= */

.after-sale-card{

    background:#f8fafc;
    border-radius:16px;
    padding:20px 12px;
    text-align:center;
    height:100%;
    transition:.3s;
    border:1px solid #eef0f3;

}

.after-sale-card:hover{

    transform:translateY(-4px);
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    border-color:var(--gold-color);

}

.after-sale-icon{

    width:55px;
    height:55px;
    border-radius:50%;
    background:linear-gradient(135deg,#d4b15d,#b08b3d);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 12px;
    font-size:20px;

}

.after-sale-card span{

    font-weight:700;
    font-size:14px;
    color:var(--primary);
    display:block;

}

/* نص إرشادي مائل بخانة بحث رقم الوحدة */
#filterUnitCode::placeholder{

    font-style:italic;
    color:#94a3b8;

}

/* خانة بحث رقم الوحدة - بارزة ومميزة */
.unit-search-group{

    border:2px solid var(--gold-color);
    border-radius:12px;
    overflow:hidden;

}

.unit-search-group .input-group-text{

    border:none;
    background:#fff;

}

.unit-search-group .form-control{

    border:none;
    box-shadow:none;

}

.unit-search-group .form-control:focus{

    box-shadow:none;

}

/* صندوق الوحدات المشابهة (نفس المشروع) */
.twin-units-box{

    background:#faf7f0;
    border:1.5px dashed var(--gold-color);
    border-radius:14px;
    padding:16px 18px;
    margin-top:14px;

}

.twin-units-label{

    font-size:14px;
    font-weight:800;
    color:var(--primary);
    margin-bottom:12px;
    display:flex;
    align-items:center;
    gap:8px;

}

.twin-units-label i{

    color:var(--gold-color);
    font-size:16px;

}

.twin-unit-badge{

    display:inline-flex;
    align-items:center;
    background:linear-gradient(135deg,#ffffff,#f4ecd8);
    border:2px solid var(--gold-color);
    color:var(--primary);
    font-weight:800;
    font-size:17px;
    padding:9px 22px;
    border-radius:10px;
    box-shadow:0 4px 10px rgba(176,139,61,.15);

}

/* ===============================
   التراخيص والاعتمادات الرسمية
================================= */

.licenses-section{

    background:linear-gradient(180deg,#fff,#f8fafc);

}

.license-card-simple{

    background:#fff;
    border:1px solid #eef0f3;
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 15px 40px rgba(0,0,0,.05);
    transition:.35s;
    cursor:pointer;

}

.license-card-simple:hover{

    transform:translateY(-6px);
    box-shadow:0 20px 50px rgba(0,0,0,.1);
    border-color:var(--gold-color);

}

.license-img{

    width:100%;
    display:block;
    border-bottom:1px solid #eef0f3;

}

.license-caption{

    text-align:center;
    padding:14px;
    margin:0;
    font-weight:700;
    color:var(--primary);
    font-size:14px;

}

.license-caption i{

    color:var(--gold-color);

}

/* ===============================
   شريط التراخيص بالفوتر
================================= */

.footer-licenses{

    display:flex;
    gap:14px;
    margin-top:25px;

}

.footer-license-thumb-link{

    display:block;
    border-radius:12px;
    overflow:hidden;
    border:2px solid rgba(200,168,80,.4);
    transition:.3s;

}

.footer-license-thumb-link:hover{

    border-color:#c8a850;
    transform:translateY(-4px);

}

.footer-license-thumb{

    width:90px;
    height:90px;
    object-fit:cover;
    display:block;

}

/* إطار صورة سيارة الصيانة */
.maintenance-van-frame{

    position:relative;
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 20px 50px rgba(0,0,0,.15);
    border:4px solid #fff;
    outline:2px solid var(--gold-color);

}

.maintenance-van-frame img{

    width:100%;
    display:block;

}

.maintenance-van-badge{

    position:absolute;
    bottom:16px;
    right:16px;
    left:16px;
    background:rgba(15,23,42,.85);
    backdrop-filter:blur(6px);
    color:#fff;
    text-align:center;
    padding:10px 16px;
    border-radius:12px;
    font-weight:700;
    font-size:14px;
    border:1px solid rgba(200,168,80,.5);

}

.maintenance-van-badge i{

    color:var(--gold-color);

}

/* القائمة المنسدلة للمشاريع بالنافبار */
.dropdown-menu{

    border:none;
    border-radius:14px;
    box-shadow:0 15px 40px rgba(0,0,0,.15);
    padding:10px;
    margin-top:12px !important;

}

.dropdown-item{

    border-radius:10px;
    padding:10px 14px;
    font-weight:600;
    color:var(--primary);
    transition:.25s;

}

.dropdown-item:hover,
.dropdown-item:focus{

    background:var(--gold-color);
    color:#fff;

}

.dropdown-item i{

    color:var(--gold-color);
    width:18px;

}

.dropdown-item:hover i{

    color:#fff;

}

/* ===============================
   صفحة البيع على الخارطة
================================= */

.offplan-catalogue {
    background: #f8fafc;
}

.offplan-masterplan {
    overflow: hidden;
    background: #fff;
    border: 1px solid #e6eaf0;
    border-radius: 20px;
    box-shadow: 0 18px 48px rgba(15, 23, 42, .09);
}

.offplan-masterplan img {
    display: block;
    width: 100%;
    height: auto;
}

.offplan-search {
    max-width: 520px;
}

.offplan-inventory-card {
    display: flex;
    flex-direction: column;
    padding: 0;
    border: 1px solid #e7eaf0;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .045);
    transition: transform .2s ease, box-shadow .2s ease;
}

.offplan-inventory-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 34px rgba(15, 23, 42, .1);
}

.offplan-unit-card-heading {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    padding: 22px 22px 17px;
    border-bottom: 1px solid #edf0f4;
}

.offplan-unit-card-body {
    flex: 1;
    padding: 0 22px 18px;
}

.offplan-unit-code-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
}

.offplan-unit-code-list span {
    padding: 5px 11px;
    border: 1px solid #e8ebf0;
    border-radius: 20px;
    background: #f8fafc;
    color: #334155;
    font-size: .85rem;
    font-weight: 700;
}

.offplan-inventory-card > .d-grid {
    padding: 0 22px 22px;
}

.offplan-whatsapp-button {
    color: #fff;
    font-weight: 700;
}

.offplan-brochure-cta {
    padding: 34px 20px;
    border: 1px solid #e8ebf0;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .06);
}

.offplan-brochure-button {
    min-width: min(100%, 320px);
    font-weight: 800;
}

.offplan-brochure-frame {
    height: min(78vh, 1000px);
    min-height: 480px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    background: #f8fafc;
}

.offplan-brochure-frame iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

.offplan-unit-type {
    color: #8a6b2d;
    font-size: .82rem;
    font-weight: 800;
}

.offplan-unit-area {
    margin: 14px 0 5px;
    color: #1e293b;
    font-size: 1.12rem;
    font-weight: 800;
}

.offplan-price {
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin: 16px 0 12px;
    padding: 14px 16px;
    border: 1px solid #eee5d5;
    border-radius: 14px;
    background: #fbf8f1;
}

.offplan-price span {
    color: #64748b;
    font-size: .8rem;
}

.offplan-price strong {
    color: #182746;
    font-size: 1.35rem;
    font-weight: 900;
    font-variant-numeric: tabular-nums;
}

.offplan-price small {
    color: #64748b;
    font-size: .8rem;
}

.offplan-area-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 0 0 12px;
}

.offplan-area-grid > div {
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 10px;
    border: 1px solid #edf0f4;
    border-radius: 11px;
    background: #fff;
}

.offplan-area-grid span {
    color: #64748b;
    font-size: .75rem;
}

.offplan-area-grid strong {
    color: #1e293b;
    font-size: .94rem;
}

.offplan-frontage,
.offplan-street {
    margin: 0 0 7px;
    color: #475569;
    font-size: .87rem;
    line-height: 1.65;
}

.offplan-frontage i,
.offplan-street i {
    color: var(--gold-color);
}

.offplan-unit-description {
    min-height: 0;
    margin: 10px 0 0;
    color: #64748b;
    font-size: .91rem;
    line-height: 1.8;
    white-space: pre-line;
}

.offplan-unit-details {
    margin: 6px 0 12px;
    color: #334155;
    font-size: .86rem;
}

.offplan-unit-details summary {
    width: fit-content;
    color: #8a6b2d;
    font-weight: 800;
    cursor: pointer;
}

.offplan-unit-details[open] {
    padding: 11px 12px;
    border-radius: 11px;
    background: #f8fafc;
}

.offplan-status {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    padding: 5px 10px;
    border-radius: 20px;
    font-size: .75rem;
    font-weight: 800;
}

.offplan-status-inquiry {
    color: #475569;
    background: #f1f5f9;
}

.offplan-status-available {
    color: #166534;
    background: #dcfce7;
}

.offplan-status-reserved {
    color: #92400e;
    background: #fef3c7;
}

.offplan-status-sold {
    color: #991b1b;
    background: #fee2e2;
}

.offplan-spec-panel {
    padding: clamp(22px, 4vw, 38px);
    border: 1px solid #e8ebf0;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .05);
}

.offplan-spec-list {
    display: grid;
    gap: 14px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.offplan-spec-list li {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    color: #334155;
    line-height: 1.8;
}

.offplan-spec-list i,
.offplan-material-item i {
    flex: 0 0 auto;
    margin-top: 4px;
    color: var(--gold-color);
}

.offplan-material-item {
    display: flex;
    gap: 9px;
    height: 100%;
    padding: 12px;
    border: 1px solid #edf0f4;
    border-radius: 12px;
    color: #334155;
    font-size: .9rem;
    line-height: 1.7;
    background: #fff;
}

.offplan-brochure-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.offplan-brochure-page {
    overflow: hidden;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    background: #fff;
    color: #334155;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 6px 20px rgba(15, 23, 42, .05);
    transition: transform .2s ease, box-shadow .2s ease;
}

.offplan-brochure-page:hover {
    transform: translateY(-3px);
    color: #8a6b2d;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .12);
}

.offplan-brochure-page img {
    display: block;
    width: 100%;
    aspect-ratio: 1.414 / 1;
    object-fit: cover;
    object-position: top;
    background: #f1f5f9;
}

.offplan-brochure-page span {
    display: block;
    padding: 10px;
    font-weight: 700;
}

.offplan-plan-image {
    max-width: 100%;
    max-height: 75vh;
    object-fit: contain;
}

.offplan-detail-card {
    min-height: 190px;
    padding: 25px 20px;
}

@media (max-width: 767px) {
    .offplan-location-section .row {
        --bs-gutter-x: 1.5rem;
    }

    .offplan-brochure-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .offplan-inventory-card {
        padding: 0;
    }

    .offplan-unit-card-heading {
        padding: 17px 17px 14px;
    }

    .offplan-unit-card-body {
        padding: 0 17px 16px;
    }

    .offplan-inventory-card > .d-grid {
        padding: 0 17px 17px;
    }

    .offplan-brochure-frame {
        min-height: 65vh;
    }

    .offplan-unit-description {
        min-height: 0;
    }
}

.offplan-hero{

    position:relative;
    background:linear-gradient(135deg,#0f172a,#1e293b);
    padding:80px 0 60px;
    overflow:hidden;

}

.offplan-hero::before{

    content:"";
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at 20% 20%, rgba(200,168,80,.15) 0%, transparent 50%),
        radial-gradient(circle at 80% 80%, rgba(200,168,80,.1) 0%, transparent 50%);

}

.offplan-logo{

    width:130px;
    height:auto;
    position:relative;
    filter:drop-shadow(0 10px 25px rgba(0,0,0,.4));

}

.offplan-badge{

    display:inline-block;
    background:rgba(200,168,80,.15);
    border:1.5px solid var(--gold-color);
    color:#f0d99b;
    padding:10px 24px;
    border-radius:40px;
    font-weight:700;
    font-size:14px;
    position:relative;

}

.offplan-title{

    color:#fff;
    font-size:48px;
    font-weight:900;
    position:relative;

}

.offplan-subtitle{

    color:#cbd5e1;
    font-size:18px;
    max-width:650px;
    line-height:2;
    position:relative;

}

.offplan-light-bg{

    background:#f8fafc;

}

.offplan-map-frame{

    border-radius:20px;
    overflow:hidden;
    box-shadow:0 20px 50px rgba(0,0,0,.1);
    border:4px solid #fff;
    outline:2px solid var(--gold-color);

}

.offplan-unit-card{

    background:#fff;
    border-radius:18px;
    padding:35px 15px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.05);
    transition:.3s;
    height:100%;

}

.offplan-unit-card:hover{

    transform:translateY(-8px);
    box-shadow:0 20px 40px rgba(0,0,0,.1);

}

.offplan-unit-card i{

    font-size:36px;
    color:var(--gold-color);
    margin-bottom:14px;
    display:block;

}

.offplan-unit-card span{

    font-weight:800;
    color:var(--primary);
    font-size:15px;

}

.offplan-feature-card{

    background:#f8fafc;
    border-radius:20px;
    padding:35px 25px;
    text-align:center;
    height:100%;
    transition:.3s;
    border:1px solid #eef0f3;

}

.offplan-feature-card:hover{

    border-color:var(--gold-color);
    box-shadow:0 15px 40px rgba(0,0,0,.08);
    transform:translateY(-5px);

}

.offplan-feature-icon{

    width:65px;
    height:65px;
    border-radius:50%;
    background:linear-gradient(135deg,#d4b15d,#b08b3d);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:26px;
    margin:0 auto 18px;

}

.offplan-feature-card h5{

    font-weight:800;
    color:var(--primary);
    margin-bottom:10px;

}

.offplan-feature-card p{

    color:#64748b;
    font-size:14px;
    margin:0;

}

.offplan-form-card{

    background:#fff;
    border-radius:24px;
    padding:45px;
    box-shadow:0 25px 60px rgba(0,0,0,.1);
    border-top:5px solid var(--gold-color);

}

@media (max-width:991px){

    .offplan-title{
        font-size:32px;
    }

    .offplan-subtitle{
        font-size:16px;
    }

    .offplan-form-card{
        padding:28px 20px;
    }

}

/* عمود خامس بالصف لعرض 5 أنواع وحدات بسطر واحد بالشاشات الكبيرة */
@media (min-width:992px){

    .col-lg-2-4{
        flex:0 0 auto;
        width:20%;
    }

}

/* زر "بيع على الخارطة" - بارز بالنافبار */
.nav-link.nav-link-offplan{

    background:linear-gradient(135deg,#0f172a,#b08b3d);
    color:#fff!important;
    padding:8px 20px!important;
    border-radius:30px;
    font-weight:800;
    display:inline-flex;
    align-items:center;
    gap:6px;
    box-shadow:0 6px 18px rgba(176,139,61,.35);
    animation:offplanPulse 2.4s infinite;

}

.nav-link.nav-link-offplan i{

    font-size:13px;
    color:#f0d99b;

}

.nav-link.nav-link-offplan:hover{

    color:#fff!important;
    transform:translateY(-3px);
    box-shadow:0 10px 26px rgba(176,139,61,.5);

}

@keyframes offplanPulse{

    0%{
        box-shadow:0 0 0 0 rgba(176,139,61,.55);
    }

    70%{
        box-shadow:0 0 0 10px rgba(176,139,61,0);
    }

    100%{
        box-shadow:0 0 0 0 rgba(176,139,61,0);
    }

}

/* ضمان اللون بقائمة الجوال */
.navbar-nav .nav-link.nav-link-offplan{

    color:#fff!important;
    display:inline-flex;
    justify-content:center;

}

/* زر "بيع على الخارطة" بصفحة تصنيفات المشاريع */
.btn-offplan{

    background:linear-gradient(135deg,#0f172a,#b08b3d);
    color:#fff!important;
    border:none;
    font-weight:800;
    box-shadow:0 6px 18px rgba(176,139,61,.35);
    animation:offplanPulse 2.4s infinite;

}

.btn-offplan:hover{

    color:#fff!important;
    transform:translateY(-3px);
    box-shadow:0 10px 26px rgba(176,139,61,.5);

}

/* شيك بوكس اختيار نوع الوحدة - شكل رقاقات احترافية */
.offplan-checkbox-group{

    display:flex;
    flex-wrap:wrap;
    gap:12px;

}

.offplan-checkbox-chip{

    position:relative;
    cursor:pointer;
    margin:0;

}

.offplan-checkbox-chip input{

    position:absolute;
    opacity:0;
    width:0;
    height:0;

}

.offplan-checkbox-chip span{

    display:inline-flex;
    align-items:center;
    padding:13px 24px;
    border:2px solid #e5e7eb;
    border-radius:14px;
    font-weight:700;
    font-size:15px;
    color:var(--primary);
    background:#f8fafc;
    transition:.25s;
    user-select:none;

}

.offplan-checkbox-chip span i{

    color:var(--gold-color);
    transition:.25s;

}

.offplan-checkbox-chip:hover span{

    border-color:var(--gold-color);
    transform:translateY(-2px);

}

.offplan-checkbox-chip input:checked + span{

    background:linear-gradient(135deg,#d4b15d,#b08b3d);
    border-color:var(--gold-color);
    color:#fff;
    box-shadow:0 10px 22px rgba(176,139,61,.35);

}

.offplan-checkbox-chip input:checked + span i{

    color:#fff;

}

.offplan-checkbox-chip input:focus-visible + span{

    outline:3px solid rgba(176,139,61,.4);
    outline-offset:2px;

}

.offplan-admin-page {
    width: min(100%, 1180px);
    margin-inline: auto;
}

.offplan-admin-actions .btn {
    min-height: 44px;
}

.offplan-admin-card-header {
    padding: 1.25rem 1.5rem 1rem;
}

.offplan-admin-card-header h4 {
    font-size: 1.15rem;
}

.offplan-admin-card-body {
    padding: 0 1.5rem 1.5rem;
}

.offplan-admin-page .form-label {
    line-height: 1.5;
}

.offplan-admin-page .form-control,
.offplan-admin-page .form-select {
    min-height: 44px;
}

.offplan-admin-page textarea.form-control {
    min-height: 104px;
}

.offplan-admin-page input[type="file"].form-control {
    height: auto;
    min-height: 44px;
}

.offplan-admin-submit {
    min-height: 46px;
    min-width: 180px;
}

.offplan-admin-unit {
    padding: 1rem;
    border: 1px solid #e2e8f0;
    border-radius: 1rem;
    background: #fff;
}

.offplan-admin-unit[open] {
    box-shadow: 0 8px 24px rgba(15, 23, 42, .06);
}

.offplan-admin-unit-summary {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .65rem;
    cursor: pointer;
    list-style: none;
}

.offplan-admin-unit-summary::-webkit-details-marker {
    display: none;
}

.offplan-admin-unit-summary::before {
    content: "\f078";
    display: inline-block;
    color: #8a6b2d;
    font-family: "Font Awesome 6 Free";
    font-size: .8rem;
    font-weight: 900;
    transition: transform .18s ease;
}

.offplan-admin-unit[open] .offplan-admin-unit-summary::before {
    transform: rotate(180deg);
}

.offplan-admin-unit-title {
    min-width: 0;
    overflow-wrap: anywhere;
}

.offplan-admin-unit-price {
    margin-inline-start: auto;
    color: #64748b;
    font-size: .9rem;
    font-weight: 700;
}

.offplan-admin-unit-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    justify-content: space-between;
}

.offplan-admin-unit-actions .btn {
    min-height: 44px;
}

@media (max-width: 767.98px) {
    .offplan-admin-card-header {
        padding: 1rem 1rem .75rem;
    }

    .offplan-admin-card-body {
        padding: 0 1rem 1rem;
    }

    .offplan-admin-unit {
        padding: .8rem;
    }
}

@media (max-width: 575.98px) {
    .offplan-admin-actions .btn,
    .offplan-admin-submit,
    .offplan-admin-unit-actions .btn {
        width: 100%;
    }

    .offplan-admin-unit-actions {
        flex-direction: column;
    }

    .offplan-admin-unit-price {
        width: 100%;
        margin-inline-start: 1.45rem;
    }

    .offplan-admin-page .alert {
        padding: .85rem;
        font-size: .92rem;
    }
}

/* Shared layout safeguards for narrow screens and long user-managed content. */
html {
    max-width: 100%;
    overflow-x: clip;
}

body {
    min-width: 320px;
    overflow-x: clip;
}

img,
video,
iframe,
canvas,
svg {
    max-width: 100%;
}

.container,
.container-fluid,
.row,
.row > *,
[class^="col-"],
[class*=" col-"] {
    min-width: 0;
}

.container,
.container-fluid {
    width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
small,
label,
button,
a,
td,
th {
    overflow-wrap: anywhere;
}

input,
select,
textarea,
.form-control,
.form-select {
    min-width: 0;
    max-width: 100%;
}

@media (max-width: 767.98px) {
    section {
        padding-block: clamp(2.75rem, 9vw, 4rem);
    }

    .container,
    .container-fluid {
        padding-inline: 1rem;
    }

    .navbar {
        padding-block: .55rem;
    }

    .navbar-collapse {
        max-height: calc(100dvh - 72px);
        overflow-y: auto;
        overscroll-behavior: contain;
    }

    .navbar-nav {
        gap: .2rem;
        padding-block: .5rem;
    }

    .navbar-nav .nav-link {
        margin-inline: 0;
        padding: .7rem .85rem;
    }

    .table-responsive,
    .admin-content .table {
        max-width: 100%;
    }

    .projectSwiper img,
    .projectSwiper video,
    .main-slider-img {
        height: min(65vw, 380px) !important;
        max-height: 65vh;
    }

    .projectThumbs img,
    .thumb-slider-img {
        height: 64px !important;
    }

    .modal-dialog {
        margin-inline: .75rem;
    }

    .modal-content {
        max-width: 100%;
    }

    .btn,
    .form-control,
    .form-select {
        min-height: 42px;
    }
}

@media (max-width: 575.98px) {
    .section-title {
        font-size: clamp(1.55rem, 7vw, 2rem);
        line-height: 1.35;
    }

    .hero-title {
        font-size: clamp(1.75rem, 8vw, 2.25rem);
        line-height: 1.35;
    }

    .card,
    .project-card,
    .project-sidebar,
    .feature-box {
        max-width: 100%;
    }

    .btn-group,
    .d-flex {
        min-width: 0;
    }

    .footer-contact,
    .footer-links,
    .footer-text {
        overflow-wrap: anywhere;
    }
}
