:root{--bg:#0b0d10;--bg2:#12151a;--ink:#f4f1ea;--mute:#a7a297;--line:#262a30;--gold:#d8b878;--gold2:#f0dcae;--serif:'Cormorant Garamond','Tajawal',Georgia,serif;--sans:'Manrope','Tajawal',system-ui,sans-serif;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
[dir=rtl] body{font-family:'Tajawal',var(--sans)}
img{max-width:100%;display:block}a{color:inherit}
.wrap{max-width:1240px;margin-inline:auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
h1,h2,h3{font-family:var(--serif);font-weight:600;letter-spacing:-.01em;line-height:1.02;margin:0;text-wrap:balance}
[dir=rtl] h1,[dir=rtl] h2,[dir=rtl] h3{font-family:'Tajawal',serif;font-weight:800;letter-spacing:0}
.eyebrow{font:800 11px var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:0 0 14px}
[dir=rtl] .eyebrow{letter-spacing:0;font-size:13px}
.mute{color:var(--mute)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:2px;padding:14px 22px;font:800 13px var(--sans);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background .2s,transform .2s}
[dir=rtl] .btn{letter-spacing:0;font-size:14px}
.btn.gold{background:var(--gold);color:#16120a}.btn.gold:hover{background:var(--gold2)}
.btn.line{border-color:#4a4335;color:var(--ink);background:none}.btn.line:hover{border-color:var(--gold)}
.btn.sm{padding:10px 16px;font-size:11px}.btn.big{padding:18px 30px;font-size:14px}
.demo-bar{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;align-items:center;background:#d8b878;color:#16120a;font:700 12px var(--sans);padding:7px max(16px,env(safe-area-inset-right,0px)) 7px max(16px,env(safe-area-inset-left,0px));text-align:center}
.demo-bar a{font-weight:800;text-decoration:underline}
header.top{position:sticky;top:0;z-index:40;background:#0b0d10d9;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;height:70px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none}
.logo .mk{width:38px;height:38px;border:1px solid var(--gold);display:grid;place-items:center;font:600 22px var(--serif);color:var(--gold)}
.logo b{display:block;font:600 21px/1 var(--serif)}.logo small{font:700 10px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}
[dir=rtl] .logo small{letter-spacing:0;font-size:11px}
.nav{display:flex;gap:28px}.nav a{text-decoration:none;font-weight:700;font-size:14px;color:#d8d3c7}.nav a:hover{color:var(--gold2)}
.tr{display:flex;gap:10px;align-items:center}
.lang{background:none;border:1px solid #3a3a3a;color:#ddd;border-radius:2px;padding:8px 12px;font:700 12px var(--sans);cursor:pointer}
/* hero */
.hero{position:relative;min-height:calc(100svh - 100px);display:grid;align-items:center;overflow:hidden;isolation:isolate}
.sky{position:absolute;inset:-6%;z-index:-1;perspective:1200px}
.sky .layer{position:absolute;inset:0;background-size:cover;background-position:center;will-change:transform;transition:transform .2s linear}
.sky .l1{background-image:url("https://images.unsplash.com/photo-1527354711091-dfe0e5f699be?auto=format&fit=crop&q=72&w=2000")}
.sky .l2{background:linear-gradient(90deg,#0b0d10f2 0,#0b0d10cc 38%,#0b0d1033 70%,#0b0d1066 100%),linear-gradient(0deg,#0b0d10 0,transparent 40%)}
[dir=rtl] .sky .l2{background:linear-gradient(270deg,#0b0d10f2 0,#0b0d10cc 38%,#0b0d1033 70%,#0b0d1066 100%),linear-gradient(0deg,#0b0d10 0,transparent 40%)}
.hin{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:40px;align-items:center;padding-block:70px}
.hero h1{font-size:clamp(3rem,6.4vw,5.8rem);margin-bottom:30px}
.hero h1 em{font-style:italic;color:var(--gold2);display:block}
[dir=rtl] .hero h1 em{font-style:normal}
.search{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:1px;background:#3a3427;border:1px solid #3a3427;max-width:760px}
.search label{display:grid;gap:2px;background:#0f1216e6;padding:12px 14px;min-width:0}
.search small{font:800 10px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
[dir=rtl] .search small{letter-spacing:0;font-size:12px}
.search select{background:none;border:0;color:var(--ink);font:600 15px var(--sans);padding:2px 0;min-width:0;width:100%}
.search select option{background:#12151a}
.search .btn{border-radius:0}
.float3d{position:relative;height:min(58vh,520px);perspective:1400px}
.fcard{position:absolute;left:8%;right:8%;top:10%;background:#0f1216;border:1px solid #3a3427;box-shadow:0 50px 100px #000c;transform-style:preserve-3d;will-change:transform;transition:opacity .6s}
.fcard img{width:100%;aspect-ratio:3/2;object-fit:cover}
.fmeta{display:grid;gap:2px;padding:16px 18px}
.fmeta b{font:600 24px var(--serif)}.fmeta span{color:var(--mute);font-size:14px}.fmeta em{font-style:normal;color:var(--gold2);font-weight:800}
.fchip{position:absolute;background:#0f1216f2;border:1px solid #4a4335;color:var(--ink);font:700 13px var(--sans);padding:10px 14px;box-shadow:0 20px 40px #000a;will-change:transform}
.fchip.c1{left:0;top:4%}.fchip.c2{right:0;bottom:10%}
.fchip.c2:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#55d38a;margin-inline-end:8px}
/* listings */
.sec{padding-block:96px}.sec.dk{background:var(--bg2)}
.head{margin-bottom:34px;max-width:760px}.head h2{font-size:clamp(2.2rem,4.4vw,3.6rem);margin-bottom:8px}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.card{background:#101317;border:1px solid var(--line);cursor:pointer;text-align:start;padding:0;color:inherit;font:inherit;transition:transform .3s,border-color .3s;transform-style:preserve-3d}
.card:hover{border-color:#5a4f39}
.card .im{position:relative;overflow:hidden;aspect-ratio:4/3}
.card img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.card:hover img{transform:scale(1.06)}
.card .tg{position:absolute;top:12px;inset-inline-start:12px;background:#0b0d10d9;border:1px solid #4a4335;color:var(--gold2);font:800 10px var(--sans);letter-spacing:.14em;text-transform:uppercase;padding:5px 9px}
[dir=rtl] .card .tg{letter-spacing:0;font-size:12px}
.card .bd{padding:16px 16px 18px;display:grid;gap:4px}
.card b{font:600 21px/1.1 var(--serif)}.card .ar{color:var(--mute);font-size:13px}
.card .sp{display:flex;gap:12px;color:#cfc9bb;font-size:13px;margin-top:4px}
.card .pr{color:var(--gold2);font-weight:800;margin-top:6px;font-variant-numeric:tabular-nums}
.empty{grid-column:1/-1;color:var(--mute);padding:30px;border:1px dashed var(--line);text-align:center}
.op{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:50px;align-items:center}
.op h2{font-size:clamp(2.2rem,4.4vw,3.6rem);margin-bottom:12px}
.plan{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#3a3427;border:1px solid #3a3427;margin:24px 0 26px}
.plan div{background:#0f1216;padding:18px;display:grid}.plan b{font:600 40px var(--serif);color:var(--gold2)}.plan span{color:var(--mute);font-size:13px}
.tilt3d{position:relative;margin:0;transform:perspective(1400px) rotateY(-10deg) rotateX(3deg);box-shadow:0 50px 100px #000c;border:1px solid #3a3427;transition:transform .3s}
.tilt3d img{width:100%;aspect-ratio:4/3;object-fit:cover}
.tilt3d figcaption{position:absolute;bottom:14px;inset-inline-start:14px;background:#0b0d10e6;border:1px solid #4a4335;padding:6px 10px;font:700 12px var(--sans);color:var(--gold2)}
.areas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.area{position:relative;display:block;text-decoration:none;overflow:hidden;aspect-ratio:3/4;border:1px solid var(--line)}
.area img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s}
.area:hover img{transform:scale(1.07)}
.area:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0b0d10f0 0,#0b0d1000 60%)}
.area b,.area span{position:absolute;z-index:2;inset-inline-start:18px;inset-inline-end:18px}
.area b{bottom:42px;font:600 28px var(--serif)}.area span{bottom:16px;color:#d6d0c2;font-size:13px}
.mort{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:50px;align-items:center}
.mort h2{font-size:clamp(2.2rem,4.4vw,3.4rem);margin-bottom:12px}
.calc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#3a3427;border:1px solid #3a3427}
.calc label{display:grid;gap:4px;background:#0f1216;padding:14px 16px}
.calc label span{font:800 10px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
[dir=rtl] .calc label span{letter-spacing:0;font-size:12px}
.calc input{background:none;border:0;border-bottom:1px solid #3a3427;color:var(--ink);font:700 20px var(--sans);padding:4px 0;width:100%;min-width:0}
.calc input:focus{outline:none;border-color:var(--gold)}
.calc .out{grid-column:1/-1;background:#16120a;padding:20px 18px;display:grid;gap:2px}
.calc .out small{color:var(--gold);font:800 11px var(--sans);letter-spacing:.14em;text-transform:uppercase}
.calc .out b{font:600 46px var(--serif);color:#fff;font-variant-numeric:tabular-nums}.calc .out span{color:var(--mute);font-size:13px}
.cta-sec{text-align:center;background:radial-gradient(60% 90% at 50% 100%,#2a2213 0,var(--bg) 70%)}
.cta-sec h2{font-size:clamp(2.2rem,5vw,4rem);margin-bottom:28px}
/* modal */
.modal{position:fixed;inset:0;z-index:80;background:#000d;display:grid;place-items:center;padding:20px;overflow:auto}
.modal[hidden]{display:none}
.mbox{position:relative;width:min(980px,100%);background:#101317;border:1px solid #3a3427;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);animation:min .45s cubic-bezier(.2,.7,.2,1)}
@keyframes min{from{opacity:0;transform:perspective(1200px) rotateX(8deg) translateY(30px)}to{opacity:1;transform:none}}
.mgal{display:grid;gap:2px;grid-template-columns:1fr 1fr;align-content:start}
.mgal img{width:100%;aspect-ratio:4/3;object-fit:cover}.mgal img:first-child{grid-column:1/-1}
.mbody{padding:26px;display:grid;align-content:start;gap:8px}
.mbody h3{font-size:34px}.tag{justify-self:start;font:800 10px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold2);border:1px solid #4a4335;padding:5px 9px}
.specs{display:flex;flex-wrap:wrap;gap:14px;color:#d6d0c2;font-size:14px}
.price{font:600 34px var(--serif);color:var(--gold2)}
.mcta{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.x{position:absolute;top:10px;inset-inline-end:10px;z-index:2;width:40px;height:40px;background:#0b0d10e6;border:1px solid #4a4335;color:#fff;font-size:24px;cursor:pointer}
.toast{position:fixed;z-index:90;left:50%;bottom:max(24px,env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:#16120a;border:1px solid var(--gold);color:var(--gold2);padding:14px 18px;font:700 14px var(--sans);max-width:min(92vw,520px);text-align:center;box-shadow:0 20px 50px #000c}
.toast[hidden]{display:none}
footer{border-top:1px solid var(--line);padding-block:34px;background:#08090b}
footer .wrap{display:flex;flex-wrap:wrap;gap:18px 30px;align-items:center;justify-content:space-between}
footer p{flex:1 1 320px;margin:0;font-size:13px}
@media(max-width:1080px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.areas{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.nav{display:none}.hin,.op,.mort{grid-template-columns:1fr}.float3d{height:360px;order:-1}.search{grid-template-columns:repeat(2,minmax(0,1fr))}.search .btn{grid-column:1/-1}.mbox{grid-template-columns:1fr}.tilt3d{transform:none}}
@media(max-width:560px){.grid,.areas{grid-template-columns:1fr}.tr .viewing{display:none}.calc{grid-template-columns:1fr}.hero h1{font-size:clamp(2.6rem,12vw,3.4rem)}.float3d{height:300px}.fchip{font-size:11px;padding:8px 10px}}
@media(prefers-reduced-motion:reduce){.card img,.area img{transition:none}.mbox{animation:none}}
html,body{overflow-x:clip}
