@font-face {
  font-family: 'Tajawal';
  src: url('../fonts/tajawal-v11-arabic-regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Tajawal';
  src: url('../fonts/tajawal-v11-arabic-700.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

body {
  font-family: 'Tajawal', Tahoma, Arial, sans-serif;
}

/* Font Awesome (محلي) */
@font-face {
  font-family: 'Font Awesome 6 Free';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url('webfonts/fa-solid-900.woff2') format('woff2');
}
@font-face {
  font-family: 'Font Awesome 6 Free';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('webfonts/fa-regular-400.woff2') format('woff2');
}
@font-face {
  font-family: 'Font Awesome 6 Brands';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('webfonts/fa-brands-400.woff2') format('woff2');
}

.logo-box, .topbar {align-items:center;display:flex}
.burger, .topbar {position:relative}
.company-title, nav a {color:var(--oss-yellow)}
.main-slider-btn:hover, body, nav a.active, nav a:hover {color:var(--oss-blue-dark)}
.details-btn, .logo-box, nav a {text-decoration:none}
.icon-bg, .icon-bg:hover {outline:#FFD600 solid 2px}
:root{
  --oss-blue:#1A379B;
  --oss-blue-dark:#08215C;
  --oss-yellow:#FFD600;
  --oss-yellow-dark:#e6b800;
  --oss-white:#fff;
  --oss-bg-grad:linear-gradient(135deg, #fff 0%, #eaf2fc 50%, #1A379B 100%);
  --oss-card-grad:linear-gradient(120deg, #fff 65%, #eaf2fc 100%);
  --oss-btn-grad:linear-gradient(90deg, #1A379B 60%, #FFD600 140%);
  --oss-btn-grad-hover:linear-gradient(90deg, #FFD600 40%, #1A379B 130%);
}
body,html{min-height:100%;background:var(--oss-bg-grad);background-attachment:fixed;scroll-behavior:smooth}
body{margin:0;padding:0;min-height:100vh}
.topbar,header{min-height:75px}
header{background:linear-gradient(90deg,var(--oss-blue-dark) 60%,var(--oss-blue) 100%);box-shadow:0 6px 32px #0002;position:fixed;top:0;left:0;width:100vw;z-index:1010;transition:box-shadow .2s}
.topbar{justify-content:space-between;padding:0 6vw;flex-direction:row}
.logo-box{gap:10px;cursor:pointer;height:58px}
.logo-box img{width:48px;height:48px;object-fit:contain;border-radius:12px;background:var(--oss-white);box-shadow:0 2px 8px #0001;border:2.5px solid var(--oss-yellow)}
.company-title{font-size:21px;font-weight:700;letter-spacing:.5px;text-shadow:0 2px 10px #003a6e33;white-space:nowrap;direction:rtl;display:flex;align-items:center;height:48px;margin:0;padding:0}
.filter-btn,.offer-status-bar,nav a{letter-spacing:1px}
.burger{display:none;flex-direction:column;justify-content:center;align-items:center;background:0 0;border:none;cursor:pointer;gap:5px;width:44px;height:44px;margin-right:0;margin-left:0;padding:0}
.burger span{display:block;width:32px;height:4px;background:var(--oss-yellow);border-radius:3px;margin:3px 0;transition:.3s}
nav ul{display:flex;gap:24px;list-style:none;margin:0;padding:0;align-items:center}
nav a{font-size:19px;font-weight:500;padding:12px 8px;transition:.2s;border-bottom:2.5px solid transparent}
nav a.active,nav a:hover{border-bottom:2.5px solid var(--oss-yellow)}
@media (max-width:900px){
  .topbar{padding:0 2vw;min-height:56px;flex-direction:row}
  .logo-box{height:38px;gap:7px}
  .logo-box img{width:32px;height:32px;border-radius:6px}
  .company-title{font-size:14px;height:32px}
  .burger{display:flex;position:absolute;left:10px;right:auto;top:11px;z-index:2050;margin-right:0;margin-left:0}
  nav{width:100vw}
  nav ul{display:none;flex-direction:column;align-items:flex-start;gap:0;background:#22366a;position:fixed;top:0;left:0;height:100vh;width:65vw;max-width:250px;box-shadow:0 8px 32px #0009;z-index:2100;border-radius:0 12px 12px 0;padding:70px 0 15px;min-width:unset;transition:transform .3s cubic-bezier(.4,2,.6,1),opacity .15s;transform:translateX(-100%);opacity:0}
  nav ul.open{display:flex;transform:translateX(0);opacity:1}
  nav ul li{width:100%;margin:0;padding:0;text-align:right;border-bottom:1px solid #fff2}
  nav a{color:var(--oss-yellow);padding:14px 20px;font-size:17px;width:100%;display:block}
  .admin-link{font-size:15px;padding:7px 8px!important}
  body.menu-open::before{content:"";position:fixed;inset:0;background:rgba(0,0,0,.19);z-index:2090;pointer-events:all;transition:.2s}
}
.section-bg{background:linear-gradient(135deg,#fff 0,#eaf2fc 60%,#1a379b 100%);border-radius:26px;box-shadow:0 6px 32px #0001;margin-bottom:38px;border:1.5px solid #e3e3e344}
.main-slider-section.section-bg{margin-top:44px}
.main-slider{position:relative;width:100%;height:340px;background:linear-gradient(90deg,#fff 0,#1a379b 100%);display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:22px}
.main-slider-img{width:100%;height:340px;object-fit:cover;border-radius:0;display:none;opacity:0;transition:opacity .6s}
.main-slider-img.active{display:block;opacity:1}
.main-slider-controls{position:absolute;top:50%;left:0;right:0;display:flex;justify-content:space-between;transform:translateY(-50%);pointer-events:none}
.main-slider-btn{background:var(--oss-btn-grad);color:var(--oss-white);border:none;border-radius:50%;font-size:29px;width:44px;height:44px;cursor:pointer;pointer-events:all;box-shadow:0 2px 10px #1a379B11;transition:.2s;display:flex;align-items:center;justify-content:center;font-weight:700}
.main-slider-btn:hover{background:var(--oss-btn-grad-hover)}
.main-slider-thumbs{display:flex;justify-content:center;gap:12px;margin:13px 0 16px}
.main-slider-thumb{width:54px;height:38px;object-fit:cover;border-radius:5px;border:2px solid var(--oss-yellow);cursor:pointer;opacity:.8;transition:.2s;box-shadow:0 2px 8px #ffd60033}
.main-slider-thumb.active{border:3px solid var(--oss-blue);opacity:1;box-shadow:0 6px 18px #ffd60044}
.about-section.section-bg{max-width:950px;margin:36px auto 28px;padding:42px 28px 32px;text-align:center}
.about-section h2{color:var(--oss-blue);font-size:32px;margin-bottom:19px;font-weight:700}
.about-section .about-content{max-width:600px;margin:0 auto 15px;color:var(--oss-blue-dark);font-size:20px;line-height:1.8;background:#fff9;border-radius:15px;padding:21px 18px;box-shadow:0 1px 12px #ffd60010}
.about-section .branches{color:var(--oss-yellow-dark);font-size:16px;margin-top:20px;text-align:center;line-height:2.1}
.about-section .branches span{display:block}
.services-section.section-bg{max-width:1100px;margin:32px auto 28px;padding:30px 10px 22px}
.properties-section h2,.services-section h2{color:var(--oss-blue-dark);text-align:center;margin-bottom:23px;font-size:28px}
.services-list{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;justify-content:center}
@media (max-width:950px){.services-list{grid-template-columns:repeat(2,1fr)}}
.service-card{background:var(--oss-card-grad);border-radius:18px;box-shadow:0 2px 16px #ffd6001a;min-height:180px;padding:24px 18px 19px;text-align:center;border:2px solid var(--oss-blue);color:var(--oss-blue-dark);position:relative;display:flex;flex-direction:column;justify-content:space-between;transition:.25s}
.filter-btn,.quote-btn{transition:.2s;font-weight:700}
.service-card h3{color:var(--oss-blue);margin:0 0 8px;font-weight:700;font-size:24px}
.service-card p{color:var(--oss-blue-dark);font-size:16px;margin-bottom:0;flex:1}
.quote-btn{background:var(--oss-btn-grad);color:var(--oss-white);border:none;border-radius:8px;padding:10px 0;font-size:16px;margin-top:18px;cursor:pointer;box-shadow:0 2px 10px #1a379B13}
.details-btn:hover,.quote-btn:hover{background:var(--oss-btn-grad-hover);color:var(--oss-blue)}
.properties-section.section-bg{max-width:1100px;margin:32px auto 28px;padding:28px 10px 22px}
.filter-bar-inside{justify-content:center;gap:35px;margin:0 auto 28px;background:var(--oss-card-grad);padding:17px 0 10px;border-radius:15px 15px 0 0;box-shadow:0 2px 12px #1a379B13;display:flex;flex-wrap:wrap}
.filter-btn{font-size:21px!important;padding:13px 35px!important;border-radius:30px!important;background:var(--oss-btn-grad);color:var(--oss-white)!important;margin:0 7px;border:none;box-shadow:0 2px 8px #ffd60055}
.filter-btn.active,.filter-btn:focus,.filter-btn:hover{background:var(--oss-btn-grad-hover);color:var(--oss-blue)!important;border:2px solid var(--oss-yellow);transform:scale(1.08);box-shadow:0 8px 24px #ffd60033}
.properties-list{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;justify-items:center;align-items:stretch}
@media (max-width:1100px){.properties-list{grid-template-columns:repeat(2,1fr)}}
@media (max-width:700px){.properties-list,.services-list{grid-template-columns:1fr}}
.property-card{background:linear-gradient(120deg,#fff 60%,#eaf2fc 100%);border-radius:15px;box-shadow:0 2px 16px #ffd6001c;overflow:hidden;min-height:340px;display:flex;flex-direction:column;transition:.18s;border:2px solid var(--oss-blue);cursor:pointer;position:relative;width:100%;max-width:330px}
.property-card:hover{transform:scale(1.04);box-shadow:0 8px 34px #ffd60033;border:2px solid var(--oss-yellow)}
.offer-status-bar{position:absolute;top:0;left:0;right:0;text-align:center;font-weight:700;font-size:18px;padding:8px 0;color:#fff;border-radius:13px 13px 0 0;z-index:2;background:#d00;box-shadow:0 4px 22px #0003}
.offer-status-sold{background:linear-gradient(90deg,#d00 60%,#a00 100%)}
.offer-status-rented{background:linear-gradient(90deg,#1a379b 60%,#ffd600 100%)}
.offer-status-reserved{background:linear-gradient(90deg,#888 60%,#ffd600 100%)}
.property-media{position:relative;background:#eee;height:210px;overflow:hidden}
.property-media img{width:100%;height:210px;object-fit:cover;display:block;filter:saturate(1.18)}
.property-info{padding:17px 18px 14px;flex:1}
.property-title{color:var(--oss-blue);font-size:21px;font-weight:700}
.property-location{color:var(--oss-blue-dark);font-size:15px;margin:6px 0}
.property-details{color:var(--oss-yellow-dark);font-size:15px;margin-bottom:9px}
.property-price{color:var(--oss-yellow);font-size:19px;margin-bottom:4px;font-weight:700}
.type-badge{background:var(--oss-yellow);color:var(--oss-blue-dark);font-weight:700;padding:5px 17px;border-radius:17px;display:inline-block;margin-bottom:6px;font-size:15px;margin-left:4px}
.admin-link,.details-btn{background:var(--oss-btn-grad);display:inline-block;font-weight:700}
.type-badge.rent{background:var(--oss-blue);color:var(--oss-yellow)}
.details-btn{color:var(--oss-white);padding:7.5px 25px;border:none;border-radius:7px;font-size:17px;transition:.2s;margin-top:7px;cursor:pointer;box-shadow:0 2px 8px #ffd60020}
.admin-link,.icon-bg,.icon-bg i{transition:.18s}
.admin-link{color:var(--oss-blue-dark)!important;border-radius:30px;padding:8px 22px!important;font-size:18px;margin-right:8px;border:2px solid var(--oss-yellow);box-shadow:0 2px 8px #ffd60077;text-decoration:none!important}
.admin-link:hover{background:var(--oss-btn-grad-hover);color:var(--oss-yellow)!important;border:2px solid var(--oss-blue);transform:scale(1.07)}
.contact-section{max-width:1200px;margin:40px auto 0}
.contact-section-title{text-align:center;font-size:24px;font-weight:700;color:#22366a;margin-bottom:25px}
.contact-cards.contact-cards-row{display:flex;flex-direction:row;justify-content:center;align-items:flex-start;gap:44px;width:100%;margin:0 auto 18px;flex-wrap:wrap}
.contact-card{background:#fff;border-radius:18px;box-shadow:0 2px 16px #ffd60022;border:2.5px solid #ffd600;padding:30px 18px 22px;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start}
.contact-card-contacts{order:1;min-width:420px;max-width:700px;flex:2 1 600px}
.contact-card-license{order:2;min-width:340px;max-width:390px;flex:1 1 340px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center}
.license-title{font-size:2rem;font-weight:700;color:#22366a;margin-bottom:18px}
.license-number-row{font-size:1.18rem;color:#22366a;margin-bottom:7px;font-weight:600}
.license-number{font-weight:700;color:#1a379b;font-size:1.22rem;padding-right:5px}
.license-issued{font-size:1.08rem;color:#22366a;margin-bottom:14px}
.license-img-box{padding:8px;border-radius:14px;border:2px solid #ffd600;background:#fff;margin-bottom:12px}
.license-img-box img{display:block;max-width:270px;width:98%;margin:0 auto;border-radius:9px}
.license-note{font-size:1.08rem;color:#888;margin-top:10px;margin-bottom:0}
.contact-title{font-size:20px;font-weight:700;margin-bottom:10px;color:#1a379b;width:100%}
.contact-card-contacts .contact-title{text-align:right!important;padding-right:10px}
.contact-card-license .contact-title{text-align:center!important;padding-right:0}
.addresses-list{display:flex;flex-direction:column;align-items:flex-start;gap:16px;width:100%}
.address-row{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:18px;width:100%;max-width:600px}
.address-icons{display:flex;flex-direction:row;gap:11px;flex-shrink:0;justify-content:flex-start}
.footer-content,.icon-bg{position:relative;align-items:center}
.icon-bg{background:#ffd600;border-radius:50%;width:48px;height:48px;display:flex;justify-content:center;box-shadow:0 2px 8px #ffd60033;border:2px solid #fff}
.icon-bg i{color:#1a379b;font-size:26px}
.icon-bg:hover{background:#1a379b}
.icon-bg:hover i{color:#ffd600;transform:scale(1.12)}
.address-text{font-size:17px;color:#22366a;text-align:right;direction:rtl;min-width:250px;line-height:1.8;flex:1}
@media (max-width:900px){
  .address-row{flex-direction:column;gap:10px;max-width:100%}
  .addresses-list{gap:10px}
  .address-icons{margin-bottom:8px}
  .address-text{text-align:center}
}
.address-details{color:#22366a;font-size:16px;line-height:1.8;margin-bottom:13px;text-align:center;width:100%;display:block}
.social-icons{display:flex;justify-content:center;gap:14px;margin-top:18px}
.footer-main{background:#1a379b;border-top:2px solid #ffd600;margin-top:36px}
.footer-content{min-height:48px;display:flex;justify-content:center;gap:0}
.footer-social{position:absolute;right:32px;top:0;bottom:0;display:flex;align-items:center;height:100%;gap:22px}
.modal-box,.modal-overlay{position:fixed;display:none}
.footer-copyright{margin:0 auto;font-size:17px;color:#ffd600;text-align:center;flex:1;font-weight:700;letter-spacing:.5px}
.modal-error,.modal-success{font-weight:700;text-align:center;margin-bottom:13px}
.modal-overlay{inset:0;z-index:1000;background:rgba(30,50,120,.44);backdrop-filter:blur(2px)}
.modal-box{top:50%;left:50%;transform:translate(-50%,-50%);background:#fffbe7;padding:28px 26px 22px;border-radius:13px;z-index:1010;min-width:310px;box-shadow:0 8px 40px #22366a44;flex-direction:column;align-items:center}
.modal-close-btn{position:absolute;left:13px;top:10px;font-size:21px;color:#f55;background:0 0;border:none;cursor:pointer;font-weight:700}
.modal-box input,.modal-box select,.modal-box textarea{width:100%;padding:8px;margin-bottom:10px;border-radius:6px;border:1px solid #ffd600}
.modal-box button[type=submit]{width:100%;padding:10px;background:#22366a;color:#fff;border-radius:7px;border:none;font-weight:700}
.modal-success{color:#2d972d}
.modal-error{color:#a00}