/* بيلد بلس — الإصدار 4: خريطة حقيقية + تفاعلات أكثر */

/* الخريطة الحقيقية */
.realmap-wrap { position: relative; border-radius: 22px; overflow: hidden; box-shadow: var(--shadow); border: 1px solid var(--line); }
.realmap { height: clamp(380px, 46vw, 520px); background: #EAF0F6; z-index: 0; }
.realmap-hint { position: absolute; z-index: 500; bottom: 12px; left: 50%; transform: translateX(-50%); background: rgba(15,34,54,.78); color: #fff; font-size: 13px; padding: 5px 14px; border-radius: 999px; pointer-events: none; transition: opacity .3s; }
.realmap-wrap.active .realmap-hint { opacity: 0; }
.realmap-reset { position: absolute; z-index: 500; top: 12px; right: 12px; font: inherit; font-size: 13.5px; font-weight: 700; background: #fff; color: var(--navy); border: 1px solid var(--line); border-radius: 999px; padding: 6px 14px; cursor: pointer; box-shadow: 0 4px 14px -6px rgba(0,0,0,.25); }
.realmap-reset:hover { background: var(--navy); color: #fff; }
.mk-wrap { background: none; border: 0; }
.mk { position: relative; display: grid; place-items: center; width: var(--s); height: var(--s); }
.mk i { position: absolute; inset: 0; border-radius: 50%; background: rgba(158, 27, 50, .28); animation: mkPulse 2.4s ease-out infinite; animation-delay: var(--d); }
.mk b { position: relative; display: grid; place-items: center; width: 70%; height: 70%; border-radius: 50%; background: var(--red); color: #fff; font: 800 13px Tajawal, sans-serif; border: 3px solid #fff; box-shadow: 0 4px 12px -2px rgba(158,27,50,.55); transition: transform .2s, background .2s; }
.mk-wrap:hover .mk b { transform: scale(1.18); background: var(--navy); }
@keyframes mkPulse { 0% { transform: scale(.6); opacity: .9; } 100% { transform: scale(1.7); opacity: 0; } }
.mk-popup .leaflet-popup-content-wrapper { padding: 0; border-radius: 14px; overflow: hidden; }
.mk-popup .leaflet-popup-content { margin: 0; width: 240px !important; }
.mk-pop { display: block; color: var(--ink) !important; text-decoration: none; font-family: var(--body); direction: rtl; text-align: right; }
.mk-pop img { display: block; width: 100%; height: 130px; object-fit: cover; }
.mk-pop span { display: block; padding: 10px 14px 12px; }
.mk-pop b { display: block; font-family: var(--head); font-size: 17px; }
.mk-pop em { font-style: normal; font-size: 13px; color: var(--red); font-weight: 700; }
.leaflet-container { font-family: var(--body); }
.leaflet-control-attribution { font-size: 10px; direction: ltr; }

/* شريط متحرك للطرز والمدن */
.marquee { overflow: hidden; background: var(--navy); color: #fff; padding: 16px 0; margin-top: 34px; mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.mq-track { display: flex; align-items: center; gap: 22px; width: max-content; animation: mq 60s linear infinite; }
.marquee:hover .mq-track { animation-play-state: paused; }
.mq-track a { font-family: var(--head); font-size: 21px; white-space: nowrap; color: #fff; transition: color .2s; }
.mq-track a.city { color: #7FD3CC; }
.mq-track a:hover { color: #E9B65C; }
.mq-track i { font-style: normal; color: #E9B65C; font-size: 14px; }
@keyframes mq { to { transform: translateX(50%); } }

/* ميلان البطاقات + ضوء يتبع المؤشر */
.fx-tilt { transform: perspective(900px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)); transition: transform .35s cubic-bezier(.2,.7,.2,1), box-shadow .3s, border-color .3s; will-change: transform; }
.fx-tilt.fx-on { transition: transform .08s linear, box-shadow .3s, border-color .3s; }
.svc.fx-tilt, .post.fx-tilt, .style-card.fx-tilt, .deliv-card.fx-tilt, .info.fx-tilt, .post-feature.fx-tilt { background-image: radial-gradient(420px circle at var(--mx, 50%) var(--my, 50%), rgba(18, 133, 127, .09), transparent 60%); }
.prj.fx-tilt::before { content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none; opacity: 0; transition: opacity .3s; background: radial-gradient(380px circle at var(--mx, 50%) var(--my, 50%), rgba(255, 220, 150, .28), transparent 55%); }
.prj.fx-tilt.fx-on::before { opacity: 1; }
.reveal.in.fx-tilt { transform: perspective(900px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)); }

/* أزرار مغناطيسية */
.fx-mag { transform: translate(var(--tx, 0px), var(--ty, 0px)); transition: transform .25s cubic-bezier(.2,.7,.2,1), background .2s, color .2s; }
.wa-float.fx-mag:hover { transform: translate(var(--tx, 0px), var(--ty, 0px)) scale(1.07); }
.hero-text { transition: transform .4s cubic-bezier(.2,.7,.2,1); }
.hero-bg.on { transition: opacity 1.4s ease, transform 7s ease-out, background-position .6s ease-out; }

/* العناوين كلمة كلمة */
.fx-words .w { display: inline-block; overflow: hidden; vertical-align: bottom; padding-bottom: .08em; margin-bottom: -.08em; }
.fx-words .w > span { display: inline-block; transform: translateY(105%); transition: transform .8s cubic-bezier(.2,.7,.2,1); transition-delay: calc(var(--i) * 70ms); }
.fx-words.in .w > span { transform: none; }

/* بارالاكس الصور: مساحة للحركة */
.why-media img, .split-media:not(.cert):not(.founder-card) img, .post-feature .post-img img { transform: scale(1.12); transition: transform .1s linear; }
.post-feature .post-img { overflow: hidden; }

/* خط متحرك تحت روابط القائمة */
.nav > a, .nav .dd > button { position: relative; }
.nav > a::after { content: ""; position: absolute; bottom: 4px; right: 14px; left: 14px; height: 2px; background: var(--amber); transform: scaleX(0); transform-origin: right; transition: transform .3s; }
.nav > a:hover::after { transform: scaleX(1); }
.nav > a.on::after { display: none; }

/* روابط المدن بجانب الخريطة */
.city-list a { transition: .25s; }
.city-list a.hot { transform: translateX(-4px); }

/* نبض خفيف لزر الحجز في الهيدر */
.top-cta { position: relative; overflow: hidden; }
.top-cta::after { content: ""; position: absolute; top: 0; bottom: 0; width: 40%; left: -60%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.35), transparent); transform: skewX(-20deg); animation: shine 4.5s ease-in-out infinite; }
@keyframes shine { 0%, 70% { left: -60%; } 100% { left: 130%; } }

@media (max-width: 920px) { .realmap { height: 360px; } }
@media (prefers-reduced-motion: reduce) { .mq-track, .mk i, .top-cta::after { animation: none; } .fx-words .w > span { transform: none; } }
.realmap .leaflet-tile-pane { filter: saturate(.6) contrast(.96) brightness(1.04); }
.shot .fx-words .w > span { transform: none !important; }

/* حقوق التصميم أسفل الموقع */
.credit { background: #081B30; border-top: 1px solid rgba(255,255,255,.08); padding: 14px 0; text-align: center; font-size: 14px; }
.credit span, .credit a { color: rgba(255,255,255,.72); letter-spacing: .01em; }
.credit a:hover { color: #E9B65C; }
.credit-mark { color: #E9B65C !important; display: inline-block; animation: creditSpin 6s linear infinite; }
@keyframes creditSpin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .credit-mark { animation: none; } }
