/*
Theme Name: Roya - رؤية لنقل العفش
Theme URI: https://roya-movers.com
Author: Roya Movers
Author URI: https://roya-movers.com
Description: قالب ووردبريس احترافي لشركة رؤية لنقل العفش والأثاث بالرياض. تصميم داكن أزرق/برتقالي متجاوب بالكامل (RTL) مع خريطة مناطق وكاروسيل خدمات ونموذج واتساب.
Version: 1.0
Requires at least: 5.5
Tested up to: 6.5
Requires PHP: 7.2
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: roya
*/

/* ========== Cairo Font ========== */
/* الخط يُحمَّل عبر wp_enqueue_style في functions.php (مع preconnect) — لا تستخدم @import هنا (حاجب للعرض ويُحمِّل الخط مرتين). */

* { margin:0; padding:0; box-sizing:border-box; }
img { max-width:100%; }

/* ========== SVG Icons ========== */
.icon { width:24px; height:24px; display:inline-block; fill:currentColor; }
.icon-large { width:32px; height:32px; }

.icon-phone {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E");
    background-size:contain; background-repeat:no-repeat; background-position:center;
}
.icon-whatsapp {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 11.5a8.38 8.38 0 0 1-.9 3.8 8.5 8.5 0 0 1-7.6 4.7 8.38 8.38 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 4.7-7.6 8.38 8.38 0 0 1 3.8-.9h.5a8.48 8.48 0 0 1 8 8v.5z'/%3E%3C/svg%3E");
    background-size:contain; background-repeat:no-repeat; background-position:center;
}
.icon-location, .icon-building, .icon-city, .icon-truck {
    background-size:contain; background-repeat:no-repeat; background-position:center;
}
.icon-location {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E");
}
.icon-building {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21h18'/%3E%3Cpath d='M5 21V7l8-4v18'/%3E%3Cpath d='M19 21V11l-6-4'/%3E%3Cpath d='M9 9v.01'/%3E%3Cpath d='M9 12v.01'/%3E%3Cpath d='M9 15v.01'/%3E%3Cpath d='M9 18v.01'/%3E%3C/svg%3E");
}
.icon-city {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21h18'/%3E%3Cpath d='M19 21V5a2 2 0 0 0-2-2H7a2 2 0 0 0-2 2v16'/%3E%3Cpath d='M9 8h.01'/%3E%3Cpath d='M9 12h.01'/%3E%3Cpath d='M9 16h.01'/%3E%3Cpath d='M15 8h.01'/%3E%3Cpath d='M15 12h.01'/%3E%3Cpath d='M15 16h.01'/%3E%3C/svg%3E");
}
.icon-truck {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='1' y='3' width='15' height='13'/%3E%3Cpolygon points='16 8 20 8 23 11 23 16 16 16 16 8'/%3E%3Ccircle cx='5.5' cy='18.5' r='2.5'/%3E%3Ccircle cx='18.5' cy='18.5' r='2.5'/%3E%3C/svg%3E");
}

body {
    font-family:'Cairo', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    direction:rtl;
    font-weight:400;
    line-height:1.6;
}

