:root{
  --ink:#0f0e0c; --ink-2:#1a1814; --ink-3:#26231d;
  --ivory:#f7f3ec; --ivory-2:#efe8dc; --paper:#fffdf9;
  --gold:#ad8637; --gold-2:#cba857; --gold-3:#e4cf98; --gold-ink:#7d5f22;
  --text:#1d1b17; --text-2:#5b554b; --text-inv:#f3eee4; --text-inv-2:#b9b0a1;
  --line:rgba(29,27,23,.12); --line-inv:rgba(243,238,228,.14);
  --font-display:'Cormorant Garamond','Times New Roman',serif;
  --font-body:'Plus Jakarta Sans','Segoe UI',sans-serif;
  --r-sm:4px; --r-md:8px; --r-lg:14px;
  --wrap:1240px;
  --ease:cubic-bezier(.16,1,.3,1);
  --text-xs:clamp(.75rem,.72rem + .15vw,.8125rem);
  --text-sm:clamp(.875rem,.85rem + .1vw,.9375rem);
  --text-base:clamp(1rem,.97rem + .15vw,1.0625rem);
  --text-lg:clamp(1.125rem,1.05rem + .35vw,1.375rem);
  --text-xl:clamp(1.75rem,1.4rem + 1.4vw,2.6rem);
  --text-2xl:clamp(2.2rem,1.6rem + 2.6vw,3.6rem);
  --text-hero:clamp(2.6rem,1.6rem + 4.4vw,5.4rem);
}
html[lang="ar"]{
  --font-display:'Amiri','Times New Roman',serif;
  --font-body:'IBM Plex Sans Arabic','Segoe UI',sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;color:var(--text);background:var(--ivory);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;display:block;height:auto}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3{margin:0;font-weight:500;line-height:1.1}