/* ========== رسائل النجاح/الخطأ ========== */
.form-message { padding:20px; border-radius:10px; margin-bottom:30px; text-align:center; font-size:1.1rem; font-weight:600; }
.form-message.success { background:#d4edda; color:#155724; border:2px solid #c3e6cb; }
.form-message.error   { background:#f8d7da; color:#721c24; border:2px solid #f5c6cb; }

/* ========== HERO SLIDER (تنقّل بالمصغّرات) ========== */
.hero-slider { position:relative; height:100vh; min-height:560px; overflow:hidden; background:#0F1C30; }
.hs-slide { position:absolute; inset:0; opacity:0; transition:opacity 1s ease; }
.hs-slide.active { opacity:1; }
.hs-bg { position:absolute; inset:0; background-size:cover; background-position:center; transition:transform 7s ease; }
.hs-slide.active .hs-bg { transform:scale(1.1); }
.hs-overlay { position:absolute; inset:0; background:linear-gradient(to right, rgba(15,28,48,.15) 0%, rgba(15,28,48,.42) 55%, rgba(15,28,48,.82) 100%); }
.hs-inner { position:relative; z-index:3; height:100%; max-width:1200px; margin:0 auto; padding:0 56px; display:flex; align-items:center; }
.hs-content { max-width:560px; color:#fff; }
.hs-content > * { opacity:0; transform:translateY(22px); transition:all .7s ease; }
.hs-slide.active .hs-content > * { opacity:1; transform:translateY(0); }
.hs-slide.active .hs-content > *:nth-child(2) { transition-delay:.12s; }
.hs-slide.active .hs-content > *:nth-child(3) { transition-delay:.24s; }
.hs-eyebrow { display:inline-flex; align-items:center; gap:10px; color:#ffd500; font-weight:700; font-size:1rem; letter-spacing:.5px; margin-bottom:16px; }
.hs-eyebrow::before { content:''; width:34px; height:2px; background:#ffd500; display:inline-block; }
.hs-title { font-size:3.8rem; font-weight:900; line-height:1.15; margin-bottom:18px; text-shadow:0 2px 24px rgba(0,0,0,.5); }
.hs-title .hs-hl { color:#ffd500; position:relative; white-space:nowrap; }
.hs-title .hs-hl::after { content:''; position:absolute; right:0; left:0; bottom:-8px; height:5px; background:#ffd500; border-radius:3px; box-shadow:0 4px 14px rgba(255,213,0,.6); }
.hs-sub { font-size:1.25rem; color:rgba(255,255,255,.92); text-shadow:0 1px 10px rgba(0,0,0,.5); }
.hs-arrow { position:absolute; top:50%; transform:translateY(-50%); z-index:6; width:52px; height:52px; border-radius:50%; background:rgba(255,255,255,.15); backdrop-filter:blur(4px); border:1px solid rgba(255,255,255,.3); display:flex; align-items:center; justify-content:center; cursor:pointer; transition:all .3s ease; }
.hs-arrow:hover { background:#ffd500; border-color:#ffd500; }
.hs-arrow svg { width:24px; height:24px; stroke:#fff; fill:none; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }
.hs-arrow.prev { right:26px; }
.hs-arrow.next { left:26px; }
.hs-thumbs { position:absolute; bottom:30px; left:50%; transform:translateX(-50%); z-index:6; display:flex; gap:14px; }
.hs-thumb { width:104px; height:64px; border-radius:12px; background-size:cover; background-position:center; cursor:pointer; border:2px solid transparent; opacity:.55; transition:all .3s ease; }
.hs-thumb:hover { opacity:.85; }
.hs-thumb.active { border-color:#ffd500; opacity:1; transform:translateY(-5px); box-shadow:0 10px 25px rgba(0,0,0,.35); }

/* ========== ABOUT (احترافي: عمودين + نقاط ثقة + شريط إحصائيات) ========== */
.about-section { padding:80px 0; position:relative; overflow:hidden; }
.about-container { max-width:1140px; margin:0 auto; padding:0 24px; position:relative; z-index:2; }
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.about-badge { display:inline-block; background:rgba(255,213,0,.18); color:#ffd500; border:1px solid rgba(255,213,0,.4); padding:7px 18px; border-radius:18px; font-size:13px; font-weight:700; margin-bottom:16px; }
.about-title { color:#fdc500; font-size:2.2rem; font-weight:800; line-height:1.3; margin-bottom:12px; }
.about-title .hl { color:#ffd500; }
.about-subtitle { color:#C9D2DC; font-size:1.22rem; font-weight:700; margin-bottom:16px; }
.about-desc { color:#AEBBCB; font-size:1.02rem; line-height:1.85; margin-bottom:22px; }
.about-points { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:26px; }
.about-point { display:flex; align-items:center; gap:11px; color:#E6ECF3; font-weight:700; font-size:.97rem; }
.about-point-ck { width:30px; height:30px; border-radius:9px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.about-point-ck svg { width:18px; height:18px; stroke:#fff; fill:none; stroke-width:2.6; stroke-linecap:round; stroke-linejoin:round; }
.about-cta { display:inline-flex; align-items:center; gap:10px; background:#ffd500; color:#fff; padding:14px 32px; border-radius:50px; text-decoration:none; font-weight:700; font-size:1.05rem; transition:all .3s ease; box-shadow:0 12px 30px rgba(255,213,0,.35); }
.about-cta:hover { background:#fdc500; transform:translateY(-2px); box-shadow:0 16px 40px rgba(253,197,0,.4); }
.about-cta svg { width:18px; height:18px; stroke:#fff; fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.about-imgwrap { position:relative; }
.about-img { width:100%; height:450px; object-fit:cover; border-radius:20px; border:1px solid rgba(255,255,255,.1); box-shadow:0 24px 55px rgba(0,0,0,.45); }
.about-corner { position:absolute; top:-12px; left:-12px; width:84px; height:84px; border-top:4px solid #ffd500; border-left:4px solid #ffd500; border-radius:20px 0 0 0; }
.about-corner.br { top:auto; left:auto; bottom:-12px; right:-12px; border-top:none; border-left:none; border-bottom:4px solid #fdc500; border-right:4px solid #fdc500; border-radius:0 0 20px 0; }
.about-statbar { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:44px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.1); border-radius:18px; padding:28px; }
.about-stat { text-align:center; border-left:1px solid rgba(255,255,255,.1); }
.about-stat:last-child { border-left:none; }
.about-stat-n { display:block; font-size:2rem; font-weight:900; line-height:1; }
.about-stat-l { font-size:.83rem; color:#AEBBCB; margin-top:6px; font-weight:600; }
@media (max-width:768px) {
    .about-grid { grid-template-columns:1fr; gap:30px; }
    .about-img { height:340px; }
    .about-title { font-size:1.8rem; }
    .about-points { grid-template-columns:1fr; }
    .about-statbar { grid-template-columns:1fr 1fr; gap:14px; padding:20px; }
    .about-stat { border-left:none; }
}

/* ========== SERVICES (كاروسيل بطاقات صور كبيرة + عدّاد) ========== */
.services-section { background:#0F1C30; padding:70px 0; position:relative; overflow:hidden; }
.services-container { max-width:1200px; margin:0 auto; padding:0 40px; position:relative; z-index:2; }
.srv-header { text-align:center; margin-bottom:38px; }
.srv-badge { display:inline-block; background:rgba(253,197,0,.14); color:#fdc500; border:1px solid rgba(253,197,0,.4); padding:7px 18px; border-radius:20px; font-size:13px; font-weight:700; margin-bottom:14px; }
.srv-title { color:#1E3A5F; font-size:2.3rem; font-weight:800; line-height:1.3; margin-bottom:10px; }
.srv-sub { color:#ffd500; font-size:1.3rem; font-weight:700; }
.svcr { position:relative; direction:ltr; --vis:2; }
.svcr-view { overflow:hidden; }
.svcr-track { display:flex; gap:24px; transition:transform .55s cubic-bezier(.4,0,.2,1); }
.svcr-card-wrap { flex:0 0 calc((100% - (var(--vis) - 1)*24px)/var(--vis)); position:relative; }
.svcr-card { display:block; width:100%; direction:rtl; position:relative; height:380px; border-radius:20px; overflow:hidden; text-decoration:none; box-shadow:0 12px 35px rgba(30,58,95,.12); }
.svcr-bg { position:absolute; inset:0; background-size:cover; background-position:center; transition:transform .6s ease; }
.svcr-card:hover .svcr-bg { transform:scale(1.08); }
.svcr-ov { position:absolute; inset:0; background:linear-gradient(to top, rgba(15,28,48,.93) 0%, rgba(15,28,48,.45) 55%, rgba(15,28,48,.10) 100%); transition:all .4s ease; }
.svcr-card:hover .svcr-ov { background:linear-gradient(to top, rgba(15,28,48,.95) 0%, var(--acc) 130%); }
.svcr-num { position:absolute; top:18px; left:24px; z-index:2; font-size:2.4rem; font-weight:900; color:rgba(255,255,255,.85); text-shadow:0 2px 10px rgba(0,0,0,.45); line-height:1; }
.svcr-wa { position:absolute; top:16px; right:16px; z-index:6; width:46px; height:46px; border-radius:50%; background:#ffd500; display:flex; align-items:center; justify-content:center; box-shadow:0 6px 18px rgba(255,213,0,.55); transition:all .3s ease; }
.svcr-wa svg { width:24px; height:24px; stroke:#fff; fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.svcr-wa:hover { transform:scale(1.14); box-shadow:0 8px 22px rgba(255,213,0,.7); }
.svcr-in { position:absolute; bottom:0; right:0; left:0; padding:30px; color:#fff; z-index:2; }
.svcr-ico { width:56px; height:56px; border-radius:15px; display:flex; align-items:center; justify-content:center; background:var(--acc); color:#fff; margin-bottom:16px; box-shadow:0 8px 20px rgba(0,0,0,.3); }
.svcr-ico svg { width:26px; height:26px; stroke:#fff; fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.svcr-card h4 { font-size:1.5rem; font-weight:800; margin-bottom:8px; }
.svcr-card p { font-size:.95rem; color:rgba(255,255,255,.88); margin-bottom:14px; line-height:1.5; }
.svcr-more { display:inline-flex; align-items:center; gap:6px; color:#fff; font-size:.92rem; font-weight:700; opacity:.92; transition:all .3s ease; }
.svcr-card:hover .svcr-more { gap:11px; color:#ffd500; }
.svcr-more svg { width:16px; height:16px; stroke:currentColor; fill:none; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }
.svcr-arrow { position:absolute; top:42%; transform:translateY(-50%); z-index:5; width:48px; height:48px; border-radius:50%; background:#1E3A5F; border:none; color:#fff; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:all .3s ease; box-shadow:0 6px 18px rgba(30,58,95,.3); }
.svcr-arrow:hover { background:#ffd500; }
.svcr-arrow svg { width:22px; height:22px; stroke:#fff; fill:none; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }
.svcr-arrow.prev { right:-14px; }
.svcr-arrow.next { left:-14px; }
.svcr-foot { display:flex; align-items:center; gap:18px; margin-top:28px; direction:rtl; }
.svcr-count { color:#1E3A5F; font-weight:700; font-size:1rem; white-space:nowrap; }
.svcr-count b { color:#ffd500; font-size:1.35rem; }
.svcr-bar { flex:1; height:5px; background:rgba(30,58,95,.12); border-radius:5px; overflow:hidden; }
.svcr-bar > span { display:block; height:100%; width:25%; background:#ffd500; border-radius:5px; transition:width .45s ease; }

/* ========== FLEET ========== */
.fleet-section    { background:#1E3A5F; padding:60px 0; position:relative; overflow:hidden; }
.fleet-container  { max-width:1400px; margin:0 auto; padding:0 20px; position:relative; z-index:2; }
.fleet-modern-grid{ display:grid; grid-template-columns:1fr 300px 1fr; gap:0; align-items:stretch; min-height:600px; border-radius:20px; overflow:hidden; box-shadow:0 20px 60px rgba(0,0,0,.35); }

.fleet-content-section  { background:#1E3A5F; padding:60px 50px; color:white; display:flex; flex-direction:column; justify-content:center; position:relative; }
.fleet-badge-modern     { display:inline-block; background:rgba(255,213,0,.2); color:#ffd500; padding:8px 20px; border-radius:20px; font-size:14px; font-weight:600; margin-bottom:25px; border:1px solid rgba(255,213,0,.4); width:fit-content; }
.fleet-intro-title, .fleet-intro-subtitle { font-size:2.2rem; font-weight:800; line-height:1.2; margin-bottom:15px; color:white; }
.fleet-intro-subtitle  { color:#ffd500; margin-bottom:30px; }
.fleet-intro-description{ font-size:1.05rem; line-height:1.8; color:rgba(255,255,255,.9); margin-bottom:40px; }
.fleet-stats-modern    { display:flex; gap:40px; margin-top:20px; }
.stat-item-modern      { text-align:left; }
.stat-number-modern    { font-size:2.5rem; font-weight:900; color:#ffd500; display:block; line-height:1; }
.stat-label-modern     { font-size:.9rem; color:rgba(255,255,255,.8); margin-top:5px; font-weight:500; }

.fleet-image-section { background:#fdc500; position:relative; overflow:hidden; }
.fleet-red-banner    { position:relative; height:100%; width:100%; }
.fleet-hero-image    { width:100%; height:100%; object-fit:cover; opacity:.85; transition:transform .3s ease; }
.fleet-image-section:hover .fleet-hero-image { transform:scale(1.05); }

.fleet-options-section { background:#1E3A5F; padding:60px 50px; color:white; display:flex; flex-direction:column; justify-content:center; }
.fleet-option { display:flex; align-items:flex-start; margin-bottom:30px; padding:18px 0; border-bottom:1px solid rgba(255,255,255,.1); transition:all .3s ease; }
.fleet-option:last-child { border-bottom:none; margin-bottom:35px; }
.fleet-option:hover { background:rgba(255,255,255,.05); padding-right:10px; padding-left:10px; border-radius:10px; }
.option-letter      { display:flex; align-items:center; justify-content:center; width:50px; height:50px; background:#fdc500; color:white; font-size:1.4rem; font-weight:800; border-radius:10px; margin-left:20px; flex-shrink:0; }
.option-content     { flex:1; }
.option-title       { font-size:1.25rem; font-weight:700; color:white; margin-bottom:6px; line-height:1.3; }
.option-description { font-size:.95rem; color:rgba(255,255,255,.8); line-height:1.5; margin-bottom:8px; }
.option-specs       { font-size:.9rem; color:#ffd500; font-weight:600; background:rgba(255,213,0,.12); padding:5px 12px; border-radius:10px; display:inline-block; }

/* ========== ADVANTAGES (عدّادات وإحصائيات) ========== */
.advantages-section { background:#0F1C30; padding:70px 0; position:relative; overflow:hidden; }
.advantages-container { max-width:1150px; margin:0 auto; padding:0 22px; position:relative; z-index:2; }
.adv-header { text-align:center; margin-bottom:40px; }
.adv-badge { display:inline-block; background:rgba(255,213,0,.15); color:#ffd500; border:1px solid rgba(255,213,0,.4); padding:7px 18px; border-radius:20px; font-size:13px; font-weight:700; margin-bottom:14px; }
.adv-title { color:#1E3A5F; font-size:2.3rem; font-weight:800; line-height:1.3; margin-bottom:10px; }
.adv-title .hl { color:#ffd500; }
.adv-subtitle { color:#AEBBCB; font-size:1.1rem; }
.adv-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-bottom:36px; }
.adv-stat { background:#fff; border:1px solid rgba(30,58,95,.10); border-radius:18px; padding:30px 18px; text-align:center; transition:all .3s ease; }
.adv-stat:hover { transform:translateY(-5px); box-shadow:0 16px 38px rgba(30,58,95,.10); }
.adv-stat-num { font-size:2.6rem; font-weight:900; line-height:1; }
.adv-stat-lbl { color:#AEBBCB; font-size:.9rem; margin-top:8px; font-weight:600; }
.adv-feats { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.adv-feat { display:flex; gap:14px; align-items:flex-start; background:#fff; border:1px solid rgba(30,58,95,.10); border-radius:14px; padding:20px; transition:all .3s ease; }
.adv-feat:hover { transform:translateY(-3px); box-shadow:0 12px 28px rgba(30,58,95,.08); }
.adv-feat-ico { width:46px; height:46px; border-radius:12px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.adv-feat-ico svg { width:24px; height:24px; stroke:currentColor; fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.adv-feat h4 { color:#1E3A5F; font-size:1.05rem; font-weight:700; margin-bottom:4px; }
.adv-feat p { color:#AEBBCB; font-size:.88rem; line-height:1.5; }

/* ========== PROCESS (خط زمني أفقي مترابط) ========== */
.process-section { background:#0F1C30; padding:70px 0; position:relative; overflow:hidden; }
.process-container { max-width:1140px; margin:0 auto; padding:0 24px; position:relative; z-index:2; }
.process-header { text-align:center; margin-bottom:46px; }
.process-badge { display:inline-block; background:rgba(255,213,0,.14); color:#ffd500; border:1px solid rgba(255,213,0,.4); padding:7px 18px; border-radius:18px; font-size:13px; font-weight:700; margin-bottom:14px; }
.process-title { color:#1E3A5F; font-size:2.3rem; font-weight:800; line-height:1.3; margin-bottom:10px; }
.process-subtitle { color:#AEBBCB; font-size:1.15rem; }
.process-timeline { position:relative; display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
.process-tl-line { position:absolute; top:38px; right:12%; left:12%; height:3px; z-index:0; background:linear-gradient(90deg,#ffd500,#fdc500,#fdc500,#e0ae00); border-radius:3px; }
.process-step { text-align:center; position:relative; z-index:1; }
.process-node { position:relative; width:78px; height:78px; border-radius:50%; color:#fff; display:flex; align-items:center; justify-content:center; margin:0 auto 18px; border:5px solid #0F1C30; transition:all .3s ease; }
.process-step:hover .process-node { transform:translateY(-5px); }
.process-node svg { width:30px; height:30px; stroke:#fff; fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.process-node-num { position:absolute; top:-6px; left:-6px; width:27px; height:27px; background:#1E3A5F; color:#fff; border-radius:50%; font-size:.85rem; font-weight:800; display:flex; align-items:center; justify-content:center; border:2px solid #0F1C30; }
.process-step h4 { color:#1E3A5F; font-size:1.18rem; font-weight:700; margin-bottom:8px; }
.process-step p { color:#AEBBCB; font-size:.92rem; line-height:1.55; max-width:240px; margin:0 auto; }
.process-stats { display:flex; justify-content:center; gap:60px; margin-top:50px; padding-top:30px; border-top:1px solid rgba(30,58,95,.12); }
.process-stat { text-align:center; }
.process-stat-number { font-size:2.3rem; font-weight:900; color:#ffd500; display:block; line-height:1; }
.process-stat-label { font-size:.88rem; color:#AEBBCB; margin-top:6px; font-weight:600; }

/* ========== SERVICE AREAS (خريطة الرياض - صورة شفافة) ========== */
.service-areas-section { padding:70px 0; position:relative; overflow:hidden; }
.service-areas-container { max-width:900px; margin:0 auto; padding:0 24px; position:relative; z-index:2; text-align:center; }
.service-areas-badge { display:inline-block; background:rgba(253,197,0,.16); color:#fdc500; border:1px solid rgba(253,197,0,.45); padding:8px 20px; border-radius:20px; font-size:14px; font-weight:600; margin-bottom:16px; }
.service-areas-title { color:#fdc500; font-size:2.4rem; font-weight:800; line-height:1.2; margin-bottom:12px; }
.service-areas-subtitle { color:#fff; font-size:1.3rem; font-weight:700; margin-bottom:10px; }
.rmap { max-width:480px; margin:26px auto 0; }
.rmap img { width:100%; height:auto; display:block; filter:drop-shadow(0 16px 38px rgba(0,0,0,.45)); }
.rmap-cap { color:#D6E2F0; font-size:1.06rem; margin-top:24px; line-height:1.7; }
@media (max-width:768px) { .service-areas-title { font-size:1.9rem; } .rmap { max-width:340px; } }

/* ========== CONTACT COMPACT ========== */
.contact-section          { background:#1E3A5F; padding:50px 0; position:relative; overflow:hidden; }
.contact-container        { max-width:1000px; margin:0 auto; padding:0 20px; position:relative; z-index:2; }
.contact-compact-grid     { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; }
.contact-info-compact     { color:white; }
.contact-title-compact    { font-size:2rem; font-weight:800; line-height:1.2; margin-bottom:15px; color:white; }
.contact-subtitle-compact { font-size:1.2rem; color:#ffd500; font-weight:600; margin-bottom:20px; }
.contact-methods-compact  { display:flex; gap:20px; margin-bottom:25px; }
.contact-method-compact   { display:flex; flex-direction:column; align-items:center; padding:20px 15px; background:rgba(255,255,255,.05); border-radius:15px; transition:all .3s ease; flex:1; text-align:center; }
.contact-method-compact:hover { background:rgba(255,255,255,.1); transform:translateY(-3px); }
.method-icon-compact      { width:45px; height:45px; border-radius:50%; display:flex; align-items:center; justify-content:center; margin-bottom:12px; }
.phone-icon-compact     { background:linear-gradient(135deg,#28a745,#20c997); }
.whatsapp-icon-compact  { background:linear-gradient(135deg,#25d366,#128c7e); }
.method-icon-compact .icon { width:20px; height:20px; filter:brightness(0) invert(1); }
.method-title-compact   { font-size:1rem; font-weight:700; color:white; margin-bottom:5px; }
.method-value-compact   { font-size:.95rem; color:#ffd500; font-weight:600; }
.method-value-compact a { color:#ffd500; text-decoration:none; }
.method-value-compact a:hover { color:#fff; }
.contact-cta-compact    { display:flex; gap:15px; flex-wrap:wrap; }
.contact-button-compact { display:inline-flex; align-items:center; padding:12px 25px; border-radius:25px; text-decoration:none; font-weight:600; font-size:1rem; transition:all .3s ease; gap:8px; flex:1; justify-content:center; }
.contact-button-compact.primary   { background:#ffd500; color:white; }
.contact-button-compact.secondary { background:rgba(255,255,255,.1); color:white; border:1px solid rgba(255,255,255,.3); }
.contact-button-compact:hover { transform:translateY(-2px); box-shadow:0 8px 20px rgba(0,0,0,.3); }
.contact-button-compact.primary:hover   { background:#fdc500; }
.contact-button-compact.secondary:hover { background:rgba(255,255,255,.2); }
.contact-button-compact .icon { width:16px; height:16px; filter:brightness(0) invert(1); }
.contact-image-compact            { position:relative; }
.contact-image-container-compact  { position:relative; border-radius:15px; overflow:hidden; box-shadow:0 15px 40px rgba(0,0,0,.35); }
.contact-main-image-compact       { width:100%; height:260px; object-fit:cover; transition:transform .3s ease; }
.contact-image-container-compact:hover .contact-main-image-compact { transform:scale(1.05); }
.emergency-overlay     { position:absolute; bottom:20px; left:20px; right:20px; background:rgba(253,197,0,.95); color:white; padding:15px 20px; border-radius:10px; text-align:center; backdrop-filter:blur(10px); }
.emergency-title-compact{ font-size:1rem; font-weight:700; margin-bottom:8px; }
.emergency-button-compact{ display:inline-flex; align-items:center; background:rgba(255,255,255,.2); color:white; padding:8px 15px; border-radius:20px; text-decoration:none; font-weight:600; font-size:.9rem; transition:all .3s ease; gap:5px; }
.emergency-button-compact:hover { background:rgba(255,255,255,.35); transform:scale(1.05); }
.emergency-button-compact .icon { width:14px; height:14px; filter:brightness(0) invert(1); }

/* ========== CONTACT FORM ========== */
.roya-section         { background:#1E3A5F; padding:80px 0; }
.roya-container       { max-width:1200px; margin:0 auto; padding:0 20px; }
.roya-section-header  { text-align:center; margin-bottom:60px; }
.roya-section-badge   { display:inline-block; background:#fdc500; color:white; padding:10px 25px; border-radius:25px; font-size:15px; font-weight:600; margin-bottom:20px; }
.roya-section-title   { font-size:2.8rem; font-weight:800; margin-bottom:15px; color:white; }
.roya-section-subtitle{ font-size:1.3rem; color:#ffd500; font-weight:600; }
.roya-contact-grid    { display:grid; grid-template-columns:1fr 1.2fr; gap:60px; align-items:start; }
.roya-contact-info    { background:rgba(255,255,255,.05); padding:50px 40px; border-radius:20px; color:white; border:1px solid rgba(255,255,255,.1); }
.roya-contact-info h3 { font-size:2rem; margin-bottom:15px; color:white; }
.roya-contact-info > p{ font-size:1.05rem; line-height:1.7; margin-bottom:35px; opacity:.9; }
.roya-contact-item    { display:flex; align-items:flex-start; gap:20px; margin-bottom:30px; padding:20px; background:rgba(255,255,255,.05); border-radius:15px; transition:all .3s ease; }
.roya-contact-item:hover { background:rgba(255,255,255,.1); transform:translateX(-5px); }
.roya-contact-item-icon { width:50px; height:50px; background:#fdc500; border-radius:50%; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.roya-contact-item-icon svg { width:24px; height:24px; stroke:white; fill:none; }
.roya-contact-item-content h4 { font-size:1.2rem; margin-bottom:8px; color:white; }
.roya-contact-item-content p  { font-size:1rem; opacity:.9; }
.roya-contact-item-content a  { color:white; text-decoration:none; transition:color .3s ease; }
.roya-contact-item-content a:hover { color:#ffd500; }
.roya-contact-form   { background:rgba(255,255,255,.05); padding:50px 40px; border-radius:20px; border:1px solid rgba(255,255,255,.1); }
.roya-form-group     { margin-bottom:25px; }
.roya-form-label     { display:block; font-size:1.05rem; font-weight:600; color:white; margin-bottom:10px; }
.roya-form-input, .roya-form-textarea { width:100%; padding:15px 20px; border:2px solid rgba(255,255,255,.2); border-radius:10px; font-size:1rem; font-family:'Cairo',sans-serif; transition:all .3s ease; background:rgba(255,255,255,.08); color:white; }
.roya-form-input::placeholder, .roya-form-textarea::placeholder { color:rgba(255,255,255,.5); }
.roya-form-input:focus, .roya-form-textarea:focus { outline:none; border-color:#fdc500; box-shadow:0 0 0 3px rgba(253,197,0,.25); background:rgba(255,255,255,.12); }
.roya-form-textarea  { resize:vertical; min-height:120px; }
.roya-form-submit    { width:100%; background:#ffd500; color:white; padding:18px 40px; border:none; border-radius:10px; font-size:1.2rem; font-weight:700; font-family:'Cairo',sans-serif; cursor:pointer; transition:all .3s ease; box-shadow:0 8px 25px rgba(255,213,0,.35); }
.roya-form-submit:hover { background:#fdc500; transform:translateY(-2px); box-shadow:0 12px 35px rgba(253,197,0,.45); }

/* ========== RESPONSIVE ========== */
@media (max-width:1024px){
    .fleet-modern-grid { grid-template-columns:1fr; }
    .fleet-content-section,.fleet-options-section { padding:50px 30px; }
    .fleet-image-section { min-height:380px; }
}
@media (max-width:768px){
    .hero-slider { height:88vh; }
    .hs-title { font-size:2.5rem; }
    .hs-sub { font-size:1.05rem; }
    .hs-inner { padding:0 24px; }
    .hs-thumb { width:80px; height:52px; }
    .hs-arrow { display:none; }
    .about-grid { grid-template-columns:1fr; gap:36px; }
    .about-imgwrap { height:380px; }
    .about-title { font-size:1.8rem; }
    .services-section .svcr { --vis:1; }
    .svcr-card { height:330px; }
    .srv-title { font-size:1.9rem; }
    .svcr-arrow.prev { right:2px; }
    .svcr-arrow.next { left:2px; }
    .adv-stats { grid-template-columns:1fr 1fr; }
    .adv-feats { grid-template-columns:1fr; }
    .adv-title { font-size:1.9rem; }
    .process-timeline { grid-template-columns:1fr 1fr; }
    .process-tl-line { display:none; }
    .process-title { font-size:1.9rem; }
    .contact-compact-grid { grid-template-columns:1fr; }
    .contact-methods-compact { flex-direction:column; }
    .roya-contact-grid { grid-template-columns:1fr; gap:40px; }
}
@media (max-width:480px){
    .hs-title { font-size:2rem; }
    .hs-thumb { width:64px; height:42px; }
    .about-stats { gap:20px; }
    .fleet-stats-modern,.process-stats { flex-direction:column; gap:24px; text-align:center; }
    .process-timeline { grid-template-columns:1fr; }
    .contact-cta-compact { flex-direction:column; }
    .contact-button-compact { flex:none; }
    .svcr-card { height:300px; }
}

/* ========== تبديل خلفية الأقسام: أقسام فاتحة (Light) ========== */
/* اللوحة: كحلي #1E3A5F | تركوازي #fdc500 | مرجاني #ffd500 | فاتح #0F1C30 */

/* --- CONTACT FORM (فاتح) --- */
.roya-section { background:#0F1C30; }
.roya-section .roya-section-title { color:#1E3A5F; }
.roya-section .roya-section-subtitle { color:#ffd500; }
.roya-section .roya-contact-info { background:#FFFFFF; border:1px solid rgba(30,58,95,.10); color:#1E3A5F; }
.roya-section .roya-contact-info h3 { color:#1E3A5F; }
.roya-section .roya-contact-info > p { color:#AEBBCB; opacity:1; }
.roya-section .roya-contact-item { background:#0F1C30; }
.roya-section .roya-contact-item:hover { background:rgba(30,58,95,.05); }
.roya-section .roya-contact-item-content h4 { color:#1E3A5F; }
.roya-section .roya-contact-item-content p { color:#AEBBCB; opacity:1; }
.roya-section .roya-contact-item-content a { color:#1E3A5F; }
.roya-section .roya-contact-item-content a:hover { color:#ffd500; }
.roya-section .roya-contact-form { background:#FFFFFF; border:1px solid rgba(30,58,95,.10); }
.roya-section .roya-form-label { color:#1E3A5F; }
.roya-section .roya-form-input, .roya-section .roya-form-textarea { border:2px solid rgba(30,58,95,.15); background:#F8FAF9; color:#1E3A5F; }
.roya-section .roya-form-input::placeholder, .roya-section .roya-form-textarea::placeholder { color:#94A3B8; }
.roya-section .roya-form-input:focus, .roya-section .roya-form-textarea:focus { border-color:#fdc500; background:#FFFFFF; box-shadow:0 0 0 3px rgba(253,197,0,.20); }


/* ========== أقسام فاتحة إضافية (الموقع ~90% فاتح، الـHero فقط داكن) ========== */
/* كحلي #1E3A5F | تركوازي #fdc500 | مرجاني #ffd500 | فاتح #0F1C30 | نص خافت #AEBBCB */

/* --- FLEET (فاتح) --- */
.fleet-section { background:#0F1C30; }
.fleet-modern-grid { box-shadow:0 20px 60px rgba(30,58,95,.15); }
.fleet-content-section { background:#FFFFFF; color:#1E3A5F; }
.fleet-options-section { background:#FFFFFF; color:#1E3A5F; }
.fleet-section .fleet-intro-title { color:#1E3A5F; }
.fleet-section .fleet-intro-description { color:#AEBBCB; }
.fleet-section .stat-label-modern { color:#AEBBCB; }
.fleet-section .fleet-option { border-bottom:1px solid rgba(30,58,95,.10); }
.fleet-section .fleet-option:hover { background:rgba(30,58,95,.04); }
.fleet-section .option-title { color:#1E3A5F; }
.fleet-section .option-description { color:#AEBBCB; }

/* --- CONTACT COMPACT (فاتح) --- */
.contact-section { background:#0F1C30; }
.contact-section .contact-info-compact { color:#1E3A5F; }
.contact-section .contact-title-compact { color:#1E3A5F; }
.contact-section .contact-method-compact { background:#FFFFFF; border:1px solid rgba(30,58,95,.10); }
.contact-section .contact-method-compact:hover { background:#FFFFFF; box-shadow:0 8px 20px rgba(30,58,95,.10); }
.contact-section .method-title-compact { color:#1E3A5F; }
.contact-section .method-value-compact a:hover { color:#1E3A5F; }
.contact-section .contact-button-compact.secondary { background:#1E3A5F; color:white; border:none; }
.contact-section .contact-button-compact.secondary:hover { background:#fdc500; }


/* ========== ضبط شامل للموبايل ========== */
@media (max-width:768px) {
    .about-section, .services-section, .advantages-section, .process-section, .service-areas-section { padding-top:50px; padding-bottom:50px; }
    .contact-section { padding:44px 0; }
    .roya-section { padding:50px 0; }
    .services-container { padding:0 18px; }
    .about-container, .advantages-container, .process-container, .service-areas-container { padding:0 18px; }
    .contact-container, .roya-container { padding:0 18px; }
    .fleet-content-section, .fleet-options-section { padding:42px 24px; }
    .srv-title, .service-areas-title, .process-title { font-size:1.85rem; }
    .srv-sub, .service-areas-subtitle { font-size:1.15rem; }
    .roya-contact-info, .roya-contact-form { padding:34px 24px; }
    .roya-section-title { font-size:2.1rem; }
}
@media (max-width:480px) {
    .about-section, .services-section, .advantages-section, .process-section, .service-areas-section { padding-top:42px; padding-bottom:42px; }
    .srv-title, .service-areas-title, .process-title, .about-title, .adv-title { font-size:1.6rem; }
    .srv-sub, .service-areas-subtitle, .about-subtitle { font-size:1.08rem; }
    .hero-slider { height:82vh; }
    .hs-eyebrow { font-size:.9rem; }
    .hs-thumb { width:58px; height:38px; }
    .hs-thumbs { gap:8px; bottom:20px; }
    .about-stats { gap:18px; }
    .about-stat-n { font-size:1.7rem; }
    .adv-stats { grid-template-columns:1fr 1fr; gap:12px; }
    .adv-stat { padding:20px 12px; }
    .adv-stat-num { font-size:2rem; }
    .svcr-card h4 { font-size:1.3rem; }
    .svcr-in { padding:24px; }
    .svcr-num { font-size:2rem; }
    .contact-title-compact { font-size:1.55rem; }
    .roya-section-title { font-size:1.85rem; }
    .sac-pill { font-size:.85rem; padding:6px 13px; }
    .process-stat-number { font-size:2rem; }
}

/* ========== ثيم داكن متدرّج ========== */
body { background:#00296b !important; background:linear-gradient(180deg,#00509d 0%,#00296b 100%) !important; background-attachment:fixed !important; }
.services-section { background:linear-gradient(160deg,#00509d 0%,#00296b 100%); }
.advantages-section { background:linear-gradient(160deg,#00296b 0%,#00509d 100%); }
.process-section { background:linear-gradient(160deg,#00509d 0%,#00296b 100%); }
.service-areas-section { background:linear-gradient(160deg,#00296b 0%,#00509d 100%); }
.contact-section { background:linear-gradient(160deg,#00509d 0%,#00296b 100%); }
.roya-section { background:linear-gradient(160deg,#00296b 0%,#00509d 100%); }
.fleet-section { background:linear-gradient(160deg,#00509d 0%,#00296b 100%); }
.about-section { background:linear-gradient(160deg,#00296b 0%,#00509d 100%); }

/* أسطح البطاقات -> داكنة */
.adv-stat, .adv-feat, .sac-panel,
.fleet-section .fleet-content-section, .fleet-section .fleet-options-section,
.contact-section .contact-method-compact,
.roya-section .roya-contact-info, .roya-section .roya-contact-item, .roya-section .roya-contact-form {
    background:linear-gradient(160deg,rgba(255,255,255,.10) 0%,rgba(255,255,255,.04) 100%) !important;
    border-color:rgba(255,255,255,.16) !important;
    box-shadow:0 14px 38px rgba(0,0,0,.4) !important;
}
.sac-node { background:#28415F !important; }

/* العناوين -> فاتحة */
.srv-title, .adv-title, .process-title, .service-areas-title,
.roya-section .roya-section-title, .fleet-section .fleet-intro-title,
.contact-section .contact-title-compact { color:#fdc500 !important; }

/* عناوين/نصوص البطاقات -> فاتحة */
.svcr-count, .adv-feat h4, .process-step h4,
.roya-section .roya-contact-info h3, .roya-section .roya-contact-item-content h4,
.fleet-section .option-title, .contact-section .method-title-compact { color:#fdc500 !important; }
.svcr-count b { color:#ffd500 !important; }
.sac-nm { color:#C9D2DC !important; }
.sac-node.active .sac-nm { color:#fff !important; }
.fleet-section .fleet-content-section, .fleet-section .fleet-options-section,
.roya-section .roya-contact-info, .contact-section .contact-info-compact { color:#AEBBCB !important; }
.roya-section .roya-contact-item-content a { color:#AEBBCB !important; }

/* فواصل/مسارات شفافة فاتحة */
.process-stats { border-top-color:rgba(255,255,255,.14) !important; }
.svcr-bar { background:rgba(255,255,255,.12) !important; }
.sac-center::after { border-color:rgba(255,255,255,.22) !important; }

/* حقول النموذج -> داكنة */
.roya-section .roya-form-label { color:#C9D2DC !important; }
.roya-section .roya-form-input, .roya-section .roya-form-textarea, .roya-section .roya-form-select {
    background:rgba(255,255,255,.06) !important; color:#fdc500 !important; border-color:rgba(255,255,255,.16) !important;
}
.roya-section .roya-form-input::placeholder, .roya-section .roya-form-textarea::placeholder { color:#8C9AAC !important; }

/* ===================== HEADER / NAV ===================== */
.site-header{position:fixed;top:0;left:0;right:0;z-index:1000;background:transparent;border-bottom:1px solid transparent;transition:background .35s ease,border-color .35s ease,box-shadow .35s ease;}
.site-header.scrolled{background:rgba(2,62,125,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom-color:rgba(255,255,255,.1);box-shadow:0 6px 24px rgba(0,0,0,.28);}
/* non-home pages get top space so fixed header doesn't overlap content */
body:not(.home):not(.front-page){padding-top:76px;}
.sh-container{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:20px;height:78px;}
.sh-logo{text-decoration:none;color:#fff;display:flex;align-items:center;gap:11px;}
.sh-logo-icon{width:42px;height:42px;border-radius:12px;background:rgba(255,213,0,.16);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.sh-logo-icon svg{width:25px;height:25px;stroke:#ffd500;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.sh-logo-text{font-size:2.05rem;font-weight:900;line-height:1;}
.sh-logo-text span{color:#ffd500;}
.sh-logo img{max-height:46px;width:auto;}
.sh-nav{margin-right:auto;}
.sh-menu{list-style:none;display:flex;gap:6px;margin:0;padding:0;}
.sh-menu li a{display:block;color:#D6E2F0;text-decoration:none;font-weight:700;padding:8px 14px;border-radius:10px;transition:.25s;font-size:.98rem;}
.sh-menu li a:hover,.sh-menu li.current-menu-item a{color:#fff;background:rgba(255,255,255,.08);}
.sh-cta{background:#ffd500;color:#fff;text-decoration:none;font-weight:700;padding:11px 22px;border-radius:50px;transition:.3s;white-space:nowrap;}
.sh-cta:hover{background:#e0ae00;transform:translateY(-2px);}
.sh-toggle{display:none;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:46px;height:46px;background:rgba(255,213,0,.12);border:1px solid rgba(255,213,0,.45);border-radius:11px;cursor:pointer;padding:0;margin-right:auto;transition:.25s;}
.sh-toggle:hover{background:rgba(255,213,0,.22);}
.sh-toggle span{width:23px;height:2.5px;background:#ffd500;border-radius:3px;transition:.3s;display:block;}
@media(max-width:900px){
 .sh-nav{position:fixed;top:72px;right:0;left:0;background:#00296b;flex-direction:column;padding:14px 24px;transform:translateY(-160%);transition:transform .35s ease;border-bottom:1px solid rgba(255,255,255,.1);box-shadow:0 20px 40px rgba(0,0,0,.4);}
 .sh-nav.open{transform:translateY(0);}
 .sh-menu{flex-direction:column;gap:4px;}
 .sh-toggle{display:flex;}
 .sh-cta{display:none;}
}

/* ===================== FOOTER ===================== */
.site-footer{background:linear-gradient(180deg,#00296b 0%,#001a44 100%);color:#AEBBCB;padding:56px 0 0;border-top:1px solid rgba(255,255,255,.08);}
.sf-container{max-width:1200px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:36px;}
.sf-logo{font-size:1.8rem;font-weight:900;color:#fff;margin-bottom:14px;}
.sf-logo span{color:#ffd500;}
.sf-about p{line-height:1.8;font-size:.95rem;}
.sf-col h4{color:#fff;font-size:1.12rem;margin-bottom:16px;font-weight:700;}
.sf-col ul{list-style:none;padding:0;margin:0;}
.sf-col ul li{margin-bottom:10px;}
.sf-col ul li a{color:#AEBBCB;text-decoration:none;transition:.25s;font-size:.95rem;}
.sf-col ul li a:hover{color:#fdc500;padding-right:5px;}
.sf-contact-item{display:flex;align-items:center;gap:10px;margin-bottom:12px;font-size:.95rem;}
.sf-contact-item svg{width:18px;height:18px;stroke:#ffd500;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;}
.sf-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px;padding:20px 24px;margin-top:44px;border-top:1px solid rgba(255,255,255,.08);font-size:.9rem;color:#8EA2BC;max-width:1200px;margin-left:auto;margin-right:auto;}
.sf-bottom .sf-credit{display:inline-flex;align-items:center;gap:8px;}
.sf-bottom .sf-credit svg{width:17px;height:17px;flex-shrink:0;fill:none;stroke:#ffd500;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.sf-bottom .sf-credit a{color:#fdc500;font-weight:700;text-decoration:none;transition:.25s;}
.sf-bottom .sf-credit a:hover{color:#ffd500;text-decoration:underline;}
@media(max-width:600px){.sf-bottom{flex-direction:column;justify-content:center;text-align:center;gap:12px;}}
@media(max-width:768px){.sf-container{grid-template-columns:1fr 1fr;gap:28px;}}
@media(max-width:480px){.sf-container{grid-template-columns:1fr;}}

/* ===================== FLOATING CONTACT ===================== */
.floating-contact-wrap{position:fixed;bottom:36px;right:24px;display:flex;flex-direction:column;gap:16px;z-index:9999;align-items:flex-start;}
.floating-btn{position:relative;display:flex;align-items:center;height:60px;width:60px;border-radius:50%;overflow:hidden;text-decoration:none;color:#fff;font-family:'Cairo',sans-serif;font-size:15px;font-weight:700;white-space:nowrap;transition:width .38s cubic-bezier(.4,0,.2,1),border-radius .38s cubic-bezier(.4,0,.2,1),transform .25s ease;}
.floating-btn:hover{width:168px;border-radius:32px;transform:translateY(-3px);}
.fb-icon{width:60px;min-width:60px;height:60px;display:flex;align-items:center;justify-content:center;}
.fb-icon svg{width:24px;height:24px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.fb-label{opacity:0;transform:translateX(10px);transition:opacity .25s ease .05s,transform .25s ease .05s;padding-left:20px;}
.floating-btn:hover .fb-label{opacity:1;transform:translateX(0);}
.phone-btn{background:#e0ae00;animation:pulsePhone 2.4s ease-out infinite;}
.whatsapp-btn{background:#fdc500;animation:pulseWhats 2.4s ease-out infinite .8s;}
@keyframes pulsePhone{0%{box-shadow:0 6px 20px rgba(224,174,0,.4),0 0 0 0 rgba(224,174,0,.5);}70%{box-shadow:0 6px 20px rgba(224,174,0,.4),0 0 0 16px rgba(224,174,0,0);}100%{box-shadow:0 6px 20px rgba(224,174,0,.4),0 0 0 0 rgba(224,174,0,0);}}
@keyframes pulseWhats{0%{box-shadow:0 6px 20px rgba(253,197,0,.4),0 0 0 0 rgba(253,197,0,.5);}70%{box-shadow:0 6px 20px rgba(253,197,0,.4),0 0 0 16px rgba(253,197,0,0);}100%{box-shadow:0 6px 20px rgba(253,197,0,.4),0 0 0 0 rgba(253,197,0,0);}}
@media (max-width:480px){.floating-contact-wrap{bottom:22px;right:14px;gap:12px;}.floating-btn{height:54px;width:54px;}.floating-btn:hover{width:150px;}.fb-icon{width:54px;min-width:54px;height:54px;}}

/* ===================== LANDING / SERVICE PAGES ===================== */
.lp-hero{padding:64px 0 54px;text-align:center;position:relative;}
.lp-hero-inner{max-width:880px;margin:0 auto;padding:0 24px;}
.lp-bc{font-size:.9rem;color:#AEBBCB;margin-bottom:18px;}
.lp-bc a{color:#fdc500;text-decoration:none;}
.lp-bc span{margin:0 8px;opacity:.6;}
.lp-bc .lp-bc-cur{margin:0;opacity:1;color:#C9D2DC;}
.lp-h1{font-size:2.6rem;font-weight:900;color:#fdc500;line-height:1.25;margin-bottom:16px;}
.lp-sub{font-size:1.2rem;color:#E6ECF3;line-height:1.8;margin-bottom:26px;}
.lp-hero-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.lp-btn{display:inline-flex;align-items:center;gap:8px;padding:13px 28px;border-radius:50px;font-weight:700;text-decoration:none;transition:.3s;font-size:1.02rem;}
.lp-btn-wa{background:#fdc500;color:#fff;}
.lp-btn-wa:hover{background:#ffd500;transform:translateY(-2px);}
.lp-btn-call{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.25);}
.lp-btn-call:hover{background:rgba(255,255,255,.18);transform:translateY(-2px);}
.lp-section{padding:56px 0;}
.lp-container{max-width:1140px;margin:0 auto;padding:0 24px;}
.lp-intro{max-width:860px;margin:0 auto 36px;text-align:center;}
.lp-intro h2{font-size:2rem;font-weight:800;color:#fff;margin-bottom:16px;}
.lp-intro p{font-size:1.08rem;color:#C9D2DC;line-height:1.95;}
.lp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:22px;}
.lp-card{background:linear-gradient(160deg,rgba(255,255,255,.10),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:28px 24px;transition:.3s;}
.lp-card:hover{transform:translateY(-6px);border-color:rgba(253,197,0,.5);box-shadow:0 18px 40px rgba(0,0,0,.3);}
.lp-card-ic{width:60px;height:60px;border-radius:16px;background:rgba(255,213,0,.16);display:flex;align-items:center;justify-content:center;font-size:30px;margin-bottom:18px;}
.lp-card h3{color:#fdc500;font-size:1.22rem;font-weight:700;margin-bottom:10px;}
.lp-card p{color:#C9D2DC;line-height:1.8;font-size:.98rem;}
.lp-faq{max-width:860px;margin:0 auto;}
.lp-faq h2{text-align:center;font-size:2rem;color:#fff;font-weight:800;margin-bottom:30px;}
.lp-faq details{background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:18px 22px;margin-bottom:14px;}
.lp-faq summary{cursor:pointer;font-weight:700;color:#fff;font-size:1.08rem;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;}
.lp-faq summary::-webkit-details-marker{display:none;}
.lp-faq summary::after{content:'+';color:#fdc500;font-size:1.6rem;font-weight:700;line-height:1;}
.lp-faq details[open] summary::after{content:'\2212';}
.lp-faq details p{color:#C9D2DC;line-height:1.9;margin-top:14px;}
.lp-cta-band{text-align:center;padding:56px 24px;}
.lp-cta-inner{max-width:760px;margin:0 auto;background:linear-gradient(135deg,#ffd500,#e0ae00);border-radius:24px;padding:44px 30px;}
.lp-cta-inner h2{color:#fff;font-size:1.9rem;font-weight:800;margin-bottom:12px;}
.lp-cta-inner p{color:rgba(255,255,255,.92);font-size:1.1rem;margin-bottom:24px;}
.lp-cta-inner .lp-btn-wa{background:#fff;color:#e0ae00;}
.lp-cta-inner .lp-btn-call{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.5);color:#fff;}
.lp-related h2{text-align:center;font-size:1.7rem;color:#fff;font-weight:800;margin-bottom:26px;}
.lp-rel-grid{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;}
.lp-rel-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:16px 26px;color:#E6ECF3;text-decoration:none;font-weight:700;transition:.3s;}
.lp-rel-card:hover{background:rgba(253,197,0,.16);border-color:rgba(253,197,0,.5);color:#fdc500;}
@media(max-width:768px){.lp-h1{font-size:2rem;}.lp-sub{font-size:1.05rem;}.lp-intro h2,.lp-faq h2{font-size:1.6rem;}.lp-cta-inner h2{font-size:1.5rem;}}

/* ===================== CONTRAST FIXES: navy text/icons on yellow ===================== */
.about-cta, .sh-cta, .lp-btn-wa,
.contact-button-compact.primary, .contact-button-compact.primary:hover,
.roya-form-submit, .roya-form-submit:hover,
.floating-btn.phone-btn, .floating-btn.whatsapp-btn{ color:#00296b !important; }
.floating-btn.phone-btn .fb-icon svg, .floating-btn.whatsapp-btn .fb-icon svg{ stroke:#00296b !important; }
.svcr-wa, .svcr-wa svg{ color:#00296b !important; stroke:#00296b !important; }
.roya-contact-item-icon svg{ stroke:#00296b !important; }
.option-letter{ color:#00296b !important; }
.roya-section-badge{ color:#00296b !important; }
.hs-arrow:hover svg, .svcr-arrow:hover svg{ stroke:#00296b !important; }
/* yellow CTA band -> navy text + navy primary button */
.lp-cta-inner h2{ color:#00296b !important; }
.lp-cta-inner p{ color:rgba(0,41,107,.88) !important; }
.lp-cta-inner .lp-btn-wa{ background:#00296b !important; color:#ffd500 !important; }
.lp-cta-inner .lp-btn-call{ background:rgba(0,41,107,.12) !important; color:#00296b !important; border-color:rgba(0,41,107,.4) !important; }


/* ===================== ALTERNATING AMBER SECTIONS ===================== */
.roya-amber{ background:linear-gradient(160deg,#fdc500 0%,#ffd500 100%) !important; }
/* all text -> navy for readability on amber */
.roya-amber, .roya-amber h2, .roya-amber h3, .roya-amber h4, .roya-amber p,
.roya-amber span, .roya-amber li, .roya-amber a, .roya-amber strong, .roya-amber label, .roya-amber div{ color:#00296b !important; }
/* generic icon stroke navy on amber (specifics below may override to gold) */
.roya-amber svg{ stroke:#00296b !important; }
/* glass/surfaces -> soft white so navy text reads */
.roya-amber .about-statbar, .roya-amber .about-stat, .roya-amber .about-imgwrap,
.roya-amber .fleet-content-section, .roya-amber .fleet-options-section, .roya-amber .stat-item-modern,
.roya-amber .process-stat,
.roya-amber .roya-contact-info, .roya-amber .roya-contact-item, .roya-amber .roya-contact-form{
    background:rgba(255,255,255,.55) !important; border-color:rgba(0,41,107,.18) !important; }
/* badges -> navy chip with gold text */
.roya-amber .about-badge, .roya-amber .fleet-badge-modern, .roya-amber .process-badge, .roya-amber .roya-section-badge{
    background:#00296b !important; color:#ffd500 !important; border-color:rgba(0,41,107,.4) !important; }
/* gold accent chips/icons -> navy bg + gold glyph */
.roya-amber .about-point-ck, .roya-amber .option-letter, .roya-amber .roya-contact-item-icon,
.roya-amber .process-node, .roya-amber .process-node-num{
    background:#00296b !important; color:#ffd500 !important; }
.roya-amber .about-point-ck svg, .roya-amber .roya-contact-item-icon svg,
.roya-amber .process-node svg, .roya-amber .method-icon-compact svg{ stroke:#ffd500 !important; }
/* process timeline line -> navy */
.roya-amber .process-tl-line{ background:#00296b !important; }
/* buttons -> navy filled, gold text */
.roya-amber .about-cta, .roya-amber .roya-form-submit{ background:#00296b !important; color:#ffd500 !important; }
.roya-amber .about-cta svg, .roya-amber .roya-form-submit svg{ stroke:#ffd500 !important; }
/* form inputs on amber */
.roya-amber .roya-form-input{ background:rgba(255,255,255,.8) !important; color:#00296b !important; border-color:rgba(0,41,107,.28) !important; }
.roya-amber .roya-form-input::placeholder{ color:rgba(0,41,107,.5) !important; }

/* amber contact section: primary button navy + gold, secondary navy outline */
.roya-amber .contact-button-compact.primary{ background:#00296b !important; color:#ffd500 !important; }
.roya-amber .contact-button-compact.primary svg{ stroke:#ffd500 !important; }
.roya-amber .contact-button-compact.secondary{ background:rgba(0,41,107,.08) !important; color:#00296b !important; border-color:rgba(0,41,107,.35) !important; }
.roya-amber .contact-method-icon{ background:#00296b !important; }
.roya-amber .contact-method-icon svg{ stroke:#ffd500 !important; }

/* ===== "معلومات التواصل" panel: navy background inside amber booking section ===== */
.roya-amber .roya-contact-info{
  background:linear-gradient(160deg,#00296b 0%,#003f88 100%) !important;
  border-color:rgba(255,255,255,.15) !important;
}
.roya-amber .roya-contact-info,
.roya-amber .roya-contact-info h3,
.roya-amber .roya-contact-info h4,
.roya-amber .roya-contact-info p,
.roya-amber .roya-contact-info span,
.roya-amber .roya-contact-info a,
.roya-amber .roya-contact-info div,
.roya-amber .roya-contact-info strong{ color:#EAF1FB !important; }
.roya-amber .roya-contact-info .roya-contact-item{
  background:rgba(255,255,255,.07) !important; border-color:rgba(255,255,255,.12) !important; }
.roya-amber .roya-contact-info .roya-contact-item:hover{ background:rgba(255,255,255,.12) !important; }
.roya-amber .roya-contact-info .roya-contact-item-icon{ background:#ffd500 !important; }
.roya-amber .roya-contact-info .roya-contact-item-icon svg{ stroke:#00296b !important; }
.roya-amber .roya-contact-info .roya-contact-item-content a:hover{ color:#ffd500 !important; }

/* ===== form panel: navy background inside amber booking section ===== */
.roya-amber .roya-contact-form{
  background:linear-gradient(160deg,#00296b 0%,#003f88 100%) !important;
  border-color:rgba(255,255,255,.15) !important;
}
.roya-amber .roya-contact-form,
.roya-amber .roya-contact-form h3,
.roya-amber .roya-contact-form p,
.roya-amber .roya-contact-form label,
.roya-amber .roya-contact-form span{ color:#EAF1FB !important; }
.roya-amber .roya-contact-form .roya-form-input,
.roya-amber .roya-contact-form .roya-form-textarea{
  background:rgba(255,255,255,.10) !important; color:#EAF1FB !important; border-color:rgba(255,255,255,.22) !important; }
.roya-amber .roya-contact-form .roya-form-input::placeholder,
.roya-amber .roya-contact-form .roya-form-textarea::placeholder{ color:rgba(234,241,251,.55) !important; }
.roya-amber .roya-contact-form .roya-form-input:focus,
.roya-amber .roya-contact-form .roya-form-textarea:focus{ border-color:#ffd500 !important; background:rgba(255,255,255,.14) !important; }
.roya-amber .roya-contact-form .roya-form-submit{ background:#ffd500 !important; color:#00296b !important; }
.roya-amber .roya-contact-form .roya-form-submit:hover{ background:#fdc500 !important; }

/* ===================== FULL INVERSION: amber bg + navy elements ===================== */
/* section backgrounds amber (all flat sections already .roya-amber) */

/* titles -> navy (beat any !important gold rules) */
.roya-amber h2, .roya-amber h3, .roya-amber h4,
.roya-amber .about-title, .roya-amber .service-areas-title, .roya-amber .roya-section-title,
.roya-amber .contact-title-compact, .roya-amber .method-title-compact, .roya-amber .option-title,
.roya-amber .fleet-intro-title, .roya-amber .adv-title, .roya-amber .process-title,
.roya-amber .hl, .roya-amber .about-title .hl, .roya-amber .adv-title .hl{ color:#00296b !important; }

/* all badges -> navy chip with gold text */
.roya-amber .about-badge, .roya-amber .fleet-badge-modern, .roya-amber .process-badge,
.roya-amber .roya-section-badge, .roya-amber .adv-badge, .roya-amber .srv-badge,
.roya-amber .service-areas-badge{ background:#00296b !important; color:#ffd500 !important; border-color:rgba(0,41,107,.4) !important; }

/* STATS BOXES -> navy with light text + gold numbers */
.roya-amber .about-statbar, .roya-amber .adv-stat{
  background:linear-gradient(135deg,#00296b 0%,#003f88 100%) !important; border-color:rgba(255,255,255,.14) !important; }
.roya-amber .about-statbar *, .roya-amber .about-stat, .roya-amber .about-stat *,
.roya-amber .adv-stat *{ color:#EAF1FB !important; }
.roya-amber .about-stat-num, .roya-amber .adv-stat-num{ color:#ffd500 !important; }

/* feature cards -> soft white, navy text */
.roya-amber .adv-feat{ background:rgba(255,255,255,.6) !important; border-color:rgba(0,41,107,.15) !important; }
.roya-amber .adv-feat h4, .roya-amber .adv-feat p, .roya-amber .adv-feat *{ color:#00296b !important; }
.roya-amber .adv-feat svg{ stroke:#00296b !important; }

/* progress bar / accents -> navy on amber */
.roya-amber .svcr-bar > span{ background:#00296b !important; }
.roya-amber .svcr-counter{ color:#00296b !important; }

/* SERVICE CARDS keep light text (they sit on dark photos) */
.roya-amber .svcr-card, .roya-amber .svcr-card *{ color:#ffffff !important; }
.roya-amber .svcr-num{ color:#ffd500 !important; }
.roya-amber .svcr-card .svcr-link{ color:#ffd500 !important; }


/* ===================== LANDING PAGES v2 (professional) ===================== */
.lp-hero-badge{ display:inline-block; background:rgba(255,213,0,.16); color:#ffd500; border:1px solid rgba(255,213,0,.5); padding:7px 20px; border-radius:30px; font-size:.92rem; font-weight:700; margin-bottom:18px; }
/* features strip */
.lp-features{ display:grid; grid-template-columns:repeat(auto-fit,minmax(175px,1fr)); gap:18px; max-width:1160px; margin:0 auto; padding:0 24px; }
.lp-feat{ background:linear-gradient(160deg,rgba(255,255,255,.10),rgba(255,255,255,.04)); border:1px solid rgba(255,255,255,.14); border-radius:16px; padding:24px 18px; text-align:center; transition:.3s; }
.lp-feat:hover{ transform:translateY(-5px); border-color:rgba(255,213,0,.5); box-shadow:0 14px 32px rgba(0,0,0,.28); }
.lp-feat-ic{ width:56px; height:56px; border-radius:15px; background:rgba(255,213,0,.16); display:flex; align-items:center; justify-content:center; font-size:27px; margin:0 auto 14px; }
.lp-feat h3{ color:#ffd500; font-size:1.08rem; font-weight:700; margin-bottom:6px; }
.lp-feat p{ color:#C9D2DC; font-size:.9rem; line-height:1.7; }
/* light intro panel */
.lp-intro-panel{ max-width:980px; margin:0 auto; background:#FFFFFF; border-radius:24px; padding:46px 42px; box-shadow:0 22px 55px rgba(0,0,0,.28); text-align:center; }
.lp-intro-panel h2{ color:#00296b; font-size:2rem; font-weight:800; margin-bottom:16px; }
.lp-intro-panel p{ color:#3A4A5E; font-size:1.08rem; line-height:2; }
/* top services */
.lp-top h2{ text-align:center; color:#ffd500; font-size:2rem; font-weight:800; margin-bottom:30px; }
.lp-top-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:20px; }
.lp-top-card{ display:block; text-decoration:none; background:linear-gradient(160deg,rgba(255,255,255,.10),rgba(255,255,255,.04)); border:1px solid rgba(255,255,255,.14); border-radius:18px; padding:26px; transition:.3s; }
.lp-top-card:hover{ transform:translateY(-6px); border-color:rgba(255,213,0,.5); box-shadow:0 18px 40px rgba(0,0,0,.3); }
.lp-top-ic{ width:58px; height:58px; border-radius:15px; background:rgba(255,213,0,.16); display:flex; align-items:center; justify-content:center; font-size:30px; margin-bottom:16px; }
.lp-top-card h3{ color:#ffd500; font-size:1.18rem; font-weight:700; margin-bottom:8px; }
.lp-top-card p{ color:#C9D2DC; font-size:.95rem; line-height:1.75; }
.lp-top-more{ color:#ffd500; font-weight:700; font-size:.92rem; margin-top:14px; display:inline-block; }
@media(max-width:768px){ .lp-intro-panel{ padding:32px 22px; } .lp-intro-panel h2,.lp-top h2{ font-size:1.6rem; } }

/* ===================== LANDING v3: light MIDDLE zone + icon boxes ===================== */
.lp-mid{ background:#F4F7FB; padding:66px 0; }
.lp-mid-head{ max-width:880px; margin:0 auto 40px; text-align:center; }
.lp-mid-eyebrow{ display:inline-block; background:rgba(0,41,107,.07); color:#00509d; border:1px solid rgba(0,41,107,.15); padding:6px 18px; border-radius:30px; font-size:.88rem; font-weight:700; margin-bottom:16px; }
.lp-mid-head h2{ color:#00296b; font-size:2.1rem; font-weight:800; margin-bottom:16px; }
.lp-mid-head p{ color:#46566F; font-size:1.08rem; line-height:2; }
.lp-mid .lp-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:22px; }
.lp-mid .lp-card{ background:#ffffff; border:1px solid #E4EAF2; border-top:3px solid #ffd500; border-radius:16px; padding:28px 24px; box-shadow:0 10px 28px rgba(0,41,107,.07); transition:.3s; }
.lp-mid .lp-card:hover{ transform:translateY(-6px); box-shadow:0 20px 44px rgba(0,41,107,.14); }
.lp-mid .lp-card-ic{ width:60px; height:60px; border-radius:15px; background:linear-gradient(135deg,#00296b 0%,#00509d 100%); display:flex; align-items:center; justify-content:center; font-size:28px; margin-bottom:18px; box-shadow:0 8px 18px rgba(0,41,107,.25); }
.lp-mid .lp-card h3{ color:#00296b; font-size:1.2rem; font-weight:700; margin-bottom:10px; }
.lp-mid .lp-card p{ color:#52617A; font-size:.97rem; line-height:1.8; }
@media(max-width:768px){ .lp-mid{ padding:46px 0; } .lp-mid-head h2{ font-size:1.6rem; } }

/* ===================== SPECIAL PAGES: chips / contact methods / stats ===================== */
.lp-chips{ display:flex; flex-wrap:wrap; gap:12px; justify-content:center; max-width:920px; margin:0 auto; }
.lp-chip{ display:inline-block; background:#fff; border:1px solid #E4EAF2; border-radius:30px; padding:11px 22px; color:#00296b; font-weight:700; font-size:.98rem; text-decoration:none; box-shadow:0 4px 14px rgba(0,41,107,.06); transition:.25s; }
.lp-chip:hover{ background:#00296b; color:#ffd500; transform:translateY(-3px); }
.lp-area-group{ text-align:center; color:#00296b; font-size:1.18rem; font-weight:800; margin:30px 0 16px; }
.lp-area-group span{ color:#00509d; font-weight:600; font-size:.85rem; }
.lp-cmethod{ display:flex; align-items:center; gap:16px; background:#fff; border:1px solid #E4EAF2; border-radius:16px; padding:22px; text-decoration:none; box-shadow:0 8px 22px rgba(0,41,107,.06); transition:.3s; }
.lp-cmethod:hover{ transform:translateY(-5px); box-shadow:0 16px 36px rgba(0,41,107,.12); }
.lp-cmethod-ic{ width:54px; height:54px; border-radius:14px; background:linear-gradient(135deg,#00296b,#00509d); display:flex; align-items:center; justify-content:center; font-size:24px; flex-shrink:0; }
.lp-cmethod h3{ color:#00296b; font-size:1.05rem; font-weight:700; margin-bottom:3px; }
.lp-cmethod p{ color:#52617A; font-size:.95rem; }
.lp-stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; max-width:1000px; margin:42px auto 0; }
.lp-stat{ background:linear-gradient(135deg,#00296b,#003f88); border-radius:18px; padding:26px 16px; text-align:center; }
.lp-stat-num{ color:#ffd500; font-size:2rem; font-weight:900; }
.lp-stat-lbl{ color:#C9D2DC; font-size:.92rem; margin-top:6px; }
@media(max-width:680px){ .lp-stats{ grid-template-columns:repeat(2,1fr); } }

/* ===================== "اطلب الآن" button + modal ===================== */
.roya-order-btn{ position:fixed; bottom:26px; left:50%; transform:translateX(-50%); z-index:9998; background:#ffd500; color:#00296b; border:none; cursor:pointer; font-family:'Cairo',sans-serif; font-weight:800; font-size:1rem; padding:14px 32px; border-radius:50px; box-shadow:0 12px 30px rgba(0,0,0,.32); display:flex; align-items:center; gap:9px; transition:background .25s, transform .25s; }
.roya-order-btn:hover{ background:#fdc500; transform:translateX(-50%) translateY(-3px); }
.roya-modal{ position:fixed; inset:0; background:rgba(2,18,45,.62); display:none; align-items:center; justify-content:center; z-index:10000; padding:20px; }
.roya-modal.open{ display:flex; }
.roya-modal-card{ background:#fff; border-radius:22px; padding:36px 30px 30px; max-width:420px; width:100%; position:relative; box-shadow:0 30px 70px rgba(0,0,0,.45); }
.roya-modal-close{ position:absolute; top:12px; left:18px; background:none; border:none; font-size:1.9rem; color:#9aa8ba; cursor:pointer; line-height:1; }
.roya-modal-card h3{ color:#00296b; font-size:1.4rem; font-weight:800; margin-bottom:6px; text-align:center; }
.roya-modal-card .rm-sub{ color:#5a6b80; text-align:center; margin-bottom:22px; font-size:.95rem; }
.roya-modal-card input, .roya-modal-card select{ width:100%; box-sizing:border-box; background:#F4F7FB; border:1px solid #dfe6ef; border-radius:12px; padding:13px 16px; font-family:'Cairo',sans-serif; font-size:1rem; color:#00296b; margin-bottom:14px; }
.roya-modal-card input:focus, .roya-modal-card select:focus{ outline:none; border-color:#ffd500; background:#fff; }
.roya-modal-card .rm-submit{ width:100%; background:#ffd500; color:#00296b; border:none; border-radius:12px; padding:14px; font-family:'Cairo',sans-serif; font-weight:800; font-size:1.05rem; cursor:pointer; transition:background .25s; margin-bottom:0; }
.roya-modal-card .rm-submit:hover{ background:#fdc500; }
@media(max-width:480px){ .roya-order-btn{ bottom:20px; font-size:.92rem; padding:12px 24px; } }


/* ===== modal -> site identity (navy + gold) ===== */
.roya-modal-card{ background:linear-gradient(160deg,#00296b 0%,#003f88 100%) !important; border:1px solid rgba(255,255,255,.12) !important; }
.roya-modal-card h3{ color:#ffd500 !important; }
.roya-modal-card .rm-sub{ color:#C9D2DC !important; }
.roya-modal-close{ color:#aab8c9 !important; }
.roya-modal-card input, .roya-modal-card select{ background:rgba(255,255,255,.10) !important; color:#ffffff !important; border-color:rgba(255,255,255,.22) !important; }
.roya-modal-card input::placeholder{ color:rgba(255,255,255,.55) !important; }
.roya-modal-card select option{ color:#00296b; }
.roya-modal-card input:focus, .roya-modal-card select:focus{ border-color:#ffd500 !important; background:rgba(255,255,255,.14) !important; }
.roya-modal-card .rm-submit{ background:#ffd500 !important; color:#00296b !important; }
.roya-modal-card .rm-submit:hover{ background:#fdc500 !important; }


/* ===================== nav dropdown (services submenu) ===================== */
.sh-menu li{ position:relative; }
.sh-menu .sub-menu{ list-style:none; margin:0; padding:8px; position:absolute; top:100%; right:0; min-width:235px; background:rgba(2,41,107,.97); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,.12); border-radius:12px; box-shadow:0 16px 40px rgba(0,0,0,.4); opacity:0; visibility:hidden; transform:translateY(8px); transition:.25s; z-index:1001; }
.sh-menu li:hover > .sub-menu{ opacity:1; visibility:visible; transform:translateY(0); }
.sh-menu .sub-menu li a{ padding:9px 14px; font-size:.92rem; white-space:nowrap; display:block; }
.sh-menu .menu-item-has-children > a::after{ content:"⌄"; margin-right:5px; font-size:.9em; opacity:.8; }
@media(max-width:900px){
  .sh-menu .sub-menu{ position:static; opacity:1; visibility:visible; transform:none; box-shadow:none; background:rgba(255,255,255,.06); margin:6px 0 0; min-width:0; }
}

/* ===================== hero trust row (no buttons) ===================== */
.lp-hero-trust{ display:flex; flex-wrap:wrap; gap:12px 24px; justify-content:center; margin-top:26px; }
.lp-hero-trust span{ display:inline-flex; align-items:center; gap:8px; color:#E6ECF3; font-weight:600; font-size:1rem; }
.lp-hero-trust span::before{ content:"✓"; display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px; border-radius:50%; background:rgba(255,213,0,.18); color:#ffd500; font-weight:800; font-size:.8rem; flex-shrink:0; }
.lp-cta-hint{ color:#fff; font-size:1.12rem; font-weight:600; margin:0; opacity:.95; }

/* ===================== hero #3 stats ===================== */
.lp-hero-stats{ display:flex; flex-wrap:wrap; gap:18px; justify-content:center; margin-top:30px; }
.lp-hero-stat{ background:linear-gradient(160deg,rgba(255,255,255,.10),rgba(255,255,255,.04)); border:1px solid rgba(255,255,255,.16); border-radius:16px; padding:18px 28px; min-width:150px; }
.lp-hero-stat b{ display:block; color:#ffd500; font-size:2rem; font-weight:900; line-height:1; }
.lp-hero-stat span{ display:block; color:#C9D2DC; font-size:.92rem; margin-top:7px; }

/* ===================== content board + sidebar ===================== */
.lp-cs{ display:grid; grid-template-columns:1fr 330px; gap:32px; align-items:start; }
.lp-board{ background:#fff; border:1px solid #E4EAF2; border-radius:18px; padding:34px 30px; box-shadow:0 10px 28px rgba(0,41,107,.06); }
.lp-board h2{ color:#00296b; font-size:1.55rem; margin:0 0 14px; font-weight:800; }
.lp-board h3{ color:#00296b; font-size:1.18rem; margin:24px 0 10px; font-weight:700; }
.lp-board p{ color:#46566F; line-height:2.05; margin-bottom:14px; }
.lp-board ul{ color:#46566F; line-height:2; padding-right:22px; margin:0 0 14px; }
.lp-board ul li{ margin-bottom:6px; }
.lp-side{ position:sticky; top:96px; display:flex; flex-direction:column; gap:18px; }
.lp-side-card{ border-radius:16px; padding:22px; }
.lp-side-card.navy{ background:linear-gradient(160deg,#00296b,#003f88); }
.lp-side-card.gold{ background:linear-gradient(135deg,#ffd500,#fdc500); }
.lp-side-card h4{ margin:0 0 12px; font-size:1.1rem; font-weight:800; }
.lp-side-card.navy h4{ color:#ffd500; } .lp-side-card.navy *{ color:#D6E2F0; }
.lp-side-card.navy h4{ color:#ffd500 !important; }
.lp-side-card.gold h4, .lp-side-card.gold p{ color:#00296b; }
.lp-side-card ul{ list-style:none; margin:0; padding:0; }
.lp-side-card ul li{ margin-bottom:9px; }
.lp-side-card ul li a{ text-decoration:none; transition:.2s; font-size:.95rem; }
.lp-side-card.navy ul li a{ color:#D6E2F0; } .lp-side-card.navy ul li a:hover{ color:#ffd500; }
@media(max-width:900px){
  .lp-cs{ grid-template-columns:1fr; gap:22px; }
  .lp-side{ position:static; top:auto; }
}

/* ===================== luxury slider (real-estate style) ===================== */
.rx-slider{ max-width:1000px; margin:0 auto; }
.rx-stage{ position:relative; border-radius:22px; overflow:hidden; box-shadow:0 26px 64px rgba(0,0,0,.45); aspect-ratio:16/9; background:#001a44; }
.rx-slide{ position:absolute; inset:0; opacity:0; transition:opacity .6s ease; }
.rx-slide.active{ opacity:1; }
.rx-slide img{ width:100%; height:100%; object-fit:cover; display:block; }
.rx-cap{ position:absolute; right:0; left:0; bottom:0; padding:46px 30px 24px; background:linear-gradient(to top,rgba(0,20,45,.88),transparent); }
.rx-cap h3{ color:#ffd500; font-size:1.4rem; margin:0 0 4px; font-weight:800; }
.rx-cap p{ color:#E6ECF3; margin:0; font-size:.98rem; }
.rx-arrow{ position:absolute; top:50%; transform:translateY(-50%); width:50px; height:50px; border-radius:50%; background:rgba(255,255,255,.18); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); border:1px solid rgba(255,255,255,.35); color:#fff; font-size:1.4rem; cursor:pointer; display:flex; align-items:center; justify-content:center; z-index:3; transition:.25s; }
.rx-arrow:hover{ background:#ffd500; color:#00296b; border-color:#ffd500; }
.rx-prev{ right:18px; } .rx-next{ left:18px; }
.rx-counter{ position:absolute; top:18px; left:18px; background:rgba(0,20,45,.6); color:#fff; padding:5px 14px; border-radius:30px; font-size:.85rem; z-index:3; font-weight:600; }
.rx-thumbs{ display:flex; gap:10px; margin-top:14px; overflow-x:auto; padding-bottom:6px; }
.rx-thumb{ width:104px; height:68px; border-radius:10px; overflow:hidden; cursor:pointer; opacity:.5; border:2px solid transparent; flex-shrink:0; transition:.25s; }
.rx-thumb img{ width:100%; height:100%; object-fit:cover; }
.rx-thumb.active{ opacity:1; border-color:#ffd500; }
@media(max-width:768px){ .rx-arrow{ width:42px;height:42px; } .rx-cap h3{ font-size:1.15rem; } }

/* ===================== nearby neighborhood cards ===================== */
.nb-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:22px; }
.nb-card{ background:linear-gradient(160deg,rgba(255,255,255,.10),rgba(255,255,255,.04)); border:1px solid rgba(255,255,255,.14); border-radius:18px; overflow:hidden; text-decoration:none; display:block; transition:.3s; }
.nb-card:hover{ transform:translateY(-6px); border-color:rgba(255,213,0,.5); box-shadow:0 18px 40px rgba(0,0,0,.32); }
.nb-thumb{ position:relative; aspect-ratio:16/10; overflow:hidden; }
.nb-thumb img{ width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.nb-card:hover .nb-thumb img{ transform:scale(1.07); }
.nb-cat{ position:absolute; top:12px; right:12px; background:#ffd500; color:#00296b; font-size:.76rem; font-weight:800; padding:4px 12px; border-radius:30px; }
.nb-body{ padding:18px 20px; }
.nb-body h3{ color:#ffd500; font-size:1.12rem; margin:0 0 6px; font-weight:700; }
.nb-body p{ color:#C9D2DC; font-size:.92rem; line-height:1.7; margin:0; }

/* ===================== keywords tags ===================== */
.kw-wrap{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; max-width:880px; margin:0 auto; }
.kw{ background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); color:#D6E2F0; padding:9px 18px; border-radius:30px; font-size:.92rem; }

/* ===================== mobile optimization ===================== */
@media(max-width:768px){
  .lp-h1{ font-size:1.7rem; }
  .lp-sub{ font-size:1rem; }
  .lp-hero{ padding:44px 0 36px; }
  .lp-hero-stats{ gap:10px; }
  .lp-hero-stat{ padding:14px 16px; min-width:0; flex:1 1 28%; }
  .lp-hero-stat b{ font-size:1.5rem; }
  .lp-section{ padding:42px 0; }
  .lp-container{ padding:0 16px; }
  .lp-features{ grid-template-columns:repeat(2,1fr); gap:12px; padding:0 16px; }
  .lp-feat{ padding:18px 12px; }
  .lp-feat-ic{ width:48px; height:48px; font-size:23px; }
  .lp-mid{ padding:42px 0; }
  .lp-board{ padding:24px 18px; }
  .lp-board h2{ font-size:1.3rem; }
  .lp-board h3{ font-size:1.08rem; }
  .rx-thumb{ width:82px; height:54px; }
  .rx-cap{ padding:28px 18px 14px; }
  .rx-cap h3{ font-size:1.1rem; }
  .kw{ font-size:.84rem; padding:7px 14px; }
  .lp-cta-inner{ padding:30px 20px; }
  .lp-cta-inner h2{ font-size:1.3rem; }
  .sh-logo-text{ font-size:1.6rem; }
}
@media(max-width:480px){
  .rx-stage{ border-radius:16px; }
  .rx-arrow{ width:40px; height:40px; }
  .nb-grid{ grid-template-columns:1fr; }
}

/* ===================== cards with SMALL image (services / nearby) ===================== */
.sc-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(290px,1fr)); gap:16px; }
.sc-card{ display:flex; gap:14px; align-items:center; background:linear-gradient(160deg,rgba(255,255,255,.10),rgba(255,255,255,.04)); border:1px solid rgba(255,255,255,.14); border-radius:16px; padding:14px; text-decoration:none; transition:.3s; }
.sc-card:hover{ transform:translateY(-4px); border-color:rgba(255,213,0,.5); box-shadow:0 14px 32px rgba(0,0,0,.3); }
.sc-thumb{ width:84px; height:84px; min-width:84px; border-radius:12px; overflow:hidden; position:relative; }
.sc-thumb img{ width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.sc-card:hover .sc-thumb img{ transform:scale(1.08); }
.sc-body h3{ color:#ffd500; font-size:1.06rem; margin:0 0 5px; font-weight:700; }
.sc-body p{ color:#C9D2DC; font-size:.9rem; line-height:1.6; margin:0; }
@media(max-width:480px){ .sc-grid{ grid-template-columns:1fr; } .sc-thumb{ width:72px; height:72px; min-width:72px; } }

/* ===================== premium description showcase ===================== */
.desc-feature{ position:relative; max-width:940px; margin:0 auto; background:linear-gradient(155deg,#00296b 0%,#003f88 55%,#00509d 100%); border:1px solid rgba(255,213,0,.30); border-radius:26px; padding:50px 46px 46px; overflow:hidden; box-shadow:0 26px 64px rgba(0,0,0,.4); }
.desc-feature::before{ content:""; position:absolute; top:-40px; right:-40px; width:220px; height:220px; background:radial-gradient(circle, rgba(255,213,0,.20), transparent 70%); pointer-events:none; }
.desc-feature::after{ content:""; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,transparent,#ffd500,transparent); background-size:200% 100%; animation:descShine 3.2s linear infinite; }
@keyframes descShine{ 0%{ background-position:200% 0; } 100%{ background-position:-200% 0; } }
.desc-quote{ display:inline-flex; align-items:center; justify-content:center; width:60px; height:60px; border-radius:16px; background:rgba(255,213,0,.16); color:#ffd500; font-size:2.2rem; font-family:Georgia,'Times New Roman',serif; line-height:1; margin-bottom:18px; }
.desc-lead{ color:#fff; font-size:1.55rem; font-weight:800; line-height:1.5; margin:0 0 16px; position:relative; }
.desc-feature p{ color:#D9E4F2; font-size:1.16rem; line-height:2.1; margin:0 0 12px; position:relative; }
.desc-feature .hl{ color:#ffd500; font-weight:700; }
.desc-tags{ display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.desc-tags span{ background:rgba(255,255,255,.08); border:1px solid rgba(255,213,0,.3); color:#ffd500; padding:7px 16px; border-radius:30px; font-size:.9rem; font-weight:600; }
@media(max-width:768px){ .desc-feature{ padding:34px 22px; } .desc-lead{ font-size:1.25rem; } .desc-feature p{ font-size:1.04rem; } }

/* ===================== intro SEO paragraph (homepage) ===================== */
.intro-seo{ padding:64px 0 6px; }
.intro-seo-inner{ max-width:920px; margin:0 auto; padding:0 24px; text-align:center; }
.intro-seo-eyebrow{ display:inline-block; background:rgba(255,213,0,.16); color:#ffd500; border:1px solid rgba(255,213,0,.5); padding:6px 18px; border-radius:30px; font-size:.9rem; font-weight:700; margin-bottom:16px; }
.intro-seo-title{ color:#fff; font-size:2rem; font-weight:800; margin-bottom:18px; line-height:1.35; }
.intro-seo-title span{ color:#ffd500; }
.intro-seo p{ color:#C9D2DC; font-size:1.08rem; line-height:2; margin-bottom:14px; }
.intro-seo p strong{ color:#fff; font-weight:700; }
@media(max-width:768px){ .intro-seo{ padding:44px 0 2px; } .intro-seo-title{ font-size:1.5rem; } .intro-seo p{ font-size:1rem; line-height:1.9; } }

/* ===================== customer reviews (testimonials) ===================== */
.reviews-section{ padding:70px 0; }
.reviews-container{ max-width:1140px; margin:0 auto; padding:0 24px; }
.reviews-head{ text-align:center; max-width:760px; margin:0 auto 38px; }
.reviews-eyebrow{ display:inline-block; background:rgba(255,213,0,.16); color:#ffd500; border:1px solid rgba(255,213,0,.5); padding:6px 18px; border-radius:30px; font-size:.9rem; font-weight:700; margin-bottom:14px; }
.reviews-title{ color:#fff; font-size:2rem; font-weight:800; margin-bottom:16px; }
.reviews-agg{ display:inline-flex; align-items:center; gap:10px; background:linear-gradient(160deg,rgba(255,255,255,.10),rgba(255,255,255,.04)); border:1px solid rgba(255,213,0,.4); border-radius:40px; padding:8px 20px; }
.reviews-agg b{ color:#ffd500; font-size:1.5rem; font-weight:900; line-height:1; }
.reviews-agg .reviews-stars{ color:#ffd500; letter-spacing:2px; font-size:1.05rem; }
.reviews-agg .reviews-count{ color:#C9D2DC; font-size:.92rem; }
.reviews-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(290px,1fr)); gap:22px; }
.review-card{ background:linear-gradient(160deg,rgba(255,255,255,.10),rgba(255,255,255,.04)); border:1px solid rgba(255,255,255,.14); border-radius:18px; padding:26px 24px; transition:.3s; }
.review-card:hover{ transform:translateY(-5px); border-color:rgba(255,213,0,.5); box-shadow:0 16px 38px rgba(0,0,0,.28); }
.review-stars{ color:#ffd500; letter-spacing:3px; font-size:1.1rem; margin-bottom:12px; }
.review-text{ color:#E6ECF3; line-height:1.95; font-size:1rem; margin-bottom:18px; }
.review-author{ display:flex; align-items:center; gap:12px; }
.review-ava{ width:42px; height:42px; border-radius:50%; background:linear-gradient(135deg,#00509d,#00296b); border:1px solid rgba(255,213,0,.5); color:#ffd500; display:flex; align-items:center; justify-content:center; font-weight:800; font-size:1.1rem; }
.review-name{ color:#fff; font-weight:700; font-size:1rem; display:flex; flex-direction:column; line-height:1.3; }
.review-loc{ color:#AEBBCB; font-weight:500; font-size:.8rem; margin-top:2px; }
@media(max-width:768px){ .reviews-section{ padding:48px 0; } .reviews-title{ font-size:1.5rem; } .reviews-grid{ grid-template-columns:1fr; } }