p{margin:0}
:focus-visible{outline:2px solid var(--gold-2);outline-offset:3px;border-radius:2px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.wrap{width:min(100% - 2.5rem,var(--wrap));margin-inline:auto}
.skip{position:absolute;inset-inline-start:-999px;top:0;background:var(--gold);color:#fff;padding:.6rem 1rem;z-index:100}
.skip:focus{inset-inline-start:1rem;top:1rem}
.muted{color:var(--text-2)}
.kicker{font-size:var(--text-xs);letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:var(--gold-ink);display:inline-flex;align-items:center;gap:.75rem}
.kicker::before{content:"";width:28px;height:1px;background:currentColor}
html[lang="ar"] .kicker{letter-spacing:0;font-size:var(--text-sm)}
.dark .kicker,.on-dark .kicker{color:var(--gold-2)}
.display{font-family:var(--font-display);font-weight:500;letter-spacing:-.01em}
html[lang="ar"] .display{letter-spacing:0;line-height:1.35}
.h-section{font-size:var(--text-xl);margin-top:.9rem}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:48px;padding:.8rem 1.4rem;border-radius:var(--r-sm);font-size:var(--text-sm);font-weight:600;letter-spacing:.02em;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease),transform .25s var(--ease)}
.btn:active{transform:translateY(1px)}
.btn-gold{background:var(--gold);color:#fff}
.btn-gold:hover{background:var(--gold-ink)}
.btn-dark{background:var(--ink);color:var(--text-inv)}
.btn-dark:hover{background:var(--ink-3)}
.btn-line{border-color:currentColor;background:transparent}
.btn-line:hover{background:rgba(173,134,55,.12)}
.btn-sm{min-height:42px;padding:.55rem 1rem}
.link-arrow{display:inline-flex;gap:.5rem;align-items:center;font-weight:600;font-size:var(--text-sm);text-decoration:none;color:var(--gold-ink);border-bottom:1px solid currentColor;padding-bottom:2px}
.dark .link-arrow{color:var(--gold-2)}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(15,14,12,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line-inv);color:var(--text-inv)}
.header-inner{display:flex;align-items:center;gap:2rem;min-height:76px}
.brand img{height:44px;width:auto}
.nav{display:flex;gap:1.9rem;margin-inline-start:auto}
.nav a{text-decoration:none;font-size:var(--text-sm);font-weight:500;color:var(--text-inv-2);padding:.5rem 0;position:relative;transition:color .2s}
.nav a:hover,.nav a.active{color:var(--text-inv)}
.nav a.active::after{content:"";position:absolute;inset-inline:0;bottom:0;height:1px;background:var(--gold-2)}
.header-actions{display:flex;align-items:center;gap:.75rem}
.lang{background:none;border:1px solid var(--line-inv);color:var(--text-inv);border-radius:var(--r-sm);min-height:42px;padding:.4rem .9rem;cursor:pointer;font-size:var(--text-sm)}
.lang:hover{border-color:var(--gold-2)}
.lang[lang="ar"]{font-family:'IBM Plex Sans Arabic',sans-serif}
.lang[lang="en"]{font-family:'Plus Jakarta Sans',sans-serif}
.menu-btn{display:none;width:44px;height:44px;background:none;border:1px solid var(--line-inv);border-radius:var(--r-sm);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:6px}
.menu-btn span{width:18px;height:1.5px;background:var(--text-inv);transition:transform .3s var(--ease)}
.menu-btn[aria-expanded="true"] span:first-child{transform:translateY(3.75px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span:last-child{transform:translateY(-3.75px) rotate(-45deg)}
@media (max-width:1180px){
  .menu-btn{display:flex}
  .header-inner{gap:1rem}
  .header-actions{margin-inline-start:auto}
  .nav{position:fixed;inset:76px 0 auto 0;background:var(--ink);flex-direction:column;gap:0;padding:1rem 1.25rem 2rem;border-bottom:1px solid var(--line-inv);transform:translateY(-8px);opacity:0;pointer-events:none;transition:opacity .25s var(--ease),transform .25s var(--ease);margin:0}
  .nav.open{opacity:1;transform:none;pointer-events:auto}
  .nav a{font-size:var(--text-lg);padding:.9rem 0;border-bottom:1px solid var(--line-inv)}
  .nav a.active::after{display:none}
  .hide-sm{display:none}
  .brand img{height:38px}
}

/* Hero */
.hero{position:relative;min-height:min(88vh,860px);display:grid;align-items:end;color:var(--text-inv);background:var(--ink);overflow:hidden}
.hero-media{position:absolute;inset:0}
.hero-media img{width:100%;height:100%;object-fit:cover;animation:heroZoom 18s var(--ease) both}
@keyframes heroZoom{from{transform:scale(1.08)}to{transform:scale(1)}}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,14,12,.35) 0%,rgba(15,14,12,.15) 35%,rgba(15,14,12,.88) 100%)}
.hero-content{position:relative;z-index:1;padding-block:clamp(7rem,14vh,10rem) clamp(2rem,5vw,3.5rem)}
.hero h1{font-size:var(--text-hero);max-width:15ch;margin-top:1.1rem}
html[lang="ar"] .hero h1{max-width:18ch}
.hero p.lead{max-width:56ch;color:#e9e2d4;margin-top:1.25rem;font-size:var(--text-base)}
.hero .kicker{color:var(--gold-3)}

/* Search bar */
.search{margin-top:2.5rem;display:grid;grid-template-columns:auto 1fr 1fr 1fr auto;gap:0;background:var(--paper);color:var(--text);border-radius:var(--r-md);padding:.5rem;box-shadow:0 30px 60px -30px rgba(0,0,0,.6);max-width:1040px}
.seg{display:flex;background:var(--ivory-2);border-radius:var(--r-sm);padding:4px;align-self:center;margin-inline-end:.5rem}
.seg button{border:0;background:none;min-height:44px;padding:0 1.1rem;border-radius:3px;font-weight:600;font-size:var(--text-sm);cursor:pointer;color:var(--text-2)}
.seg button[aria-pressed="true"]{background:var(--ink);color:var(--text-inv)}
.field{display:flex;flex-direction:column;padding:.4rem 1rem;border-inline-start:1px solid var(--line);min-width:0}
.field label{font-size:var(--text-xs);color:var(--text-2);font-weight:500}
.field select{border:0;background:transparent;padding:.2rem 0;font-weight:600;font-size:var(--text-sm);min-height:30px;cursor:pointer;width:100%;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%235b554b' fill='none' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 2px center;padding-inline-end:18px}
html[dir="rtl"] .field select{background-position:left 2px center}
.search .btn{align-self:stretch;min-width:120px}
@media (max-width:860px){
  .search{grid-template-columns:1fr;gap:.35rem}
  .seg{margin:0 0 .15rem}
  .seg button{flex:1}
  .field{border:0;background:var(--ivory);border-radius:var(--r-sm)}
  .search .btn{min-height:50px}
}

/* Stats */
.stats{background:var(--ink);color:var(--text-inv);border-top:1px solid var(--line-inv)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{padding:2rem 1.5rem;border-inline-start:1px solid var(--line-inv)}
.stat:first-child{border-inline-start:0;padding-inline-start:0}
.stat b{display:block;font-family:var(--font-display);font-weight:500;font-size:var(--text-2xl);color:var(--gold-2);line-height:1}
.stat span{font-size:var(--text-sm);color:var(--text-inv-2);display:block;margin-top:.5rem}
@media (max-width:720px){.stats-grid{grid-template-columns:1fr 1fr}.stat{padding:1.4rem 1rem;border-top:1px solid var(--line-inv)}.stat:nth-child(odd){border-inline-start:0;padding-inline-start:0}.stat:nth-child(-n+2){border-top:0}}

/* Sections */
.sec{padding-block:clamp(4rem,9vw,8rem)}
.sec-tight{padding-block:clamp(3rem,6vw,5rem)}
.dark{background:var(--ink);color:var(--text-inv)}
.dark .muted{color:var(--text-inv-2)}
.sec-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:clamp(2rem,4vw,3.25rem);flex-wrap:wrap}
.sec-head p{max-width:48ch;margin-top:1rem}

/* Cards */
.grid-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.25rem,2.4vw,2rem)}
@media (max-width:1000px){.grid-cards{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.grid-cards{grid-template-columns:1fr}}
.card{display:flex;flex-direction:column;text-decoration:none;background:var(--paper);border-radius:var(--r-md);overflow:hidden;border:1px solid var(--line);transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.card:hover{transform:translateY(-4px);box-shadow:0 24px 50px -28px rgba(60,44,14,.45)}
.card-media{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--ivory-2)}
.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.card:hover .card-media img{transform:scale(1.04)}
.tag{position:absolute;top:.85rem;inset-inline-start:.85rem;background:rgba(15,14,12,.82);color:var(--text-inv);font-size:var(--text-xs);font-weight:600;padding:.35rem .7rem;border-radius:3px;letter-spacing:.04em}
.tag-gold{background:var(--gold);color:#fff}
.illus{position:absolute;bottom:.7rem;inset-inline-end:.7rem;font-size:11px;color:#fff;background:rgba(15,14,12,.55);padding:.2rem .5rem;border-radius:3px}
.card-body{padding:1.25rem 1.3rem 1.4rem;display:flex;flex-direction:column;gap:.55rem;flex:1}
.card-area{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.14em;color:var(--gold-ink);font-weight:600}
html[lang="ar"] .card-area{letter-spacing:0;text-transform:none;font-size:var(--text-sm)}
.card-title{font-size:var(--text-base);font-weight:600;line-height:1.4;color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card-specs{display:flex;flex-wrap:wrap;gap:.35rem 1rem;font-size:var(--text-sm);color:var(--text-2)}
.card-price{margin-top:auto;padding-top:.85rem;border-top:1px solid var(--line);font-family:var(--font-display);font-size:1.6rem;font-weight:600;color:var(--text);display:flex;align-items:baseline;gap:.4rem;flex-wrap:wrap}
.card-price small{font-family:var(--font-body);font-size:var(--text-xs);color:var(--text-2);font-weight:500}
.cur{font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;color:var(--gold-ink);letter-spacing:.08em}

/* Featured asymmetric */
.feat{display:grid;grid-template-columns:1.35fr 1fr;gap:clamp(1.25rem,2.4vw,2rem)}
.feat .stack{display:grid;gap:clamp(1.25rem,2.4vw,2rem)}
.feat .big .card-media{aspect-ratio:auto;flex:1;min-height:340px}
.feat .big{height:100%}
.feat .stack .card{flex-direction:row}
.feat .stack .card-media{aspect-ratio:auto;width:44%;flex:none}
@media (max-width:900px){.feat{grid-template-columns:1fr}.feat .stack .card{flex-direction:column}.feat .stack .card-media{width:100%;aspect-ratio:4/3}.feat .big .card-media{min-height:0;aspect-ratio:4/3;flex:none}}

/* Services */
.svc{display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(2rem,6vw,6rem);align-items:start}
.svc-list{list-style:none;margin:0;padding:0;counter-reset:s}
.svc-list li{counter-increment:s;display:grid;grid-template-columns:3.5rem 1fr;gap:1rem;padding:1.6rem 0;border-top:1px solid var(--line-inv)}
.svc-list li:last-child{border-bottom:1px solid var(--line-inv)}
.svc-list li::before{content:"0" counter(s);font-family:var(--font-display);font-size:1.5rem;color:var(--gold-2);line-height:1.2}
.svc-list h3{font-size:var(--text-lg);font-weight:600;font-family:var(--font-body);margin-bottom:.4rem}
.svc-img{border-radius:var(--r-md);overflow:hidden;margin-top:2.5rem;aspect-ratio:4/5}
.svc-img img{width:100%;height:100%;object-fit:cover}
@media (max-width:900px){.svc{grid-template-columns:1fr}.svc-img{aspect-ratio:16/10}}

/* Why */
.why{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.why-img{position:relative;border-radius:var(--r-md);overflow:hidden;aspect-ratio:5/4}
.why-img img{width:100%;height:100%;object-fit:cover}
.ticks{list-style:none;padding:0;margin:1.75rem 0 0;display:grid;gap:.85rem}
.ticks li{display:flex;gap:.85rem;align-items:flex-start;font-weight:500}
.ticks li::before{content:"";flex:none;width:18px;height:18px;margin-top:4px;border-radius:50%;border:1px solid var(--gold);background:radial-gradient(circle,var(--gold) 0 3px,transparent 4px)}
.pull{font-family:var(--font-display);font-size:var(--text-xl);line-height:1.25;font-style:italic;margin-top:2rem;color:var(--gold-ink)}
html[lang="ar"] .pull{font-style:normal}
@media (max-width:900px){.why{grid-template-columns:1fr}}

/* Full bleed */
.bleed{position:relative;min-height:56vh;display:grid;place-items:center;color:var(--text-inv);text-align:center;overflow:hidden;background:var(--ink)}
.bleed img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.75}
.bleed::after{content:"";position:absolute;inset:0;background:rgba(15,14,12,.45)}
.bleed .wrap{position:relative;z-index:1}
.bleed h2{font-size:var(--text-2xl);max-width:20ch;margin:1rem auto 0}

/* Areas */
.areas{display:flex;flex-wrap:wrap;gap:.6rem}
.chip{display:inline-flex;align-items:center;gap:.6rem;min-height:44px;padding:.5rem 1.1rem;border:1px solid var(--line);border-radius:999px;text-decoration:none;font-size:var(--text-sm);font-weight:500;background:var(--paper);transition:border-color .2s,background .2s}
.chip:hover{border-color:var(--gold);background:#fff}
.chip em{font-style:normal;color:var(--gold-ink);font-weight:600;font-size:var(--text-xs)}

/* Sell band */
.band{display:grid;grid-template-columns:1fr 1fr;background:var(--ink-2);color:var(--text-inv);border-radius:var(--r-lg);overflow:hidden}
.band-body{padding:clamp(2rem,5vw,4rem);display:flex;flex-direction:column;gap:1.1rem;align-items:flex-start}
.band-body h2{font-size:var(--text-xl)}
.band-img img{width:100%;height:100%;object-fit:cover;min-height:320px}
@media (max-width:860px){.band{grid-template-columns:1fr}.band-img{order:-1}.band-img img{min-height:0;aspect-ratio:16/10}}

/* Team */
.team{display:grid;grid-template-columns:1.4fr repeat(2,1fr);grid-template-rows:auto auto;gap:clamp(1rem,2vw,1.5rem)}
.member{margin:0;position:relative;border-radius:var(--r-md);overflow:hidden;background:var(--ink-2)}
.member img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/5;object-position:center 20%}
.member.lead{grid-row:span 2}
.member.lead img{aspect-ratio:auto;height:100%}
.member figcaption{position:absolute;inset:auto 0 0 0;padding:2.5rem 1.1rem 1rem;background:linear-gradient(180deg,transparent,rgba(15,14,12,.9));color:var(--text-inv)}
.member figcaption b{display:block;font-weight:600;font-size:var(--text-base)}
.member figcaption span{font-size:var(--text-xs);color:var(--gold-3)}
@media (max-width:900px){.team{grid-template-columns:1fr 1fr}.member.lead{grid-column:1/-1;grid-row:auto}.member.lead img{aspect-ratio:4/3;object-position:center 25%}}

/* Listing page */
.page-hero{background:var(--ink);color:var(--text-inv);padding-block:clamp(3rem,7vw,5.5rem) clamp(2rem,4vw,3rem)}
.page-hero h1{font-size:var(--text-2xl);margin-top:1rem;max-width:22ch}
.page-hero p{color:var(--text-inv-2);max-width:60ch;margin-top:1rem}
.filters{position:sticky;top:76px;z-index:20;background:var(--ivory);border-bottom:1px solid var(--line)}
.filters-inner{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;padding-block:.9rem}
.filters .seg{margin:0;background:var(--ivory-2)}
.fsel{min-height:44px;border:1px solid var(--line);background:var(--paper);border-radius:var(--r-sm);padding:0 2rem 0 .9rem;font-size:var(--text-sm);font-weight:500;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%235b554b' fill='none' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .8rem center;cursor:pointer}
html[dir="rtl"] .fsel{padding:0 .9rem 0 2rem;background-position:left .8rem center}
.fcount{margin-inline-start:auto;font-size:var(--text-sm);color:var(--text-2)}
.empty{padding:4rem 0;text-align:center;display:grid;gap:1rem;justify-items:center}
@media (max-width:720px){.filters{position:static}.filters-inner>*{flex:1 1 calc(50% - .75rem)}.filters .seg{flex-basis:100%}.fcount{flex-basis:100%;margin:0}}

/* Detail */
.crumbs{font-size:var(--text-sm);color:var(--text-inv-2);text-decoration:none;display:inline-flex;gap:.4rem}
.crumbs:hover{color:var(--text-inv)}
.d-head{display:flex;justify-content:space-between;gap:2rem;align-items:end;flex-wrap:wrap;margin-top:1.4rem}
.d-head h1{font-size:var(--text-xl);max-width:26ch;margin-top:.7rem}
.d-price{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--gold-2);line-height:1}
.d-price small{font-family:var(--font-body);font-size:var(--text-sm);color:var(--text-inv-2)}
.d-gallery{display:grid;grid-template-columns:2fr 1fr;gap:.75rem;margin-top:2rem}
.d-gallery>div{position:relative;border-radius:var(--r-md);overflow:hidden}
.d-gallery img{width:100%;height:100%;object-fit:cover}
.d-gallery .main{aspect-ratio:16/10}
.d-note{background:var(--ink-2);color:var(--text-inv);padding:1.5rem;display:flex;flex-direction:column;justify-content:space-between;gap:1rem}
.d-note p{font-size:var(--text-sm);color:var(--text-inv-2)}
.d-gallery .gal img{position:absolute;inset:0}
.gal-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:0;background:rgba(15,14,12,.55);color:#fff;font-size:26px;line-height:1;cursor:pointer;display:grid;place-items:center;transition:background .2s}
.gal-nav:hover{background:rgba(173,134,55,.9)}
.gal-nav.prev{inset-inline-start:.75rem}.gal-nav.next{inset-inline-end:.75rem}
[dir=rtl] .gal-nav{transform:translateY(-50%) scaleX(-1)}
.d-gallery>.gal-thumbs{grid-column:1/-1;display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.25rem;border-radius:0;scrollbar-width:thin}
.gal-th{flex:0 0 auto;width:96px;aspect-ratio:3/2;padding:0;border:2px solid transparent;border-radius:6px;overflow:hidden;cursor:pointer;background:var(--ink-2);opacity:.7;transition:opacity .2s,border-color .2s}
.gal-th.on,.gal-th:hover{opacity:1;border-color:var(--gold-2,#CBA857)}
.btn-inv{color:var(--text-inv);border-color:rgba(255,255,255,.35)}
@media (max-width:760px){.d-gallery{grid-template-columns:1fr}.gal-th{width:76px}}
.d-layout{display:grid;grid-template-columns:1fr 360px;gap:clamp(2rem,5vw,4rem);align-items:start}
.d-layout h2{font-size:var(--text-lg);font-family:var(--font-body);font-weight:600;margin-bottom:1rem}
.facts{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper)}
.facts div{padding:1rem 1.1rem;border-inline-start:1px solid var(--line);border-top:1px solid var(--line)}
.facts div:nth-child(3n+1){border-inline-start:0}
.facts div:nth-child(-n+3){border-top:0}
.facts dt{font-size:var(--text-xs);color:var(--text-2)}
.facts dd{margin:.15rem 0 0;font-weight:600}
@media (max-width:560px){.facts{grid-template-columns:1fr 1fr}.facts div{border-inline-start:1px solid var(--line)!important;border-top:1px solid var(--line)!important}.facts div:nth-child(odd){border-inline-start:0!important}.facts div:nth-child(-n+2){border-top:0!important}}
.amen{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:0}
.amen li{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:.4rem .9rem;font-size:var(--text-sm)}
.desc{white-space:pre-line;color:var(--text-2);max-width:68ch}
.desc-note{font-size:var(--text-sm);color:var(--gold-ink);margin-bottom:.75rem}
.agent-card{position:sticky;top:100px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.5rem;display:grid;gap:1rem}
.agent{display:flex;gap:1rem;align-items:center}
.agent img{width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:center 20%}
.agent b{display:block}
.agent span{font-size:var(--text-sm);color:var(--text-2)}
.agent-card .btn{width:100%}
.map{border-radius:var(--r-md);overflow:hidden;border:1px solid var(--line);aspect-ratio:16/9;background:var(--ivory-2)}
.map iframe{width:100%;height:100%;border:0}
@media (max-width:960px){.d-layout{grid-template-columns:1fr}.agent-card{position:static}}
.stack-y>*+*{margin-top:clamp(2rem,4vw,3rem)}

/* About */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:start}
.about-grid p+p{margin-top:1.1rem}
.founder{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.founder img{border-radius:var(--r-md);aspect-ratio:4/5;object-fit:cover;width:100%}
.founder blockquote{margin:1.5rem 0 0;font-family:var(--font-display);font-size:var(--text-xl);line-height:1.3;font-style:italic}
html[lang="ar"] .founder blockquote{font-style:normal}
.founder .sig{margin-top:1.5rem;display:grid;gap:.2rem}
.founder .sig b{font-size:var(--text-lg)}
.founder .sig span{color:var(--gold-2);font-size:var(--text-sm)}
@media (max-width:860px){.about-grid,.founder{grid-template-columns:1fr}}
.bios{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}
.bio{display:grid;grid-template-columns:120px 1fr;gap:1.25rem;padding:1.25rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md)}
.bio img{width:120px;height:140px;object-fit:cover;border-radius:var(--r-sm);object-position:center 20%}
.bio b{display:block;font-size:var(--text-base)}
.bio .role{font-size:var(--text-xs);color:var(--gold-ink);font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.bio p{font-size:var(--text-sm);color:var(--text-2);margin-top:.6rem}
@media (max-width:760px){.bios{grid-template-columns:1fr}.bio{grid-template-columns:90px 1fr}.bio img{width:90px;height:110px}}

/* Steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}
.steps div{padding:1.75rem 1.5rem 0 0}
html[dir="rtl"] .steps div{padding:1.75rem 0 0 1.5rem}
.steps b{display:block;font-family:var(--font-display);font-size:var(--text-xl);color:var(--gold-ink);font-weight:500}
.steps h3{font-family:var(--font-body);font-size:var(--text-lg);font-weight:600;margin:.4rem 0}
.steps p{color:var(--text-2);font-size:var(--text-sm)}
@media (max-width:760px){.steps{grid-template-columns:1fr}.steps div{padding-bottom:1.5rem;border-bottom:1px solid var(--line)}}

/* Form */
.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(2rem,6vw,5rem);align-items:start}
.cinfo{display:grid;gap:1.4rem;margin-top:2rem}
.cinfo div{padding-bottom:1.2rem;border-bottom:1px solid var(--line)}
.cinfo dt{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink);font-weight:600}
html[lang="ar"] .cinfo dt{letter-spacing:0;font-size:var(--text-sm)}
.cinfo dd{margin:.3rem 0 0;font-size:var(--text-lg);font-weight:500}
.cinfo a{text-decoration:none}
.cinfo a:hover{color:var(--gold-ink)}
.form{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.5rem,3vw,2.5rem);display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form .full{grid-column:1/-1}
.form label{display:grid;gap:.35rem;font-size:var(--text-sm);font-weight:500}
.form input,.form select,.form textarea{min-height:48px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--ivory);padding:.7rem .9rem;font-size:var(--text-base);width:100%}
.form textarea{min-height:120px;resize:vertical}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--gold);outline-offset:0;border-color:transparent}
.form .note{font-size:var(--text-xs);color:var(--text-2)}
.form .err{color:#a1281f;font-size:var(--text-sm);min-height:1.2em}
.form-actions{display:flex;gap:.75rem;flex-wrap:wrap}
@media (max-width:860px){.contact-grid{grid-template-columns:1fr}}
@media (max-width:560px){.form{grid-template-columns:1fr}}

/* Footer */
.site-footer{background:var(--ink);color:var(--text-inv);padding-top:clamp(3rem,6vw,5rem)}
.site-footer .muted{color:var(--text-inv-2);font-size:var(--text-sm);margin-top:1rem}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1.2fr 1fr;gap:2rem}
.footer-logo{height:52px;width:auto}
.f-h{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-2);font-weight:600;margin-bottom:1rem}
html[lang="ar"] .f-h{letter-spacing:0;font-size:var(--text-sm)}
.f-links{list-style:none;margin:0;padding:0;display:grid;gap:.55rem;font-size:var(--text-sm)}
.f-links a{text-decoration:none;color:var(--text-inv-2)}
.f-links a:hover{color:var(--text-inv)}
.f-social{display:flex;gap:.6rem;margin-bottom:1.1rem}
.f-social a{width:42px;height:42px;border:1px solid var(--line-inv);border-radius:50%;display:grid;place-items:center;color:var(--text-inv-2);transition:color .2s,border-color .2s,transform .2s}
.f-social a:hover,.f-social a:focus-visible{color:var(--gold-2);border-color:var(--gold-2);transform:translateY(-2px)}
.footer-base{border-top:1px solid var(--line-inv);margin-top:3rem;padding-block:1.5rem 2rem;font-size:var(--text-xs);color:var(--text-inv-2);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
@media (max-width:860px){.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.footer-grid{grid-template-columns:1fr}}

.wa-float{position:fixed;bottom:1.25rem;inset-inline-end:1.25rem;z-index:60;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;box-shadow:0 10px 30px -8px rgba(0,0,0,.45);transition:transform .25s var(--ease)}
.wa-float:hover{transform:scale(1.06)}

/* Reveal */
.rv{opacity:0;transform:translateY(18px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}}
[dir="rtl"] .arrow{transform:scaleX(-1)}
.num{font-variant-numeric:tabular-nums}
.bio .lic{font-size:var(--text-xs);color:var(--text-2,#6b6458);margin:.4rem 0 0;letter-spacing:.02em}
.bio .li{display:inline-block;margin-top:.4rem;font-size:var(--text-xs);color:var(--gold,#AD8637);font-weight:600}
.nav-ext span{font-size:.8em;opacity:.8}

/* ---- Off-plan ---- */
.op{padding-block:clamp(2.5rem,6vw,5rem)}
.op-filters{display:flex;flex-wrap:wrap;gap:1rem;margin:1.5rem 0}
.op label{display:grid;gap:.35rem;font-size:.9rem;font-weight:600}
.op select,.op input[type=text],.op input[type=tel],.op input[type=email],.op input:not([type]){min-height:46px;padding:.6rem .8rem;border:1px solid rgba(0,0,0,.2);border-radius:6px;font:inherit;background:#fff;color:#111;width:100%}
.op-filters select{min-width:200px}
.op-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}
.op-card{border:1px solid rgba(173,134,55,.35);border-radius:10px;padding:1.4rem;display:grid;gap:.6rem;align-content:start;background:rgba(173,134,55,.05)}
.op-card h3{margin:0;font-family:"Cormorant Garamond",serif;font-size:1.6rem}
.op-badge{justify-self:start;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--gold-ink,#7d5f22)}
.op-meta{color:var(--gold-ink,#7d5f22);font-size:.9rem;margin:0}
.op-price{font-weight:700;margin:.3rem 0 0}
.op-dlg{border:0;border-radius:12px;padding:1.6rem;max-width:520px;width:calc(100% - 2rem);background:#fff;color:#111}
.op-dlg::backdrop{background:rgba(0,0,0,.6)}
.op-dlg form{display:grid;gap:.9rem}
.op-hp{position:absolute;inset-inline-start:-9999px;height:0;opacity:0}
.op-chk{display:flex!important;grid-template-columns:none;align-items:flex-start;gap:.6rem;font-weight:400!important}
.op-chk input{width:auto;min-height:0;margin-top:.25rem}
.op-act,.op-out{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center}
.op-out p{flex-basis:100%;margin:0}

/* =====================================================================
   2026 THEME LAYER  (quiet luxury: stone, basalt, brass, Gulf green)
   ===================================================================== */
:root{
  --ink:#11100e; --ink-2:#1a1917; --ink-3:#262420;
  --ivory:#ece8e0; --ivory-2:#e1dcd1; --paper:#faf8f4;
  --gold:#a98238; --gold-2:#c9a85d; --gold-3:#e6d4a3; --gold-ink:#7a5c20;
  --gulf:#12302d; --gulf-2:#1b4440;
  --font-display:'Bodoni Moda','Cormorant Garamond','Times New Roman',serif;
  --r-sm:3px; --r-md:6px; --r-lg:12px;
  --text-hero:clamp(2.8rem,1.4rem + 6vw,6.6rem);
}
html[lang="ar"]{--font-display:'Amiri','Times New Roman',serif}
.display{font-weight:400;letter-spacing:-.02em}
html[lang="ar"] .display{letter-spacing:0}
h2.display,.h-section{font-size:clamp(2rem,1.3rem + 2.8vw,3.8rem);line-height:1.04}

/* Kickers: quiet sentence-case labels, no rules */
.kicker{text-transform:none;letter-spacing:.01em;font-size:var(--text-sm);font-weight:500}
.kicker::before,.kicker::after{display:none!important}

/* Header: floats over the hero, turns to frosted basalt on scroll */
.site-header{position:fixed;inset-inline:0;top:0;background:rgba(17,16,14,.0);border-bottom:1px solid transparent;transition:background .35s var(--ease),border-color .35s,backdrop-filter .35s}
.site-header.scrolled{background:rgba(17,16,14,.86);border-bottom-color:var(--line-inv)}
body:not(.is-home) .site-header{background:var(--ink)}
main{padding-top:0}
body:not(.is-home) main{padding-top:76px}
.nav a{font-size:var(--text-sm);letter-spacing:.01em}

/* Hero */
.hero{min-height:100svh;align-items:end}
.hero::after{background:linear-gradient(180deg,rgba(17,16,14,.55) 0%,rgba(17,16,14,.05) 30%,rgba(17,16,14,.35) 62%,rgba(17,16,14,.92) 100%)}
.hero-content{padding-block:9rem clamp(2rem,4vw,3rem)}
.hero h1{font-size:var(--text-hero);max-width:11ch;line-height:.98;font-weight:400;margin-top:0}
html[lang="ar"] .hero h1{max-width:12ch;line-height:1.15}
.hero p.lead{max-width:46ch;font-size:var(--text-lg);color:rgba(255,255,255,.86);margin-top:1.5rem}
.search{margin-top:2.25rem;background:rgba(250,248,244,.12);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(22px) saturate(1.2);-webkit-backdrop-filter:blur(22px) saturate(1.2);box-shadow:0 30px 80px -30px rgba(0,0,0,.6);border-radius:var(--r-lg);color:#fff}
.hero .search .seg{background:rgba(0,0,0,.28)}
.hero .search .seg button{color:rgba(255,255,255,.78)}
.hero .search .seg button[aria-pressed="true"]{background:var(--paper);color:var(--ink)}
.hero .search label{color:rgba(255,255,255,.66)}
.hero .search select{color:#fff}
.hero .search select option{color:#111;background:#fff}
.hero .search .field{border-color:rgba(255,255,255,.2)}
.search-off{display:none;align-self:center;padding:0 1.25rem;color:rgba(255,255,255,.86);font-size:var(--text-sm);grid-column:2/5}
.search.is-off .field{display:none}
.search.is-off .search-off{display:block}
@media (prefers-reduced-motion:no-preference){
  .hero h1{animation:rise 1.1s var(--ease) .1s both}
  .hero p.lead{animation:rise 1.1s var(--ease) .35s both}
  .hero .search{animation:rise 1.1s var(--ease) .6s both}
}
@keyframes rise{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.hero-media img{animation:none}}

/* Stats: slim and quiet */
.stats{background:var(--ink)}
.stat .num{font-family:var(--font-display);font-weight:400}

/* Three doors: Buy / Rent / Off-plan */
.doors{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(.75rem,1.6vw,1.25rem);padding-block:clamp(3rem,6vw,5rem) 0}
.door{position:relative;display:block;overflow:hidden;border-radius:var(--r-lg);aspect-ratio:4/5;color:#fff;text-decoration:none;isolation:isolate;background:var(--ink)}
.door img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1.1s var(--ease)}
.door::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(17,16,14,0) 35%,rgba(17,16,14,.88) 100%)}
.door::after{content:"→";position:absolute;top:1.1rem;inset-inline-end:1.1rem;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:rgba(250,248,244,.9);color:var(--ink);transform:scale(.6);opacity:0;transition:.45s var(--ease)}
html[dir="rtl"] .door::after{content:"←"}
.door:hover img,.door:focus-visible img{transform:scale(1.06)}
.door:hover::after,.door:focus-visible::after{transform:none;opacity:1}
.door-t{position:absolute;inset-inline:0;bottom:0;padding:1.5rem;display:grid;gap:.3rem}
.door-t b{font-family:var(--font-display);font-weight:400;font-size:clamp(2rem,1.4rem + 1.8vw,3rem);line-height:1}
.door-t em{font-style:normal;color:rgba(255,255,255,.82);font-size:var(--text-sm);max-width:30ch}
.door-t small{color:var(--gold-3);font-size:var(--text-sm);font-weight:600;margin-top:.35rem}
@media (max-width:760px){.doors{grid-template-columns:1fr}.door{aspect-ratio:16/10}.door::after{opacity:1;transform:none}}

/* Listings cards: image-led, no boxes */
.card{background:transparent;border:0;border-radius:0}
.card:hover{transform:none;box-shadow:none}
.card-media{aspect-ratio:5/4;border-radius:var(--r-md)}
.card-body{padding:1rem .15rem 0}
.card-area{letter-spacing:.02em;text-transform:none;font-size:var(--text-sm)}
.card-price{font-family:var(--font-display);font-weight:400;font-size:1.7rem;border-top:0;padding-top:.4rem}
.feat .stack .card{background:transparent}

/* Off-plan band */
.op-band{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(1.5rem,4vw,4rem);align-items:center;background:var(--gulf);color:#eef2ef;border-radius:var(--r-lg);padding:clamp(1.75rem,4.5vw,4rem)}
.op-band h2{font-size:clamp(2rem,1.3rem + 2.6vw,3.4rem);line-height:1.05}
.op-band p{color:#c3d0cb;margin-top:1rem;max-width:44ch}
.op-band-act{margin-top:1.75rem}
.op-band-list{list-style:none;margin:0;padding:0;display:grid}
.op-band-list a{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;padding:1.05rem 0;border-bottom:1px solid rgba(255,255,255,.16);text-decoration:none;transition:padding .35s var(--ease)}
.op-band-list a:hover{padding-inline-start:.6rem}
.op-band-list b{font-family:var(--font-display);font-weight:400;font-size:1.5rem}
.op-band-list span{color:var(--gold-3);font-size:var(--text-sm)}
@media (max-width:860px){.op-band{grid-template-columns:1fr}}

/* Off-plan page cards: match theme */
.op-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg)}
.op-card h3{font-family:var(--font-display);font-weight:400}
.op h1{font-family:var(--font-display);font-weight:400;font-size:clamp(2.4rem,1.4rem + 3.5vw,4.6rem);letter-spacing:-.02em}

/* fixes after first render */
.site-header{backdrop-filter:none;-webkit-backdrop-filter:none}
.site-header.scrolled{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.site-header:not(.scrolled) .nav a{color:rgba(255,255,255,.94);text-shadow:0 1px 14px rgba(0,0,0,.45)}
.site-header:not(.scrolled) .nav a:hover{color:#fff}
.hero h1{max-width:15ch;text-wrap:balance}
.hero::before{content:"";position:absolute;inset:0 0 auto 0;height:180px;z-index:1;background:linear-gradient(180deg,rgba(17,16,14,.55),transparent);pointer-events:none}
.hero-content{z-index:2}
.svc-list li{grid-template-columns:1fr}
.svc-list li::before{display:none}

/* round 2 fixes */
.btn-gold{background:#9a7430}
.btn-gold:hover{background:#7a5c20}
@media (max-width:860px){
  .hero .search .field{background:rgba(0,0,0,.3);border:0;border-radius:var(--r-md)}
  .hero .search .seg{background:rgba(0,0,0,.35)}
  .search.is-off .search-off{padding:.75rem 1rem;grid-column:auto}
}
.op-dlg{max-height:calc(100dvh - 2rem);overflow:auto;overscroll-behavior:contain}
.op-dlg form{grid-template-columns:1fr 1fr}
.op-dlg form>h2,.op-dlg form>p,.op-dlg form>.op-chk,.op-dlg form>.op-out,.op-dlg form>.op-act,.op-dlg form>label:nth-of-type(1),.op-dlg form>label:nth-of-type(3),.op-dlg form>label:nth-of-type(8){grid-column:1/-1}
@media (max-width:520px){.op-dlg form{grid-template-columns:1fr}}
.op-dlg h2{font-family:var(--font-display);font-weight:400;font-size:1.9rem}
.op-dlg form>label:nth-of-type(1){grid-column:auto}
.op .btn-gold{color:#fff;font-weight:700}
.nav.open a{text-shadow:none}

/* =====================================================================
   V2: MIDNIGHT & CHAMPAGNE  (full dark theme, cinematic hero, rail)
   ===================================================================== */
:root{
  --ivory:#0c0b09; --ivory-2:#1a1713; --paper:#14120f;
  --text:#eee8db; --text-2:#a8a090;
  --line:rgba(238,232,219,.13);
  --gold:#c9a85d; --gold-2:#d9bd7e; --gold-3:#ecdcae; --gold-ink:#d4b672;
  --ink:#0c0b09; --ink-2:#14120f; --ink-3:#1e1b16;
  --champ:#d9bd7e;
}
body{background:var(--ivory);color:var(--text)}
.dark{background:#13110e}
.muted,.sec-head p{color:var(--text-2)}
.btn-gold{background:var(--champ);color:#17130b;font-weight:700;border-radius:999px}
.btn-gold:hover{background:var(--gold-3)}
.btn-line{border-radius:999px}
.btn-dark{background:transparent;color:var(--text);border:1px solid var(--line)}
.search .btn,.op .btn-gold{color:#17130b}
.link-arrow{color:var(--champ)}
h1,h2,h3{color:inherit}

/* Hero: three-image crossfade, bigger type */
.hero-media img.hs{position:absolute;inset:0;opacity:0;animation:hsFade 21s infinite var(--ease)}
.hero-media img.hs1{opacity:1;animation-delay:0s}
.hero-media img.hs2{animation-delay:7s}
.hero-media img.hs3{animation-delay:14s}
@keyframes hsFade{0%{opacity:0;transform:scale(1.07)}6%{opacity:1}33%{opacity:1}40%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
.hero-media img.hs1{animation-name:hsFade1}
@keyframes hsFade1{0%{opacity:1;transform:scale(1.07)}33%{opacity:1}40%{opacity:0;transform:scale(1)}94%{opacity:0;transform:scale(1.07)}100%{opacity:1;transform:scale(1.07)}}
@media (prefers-reduced-motion:reduce){.hero-media img.hs{animation:none}.hero-media img.hs2,.hero-media img.hs3{display:none}}
.hero h1{font-size:clamp(3rem,1.2rem + 7.4vw,8rem);line-height:.94;max-width:13ch}
.hero p.lead{color:rgba(255,255,255,.88)}
.hero .search{border-color:rgba(217,189,126,.45)}

/* Stats become a quiet hairline row */
.stats{background:#0c0b09;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stat .num{color:var(--champ);font-size:clamp(2rem,1.4rem + 1.6vw,3rem)}

/* Doors */
.door{border-radius:var(--r-lg);outline:1px solid rgba(217,189,126,.0);transition:outline-color .4s}
.door:hover{outline-color:rgba(217,189,126,.7)}
.door-t b{font-size:clamp(2.2rem,1.5rem + 2.4vw,3.6rem)}

/* Headings */
h2.display,.h-section{font-size:clamp(2.2rem,1.3rem + 3.6vw,4.6rem);line-height:1.02}
.sec{padding-block:clamp(5rem,10vw,9rem)}

/* Signature rail */
.rail-wrap{position:relative}
.rail{display:flex;gap:clamp(.9rem,1.6vw,1.4rem);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:.5rem;margin-inline:calc(-1 * clamp(1rem,4vw,3rem));padding-inline:clamp(1rem,4vw,3rem);scroll-padding-inline:clamp(1rem,4vw,3rem)}
.rail::-webkit-scrollbar{display:none}
.rcard{position:relative;flex:0 0 clamp(270px,30vw,400px);aspect-ratio:3/4;border-radius:var(--r-lg);overflow:hidden;scroll-snap-align:start;color:#fff;text-decoration:none;isolation:isolate;background:var(--ink-3)}
.rcard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1.1s var(--ease)}
.rcard::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(12,11,9,0) 40%,rgba(12,11,9,.92) 100%)}
.rcard:hover img{transform:scale(1.06)}
.rc-t{position:absolute;inset-inline:0;bottom:0;padding:1.3rem;display:grid;gap:.35rem}
.rc-t em{font-style:normal;color:var(--gold-3);font-size:var(--text-sm)}
.rc-t b{font-weight:600;font-size:var(--text-base);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rc-t .card-price{border:0;padding:.2rem 0 0;color:#fff;font-size:1.6rem}
.rc-t .card-price small{color:rgba(255,255,255,.75)}
.rail-nav{display:flex;gap:.6rem;justify-content:flex-end;margin-top:1.25rem}
.rail-nav button{width:52px;height:52px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--text);font-size:1.2rem;cursor:pointer;transition:.3s var(--ease)}
.rail-nav button:hover{background:var(--champ);color:#17130b;border-color:var(--champ)}
html[dir="rtl"] .rail-nav{justify-content:flex-start}

/* Cards (all listing grids) */
.card-media{border-radius:var(--r-lg)}
.card-area{color:var(--gold-ink)}
.card-title{color:var(--text)}
.card-price{color:var(--text);border-top:0}
.card-price small,.card-specs{color:var(--text-2)}
.tag{background:rgba(12,11,9,.72);color:#fff;backdrop-filter:blur(6px)}
.tag-gold{background:var(--champ);color:#17130b}

/* Off-plan band */
.op-band{background:linear-gradient(135deg,#102a27 0%,#0d1f1d 100%);border:1px solid rgba(217,189,126,.25)}
.op-band-list b{color:#fff}

/* Services, why, band */
.svc-list li{border-color:var(--line)}
.ticks li{color:var(--text)}
.pull{color:var(--gold-ink)}
.band{background:#14120f;border:1px solid var(--line)}
.chip{background:transparent;border:1px solid var(--line);color:var(--text)}
.chip:hover{border-color:var(--champ);color:var(--champ)}

/* About: cinematic hero + arch frames */
.about-hero{position:relative;min-height:min(78vh,720px);display:grid;align-items:end;overflow:hidden;color:#fff;isolation:isolate}
.about-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.about-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(12,11,9,.5) 0%,rgba(12,11,9,.1) 40%,rgba(12,11,9,.9) 100%)}
.about-hero .wrap{padding-block:9rem clamp(2.5rem,5vw,4.5rem)}
.about-hero h1{font-size:clamp(2.6rem,1.2rem + 5.6vw,6.4rem);line-height:.98;max-width:16ch;font-weight:400;margin-top:.8rem}
.about-hero .kicker{color:var(--gold-3)}
.arch{position:relative}
.arch img{border-radius:999px 999px var(--r-lg) var(--r-lg)!important;aspect-ratio:4/5!important;object-fit:cover}
.arch::after{content:"";position:absolute;inset:-14px 14px 14px -14px;border:1px solid rgba(217,189,126,.5);border-radius:999px 999px var(--r-lg) var(--r-lg);z-index:-1;pointer-events:none}
.founder>img{border-radius:999px 999px var(--r-lg) var(--r-lg)!important;object-fit:cover}
.member img,.bio img{filter:saturate(.92) contrast(1.02)}

/* Forms and filters on dark */
.filters,.fbar,#filters{background:var(--paper);border-color:var(--line)}
select,input,textarea{color-scheme:dark}
.op select,.op input[type=text],.op input[type=tel],.op input[type=email],.op input:not([type]){background:#1b1813;color:var(--text);border-color:var(--line)}
.op-dlg{background:#14120f;color:var(--text);border:1px solid rgba(217,189,126,.35)}
.op-card{background:#14120f;border-color:var(--line)}
.op-card p{color:var(--text-2)}
.op-card .op-price,.op-card h3{color:var(--text)}
.op-badge,.op-meta{color:var(--gold-ink)}
.op-dlg h2{color:var(--text)}
.site-footer{background:#080706}
.founder>img{aspect-ratio:4/5;object-position:center 20%;width:100%;max-width:440px}

/* Off-plan v2 */
.op-lead{max-width:60ch;margin-top:1rem}
.op-filters{align-items:end;gap:1rem 1.25rem}
.op-count{margin-inline-start:auto;color:var(--text-2);font-size:var(--text-sm);padding-bottom:.9rem}
.op-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}
.op-card{padding:0;overflow:hidden;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);display:flex;flex-direction:column;gap:0;align-content:normal}
.op-media{position:relative;aspect-ratio:16/10;background:var(--ink-3);overflow:hidden}
.op-media img{width:100%;height:100%;object-fit:cover}
.op-ph{display:grid;place-items:center;background:radial-gradient(120% 120% at 20% 0%,#2a2417 0%,#14120f 55%,#0c1a18 100%)}
.op-ph span{color:var(--gold-ink);font-size:var(--text-sm);letter-spacing:.02em;opacity:.8}
.op-media .op-badge{position:absolute;top:.9rem;inset-inline-start:.9rem;font-style:normal;background:rgba(12,11,9,.7);color:var(--gold-3);padding:.3rem .7rem;border-radius:999px;font-size:.75rem;letter-spacing:.04em;text-transform:none;backdrop-filter:blur(6px)}
.op-body{padding:1.3rem 1.4rem 1.5rem;display:grid;gap:.55rem;flex:1;align-content:start}
.op-card h3{font-size:1.7rem;line-height:1.1}
.op-types{color:var(--text-2);font-size:var(--text-sm);margin:0}
.op-facts{display:grid;gap:.5rem;margin:.6rem 0 1rem;padding:.9rem 0;border-block:1px solid var(--line)}
.op-facts div{display:flex;justify-content:space-between;gap:1rem;font-size:var(--text-sm)}
.op-facts dt{color:var(--text-2)}
.op-facts dd{margin:0;font-weight:600;text-align:end}
.op-body .btn{margin-top:auto;width:100%}
.op-note{margin-top:2rem;font-size:var(--text-sm);max-width:70ch}
.op-card .op-price{display:none}

/* =====================================================================
   V3: LIGHT CHAMPAGNE  (warm light base; dark only in hero, header, a few bands)
   ===================================================================== */
:root{
  --ivory:#f2eee6; --ivory-2:#e7e1d4; --paper:#fbf9f5;
  --text:#1d1b17; --text-2:#5b554b; --line:rgba(29,27,23,.13);
  --gold:#a98238; --gold-2:#c9a85d; --gold-3:#e6d4a3; --gold-ink:#7a5c20;
  --ink:#1c1812; --ink-2:#26221b; --ink-3:#312c23; --champ:#c9a85d;
}
body{background:var(--ivory);color:var(--text)}
.dark{background:#241f18}
.btn-gold{background:var(--champ);color:#1c150a}
.btn-gold:hover{background:#d9bd7e}
.btn-dark{background:var(--ink);color:#f3eee4;border:0}
.link-arrow{color:var(--gold-ink)}
.dark .link-arrow{color:var(--gold-2)}
.site-header.scrolled{background:rgba(28,24,18,.92)}
.site-footer{background:#1c1812}
select,input,textarea{color-scheme:light}
.stats{background:var(--paper);color:var(--text);border-block:1px solid var(--line)}
.stats .stat,.stats-grid .stat{border-color:var(--line)}
.stat span{color:var(--text-2)}
.stat .num{color:var(--gold-ink)}
.band{background:#241f18;border:0}
.chip:hover{border-color:var(--gold-ink);color:var(--gold-ink)}
.op select,.op input[type=text],.op input[type=tel],.op input[type=email],.op input:not([type]){background:#fff;color:var(--text);border-color:var(--line)}
.op-dlg{background:var(--paper);color:var(--text);border:1px solid var(--line)}
.op-dlg::backdrop{background:rgba(28,24,18,.6)}
.op-ph{background:radial-gradient(120% 120% at 20% 0%,#f6eedb 0%,#e9dfc6 60%,#dccfae 100%)}
.op-ph span{color:var(--gold-ink);opacity:1}
.op-card{background:var(--paper)}
.op-badge,.op-meta{color:var(--gold-ink)}
.op-media .op-badge{color:var(--gold-3)}
.rail-nav button{color:var(--text)}
.rail-nav button:hover{color:#1c150a}
.card-area{color:var(--gold-ink)}
.card-price{color:var(--text)}
.dark .kicker,.on-dark .kicker{color:var(--gold-2)}
.hero::after{background:linear-gradient(180deg,rgba(28,24,18,.5) 0%,rgba(28,24,18,.04) 30%,rgba(28,24,18,.3) 62%,rgba(28,24,18,.82) 100%)}

/* Flags, Investors, Fabien */
.flags{display:inline-flex;gap:.4rem;align-items:center;margin-top:.45rem}
.flag{display:inline-block;width:22px;height:15px;border-radius:2px;overflow:hidden;box-shadow:0 0 0 1px rgba(0,0,0,.18);vertical-align:middle}
.flag svg{display:block;width:100%;height:100%}
.member figcaption .flags{display:flex;margin-top:.5rem}
.bio .flags{display:flex}
.agent .flags{display:flex;margin-top:.3rem}
.inv-lang{margin:1.1rem 0 1.4rem;display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}
.inv-lang .flags{margin-top:0}
.bio-contact{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;margin-top:.8rem}
.bio-contact a:not(.btn){color:var(--gold-ink)}
.about-hero .lead{max-width:52ch;margin-top:1.2rem;font-size:var(--text-lg);color:rgba(255,255,255,.9)}
.inv-who{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1rem,2vw,1.5rem);margin-top:2.5rem}
.inv-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.6rem}
.inv-card h3{font-family:var(--font-display);font-weight:400;font-size:1.5rem;line-height:1.15;margin-bottom:.7rem}
.inv-person{display:grid;grid-template-columns:minmax(260px,.8fr) 1.2fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.inv-person .arch img,.inv-home-img img{aspect-ratio:3/4!important;object-position:center 15%;width:100%}
.inv-person .arch{max-width:440px}
.inv-steps{list-style:none;counter-reset:st;margin:2.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.25rem,3vw,3rem)}
.inv-steps li{counter-increment:st;border-top:1px solid var(--line);padding-top:1.4rem}
.inv-steps li::before{content:counter(st);font-family:var(--font-display);font-size:2.4rem;color:var(--gold-ink);display:block;line-height:1;margin-bottom:.8rem}
.inv-steps h3{font-family:var(--font-display);font-weight:400;font-size:1.6rem;margin-bottom:.5rem}
.inv-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.25rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.5rem,4vw,3rem);max-width:900px;margin-inline:auto}
.inv-form h2{grid-column:1/-1;font-size:clamp(1.9rem,1.2rem + 2vw,2.8rem)}
.inv-form .full{grid-column:1/-1}
.inv-form label{display:grid;gap:.35rem;font-size:.9rem;font-weight:600}
.inv-form input:not([type=checkbox]),.inv-form select,.inv-form textarea{min-height:46px;padding:.6rem .8rem;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--text);font:inherit;width:100%}
.inv-form .op-chk{display:flex}
.inv-form .op-out p{margin:0 0 .6rem}
.inv-home{background:var(--paper);border-block:1px solid var(--line)}
.inv-home-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.inv-home-img{display:block;max-width:400px;justify-self:end;width:100%}
@media (max-width:960px){.inv-who{grid-template-columns:1fr 1fr}.inv-person,.inv-home-grid{grid-template-columns:1fr}.inv-home-img{justify-self:start;max-width:320px}.inv-steps{grid-template-columns:1fr}}
@media (max-width:560px){.inv-who{grid-template-columns:1fr}.inv-form{grid-template-columns:1fr}}
.inv-home h2,.inv-person h2{margin-bottom:1.1rem}

/* ===== Round 3: language select, nav, story, partners, contact icons ===== */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lang-wrap{display:inline-flex;position:relative}
select.lang{appearance:none;-webkit-appearance:none;background:rgba(20,16,10,.35) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23d9bd7e' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right .7rem center;color:#fff;border:1px solid var(--line-inv);border-radius:var(--r-sm);min-height:42px;padding:.4rem 2rem .4rem .9rem;font:500 var(--text-sm) 'Plus Jakarta Sans',sans-serif;cursor:pointer}
[dir=rtl] select.lang{background-position:left .7rem center;padding:.4rem .9rem .4rem 2rem}
select.lang option{color:#1c1812;background:#fff}
.site-header.scrolled select.lang{background-color:transparent}
.nav{gap:1.5rem}
.nav a.nav-sell{background:var(--champ);color:#1c150a;border-radius:999px;padding:.5rem 1.05rem;font-weight:700;text-shadow:none!important;white-space:nowrap}
.nav a.nav-sell:hover{background:#d8b96f;color:#1c150a}
.nav a.nav-sell::after{display:none!important}
.site-header:not(.scrolled) .nav a.nav-sell{color:#1c150a}
@media (max-width:1180px){.nav a.nav-sell{display:block;margin-top:1rem;text-align:center;border-bottom:0;padding:.9rem 1.2rem;border-radius:999px}}
@media (min-width:1181px) and (max-width:1360px){.nav{gap:1.1rem}.nav a{font-size:.84rem}.header-inner{gap:1rem}}
.nav a{white-space:nowrap}

/* story */
.story{background:var(--paper)}
.story-head{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.story-head .lead{font-size:var(--text-lg);color:var(--text-2);max-width:46ch;margin-top:1.2rem}
.story-img{max-width:380px;justify-self:end;width:100%;margin:0}
.story-img img{width:100%;aspect-ratio:3/4;object-fit:cover}
.story-ch{list-style:none;margin:clamp(2.5rem,5vw,4rem) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1.25rem,3vw,2.5rem);position:relative}
.story-ch::before{content:"";position:absolute;inset-inline:0;top:.62rem;height:1px;background:linear-gradient(90deg,var(--champ),rgba(201,168,93,.15))}
.story-ch li{position:relative;padding-top:2.4rem}
.story-ch li::before{content:"";position:absolute;top:.2rem;inset-inline-start:0;width:.9rem;height:.9rem;border-radius:50%;background:var(--champ);box-shadow:0 0 0 5px var(--paper)}
.st-n{font-family:var(--font-display);font-size:2.6rem;line-height:1;color:var(--gold-ink);display:block;margin-bottom:.4rem}
.story-ch h3{font-family:var(--font-display);font-weight:400;font-size:1.7rem;margin-bottom:.5rem}
.story-ch p{color:var(--text-2)}
.story-foot{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap;margin-top:clamp(2rem,4vw,3.5rem);padding-top:2rem;border-top:1px solid var(--line)}
.story-foot .pull{margin:0;font-family:var(--font-display);font-style:italic;font-size:clamp(1.6rem,1.1rem + 1.6vw,2.4rem);color:var(--gold-ink)}
@media (max-width:960px){.story-head{grid-template-columns:1fr}.story-img{justify-self:start;max-width:300px}.story-ch{grid-template-columns:1fr 1fr}.story-ch::before{display:none}.story-ch li::before{display:none}.story-ch li{padding-top:0}}
@media (max-width:560px){.story-ch{grid-template-columns:1fr}}

/* wordmark tiles (plain text, not logos) */
.wm{list-style:none;margin:2.2rem 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}
.wm li{background:var(--paper);display:flex;align-items:center;justify-content:center;min-height:88px;padding:1rem;text-align:center}
.wm span{font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;letter-spacing:.18em;text-transform:uppercase;font-size:.82rem;color:var(--text-2)}
.wm li:hover span{color:var(--gold-ink)}
.wm-lg li{min-height:104px}.wm-lg span{font-size:.92rem}
.wm-band{grid-template-columns:repeat(2,1fr);margin:0;background:rgba(217,189,126,.25);border-color:rgba(217,189,126,.25)}
.wm-band li{background:rgba(0,0,0,.18);min-height:64px}.wm-band span{color:#fff;font-size:.74rem}
.wm-reg{grid-template-columns:repeat(4,1fr);margin-top:1.2rem}

@media (max-width:860px){.wm,.wm-reg{grid-template-columns:repeat(2,1fr)}}
.op-note-lead{max-width:60ch;margin-top:.8rem}
.op-expert{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,5vw,5rem);align-items:start}
.op-expert-cards{display:grid;gap:1rem}
.dark .op-expert .inv-card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12)}
.dark .op-expert .inv-card h3{color:#fff}
.op-reg{margin-top:clamp(2.5rem,5vw,4rem)}
.op-form-note{text-align:center;margin-top:1rem}
@media (max-width:960px){.op-expert{grid-template-columns:1fr}}
.op-hero .lead{max-width:56ch}

/* qualification form shares the investor form look */
.q-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.25rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.5rem,4vw,3rem);max-width:900px;margin-inline:auto}
.q-form h2{grid-column:1/-1;font-size:clamp(1.9rem,1.2rem + 2vw,2.8rem)}
.q-form h2:empty,.q-form p:empty{display:none}
.q-form .full{grid-column:1/-1}
.q-form label{display:grid;gap:.35rem;font-size:.9rem;font-weight:600}
.q-form input:not([type=checkbox]):not([type=hidden]),.q-form select,.q-form textarea{min-height:46px;padding:.6rem .8rem;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--text);font:inherit;width:100%}
.q-form [hidden]{display:none!important}
.q-form .op-chk{display:flex}
.contact-grid .q-form{max-width:none;margin:0}
@media (max-width:560px){.q-form{grid-template-columns:1fr}}

/* team contact icons */
.cicons{display:inline-flex;gap:.45rem;margin-top:.75rem}
.cicons a{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);color:var(--gold-ink);background:rgba(255,255,255,.6);transition:background .2s,color .2s,border-color .2s}
.cicons a:hover{background:var(--champ);color:#1c150a;border-color:var(--champ)}
.cicons svg{width:17px;height:17px}
.dark .cicons a{color:var(--champ);border-color:rgba(255,255,255,.25);background:transparent}
.dark .cicons a:hover{background:var(--champ);color:#1c150a}
.member figcaption .cicons{margin-top:.6rem}
.bio-contact{flex-direction:column;align-items:flex-start;gap:.15rem}
.bio-contact a{font-size:.92rem}
.bio img{object-fit:cover;object-position:center 12%}
.bio{grid-template-columns:170px 1fr}
.bio img{width:170px;height:226px;border-radius:var(--r-md)}
@media (max-width:760px){.bio{grid-template-columns:110px 1fr}.bio img{width:110px;height:147px}}
.member .cicons a{color:#fff;background:rgba(20,14,8,.45);border-color:rgba(255,255,255,.45);backdrop-filter:blur(4px)}
.member .cicons a:hover{background:var(--champ);color:#1c150a;border-color:var(--champ)}
.op-expert h2{margin-bottom:1rem}
main{overflow-x:clip}

/* Google reviews + map */
.g-sec{background:var(--paper);border-block:1px solid var(--line)}
.g-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;flex-wrap:wrap}
.g-sum{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}
.g-logo{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px var(--line)}
.g-score{font-family:var(--font-display);font-weight:400;font-size:2.4rem;line-height:1}
.g-stars{color:#d49a1c;letter-spacing:.08em;font-size:1.05rem;white-space:nowrap}
.g-based{color:var(--text-2);font-size:var(--text-sm)}
.g-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2rem}
.g-grid[hidden]{display:none}
.g-card{margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:1.5rem;display:flex;flex-direction:column;gap:.8rem}
.g-card blockquote{margin:0;color:var(--text);line-height:1.6;flex:1}
.g-card figcaption{display:flex;flex-direction:column;font-size:var(--text-sm)}
.g-card figcaption span{color:var(--text-2)}
.g-src{color:var(--text-2);font-size:var(--text-xs);margin-top:1rem}
.g-act{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.75rem}
@media (max-width:960px){.g-grid{grid-template-columns:1fr}}
.map-block{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:stretch}
.map-info dl{margin:1.2rem 0 1.6rem;display:grid;gap:1.1rem}
.map-info dt{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink);font-weight:600;margin-bottom:.25rem}
.map-info dd{margin:0;font-size:var(--text-lg)}
.map-frame{min-height:360px;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);background:var(--ivory-2)}
.map-frame iframe{width:100%;height:100%;min-height:360px;border:0;display:block}
@media (max-width:860px){.map-block{grid-template-columns:1fr}}
.inv-disc{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,5vw,5rem);align-items:start}
.inv-disc h2{margin-bottom:1rem}
.inv-disc-pts{list-style:none;margin:0;padding:0;display:grid;gap:0}
.inv-disc-pts li{padding:1.1rem 0;border-top:1px solid var(--line)}
.inv-disc-pts li:last-child{border-bottom:1px solid var(--line)}
.inv-disc-pts h3{font-family:var(--font-display);font-weight:400;font-size:1.5rem;margin-bottom:.3rem}
@media (max-width:860px){.inv-disc{grid-template-columns:1fr}}

/* wordmark tiles on dark sections */
.dark .wm{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.14)}
.dark .wm li{background:rgba(0,0,0,.25)}
.dark .wm span{color:#f2e7cb}
.dark .wm li:hover span{color:var(--champ)}

/* privacy / legal page */
.legal{max-width:70ch;margin-inline:auto}
.legal-upd{color:var(--muted,#7a7468);font-size:var(--text-sm,.9rem);margin-bottom:2rem}
.legal section{padding-block:1.4rem;border-top:1px solid var(--line,rgba(0,0,0,.12))}
.legal h2{font-size:var(--text-lg,1.25rem);font-weight:500;display:flex;gap:.8rem;align-items:baseline;margin-bottom:.6rem}
.legal h2 .num{color:var(--gold,#a98a4b);font-size:.8em;letter-spacing:.08em}
.legal p{line-height:1.7;margin-top:.6rem}
.op-chk a{text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.footer-base a{text-decoration:underline;text-underline-offset:3px}

/* ===== partner plates: designed text plates, gold on ink, subtle 3D on hover ===== */
.pwall-sec{background:radial-gradient(1200px 500px at 50% -10%,#221d14 0%,#13110e 60%,#0f0e0c 100%)}
.pwall-head{max-width:62ch}
.pwall-head .muted{margin-top:.9rem}
.plates{list-style:none;margin:2.4rem 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(.6rem,1.2vw,1rem)}
.plates-lg{grid-template-columns:repeat(7,1fr)}
.plates li{perspective:800px}
.plate{--rx:0deg;--ry:0deg;--mx:50%;position:relative;display:grid;place-content:center;justify-items:center;gap:.25rem;min-height:104px;padding:.9rem .5rem;border-radius:10px;text-align:center;overflow:hidden;
  background:linear-gradient(155deg,#25211a 0%,#14120e 52%,#1d1913 100%);
  border:1px solid rgba(203,168,87,.26);
  box-shadow:inset 0 1px 0 rgba(255,236,186,.16),inset 0 -1px 0 rgba(0,0,0,.65),0 14px 26px -16px rgba(0,0,0,.85);
  transform:rotateX(var(--rx)) rotateY(var(--ry));transform-style:preserve-3d;transition:transform .35s var(--ease),border-color .3s,box-shadow .3s}
.plate::before{content:"";position:absolute;inset:0;background:radial-gradient(180px 90px at var(--mx) 0%,rgba(255,232,170,.16),transparent 70%);opacity:0;transition:opacity .3s}
.plate::after{content:"";position:absolute;left:12%;right:12%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,232,170,.7),transparent)}
.plate:hover{border-color:rgba(228,207,152,.7);box-shadow:inset 0 1px 0 rgba(255,236,186,.28),inset 0 -1px 0 rgba(0,0,0,.65),0 22px 34px -16px rgba(0,0,0,.9),0 0 0 1px rgba(203,168,87,.15)}
.plate:hover::before{opacity:1}
.plate-n,.plate-s{background:linear-gradient(180deg,#f6e7b8 0%,#d9bb6c 46%,#9b7a33 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 1px 0 rgba(0,0,0,.7));transform:translateZ(18px)}
.plate-n{font-style:normal;font-weight:500;line-height:1.1}
.plate-s{font-style:normal;font-family:'Plus Jakarta Sans',sans-serif;font-weight:500;font-size:.58rem;letter-spacing:.3em;text-transform:uppercase}
.v-v1 .plate-n{font-family:'Bodoni Moda','Cormorant Garamond',serif;font-size:1.05rem;letter-spacing:.2em;text-transform:uppercase}
.v-v2 .plate-n{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:1.05rem;letter-spacing:.07em;text-transform:uppercase}
.v-v3 .plate-n{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:600;font-size:1.65rem;letter-spacing:.01em}
.v-v4 .plate-n{font-family:'Plus Jakarta Sans',sans-serif;font-weight:500;font-size:.78rem;letter-spacing:.38em;text-transform:uppercase;padding-inline-start:.38em}
.pwall-more{margin:1.4rem 0 0;display:flex;justify-content:center}
.pwall-more span{font-family:var(--font-display);font-style:italic;font-size:clamp(1.4rem,1rem + 1.2vw,2rem);color:var(--gold-3);padding:.55rem 2.2rem;border:1px dashed rgba(203,168,87,.45);border-radius:999px}
.pwall-more span::before{content:"+ ";color:var(--gold-2)}
.pwall-tm{margin:1.2rem 0 0;text-align:center;font-size:var(--text-xs);color:var(--text-inv-2);opacity:.75}
@media (max-width:1180px){.plates-lg{grid-template-columns:repeat(4,1fr)}}
@media (max-width:760px){.plates-lg{grid-template-columns:repeat(3,1fr)}.plate{min-height:92px}.v-v3 .plate-n{font-size:1.4rem}.v-v1 .plate-n{font-size:.92rem;letter-spacing:.14em}}
@media (max-width:520px){.plates-lg{grid-template-columns:repeat(2,1fr)}.plates-lg li:last-child:nth-child(odd){grid-column:span 2}}
.op-band{grid-template-columns:1fr}
.op-band p{max-width:58ch}

/* ===== hero film ===== */
.hero-media .hero-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:none}
.film-btn{position:absolute;z-index:3;inset-inline-end:clamp(1rem,3vw,2.2rem);top:clamp(5.5rem,10vh,7rem);width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:rgba(15,14,12,.45);backdrop-filter:blur(6px);color:#fff;cursor:pointer;display:grid;place-items:center;transition:background .25s,border-color .25s}
.film-btn:hover{background:rgba(15,14,12,.7);border-color:var(--gold-2)}
.film-ic{width:12px;height:14px;border-inline:4px solid #fff;display:block}
.film-btn.is-paused .film-ic{width:0;height:0;border-inline:0;border-block:7px solid transparent;border-inline-start:11px solid #fff}
@media (prefers-reduced-motion:reduce){.hero-media .hero-film{display:none}}

/* ===== scroll sequence ("Step inside") ===== */
.seq{position:relative;height:320vh;background:#0f0e0c;color:var(--text-inv)}
.seq-stick{position:sticky;top:0;height:100vh;height:100svh;display:flex;align-items:center;overflow:hidden;background:radial-gradient(900px 600px at 75% 40%,#2a2316 0%,#0f0e0c 70%)}
.seq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(1.5rem,4vw,4rem);align-items:center}
.seq-copy .kicker{color:var(--gold-2)}
.seq-copy h2{margin:.6rem 0 .8rem}
.seq-copy .muted{color:var(--text-inv-2)}
.seq-caps{list-style:none;margin:1.8rem 0 1.2rem;padding:0;display:grid;gap:.2rem}
.seq-cap{display:grid;grid-template-columns:2.2rem 1fr;gap:.6rem;padding:.8rem 0;border-top:1px solid var(--line-inv);opacity:.4;transition:opacity .6s var(--ease)}
.seq-cap.on{opacity:1}
.seq-n{font-family:var(--font-display);color:var(--gold-2);font-size:1.1rem}
.seq-cap b{font-family:var(--font-display);font-weight:500;font-size:1.5rem;display:block}
.seq-cap p{color:var(--text-inv-2);font-size:var(--text-sm);margin-top:.15rem;max-height:0;overflow:hidden;opacity:0;transition:max-height .6s var(--ease),opacity .6s}
.seq-cap.on p{max-height:6rem;opacity:1}
.seq-bar{height:2px;background:var(--line-inv);margin:0 0 1.1rem;overflow:hidden}
.seq-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-3));transform:scaleX(0);transform-origin:left}
[dir="rtl"] .seq-bar i{transform-origin:right}
.seq-note{font-size:var(--text-xs);color:var(--text-inv-2);opacity:.8;margin-bottom:1rem}
.seq-stage{--ry:0deg;position:relative;aspect-ratio:3/2;max-height:78vh;width:100%;transform:perspective(1500px) rotateY(var(--ry));transform-style:preserve-3d;transition:transform .2s linear;border-radius:14px;overflow:hidden;border:1px solid rgba(203,168,87,.35);box-shadow:0 50px 90px -40px rgba(0,0,0,.9),0 0 0 8px rgba(255,255,255,.02)}
.seq-f{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.1s var(--ease)}
.seq-f img{width:100%;height:100%;object-fit:cover;transform:scale(1.12);transition:transform 6s var(--ease)}
.seq-f.on{opacity:1}.seq-f.on img{transform:scale(1)}
.seq-glow{position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,rgba(255,236,186,.14) 0%,transparent 35%),linear-gradient(0deg,rgba(15,14,12,.35),transparent 40%)}
@media (max-width:860px){
  .seq{height:300vh}
  .seq-grid{grid-template-columns:1fr;gap:1rem;align-content:center}
  .seq-stage{order:-1;aspect-ratio:4/3;max-height:42vh}
  .seq-copy h2{font-size:clamp(1.8rem,7vw,2.4rem)}
  .seq-copy .muted{display:none}
  .seq-caps{margin:.8rem 0 .8rem}
  .seq-cap:not(.on){display:none}
  .seq-note{margin-bottom:.6rem}
}
@media (prefers-reduced-motion:reduce){.seq-f,.seq-f img,.seq-stage,.seq-cap,.seq-cap p{transition:none}}

/* ===== off-plan projects ===== */
.pj-filters{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:.8rem;margin-top:1.8rem;padding:1.1rem;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--paper)}
.pj-filters label{display:grid;gap:.3rem;font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-2)}
.pj-filters input,.pj-filters select{font:inherit;font-size:var(--text-sm);letter-spacing:0;text-transform:none;padding:.7rem .8rem;border:1px solid var(--line);border-radius:var(--r-sm);background:#fff;color:var(--text)}
.pj-meta{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center}
.pj-note{margin:.9rem 0 1.4rem;font-size:var(--text-xs)}
.pj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.pcard[hidden]{display:none}
.pcard{display:flex;flex-direction:column;background:var(--ink);color:var(--text-inv);border:1px solid rgba(203,168,87,.22);border-radius:var(--r-lg);overflow:hidden}
.pc-media{position:relative;aspect-ratio:4/3;overflow:hidden;background:#1a1814}
.pc-track{display:flex;height:100%;transition:transform .5s var(--ease)}
.pc-track img{flex:0 0 100%;width:100%;height:100%;object-fit:cover}
.pc-media .tag{position:absolute;top:.8rem;inset-inline-start:.8rem}
.pc-nav{position:absolute;top:50%;translate:0 -50%;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:rgba(15,14,12,.55);color:#fff;font-size:1.3rem;line-height:1;cursor:pointer}
.pc-prev{inset-inline-start:.7rem}.pc-next{inset-inline-end:.7rem}
.pc-count{position:absolute;bottom:.7rem;inset-inline-end:.8rem;font-size:var(--text-xs);background:rgba(15,14,12,.6);padding:.2rem .55rem;border-radius:999px}
.pc-dev{position:absolute;bottom:.7rem;inset-inline-start:.8rem;width:116px;pointer-events:none}
.pc-dev .plate{min-height:44px;padding:.3rem .4rem;border-radius:7px}.pc-dev .plate-n{font-size:.62rem;letter-spacing:.14em}
.pc-body{padding:1.2rem 1.3rem 1.3rem;display:flex;flex-direction:column;gap:.55rem;flex:1}
.pc-top h3{font-family:var(--font-display);font-weight:500;font-size:1.6rem;line-height:1.1}
.pc-top em{font-style:normal;color:var(--gold-3);font-size:var(--text-sm)}
.pc-body p{font-size:var(--text-sm)}
.pc-price{margin-top:auto;font-size:1.2rem}.pc-price small{color:var(--text-inv-2);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase}.pc-price .cur{color:var(--gold-2);font-size:.8rem}.pc-price b{font-weight:600}
.pc-src{color:var(--text-inv-2);font-size:var(--text-xs)}
.pc-act{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-top:.7rem;border-top:1px solid var(--line-inv)}
.pc-act .link-arrow{color:var(--gold-2)}
.pc-cmp{display:flex;align-items:center;gap:.4rem;font-size:var(--text-sm);cursor:pointer}
.pj-bar{position:sticky;bottom:1rem;z-index:5;margin-top:1.4rem;display:flex;gap:1.2rem;align-items:center;justify-content:center;padding:.8rem;background:rgba(15,14,12,.92);border:1px solid rgba(203,168,87,.3);border-radius:999px;width:max-content;margin-inline:auto}
.pj-bar .link-arrow{color:var(--gold-2)}
.pj-cmp{margin-top:2rem}.pj-cmp h3{font-size:1.8rem;margin-bottom:1rem}
.pj-tw{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-md)}
.pj-tw table{width:100%;border-collapse:collapse;min-width:560px}
.pj-tw th,.pj-tw td{padding:.8rem 1rem;text-align:start;border-bottom:1px solid var(--line);font-size:var(--text-sm)}
.pj-tw thead th{font-family:var(--font-display);font-size:1.2rem;font-weight:500}
.pj-tw tbody th{color:var(--text-2);font-weight:500;white-space:nowrap}
@media (max-width:1000px){.pj-grid{grid-template-columns:repeat(2,1fr)}.pj-filters{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.pj-grid{grid-template-columns:1fr}.pj-filters{grid-template-columns:1fr}}
.pj-meta button,.pj-bar button.link-arrow{background:none;border:0;border-bottom:1px solid currentColor;padding:0 0 2px;cursor:pointer;font:inherit;color:var(--gold-ink)}
.pj-bar button.link-arrow{color:var(--gold-2)}
.pcard .muted{color:#cfc6b6}

/* static hero: no zoom, no slideshow, no film */
.hero-media img,.hero-media img.hs,.hero-media img.hs1{animation:none!important;transform:none!important;opacity:1}
.seq-f img,.seq-f.on img{transform:none;transition:none}
.seq-stage{transform:none}

/* hero: the picture stays still; a soft warm light slowly drifts across it */
.hero-light{position:absolute;inset:0;pointer-events:none;z-index:1;mix-blend-mode:soft-light;opacity:.9;
  background:radial-gradient(55% 60% at 30% 40%,rgba(255,210,130,.55),rgba(255,210,130,0) 70%);background-size:140% 140%;background-repeat:no-repeat;
  animation:heroLight 16s ease-in-out infinite alternate}
@keyframes heroLight{0%{background-position:0% 20%;opacity:.35}50%{opacity:.85}100%{background-position:100% 60%;opacity:.4}}
@media (prefers-reduced-motion:reduce){.hero-light{animation:none;opacity:.5}}
.doors-sell{display:flex;gap:.9rem;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:1.6rem;color:var(--text-2);font-size:var(--text-sm)}

/* mobile listings: compact horizontal cards + collapsible filters */
.f-toggle{display:none}
@media (max-width:720px){
  .f-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:46px;padding:0 1rem;border:1px solid var(--line);background:var(--paper);border-radius:var(--r-sm);font:inherit;font-weight:600;cursor:pointer}
  .filters-inner>*:not(.f-toggle):not(.fcount){display:none}
  .filters-inner.open>*:not(.f-toggle):not(.fcount){display:block}
  .filters-inner.open>.seg{display:flex}
  .grid-cards .card{flex-direction:row;min-height:128px}
  .grid-cards .card-media{width:38%;aspect-ratio:auto;flex:none}
  .grid-cards .card-media .illus{display:none}
  .grid-cards .card-body{padding:.75rem .9rem;gap:.3rem}
  .grid-cards .card-title{font-size:.95rem;-webkit-line-clamp:2}
  .grid-cards .card-specs{font-size:.8rem;gap:.2rem .7rem}
  .grid-cards .card-price{padding-top:.4rem;font-size:1.2rem}
}

/* sunset to sundown: the photo never moves; its light slowly changes from golden hour to dusk (36 s, eases back) */
.hero-light,.hero-dusk{position:absolute;inset:0;pointer-events:none}
.hero-light{z-index:1;mix-blend-mode:screen;opacity:1;background:radial-gradient(38% 46% at 87% 31%,rgba(255,176,70,.85) 0%,rgba(255,120,40,.45) 38%,rgba(255,90,30,0) 72%);background-size:100% 100%;animation:sunGlow 14s ease-in-out infinite alternate}
.hero-dusk{z-index:1;mix-blend-mode:multiply;background:linear-gradient(180deg,#2a2f6b 0%,#5a3a78 38%,#b5527a 62%,#e98a4b 100%);opacity:0;animation:duskFall 14s ease-in-out infinite alternate}
@keyframes sunGlow{0%{opacity:.95;transform:translateY(0)}45%{opacity:1;transform:translateY(9%)}100%{opacity:0;transform:translateY(22%)}}
@keyframes duskFall{0%{opacity:0}18%{opacity:.3}50%{opacity:.7}100%{opacity:.9}}
@media (prefers-reduced-motion:reduce){.hero-light{animation:none;opacity:.8}.hero-dusk{animation:none;opacity:0}}

/* team photos: consistent framing, face kept in frame, gentle clarity */
.member img{object-position:center 18%;image-rendering:auto}
.member.lead img{object-position:center 30%}
.bio img{object-position:center 15%}
.member img,.bio img{filter:contrast(1.03) saturate(.98)}

/* team: five equal portraits in one row, captions below the photo so faces stay clear */
.team{grid-template-columns:repeat(5,1fr);grid-template-rows:auto;gap:clamp(.8rem,1.6vw,1.4rem);align-items:stretch}
.member{display:flex;flex-direction:column;background:var(--ink-2);border-radius:var(--r-md)}
.member.lead{grid-row:auto;grid-column:auto}
.member img,.member.lead img{aspect-ratio:3/4;height:auto;width:100%;object-fit:cover;object-position:50% 16%}
.member.lead img{object-position:42% 14%}
.member figcaption{position:static;background:none;padding:.9rem 1rem 1.1rem;display:flex;flex-direction:column;gap:.35rem}
.member figcaption b{font-size:1.05rem}
.member figcaption span{line-height:1.35}
@media (max-width:1100px){.team{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.team{grid-template-columns:repeat(2,1fr)}.member.lead{grid-column:auto}.member:last-child:nth-child(odd){grid-column:1/-1}.member:last-child:nth-child(odd) img{aspect-ratio:4/3;object-position:50% 12%}}

/* v9: team on phone (Ylenia first and larger), consistent portrait framing */
.member img,.member.lead img{object-position:50% 20%}
@media (max-width:640px){
  .member.lead{grid-column:1/-1}
  .member.lead img{aspect-ratio:4/5;object-position:50% 18%}
  .member:last-child:nth-child(odd){grid-column:auto}
  .member:last-child:nth-child(odd) img{aspect-ratio:3/4;object-position:50% 20%}
}
/* v9: LinkedIn follow band above the footer */
.li-band{background:linear-gradient(135deg,#14110c,#2a2114);color:var(--text-inv);padding:clamp(1.6rem,3.5vw,2.4rem) 0;border-top:1px solid var(--line-inv)}
.li-band-in{display:flex;align-items:center;gap:1.4rem;justify-content:space-between;flex-wrap:wrap}
.li-badge{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:rgba(201,162,75,.14);color:var(--gold-2);flex:none}
.li-copy{flex:1 1 320px;min-width:0}
.li-copy h2{font-size:clamp(1.35rem,2.4vw,1.9rem);margin:0 0 .25rem;color:var(--text-inv)}
.li-copy p{margin:0;color:var(--text-inv-2);font-size:var(--text-sm)}
@media (max-width:640px){.li-band-in{flex-direction:column;align-items:flex-start;gap:1rem}.li-band .btn{width:100%;justify-content:center}}
