/* ============ KoorPlus Design System ============ */
:root{
  --navy-950:#0A1420; --navy-900:#0E1B2E; --navy-800:#13253C; --navy-700:#1B3450; --navy-600:#27476B;
  --orange:#F26B1D; --orange-600:#DE5A0E; --orange-700:#C24E0B; --orange-soft:#FFF0E5; --orange-ring:rgba(242,107,29,.25);
  --cream:#FAF4EC; --cream-2:#F4EBDE; --card:#FFFFFF; --ink:#13202E; --muted:#5D6B7A; --muted-2:#8B98A5;
  --line:#E8E0D3; --line-2:#E3E8EE;
  --green:#1F9D55; --green-soft:#E6F6EC; --amber:#E8930C; --amber-soft:#FDF3E0; --red:#D64545; --red-soft:#FBEAEA; --blue:#2563EB; --blue-soft:#E8EFFD;
  --r-sm:8px; --r:12px; --r-lg:16px; --r-xl:22px;
  --sh-sm:0 1px 2px rgba(14,27,46,.06),0 2px 8px rgba(14,27,46,.06);
  --sh:0 4px 14px rgba(14,27,46,.08),0 10px 34px rgba(14,27,46,.10);
  --sh-lg:0 12px 40px rgba(14,27,46,.18);
  --font:'Plus Jakarta Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-ar:'Noto Sans Arabic','Plus Jakarta Sans',system-ui,sans-serif;
  --header-h:70px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--font);color:var(--ink);background:var(--cream);font-size:var(--fs-15);line-height:1.65;-webkit-font-smoothing:antialiased}
html[lang="ps"] body,html[lang="fa"] body{font-family:var(--font-ar)}
html[lang="ps"] *,html[lang="fa"] *{letter-spacing:0!important}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
input,select,textarea{font-family:inherit;font-size:var(--fs-14);color:var(--ink)}
h1,h2,h3,h4{line-height:1.3;color:var(--navy-900)}
/* Redesigned (Tailwind) pages: element styles must not fight the utility cascade.
   :where() keeps this at element specificity so any .text-* utility still wins. */
:where(.pm2) h1,:where(.pm2) h2,:where(.pm2) h3,:where(.pm2) h4{color:inherit;line-height:inherit}
html[lang="ps"] h1,html[lang="ps"] h2,html[lang="ps"] h3,html[lang="ps"] h4,html[lang="fa"] h1,html[lang="fa"] h2,html[lang="fa"] h3,html[lang="fa"] h4{font-family:var(--font-ar)}
.container{max-width:1220px;margin-inline:auto;padding-inline:22px}
.num{direction:ltr;unicode-bidi:isolate}
.muted{color:var(--muted)} .small{font-size:var(--fs-13)} .tiny{font-size:var(--fs-12)}
.flex{display:flex;align-items:center;gap:10px} .sp{flex:1}
.hide{display:none!important}
.ic{width:var(--ic-md);height:var(--ic-md);stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ic-s{width:var(--ic-sm);height:var(--ic-sm)}
/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--orange);color:#fff;font-weight:700;font-size:var(--fs-14);height:var(--h-lg);padding-inline:20px;border-radius:var(--r-sm);transition:.2s;border:1px solid transparent;white-space:nowrap}
.btn:hover{background:var(--orange-600);transform:translateY(-1px);box-shadow:0 6px 18px var(--orange-ring)}
.btn.sm{height:var(--h-md);padding-inline:14px;font-size:var(--fs-13);border-radius:var(--r-sm)}
.btn.xs{height:var(--h-xs);padding-inline:10px;font-size:var(--fs-12);border-radius:var(--r-xs)}
.btn.lg{height:var(--h-xl);padding-inline:30px;font-size:var(--fs-15)}
.btn.outline{background:transparent;color:var(--navy-900);border-color:var(--navy-900)}
.btn.outline:hover{background:var(--navy-900);color:#fff}
.btn.outline-w{background:transparent;color:#fff;border-color:rgba(255,255,255,.45)}
.btn.outline-w:hover{background:#fff;color:var(--navy-900)}
.btn.ghost{background:var(--orange-soft);color:var(--orange-700)}
.btn.ghost:hover{background:#ffe2cd}
.btn.navy{background:var(--navy-900)} .btn.navy:hover{background:var(--navy-800)}
.btn.light{background:#fff;color:var(--navy-900)} .btn.light:hover{background:#f1ede6}
.btn.danger{background:var(--red)} .btn.danger:hover{background:#b93a3a}
.btn.success{background:var(--green)} .btn.success:hover{background:#188246}
.btn.disabled,.btn:disabled{opacity:.5;pointer-events:none}
.btn.block{width:100%}
.icon-btn{width:40px;height:40px;border-radius:var(--r-md);display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);color:#fff;transition:.2s;position:relative}
.icon-btn:hover{background:var(--orange);color:#fff}
.icon-btn.lt{background:var(--cream-2);color:var(--navy-900)} .icon-btn.lt:hover{background:var(--orange);color:#fff}
.icon-btn .dot{position:absolute;top:6px;inset-inline-end:6px;min-width:var(--ic-sm);height:var(--ic-sm);border-radius:var(--r-sm);background:var(--orange);color:#fff;font-size:var(--fs-10);font-weight:800;display:flex;align-items:center;justify-content:center;padding-inline:3px}
/* ---------- badges ---------- */
.badge{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-11);font-weight:800;letter-spacing:.4px;text-transform:uppercase;padding:4px 10px;border-radius:var(--r-xs);background:var(--orange);color:#fff}
.badge.navy{background:var(--navy-900)} .badge.green{background:var(--green)} .badge.amber{background:var(--amber)} .badge.red{background:var(--red)} .badge.blue{background:var(--blue)} .badge.line{background:#fff;color:var(--navy-900);border:1px solid var(--line)}
.badge.soft-o{background:var(--orange-soft);color:var(--orange-700)} .badge.soft-g{background:var(--green-soft);color:var(--green)} .badge.soft-r{background:var(--red-soft);color:var(--red)} .badge.soft-a{background:var(--amber-soft);color:var(--amber)} .badge.soft-b{background:var(--blue-soft);color:var(--blue)}
.stars{color:#F5A623;font-size:var(--fs-13);letter-spacing:1px;direction:ltr}
/* ---------- topbar & header ---------- */
.topbar{background:var(--navy-950);color:#B9C6D4;font-size:var(--fs-12);padding:7px 0}
.topbar .container{display:flex;gap:16px;align-items:center}
.topbar a:hover{color:#fff}
.topbar .lang-sw{display:flex;gap:4px;margin-inline-start:auto}
.lang-btn{padding:3px 9px;border-radius:var(--r-xs);font-size:var(--fs-12);font-weight:700;color:#B9C6D4}
.lang-btn.active{background:var(--orange);color:#fff}
.header{background:var(--navy-900);position:sticky;top:0;z-index:100;box-shadow:0 2px 18px rgba(4,10,18,.35)}
.header .container{display:flex;align-items:center;gap:24px;height:var(--header-h)}
.logo{display:flex;align-items:center;gap:10px;color:#fff}
.logo .mark{width:40px;height:40px;border-radius:var(--r-md);background:linear-gradient(135deg,var(--orange),#d8560f);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px var(--orange-ring)}
.logo .word{font-size:var(--fs-18);font-weight:800;letter-spacing:.3px}
.logo .word em{color:var(--orange);font-style:normal}
.logo .tag{display:block;font-size:var(--fs-10);color:#93A5B8;letter-spacing:1.6px;text-transform:uppercase;font-weight:600}
.nav{display:flex;gap:2px;margin-inline-start:8px}
.nav a{color:#CBD6E2;font-size:var(--fs-13);font-weight:700;padding:9px 10px;border-radius:var(--r-sm);letter-spacing:.3px;transition:.15s;white-space:nowrap}
.nav a:hover{color:#fff;background:rgba(255,255,255,.07)}
.nav a.active{color:var(--orange)}
.hdr-actions{display:flex;align-items:center;gap:8px;margin-inline-start:auto}
.burger{display:none}
.mobile-menu{position:fixed;inset:0;background:var(--navy-950);z-index:200;padding:24px;overflow:auto;transform:translateX(100%);transition:.3s}
html[dir="rtl"] .mobile-menu{transform:translateX(-100%)}
.mobile-menu.open{transform:translateX(0)!important}
.mobile-menu a{display:block;color:#E5EDF5;font-size:var(--fs-16);font-weight:700;padding:12px 4px;border-bottom:1px solid rgba(255,255,255,.07)}
/* ---------- hero ---------- */
.hero{background:var(--navy-900);position:relative;overflow:hidden;color:#fff}
.hero .bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.55}
.hero .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,27,46,.86),rgba(14,27,46,.55) 45%,rgba(14,27,46,.92))}
.hero .container{position:relative;padding-top:74px;padding-bottom:64px}
.hero h1{color:#fff;font-size:clamp(28px,4.4vw,46px);font-weight:800;max-width:760px}
.hero h1 span{color:var(--orange)}
.hero .sub{color:#C4D1DE;max-width:640px;margin-top:12px;font-size:var(--fs-16)}
.hero-tabs{display:flex;gap:8px;margin:26px 0 0;flex-wrap:wrap}
.hero-tab{padding:9px 18px;border-radius:var(--r-sm);background:rgba(255,255,255,.09);color:#D7E1EB;font-weight:700;font-size:var(--fs-13);transition:.15s}
.hero-tab.active{background:var(--orange);color:#fff}
.f-group{display:flex;flex-direction:column;gap:6px}
.f-group label{font-size:var(--fs-11);font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}
.f-group input,.f-group select,.f-group textarea{border:1.5px solid var(--line-2);border-radius:var(--r-md);padding:11px 13px;background:#FBFCFE;outline:none;transition:.15s;width:100%}
.f-group input:focus,.f-group select:focus,.f-group textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-ring)}
.hero-stats{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap}
.hero-stat{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(6px);border-radius:var(--r);padding:12px 22px;display:flex;align-items:center;gap:12px}
.hero-stat b{font-size:var(--fs-20);color:#fff} .hero-stat span{font-size:var(--fs-12);color:#AEBDCF;display:block}
.hero-stat .av{width:38px;height:38px;border-radius:50%;background:var(--orange);display:flex;align-items:center;justify-content:center;font-weight:800}
/* ---------- sections ---------- */
.section{padding:74px 0}
.section.cream{background:var(--cream)} .section.white{background:#fff} .section.navy{background:var(--navy-900);color:#DCE6F0} .section.navy2{background:var(--navy-800);color:#DCE6F0}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:34px;flex-wrap:wrap}
.sec-label{color:var(--orange);font-size:var(--fs-12);font-weight:800;letter-spacing:1.8px;text-transform:uppercase;display:block;margin-bottom:8px}
.sec-head h2{font-size:clamp(23px,3vw,32px);font-weight:800}
.section.navy .sec-head h2,.section.navy2 .sec-head h2{color:#fff}
.sec-head h2 span{color:var(--orange)}
.grid{display:grid;gap:24px}
.g2{grid-template-columns:repeat(2,1fr)} .g3{grid-template-columns:repeat(3,1fr)} .g4{grid-template-columns:repeat(4,1fr)}
/* ---------- property card ---------- */
.pcard{background:var(--card);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-sm);transition:.25s;position:relative;display:flex;flex-direction:column;border:1px solid rgba(14,27,46,.05)}
.pcard:hover{transform:translateY(-5px);box-shadow:var(--sh)}
.pcard .ph{position:relative;aspect-ratio:var(--ar-card);overflow:hidden}
.pcard .ph img{width:100%;height:100%;object-fit:cover;transition:.5s}
.pcard:hover .ph img{transform:scale(1.06)}
.pcard .ph .b-top{position:absolute;top:12px;inset-inline-start:12px;display:flex;gap:6px;flex-wrap:wrap}
.pcard .ph .b-acts{position:absolute;top:12px;inset-inline-end:12px;display:flex;flex-direction:column;gap:6px}
.pcard .ph .act{width:34px;height:34px;border-radius:var(--r-md);background:rgba(14,27,46,.55);color:#fff;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);transition:.15s}
.pcard .ph .act:hover,.pcard .ph .act.on{background:var(--orange)}
.pcard .ph .price{position:absolute;bottom:12px;inset-inline-start:12px;background:var(--navy-900);color:#fff;padding:6px 13px;border-radius:var(--r-sm);font-weight:800;font-size:var(--fs-15)}
.pcard .ph .price i{font-style:normal;color:var(--orange)}
.pcard .bd{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.pcard .bd h3{font-size:var(--fs-16);font-weight:700}
.pcard .bd h3 a:hover{color:var(--orange)}
.pcard .loc{color:var(--muted);font-size:var(--fs-13);display:flex;align-items:center;gap:6px}
.pcard .meta{display:flex;border-top:1px solid var(--line-2);padding-top:11px;margin-top:auto;color:var(--muted);font-size:var(--fs-12);font-weight:600}
.pcard .meta div{flex:1;display:flex;align-items:center;gap:6px;justify-content:center}
.pcard .meta div+div{border-inline-start:1px solid var(--line-2)}
.pcard .ft{display:flex;align-items:center;gap:8px;padding:0 18px 16px}
.pcard .ft .ag{width:26px;height:26px;border-radius:50%;background:var(--navy-800);color:#fff;font-size:var(--fs-10);font-weight:800;display:flex;align-items:center;justify-content:center}
/* ---------- agent card ---------- */
.acard{background:#fff;border-radius:var(--r-lg);padding:22px;box-shadow:var(--sh-sm);border:1px solid rgba(14,27,46,.05);transition:.25s;display:flex;flex-direction:column;gap:10px}
.acard:hover{transform:translateY(-4px);box-shadow:var(--sh)}
.acard .hd{display:flex;gap:12px;align-items:center}
.acard .logo-c{width:56px;height:56px;border-radius:var(--r-m2);background:var(--navy-900);color:var(--orange);font-weight:800;font-size:var(--fs-18);display:flex;align-items:center;justify-content:center;flex:none}
.acard h3{font-size:var(--fs-16)}
.acard .meta{color:var(--muted);font-size:var(--fs-13)}
.acard .nums{display:flex;gap:8px;flex-wrap:wrap}
.acard .chip{background:var(--cream);border-radius:var(--r-sm);padding:6px 10px;font-size:var(--fs-12);font-weight:700;color:var(--navy-800)}
.acard .btns{display:flex;gap:8px;margin-top:auto}
/* ---------- project card ---------- */
.prjcard{border-radius:var(--r-lg);overflow:hidden;position:relative;height:320px;box-shadow:var(--sh-sm);transition:.25s}
.prjcard:hover{transform:translateY(-5px);box-shadow:var(--sh)}
.prjcard img{width:100%;height:100%;object-fit:cover}
.prjcard .ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,20,32,.05) 30%,rgba(10,20,32,.9))}
.prjcard .ct{position:absolute;bottom:0;inset-inline:0;padding:20px;color:#fff}
.prjcard .ct h3{color:#fff;font-size:var(--fs-18)}
.prjcard .ct .loc{color:#C3D0DD;font-size:var(--fs-13);display:flex;gap:6px;align-items:center;margin-top:4px}
.prjcard .ct .pr{color:var(--orange);font-weight:800;margin-top:6px}
/* ---------- category cards ---------- */
/* ---------- feature band ---------- */
.band{position:relative;border-radius:var(--r-xl);overflow:hidden;min-height:380px;display:flex;align-items:center}
.band .bg{position:absolute;inset:0;background-size:cover;background-position:center}
.band .bg::after{content:"";position:absolute;inset:0;background:rgba(10,20,32,.55)}
.band .panel{position:relative;background:rgba(14,27,46,.92);backdrop-filter:blur(8px);border-radius:var(--r-lg);padding:30px;color:#fff;max-width:860px;margin:40px auto;width:calc(100% - 80px)}
.band .feats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px}
.band .feat{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:var(--r);padding:16px;text-align:center;transition:.2s}
.band .feat:hover{background:var(--orange);border-color:var(--orange)}
.band .feat .ic{width:26px;height:26px;margin:0 auto 8px}
.band .feat b{font-size:var(--fs-13);display:block} .band .feat span{font-size:var(--fs-11);color:#B9C6D4}
.band .feat:hover span{color:#fff}
/* ---------- team ---------- */
/* ---------- testimonials ---------- */
.revcard{background:#fff;border-radius:var(--r-lg);padding:24px;box-shadow:var(--sh-sm);position:relative;border:1px solid rgba(14,27,46,.05)}
.revcard .q{position:absolute;top:18px;inset-inline-end:20px;color:var(--orange);opacity:.25}
.revcard .q .ic{width:34px;height:34px}
.revcard p{font-size:var(--fs-14);color:var(--muted);margin:10px 0 16px}
.revcard .who{display:flex;gap:10px;align-items:center}
.revcard .who .av{width:40px;height:40px;border-radius:50%;background:var(--navy-800);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:var(--fs-13)}
/* ---------- news card ---------- */
.ncard{background:#fff;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-sm);transition:.25s;display:flex;flex-direction:column}
.ncard:hover{transform:translateY(-4px);box-shadow:var(--sh)}
.ncard .ph{aspect-ratio:var(--ar-card);overflow:hidden}
.ncard .ph img{width:100%;height:100%;object-fit:cover;transition:.4s}
.ncard:hover .ph img{transform:scale(1.05)}
.ncard .bd{padding:18px;display:flex;flex-direction:column;gap:8px;flex:1}
.ncard h3{font-size:var(--fs-15)} .ncard h3 a:hover{color:var(--orange)}
/* ---------- contact strip ---------- */
.cstrip{background:linear-gradient(115deg,#E0622C,#CE521E 55%,#E0622C);color:#fff;border-radius:var(--r-lg);display:flex;align-items:center;gap:32px;padding:36px 48px;margin-top:-46px;position:relative;z-index:5;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.28)}
.cstrip::before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 42%,rgba(255,255,255,.18) 50%,transparent 58%);transform:translateX(-130%);animation:csShine 6.5s ease-in-out infinite;pointer-events:none}
@keyframes csShine{0%,50%{transform:translateX(-130%)}88%,100%{transform:translateX(130%)}}
.cs-item{flex:1;min-width:0;display:flex;gap:16px;align-items:center;position:relative;z-index:1;transition:transform .3s}
.cs-item:hover{transform:translateY(-3px)}
.cs-ic{width:58px;height:58px;flex:none;border-radius:50%;background:#fff;color:var(--orange);display:flex;align-items:center;justify-content:center;position:relative}
.cs-ic .ic{width:var(--ic-xl);height:var(--ic-xl)}
.cs-ic::after{content:"";position:absolute;inset:-8px;border-radius:50%;border:1.5px solid rgba(255,255,255,.55);animation:csRing 2.8s ease-out infinite}
@keyframes csRing{0%{transform:scale(.9);opacity:.9}70%{transform:scale(1.15);opacity:0}100%{transform:scale(1.15);opacity:0}}
.cs-item:hover .cs-ic{animation:csPop .5s}
@keyframes csPop{40%{transform:scale(1.12) rotate(-8deg)}}
.cs-item>div>b{display:block;font-size:var(--fs-14);font-weight:600;color:rgba(255,255,255,.88);letter-spacing:.2px;margin-bottom:5px}
.cs-item>div>span{font-size:var(--fs-20);font-weight:700;color:#fff;line-height:1.5;letter-spacing:.1px}
.footer .cstrip{margin-top:0;margin-bottom:54px;box-shadow:0 26px 70px rgba(0,0,0,.45)}
/* ---------- footer ---------- */
.footer{background:var(--navy-950);color:#A7B6C6;padding:64px 0 0;font-size:var(--fs-14)}
.footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1.2fr;gap:32px}
.footer h4{color:#fff;font-size:var(--fs-14);margin-bottom:16px;letter-spacing:.4px}
.footer a{display:block;padding:4px 0;color:#A7B6C6}
.footer a:hover{color:var(--orange)}
.footer .news-form{display:flex;gap:0;margin-top:14px;border-radius:var(--r-md);overflow:hidden;border:1px solid rgba(255,255,255,.15)}
.footer .news-form input{flex:1;background:rgba(255,255,255,.06);border:none;padding:11px 14px;color:#fff;outline:none}
.footer .news-form button{background:var(--orange);color:#fff;padding:0 16px;font-weight:700}
.footer .gal{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px}
.footer .gal img{aspect-ratio:4/3;width:100%;object-fit:cover;border-radius:var(--r-xs)}
.footer .bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:48px;padding:18px 0;display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:var(--fs-13)}
/* ---------- page head (inner pages) ---------- */
.pagehead{background:var(--navy-900);color:#fff;padding:52px 0 46px;position:relative;overflow:hidden}
.pagehead::after{content:"";position:absolute;inset:0;background:radial-gradient(600px 200px at 85% 0%,rgba(242,107,29,.18),transparent)}
.pagehead h1{color:#fff;font-size:clamp(24px,3vw,34px);position:relative}
.pagehead .crumbs{font-size:var(--fs-13);color:#93A5B8;margin-top:8px;display:flex;gap:8px;align-items:center;position:relative}
.pagehead .crumbs a:hover{color:var(--orange)}
.pagehead .crumbs .sep{color:var(--orange)}
/* ---------- filters & lists ---------- */
.listing-wrap{display:grid;grid-template-columns:minmax(min(100%,280px),1fr) 1fr;gap:24px;align-items:start}
.filter-box{background:#fff;border-radius:var(--r-lg);padding:24px;box-shadow:var(--sh-sm);position:sticky;top:calc(var(--header-h) + 16px)}
.filter-box h3{font-size:var(--fs-15);margin-bottom:14px;display:flex;align-items:center;gap:8px}
.filter-box .f-group{margin-bottom:12px}
.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:18px;flex-wrap:wrap;background:#fff;padding:12px 16px;border-radius:var(--r);box-shadow:var(--sh-sm)}
.toolbar .count{font-size:var(--fs-13);color:var(--muted);font-weight:600}
.pills{display:flex;gap:8px;flex-wrap:wrap}
.pill{padding:7px 14px;border-radius:var(--r-sm);background:#fff;border:1.5px solid var(--line-2);font-size:var(--fs-13);font-weight:700;color:var(--muted);transition:.15s}
.pill:hover{border-color:var(--orange);color:var(--orange)}
.pill.active{background:var(--orange);border-color:var(--orange);color:#fff}
.pager{display:flex;gap:6px;justify-content:center;margin-top:30px}
.pager button{min-width:38px;height:38px;border-radius:var(--r-md);background:#fff;border:1.5px solid var(--line-2);font-weight:700;font-size:var(--fs-13);color:var(--muted)}
.pager button.active{background:var(--orange);border-color:var(--orange);color:#fff}
/* ---------- detail pages ---------- */
.detail-grid{display:grid;grid-template-columns:1fr 360px;gap:24px;align-items:start}
.gallery{display:grid;grid-template-columns:2fr 1fr;gap:10px;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:var(--ar-media)}
.gallery .main{height:100%}
.gallery .side{display:grid;gap:10px}
.gallery img{width:100%;height:100%;object-fit:cover;cursor:pointer;transition:.3s}
.gallery img:hover{opacity:.9}
.dcard{background:#fff;border-radius:var(--r-lg);padding:24px;box-shadow:var(--sh-sm);margin-bottom:20px}
.dcard h2{font-size:var(--fs-18);margin-bottom:14px}
.amen{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.amen div{display:flex;gap:8px;align-items:center;font-size:var(--fs-13);font-weight:600;color:var(--navy-800)}
.amen .ic{color:var(--orange)}
.side-card{background:#fff;border-radius:var(--r-lg);padding:24px;box-shadow:var(--sh-sm);margin-bottom:18px;border:1px solid rgba(14,27,46,.05)}
.tabs{display:flex;gap:4px;border-bottom:2px solid var(--line-2);margin-bottom:20px;overflow-x:auto}
.tabs button{padding:11px 18px;font-weight:700;font-size:var(--fs-14);color:var(--muted);border-bottom:2.5px solid transparent;margin-bottom:-2px;white-space:nowrap}
.tabs button.active{color:var(--orange);border-color:var(--orange)}
/* ---------- tables ---------- */
.tbl-wrap{background:#fff;border-radius:var(--r-lg);box-shadow:var(--sh-sm);overflow:auto}
table.tbl{width:100%;border-collapse:collapse;font-size:var(--fs-13);min-width:700px}
.tbl th{background:var(--navy-900);color:#fff;text-align:start;padding:12px 16px;font-size:var(--fs-12);letter-spacing:.5px;text-transform:uppercase;white-space:nowrap}
.tbl td{padding:12px 16px;border-bottom:1px solid var(--line-2);vertical-align:middle}
.tbl tr:last-child td{border-bottom:none}
.tbl tbody tr:hover{background:#FBF8F3}
.tbl .thumb{width:52px;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-sm)}
.status{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-11);font-weight:800;padding:4px 10px;border-radius:var(--r-xl);text-transform:uppercase;letter-spacing:.4px}
.status::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
/* ---------- dashboard ---------- */
.dash{display:flex;min-height:calc(100vh - var(--header-h));background:var(--cream)}
.dash-side{width:280px;background:var(--navy-900);color:#C6D2DF;flex:none;display:flex;flex-direction:column;position:sticky;top:var(--header-h);height:calc(100vh - var(--header-h));overflow-y:auto}
.dash-side .me{padding:22px 20px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;gap:12px;align-items:center}
.dash-side .me .av{width:48px;height:48px;border-radius:var(--r-m2);background:var(--orange);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:var(--fs-16);flex:none;overflow:hidden}
.dash-side .me .av img{width:100%;height:100%;object-fit:cover}
.dash-side .me b{color:#fff;font-size:var(--fs-14);display:block}
.dash-side .me span{display:block;font-size:var(--fs-11);color:#8FA1B4;line-height:1.5;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dash-side nav{padding:14px 12px;flex:1}
.dash-side nav .grp{font-size:var(--fs-10);letter-spacing:1.4px;text-transform:uppercase;color:#6E8095;padding:12px 12px 6px;font-weight:800}
.dash-side nav a{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:var(--r-md);font-size:var(--fs-13);font-weight:600;color:#C6D2DF;transition:.13s}
.dash-side nav a:hover{background:rgba(255,255,255,.07);color:#fff}
.dash-side nav a.active{background:var(--orange);color:#fff}
.dash-side nav a .n{margin-inline-start:auto;background:rgba(255,255,255,.14);font-size:var(--fs-11);padding:2px 8px;border-radius:var(--r-md);font-weight:800}
.dash-side .cta{padding:16px}
.dash-main{flex:1;min-width:0;padding:26px 30px 60px}
.dash-top{display:flex;align-items:center;gap:12px;margin-bottom:24px;flex-wrap:wrap}
.dash-top h1{font-size:var(--fs-22)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}
.stat-card{background:#fff;border-radius:var(--r);padding:18px;box-shadow:var(--sh-sm);display:flex;gap:12px;align-items:center;border:1px solid rgba(14,27,46,.05)}
.stat-card .icb{width:46px;height:46px;border-radius:var(--r);display:flex;align-items:center;justify-content:center;flex:none}
.stat-card b{font-size:var(--fs-20);display:block;line-height:1.2}
.stat-card span{font-size:var(--fs-12);color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.5px}
.chart-card{background:#fff;border-radius:var(--r-lg);padding:22px;box-shadow:var(--sh-sm);margin-bottom:20px}
.chart-card h3{font-size:var(--fs-15);margin-bottom:16px}
.charts-2{display:grid;grid-template-columns:1.6fr 1fr;gap:20px}
/* ---------- modal / toast ---------- */
.modal-ov{position:fixed;inset:0;background:rgba(10,20,32,.62);backdrop-filter:blur(3px);z-index:300;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s}
.modal{background:#fff;border-radius:var(--r-lg);max-width:640px;width:100%;max-height:88vh;overflow:auto;animation:popIn .22s}
.modal.lg{max-width:900px}
.modal .m-hd{padding:18px 24px;border-bottom:1px solid var(--line-2);display:flex;align-items:center;gap:12px;position:sticky;top:0;background:#fff;z-index:2}
.modal .m-hd h3{font-size:var(--fs-16);flex:1}
.modal .m-bd{padding:24px}
.modal .m-ft{padding:16px 24px;border-top:1px solid var(--line-2);display:flex;gap:10px;justify-content:flex-end}
@keyframes fadeIn{from{opacity:0}} @keyframes popIn{from{opacity:0;transform:scale(.96) translateY(8px)}}
#toastRoot{position:fixed;bottom:22px;inset-inline-end:22px;z-index:400;display:flex;flex-direction:column;gap:10px}
.toast{background:var(--navy-900);color:#fff;border-radius:var(--r);padding:13px 18px;display:flex;gap:10px;align-items:center;box-shadow:var(--sh-lg);font-size:var(--fs-14);font-weight:600;animation:popIn .25s;max-width:360px;border-inline-start:4px solid var(--orange)}
.toast.success{border-color:var(--green)} .toast.error{border-color:var(--red)} .toast.info{border-color:var(--blue)}
/* ---------- compare tray ---------- */
#compareTray .tray{position:fixed;bottom:0;inset-inline:0;background:var(--navy-900);color:#fff;z-index:150;padding:12px 0;box-shadow:0 -8px 30px rgba(4,10,18,.4)}
/* ---------- pricing ---------- */
.price-card{background:#fff;border-radius:var(--r-xl);padding:30px;box-shadow:var(--sh-sm);border:2px solid transparent;position:relative;display:flex;flex-direction:column;gap:12px}
.price-card.pop{border-color:var(--orange);box-shadow:var(--sh)}
.price-card .pop-badge{position:absolute;top:-13px;inset-inline-start:26px}
.price-card h3{font-size:var(--fs-18)}
.price-card .pr{font-size:var(--fs-30);font-weight:800;color:var(--navy-900)}
.price-card .pr s{color:var(--muted-2);font-size:var(--fs-15);font-weight:600;margin-inline-start:8px}
.price-card ul{list-style:none;display:flex;flex-direction:column;gap:8px;font-size:var(--fs-13)}
.price-card ul li{display:flex;gap:8px;align-items:flex-start}
.price-card ul li .ic{color:var(--green);margin-top:2px}
.price-card ul li.no{color:var(--muted-2)} .price-card ul li.no .ic{color:var(--muted-2)}
.cmp-tbl{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-sm);font-size:var(--fs-13)}
.cmp-tbl th,.cmp-tbl td{padding:12px 16px;border-bottom:1px solid var(--line-2);text-align:center}
.cmp-tbl th:first-child,.cmp-tbl td:first-child{text-align:start;font-weight:600}
.cmp-tbl thead th{background:var(--navy-900);color:#fff}
.cmp-tbl thead th.hl{background:var(--orange)}
/* ---------- auth ---------- */
.auth-wrap{display:grid;grid-template-columns:1fr 1fr;min-height:calc(100vh - var(--header-h))}
.auth-side{background:var(--navy-900);color:#fff;padding:60px;display:flex;flex-direction:column;justify-content:center;background-size:cover;background-position:center;position:relative}
.auth-side::after{content:"";position:absolute;inset:0;background:rgba(14,27,46,.82)}
.auth-side>*{position:relative}
.auth-box{background:#fff;margin:40px auto;padding:38px;border-radius:var(--r-xl);box-shadow:var(--sh);max-width:520px;width:calc(100% - 40px)}
.role-pick{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.role-pick label{border:1.5px solid var(--line-2);border-radius:var(--r-md);padding:12px;display:flex;gap:10px;align-items:center;cursor:pointer;font-size:var(--fs-13);font-weight:700;transition:.15s}
.role-pick input{accent-color:var(--orange)}
.role-pick label.sel{border-color:var(--orange);background:var(--orange-soft)}
/* ---------- misc ---------- */
.empty{background:#fff;border-radius:var(--r-lg);padding:56px 30px;text-align:center;box-shadow:var(--sh-sm);color:var(--muted)}
.empty .ic{width:44px;height:44px;margin:0 auto 12px;color:var(--muted-2)}
.empty h3{margin-bottom:6px}
@keyframes sk{to{background-position:-200% 0}}
.map-box{border-radius:var(--r);overflow:hidden;aspect-ratio:var(--ar-media);min-width:0;position:relative;background:var(--navy-800)}
.msg-layout{display:grid;grid-template-columns:300px 1fr;gap:20px;background:#fff;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-sm);min-height:520px}
.msg-list{border-inline-end:1px solid var(--line-2);overflow:auto;max-height:640px}
.msg-item{padding:14px 16px;border-bottom:1px solid var(--line-2);cursor:pointer;display:flex;gap:10px}
.msg-item:hover,.msg-item.active{background:var(--cream)}
.msg-item.unread{background:var(--orange-soft)}
.msg-body{padding:22px;overflow:auto;max-height:640px}
.msg-bubble{background:var(--cream);border-radius:var(--r);padding:12px 16px;margin-bottom:10px;max-width:75%;font-size:var(--fs-14)}
.msg-bubble.mine{background:var(--orange-soft);margin-inline-start:auto}
.steps{display:flex;gap:0;margin:20px 0}
.steps .st{flex:1;text-align:center;position:relative;font-size:var(--fs-12);font-weight:700;color:var(--muted-2)}
.steps .st::before{content:"";width:26px;height:26px;border-radius:50%;background:var(--line-2);display:block;margin:0 auto 8px;position:relative;z-index:1}
.steps .st::after{content:"";position:absolute;top:13px;inset-inline-start:-50%;width:100%;height:2px;background:var(--line-2)}
.steps .st:first-child::after{display:none}
.steps .st.done{color:var(--green)} .steps .st.done::before{background:var(--green)} .steps .st.done::after{background:var(--green)}
.steps .st.now{color:var(--orange)} .steps .st.now::before{background:var(--orange);box-shadow:0 0 0 5px var(--orange-ring)}
.notif-pop{position:absolute;top:calc(100% + 10px);inset-inline-end:0;width:340px;background:#fff;border-radius:var(--r-lg);box-shadow:var(--sh-lg);color:var(--ink);z-index:120;overflow:hidden}
.notif-pop .ni{padding:12px 16px;border-bottom:1px solid var(--line-2);font-size:var(--fs-13);display:flex;gap:10px}
.notif-pop .ni.unread{background:var(--orange-soft)}
.search-ov{position:fixed;inset:0;background:rgba(10,20,32,.7);z-index:250;padding:8vh 20px 20px;overflow:auto;backdrop-filter:blur(4px)}
.search-box{max-width:760px;margin:0 auto;background:#fff;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-lg)}
.search-box .inp{display:flex;gap:12px;padding:18px 22px;border-bottom:1px solid var(--line-2)}
.search-box input{flex:1;border:none;outline:none;font-size:var(--fs-18)}
.search-res{max-height:60vh;overflow:auto;padding:10px}
.search-res .ri{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:var(--r-md)}
.search-res .ri:hover{background:var(--cream)}
.search-res .ri img{width:52px;height:40px;object-fit:cover;border-radius:var(--r-sm)}
.drop{position:relative}
.drop-menu{position:absolute;top:calc(100% + 8px);inset-inline-end:0;background:#fff;border-radius:var(--r);box-shadow:var(--sh-lg);min-width:200px;z-index:120;overflow:hidden;color:var(--ink)}
.drop-menu a,.drop-menu button{display:flex;gap:8px;align-items:center;width:100%;text-align:start;padding:11px 16px;font-size:var(--fs-13);font-weight:600}
.drop-menu a:hover,.drop-menu button:hover{background:var(--cream)}
.upload-zone{border:2px dashed var(--line);border-radius:var(--r);padding:26px;text-align:center;color:var(--muted);background:#FBF8F3;cursor:pointer;transition:.15s}
.upload-zone:hover{border-color:var(--orange);color:var(--orange)}
.kv{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px dashed var(--line-2);font-size:var(--fs-14)}
.kv b{font-weight:700}
/* ---------- responsive ---------- */
@media(max-width:1100px){.nav{display:none}.burger{display:inline-flex}.search-panel{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:repeat(2,1fr)}.g4{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(2,1fr)}.footer .cols{grid-template-columns:1fr 1fr}.listing-wrap{grid-template-columns:1fr}.filter-box{position:static}.detail-grid{grid-template-columns:1fr}.charts-2{grid-template-columns:1fr}.auth-wrap{grid-template-columns:1fr}.auth-side{display:none}.msg-layout{grid-template-columns:1fr}.band .feats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}.search-panel{grid-template-columns:1fr}.cstrip{flex-direction:column;align-items:flex-start;gap:24px;padding:28px 26px}.stats-grid{grid-template-columns:1fr 1fr}.footer .cols{grid-template-columns:1fr}.gallery{grid-template-columns:1fr;height:auto}.gallery .main{height:260px}.dash{flex-direction:column}.dash-side{width:100%;position:static;height:auto}.dash-main{padding:18px}.amen{grid-template-columns:1fr 1fr}.topbar .contact-info{display:none}.hero .container{padding-top:48px}.band .panel{width:calc(100% - 30px)}}

/* ============ PROFESSIONAL HERO SLIDER (v2) ============ */
.hero-pro { position: relative; min-height: min(94vh, 900px); display: flex; align-items: center; padding: 110px 0 84px; overflow: hidden; }
.hero-pro #slides { position: absolute; inset: 0; z-index: 0; }
.hero-pro #slides .bg { position: absolute; inset: 0; background-size: cover; background-position: center; }
.hero-veil { position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(7,13,22,.62) 0%, rgba(7,13,22,.38) 42%, rgba(7,13,22,.72) 100%); }
.hero-inner { position: relative; z-index: 2; display: flex; flex-direction: column; align-items: center; text-align: center; width: 100%; }
.hero-inner h1 { color: #fff; font-size: clamp(34px, 5.2vw, 60px); font-weight: 800; letter-spacing: -.8px; line-height: 1.14; max-width: 900px; text-shadow: 0 3px 24px rgba(0,0,0,.35); }
.hero-inner h1 span { color: var(--orange); }
.hero-inner .sub { color: rgba(255,255,255,.82); max-width: 660px; margin-top: 14px; font-size: var(--fs-15); line-height: 1.7; }
/* tabs above the bar */
.hero-tabs { display: flex; gap: 10px; justify-content: center; margin-top: 36px; flex-wrap: wrap; }
.hero-tabs .htab { border: 0; cursor: pointer; border-radius: var(--r-md); padding: 11px 24px; font-weight: 700; font-size: var(--fs-14); background: rgba(255,255,255,.94); color: var(--ink); box-shadow: 0 4px 18px rgba(0,0,0,.18); transition: .2s; }
.hero-tabs .htab.active { background: var(--orange); color: #fff; }
.hero-tabs .htab:hover:not(.active) { background: #fff; }
/* glass search bar */
.hero-bar { margin-top: 18px; width: 100%; max-width: 1000px; display: flex; align-items: stretch; background: rgba(12,20,33,.58); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); border: 1px solid rgba(255,255,255,.16); border-radius: var(--r-m2); padding: 10px 12px; text-align: start; box-shadow: 0 18px 50px rgba(0,0,0,.35); }
.hb-field { flex: 1; min-width: 0; padding: 6px 18px; display: flex; flex-direction: column; gap: 8px; }
.hb-field label { font-size: var(--fs-11); font-weight: 700; letter-spacing: .4px; color: rgba(255,255,255,.62); }
.hb-field input, .hb-field select { background: transparent; border: 0; outline: none; color: #fff; font-weight: 600; font-size: var(--fs-14); padding: 0; width: 100%; }
.hb-field input::placeholder { color: rgba(255,255,255,.55); font-weight: 700; }
.hb-field select option { color: var(--ink); background: #fff; }
.hb-sep { width: 1px; background: rgba(255,255,255,.14); margin: 8px 0; }
.hb-more { display: flex; align-items: center; gap: 8px; border: 0; background: transparent; color: #fff; font-weight: 700; font-size: var(--fs-13); padding: 0 18px; cursor: pointer; white-space: nowrap; }
.hb-more:hover { color: var(--orange); }
.hb-search { border-radius: var(--r); padding: 0 26px; margin: 4px; height: auto; align-self: center; }
/* expanded filters */
.hero-more { margin-top: 12px; width: 100%; max-width: 1000px; display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 6px 10px; background: rgba(12,20,33,.66); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); border: 1px solid rgba(255,255,255,.14); border-radius: var(--r-m2); padding: 12px 10px; text-align: start; }
/* quick outline pills */
.hero-quick { display: flex; gap: 16px; justify-content: center; margin-top: 30px; flex-wrap: wrap; }
.hero-quick a { display: flex; align-items: center; gap: 8px; border: 1.6px solid rgba(255,255,255,.88); border-radius: 999px; padding: 12px 28px; color: #fff; font-weight: 700; font-size: var(--fs-14); background: rgba(255,255,255,.05); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); transition: .22s; }
.hero-quick a:hover { background: var(--orange); border-color: var(--orange); transform: translateY(-2px); box-shadow: 0 10px 26px rgba(242,107,29,.35); }
/* review card */
.hero-reviews { margin-top: 34px; display: flex; align-items: center; justify-content: center; gap: 32px; flex-wrap: wrap; background: rgba(12,20,33,.6); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); border: 1px solid rgba(255,255,255,.13); border-radius: var(--r-lg); padding: 18px 34px; }
.hr-group { display: flex; flex-direction: column; gap: 8px; align-items: flex-start; text-align: start; }
.hr-logo { display: flex; align-items: center; gap: 8px; color: #fff; font-weight: 800; font-size: var(--fs-15); }
.tp-star { width: 21px; height: 21px; border-radius: var(--r-xs); background: #00B67A; color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: var(--fs-12); }
.g-logo { width: 21px; height: 21px; border-radius: 50%; background: #fff; color: #4285F4; font-weight: 800; font-size: var(--fs-13); display: inline-flex; align-items: center; justify-content: center; }
.hr-row { display: flex; align-items: center; gap: 12px; }
.hr-avs { display: flex; }
.hr-avs img { width: 31px; height: 31px; border-radius: 50%; object-fit: cover; border: 2px solid #101a29; margin-inline-start: -9px; }
.hr-avs img:first-child { margin-inline-start: 0; }
.hr-stars .stars { color: var(--orange); font-size: var(--fs-13); letter-spacing: 1px; }
.hr-count { display: block; color: rgba(255,255,255,.66); font-size: var(--fs-12); margin-top: 3px; }
.hr-div { width: 1px; align-self: stretch; background: rgba(255,255,255,.16); }
/* stats */
.hero-stats2 { display: flex; gap: 56px; justify-content: center; margin-top: 30px; flex-wrap: wrap; }
.hero-stats2 .hs b { color: #fff; font-size: var(--fs-24); font-weight: 800; }
.hero-stats2 .hs span { display: block; color: rgba(255,255,255,.62); font-size: var(--fs-12); margin-top: 2px; }
/* arrows + dots */
.hero-dots { position: absolute; bottom: 22px; left: 50%; transform: translateX(-50%); z-index: 3; display: flex; gap: 8px; }
.hero-dots button { width: 9px; height: 9px; border-radius: 999px; border: 0; background: rgba(255,255,255,.35); cursor: pointer; transition: .3s; }
.hero-dots button.on { width: 28px; background: var(--orange); }
@media (max-width: 900px) {
  .hero-bar { flex-wrap: wrap; gap: 4px; }
  .hb-field { flex: 1 1 45%; }
  .hb-sep { display: none; }
  .hb-search { flex: 1 1 100%; padding: 12px; }
  .hb-more { flex: 1 1 100%; justify-content: center; padding: 8px; }
  .hero-stats2 { gap: 28px; }
  .hr-div { display: none; }
}

/* hero-pro overrides over legacy .hero rules */
.hero-pro #slides .bg::after { content: none; }
.hero-pro .hero-inner { padding-top: 0; padding-bottom: 0; }
.hero-pro .hero-tabs { margin: 36px 0 0; }

/* ============ CITIES / POPULAR LOCATIONS (v2) ============ */
.cities-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.cities-head { grid-column: span 2; display: flex; flex-direction: column; justify-content: center; padding-inline-end: 28px; }
.cities-head h2 { font-size: clamp(26px, 3.4vw, 42px); color: var(--ink); font-weight: 800; letter-spacing: -.6px; line-height: 1.16; margin-top: 12px; }
.cities-head .muted { margin-top: 14px; font-size: var(--fs-15); line-height: 1.8; }
.city-card { position: relative; display: block; border-radius: var(--r-lg); overflow: hidden; aspect-ratio: var(--ar-tile); box-shadow: 0 10px 30px rgba(10,20,35,.14); background: var(--navy-900); transition: transform .38s cubic-bezier(.2,.7,.3,1), box-shadow .38s; }
.city-card.wide { grid-column: span 2; aspect-ratio: 5/3; }
.city-card:hover { transform: translateY(-7px); box-shadow: 0 26px 56px rgba(10,20,35,.28); }
.city-card::after { content: ""; position: absolute; inset: 0; z-index: 2; background: linear-gradient(105deg, transparent 42%, rgba(255,255,255,.16) 50%, transparent 58%); transform: translateX(-130%); transition: transform .9s ease; pointer-events: none; }
.city-card:hover::after { transform: translateX(130%); }
.city-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2,.7,.3,1); }
.city-card:hover img { transform: scale(1.1); }
.cc-veil { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,16,26,.05) 38%, rgba(10,16,26,.82) 100%); }
.cc-badge { position: absolute; bottom: 92px; inset-inline-start: 20px; background: var(--orange); color: #fff; font-size: var(--fs-11); font-weight: 800; letter-spacing: .7px; padding: 7px 13px; border-radius: var(--r-sm); box-shadow: 0 6px 16px rgba(242,107,29,.4); transition: opacity .25s; }
.cc-badge::after { content: ""; position: absolute; top: 100%; inset-inline-start: 12px; border: 6px solid transparent; border-bottom: 0; border-top-color: var(--orange); }
.cc-info { position: absolute; inset-inline: 20px; bottom: 18px; transition: opacity .25s; }
.cc-info h3 { color: #fff; font-size: var(--fs-20); font-weight: 800; letter-spacing: -.2px; }
.cc-info span { color: rgba(255,255,255,.72); font-size: var(--fs-13); }
.cc-panel { position: absolute; inset-inline: 12px; bottom: 12px; background: var(--orange); border-radius: var(--r); padding: 15px 18px 14px; color: #fff; transform: translateY(calc(100% + 18px)); transition: transform .38s cubic-bezier(.2,.75,.3,1); }
.cc-pcount { font-size: var(--fs-11); font-weight: 800; letter-spacing: .8px; opacity: .92; }
.cc-panel b { display: block; font-size: var(--fs-18); font-weight: 800; margin-top: 3px; }
.cc-go { position: absolute; top: -24px; inset-inline-end: 14px; width: 48px; height: 48px; border-radius: 50%; background: #fff; color: var(--ink); display: flex; align-items: center; justify-content: center; box-shadow: 0 10px 24px rgba(0,0,0,.22); opacity: 0; transition: transform .3s, background .3s, color .3s, opacity .3s; }
.city-card:hover .cc-go, .city-card:focus-visible .cc-go { background: var(--navy-900); color: #fff; opacity: 1; }
.city-card:hover .cc-go .ic-s { transform: translateX(2px); }
.city-card:hover .cc-panel, .city-card.show .cc-panel, .city-card:focus-visible .cc-panel { transform: translateY(0); }
.city-card:hover .cc-badge, .city-card.show .cc-badge, .city-card:hover .cc-info, .city-card.show .cc-info { opacity: 0; }
@media (max-width: 1020px) {
  .cities-grid { grid-template-columns: 1fr 1fr; }
  .cities-head { grid-column: 1 / -1; padding-inline-end: 0; margin-bottom: 4px; }
  .city-card.wide { grid-column: span 2; }
}
@media (max-width: 620px) {
  .cities-grid { grid-template-columns: 1fr; }
  .city-card, .city-card.wide { grid-column: 1 / -1; aspect-ratio: var(--ar-media); }
}

/* ============ LATEST PROJECT (v2 — reference design) ============ */
.lp-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; flex-wrap: wrap; margin-bottom: 38px; }
.lp-head h2 { color: var(--ink); font-size: clamp(28px, 3.6vw, 44px); font-weight: 800; letter-spacing: -.7px; line-height: 1.16; margin-top: 12px; max-width: 620px; }
.lp-more { display: inline-flex; align-items: center; gap: 10px; background: var(--navy-900); color: #D8F164; border-radius: 999px; padding: 15px 28px; font-weight: 700; font-size: var(--fs-14); transition: .25s; box-shadow: 0 10px 26px rgba(14,27,46,.25); }
.lp-more:hover { background: var(--orange); color: #fff; transform: translateY(-2px); }
.lp-row { display: flex; gap: 24px; overflow-x: auto; direction: ltr; padding-bottom: 10px; scrollbar-width: none; -ms-overflow-style: none; cursor: grab; }
.lp-row::-webkit-scrollbar { display: none; }
.lp-row.dragging { cursor: grabbing; }
.lp-card { position: relative; display: block; border-radius: var(--r-lg); overflow: hidden; height: 452px; flex: 0 0 calc((100% - 72px) / 4); box-shadow: 0 12px 32px rgba(10,20,35,.14); transition: transform .38s cubic-bezier(.2,.7,.3,1), box-shadow .38s; background: var(--navy-900); }
.lp-card:hover { transform: translateY(-7px); box-shadow: 0 26px 56px rgba(10,20,35,.28); }
.lp-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2,.7,.3,1); }
.lp-card:hover img { transform: scale(1.09); }
.lp-veil { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,16,26,0) 45%, rgba(10,16,26,.86) 100%); }
.lp-bd { position: absolute; inset-inline: 0; bottom: 0; padding: 22px 24px; display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; }
.lp-bd h3 { color: #fff; font-size: var(--fs-22); font-weight: 800; letter-spacing: -.2px; }
.lp-go { flex: none; width: 54px; height: 54px; border-radius: 50%; background: #fff; color: var(--ink); display: flex; align-items: center; justify-content: center; box-shadow: 0 10px 24px rgba(0,0,0,.25); transition: .3s; }
.lp-card:hover .lp-go { background: var(--orange); color: #fff; }
.lp-card:hover .lp-go .ic-s { transform: translateX(2px); }
.lp-badges { position: absolute; top: 16px; inset-inline-start: 16px; display: flex; gap: 8px; z-index: 2; }
.lp-b { font-size: var(--fs-11); font-weight: 800; letter-spacing: .5px; padding: 6px 12px; border-radius: var(--r-sm); color: #fff; box-shadow: 0 6px 16px rgba(0,0,0,.25); }
.lp-b.sale { background: var(--orange); }
.lp-b.rent { background: var(--green); }
.lp-units { position: absolute; top: 16px; inset-inline-end: 16px; z-index: 2; display: flex; align-items: center; gap: 8px; background: rgba(12,20,33,.74); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); border: 1px solid rgba(242,107,29,.55); color: #FFD9C2; font-size: var(--fs-12); font-weight: 700; padding: 8px 13px; border-radius: 999px; animation: lpFloat 3.2s ease-in-out infinite; }
.lp-units i { width: 8px; height: 8px; border-radius: 50%; background: var(--orange); animation: lpPulse 1.6s infinite; }
@keyframes lpPulse { 0% { box-shadow: 0 0 0 0 rgba(242,107,29,.55); } 70% { box-shadow: 0 0 0 9px rgba(242,107,29,0); } 100% { box-shadow: 0 0 0 0 rgba(242,107,29,0); } }
@keyframes lpFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-4px); } }
.lp-tx { min-width: 0; }
.lp-bd h3 { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lp-dev, .lp-loc { display: flex; align-items: center; gap: 8px; color: rgba(255,255,255,.78); font-size: var(--fs-13); margin-top: 7px; }
.lp-dev .ic-s, .lp-loc .ic-s { color: var(--orange); flex: none; }
.lp-dots { display: flex; gap: 8px; justify-content: center; margin-top: 26px; }
.lp-dots button { width: 9px; height: 9px; border-radius: 999px; border: 0; background: rgba(14,27,46,.18); cursor: pointer; transition: .3s; padding: 0; }
.lp-dots button:hover { background: rgba(14,27,46,.4); }
.lp-dots button.on { width: 28px; background: var(--orange); }
@media (max-width: 1180px) { .lp-card { flex-basis: calc((100% - 48px) / 3); } }
@media (max-width: 900px) {
  .lp-card { flex-basis: calc((100% - 24px) / 2); height: 400px; }
  .lp-head { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 620px) { .lp-card { flex-basis: 100%; height: 380px; } }

/* ============ PROPERTY CARD v2 — modern & professional ============ */
.pcard { border-radius: var(--r-lg); border: 1px solid rgba(14,27,46,.07); box-shadow: 0 8px 24px rgba(10,20,35,.08); }
.pcard::before { content: ""; position: absolute; top: 0; inset-inline: 0; height: 3px; z-index: 4; background: linear-gradient(90deg, var(--orange), #ffb37e); transform: scaleX(0); transform-origin: var(--dir-x, left); transition: transform .35s ease; }
[dir="rtl"] .pcard::before { transform-origin: right; }
.pcard:hover { transform: translateY(-6px); box-shadow: 0 26px 54px rgba(10,20,35,.18); }
.pcard:hover::before { transform: scaleX(1); }

.pcard .ph::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,16,26,0) 52%, rgba(10,16,26,.6) 100%); pointer-events: none; }
.pcard .ph .b-top { top: 14px; inset-inline-start: 14px; z-index: 2; }
.pcard .ph .badge { -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); box-shadow: 0 6px 14px rgba(0,0,0,.2); border-radius: var(--r-sm); font-size: var(--fs-10); letter-spacing: .6px; text-transform: uppercase; padding: 6px 11px; }
.pcard .ph .b-acts { top: 14px; inset-inline-end: 14px; z-index: 2; opacity: 0; transform: translateY(-8px); transition: .28s; }
.pcard:hover .ph .b-acts, .pcard .ph .b-acts:focus-within { opacity: 1; transform: none; }
@media (hover: none) { .pcard .ph .b-acts { opacity: 1; transform: none; } }
.pcard .ph .act { width: 37px; height: 37px; border-radius: 50%; background: rgba(255,255,255,.92); color: var(--navy-900); box-shadow: 0 6px 16px rgba(0,0,0,.22); }
.pcard .ph .act:hover, .pcard .ph .act.on { background: var(--orange); color: #fff; }
.pcard .ph .price { bottom: 14px; inset-inline-start: 14px; z-index: 2; background: rgba(14,27,46,.82); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); border: 1px solid rgba(255,255,255,.14); border-radius: var(--r); padding: 8px 15px; font-size: var(--fs-16); box-shadow: 0 10px 24px rgba(0,0,0,.25); }
.pcard .bd { padding: 18px 18px 12px; gap: 10px; }
.pcard .bd h3 { font-size: var(--fs-16); letter-spacing: -.2px; }
.pcard .bd h3 a { transition: color .15s; }
.pcard .loc .ic-s { color: var(--orange); }
.pcard .meta { background: var(--cream); border: 0; border-radius: var(--r); padding: 10px 4px; margin-top: 2px; }
.pcard .meta .ic-s { color: var(--orange); }
.pcard .ft { padding: 12px 18px 16px; border-top: 1px solid var(--line-2); }
.pcard .ft .ag { width: 30px; height: 30px; box-shadow: 0 0 0 2px #fff, 0 0 0 3.5px rgba(242,107,29,.85); }
.pcard .ft .btn { border-radius: 999px; background: var(--navy-900); border-color: var(--navy-900); color: #fff; font-weight: 700; transition: .2s; }
.pcard .ft .btn:hover { background: var(--orange); border-color: var(--orange); transform: translateX(0); box-shadow: 0 8px 18px rgba(242,107,29,.35); }

/* ============ HEADER NAV v2 — professional dropdown menu ============ */
.header { transition: box-shadow .3s, background .3s; }
.header.scrolled { box-shadow: 0 12px 36px rgba(4,10,18,.55); background: rgba(10,20,32,.94); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.header .container { gap: 12px; max-width: 1400px; }
.nav { display: flex; gap: 0; margin-inline-start: 4px; align-items: center; }
.nv { position: relative; color: #CBD6E2; font-size: var(--fs-13); font-weight: 700; padding: 10px 9px; letter-spacing: .2px; white-space: nowrap; background: none; border: 0; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; transition: color .2s; border-radius: 0; }
.nv::after { content: ""; position: absolute; bottom: 2px; inset-inline: 9px; height: 2px; border-radius: 2px; background: var(--orange); transform: scaleX(0); transition: transform .25s ease; }
.nv:hover { color: #fff; background: none; }
.nv:hover::after, .nv.active::after { transform: scaleX(1); }
.nv.active { color: var(--orange); }
.nv.dd .ic-s { transition: transform .25s; }
.nv-drop:hover .nv.dd .ic-s, .nv-drop.open .nv.dd .ic-s { transform: rotate(180deg); }
.nv-div { width: 1px; height: 22px; background: rgba(255,255,255,.18); margin: 0 8px; flex: none; }
.nv-drop { position: relative; }
.nv-menu { position: absolute; top: calc(100% + 10px); inset-inline-start: 0; min-width: 225px; background: #fff; border-radius: var(--r-m2); box-shadow: 0 24px 60px rgba(10,20,35,.22); padding: 8px; opacity: 0; visibility: hidden; transform: translateY(10px); transition: .25s; z-index: 120; }
.nv-menu::before { content: ""; position: absolute; top: -6px; inset-inline-start: 18px; width: 12px; height: 12px; background: #fff; border-radius: 3px; transform: rotate(45deg); }
.nv-menu a { display: flex; align-items: center; gap: 8px; color: var(--ink); font-size: var(--fs-13); font-weight: 600; padding: 10px 12px; border-radius: var(--r-md); transition: .15s; }
.nv-menu a::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--line-2); transition: .15s; flex: none; }
.nv-menu a:hover, .nv-menu a.on { background: var(--cream); color: var(--orange); }
.nv-menu a:hover::before, .nv-menu a.on::before { background: var(--orange); }
.nv-drop:hover .nv-menu, .nv-drop.open .nv-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.addprop { border-radius: 999px !important; background: linear-gradient(120deg, var(--orange), #e0560f) !important; border-color: transparent !important; box-shadow: 0 8px 22px rgba(242,107,29,.4); white-space: nowrap; transition: .2s; }
.addprop:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(242,107,29,.55); }
.mm-group b { display: block; color: rgba(255,255,255,.55); font-size: var(--fs-11); text-transform: uppercase; letter-spacing: .8px; margin: 14px 0 4px; }
.mm-sub { padding-inline-start: 16px; color: #B9C6D4 !important; }
@media (max-width: 1330px) { .header .tag { display: none; } .nav .nv { padding: 10px 7px; font-size: var(--fs-12); } .header .container { gap: 10px; } }
@media (max-width: 1240px) { .nav { display: none; } .burger { display: inline-flex; } }

/* carousel */
/* owner card */
/* dots */
@media (max-width: 1180px) {
}
@media (max-width: 700px) {
}

/* ============ ADVISORS v2 — glass directories + dark premium cards ============ */
.adv-sec { position: relative; overflow: hidden; }
.adv-sec::before { content: ""; position: absolute; width: 560px; height: 560px; border-radius: 50%; background: radial-gradient(circle, rgba(242,107,29,.16), transparent 65%); top: -180px; inset-inline-end: -140px; pointer-events: none; }
.adv-sec::after { content: ""; position: absolute; width: 460px; height: 460px; border-radius: 50%; background: radial-gradient(circle, rgba(66,133,244,.12), transparent 65%); bottom: -160px; inset-inline-start: -120px; pointer-events: none; }
.adv-dirs { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 30px; }
.dir-card { position: relative; display: flex; align-items: center; gap: 16px; padding: 24px 26px; border-radius: var(--r-lg); background: linear-gradient(150deg, rgba(255,255,255,.09), rgba(255,255,255,.03)); border: 1px solid rgba(255,255,255,.11); overflow: hidden; transition: .3s; }
.dir-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(105deg, transparent 42%, rgba(255,255,255,.12) 50%, transparent 58%); transform: translateX(-130%); transition: transform .9s ease; pointer-events: none; }
.dir-card:hover::after { transform: translateX(130%); }
.dir-card:hover { transform: translateY(-5px); border-color: rgba(242,107,29,.55); box-shadow: 0 22px 48px rgba(4,10,18,.45); }
.dir-ic { width: 56px; height: 56px; border-radius: var(--r-lg); background: linear-gradient(135deg, var(--orange), #d9560e); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 10px 26px rgba(242,107,29,.4); transition: .3s; flex: none; }
.dir-ic2 { background: linear-gradient(135deg, #2f7fe0, #1b4fa0); box-shadow: 0 10px 26px rgba(47,127,224,.4); }
.dir-ic3 { background: linear-gradient(135deg, var(--green), #1f7a4d); box-shadow: 0 10px 26px rgba(46,158,99,.4); }
.dir-ic4 { background: linear-gradient(135deg, var(--amber), #c07f10); box-shadow: 0 10px 26px rgba(255,179,0,.35); }
.dir-card:hover .dir-ic { transform: rotate(-7deg) scale(1.07); }
.dir-card b { color: #fff; font-size: var(--fs-16); display: block; letter-spacing: -.2px; }
.dir-card div span { color: #8FA1B4; font-size: var(--fs-13); display: block; margin-top: 4px; }
.dir-go { margin-inline-start: auto; width: 44px; height: 44px; border-radius: 50%; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.16); color: #fff; display: flex; align-items: center; justify-content: center; transition: .3s; flex: none; }
.dir-card:hover .dir-go { background: var(--orange); border-color: var(--orange); }
.dir-card:hover .dir-go .ic-s { transform: translateX(2px); }
.dir-count { position: absolute; top: 14px; inset-inline-end: 16px; font-style: normal; font-size: var(--fs-11); font-weight: 800; letter-spacing: .5px; color: #FFC9A3; background: rgba(242,107,29,.14); border: 1px solid rgba(242,107,29,.4); padding: 4px 11px; border-radius: 999px; }
/* dark premium advisor cards */
.adv-sec .acard { background: linear-gradient(165deg, #17293f, #0f1e33); border: 1px solid rgba(255,255,255,.09); border-radius: var(--r-lg); padding: 24px; box-shadow: 0 14px 36px rgba(4,10,18,.35); position: relative; overflow: hidden; transition: transform .35s cubic-bezier(.2,.7,.3,1), box-shadow .35s, border-color .35s; }
.adv-sec .acard::before { content: ""; position: absolute; top: 0; inset-inline: 0; height: 3px; background: linear-gradient(90deg, var(--orange), #ffb37e); transform: scaleX(0); transition: transform .35s; }
.adv-sec .acard:hover { transform: translateY(-7px); box-shadow: 0 28px 60px rgba(4,10,18,.55); border-color: rgba(242,107,29,.45); }
.adv-sec .acard:hover::before { transform: scaleX(1); }
.adv-sec .acard h3 { color: #fff; }
.adv-sec .acard .meta { color: #8FA1B4; }
.adv-sec .acard .logo-c { background: linear-gradient(135deg, var(--orange), #d9560e); color: #fff; border-radius: var(--r-lg); box-shadow: 0 0 0 3px rgba(242,107,29,.22), 0 10px 22px rgba(242,107,29,.35); }
.adv-sec .acard .chip { background: rgba(255,255,255,.07); color: #CBD6E2; border: 1px solid rgba(255,255,255,.1); }
.adv-sec .acard .stars { color: var(--orange); }
.adv-sec .acard .muted, .adv-sec .acard .small.muted { color: #8FA1B4; }
.adv-sec .acard .btns .btn { border-radius: 999px; }
.adv-sec .acard .btns .btn.outline { border-color: rgba(255,255,255,.3); color: #E4ECF4; }
.adv-sec .acard .btns .btn.outline:hover { border-color: var(--orange); color: var(--orange); }
@media (max-width: 860px) { .adv-dirs { grid-template-columns: 1fr; } }

/* ============ ADVISORS v3 — photos, glow-follow, reveal ============ */
.adv-sec .logo-c { position: relative; overflow: visible; }
.adv-sec .logo-c img { width: 100%; height: 100%; object-fit: cover; border-radius: inherit; }
.on-dot { position: absolute; bottom: -3px; inset-inline-end: -3px; width: 13px; height: 13px; border-radius: 50%; background: var(--green); border: 2.5px solid #10203a; animation: lpPulse 1.8s infinite; }
.adv-sec .acard::after { content: ""; position: absolute; inset: 0; background: radial-gradient(240px circle at var(--mx, 50%) var(--my, 50%), rgba(242,107,29,.18), transparent 65%); opacity: 0; transition: opacity .35s; pointer-events: none; }
.adv-sec .acard:hover::after { opacity: 1; }
.rev.in { animation: revIn .7s cubic-bezier(.2,.7,.3,1) backwards; animation-delay: var(--d, 0ms); }
@keyframes revIn { from { opacity: 0; transform: translateY(28px) scale(.97); } to { opacity: 1; transform: none; } }
.dir-ic { animation: glowP 3.2s ease-in-out infinite; }
@keyframes glowP { 0%, 100% { box-shadow: 0 10px 26px rgba(242,107,29,.38); } 50% { box-shadow: 0 12px 34px rgba(242,107,29,.62); } }

/* ============ ADVISORS CAROUSEL — one row, big images, full cards ============ */
.adv-row { display: flex; gap: 20px; overflow-x: auto; direction: ltr; scrollbar-width: none; -ms-overflow-style: none; cursor: grab; padding: 4px 2px 8px; }
.adv-row::-webkit-scrollbar { display: none; }
.adv-row.dragging { cursor: grabbing; }
.adv-card { flex: 0 0 calc((100% - 40px) / 3); border-radius: var(--r-lg); overflow: hidden; background: linear-gradient(170deg, #17293f, #0f1e33); border: 1px solid rgba(255,255,255,.09); display: flex; flex-direction: column; position: relative; transition: transform .35s cubic-bezier(.2,.7,.3,1), box-shadow .35s, border-color .35s; }
.adv-card:hover { transform: translateY(-7px); box-shadow: 0 28px 60px rgba(4,10,18,.55); border-color: rgba(242,107,29,.5); }
.adv-media { position: relative; aspect-ratio: var(--ar-card); overflow: hidden; }
.adv-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2,.7,.3,1); }
.adv-card:hover .adv-media img { transform: scale(1.08); }
.adv-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,16,26,0) 55%, rgba(15,30,51,.85) 100%); }
.adv-vb { position: absolute; top: 12px; inset-inline-start: 12px; z-index: 2; display: inline-flex; align-items: center; gap: 6px; background: rgba(0,182,122,.95); color: #fff; font-size: var(--fs-10); font-weight: 800; letter-spacing: .5px; padding: 6px 11px; border-radius: var(--r-sm); box-shadow: 0 6px 16px rgba(0,0,0,.3); }
.adv-type { position: absolute; top: 12px; inset-inline-end: 12px; z-index: 2; background: rgba(242,107,29,.95); color: #fff; font-size: var(--fs-10); font-weight: 800; letter-spacing: .5px; padding: 6px 11px; border-radius: var(--r-sm); box-shadow: 0 6px 16px rgba(0,0,0,.3); }
.adv-bd { padding: 16px 18px 16px; display: flex; flex-direction: column; gap: 11px; flex: 1; }
.adv-hd { display: flex; gap: 12px; align-items: center; }
.adv-av { width: 47px; height: 47px; border-radius: 50%; overflow: hidden; background: linear-gradient(135deg, var(--orange), #d9560e); color: #fff; font-weight: 800; font-size: var(--fs-15); display: flex; align-items: center; justify-content: center; box-shadow: 0 0 0 2.5px rgba(242,107,29,.35); flex: none; }
.adv-av img { width: 100%; height: 100%; object-fit: cover; }
.adv-hd h3 { color: #fff; font-size: var(--fs-16); letter-spacing: -.2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.adv-meta { color: #8FA1B4; font-size: var(--fs-12); margin-top: 2px; }
.adv-rate { display: flex; align-items: center; gap: 8px; }
.adv-rate .stars { color: var(--orange); }
.adv-rate span { color: #8FA1B4; font-size: var(--fs-12); }
.adv-chips { display: flex; gap: 8px; flex-wrap: wrap; }
.adv-chips .chip { background: rgba(255,255,255,.07); color: #CBD6E2; border: 1px solid rgba(255,255,255,.1); border-radius: var(--r-sm); padding: 6px 10px; font-size: var(--fs-11); font-weight: 700; }
.adv-chips .chip.ok { color: #7CE3B1; border-color: rgba(0,182,122,.4); background: rgba(0,182,122,.1); }
.adv-svc { display: flex; gap: 6px; flex-wrap: wrap; }
.adv-svc span { font-size: var(--fs-11); color: #8FA1B4; border: 1px dashed rgba(255,255,255,.2); padding: 4px 10px; border-radius: 999px; }
.adv-go2 { margin-top: auto; display: flex; align-items: center; justify-content: center; gap: 8px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.14); color: #fff; border-radius: 999px; padding: 9px 14px; font-weight: 700; font-size: var(--fs-12); transition: .25s; }
.adv-card:hover .adv-go2 { background: var(--orange); border-color: var(--orange); box-shadow: 0 8px 20px rgba(242,107,29,.4); }
.adv-dots { display: flex; gap: 8px; justify-content: center; margin-top: 24px; }
.adv-dots button { width: 9px; height: 9px; border-radius: 999px; border: 0; background: rgba(255,255,255,.28); cursor: pointer; transition: .3s; padding: 0; }
.adv-dots button:hover { background: rgba(255,255,255,.5); }
.adv-dots button.on { width: 28px; background: var(--orange); }
@media (max-width: 1180px) { .adv-card { flex-basis: calc((100% - 20px) / 2); } }
@media (max-width: 700px) { .adv-card { flex-basis: 100%; } }

/* ============ TEAM + APP BANNER (reference design) ============ */
.team-sec { background: #F5F6F8; }
.tm-head { text-align: center; margin-bottom: 34px; }
.tm-head h2 { font-size: clamp(26px, 3vw, 38px); color: var(--ink); font-weight: 800; letter-spacing: -.6px; margin-top: 10px; }
.tm-row { display: flex; gap: 20px; overflow-x: auto; direction: ltr; scrollbar-width: none; cursor: grab; padding: 4px 2px 8px; }
.tm-row::-webkit-scrollbar { display: none; }
.tm-card { position: relative; flex: 0 0 calc((100% - 40px) / 3); border-radius: var(--r-lg); overflow: hidden; height: 330px; box-shadow: 0 14px 36px rgba(10,20,35,.14); transition: transform .35s cubic-bezier(.2,.7,.3,1), box-shadow .35s; background: var(--navy-900); }
.tm-card:hover { transform: translateY(-7px); box-shadow: 0 28px 56px rgba(10,20,35,.28); }
.tm-card img { width: 100%; height: 100%; object-fit: cover; object-position: top; transition: transform .8s; }
.tm-card:hover img { transform: scale(1.07); }
.tm-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,16,26,0) 45%, rgba(10,16,26,.82) 100%); }
.tm-call { position: absolute; top: 12px; inset-inline-start: 12px; z-index: 2; width: 38px; height: 38px; border-radius: 50%; background: var(--orange); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 8px 20px rgba(242,107,29,.45); transition: .25s; }
.tm-call:hover { transform: rotate(-12deg) scale(1.08); }
.tm-soc { position: absolute; top: 12px; inset-inline-end: 12px; z-index: 2; display: flex; flex-direction: column; gap: 8px; background: #fff; border-radius: 999px; padding: 8px 6px; opacity: 0; transform: translateY(-10px); transition: .3s; box-shadow: 0 10px 26px rgba(0,0,0,.2); }
.tm-card:hover .tm-soc { opacity: 1; transform: none; }
.tm-soc a { width: 30px; height: 30px; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: var(--ink); transition: .2s; }
.tm-soc a:hover { background: var(--orange); color: #fff; }
.tm-bd { position: absolute; inset-inline: 0; bottom: 0; z-index: 2; text-align: center; padding: 14px; }
.tm-bd b { color: #fff; font-size: var(--fs-16); display: block; }
.tm-bd span { color: rgba(255,255,255,.75); font-size: var(--fs-12); }
.tm-dots { display: flex; gap: 8px; justify-content: center; margin-top: 24px; }
.tm-dots button { width: 26px; height: 3px; border-radius: 99px; border: 0; background: rgba(14,27,46,.15); cursor: pointer; transition: .3s; padding: 0; }
.tm-dots button.on { background: var(--orange); width: 34px; }
/* app banner */
.app-banner { margin-top: 46px; background: linear-gradient(120deg, #1B2A44, #16233A); border-radius: var(--r-xl); padding: 44px 48px; display: flex; gap: 32px; align-items: center; flex-wrap: wrap; position: relative; overflow: hidden; box-shadow: 0 30px 70px rgba(14,27,46,.35); }
.ab-left { flex: 1; min-width: 280px; }
.ab-label { color: #fff; font-weight: 800; font-size: var(--fs-12); letter-spacing: .8px; text-transform: uppercase; }
.ab-left h2 { color: #fff; font-size: clamp(24px, 2.8vw, 36px); font-weight: 800; letter-spacing: -.5px; line-height: 1.25; margin-top: 12px; }
.ab-left h2 em { font-style: normal; color: #D8F164; }
.ab-btns { display: flex; gap: 12px; margin-top: 26px; flex-wrap: wrap; }
.ab-store, .ab-play { display: inline-flex; align-items: center; gap: 11px; border-radius: 999px; padding: 11px 22px; font-weight: 700; cursor: pointer; transition: .25s; border: 1.6px solid rgba(255,255,255,.7); background: transparent; color: #fff; }
.ab-store:hover { background: #fff; color: var(--navy-900); }
.ab-play { background: var(--orange); border-color: var(--orange); }
.ab-play:hover { transform: translateY(-3px); box-shadow: 0 12px 28px rgba(242,107,29,.45); }
.ab-store span, .ab-play span { display: flex; flex-direction: column; align-items: flex-start; line-height: 1.1; }
.ab-store i, .ab-play i { font-style: normal; font-size: var(--fs-10); opacity: .8; }
.ab-store b, .ab-play b { font-size: var(--fs-15); }
.ab-right { position: relative; width: 320px; height: 250px; flex: none; }
.ab-circle { position: absolute; inset-inline-end: 20px; top: 0; width: 210px; height: 210px; border-radius: 50%; background: var(--orange); }
.ab-qr { position: absolute; inset-inline-end: 150px; top: 18px; background: #fff; border-radius: var(--r-md); padding: 8px; box-shadow: 0 14px 30px rgba(0,0,0,.3); z-index: 3; }
.ab-phone { position: absolute; border-radius: var(--r-xl); border: 5px solid #0b1220; overflow: hidden; box-shadow: 0 24px 60px rgba(0,0,0,.45); background: #0b1220; }
.ab-phone img { width: 100%; height: 100%; object-fit: cover; }
.ab-phone .ab-notch { position: absolute; top: 4px; left: 50%; transform: translateX(-50%); width: 44%; height: 12px; background: #0b1220; border-radius: 999px; z-index: 2; }
.ab-phone.p1 { width: 118px; height: 236px; inset-inline-start: 40px; bottom: -30px; transform: rotate(-6deg); z-index: 2; }
.ab-phone.p2 { width: 128px; height: 252px; inset-inline-end: 30px; bottom: -40px; transform: rotate(5deg); z-index: 1; }
.ab-spark { position: absolute; top: -6px; inset-inline-end: 6px; color: #fff; font-size: var(--fs-20); animation: lpFloat 3s ease-in-out infinite; }
/* consultants + register CTA on light bg */
.reg-cta { position: relative; margin-top: 30px; background: linear-gradient(120deg, var(--navy-900), #16304d) !important; border: 0 !important; display: flex; align-items: center; gap: 24px; flex-wrap: wrap; border-radius: var(--r-xl); padding: 36px 38px; box-shadow: 0 24px 60px rgba(14,27,46,.35); overflow: hidden; isolation: isolate; }
.reg-cta::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(90deg, var(--orange), #ffb37e 50%, var(--orange)); z-index: 2; }
.reg-cta .reg-glow { position: absolute; inset-inline-end: -70px; top: -90px; width: 320px; height: 320px; border-radius: 50%; background: radial-gradient(circle, rgba(242,107,29,.55) 0%, rgba(242,107,29,0) 70%); z-index: 0; animation: regPulse 5s ease-in-out infinite; }
.reg-cta .reg-glow::after { content: ""; position: absolute; inset-inline-start: -160px; bottom: -140px; width: 260px; height: 260px; border-radius: 50%; background: radial-gradient(circle, rgba(242,107,29,.35) 0%, rgba(242,107,29,0) 70%); }
.reg-cta .reg-grid { position: absolute; inset: 0; background-image: radial-gradient(rgba(255,255,255,.06) 1px, transparent 1.5px); background-size: 26px 26px; z-index: 0; pointer-events: none; }
.reg-cta > * { position: relative; z-index: 1; }
.reg-cta .reg-label { display: inline-flex; align-items: center; gap: 8px; color: var(--orange); font-size: var(--fs-12); font-weight: 800; letter-spacing: 1.6px; text-transform: uppercase; margin-bottom: 10px; }
.reg-cta .reg-label::before { content: ""; width: 26px; height: 2px; background: var(--orange); border-radius: 2px; }
.reg-cta h2 { font-size: clamp(24px, 2.6vw, 32px); letter-spacing: -.5px; }
.reg-cta p { color: #C3D0DD !important; line-height: 1.8; }
.reg-cta .btn.light { background: var(--orange); color: #fff; border: 0; box-shadow: 0 12px 30px rgba(242,107,29,.4); transition: .3s; flex: none; }
.reg-cta .btn.light:hover { background: #fff; color: var(--navy-900); transform: translateY(-3px); box-shadow: 0 18px 40px rgba(0,0,0,.35); }
.reg-cta .btn.light .ic-s { transition: transform .3s; }
.reg-cta .btn.light:hover .ic-s { transform: translateX(4px); }
@keyframes regPulse { 0%, 100% { transform: scale(1); opacity: .9; } 50% { transform: scale(1.15); opacity: 1; } }
@media (max-width: 1180px) { .tm-card { flex-basis: calc((100% - 20px) / 2); } .team-sec .ct-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 760px) { .tm-card { flex-basis: 100%; } .team-sec .ct-grid { grid-template-columns: 1fr; } .ab-right { display: none; } }
/* partners logo band — brand light */
.team-sec { padding-bottom: 0; }
.pt-band { background: linear-gradient(180deg, var(--cream) 0%, #F5EBDD 100%); padding: 78px 0 74px; margin-top: 64px; position: relative; overflow: hidden; }
.pt-band::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(90deg, var(--orange), var(--lime) 50%, var(--orange)); }
.pt-band::after { content: ""; position: absolute; inset: 0; background-image: radial-gradient(rgba(14,27,46,.07) 1px, transparent 1.5px); background-size: 24px 24px; pointer-events: none; }
.pb-head { text-align: center; position: relative; z-index: 1; }
.pb-head h3 { color: var(--ink); font-size: clamp(24px, 3vw, 34px); font-weight: 800; letter-spacing: -.5px; }
.pb-head h3::after { content: ""; display: block; width: 64px; height: 4px; border-radius: 99px; background: linear-gradient(90deg, var(--orange), var(--lime)); margin: 12px auto 0; }
.pb-head p { color: var(--muted); margin-top: 12px; font-size: var(--fs-16); }
.pb-row { display: flex; justify-content: center; align-items: stretch; gap: 20px; flex-wrap: wrap; margin-top: 46px; position: relative; z-index: 1; }
.pb-logo { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; color: var(--muted); background: #fff; border: 1px solid var(--line-2); border-radius: var(--r-lg); padding: 26px 22px; min-width: 158px; flex: 0 1 172px; box-shadow: 0 10px 26px rgba(10,20,35,.07); transition: .35s cubic-bezier(.2,.7,.3,1); cursor: pointer; text-align: center; position: relative; overflow: hidden; }
.pb-logo::before { content: ""; position: absolute; inset: 0; background: linear-gradient(120deg, transparent 40%, rgba(242,107,29,.09) 50%, transparent 60%); transform: translateX(-120%); transition: .6s; }
.pb-logo:hover::before { transform: translateX(120%); }
.pb-logo svg { transition: .35s; }
.pb-logo:hover { color: var(--ink); border-color: var(--orange); transform: translateY(-7px); box-shadow: 0 22px 46px rgba(242,107,29,.18); }
.pb-logo:hover svg { color: var(--orange); transform: scale(1.1); }
.pb-logo b { font-size: var(--fs-14); letter-spacing: .8px; font-weight: 800; color: var(--ink); }
.pb-logo i { font-style: normal; font-size: var(--fs-10); letter-spacing: 2.4px; opacity: .8; text-transform: uppercase; color: var(--orange); font-weight: 700; }
@media (max-width: 900px) { .pb-row { gap: 12px; } .pb-logo { flex: 1 1 42%; } }

/* ============ FEATURED PROPERTIES CAROUSEL ============ */
.feat-row { display: flex; gap: 24px; overflow-x: auto; direction: ltr; padding-bottom: 10px; scrollbar-width: none; -ms-overflow-style: none; cursor: grab; }
.feat-row::-webkit-scrollbar { display: none; }
.feat-row.dragging { cursor: grabbing; }
.feat-row .pcard { flex: 0 0 calc((100% - 72px) / 4); }
@media (max-width: 1180px) { .feat-row .pcard { flex-basis: calc((100% - 48px) / 3); } }
@media (max-width: 900px) { .feat-row .pcard { flex-basis: calc((100% - 24px) / 2); } }
@media (max-width: 620px) { .feat-row .pcard { flex-basis: 100%; } }

/* ============ SOLD / RENTED — clear status ============ */
.badge.sold { background: var(--red); font-size: var(--fs-12); padding: 7px 13px; letter-spacing: 1.2px; box-shadow: 0 6px 16px rgba(214,69,69,.4); }
.badge.rented { background: var(--amber); color: #432500; font-size: var(--fs-12); padding: 7px 13px; letter-spacing: 1.2px; box-shadow: 0 6px 16px rgba(232,147,12,.4); }
.pcard .stamp { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) rotate(-12deg); z-index: 4; pointer-events: none; font-size: clamp(20px, 2.4vw, 30px); font-weight: 900; letter-spacing: 3px; text-transform: uppercase; padding: 11px 30px; border-radius: var(--r-md); color: #fff; border: 3px solid #fff; box-shadow: 0 10px 34px rgba(0,0,0,.42); text-align: center; }
.pcard .stamp.sold { background: rgba(214,69,69,.9); }
.pcard .stamp.rented { background: rgba(232,147,12,.92); }
.pcard.is-off .ph img { filter: grayscale(.55) brightness(.92); }

/* ============ CAR RENTAL CAROUSEL ============ */
.lp-more-w { background: #fff; color: var(--navy-900); }
.lp-more-w:hover { background: var(--orange); color: #fff; }
.car-row { display: flex; gap: 24px; overflow-x: auto; direction: ltr; padding-bottom: 10px; scrollbar-width: none; -ms-overflow-style: none; cursor: grab; }
.car-row::-webkit-scrollbar { display: none; }
.car-row.dragging { cursor: grabbing; }
.car-row .pcard { flex: 0 0 calc((100% - 72px) / 4); }
.car-row .pcard .ph { height: 190px; }
.car-row .pcard .ph img { object-fit: contain; background: #fff; padding: 18px; }
@media (max-width: 1180px) { .car-row .pcard { flex-basis: calc((100% - 48px) / 3); } }
@media (max-width: 900px) { .car-row .pcard { flex-basis: calc((100% - 24px) / 2); } }
@media (max-width: 620px) { .car-row .pcard { flex-basis: 100%; } }

/* ============ EVENTS & SEMINARS v2 — professional ============ */
.ev-layout { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(0,1fr); gap: 24px; align-items: stretch; }
.ev-featured { position: relative; display: block; border-radius: var(--r-xl); overflow: hidden; min-height: 480px; color: #fff; box-shadow: 0 24px 60px rgba(10,20,35,.28); transition: transform .4s cubic-bezier(.2,.7,.3,1), box-shadow .4s; background: var(--navy-900); }
.ev-featured:hover { transform: translateY(-8px); box-shadow: 0 34px 80px rgba(10,20,35,.38); }
.ev-featured > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1.1s cubic-bezier(.2,.7,.3,1); }
.ev-featured:hover > img { transform: scale(1.07); }
.ev-veil { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,16,26,.06) 0%, rgba(10,16,26,.18) 40%, rgba(10,16,26,.92) 100%); }
.ev-fbadge { position: absolute; top: 20px; inset-inline-start: 20px; z-index: 2; background: rgba(255,255,255,.96); color: var(--navy-900); border-radius: var(--r-m2); padding: 12px 17px; text-align: center; line-height: 1; box-shadow: 0 10px 26px rgba(0,0,0,.28); }
.ev-fbadge b { display: block; font-size: var(--fs-30); font-weight: 900; color: var(--orange); letter-spacing: -.5px; }
.ev-fbadge span { display: block; font-size: var(--fs-11); font-weight: 800; letter-spacing: .8px; text-transform: uppercase; margin-top: 5px; color: var(--muted); }
.ev-fbody { position: absolute; inset-inline: 0; bottom: 0; padding: 28px 30px; z-index: 2; display: flex; flex-direction: column; gap: 12px; }
.ev-org { display: inline-flex; align-items: center; gap: 8px; align-self: flex-start; font-size: var(--fs-12); font-weight: 800; letter-spacing: .5px; text-transform: uppercase; color: #D8F164; background: rgba(14,27,46,.55); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); padding: 7px 13px; border-radius: 999px; }
.ev-org .ic-s { color: #D8F164; }
.ev-fbody h3 { font-size: clamp(22px, 2.4vw, 30px); font-weight: 800; letter-spacing: -.4px; line-height: 1.2; }
.ev-fmeta { display: flex; flex-wrap: wrap; gap: 8px 18px; color: rgba(255,255,255,.82); font-size: var(--fs-13); }
.ev-fmeta span { display: inline-flex; align-items: center; gap: 8px; }
.ev-fmeta .ic-s { color: var(--orange); flex: none; }
.ev-seats { display: flex; align-items: center; gap: 12px; margin-top: 2px; }
.ev-seats-bar { flex: 1; height: 7px; border-radius: 999px; background: rgba(255,255,255,.22); overflow: hidden; }
.ev-seats-bar i { display: block; height: 100%; border-radius: 999px; background: linear-gradient(90deg, var(--orange), #ffb37e); animation: evFill 1.4s cubic-bezier(.2,.7,.3,1) both; }
.ev-seats span { font-size: var(--fs-12); font-weight: 700; color: rgba(255,255,255,.85); white-space: nowrap; }
@keyframes evFill { from { width: 0; } }
.ev-count { display: flex; gap: 10px; margin-top: 4px; }
.ev-count span { flex: 1; background: rgba(255,255,255,.12); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); border: 1px solid rgba(255,255,255,.18); border-radius: var(--r); padding: 10px 4px; text-align: center; }
.ev-num { display: block; font-size: var(--fs-22); font-weight: 900; color: #fff; font-variant-numeric: tabular-nums; }
.ev-count i { display: block; font-style: normal; font-size: var(--fs-10); font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: rgba(255,255,255,.7); margin-top: 3px; }
.ev-go { display: inline-flex; align-items: center; gap: 10px; align-self: flex-start; margin-top: 6px; background: var(--orange); color: #fff; font-weight: 800; font-size: var(--fs-14); padding: 14px 26px; border-radius: 999px; box-shadow: 0 12px 28px rgba(242,107,29,.4); transition: .3s; }
.ev-go .ic-s { transition: transform .3s; }
.ev-featured:hover .ev-go { background: #fff; color: var(--navy-900); }
.ev-featured:hover .ev-go .ic-s { transform: translateX(4px); }
.ev-list { display: flex; flex-direction: column; gap: 12px; }
.ev-item { position: relative; display: flex; align-items: center; gap: 16px; background: #fff; border: 1px solid rgba(14,27,46,.07); border-radius: var(--r-lg); padding: 16px 18px; box-shadow: 0 8px 24px rgba(10,20,35,.07); transition: transform .3s, box-shadow .3s, border-color .3s; overflow: hidden; }
.ev-item::before { content: ""; position: absolute; inset-inline-start: 0; top: 0; bottom: 0; width: 4px; background: linear-gradient(180deg, var(--orange), #ffb37e); transform: scaleY(0); transform-origin: top; transition: transform .35s ease; }
.ev-item:hover { transform: translateY(-4px); box-shadow: 0 18px 42px rgba(10,20,35,.14); border-color: rgba(242,107,29,.35); }
.ev-item:hover::before { transform: scaleY(1); }
.ev-db { flex: none; width: 62px; height: 66px; border-radius: var(--r-m2); background: var(--orange-soft); color: var(--orange-700); display: flex; flex-direction: column; align-items: center; justify-content: center; line-height: 1; }
.ev-db b { font-size: var(--fs-24); font-weight: 900; }
.ev-db span { font-size: var(--fs-10); font-weight: 800; letter-spacing: 1px; text-transform: uppercase; margin-top: 4px; }
.ev-it { flex: 1; min-width: 0; }
.ev-it h4 { font-size: var(--fs-15); font-weight: 800; letter-spacing: -.2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color .2s; }
.ev-item:hover .ev-it h4 { color: var(--orange); }
.ev-imet { display: flex; flex-wrap: wrap; gap: 6px 14px; color: var(--muted); font-size: var(--fs-12); margin-top: 6px; }
.ev-imet span { display: inline-flex; align-items: center; gap: 6px; }
.ev-imet .ic-s { color: var(--orange); }
.ev-ibar { height: 5px; border-radius: 999px; background: var(--cream-2); overflow: hidden; margin-top: 9px; }
.ev-ibar i { display: block; height: 100%; border-radius: 999px; background: linear-gradient(90deg, var(--orange), #ffb37e); }
.ev-iseat { flex: none; text-align: center; padding-inline: 4px; }
.ev-iseat b { display: block; font-size: var(--fs-18); font-weight: 900; color: var(--navy-900); }
.ev-iseat span { font-size: var(--fs-10); font-weight: 700; letter-spacing: .4px; text-transform: uppercase; color: var(--muted); }
.ev-arrow { flex: none; width: 40px; height: 40px; border-radius: 50%; background: var(--navy-900); color: #fff; display: flex; align-items: center; justify-content: center; transition: .3s; }
.ev-arrow .ic-s { transition: transform .3s; }
.ev-item:hover .ev-arrow { background: var(--orange); }
.ev-item:hover .ev-arrow .ic-s { transform: translateX(3px); }
/* reveal */
.ev-sec .rev { opacity: 0; transform: translateY(26px); transition: opacity .6s ease, transform .6s cubic-bezier(.2,.7,.3,1); transition-delay: var(--d, 0ms); }
.ev-sec .rev.in { opacity: 1; transform: none; }
@media (max-width: 900px) { .ev-layout { grid-template-columns: minmax(0,1fr); } .ev-featured { min-height: 420px; } }
@media (max-width: 620px) { .ev-count { gap: 6px; } .ev-num { font-size: var(--fs-18); } .ev-item { flex-wrap: wrap; } .ev-iseat { margin-inline-start: auto; } }

/* ============ KOORPLUS JOURNAL ============ */
.jr-hero { background: radial-gradient(1200px 500px at 85% -10%, rgba(242,107,29,.18), transparent 60%), linear-gradient(160deg, var(--navy-950), var(--navy-900) 60%, #13253C); color: #fff; padding: 64px 0 70px; position: relative; overflow: hidden; }
.jr-hero::before { content: ""; position: absolute; inset: 0; background-image: radial-gradient(rgba(255,255,255,.05) 1px, transparent 1.5px); background-size: 28px 28px; pointer-events: none; }
.jr-hero-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 48px; align-items: center; position: relative; }
.jr-crumb { display: flex; align-items: center; gap: 8px; font-size: var(--fs-13); color: rgba(255,255,255,.6); margin-bottom: 22px; }
.jr-crumb a { color: rgba(255,255,255,.6); }
.jr-crumb a:hover { color: var(--orange); }
.jr-crumb span.sep, .jr-crumb span { opacity: .7; }
.jr-eyebrow { display: inline-flex; align-items: center; gap: 8px; color: var(--orange); font-size: var(--fs-12); font-weight: 800; letter-spacing: 2px; text-transform: uppercase; margin-bottom: 14px; }
.jr-eyebrow .ic-s { color: var(--orange); }
.jr-hero-copy h1 { font-size: clamp(30px, 4vw, 48px); font-weight: 800; letter-spacing: -1px; line-height: 1.12; }
.jr-hero-copy h1 em { font-style: normal; color: var(--orange); }
.jr-sub { color: #B9C6D4; margin-top: 16px; font-size: var(--fs-15); max-width: 540px; }
.jr-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 26px; }
.jr-btn { display: inline-flex; align-items: center; gap: 8px; padding: 14px 26px; border-radius: 999px; font-weight: 700; font-size: var(--fs-14); transition: .25s; }
.jr-btn .ic-s { transition: transform .25s; }
.jr-btn-orange { background: var(--orange); color: #fff; box-shadow: 0 12px 30px rgba(242,107,29,.35); }
.jr-btn-orange:hover { background: #fff; color: var(--navy-900); transform: translateY(-2px); }
.jr-btn-orange:hover .ic-s { transform: translateX(3px); }
.jr-btn-ghost { background: rgba(255,255,255,.08); color: #fff; border: 1px solid rgba(255,255,255,.2); }
.jr-btn-ghost:hover { background: rgba(255,255,255,.16); border-color: rgba(255,255,255,.4); }
.jr-hero-meta { display: flex; flex-wrap: wrap; gap: 24px; margin-top: 30px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.12); }
.jr-hero-meta span { display: flex; flex-direction: column; gap: 2px; font-size: var(--fs-12); color: rgba(255,255,255,.6); }
.jr-hero-meta span .ic-s { color: var(--orange); margin-bottom: 4px; }
.jr-hero-meta b { color: #fff; font-size: var(--fs-13); }
.jr-lead { position: relative; display: block; border-radius: var(--r-xl); overflow: hidden; min-height: 460px; cursor: pointer; box-shadow: 0 30px 70px rgba(0,0,0,.4); }
.jr-lead img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1s cubic-bezier(.2,.7,.3,1); }
.jr-lead:hover img { transform: scale(1.06); }
.jr-lead-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,16,26,.05) 35%, rgba(10,16,26,.9) 100%); }
.jr-lead-badge { position: absolute; top: 18px; inset-inline-start: 18px; background: var(--orange); color: #fff; font-size: var(--fs-11); font-weight: 800; letter-spacing: 1px; text-transform: uppercase; padding: 7px 14px; border-radius: var(--r-sm); box-shadow: 0 8px 20px rgba(242,107,29,.4); }
.jr-lead-content { position: absolute; inset-inline: 0; bottom: 0; padding: 26px 28px; }
.jr-lead-cat { display: inline-block; color: #D8F164; font-size: var(--fs-12); font-weight: 800; letter-spacing: 1px; text-transform: uppercase; margin-bottom: 10px; }
.jr-lead-content h2 { color: #fff; font-size: clamp(21px, 2.4vw, 28px); font-weight: 800; letter-spacing: -.4px; line-height: 1.2; }
.jr-lead-content p { color: rgba(255,255,255,.78); font-size: var(--fs-14); margin-top: 9px; max-width: 460px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.jr-lead-read { display: inline-flex; align-items: center; gap: 8px; margin-top: 16px; color: #fff; font-weight: 700; font-size: var(--fs-14); }
.jr-lead-read .ic-s { color: var(--orange); transition: transform .25s; }
.jr-lead:hover .jr-lead-read .ic-s { transform: translateX(4px); }

.jr-strip { background: var(--navy-900); border-top: 1px solid rgba(255,255,255,.08); }
.jr-strip .container { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding: 14px 24px; }
.jr-strip-label { color: var(--orange); font-size: var(--fs-11); font-weight: 800; letter-spacing: 1.6px; text-transform: uppercase; margin-inline-end: 6px; }
.jr-strip a { display: inline-flex; align-items: center; gap: 8px; color: #C3D0DD; font-size: var(--fs-13); font-weight: 600; padding: 7px 14px; border-radius: 999px; transition: .2s; }
.jr-strip a:hover { background: rgba(255,255,255,.1); color: #fff; }
.jr-strip a .ic-s { color: var(--orange); }

.jr-feat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.jr-feat { background: #fff; border-radius: var(--r-lg); overflow: hidden; border: 1px solid rgba(14,27,46,.07); box-shadow: 0 8px 24px rgba(10,20,35,.07); cursor: pointer; transition: transform .3s, box-shadow .3s; display: flex; flex-direction: column; }
.jr-feat:hover { transform: translateY(-6px); box-shadow: 0 22px 50px rgba(10,20,35,.16); }
.jr-feat-media { position: relative; aspect-ratio: var(--ar-media); overflow: hidden; }
.jr-feat-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s; }
.jr-feat:hover .jr-feat-media img { transform: scale(1.07); }
.jr-feat-cat { position: absolute; top: 14px; inset-inline-start: 14px; background: rgba(14,27,46,.78); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); color: #fff; font-size: var(--fs-11); font-weight: 800; letter-spacing: .5px; padding: 6px 12px; border-radius: 999px; display: inline-flex; align-items: center; gap: 6px; }
.jr-feat-cat .ic-s { color: var(--orange); }
.jr-feat-body { padding: 18px 20px 20px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.jr-feat-body h3 { font-size: var(--fs-18); font-weight: 800; letter-spacing: -.2px; line-height: 1.3; }
.jr-feat:hover .jr-feat-body h3 { color: var(--orange); }
.jr-feat-body p { color: var(--muted); font-size: var(--fs-13); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.jr-more { display: inline-flex; align-items: center; gap: 8px; color: var(--orange); font-weight: 700; font-size: var(--fs-13); margin-top: auto; }
.jr-more .ic-s { transition: transform .25s; }
.jr-feat:hover .jr-more .ic-s, .jr-card:hover .jr-more .ic-s { transform: translateX(3px); }

.jr-latest { padding-top: 70px; }
.jr-latest-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; flex-wrap: wrap; margin-bottom: 28px; }
.jr-latest-head h2 { font-size: clamp(24px, 3vw, 34px); font-weight: 800; letter-spacing: -.4px; }
.jr-latest-head h2 span { color: var(--orange); }
.jr-search { display: flex; align-items: center; gap: 8px; background: #fff; border: 1.5px solid var(--line-2); border-radius: 999px; padding: 10px 14px 10px 18px; min-width: 260px; transition: border-color .2s, box-shadow .2s; }
.jr-search:focus-within { border-color: var(--orange); box-shadow: 0 0 0 4px var(--orange-ring); }
.jr-search .ic-s { color: var(--muted); }
.jr-search input { flex: 1; border: 0; outline: 0; font-size: var(--fs-14); font-family: inherit; background: transparent; }
.jr-search button { border: 0; background: transparent; color: var(--muted); cursor: pointer; display: inline-flex; align-items: center; }
.jr-filters { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 26px; }
.jr-filters button { padding: 9px 18px; border-radius: 999px; background: #fff; border: 1.5px solid var(--line-2); font-size: var(--fs-13); font-weight: 700; color: var(--muted); cursor: pointer; transition: .18s; font-family: inherit; }
.jr-filters button:hover { border-color: var(--orange); color: var(--orange); }
.jr-filters button.active { background: var(--orange); border-color: var(--orange); color: #fff; }
.jr-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.jr-card { background: #fff; border-radius: var(--r-lg); overflow: hidden; border: 1px solid rgba(14,27,46,.07); box-shadow: 0 6px 20px rgba(10,20,35,.06); cursor: pointer; transition: transform .3s, box-shadow .3s; display: flex; flex-direction: column; }
.jr-card:hover { transform: translateY(-5px); box-shadow: 0 20px 44px rgba(10,20,35,.14); }
.jr-card-media { position: relative; aspect-ratio: var(--ar-card); overflow: hidden; }
.jr-card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s; }
.jr-card:hover .jr-card-media img { transform: scale(1.06); }
.jr-card-cat { position: absolute; top: 12px; inset-inline-start: 12px; background: var(--orange); color: #fff; font-size: var(--fs-11); font-weight: 800; letter-spacing: .5px; text-transform: uppercase; padding: 5px 11px; border-radius: var(--r-sm); }
.jr-card-body { padding: 16px 18px 18px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.jr-card-body h3 { font-size: var(--fs-16); font-weight: 800; letter-spacing: -.2px; line-height: 1.3; }
.jr-card:hover .jr-card-body h3 { color: var(--orange); }
.jr-card-body p { color: var(--muted); font-size: var(--fs-13); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.jr-card-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 12px; border-top: 1px solid var(--line-2); }
.jr-author { display: inline-flex; align-items: center; gap: 6px; color: var(--muted); font-size: var(--fs-12); }
.jr-author .ic-s { color: var(--orange); }
.jr-meta { display: flex; flex-wrap: wrap; gap: 6px 14px; color: var(--muted-2); font-size: var(--fs-12); }
.jr-meta span { display: inline-flex; align-items: center; gap: 6px; }
.jr-meta .ic-s { color: var(--orange); }
.jr-empty { text-align: center; padding: 60px 20px; color: var(--muted); }
.jr-empty > .ic { width: 46px; height: 46px; color: var(--muted-2); margin-bottom: 14px; }
.jr-empty h3 { color: var(--ink); margin-bottom: 6px; }
.jr-empty p { font-size: var(--fs-13); margin-bottom: 16px; }

.jr-guide-sec { padding-top: 60px; }
.jr-guide { display: grid; grid-template-columns: 320px 1fr; gap: 44px; align-items: center; }
.jr-guide-cover { position: relative; width: min(300px, 100%); aspect-ratio: 3/4; border-radius: var(--r-lg); background: linear-gradient(160deg, var(--navy-900), var(--navy-700)); box-shadow: 0 30px 60px rgba(14,27,46,.35); padding: 20px; }
.jr-guide-cover::before { content: ""; position: absolute; inset: 10px; border: 1.5px solid rgba(255,255,255,.18); border-radius: var(--r); }
.jr-cover-badge { position: absolute; top: 20px; inset-inline-end: 20px; background: var(--orange); color: #fff; font-size: var(--fs-10); font-weight: 800; letter-spacing: 1px; padding: 5px 11px; border-radius: 999px; z-index: 1; }
.jr-cover-inner { position: relative; height: 100%; display: flex; flex-direction: column; justify-content: flex-end; gap: 6px; padding: 14px; }
.jr-cover-logo { color: #fff; font-size: var(--fs-15); font-weight: 800; letter-spacing: .5px; }
.jr-cover-logo em { color: var(--orange); font-style: normal; }
.jr-cover-inner b { color: #fff; font-size: var(--fs-24); font-weight: 800; line-height: 1.1; }
.jr-cover-inner i { font-style: normal; color: #D8F164; font-size: var(--fs-12); font-weight: 800; letter-spacing: 3px; }
.jr-cover-ic { position: absolute; top: 26px; inset-inline-start: 26px; color: rgba(255,255,255,.14); }
.jr-cover-ic .ic { width: 92px; height: 92px; }
.jr-guide-copy h2 { font-size: clamp(24px, 3vw, 34px); font-weight: 800; letter-spacing: -.4px; margin-top: 4px; }
.jr-guide-copy h2 em { font-style: normal; color: var(--orange); }
.jr-guide-copy p { margin-top: 12px; max-width: 560px; }
.jr-guide-facts { display: flex; gap: 24px; margin: 22px 0; }
.jr-guide-facts span { display: flex; flex-direction: column; }
.jr-guide-facts b { font-size: var(--fs-24); font-weight: 900; color: var(--navy-900); }
.jr-guide-facts span { font-size: var(--fs-11); font-weight: 700; letter-spacing: .6px; text-transform: uppercase; color: var(--muted); }

.jr-contribute { padding-top: 66px; }
.jr-contribute-grid { display: grid; grid-template-columns: 1fr 1.05fr; gap: 44px; align-items: start; }
.jr-contribute-copy h2 { font-size: clamp(24px, 3vw, 34px); font-weight: 800; letter-spacing: -.4px; margin-top: 4px; }
.jr-contribute-copy h2 em { font-style: normal; color: var(--orange); }
.jr-contribute-copy p { margin-top: 12px; }
.jr-guidelines { display: flex; flex-direction: column; gap: 10px; margin-top: 22px; }
.jr-guidelines span { display: flex; align-items: center; gap: 10px; font-size: var(--fs-14); font-weight: 600; color: var(--ink); }
.jr-guidelines .ic-s { color: var(--green); }
.jr-editorial { margin-top: 24px; padding-top: 18px; border-top: 1px solid var(--line-2); }
.jr-editorial small { display: block; color: var(--muted); font-size: var(--fs-12); margin-bottom: 4px; }
.jr-editorial a { color: var(--orange); font-weight: 700; font-size: var(--fs-14); }
.jr-form { background: #fff; border-radius: var(--r-xl); border: 1px solid rgba(14,27,46,.07); box-shadow: 0 14px 40px rgba(10,20,35,.1); padding: 28px; }
.jr-form-head { display: flex; align-items: center; gap: 12px; margin-bottom: 22px; }
.jr-form-head > span { width: 46px; height: 46px; border-radius: var(--r-m2); background: var(--orange-soft); color: var(--orange); display: flex; align-items: center; justify-content: center; }
.jr-form-head h3 { font-size: var(--fs-18); }
.jr-form-head p { color: var(--muted); font-size: var(--fs-13); }
.jr-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.jr-form-grid .f-group { display: flex; flex-direction: column; gap: 6px; }
.jr-form-grid .f-group:nth-child(3), .jr-form-grid .f-group:nth-child(5) { grid-column: 1 / -1; }
.jr-form-grid .f-group label { font-size: var(--fs-13); font-weight: 700; color: var(--ink); }
.jr-form-grid .f-group input, .jr-form-grid .f-group select, .jr-form-grid .f-group textarea { border: 1.5px solid var(--line-2); border-radius: var(--r-md); padding: 10px 13px; font-size: var(--fs-14); font-family: inherit; width: 100%; transition: border-color .2s, box-shadow .2s; background: #fff; }
.jr-form-grid input:focus, .jr-form-grid select:focus, .jr-form-grid textarea:focus { outline: 0; border-color: var(--orange); box-shadow: 0 0 0 4px var(--orange-ring); }
.jr-consent { display: flex; align-items: flex-start; gap: 10px; font-size: var(--fs-13); color: var(--muted); margin-top: 16px; cursor: pointer; }
.jr-consent input { accent-color: var(--orange); margin-top: 2px; }
.jr-submit { display: inline-flex; align-items: center; gap: 10px; margin-top: 20px; background: var(--orange); color: #fff; border: 0; font-weight: 700; font-size: var(--fs-14); padding: 14px 26px; border-radius: 999px; cursor: pointer; transition: .25s; font-family: inherit; box-shadow: 0 12px 28px rgba(242,107,29,.35); }
.jr-submit:hover { background: var(--navy-900); transform: translateY(-2px); }
.jr-submit .ic-s { transition: transform .25s; }
.jr-submit:hover .ic-s { transform: translateX(3px); }
.jr-form-note { display: flex; align-items: center; gap: 8px; color: var(--muted-2); font-size: var(--fs-12); margin-top: 14px; }
.jr-form-note .ic-s { color: var(--green); }
.jr-form-status { margin-top: 12px; }
.jr-form-status .jr-ok { display: inline-flex; align-items: center; gap: 8px; color: var(--green); font-weight: 700; font-size: var(--fs-13); background: var(--green-soft); padding: 10px 16px; border-radius: var(--r-md); }

/* reader modal */
.jr-overlay { position: fixed; inset: 0; z-index: 2000; }
.jr-backdrop { position: absolute; inset: 0; background: rgba(10,16,26,.72); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); animation: jrFade .25s ease; }
@keyframes jrFade { from { opacity: 0; } }
.jr-reader { position: absolute; inset: 24px; max-width: 860px; margin: 0 auto; background: #fff; border-radius: var(--r-xl); overflow-y: auto; box-shadow: 0 40px 100px rgba(0,0,0,.5); animation: jrUp .35s cubic-bezier(.2,.7,.3,1); }
@keyframes jrUp { from { opacity: 0; transform: translateY(30px); } }
.jr-close { position: absolute; top: 16px; inset-inline-end: 16px; z-index: 3; width: 42px; height: 42px; border-radius: 50%; background: rgba(14,27,46,.55); color: #fff; border: 0; cursor: pointer; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); display: flex; align-items: center; justify-content: center; transition: .2s; }
.jr-close:hover { background: var(--orange); }
.jr-reader-top { position: relative; height: 340px; }
.jr-reader-top img { width: 100%; height: 100%; object-fit: cover; }
.jr-reader-veil { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,16,26,.1) 30%, rgba(10,16,26,.85) 100%); }
.jr-reader-head { position: absolute; inset-inline: 0; bottom: 0; padding: 26px 30px; }
.jr-cat { display: inline-flex; align-items: center; gap: 8px; background: var(--orange); color: #fff; font-size: var(--fs-11); font-weight: 800; letter-spacing: 1px; text-transform: uppercase; padding: 7px 14px; border-radius: var(--r-sm); margin-bottom: 12px; }
.jr-reader-head h2 { color: #fff; font-size: clamp(24px, 3.4vw, 36px); font-weight: 800; letter-spacing: -.5px; line-height: 1.18; }
.jr-reader-head .jr-meta { color: rgba(255,255,255,.8); margin-top: 12px; }
.jr-reader-head .jr-meta .ic-s { color: #D8F164; }
.jr-reader-body { padding: 28px 30px 34px; }
.jr-lead { color: var(--ink); font-size: var(--fs-18); font-weight: 600; line-height: 1.7; padding: 0 0 20px; border-bottom: 1px solid var(--line-2); margin-bottom: 20px; }
.jr-content { color: #33424f; font-size: var(--fs-15); line-height: 1.9; }
.jr-content p { margin-bottom: 16px; }
.jr-tags { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 24px; }
.jr-reader-actions { display: flex; gap: 10px; margin-top: 26px; padding-top: 22px; border-top: 1px solid var(--line-2); }

@media (max-width: 980px) {
  .jr-hero-grid { grid-template-columns: 1fr; gap: 32px; }
  .jr-lead { min-height: 380px; }
  .jr-feat-grid, .jr-grid { grid-template-columns: repeat(2, 1fr); }
  .jr-guide { grid-template-columns: 1fr; justify-items: center; text-align: center; }
  .jr-guide-copy p { margin-inline: auto; }
  .jr-guide-facts { justify-content: center; }
  .jr-contribute-grid { grid-template-columns: 1fr; }
  .jr-reader { inset: 12px; }
  .jr-reader-top { height: 260px; }
}
@media (max-width: 620px) {
  .jr-feat-grid, .jr-grid { grid-template-columns: 1fr; }
  .jr-form-grid { grid-template-columns: 1fr; }
  .jr-form-grid .f-group:nth-child(3), .jr-form-grid .f-group:nth-child(5) { grid-column: auto; }
  .jr-hero { padding: 44px 0 50px; }
  .jr-reader-head { padding: 20px; }
  .jr-reader-body { padding: 20px; }
}

/* ============ PROJECTS MARKETPLACE + PROJECT DETAIL (brand redesign) ============
   Companion styles for assets/js/modules/projects-invest.js. Layout/colour work is
   done with Tailwind utilities (brand palette configured in index.html); these rules
   cover the pieces utilities cannot express: dot-grid backdrop, snap scrollers,
   gallery crossfade, FAQ grid-rows accordion and range sliders. All spacing is
   logical (inset-inline / padding-inline) so the layout stays correct in RTL. */
.pm2 .container { position: relative; }
.pm2-dotgrid { background-image: radial-gradient(rgba(255,255,255,.14) 1px, transparent 1.6px); background-size: 26px 26px; }

/* ---- form controls ---- */
.pm2-lbl { display: block; font-size: var(--fs-11); font-weight: 700; color: var(--muted); margin-bottom: 4px; }
.pm2-inp { width: 100%; border: 1.5px solid var(--line-2); border-radius: var(--r); padding: 9px 12px; font-size: var(--fs-13); font-family: inherit; background: #fff; color: var(--ink); transition: border-color .2s, box-shadow .2s; }
.pm2-inp:focus { outline: 0; border-color: var(--orange); box-shadow: 0 0 0 4px var(--orange-ring); }
.pm2-inp::placeholder { color: var(--muted-2); }
textarea.pm2-inp { resize: vertical; min-height: 74px; }
.pm2-leadic { position: absolute; inset-inline-start: 10px; top: 50%; transform: translateY(-50%); color: var(--muted-2); pointer-events: none; }

/* ---- quick-filter pills ---- */
.pm2-pill { padding: 5px 11px; border-radius: 999px; border: 1px solid var(--line-2); background: #fff; color: var(--muted); font-weight: 700; cursor: pointer; transition: .2s; }
.pm2-pill:hover { border-color: var(--orange); color: var(--orange); }
.pm2-pill.on { background: var(--navy-900); border-color: var(--navy-900); color: #fff; }

/* ---- horizontal snap scrollers (carousel + thumbnails) ---- */
.pm2-track { scroll-snap-type: x mandatory; scrollbar-width: none; -ms-overflow-style: none; }
.pm2-track::-webkit-scrollbar { display: none; }
.pm2-slide { scroll-snap-align: center; }

/* ---- dots (carousel + gallery) ---- */
.pm2-dot { width: 7px; height: 7px; border-radius: 999px; background: rgba(255,255,255,.45); border: 0; cursor: pointer; transition: .25s; padding: 0; }
.pm2-dot.on { width: 20px; background: var(--orange); }

/* ---- detail gallery ---- */
.pm2-gimg { opacity: 0; }
.pm2-gimg.on { opacity: 1; }
.pm2-gnav { position: absolute; top: 50%; transform: translateY(-50%); z-index: 10; width: 34px; height: 34px; border-radius: var(--r-md); display: flex; align-items: center; justify-content: center; background: rgba(10,20,32,.55); color: #fff; border: 1px solid rgba(255,255,255,.16); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); cursor: pointer; transition: .2s; }
.pm2-gnav:hover { background: var(--orange); border-color: var(--orange); }
.pm2-gthumb { opacity: .6; transition: .2s; }
.pm2-gthumb:hover { opacity: 1; }
.pm2-gthumb.on { opacity: 1; border-color: var(--orange) !important; }

/* ---- FAQ accordion (grid-rows trick: animatable height) ---- */
.pm2-faqq { transition: background .2s; }
.pm2-faqq:hover { background: var(--cream); }
.pm2-faqa { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .28s ease; }
.pm2-faq.open .pm2-faqa { grid-template-rows: 1fr; }
.pm2-faqa > * { overflow: hidden; min-height: 0; }   /* no padding here: padding would keep the 0fr track open */
.pm2-chev { color: var(--orange); flex: none; transition: transform .28s; }
.pm2-faq.open .pm2-chev { transform: rotate(180deg); }

/* ---- range sliders (installment calculator) ---- */
.pm2-range { -webkit-appearance: none; appearance: none; width: 100%; height: 8px; border-radius: 999px; background: var(--cream-2); outline: none; cursor: pointer; }
.pm2-range::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 20px; height: 20px; border-radius: 50%; background: var(--orange); border: 4px solid #fff; box-shadow: 0 4px 12px rgba(242,107,29,.45); cursor: pointer; }
.pm2-range::-moz-range-thumb { width: 20px; height: 20px; border-radius: 50%; background: var(--orange); border: 4px solid #fff; box-shadow: 0 4px 12px rgba(242,107,29,.45); cursor: pointer; }
.pm2-rangeout { color: var(--orange); font-weight: 800; }




.ht-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr)); }
@media (max-width: 760px) {
}

@media (max-width: 760px) {
}

/* ============ TOURS (featured strip) ============ */
@media (max-width: 1000px) { .tr-slide { flex-basis: calc((100% - 18px) / 2); } }
@media (max-width: 680px) { .tr-slide { flex-basis: 100%; height: 300px; } .tr-sprev { inset-inline-start: 0; } .tr-snext { inset-inline-end: 0; } }


/* ============ CAR RENTAL — DriveX-style landing (KoorPlus branding) ============ */
.crh-hero { position: relative; overflow: visible; background: linear-gradient(90deg, #eef4f9 0%, #d8e7f0 42%, #b3d0df 100%); border-radius: 0 0 20px 20px; padding: 46px 0 0; }
.crh-bg { position: absolute; inset: 0; background-size: cover; background-position: center; opacity: .55; }
.crh-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(255,255,255,.94) 0%, rgba(255,255,255,.82) 34%, rgba(255,255,255,.15) 70%); border-radius: 0 0 20px 20px; }
.crh-hero .container { position: relative; z-index: 2; }
.crh-content { position: relative; padding-top: 18px; padding-bottom: 96px; max-width: 560px; }
.crh-eyebrow { display: inline-flex; align-items: center; gap: 8px; font-size: var(--fs-12); font-weight: 800; letter-spacing: 2px; text-transform: uppercase; color: var(--orange); margin-bottom: 12px; }
.crh-content h1 { font-size: clamp(34px, 4.6vw, 52px); line-height: 1.06; margin: 0; font-weight: 850; letter-spacing: -1.6px; color: var(--navy-900); }
.crh-content h1 em { font-style: normal; color: var(--orange); }
.crh-content p { font-size: var(--fs-14); line-height: 1.6; color: #55606c; margin: 16px 0 20px; max-width: 420px; }
.crh-perks { display: flex; gap: 24px; flex-wrap: wrap; }
.crh-perk { display: flex; gap: 8px; align-items: flex-start; }
.crh-perk-ic { width: 22px; height: 22px; color: var(--orange); flex: none; }
.crh-perk b { display: block; color: var(--navy-900); font-size: var(--fs-13); margin-bottom: 2px; }
.crh-perk span { color: #6b7681; font-size: var(--fs-12); }

.crh-searchbox { position: relative; margin-top: -66px; background: #fff; border: 1px solid #e3e6ea; border-radius: var(--r-lg); box-shadow: 0 18px 44px rgba(10,20,35,.16); z-index: 5; padding: 0 16px 16px; }
.crh-tabs { height: 46px; display: flex; align-items: center; gap: 24px; border-bottom: 1px solid #eef0f3; }
.crh-tab { font-size: var(--fs-13); font-weight: 700; cursor: pointer; height: 46px; display: flex; align-items: center; gap: 8px; position: relative; background: none; border: 0; color: #6b7681; font-family: inherit; transition: .2s; }
.crh-tab .ic-s { width: 15px; height: 15px; }
.crh-tab:hover { color: var(--navy-900); }
.crh-tab.active { color: var(--navy-900); }
.crh-tab.active::after { content: ""; position: absolute; bottom: -1px; left: 0; right: 0; height: 2.5px; background: var(--orange); border-radius: 2px; }
.crh-fields { display: grid; grid-template-columns: 1.5fr 1fr 1fr 150px; gap: 10px; margin-top: 14px; }
.crh-field { border: 1.5px solid #e7eaee; border-radius: var(--r-md); padding: 8px 12px; height: 54px; background: #fff; display: flex; flex-direction: column; justify-content: center; gap: 4px; transition: .2s; }
.crh-field:focus-within { border-color: var(--orange); box-shadow: 0 0 0 4px var(--orange-ring); }
.crh-field label { display: block; font-size: var(--fs-11); color: var(--muted); font-weight: 700; text-transform: uppercase; letter-spacing: .5px; }
.crh-field input { border: 0; outline: 0; width: 100%; font-size: var(--fs-14); color: var(--navy-900); background: transparent; font-family: inherit; font-weight: 600; padding: 0; }
.crh-search-btn { border: 0; border-radius: var(--r-md); background: var(--orange); color: #fff; font-weight: 800; font-size: var(--fs-14); cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 8px; font-family: inherit; box-shadow: 0 10px 24px rgba(242,107,29,.38); transition: .25s; }
.crh-search-btn:hover { background: var(--navy-900); }

.crh-sec { padding-top: 56px; }
.crh-cats { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 12px; }
.cr-cat { display: flex; flex-direction: column; gap: 8px; background: #fff; border: 1px solid #eceef1; border-radius: var(--r-m2); padding: 18px 16px; cursor: pointer; text-align: start; transition: .3s; font-family: inherit; box-shadow: 0 2px 8px rgba(0,0,0,.02); }
.cr-cat:hover { transform: translateY(-5px); border-color: rgba(242,107,29,.4); box-shadow: 0 16px 34px rgba(10,20,35,.12); }
.cr-cat-ic { width: 46px; height: 46px; border-radius: var(--r); background: var(--orange-soft); color: var(--orange); display: flex; align-items: center; justify-content: center; margin-bottom: 4px; }
.cr-cat-ic .ic-s { width: 22px; height: 22px; }
.cr-cat-name { font-size: var(--fs-15); font-weight: 800; color: var(--navy-900); }
.cr-cat-specs { display: flex; align-items: center; gap: 6px; font-size: var(--fs-12); color: var(--muted); }
.cr-cat-specs .ic-s { width: 13px; height: 13px; color: var(--orange); }
.cr-cat-price { font-size: var(--fs-12); color: var(--muted); }
.cr-cat-price b { color: var(--orange); font-size: var(--fs-16); }

.crh-promos { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 20px; }
.crh-promo { height: 150px; border-radius: var(--r-m2); overflow: hidden; position: relative; color: #fff; }
.crh-promo-bg { position: absolute; inset: 0; background-size: cover; background-position: center; }
.crh-promo::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(10,20,35,.85), rgba(10,20,35,.25)); z-index: 1; }
.crh-promo-light::before { background: linear-gradient(90deg, rgba(255,255,255,.95) 0%, rgba(255,255,255,.78) 52%, rgba(255,255,255,.1)); }
.crh-promo-body { position: relative; z-index: 2; padding: 20px 22px; display: flex; flex-direction: column; align-items: flex-start; height: 100%; justify-content: center; }
.crh-promo small { font-size: var(--fs-11); font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--orange); }
.crh-promo-light small { color: var(--orange); }
.crh-promo h2 { font-size: var(--fs-24); margin: 3px 0 6px; font-weight: 800; color: #fff; }
.crh-promo-light h2 { color: var(--navy-900); }
.crh-promo h2 em { font-style: normal; color: var(--orange); }
.crh-promo p { font-size: var(--fs-12); margin: 0 0 12px; color: rgba(255,255,255,.82); }
.crh-promo-light p { color: #55606c; }
.crh-promo-btn { font-size: var(--fs-12); background: var(--orange); color: #fff; border: 0; border-radius: var(--r-sm); padding: 9px 16px; font-weight: 800; cursor: pointer; font-family: inherit; transition: .25s; }
.crh-promo-btn:hover { background: #fff; color: var(--navy-900); }
.crh-promo-light .crh-promo-btn { background: var(--navy-900); color: #fff; }
.crh-promo-light .crh-promo-btn:hover { background: var(--orange); color: #fff; }


.crh-steps { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
.crh-step { display: flex; align-items: center; gap: 10px; }
.crh-step-ic { width: 42px; height: 42px; border-radius: 50%; background: var(--orange-soft); color: var(--orange); display: flex; align-items: center; justify-content: center; flex: none; }
.crh-step-ic .ic-s { width: 19px; height: 19px; }
.crh-step b { font-size: var(--fs-13); display: block; color: var(--navy-900); }
.crh-step span { font-size: var(--fs-11); color: var(--muted); line-height: 1.35; }

.crh-reviews { display: grid; grid-template-columns: repeat(3, 1fr) 1.5fr; gap: 12px; }
.crh-review { border: 1px solid #eceef1; border-radius: var(--r-m2); padding: 16px; background: #fff; }
.crh-person { display: flex; gap: 8px; align-items: center; margin-bottom: 10px; }
.crh-person img { width: 36px; height: 36px; border-radius: 50%; object-fit: cover; }
.crh-stars { color: var(--orange); font-size: var(--fs-12); letter-spacing: 1px; }
.crh-person b { font-size: var(--fs-12); color: var(--navy-900); }
.crh-review p { font-size: var(--fs-12); color: #66717c; line-height: 1.5; margin: 0 0 8px; }
.crh-review small { font-size: var(--fs-11); font-weight: 700; color: var(--navy-900); }
.crh-app { background: var(--navy-900); color: #fff; border-radius: var(--r-m2); padding: 20px; position: relative; overflow: hidden; min-height: 100%; display: flex; flex-direction: column; justify-content: center; }
.crh-app-bg { position: absolute; inset-inline-end: -20px; top: 0; width: 55%; height: 100%; background-size: cover; background-position: center; opacity: .28; }
.crh-app-body { position: relative; z-index: 1; }
.crh-app h2 { font-size: var(--fs-18); margin: 0 0 6px; font-weight: 800; }
.crh-app p { font-size: var(--fs-12); line-height: 1.4; color: rgba(255,255,255,.75); max-width: 55%; margin: 0 0 14px; }
.crh-store { display: flex; gap: 8px; flex-wrap: wrap; }
.crh-store span { display: inline-flex; align-items: center; gap: 6px; font-size: var(--fs-11); border: 1px solid rgba(255,255,255,.3); border-radius: var(--r-sm); padding: 8px 12px; font-weight: 700; }
.crh-store .ic-s { width: 14px; height: 14px; color: var(--orange); }

@media (max-width: 980px) {
  .crh-content { padding-bottom: 60px; max-width: 100%; }
  .crh-searchbox { margin-top: 0; }
  .crh-fields { grid-template-columns: repeat(2, 1fr); }
  .crh-cats { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .crh-steps { grid-template-columns: repeat(3, 1fr); }
  .crh-reviews { grid-template-columns: repeat(2, 1fr); }
  .crh-app { grid-column: span 2; min-height: 120px; }
}
@media (max-width: 620px) {
  .crh-hero { border-radius: 0 0 14px 14px; }
  .crh-content { padding-top: 8px; }
  .crh-content h1 { font-size: var(--fs-32); }
  .crh-fields { grid-template-columns: 1fr; }
  .crh-cats { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .crh-promos { grid-template-columns: 1fr; }
  .crh-steps { grid-template-columns: 1fr 1fr; }
  .crh-reviews { grid-template-columns: 1fr; }
  .crh-app { grid-column: auto; }
  .crh-tabs { gap: 16px; }
}

/* ============ CAR DEAL / DETAILS PAGE ============ */
.cd-top{background:var(--navy-900);color:#fff;padding:22px 0 26px}
.cd-back{display:inline-flex;align-items:center;gap:6px;color:#B8C6D6;font-size:var(--fs-13);font-weight:700;margin-bottom:16px}
.cd-back:hover{color:var(--orange)}
.cd-back .ic{width:var(--ic-sm);height:var(--ic-sm)}
.cd-toprow{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap}
.cd-toprow h1{color:#fff;font-size:var(--fs-30);font-weight:850;letter-spacing:-.5px;margin:0}
.cd-steps{display:flex;align-items:center;gap:6px}
.cd-step{display:flex;align-items:center;gap:8px;font-size:var(--fs-12);font-weight:700;color:#8AA0B5}
.cd-step span{width:var(--ic-xl);height:var(--ic-xl);border-radius:50%;border:1px solid #35506E;display:flex;align-items:center;justify-content:center;font-size:var(--fs-11);font-weight:800}
.cd-step::after{content:"";width:22px;height:2px;background:#22384F;border-radius:2px;margin-inline-start:6px}
.cd-step:last-child::after{display:none}
.cd-step.on{color:#fff}
.cd-step.on span{background:var(--orange);border-color:var(--orange);color:#fff}
.cd-step.on::after{background:var(--orange)}

.cd-sec{padding-top:30px}
.cd-grid{display:grid;grid-template-columns:1fr 360px;gap:24px;align-items:start}
.cd-main{display:flex;flex-direction:column;gap:16px;min-width:0}
.cd-side{position:sticky;top:90px;display:flex;flex-direction:column;gap:16px}

.cd-banner{display:flex;align-items:center;gap:12px;background:linear-gradient(90deg,var(--green-soft),#fff);border-inline-start:4px solid var(--green);border-radius:var(--r-m2);padding:16px 18px;box-shadow:var(--sh-sm)}
.cd-banner-ic{width:40px;height:40px;border-radius:var(--r);background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;flex:none;padding:10px}
.cd-banner b{display:block;font-size:var(--fs-14)}
.cd-banner span{font-size:var(--fs-12);color:var(--muted)}
.cd-banner-tag{margin-inline-start:auto}

.cd-car{display:flex;gap:20px}
.cd-car-img{position:relative;width:250px;flex:none;background:linear-gradient(180deg,#f4f6f8,#eef1f4);border-radius:var(--r);border:1px solid var(--line-2);display:flex;align-items:center;justify-content:center;padding:14px}
.cd-car-img img{width:100%;aspect-ratio:4/3;object-fit:contain}
.cd-class{position:absolute;top:8px;inset-inline-start:8px;background:var(--navy-900);color:var(--orange);font-size:var(--fs-10);font-weight:800;padding:4px 8px;border-radius:var(--r-xs);letter-spacing:.5px}
.cd-car-body{flex:1;display:flex;flex-direction:column;gap:12px;min-width:0}
.cd-car-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.cd-car-head h2{font-size:var(--fs-22);margin:0}
.cd-car-sub{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:var(--fs-13);margin-top:6px;flex-wrap:wrap}
.cd-car-sub .ic{color:var(--orange);width:var(--ic-sm);height:var(--ic-sm)}
.cd-dot{color:var(--line-2)}
.cd-verified{display:inline-flex;align-items:center;gap:6px;background:var(--orange-soft);border:1px solid #F9D3B8;color:var(--orange-700);padding:6px 11px;border-radius:var(--r-md);font-size:var(--fs-12);font-weight:800;white-space:nowrap}
.cd-verified .ic{width:var(--ic-sm);height:var(--ic-sm)}
.cd-feats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.cd-feat{display:flex;align-items:center;gap:8px;padding:9px 11px;border-radius:var(--r-md);background:#f7f9fb;border:1px solid var(--line-2);font-size:var(--fs-12);font-weight:600;color:var(--ink)}
.cd-feat-ic{width:30px;height:30px;border-radius:var(--r-sm);background:#fff;border:1px solid var(--line-2);display:flex;align-items:center;justify-content:center;color:var(--orange);flex:none}
.cd-feat-ic .ic{width:var(--ic-sm);height:var(--ic-sm)}
.cd-supplier{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line-2);padding-top:14px;flex-wrap:wrap}
.cd-supplier-left{display:flex;align-items:center;gap:10px}
.cd-brand-logo{background:var(--green);color:#fff;font-weight:900;font-style:italic;font-size:var(--fs-12);padding:6px 9px;border-radius:var(--r-sm);letter-spacing:.5px}
.cd-brand-logo em{color:var(--orange);font-style:normal}
.cd-score{width:30px;height:30px;border-radius:var(--r-md);background:var(--navy-900);color:var(--orange);font-weight:800;font-size:var(--fs-12);display:flex;align-items:center;justify-content:center;flex:none}
.cd-supplier-left b{font-size:var(--fs-12);display:block}
.cd-supplier-left span{font-size:var(--fs-11);color:var(--muted)}
.cd-terms{display:inline-flex;align-items:center;gap:6px;background:none;border:0;color:var(--orange);font-size:var(--fs-12);font-weight:700;cursor:pointer;font-family:inherit}
.cd-terms:hover{text-decoration:underline}
.cd-terms .ic{width:var(--ic-sm);height:var(--ic-sm)}

.cd-reco{display:flex;gap:16px;align-items:center}
.cd-reco-label{display:inline-block;font-size:var(--fs-10);font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--orange-700);background:var(--orange-soft);padding:3px 8px;border-radius:var(--r-xs);margin-bottom:8px}
.cd-reco h3{font-size:var(--fs-18);margin:0 0 6px}
.cd-reco p{font-size:var(--fs-13);color:var(--muted);margin:0;line-height:1.5}
.cd-reco-checks{display:grid;grid-template-columns:1fr 1fr;gap:8px;flex:1}
.cd-reco-checks div{display:flex;align-items:center;gap:8px;font-size:var(--fs-12);color:var(--ink);font-weight:600}
.cd-reco-checks .ic{width:var(--ic-md);height:var(--ic-md);background:var(--green-soft);color:var(--green);border-radius:50%;padding:3px;flex:none}
.cd-reco-key{position:relative;width:74px;height:74px;border-radius:var(--r-lg);background:linear-gradient(135deg,var(--orange-soft),#fff);border:1px solid #F5D6BE;display:flex;align-items:center;justify-content:center;flex:none}
.cd-reco-key > .ic{width:36px;height:36px;color:#fff;background:var(--orange);padding:8px;border-radius:var(--r-md);transform:rotate(-45deg)}
.cd-reco-key i{position:absolute;top:-6px;inset-inline-end:-6px;width:22px;height:22px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-style:normal}
.cd-reco-key i .ic{width:var(--ic-xs);height:var(--ic-xs);padding:0;background:none;color:#fff;transform:none}

.cd-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}
.cd-card-head h3{display:flex;align-items:center;gap:8px;font-size:var(--fs-16);margin:0}
.cd-card-head h3 .ic{color:var(--orange);width:17px;height:17px}
.cd-card-head > span{font-size:var(--fs-12);color:var(--muted)}
.cd-included{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cd-inc-item{display:flex;gap:10px;padding:10px 12px;border-radius:var(--r-md);background:#f7f9fb;border:1px solid var(--line-2)}
.cd-inc-ic{width:22px;height:22px;border-radius:50%;background:var(--green-soft);color:var(--green);display:flex;align-items:center;justify-content:center;flex:none;margin-top:1px}
.cd-inc-ic .ic{width:var(--ic-xs);height:var(--ic-xs)}
.cd-inc-item p{font-size:var(--fs-13);font-weight:700;color:var(--ink);margin:0}
.cd-inc-item span{font-size:var(--fs-11);color:var(--muted)}

.cd-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line-2);margin-bottom:14px;overflow-x:auto}
.cd-tab{display:inline-flex;align-items:center;gap:8px;padding:11px 14px;font-size:var(--fs-13);font-weight:700;color:var(--muted);background:none;border:0;border-bottom:2px solid transparent;cursor:pointer;font-family:inherit;white-space:nowrap}
.cd-tab .ic{width:var(--ic-sm);height:var(--ic-sm)}
.cd-tab.on{color:var(--orange);border-bottom-color:var(--orange)}
.cd-tabpane{display:none}
.cd-tabpane.on{display:block}
.cd-tabpane p{font-size:var(--fs-13);color:var(--muted);line-height:1.6;margin:0 0 12px}
.cd-tabpane ul{list-style:none;display:flex;flex-direction:column;gap:8px;padding:0;margin:0}
.cd-tabpane li{display:flex;align-items:center;gap:8px;font-size:var(--fs-13);color:var(--ink)}
.cd-tabpane li .ic{width:var(--ic-base);height:var(--ic-base);color:var(--green);flex:none}
.cd-note{display:inline-flex;align-items:center;gap:8px;background:var(--orange-soft);border:1px solid #F9D3B8;color:var(--orange-700);padding:9px 12px;border-radius:var(--r-md);font-size:var(--fs-12);font-weight:700}
.cd-note .ic{width:var(--ic-sm);height:var(--ic-sm);flex:none}
.cd-note2{padding:10px 12px;background:#f7f9fb;border:1px solid var(--line-2);border-radius:var(--r-md);font-size:var(--fs-12);color:var(--muted)}

.cd-tl{position:relative;padding-inline-start:18px;display:flex;flex-direction:column;gap:16px}
.cd-tl::before{content:"";position:absolute;inset-inline-start:5px;top:8px;bottom:8px;width:2px;background:linear-gradient(180deg,var(--orange),var(--line-2),var(--navy-900))}
.cd-tl-item{position:relative}
.cd-tl-dot{position:absolute;inset-inline-start:-18px;top:3px;width:var(--ic-xs);height:var(--ic-xs);border-radius:50%;background:#fff;border:2.5px solid var(--orange);box-sizing:border-box}
.cd-tl-dot.down{border-color:var(--navy-900)}
.cd-tl-item b{font-size:var(--fs-11);text-transform:uppercase;letter-spacing:.5px;color:var(--muted);display:block;margin-bottom:5px}
.cd-tl-item input{width:100%;border:1.5px solid var(--line-2);border-radius:var(--r-sm);padding:8px 10px;font-size:var(--fs-13);font-weight:600;background:#FBFCFE;margin-bottom:5px;color:var(--ink)}
.cd-tl-item span{font-size:var(--fs-12);color:var(--muted)}

.cd-cur{display:flex;background:var(--cream-2);padding:2px;border-radius:var(--r-sm)}
.cd-cur button{border:0;background:none;padding:5px 10px;font-size:var(--fs-11);font-weight:700;border-radius:var(--r-xs);color:var(--muted);cursor:pointer;font-family:inherit}
.cd-cur button.on{background:#fff;color:var(--navy-900);box-shadow:0 1px 4px rgba(0,0,0,.08)}
.cd-price-rows{display:flex;flex-direction:column;border-bottom:1px solid var(--line-2);padding-bottom:12px}
.cd-price-row{display:flex;justify-content:space-between;gap:10px;padding:6px 0;font-size:var(--fs-13);color:var(--muted)}
.cd-price-row i{font-style:normal}
.cd-price-row b{color:var(--navy-900)}
.cd-price-row .cd-inc{color:var(--green)}
.cd-total{display:flex;justify-content:space-between;align-items:center;padding:14px 0}
.cd-total > span{font-size:var(--fs-18);font-weight:800;color:var(--navy-900)}
.cd-total div{text-align:end}
.cd-total b{font-size:var(--fs-24);font-weight:900;color:var(--navy-900);display:block}
.cd-total div span{font-size:var(--fs-11);color:var(--muted);font-weight:500}
.cd-cta{width:100%;border:0;border-radius:var(--r);background:linear-gradient(90deg,var(--orange),var(--orange-600));color:#fff;font-weight:800;font-size:var(--fs-15);padding:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font-family:inherit;box-shadow:0 10px 24px rgba(242,107,29,.35);transition:.2s}
.cd-cta:hover{background:var(--navy-900)}
.cd-cta .ic{width:17px;height:17px}

.cd-bargain{display:flex;gap:12px;align-items:flex-start;padding:16px;border-radius:var(--r-m2);border:1px solid #CDE8D7;background:linear-gradient(135deg,var(--green-soft),#fff)}
.cd-bargain-ic{width:38px;height:38px;border-radius:var(--r);background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;flex:none;padding:9px}
.cd-bargain b{font-size:var(--fs-14);display:block;margin-bottom:4px}
.cd-bargain p{font-size:var(--fs-12);color:var(--muted);line-height:1.5;margin:0}

.cd-policies{overflow:hidden;padding:0}
.cd-pol-btn{width:100%;display:flex;align-items:center;gap:8px;padding:16px 18px;background:none;border:0;font-size:var(--fs-13);font-weight:700;color:var(--navy-900);cursor:pointer;font-family:inherit;text-align:start}
.cd-pol-btn .ic{width:var(--ic-base);height:var(--ic-base);color:var(--orange);flex:none}
.cd-pol-chev{margin-inline-start:auto;transition:.25s;display:inline-flex}
.cd-pol-chev .ic{width:var(--ic-base);height:var(--ic-base);color:var(--muted)}
.cd-pol-chev.open{transform:rotate(180deg)}
.cd-pol-body{padding:0 18px 16px;font-size:var(--fs-12);color:var(--muted);border-top:1px solid var(--line-2);padding-top:12px}
.cd-pol-body p{margin:0 0 8px}

@media(max-width:1100px){ .cd-grid{grid-template-columns:1fr} .cd-side{position:static} .cd-car{flex-direction:column} .cd-car-img{width:100%} }
@media(max-width:640px){ .cd-feats{grid-template-columns:1fr} .cd-reco{flex-direction:column;align-items:flex-start} .cd-reco-checks{grid-template-columns:1fr} .cd-included{grid-template-columns:1fr} .cd-toprow h1{font-size:var(--fs-24)} .cd-steps{width:100%;justify-content:space-between} .cd-step::after{width:10px} .cd-banner-tag{display:none} }

/* ============ CAR DEALER CONTACT (message form) ============ */
.cd-dealer-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.cd-dealer-info{display:flex;flex-direction:column;gap:16px}
.cd-dealer-office{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line-2);border-radius:var(--r);background:#f7f9fb}
.cd-dealer-office b{font-size:var(--fs-14)}
.cd-dealer-points{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.cd-dealer-points li{display:flex;align-items:center;gap:8px;font-size:var(--fs-13);color:var(--ink);font-weight:600}
.cd-dealer-points li .ic{width:var(--ic-sm);height:var(--ic-sm);color:var(--orange);flex:none}
.cd-dealer-form{display:flex;flex-direction:column;gap:12px}
.cd-dealer-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cd-dealer-form textarea{border:1.5px solid var(--line-2);border-radius:var(--r-md);padding:11px 13px;background:#FBFCFE;outline:none;transition:.15s;width:100%;font-family:inherit;font-size:var(--fs-13);resize:vertical}
.cd-dealer-form textarea:focus{border-color:var(--orange);box-shadow:0 0 0 4px var(--orange-ring)}
.cd-dealer .logo-c{width:46px;height:46px;border-radius:var(--r);background:var(--navy-900);color:var(--orange);font-weight:800;display:flex;align-items:center;justify-content:center;flex:none}
.cd-dealer .logo-c.sm{width:44px;height:44px}
.cd-dealer .cd-submit{width:100%}
.cd-submit{display:inline-flex;align-items:center;gap:10px;margin-top:20px;background:var(--orange);color:#fff;border:0;font-weight:700;font-size:var(--fs-14);padding:14px 26px;border-radius:999px;cursor:pointer;transition:.25s;font-family:inherit;box-shadow:0 12px 28px rgba(242,107,29,.35)}
.cd-submit:hover{background:var(--orange-600);transform:translateY(-2px)}
@media(max-width:900px){ .cd-dealer-row{grid-template-columns:1fr} .cd-dealer-fields{grid-template-columns:1fr} }

/* ============ TRAVEL & TOURS — Historical Afghanistan landing ============ */
.tv-hero{position:relative;background:var(--navy-900);color:#fff;overflow:hidden;padding:56px 0 120px}
.tv-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.42;mix-blend-mode:luminosity}
.tv-hero-ov{position:absolute;inset:0;background:linear-gradient(90deg,var(--navy-950) 0%,rgba(14,27,46,.85) 55%,rgba(14,27,46,.5) 100%)}
.tv-hero-in{position:relative;z-index:2}
.tv-hero-grid{display:grid;grid-template-columns:1fr;gap:40px;align-items:center}
.tv-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(19,37,60,.85);border:1px solid rgba(242,107,29,.45);font-size:var(--fs-11);font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--orange);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.tv-badge i{width:6px;height:6px;border-radius:50%;background:var(--orange)}
.tv-hero-copy h1{font-size:clamp(30px,4.4vw,52px);line-height:1.1;font-weight:850;letter-spacing:-1.5px;color:#fff;margin:20px 0 16px}
.tv-hero-copy h1 em{font-style:normal;background:linear-gradient(90deg,var(--orange),#FFC46B);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.tv-hero-copy p{font-size:var(--fs-15);line-height:1.7;color:#C4D1DF;max-width:540px}
.tv-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.tv-btn{display:inline-flex;align-items:center;gap:8px;background:var(--orange);color:#fff;font-weight:800;font-size:var(--fs-14);padding:14px 26px;border-radius:var(--r);border:0;cursor:pointer;text-decoration:none;box-shadow:0 10px 26px rgba(242,107,29,.4);transition:.25s;font-family:inherit}
.tv-btn:hover{background:var(--orange-600);transform:translateY(-2px)}
.tv-btn .ic{width:var(--ic-base);height:var(--ic-base)}
.tv-btn-ghost{background:rgba(19,37,60,.9);color:#DCE6F0;border:1px solid rgba(227,232,238,.2);box-shadow:none}
.tv-btn-ghost:hover{background:var(--navy-700)}
.tv-btn-ghost .ic{color:var(--orange)}
.tv-curve{position:absolute;bottom:-1px;left:0;width:100%;height:70px;background:var(--cream);clip-path:ellipse(58% 78% at 50% 100%);z-index:3}


/* search box */
.tv-search{position:relative;z-index:5;margin-top:-66px}
.tv-searchbox{background:#fff;border:1px solid #E8E0D3;border-radius:var(--r-lg);padding:14px;box-shadow:0 20px 50px rgba(10,20,35,.16)}
.tv-sfld{display:flex;align-items:center;gap:12px;padding:8px 14px;border:1.5px solid var(--line-2);border-radius:var(--r);background:#fff}
.tv-sic{width:40px;height:40px;border-radius:50%;background:var(--orange-soft);color:var(--orange);display:flex;align-items:center;justify-content:center;flex:none}
.tv-sic .ic{width:var(--ic-md);height:var(--ic-md)}
.tv-sfld label{display:block;font-size:var(--fs-11);font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}
.tv-sfld select,.tv-sfld input{width:100%;border:0;outline:0;background:transparent;font-size:var(--fs-14);font-weight:700;color:var(--navy-900);font-family:inherit;cursor:pointer}
.tv-searchbtn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:var(--h-xl);background:var(--orange);color:#fff;border:0;border-radius:var(--r);font-weight:800;font-size:var(--fs-14);cursor:pointer;font-family:inherit;box-shadow:0 10px 24px rgba(242,107,29,.38);transition:.25s}
.tv-searchbtn:hover{background:var(--navy-900)}
.tv-searchbtn .ic{width:var(--ic-sm);height:var(--ic-sm)}

/* features */
.tv-feats .container{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.tv-feat{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px solid rgba(232,224,211,.6);border-radius:var(--r-m2);transition:.25s}
.tv-feat:hover{background:#fff;box-shadow:var(--sh-sm);transform:translateY(-2px)}
.tv-feat-ic{width:50px;height:50px;border-radius:50%;background:var(--cream-2);border:1px solid var(--line);color:var(--orange);display:flex;align-items:center;justify-content:center;flex:none}
.tv-feat-ic .ic{width:22px;height:22px}
.tv-feat b{font-size:var(--fs-15);color:var(--navy-900);display:block;margin-bottom:3px}
.tv-feat p{font-size:var(--fs-12);color:var(--muted);line-height:1.45}

/* tours */
.tv-tours{padding-top:44px}
.tv-sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:26px;flex-wrap:wrap}
.tv-sec-head h2{font-size:clamp(22px,3vw,32px);font-weight:850;letter-spacing:-.5px}
.tv-sec-head h2 span{color:var(--orange)}
.tv-sec-head .sec-label{display:inline-flex;align-items:center;gap:6px}
.tv-sec-head-center{justify-content:center;text-align:center}
.tv-sec-head-center .sec-label{justify-content:center}
.tv-sec-head-center p{max-width:560px;margin:8px auto 0}
.tv-filters{display:flex;gap:8px}
.tv-fchip{padding:9px 18px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--muted);font-weight:700;font-size:var(--fs-13);cursor:pointer;font-family:inherit;transition:.2s}
.tv-fchip:hover{border-color:var(--orange);color:var(--orange)}
.tv-fchip.on{background:var(--orange);color:#fff;border-color:var(--orange)}
.tv-tours-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}

.tv-tour{background:#fff;border:1px solid var(--line-2);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;transition:.3s;box-shadow:var(--sh-sm)}
.tv-tour:hover{transform:translateY(-6px);box-shadow:var(--sh-lg)}
.tv-tour-media{position:relative;display:block;height:190px;overflow:hidden}
.tv-tour-media img{width:100%;height:100%;object-fit:cover;transition:.6s}
.tv-tour:hover .tv-tour-media img{transform:scale(1.09)}
.tv-tour-ov{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(10,20,32,.85))}
.tv-tour-rating{position:absolute;top:10px;inset-inline-start:10px;display:inline-flex;align-items:center;gap:4px;background:rgba(10,20,32,.7);color:#FFD27A;font-size:var(--fs-11);font-weight:800;padding:4px 9px;border-radius:999px;border:1px solid rgba(255,255,255,.18);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.tv-tour-rating .ic{width:11px;height:11px}
.tv-tour-fav{position:absolute;top:10px;inset-inline-end:10px;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.85);color:var(--navy-900);display:flex;align-items:center;justify-content:center;transition:.2s}
.tv-tour-fav .ic{width:var(--ic-sm);height:var(--ic-sm)}
.tv-tour-fav.on{color:var(--orange)}
.tv-tour-fav.on .ic{fill:var(--orange)}
.tv-tour-cap{position:absolute;bottom:0;inset-inline:0;padding:12px 14px;color:#fff}
.tv-tour-cap b{display:block;font-size:var(--fs-18);font-weight:800}
.tv-tour-cap i{display:flex;align-items:center;gap:6px;font-style:normal;font-size:var(--fs-11);color:#DCE6F0}
.tv-tour-cap i .ic{width:var(--ic-xs);height:var(--ic-xs);color:var(--orange)}
.tv-tour-body{padding:14px;display:flex;flex-direction:column;gap:11px;flex:1}
.tv-tour-meta{display:flex;justify-content:space-between;gap:8px;font-size:var(--fs-12);color:var(--muted);font-weight:600}
.tv-tour-meta span{display:inline-flex;align-items:center;gap:6px}
.tv-tour-meta .ic{width:var(--ic-xs);height:var(--ic-xs);color:var(--orange)}
.tv-tour-body p{font-size:var(--fs-12);color:var(--muted);line-height:1.5;flex:1}
.tv-tour-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line-2);padding-top:12px}
.tv-tour-foot i{display:block;font-style:normal;font-size:var(--fs-10);color:var(--muted-2);line-height:1}
.tv-tour-foot b{font-size:var(--fs-20);font-weight:900;color:var(--orange)}
.tv-book{border:0;background:var(--orange);color:#fff;font-weight:800;font-size:var(--fs-12);padding:9px 16px;border-radius:var(--r-md);cursor:pointer;font-family:inherit;transition:.2s}
.tv-book:hover{background:var(--navy-900)}
.tv-book-lg{font-size:var(--fs-14);padding:14px 24px;width:100%;box-shadow:0 10px 24px rgba(242,107,29,.4)}

/* umrah */
.tv-umrah{position:relative;border-radius:var(--r-xl);overflow:hidden;background:linear-gradient(90deg,var(--navy-950),var(--navy-900) 55%,var(--navy-800));color:#fff;padding:44px;display:grid;grid-template-columns:1.6fr .8fr;gap:32px;align-items:center;border:1px solid var(--navy-700)}
.tv-umrah-bg{position:absolute;inset:0;opacity:.08;background-image:url("data:image/svg+xml;utf8,<svg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'><g fill='none' fill-rule='evenodd'><g fill='%23FAF4EC' fill-opacity='0.6'><path d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/></g></g></svg>")}
.tv-umrah-copy{position:relative;z-index:2}
.tv-badge-gold{background:rgba(242,107,29,.18);border-color:rgba(242,107,29,.35)}
.tv-umrah-copy h2{font-size:clamp(22px,3vw,32px);font-weight:850;color:#fff;margin:14px 0 12px;line-height:1.2}
.tv-umrah-copy h2 em{font-style:normal;color:var(--orange)}
.tv-umrah-copy p{font-size:var(--fs-14);color:#C4D1DF;line-height:1.7;max-width:600px}
.tv-umrah-feats{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.tv-umrah-feats span{display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-12);color:#DCE6F0;font-weight:600}
.tv-umrah-feats .ic{width:var(--ic-sm);height:var(--ic-sm);color:var(--orange)}
.tv-umrah-price{position:relative;z-index:2;background:rgba(19,37,60,.85);border:1px solid rgba(39,71,107,.8);border-radius:var(--r-lg);padding:24px;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.tv-umrah-price span{display:block;font-size:var(--fs-11);text-transform:uppercase;letter-spacing:.8px;color:#8BA0B5}
.tv-umrah-price b{display:block;font-size:var(--fs-40);font-weight:900;color:var(--orange);margin:8px 0}
.tv-umrah-price i{display:block;font-style:normal;font-size:var(--fs-11);color:#B9CDDE;margin-bottom:16px}

/* historical */
.tv-hist-sec{background:var(--cream-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.tv-hist-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tv-hist{background:#fff;border:1px solid var(--line-2);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;transition:.3s;box-shadow:var(--sh-sm)}
.tv-hist:hover{transform:translateY(-6px);box-shadow:var(--sh-lg)}
.tv-hist-media{position:relative;height:190px;overflow:hidden}
.tv-hist-media img{width:100%;height:100%;object-fit:cover;transition:.6s}
.tv-hist:hover .tv-hist-media img{transform:scale(1.08)}
.tv-hist-ov{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(10,20,32,.88))}
.tv-hist-badge{position:absolute;top:10px;inset-inline-start:10px;font-size:var(--fs-10);font-weight:800;padding:5px 11px;border-radius:999px;color:#fff;letter-spacing:.4px}
.tv-hist-badge.orange{background:var(--orange)}
.tv-hist-badge.navy{background:rgba(14,27,46,.85);color:#E6EFF8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.tv-hist-badge.green{background:var(--green)}
.tv-hist-cap{position:absolute;bottom:0;inset-inline:0;padding:12px 14px;color:#fff}
.tv-hist-cap span{display:block;font-size:var(--fs-11);color:#C4D1DF;text-transform:uppercase;letter-spacing:.5px}
.tv-hist-cap b{font-size:var(--fs-16);font-weight:800}
.tv-hist-body{padding:14px;display:flex;flex-direction:column;gap:12px;flex:1}
.tv-hist-body p{font-size:var(--fs-12);color:var(--muted);line-height:1.55;flex:1}
.tv-hist-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--line-2);padding-top:12px}
.tv-hist-foot span{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-11);color:var(--navy-800);font-weight:600}
.tv-hist-foot .ic{width:var(--ic-xs);height:var(--ic-xs);color:var(--orange)}
.tv-hist-more{display:inline-flex;align-items:center;gap:6px;border:0;background:none;color:var(--orange);font-weight:800;font-size:var(--fs-12);cursor:pointer;font-family:inherit;white-space:nowrap}
.tv-hist-more:hover{text-decoration:underline}
.tv-hist-more .ic{width:var(--ic-xs);height:var(--ic-xs)}

/* guides */
.tv-guides-grid{display:grid;grid-template-columns:.9fr 1fr 1fr;gap:20px;align-items:stretch}
.tv-guides-copy h2{font-size:clamp(22px,2.6vw,30px);font-weight:850;margin:10px 0 12px}
.tv-guides-copy h2 span{color:var(--orange)}
.tv-guides-copy p{font-size:var(--fs-13);margin-bottom:18px;line-height:1.65}
.tv-guide{background:#fff;border:1px solid var(--line-2);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;cursor:pointer;transition:.3s;box-shadow:var(--sh-sm)}
.tv-guide:hover{transform:translateY(-5px);box-shadow:var(--sh)}
.tv-guide-media{position:relative;height:150px;overflow:hidden}
.tv-guide-media img{width:100%;height:100%;object-fit:cover;transition:.5s}
.tv-guide:hover .tv-guide-media img{transform:scale(1.06)}
.tv-guide-media span{position:absolute;bottom:10px;inset-inline-start:10px;background:rgba(10,20,32,.82);color:#fff;font-size:var(--fs-10);font-weight:700;padding:4px 9px;border-radius:var(--r-xs)}
.tv-guide-body{padding:14px;display:flex;flex-direction:column;gap:8px;flex:1}
.tv-guide-body b{font-size:var(--fs-14);color:var(--navy-900);line-height:1.35}
.tv-guide:hover .tv-guide-body b{color:var(--orange)}
.tv-guide-body p{font-size:var(--fs-12);color:var(--muted);line-height:1.5;flex:1}
.tv-guide-read{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-11);color:var(--muted-2)}
.tv-guide-read .ic{width:var(--ic-xs);height:var(--ic-xs)}

/* offer */
.tv-offer{padding-top:20px}
.tv-offer-box{position:relative;border-radius:var(--r-xl);overflow:hidden;background:var(--navy-900);color:#fff;padding:48px}
.tv-offer-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.28;mix-blend-mode:overlay}
.tv-offer-ov{position:absolute;inset:0;background:linear-gradient(90deg,var(--navy-950),rgba(14,27,46,.55))}
.tv-offer-body{position:relative;z-index:2;max-width:560px}
.tv-offer-body>span{display:inline-flex;align-items:center;gap:6px;color:var(--orange);font-size:var(--fs-11);font-weight:800;letter-spacing:1.4px;text-transform:uppercase}
.tv-offer-body>span .ic{width:var(--ic-sm);height:var(--ic-sm)}
.tv-offer-body h2{font-size:clamp(24px,3vw,34px);font-weight:900;color:#fff;margin:12px 0 10px;line-height:1.15}
.tv-offer-body h2 em{font-style:normal;color:var(--orange)}
.tv-offer-body p{font-size:var(--fs-13);color:#C4D1DF;line-height:1.6;margin-bottom:20px}

/* stats */
.tv-stats .container{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;text-align:center}
.tv-stat b{display:block;font-size:clamp(26px,3.4vw,38px);font-weight:900;color:var(--navy-900)}
.tv-stat span{font-size:var(--fs-12);color:var(--muted);font-weight:600}
.tv-stat-orange b{color:var(--orange)}

/* modal helpers */
.tv-modal-price{margin-top:6px;padding:12px 14px;border-radius:var(--r-md);background:var(--orange-soft);border:1px solid rgba(242,107,29,.2);font-size:var(--fs-13);font-weight:700;color:var(--navy-900)}
.tv-modal-price b{color:var(--orange);font-size:var(--fs-16)}
.tv-hist-modal .tv-hist-loc{display:flex;align-items:center;gap:8px;font-size:var(--fs-13);color:var(--muted);margin-bottom:12px}
.tv-hist-modal .tv-hist-loc .ic{width:var(--ic-sm);height:var(--ic-sm);color:var(--orange)}
.tv-hist-modal .tv-hist-spec{display:flex;gap:8px;align-items:flex-start;padding:12px 14px;border-radius:var(--r-md);background:var(--cream);border:1px solid var(--line);font-size:var(--fs-13);color:var(--navy-800);font-weight:600;margin-bottom:12px}
.tv-hist-modal .tv-hist-spec .ic{width:var(--ic-sm);height:var(--ic-sm);color:var(--orange);flex:none;margin-top:1px}
.tv-hist-modal .tv-hist-spec span{color:var(--muted);font-weight:400}
.tv-hist-modal p.muted{font-size:var(--fs-13);line-height:1.7}

@media(max-width:1000px){
  .tv-feats .container{grid-template-columns:1fr 1fr}
  .tv-tours-grid{grid-template-columns:1fr 1fr}
  .tv-hist-grid{grid-template-columns:1fr 1fr}
  .tv-guides-grid{grid-template-columns:1fr}
  .tv-umrah{grid-template-columns:1fr;padding:30px}
  .tv-stats .container{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .tv-hero{padding-bottom:90px}
  .tv-feats .container{grid-template-columns:1fr}
  .tv-tours-grid{grid-template-columns:1fr}
  .tv-hist-grid{grid-template-columns:1fr}
  .tv-ctas{flex-direction:column}
  .tv-btn{justify-content:center}
  .tv-umrah{padding:22px}
}

/* ============ TRAVEL — hotels section + 3-tab search ============ */
.tv-searchbox{overflow-x:clip}
.tv-tabs{display:flex;align-items:center;gap:10px;padding-bottom:14px;margin-bottom:4px;border-bottom:1px solid var(--line-2);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.tv-tab{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;border:0;background:var(--cream-2);color:var(--navy-800);font-weight:700;font-size:var(--fs-13);cursor:pointer;font-family:inherit;transition:.2s}
.tv-tab .ic{width:var(--ic-sm);height:var(--ic-sm)}
.tv-tab:hover{background:var(--orange-soft);color:var(--orange)}
.tv-tab.on{background:var(--orange);color:#fff}
.tv-searchform{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 150px;gap:10px;margin-top:14px}
.tv-searchbox{padding:16px}

.tv-hotels-sec{background:var(--cream-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
/* ---------- home articles section ---------- */
.art-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.art-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line-2);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-sm);transition:transform .3s,box-shadow .3s;text-decoration:none}
.art-card:hover{transform:translateY(-6px);box-shadow:var(--sh-lg)}
.art-media{position:relative;height:200px;overflow:hidden}
.art-media img{width:100%;height:100%;object-fit:cover;transition:transform .55s}
.art-card:hover .art-media img{transform:scale(1.07)}
.art-cat{position:absolute;top:12px;inset-inline-start:12px;background:var(--orange);color:#fff;font-size:var(--fs-10);font-weight:800;letter-spacing:.6px;text-transform:uppercase;padding:5px 11px;border-radius:999px}
.art-read{position:absolute;top:12px;inset-inline-end:12px;background:rgba(14,27,46,.82);color:#E6EFF8;font-size:var(--fs-10);font-weight:700;padding:5px 10px;border-radius:999px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.art-body{padding:18px;display:flex;flex-direction:column;gap:10px;flex:1}
.art-body h3{font-size:var(--fs-16);font-weight:800;color:var(--navy-900);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.art-body p{font-size:var(--fs-13);color:var(--muted);line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;flex:1}
.art-foot{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line-2);padding-top:14px}
.art-av{width:38px;height:38px;border-radius:50%;background:var(--navy-900);color:var(--orange);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:var(--fs-12);flex:none}
.art-who{display:flex;flex-direction:column;min-width:0}
.art-who b{font-size:var(--fs-12);color:var(--navy-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.art-who span{font-size:var(--fs-11);color:var(--muted-2)}
.art-go{margin-inline-start:auto;width:36px;height:36px;border-radius:50%;background:var(--cream);color:var(--navy-800);display:flex;align-items:center;justify-content:center;transition:.3s;flex:none}
.art-card:hover .art-go{background:var(--orange);color:#fff}
@media(max-width:1000px){.art-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.art-grid{grid-template-columns:1fr}}
/* ---------- registered hotels directory page ---------- */
.ht-hero{position:relative;height:520px;background:var(--navy-950);overflow:hidden}
.ht-slides{position:absolute;inset:0}
.ht-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transform:scale(1.06);transition:opacity .9s ease,transform 1.4s ease;pointer-events:none}
.ht-slide.on{opacity:1;transform:scale(1);pointer-events:auto}
.ht-slide-ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,14,24,.25) 0%,rgba(8,14,24,.55) 55%,rgba(8,14,24,.92) 100%)}
.ht-slide-in{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:84px;color:#fff}
.ht-badge{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;background:rgba(242,107,29,.92);color:#fff;font-size:var(--fs-11);font-weight:800;letter-spacing:.8px;text-transform:uppercase;padding:7px 14px;border-radius:999px;box-shadow:0 8px 22px rgba(242,107,29,.4)}
.ht-slide-in h1{color:#fff;font-size:clamp(28px,4vw,48px);font-weight:850;letter-spacing:-1px;margin:14px 0 8px;text-shadow:0 4px 24px rgba(0,0,0,.45)}
.ht-loc{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:#C4D1DF;font-size:var(--fs-13)}
.ht-loc .ic{width:var(--ic-sm);height:var(--ic-sm);color:var(--orange)}
.ht-rate{display:inline-flex;align-items:center;gap:5px;background:rgba(14,27,46,.8);color:#FFD27A;font-weight:800;font-size:var(--fs-12);padding:4px 10px;border-radius:999px}
.ht-rate .ic{width:11px;height:11px}
.ht-slide-in p{max-width:640px;margin-top:10px;color:#D5DFEA;font-size:var(--fs-14);line-height:1.7}
.ht-ctas{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:18px}
.ht-price{font-size:var(--fs-18);font-weight:800;color:#fff;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);padding:8px 16px;border-radius:var(--r);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.ht-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(14,27,46,.55);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.25s;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.ht-arrow:hover{background:var(--orange);border-color:var(--orange)}
.ht-prev{left:22px}.ht-next{right:22px}
.ht-dots{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);z-index:3;display:flex;gap:2px}
.ht-find{position:relative;z-index:5;margin-top:-58px}
.ht-panel{background:#fff;border:1px solid #E8E0D3;border-radius:var(--r-lg);padding:18px;box-shadow:0 20px 50px rgba(10,20,35,.16)}
.ht-panel-head{display:flex;align-items:center;gap:10px;padding-bottom:12px;margin-bottom:14px;border-bottom:1px solid var(--line-2)}
.ht-panel-head .ic{width:var(--ic-md);height:var(--ic-md);color:var(--orange)}
.ht-panel-head b{font-size:var(--fs-16);color:var(--navy-900)}
.ht-count{margin-inline-start:auto;background:var(--orange-soft);color:var(--orange);font-weight:800;font-size:var(--fs-12);padding:5px 12px;border-radius:999px}
.ht-fields{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.ht-filters{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:10px;padding-top:14px;border-top:1px dashed var(--line-2)}
.ht-l{display:flex;flex-direction:column;gap:6px;min-width:0}
.ht-l>span{font-size:var(--fs-11);font-weight:800;letter-spacing:.4px;text-transform:uppercase;color:var(--muted)}
.ht-l select,.ht-l input,.ht-l textarea{width:100%;border:1.5px solid var(--line-2);border-radius:var(--r-sm);padding:10px 12px;font-size:var(--fs-13);font-family:inherit;background:#fff;color:var(--navy-900)}
.ht-l select:focus,.ht-l input:focus,.ht-l textarea:focus{outline:2px solid var(--orange-soft);border-color:var(--orange)}
.ht-list-sec{padding-top:34px}
.ht-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ht-msg-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:40px;align-items:start}
.ht-info-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}
.ht-ic{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:var(--r-md);padding:14px}
.ht-ic .ic{width:var(--ic-lg);height:var(--ic-lg);color:var(--orange);flex:none}
.ht-ic b{display:block;color:#fff;font-size:var(--fs-13)}
.ht-ic span{color:#8FA1B4;font-size:var(--fs-12)}
.ht-trust{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.ht-trust span{display:inline-flex;align-items:center;gap:6px;background:rgba(46,158,99,.16);border:1px solid rgba(46,158,99,.4);color:#9FE0BC;font-size:var(--fs-11);font-weight:700;padding:6px 12px;border-radius:999px}
.ht-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:var(--r-lg);padding:22px}
.ht-form .ht-l>span{color:#B9CDDE}
.ht-form select,.ht-form input,.ht-form textarea{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);color:#fff;border-radius:var(--r-sm)}
.ht-form select option{color:var(--navy-900);background:#fff}
.ht-form ::placeholder{color:rgba(255,255,255,.4)}
.ht-full{grid-column:1/-1}
.ht-form .tv-btn{justify-content:center}
.ht-sent{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:30px 10px}
.ht-sent .ic{width:52px;height:52px;color:var(--green)}
.ht-sent b{color:#fff;font-size:var(--fs-20)}
.ht-sent p{color:#B9C6D4;font-size:var(--fs-13)}
@media(max-width:1000px){
  .ht-hero{height:460px}
  .ht-fields{grid-template-columns:1fr 1fr}
  .ht-filters{grid-template-columns:1fr 1fr 1fr}
  .ht-grid{grid-template-columns:1fr 1fr}
  .ht-msg-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .ht-hero{height:430px}
  .ht-slide-in{padding-bottom:70px}
  .ht-arrow{width:38px;height:38px}
  .ht-prev{left:10px}.ht-next{right:10px}
  .ht-fields,.ht-filters{grid-template-columns:1fr}
  .ht-grid{grid-template-columns:1fr}
  .ht-info-cards{grid-template-columns:1fr}
  .ht-form{grid-template-columns:1fr}
}
/* ---------- Umrah Mufradah packages row (ump) + package modal (umpm) ---------- */
.ic-xs{width:var(--ic-xs);height:var(--ic-xs)} .ic-m{width:var(--ic-lg);height:var(--ic-lg)}
.ump-sec{padding:56px 0 10px}
.ump-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:26px}
.ump-pill{display:inline-flex;align-items:center;gap:8px;background:var(--orange-soft);color:var(--orange);border:1px solid var(--orange-ring);font-size:var(--fs-12);font-weight:750;padding:7px 14px;border-radius:999px}
.ump-head h2{font-size:clamp(24px,3vw,36px);font-weight:850;letter-spacing:-.6px;margin:12px 0 8px}
.ump-head h2 span{color:var(--orange)}
.ump-head p{color:var(--muted);font-size:var(--fs-14);line-height:1.85;max-width:660px}
.ump-arrows{display:flex;gap:10px;padding-bottom:6px}
.ump-arrow{width:46px;height:46px;border-radius:14px;border:1px solid var(--line-2);background:#fff;display:grid;place-items:center;transition:.2s;box-shadow:var(--sh-sm);color:var(--navy-900)}
.ump-arrow:hover{background:var(--orange);border-color:var(--orange);color:#fff}
.ump-track{gap:20px}
.kp-track.ump-track>*{flex:0 0 calc((100% - 60px)/4);min-width:0}
@media(max-width:1024px){.kp-track.ump-track>*{flex:0 0 calc((100% - 20px)/2)}}
@media(max-width:640px){.kp-track.ump-track>*{flex:0 0 100%}}
.ump-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;cursor:pointer;transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column;box-shadow:var(--sh-sm)}
.ump-card:hover,.ump-card:focus-visible{transform:translateY(-5px);box-shadow:var(--sh)}
.ump-media{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--navy-900)}
.ump-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.ump-card:hover .ump-media img{transform:scale(1.06)}
.ump-vipmedia{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:linear-gradient(150deg,#16293f 0%,#0E1B2E 55%,#0A1420 100%);color:#fff}
.ump-vipmedia .ic{width:32px;height:32px;color:#E9B949}
.ump-vipmedia b{font-size:21px;font-weight:800}
.ump-badge{position:absolute;top:12px;inset-inline-start:12px;display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;padding:6px 12px;border-radius:999px;color:#fff;z-index:2}
.ump-badge.gold{background:linear-gradient(90deg,#C98A1B,#E9B949);color:#241703}
.ump-badge.orange{background:var(--orange)}
.ump-dur{position:absolute;bottom:12px;inset-inline-start:12px;display:inline-flex;align-items:center;gap:7px;background:rgba(10,20,32,.84);backdrop-filter:blur(6px);color:#fff;font-size:var(--fs-12);font-weight:700;padding:7px 12px;border-radius:10px;z-index:2}
.ump-body{padding:18px 18px 20px;display:flex;flex-direction:column;gap:10px;flex:1}
.ump-body h3{font-size:var(--fs-18);font-weight:800}
.ump-body>p{color:var(--muted);font-size:var(--fs-13);line-height:1.8;flex:1}
.ump-price{display:flex;align-items:center;gap:8px;background:var(--cream-2);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;font-size:var(--fs-12);color:var(--muted);font-weight:700}
.ump-price b{font-size:22px;font-weight:850;color:var(--navy-900);letter-spacing:-.5px}
.ump-price i{font-style:normal;font-size:var(--fs-12)}
.ump-cta{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--orange);color:#fff;border-radius:var(--r);padding:13px 16px;font-size:var(--fs-14);font-weight:750;transition:.2s}
.ump-card:hover .ump-cta{background:var(--orange-600)}
/* package modal */
.umpm-banner{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:21/8;background:var(--navy-900);margin-bottom:16px}
.umpm-banner img{width:100%;height:100%;object-fit:cover}
.umpm-pricechip{position:absolute;bottom:12px;inset-inline-end:12px;background:var(--orange);color:#fff;font-weight:850;font-size:var(--fs-18);padding:8px 16px;border-radius:var(--r);box-shadow:0 8px 20px var(--orange-ring);z-index:2}
.umpm-desc{color:var(--muted);font-size:var(--fs-14);line-height:1.85;margin-bottom:16px}
.umpm-specs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}
.umpm-spec{display:flex;flex-direction:column;gap:5px;background:var(--cream);border:1px solid var(--line);border-radius:var(--r);padding:11px 14px}
.umpm-spec span{font-size:var(--fs-12);font-weight:750;color:var(--muted);display:flex;align-items:center;gap:7px}
.umpm-spec span .ic{color:var(--orange)}
.umpm-spec b{font-size:var(--fs-13);font-weight:700;color:var(--navy-900);line-height:1.6}
.umpm-inc h4{display:flex;align-items:center;gap:8px;font-size:var(--fs-14);font-weight:800;margin:4px 0 9px}
.umpm-inc h4 .ic{color:var(--green)}
.umpm-inc h4.no{margin-top:14px} .umpm-inc h4.no .ic{color:var(--red)}
.umpm-inc ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 6px;padding:0}
.umpm-inc li{display:flex;align-items:center;gap:8px;font-size:var(--fs-13);color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);padding:8px 12px}
.umpm-inc li .ic{color:var(--green)}
.umpm-inc ul.no li .ic{color:var(--red)}
.umpm-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:var(--cream);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;margin-top:16px}
.umpm-form .fr{display:flex;flex-direction:column;gap:6px}
.umpm-form .fr.wide{grid-column:1/-1}
.umpm-form label{font-size:var(--fs-12);font-weight:750;color:var(--muted)}
.umpm-form input,.umpm-form select,.umpm-form textarea{border:1px solid var(--line-2);border-radius:var(--r-sm);background:#fff;padding:11px 12px;font-size:var(--fs-13);color:var(--ink);width:100%}
.umpm-form input:focus,.umpm-form select:focus,.umpm-form textarea:focus{outline:2px solid var(--orange-ring);border-color:var(--orange)}
.umpm-actions{grid-column:1/-1;display:flex;gap:10px;flex-wrap:wrap}
.umpm-sent{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;background:var(--green-soft);border:1px solid rgba(31,157,85,.35);border-radius:var(--r-lg);padding:26px;margin-top:16px}
.umpm-sent .ic{width:34px;height:34px;color:var(--green)}
.umpm-sent b{font-size:var(--fs-17);font-weight:850;color:var(--green)}
.umpm-sent p{font-size:var(--fs-13);color:var(--muted);line-height:1.85}
@media(max-width:900px){.umpm-specs,.umpm-inc ul{grid-template-columns:1fr 1fr}}
@media(max-width:768px){
  .ump-head{flex-direction:column;align-items:flex-start;gap:14px}
  .ump-arrows{order:2}
  .umpm-banner{aspect-ratio:16/9}
  .umpm-specs,.umpm-inc ul,.umpm-form{grid-template-columns:1fr}
}
/* ---------- Properties marketplace (prx) ---------- */
.prx-hero{background:linear-gradient(140deg,var(--navy-950) 0%,var(--navy-900) 55%,#12283f 100%);color:#fff;padding:58px 0 46px;position:relative;overflow:hidden}
.prx-hero::after{content:"";position:absolute;inset-inline-end:-120px;top:-120px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(242,107,29,.22),transparent 65%)}
.prx-pill{display:inline-flex;align-items:center;gap:8px;background:rgba(242,107,29,.14);border:1px solid rgba(242,107,29,.4);color:#FFB27D;font-size:var(--fs-12);font-weight:750;padding:7px 14px;border-radius:999px}
.prx-pill.soft{background:var(--orange-soft);border-color:var(--orange-ring);color:var(--orange)}
.prx-hero h1{color:#fff;font-size:clamp(26px,3.4vw,42px);font-weight:850;letter-spacing:-.8px;margin:16px 0 10px}
.prx-hero h1 span{color:var(--orange)}
.prx-hero p{color:#B9C6D4;font-size:var(--fs-14);line-height:1.85;max-width:760px;margin-bottom:24px}
.prx-search{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr auto;gap:10px;background:#fff;border-radius:var(--r-lg);padding:12px;box-shadow:var(--sh-lg);position:relative;z-index:2}
.prx-f{display:flex;flex-direction:column;gap:5px;min-width:0}
.prx-f>span{font-size:var(--fs-11);font-weight:800;color:var(--muted);letter-spacing:.3px;text-transform:uppercase}
.prx-f select,.prx-f input:not([type=number]){border:1.5px solid var(--line-2);border-radius:var(--r-sm);padding:11px 12px;font-size:var(--fs-14);background:#fff;width:100%;color:var(--ink)}
.prx-f.kw{flex-direction:row;align-items:center;gap:10px;border:1.5px solid var(--line-2);border-radius:var(--r-sm);padding:0 12px;color:var(--muted)}
.prx-f.kw .ic{color:var(--orange)}
.prx-f.kw input{border:none;padding:12px 0;flex:1;min-width:0}
.prx-f.kw input:focus{outline:none}
.prx-f select:focus,.prx-f input:focus{outline:2px solid var(--orange-ring);border-color:var(--orange)}
.prx-go{display:flex;align-items:center;gap:8px;background:var(--orange);color:#fff;border-radius:var(--r-sm);padding:0 22px;font-size:var(--fs-15);font-weight:800;align-self:end;height:46px;transition:.2s}
.prx-go:hover{background:var(--orange-600)}
.prx-more{display:inline-flex;align-items:center;gap:8px;margin-top:14px;color:#CFDAE6;font-size:var(--fs-13);font-weight:700;transition:.2s}
.prx-more:hover,.prx-more.open{color:#FFB27D}
.prx-more.open .ic-xs{transform:rotate(180deg)}
.prx-more .ic-xs{transition:.2s}
.prx-adv{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:var(--r-lg);padding:14px;margin-top:14px}
.prx-adv[hidden]{display:none}
.prx-mapwrap[hidden]{display:none}
.prx-citychip[hidden]{display:none}
.prx-adv .prx-f>span{color:#9FB0C0}
.prx-adv select,.prx-adv input{background:#fff}
.prx-feat-sec{padding:44px 0 34px}
.prx-feat-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px}
.prx-feat-head h2{font-size:clamp(22px,2.6vw,32px);font-weight:850;letter-spacing:-.5px;margin-top:12px}
.prx-feat-head h2 span{color:var(--orange)}
.prx-arrows{display:flex;gap:10px}
.prx-arrow{width:44px;height:44px;border-radius:13px;border:1px solid var(--line-2);background:#fff;display:grid;place-items:center;color:var(--navy-900);box-shadow:var(--sh-sm);transition:.2s}
.prx-arrow:hover{background:var(--orange);border-color:var(--orange);color:#fff}
.prx-feat-track{gap:20px}
.kp-track.prx-feat-track>*{flex:0 0 calc((100% - 40px)/3);min-width:0}
@media(max-width:1000px){.kp-track.prx-feat-track>*{flex:0 0 calc((100% - 20px)/2)}}
@media(max-width:620px){.kp-track.prx-feat-track>*{flex:0 0 100%}}
.prx-fcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-sm);transition:transform .25s,box-shadow .25s}
.prx-fcard:hover{transform:translateY(-5px);box-shadow:var(--sh)}
.prx-fmedia{position:relative;aspect-ratio:16/10;overflow:hidden}
.prx-fmedia img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.prx-fcard:hover .prx-fmedia img{transform:scale(1.06)}
.prx-fov{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,20,32,.92) 0%,rgba(10,20,32,.35) 45%,transparent 70%)}
.prx-fbadges{position:absolute;top:12px;inset-inline-start:12px;display:flex;gap:6px;flex-wrap:wrap;z-index:2}
.prx-tag{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:800;padding:5px 10px;border-radius:999px;color:#fff;background:var(--navy-800)}
.prx-tag.green{background:var(--green)} .prx-tag.blue{background:var(--blue)} .prx-tag.orange{background:var(--orange)}
.prx-tag.gold{background:linear-gradient(90deg,#C98A1B,#E9B949);color:#241703}
.prx-finfo{position:absolute;inset-inline:0;bottom:0;padding:14px 16px;color:#fff;z-index:2}
.prx-finfo b{font-size:20px;font-weight:850;color:#FFB27D}
.prx-finfo b i{font-style:normal;font-size:12px;color:#E8D6C6}
.prx-finfo h3{color:#fff;font-size:var(--fs-16);font-weight:800;margin:4px 0 4px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.prx-loc{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:var(--fs-12);font-weight:650}
.prx-loc.w{color:#C4D0DC}
.prx-fspecs{display:flex;gap:12px;margin-top:8px;color:#D7E0E9;font-size:var(--fs-12);font-weight:700}
.prx-fspecs span{display:inline-flex;align-items:center;gap:5px}
.prx-ffoot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px}
.prx-ag{display:inline-flex;align-items:center;gap:8px;min-width:0}
.prx-ag b{width:26px;height:26px;border-radius:8px;background:var(--navy-900);color:#FFB27D;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;flex:none}
.prx-ag i{font-style:normal;font-size:var(--fs-12);font-weight:700;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.prx-fcta{display:inline-flex;align-items:center;gap:6px;color:var(--orange);font-size:var(--fs-12);font-weight:800;flex:none}
.prx-main{padding:34px 0 56px}
.prx-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}
.prx-count{font-size:var(--fs-13);font-weight:700;color:var(--muted)}
.prx-count b{color:var(--orange);font-size:var(--fs-16)}
.prx-citychip{display:inline-flex;align-items:center;gap:7px;background:var(--orange-soft);border:1px solid var(--orange-ring);color:var(--orange);font-size:var(--fs-12);font-weight:800;padding:6px 10px;border-radius:999px}
.prx-citychip button{display:flex;color:var(--orange)}
.prx-tbtn{display:inline-flex;align-items:center;gap:7px;border:1.5px solid var(--line-2);background:#fff;border-radius:var(--r-sm);padding:9px 14px;font-size:var(--fs-13);font-weight:750;color:var(--navy-900);transition:.2s}
.prx-tbtn.on{background:var(--navy-900);border-color:var(--navy-900);color:#FFB27D}
.prx-views{display:flex;border:1.5px solid var(--line-2);border-radius:var(--r-sm);overflow:hidden;background:#fff}
.prx-vbtn{padding:9px 12px;color:var(--muted);transition:.2s}
.prx-vbtn.on{background:var(--orange);color:#fff}
.prx-sort{border:1.5px solid var(--line-2);border-radius:var(--r-sm);background:#fff;padding:9px 10px;font-size:var(--fs-13);font-weight:650}
.prx-mapwrap{display:grid;grid-template-columns:1.5fr 1fr;gap:18px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;margin-bottom:20px;box-shadow:var(--sh-sm)}
.prx-map{background:linear-gradient(150deg,#10233A 0%,var(--navy-950) 100%);border-radius:var(--r);padding:10px;min-height:280px;display:flex;align-items:center}
.prx-svg{width:100%;height:auto}
.prx-svg .land{fill:rgba(255,255,255,.06);stroke:rgba(255,178,125,.5);stroke-width:.4;stroke-dasharray:1.4 1}
.prx-pin{cursor:pointer}
.prx-pin .halo{fill:rgba(242,107,29,.25);stroke:rgba(242,107,29,.65);stroke-width:.3;transition:.2s}
.prx-pin .dot{fill:var(--orange);stroke:#fff;stroke-width:.4}
.prx-pin text{fill:#D7E0E9;font-size:2.6px;font-weight:700;font-family:inherit}
.prx-pin:hover .halo,.prx-pin.on .halo{fill:rgba(242,107,29,.5)}
.prx-pin.on .dot{fill:#FFB27D}
.prx-pin.on text{fill:#FFB27D}
.prx-map-side h4{display:flex;align-items:center;gap:8px;font-size:var(--fs-16);font-weight:800;margin-bottom:8px}
.prx-map-side h4 .ic{color:var(--orange)}
.prx-map-side p{font-size:var(--fs-13);color:var(--muted);line-height:1.8;margin-bottom:14px}
.prx-map-cities{display:flex;flex-direction:column;gap:8px}
.prx-map-cities button{display:flex;align-items:center;gap:8px;border:1.5px solid var(--line-2);background:#fff;border-radius:var(--r-sm);padding:9px 12px;font-size:var(--fs-13);font-weight:700;color:var(--navy-900);transition:.2s}
.prx-map-cities button .ic{color:var(--muted)}
.prx-map-cities button b{margin-inline-start:auto;background:var(--cream-2);border-radius:999px;padding:1px 9px;font-size:var(--fs-12);color:var(--muted)}
.prx-map-cities button.on,.prx-map-cities button:hover{border-color:var(--orange);color:var(--orange)}
.prx-map-cities button.on .ic,.prx-map-cities button:hover .ic{color:var(--orange)}
.prx-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.prx-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-sm);transition:transform .25s,box-shadow .25s}
.prx-card:hover{transform:translateY(-5px);box-shadow:var(--sh)}
.prx-media{position:relative;aspect-ratio:16/10;overflow:hidden}
.prx-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.prx-card:hover .prx-media img{transform:scale(1.07)}
.prx-media>.prx-tag:not(.top){position:absolute;bottom:44px;inset-inline-start:12px}
.prx-media>.prx-tag.top{position:absolute;top:12px;inset-inline-start:12px}
.prx-stamp{position:absolute;top:12px;inset-inline-end:12px;background:rgba(10,20,32,.85);color:#fff;font-size:11px;font-weight:800;padding:5px 10px;border-radius:999px}
.prx-price{position:absolute;bottom:12px;inset-inline-start:12px;background:var(--orange);color:#fff;font-weight:850;font-size:var(--fs-16);padding:7px 13px;border-radius:var(--r-sm);box-shadow:0 8px 18px var(--orange-ring)}
.prx-price i{font-style:normal;font-size:11px;opacity:.9}
.prx-body{padding:15px 16px 16px;display:flex;flex-direction:column;gap:9px;flex:1}
.prx-body h3{font-size:var(--fs-16);font-weight:800;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}
.prx-specs{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:var(--fs-12);font-weight:700}
.prx-specs span{display:inline-flex;align-items:center;gap:5px}
.prx-specs .ic{color:var(--orange)}
.prx-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px dashed var(--line);padding-top:11px;margin-top:auto}
.prx-go2{color:var(--orange);display:flex}
.prx-list{display:flex;flex-direction:column;gap:16px}
.prx-lcard{display:grid;grid-template-columns:280px 1fr auto;gap:18px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-sm);transition:box-shadow .2s,transform .2s;padding:14px}
.prx-lcard:hover{box-shadow:var(--sh);transform:translateY(-3px)}
.prx-lmedia{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:4/3}
.prx-lmedia img{width:100%;height:100%;object-fit:cover}
.prx-lmedia .prx-tag{position:absolute;top:10px;inset-inline-start:10px}
.prx-lbody{display:flex;flex-direction:column;gap:8px;min-width:0;padding:4px 0}
.prx-ltop{display:flex;align-items:center;gap:10px}
.prx-ltype{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:var(--fs-12);font-weight:750}
.prx-lbody h3{font-size:var(--fs-17);font-weight:800}
.prx-lside{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:10px;padding:4px 6px}
.prx-lside b{font-size:var(--fs-20);font-weight:850;color:var(--orange)}
.prx-lside b i{font-style:normal;font-size:12px;color:var(--muted)}
.prx-lcta{display:inline-flex;align-items:center;gap:6px;background:var(--orange-soft);color:var(--orange);border-radius:var(--r-sm);padding:8px 14px;font-size:var(--fs-12);font-weight:800}
.prx-pager{margin-top:24px}
@media(max-width:1100px){.prx-search{grid-template-columns:1fr 1fr}.prx-go{grid-column:1/-1;justify-content:center}.prx-adv{grid-template-columns:repeat(3,1fr)}.prx-grid{grid-template-columns:repeat(2,1fr)}.prx-mapwrap{grid-template-columns:1fr}}
@media(max-width:768px){.prx-search{grid-template-columns:1fr}.prx-adv{grid-template-columns:1fr 1fr}.prx-grid{grid-template-columns:1fr}.prx-lcard{grid-template-columns:1fr}.prx-lside{flex-direction:row;align-items:center;justify-content:space-between}.prx-feat-head{flex-direction:column;align-items:flex-start}}
.kp-view{overflow:hidden}
.kp-track{display:flex;gap:20px;transition:transform .65s cubic-bezier(.3,.72,.3,1)}
.kp-track>*{flex:0 0 calc((100% - 40px)/3);min-width:0}
@media(max-width:1000px){.kp-track>*{flex-basis:calc((100% - 20px)/2)}}
@media(max-width:620px){.kp-track>*{flex-basis:100%}}
.tv-hotels-view{overflow:hidden}
.tv-hotels-grid{display:flex;gap:20px;transition:transform .65s cubic-bezier(.3,.72,.3,1)}
.tv-hotel{flex:0 0 calc((100% - 40px)/3);min-width:0}
.tv-hdots{display:flex;justify-content:center;margin-top:16px}
.tv-morewrap{display:flex;justify-content:center;margin-top:14px}
.tv-mrow{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid var(--line-2);border-radius:var(--r-md);margin-bottom:8px;flex-wrap:wrap}
.tv-mrow img{width:64px;height:48px;object-fit:cover;border-radius:var(--r-xs);flex:none}
.tv-mrow b{display:block;font-size:var(--fs-14);color:var(--navy-900)}
.tv-mrow span{font-size:var(--fs-11);color:var(--muted)}
.tv-hotel{background:#fff;border:1px solid var(--line-2);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;transition:.3s;box-shadow:var(--sh-sm)}
.tv-hotel:hover{transform:translateY(-6px);box-shadow:var(--sh-lg)}
.tv-hotel-media{position:relative;height:200px;overflow:hidden}
.tv-hotel-media img{width:100%;height:100%;object-fit:cover;transition:.55s}
.tv-hotel:hover .tv-hotel-media img{transform:scale(1.07)}
.tv-hotel-ov{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(10,20,32,.88))}
.tv-hotel-tier{position:absolute;top:10px;inset-inline-start:10px;font-size:var(--fs-10);font-weight:800;padding:5px 11px;border-radius:999px;color:#fff;letter-spacing:.5px}
.tv-hotel-tier.orange{background:var(--orange)}
.tv-hotel-tier.navy{background:rgba(14,27,46,.88);color:#E6EFF8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.tv-hotel-rating{position:absolute;top:10px;inset-inline-end:10px;display:inline-flex;align-items:center;gap:4px;background:rgba(14,27,46,.8);color:#FFD27A;font-size:var(--fs-11);font-weight:800;padding:4px 9px;border-radius:999px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.tv-hotel-rating .ic{width:11px;height:11px}
.tv-hotel-cap{position:absolute;bottom:0;inset-inline:0;padding:12px 14px;color:#fff}
.tv-hotel-cap span{display:block;font-size:var(--fs-11);color:#C4D1DF}
.tv-hotel-cap b{font-size:var(--fs-16);font-weight:800}
.tv-hotel-body{padding:14px;display:flex;flex-direction:column;gap:12px;flex:1}
.tv-hotel-body p{font-size:var(--fs-12);color:var(--muted);line-height:1.55;flex:1}
.tv-hotel-feats{display:flex;flex-wrap:wrap;gap:6px}
.tv-hotel-feats span{font-size:var(--fs-10);font-weight:600;color:var(--navy-800);background:var(--cream);padding:4px 9px;border-radius:var(--r-xs)}
.tv-hotel-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line-2);padding-top:12px}
.tv-hotel-foot i{display:block;font-style:normal;font-size:var(--fs-10);color:var(--muted-2);line-height:1}
.tv-hotel-foot b{font-size:var(--fs-20);font-weight:900;color:var(--orange)}

@media(max-width:1000px){
  .tv-searchform{grid-template-columns:1fr 1fr}
  .tv-searchbtn{grid-column:1/-1}
  .tv-hotel{flex-basis:calc((100% - 20px)/2)}
}
@media(max-width:620px){
  .tv-searchform{grid-template-columns:1fr}
  .tv-hotel{flex-basis:100%}
}

/* ==========================================================================
   RESPONSIVE STANDARD LAYER (2026-09-15)
   Standard breakpoint ladder — use ONLY these: 1280 / 1024 / 900 / 768 / 640 / 480 / 380
   Standard scale: spacing 4·8·12·16·24·32·48·64·74 | radius var(--r-*) | type via clamp()
   Goal: zero horizontal overflow and ≥32px tap targets from 360px to 4K.
   ========================================================================== */
:root{
  /* radius ladder */ --r-xs:6px; --r-md:10px; --r-m2:14px;   /* + existing --r-sm:8 --r:12 --r-lg:16 --r-xl:22 */
}
:root{
  /* control height ladder */ --h-xs:28px; --h-sm:32px; --h-md:40px; --h-lg:44px; --h-xl:50px;
  /* icon ladder */ --ic-xs:12px; --ic-sm:14px; --ic-base:16px; --ic-md:18px; --ic-lg:20px; --ic-xl:24px;
  /* safe areas */ --sat:env(safe-area-inset-top,0px); --sal:env(safe-area-inset-left,0px); --sar:env(safe-area-inset-right,0px);
}
:root{
  --fs-10:10px;--fs-11:11px;--fs-12:12px;--fs-13:13px;--fs-14:14px;--fs-15:15px;--fs-16:16px;
  --fs-18:18px;--fs-20:20px;--fs-22:22px;--fs-24:24px;--fs-30:30px;--fs-32:32px;--fs-40:40px;
  --ar-card:4/3;      /* standard card photo */
  --ar-media:16/9;    /* banners, maps, featured media */
  --ar-tile:4/5;      /* mosaic tiles (cities) */
}
:root{
  --pad-x: clamp(16px, 4vw, 24px);          /* container side padding, fluid */
  --sect-y: clamp(48px, 6.5vw, 74px);       /* section vertical rhythm */
  --fs-hero: clamp(30px, 4.6vw + 4px, 56px);/* one hero scale everywhere */
  --tap: 36px;                              /* minimum touch target */
}
.container{padding-inline:var(--pad-x)}
.section{padding-block:var(--sect-y)}
.hero h1,.hero-inner h1{font-size:var(--fs-hero)}
h1,h2,h3,h4,p,td,th{overflow-wrap:break-word}
body{overflow-x:clip}                        /* last-resort guard, keeps sticky header */
.container > *{min-width:0}
.modal-ov{padding:16px}

/* ---------- header / topbar collapse ---------- */
@media (max-width: 900px){
  .topbar .contact-info,.topbar .sp,.topbar .container > span.flex{display:none}
  .topbar .lang-sw{margin-inline-start:auto}
}
@media (max-width: 640px){
  .header .container{gap:8px}
  .hdr-actions{gap:6px}
  .hdr-actions #hSearch,.hdr-actions a.icon-btn[href="#/cart"]{display:none}   /* moved into mobile menu */
  .icon-btn{width:var(--tap);height:var(--tap)}
  .sec-head{margin-bottom:24px}
}
@media (max-width: 480px){
  .logo .word{display:none}                 /* keep the mark, save 110px */
  .addprop .btn-txt{display:none}
  .addprop{width:var(--tap);height:var(--tap);padding:0;justify-content:center}
  .hdr-actions{gap:4px}
  .hero-tabs{flex-wrap:wrap}
  .sec-head h2{font-size:clamp(21px, 5.4vw, 26px)}
}
@media (max-width: 380px){
  .hdr-actions a.icon-btn[href="#/favorites"]{display:none}  /* also in mobile menu */
  .icon-btn{width:34px;height:34px}
}

/* mobile menu: icon rows + search action */
.mobile-menu a{display:flex;align-items:center;gap:10px}
.mobile-menu .mm-action{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;
  color:#E5EDF5;font-size:var(--fs-16);font-weight:700;padding:12px 4px;border-bottom:1px solid rgba(255,255,255,.07);text-align:start;cursor:pointer}

/* ---------- carousel dots: 28-32px tap area, unchanged look ---------- */
.hero-dots button,.lp-dots button,.adv-dots button,.tm-dots button,.tv-hdots button{
  position:relative;width:28px;height:28px;border:0;background:transparent;cursor:pointer;padding:0}
.hero-dots button::before,.lp-dots button::before,.adv-dots button::before,.tm-dots button::before,.tv-hdots button::before{
  content:"";position:absolute;inset:10px;border-radius:999px;background:rgba(255,255,255,.35);transition:.25s}
.lp-dots button::before,.adv-dots button::before,.tm-dots button::before,.tv-hdots button::before{background:rgba(14,27,46,.18)}
.hero-dots button.on::before,.lp-dots button.on::before,.adv-dots button.on::before,.tm-dots button.on::before,.tv-hdots button.on::before{
  inset:10px 2px;background:var(--orange)}
.hero-dots{gap:2px} .lp-dots,.adv-dots,.tm-dots,.tv-hdots{gap:2px}
.hero-dots button:hover::before,.lp-dots button:hover::before,.adv-dots button:hover::before,.tm-dots button:hover::before{background:rgba(255,255,255,.6)}
.tv-hdots button:hover::before{background:rgba(14,27,46,.38)}
.lp-dots button:hover::before,.adv-dots button:hover::before,.tm-dots button:hover::before{background:rgba(14,27,46,.4)}

/* ---------- coarse pointers: comfortable targets ---------- */
@media (hover: none){
  .chip,.chips button,.lang-btn,.btn.tiny,.tiny,.pag button,.pag a,.tbl .icon-btn,.mm-sub{min-height:32px}
  .icon-btn{width:40px;height:40px}
  .mobile-menu a,.mobile-menu .mm-action{min-height:44px}
}

/* ---------- small-screen grid & media safety ---------- */
@media (max-width: 640px){
  .tbl{min-width:560px}                      /* scrolls inside .tbl-wrap instead of the page */
  .modal .m-bd{padding:16px}
  .modal .m-hd{padding:14px 16px}
}
@media (max-width: 480px){
  .g2,.g3,.g4{gap:12px}
  .sec-head .btn{width:100%;justify-content:center}
}

/* ---------- responsive fix batch 2 (min-content & stacking) ---------- */
.grid > *,.flex > *{min-width:0}
.gallery{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
.detail-grid{grid-template-columns:minmax(0,1fr) 360px}
.dg-eq{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.tv-filters{flex-wrap:wrap}
.tv-sfld{min-width:0}
.cd-steps{overflow-x:auto;flex-wrap:nowrap;padding-bottom:6px;scrollbar-width:none}
.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width: 1024px){
  .detail-grid{grid-template-columns:minmax(0,1fr) 320px}
}
@media (max-width: 900px){
  .detail-grid,.dg-eq{grid-template-columns:minmax(0,1fr)}
}
@media (max-width: 640px){
  .gallery{grid-template-columns:minmax(0,1fr);height:auto}
  .gallery .main{height:240px}
  .gallery .side{grid-auto-flow:column;grid-auto-columns:96px;overflow-x:auto;scrollbar-width:none}
  .gallery .side img{height:72px}
}
@media (max-width: 480px){
  .tv-tabs{flex-wrap:wrap;gap:8px}
  .tv-tab{padding:8px 12px;font-size:var(--fs-12)}
  .stats-grid{gap:10px}
  .stat-card{padding:12px;gap:10px}
  .stat-card b{font-size:var(--fs-16)}
  .dcard{padding:16px}
}
/* dots: 32px tap targets (visual unchanged) */
.hero-dots button,.lp-dots button,.adv-dots button,.tm-dots button{width:32px;height:32px}
.hero-dots button::before,.lp-dots button::before,.adv-dots button::before,.tm-dots button::before{inset:12px}
.hero-dots button.on::before,.lp-dots button.on::before,.adv-dots button.on::before,.tm-dots button.on::before{inset:12px 4px}
.pm2-dot{width:32px;height:32px;border:0;background:transparent;position:relative;padding:0}
.pm2-dot::before{content:"";position:absolute;inset:12px;border-radius:999px;background:rgba(14,27,46,.2);transition:.2s}
.pm2-dot.on::before{inset:12px 6px;background:var(--orange)}
/* coarse pointers: no sub-32px controls anywhere */
@media (hover: none){
  a,button{min-height:32px}
  :where(.hero-dots,.lp-dots,.adv-dots,.tm-dots,.tv-hdots) button,.pm2-dot{min-height:32px}
}

/* stats grid: keep 2-up below 1100 (layer order fix) */
@media (max-width: 1100px){ .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))} }
.map-box svg{display:block;width:100%;height:100%;overflow:hidden}

/* ---------- dashboard: off-canvas sidebar on ≤900 ---------- */
.dash-menu{display:none}
@media (max-width: 900px){
  .dash{display:block}
  .dash-side{position:fixed;top:0;bottom:0;inset-inline-start:0;width:290px;max-width:86vw;height:100dvh;
    transform:translateX(-100%);transition:transform .28s;z-index:260;overflow:auto;box-shadow:0 0 60px rgba(4,10,18,.5)}
  html[dir="rtl"] .dash-side{transform:translateX(100%)}
  .dash-side.open{transform:translateX(0)!important}
  .dash-menu{display:inline-flex}
  .dash-main{width:100%;min-width:0}
}

/* ---------- size standardisation pass 2 ---------- */
svg{overflow:hidden}                                  /* decorative art never extends the page */
.map-box svg{position:absolute;inset:0;width:100%;height:100%}   /* out of flow: box sized by ratio only */
#view table{width:100%}
#view table td,#view table th{white-space:normal;overflow-wrap:anywhere}
.cstrip{flex-wrap:wrap;gap:12px}
@media (max-width: 900px) and (min-width: 621px){ .tv-searchform{grid-template-columns:1fr 1fr} }

/* ---------- device ergonomics (notch, touch, zoom) ---------- */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{-webkit-tap-highlight-color:transparent}
a,button{touch-action:manipulation}
.mobile-menu,.dash-side,.modal,.tv-tabs,.gallery .side{overscroll-behavior:contain}
.header{padding-top:var(--sat)}
.container{padding-inline:max(var(--pad-x), var(--sal), var(--sar))}
.mobile-menu{padding-top:calc(24px + var(--sat))}
.dash{min-height:calc(100vh - var(--header-h));min-height:calc(100dvh - var(--header-h))}
.auth-wrap{min-height:calc(100vh - var(--header-h));min-height:calc(100dvh - var(--header-h))}
.dash-side{height:100vh;height:100dvh}

/* ---------- 280px (fold cover) safety ---------- */
.cs-item b,.cs-item span{overflow-wrap:anywhere}
.filter-box{max-width:100%}
@media (max-width: 900px){ .listing-wrap{grid-template-columns:minmax(0,1fr)} }
@media (max-width: 380px){
  .stats-grid{grid-template-columns:minmax(0,1fr)}
  .stat-card b{font-size:var(--fs-14)}
  .lp-card{flex-basis:230px}
}

/* ---------- fold (280px) final fixes ---------- */
@media (max-width: 380px){
  .crh-cats{grid-template-columns:minmax(0,1fr)}
  .cr-cat{padding:14px 12px}
  .cr-cat-specs{flex-wrap:wrap}
  .ev-featured{min-height:320px}
}

/* ============ HOMEPAGE TOP LISTING — FEATURED PROJECTS ============ */
.topproj-sec{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(135deg,#0A1420 0%,#0E1B2E 58%,#142B46 100%)}
.topproj-sec::before{content:"";position:absolute;inset-inline-end:-150px;top:-220px;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(242,107,29,.2),transparent 66%);pointer-events:none}
.topproj-sec::after{content:"";position:absolute;inset-inline-start:-190px;bottom:-280px;width:590px;height:590px;border-radius:50%;background:radial-gradient(circle,rgba(53,123,214,.16),transparent 68%);pointer-events:none}
.topproj-sec .container{position:relative;z-index:1}
.topproj-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;flex-wrap:wrap;margin-bottom:30px}
.topproj-title{max-width:740px}
.topproj-title h2{font-size:clamp(28px,3.4vw,42px);font-weight:850;letter-spacing:-.7px;margin-top:10px}
.topproj-title h2 span{color:var(--orange)}
.topproj-lead{color:#B9C6D4;font-size:var(--fs-14);line-height:1.85;max-width:650px;margin-top:10px}
.topproj-head-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:flex-end}
.topproj-count{color:#AAB9C9;font-size:var(--fs-12);font-weight:700;white-space:nowrap}
.topproj-count b{color:#fff;font-size:var(--fs-18);margin-inline-end:3px}
.topproj-more{height:46px;border-radius:999px;padding-inline:20px;background:var(--orange);box-shadow:0 10px 24px rgba(242,107,29,.28)}
.topproj-more:hover{background:#fff;color:var(--navy-900);box-shadow:0 14px 30px rgba(0,0,0,.24)}
.topproj-view{overflow:hidden;margin-inline:-3px;padding:3px}
.topproj-track{gap:20px}
.kp-track.topproj-track>*{flex:0 0 calc((100% - 60px)/4);min-width:0}
.topproj-card{display:flex;flex-direction:column;min-height:458px;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:var(--r-xl);background:linear-gradient(165deg,rgba(30,52,78,.98),rgba(15,30,51,.98));box-shadow:0 16px 34px rgba(0,0,0,.22);transition:transform .35s cubic-bezier(.2,.7,.3,1),box-shadow .35s,border-color .35s}
.topproj-card:hover{transform:translateY(-8px);border-color:rgba(242,107,29,.6);box-shadow:0 26px 56px rgba(0,0,0,.42)}
.topproj-media{height:206px;position:relative;overflow:hidden;background:#102039}
.topproj-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.3,1)}
.topproj-card:hover .topproj-media img{transform:scale(1.08)}
.topproj-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,17,29,.18),rgba(8,17,29,.08) 42%,rgba(8,17,29,.82) 100%);pointer-events:none}
.topproj-index{position:absolute;top:14px;inset-inline-end:15px;color:rgba(255,255,255,.78);font-size:var(--fs-12);font-weight:850;letter-spacing:1px}
.topproj-tags{position:absolute;top:14px;inset-inline-start:14px;display:flex;gap:6px;flex-wrap:wrap;max-width:78%}
.topproj-tag{display:inline-flex;align-items:center;min-height:25px;padding:4px 8px;border-radius:999px;background:rgba(242,107,29,.95);color:#fff;font-size:var(--fs-10);font-weight:850;letter-spacing:.45px;text-transform:uppercase;box-shadow:0 6px 16px rgba(0,0,0,.18)}
.topproj-status{position:absolute;bottom:13px;inset-inline-start:15px;display:inline-flex;align-items:center;gap:7px;color:#fff;font-size:var(--fs-11);font-weight:750}
.topproj-status i{display:block;width:8px;height:8px;border-radius:50%;background:#74E4A2;box-shadow:0 0 0 4px rgba(116,228,162,.18)}
.topproj-body{display:flex;flex:1;flex-direction:column;padding:18px 18px 16px}
.topproj-kicker{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#9FB0C0;font-size:var(--fs-11);font-weight:700}
.topproj-kicker span:first-child{display:inline-flex;align-items:center;gap:5px;min-width:0}
.topproj-kicker .ic{color:var(--orange)}
.topproj-body h3{color:#fff;font-size:var(--fs-19);font-weight:800;letter-spacing:-.25px;margin-top:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.topproj-body p{color:#AAB9C9;font-size:var(--fs-12);line-height:1.75;margin-top:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:42px}
.topproj-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.09);margin-top:14px;padding-top:12px;color:#B9C6D4;font-size:var(--fs-11)}
.topproj-meta span{display:inline-flex;align-items:center;gap:5px;min-width:0}
.topproj-meta span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.topproj-meta .ic{color:#FF9A61}
.topproj-meta b{color:#fff}
.topproj-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:auto;padding-top:17px}
.topproj-bottom small{display:block;color:#90A1B3;font-size:var(--fs-10);line-height:1.3}
.topproj-bottom strong{display:block;color:#FF9A61;font-size:var(--fs-18);font-weight:850;margin-top:3px}
.topproj-go{display:inline-flex;align-items:center;gap:6px;color:#fff;font-size:var(--fs-12);font-weight:800;white-space:nowrap;transition:.25s}
.topproj-go .ic{transition:transform .25s}
.topproj-card:hover .topproj-go{color:#FFB27D}
.topproj-card:hover .topproj-go .ic{transform:translateX(3px)}
.topproj-controls{display:flex;align-items:center;gap:16px;margin-top:24px;min-height:36px}
.topproj-nav{display:flex;gap:8px;flex:none}
.topproj-arrow{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.18);border-radius:var(--r);color:#EAF1F7;background:rgba(255,255,255,.06);transition:.2s}
.topproj-arrow:hover{color:#fff;background:var(--orange);border-color:var(--orange);transform:translateY(-2px);box-shadow:0 8px 20px rgba(242,107,29,.3)}
.topproj-arrow .ic{width:17px;height:17px}
.topproj-dots{flex:1;margin-top:0;justify-content:center;gap:2px}
.topproj-dots button{width:32px;height:32px;background:transparent!important}
.topproj-dots button::before{background:rgba(255,255,255,.28)!important}
.topproj-dots button:hover::before{background:rgba(255,255,255,.64)!important}
.topproj-dots button.on::before{background:var(--orange)!important}
.topproj-hint{display:inline-flex;align-items:center;gap:6px;color:#8194A8;font-size:var(--fs-11);white-space:nowrap}
.topproj-hint .ic{color:var(--orange)}
.topproj-empty{flex:1;padding:50px 20px;color:#B9C6D4;text-align:center;border:1px dashed rgba(255,255,255,.2);border-radius:var(--r-lg)}
@media(max-width:1180px){.kp-track.topproj-track>*{flex-basis:calc((100% - 40px)/3)}}
@media(max-width:900px){.topproj-head{align-items:flex-start;flex-direction:column}.topproj-head-actions{justify-content:flex-start}.topproj-hint{display:none}.topproj-controls{justify-content:space-between}.kp-track.topproj-track>*{flex-basis:calc((100% - 20px)/2)}}
@media(max-width:620px){.topproj-sec{padding-top:48px;padding-bottom:48px}.topproj-lead{font-size:var(--fs-13)}.topproj-head-actions{width:100%;justify-content:space-between}.topproj-more{flex:1}.topproj-card{min-height:440px}.topproj-media{height:194px}.topproj-body{padding:16px}.topproj-controls{gap:10px}.topproj-dots{order:3;flex-basis:100%;width:100%;padding-top:2px}.topproj-nav{order:1}.topproj-controls{flex-wrap:wrap}.kp-track.topproj-track>*{flex-basis:100%}}

/* ============ EVENTS PLATFORM — seminars, registration & access links ============ */
.evp-page{background:var(--cream);overflow:hidden}
.evp-hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(850px 420px at 86% 8%,rgba(242,107,29,.2),transparent 66%),linear-gradient(145deg,var(--navy-950),var(--navy-900) 62%,#142d49);color:#fff;padding:46px 0 58px}
.evp-hero::before{content:"";position:absolute;inset:0;opacity:.45;pointer-events:none;background-image:radial-gradient(rgba(242,107,29,.16) 1px,transparent 1px),radial-gradient(rgba(255,255,255,.045) 1px,transparent 1px);background-size:32px 32px,32px 32px;background-position:0 0,16px 16px}
.evp-hero::after{content:"";position:absolute;inset-inline-end:-170px;bottom:-280px;width:590px;height:590px;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 48px rgba(255,255,255,.025),0 0 0 96px rgba(255,255,255,.018);pointer-events:none}
.evp-hero .container{position:relative;z-index:1}
.evp-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:52px;align-items:center}
.evp-hero-copy{min-width:0}
.evp-crumb{display:flex;align-items:center;gap:8px;color:#8FA1B4;font-size:var(--fs-12);margin-bottom:23px}
.evp-crumb a:hover{color:#fff}.evp-crumb b{color:#D8E1EA;font-weight:700}.evp-crumb span{opacity:.45}
.evp-eyebrow{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(242,107,29,.35);background:rgba(242,107,29,.1);color:#FFB27D;padding:8px 13px;border-radius:999px;text-transform:uppercase;letter-spacing:1.4px;font-size:var(--fs-10);font-weight:850}
.evp-eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 5px rgba(242,107,29,.18);animation:evpPulse 2.2s ease-in-out infinite}
@keyframes evpPulse{0%,100%{box-shadow:0 0 0 4px rgba(242,107,29,.16)}50%{box-shadow:0 0 0 8px rgba(242,107,29,.04)}}
.evp-hero h1{color:#fff;font-size:clamp(34px,5vw,62px);font-weight:900;letter-spacing:-1.8px;line-height:1.08;margin-top:21px;max-width:700px}.evp-hero h1 em{font-style:normal;color:var(--orange)}
.evp-hero-copy>p{color:#B9C6D4;max-width:650px;font-size:var(--fs-15);line-height:1.9;margin-top:17px}
.evp-hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:28px}
.evp-primary-btn,.evp-secondary-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:999px;padding-inline:21px;font-size:var(--fs-14);font-weight:800;transition:.25s}
.evp-primary-btn{background:var(--orange);color:#fff;box-shadow:0 13px 30px rgba(242,107,29,.36)}.evp-primary-btn:hover{background:#fff;color:var(--navy-900);transform:translateY(-2px)}.evp-primary-btn .ic{transition:.25s}.evp-primary-btn:hover .ic{transform:translateY(2px)}
.evp-secondary-btn{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.07);color:#fff}.evp-secondary-btn:hover{background:#fff;color:var(--navy-900);border-color:#fff;transform:translateY(-2px)}
.evp-trust{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:34px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);color:#9FB0C0;font-size:var(--fs-11);font-weight:700}.evp-trust span{display:inline-flex;align-items:center;gap:7px}.evp-trust i{width:7px;height:7px;border-radius:50%;display:block}.evp-trust i.green{background:#63D391}.evp-trust i.orange{background:var(--orange)}.evp-trust i.blue{background:#6CA8FF}
.evp-hero-visual{position:relative;min-height:390px;border-radius:var(--r-xl);overflow:visible;background:#0a1420;box-shadow:0 26px 70px rgba(0,0,0,.32);isolation:isolate}.evp-hero-visual::before{content:"";position:absolute;inset:-1px;border-radius:inherit;border:1px solid rgba(255,255,255,.15);z-index:2;pointer-events:none}.evp-hero-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;opacity:.86}.evp-hero-visual::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(10,20,32,.05),rgba(10,20,32,.12) 35%,rgba(10,20,32,.88) 100%);z-index:1}
.evp-visual-glow{position:absolute;width:180px;height:180px;border-radius:50%;background:rgba(242,107,29,.5);filter:blur(60px);inset-inline-end:-45px;top:-35px;opacity:.35;z-index:0}.evp-visual-card{position:absolute;z-index:3;bottom:24px;inset-inline:22px;display:flex;align-items:center;gap:12px;padding:14px 15px;border:1px solid rgba(255,255,255,.2);border-radius:var(--r-lg);background:rgba(10,20,32,.76);backdrop-filter:blur(10px);box-shadow:0 15px 35px rgba(0,0,0,.22)}.evp-visual-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:var(--r);background:var(--orange);color:#fff;flex:none}.evp-visual-card b{display:block;color:#fff;font-size:var(--fs-13)}.evp-visual-card span:not(.evp-visual-icon):not(.evp-visual-arrow){display:block;color:#AAB9C9;font-size:var(--fs-11);margin-top:2px}.evp-visual-arrow{margin-inline-start:auto;color:var(--orange)}.evp-orbit{position:absolute;z-index:3;border:1px solid rgba(255,255,255,.35);border-radius:50%;pointer-events:none}.evp-orbit.o1{width:72px;height:72px;top:32px;inset-inline-start:30px}.evp-orbit.o2{width:10px;height:10px;top:63px;inset-inline-start:94px;background:var(--orange);border:0;box-shadow:0 0 0 8px rgba(242,107,29,.17)}
.evp-tools{position:sticky;top:70px;z-index:25;background:rgba(250,244,236,.93);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);padding:14px 0 16px;box-shadow:0 5px 20px rgba(10,20,35,.05)}
.evp-categories{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:1px 0 12px}.evp-categories::-webkit-scrollbar{display:none}.evp-cat-btn{flex:none;min-height:36px;padding:8px 15px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:var(--fs-12);font-weight:800;transition:.2s}.evp-cat-btn:hover{border-color:var(--orange);color:var(--orange)}.evp-cat-btn.active{background:var(--orange);border-color:var(--orange);color:#fff;box-shadow:0 6px 16px rgba(242,107,29,.2)}
.evp-filter-card{display:grid;grid-template-columns:minmax(230px,1.4fr) repeat(3,minmax(130px,.55fr)) 38px;gap:9px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:10px;box-shadow:var(--sh-sm)}.evp-search-field{height:44px;display:flex;align-items:center;gap:9px;padding:0 12px;border:1px solid var(--line-2);border-radius:var(--r);color:var(--muted);background:#FBFCFE}.evp-search-field:focus-within{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-ring)}.evp-search-field .ic{color:var(--orange)}.evp-search-field input{width:100%;border:0;outline:0;background:transparent;font-size:var(--fs-13);min-width:0}.evp-select-wrap{display:flex;flex-direction:column;gap:4px}.evp-select-wrap span{font-size:var(--fs-10);font-weight:850;text-transform:uppercase;letter-spacing:.45px;color:var(--muted)}.evp-select-wrap select{width:100%;height:44px;padding:0 10px;border:1px solid var(--line-2);border-radius:var(--r);background:#FBFCFE;color:var(--navy-900);font-size:var(--fs-12);font-weight:750;outline:0}.evp-select-wrap select:focus{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-ring)}.evp-reset{height:44px;width:38px;display:grid;place-items:center;border-radius:var(--r);color:var(--muted);border:1px solid transparent}.evp-reset:hover{color:var(--orange);background:var(--orange-soft);border-color:var(--orange-ring)}.evp-results{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:10px 3px 0;color:var(--muted);font-size:var(--fs-11);font-weight:650}.evp-results b{color:var(--navy-900);font-size:var(--fs-14)}.evp-results select{border:0;background:transparent;color:var(--navy-900);font-size:var(--fs-11);font-weight:800;outline:0}
.evp-featured-sec{padding:46px 0 36px;background:var(--cream)}.evp-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:22px}.evp-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--orange);font-size:var(--fs-11);font-weight:850;letter-spacing:1.1px;text-transform:uppercase}.evp-section-head h2{font-size:clamp(24px,3vw,36px);font-weight:850;letter-spacing:-.7px;margin-top:8px}.evp-section-head h2 em{font-style:normal;color:var(--orange)}.evp-section-note{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:var(--fs-11);font-weight:700}.evp-section-note .ic{color:var(--green)}
.evp-featured-card{display:grid;grid-template-columns:minmax(310px,.9fr) minmax(0,1.1fr);overflow:hidden;border:1px solid var(--line);border-radius:var(--r-xl);background:#fff;box-shadow:var(--sh);min-height:430px}.evp-featured-media{position:relative;min-height:360px;background:var(--navy-900);overflow:hidden}.evp-featured-media>img{width:100%;height:100%;object-fit:cover;transition:.8s}.evp-featured-card:hover .evp-featured-media>img{transform:scale(1.05)}.evp-featured-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,20,32,.08),rgba(10,20,32,.82) 100%)}.evp-featured-date{position:absolute;top:20px;inset-inline-start:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:64px;height:70px;border-radius:var(--r-lg);background:rgba(255,255,255,.96);box-shadow:0 12px 24px rgba(0,0,0,.2)}.evp-featured-date b{font-size:var(--fs-27);line-height:1;color:var(--navy-900)}.evp-featured-date span{font-size:var(--fs-10);font-weight:850;letter-spacing:1px;color:var(--orange);margin-top:5px}.evp-featured-media-bottom{position:absolute;bottom:20px;inset-inline:20px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#fff;font-size:var(--fs-12);font-weight:800}.evp-featured-media-bottom span{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:rgba(10,20,32,.72);backdrop-filter:blur(7px);border:1px solid rgba(255,255,255,.18)}.evp-featured-body{display:flex;flex-direction:column;padding:34px 34px 28px}.evp-featured-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.evp-featured-label{display:inline-flex;align-items:center;gap:7px;color:var(--orange);font-size:var(--fs-11);font-weight:850;text-transform:uppercase;letter-spacing:.9px}.evp-featured-label i{display:block;width:8px;height:8px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 5px var(--orange-ring)}.evp-featured-body h3{font-size:clamp(24px,2.7vw,34px);font-weight:850;letter-spacing:-.7px;line-height:1.18;margin-top:16px}.evp-featured-body>p{color:var(--muted);font-size:var(--fs-14);line-height:1.8;margin-top:11px;max-width:670px}.evp-status{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:999px;font-size:var(--fs-10);font-weight:850;white-space:nowrap}.evp-status::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.evp-status.open{background:var(--green-soft);color:var(--green)}.evp-status.almost{background:var(--amber-soft);color:var(--amber)}.evp-status.full{background:var(--red-soft);color:var(--red)}.evp-status.upcoming{background:var(--blue-soft);color:var(--blue)}
.evp-featured-meta{display:flex;gap:10px 18px;flex-wrap:wrap;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:22px;color:var(--muted);font-size:var(--fs-12)}.evp-featured-meta span{display:inline-flex;align-items:center;gap:6px}.evp-featured-meta .ic{color:var(--orange)}.evp-featured-meta b{color:var(--navy-900)}.evp-progress{margin-top:17px}.evp-progress>div{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:var(--fs-11)}.evp-progress strong{color:var(--orange)}.evp-progress>i{display:block;height:7px;border-radius:999px;background:var(--line-2);overflow:hidden;margin-top:7px}.evp-progress>i b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--orange),#ffb37e)}.evp-featured-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:auto;padding-top:22px}.evp-hero-register,.evp-register-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:var(--r);background:var(--orange);color:#fff;font-size:var(--fs-12);font-weight:850;min-height:42px;padding:0 16px;transition:.2s}.evp-hero-register:hover,.evp-register-btn:hover{background:var(--orange-600);transform:translateY(-1px);box-shadow:0 8px 18px var(--orange-ring)}.evp-hero-register:disabled,.evp-register-btn:disabled{background:var(--muted-2);opacity:.7;cursor:not-allowed;box-shadow:none;transform:none}.evp-hero-register.done,.evp-register-btn.done{background:var(--green)}.evp-outline-btn,.evp-detail-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line-2);border-radius:var(--r);background:#fff;color:var(--navy-900);font-size:var(--fs-12);font-weight:800;min-height:42px;padding:0 14px;transition:.2s}.evp-outline-btn:hover,.evp-detail-btn:hover{border-color:var(--navy-600);background:var(--cream);transform:translateY(-1px)}.evp-share-links{display:flex;align-items:center;gap:7px;margin-inline-start:auto}.evp-share-links a{min-height:34px}.evp-connect{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:13px;color:var(--muted-2);font-size:var(--fs-10);font-weight:700}.evp-connect>a,.evp-share-links>a,.evp-detail-links>a{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:30px;padding:5px 9px;border-radius:999px;font-size:var(--fs-10);font-weight:850;transition:.2s}.evp-zoom{background:var(--blue-soft);color:var(--blue)}.evp-wa{background:var(--green-soft);color:var(--green)}.evp-connect>a:hover,.evp-share-links>a:hover,.evp-detail-links>a:hover{filter:brightness(.95);transform:translateY(-1px)}
.evp-catalogue{padding:28px 0 68px;background:#fff}.catalogue-head{align-items:flex-start;margin-bottom:25px}.catalogue-head p{color:var(--muted);font-size:var(--fs-13);line-height:1.8;margin-top:8px;max-width:660px}.evp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.evp-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:var(--r-xl);background:#fff;overflow:hidden;box-shadow:var(--sh-sm);transition:transform .3s,box-shadow .3s,border-color .3s}.evp-card:hover{transform:translateY(-6px);box-shadow:var(--sh);border-color:rgba(242,107,29,.38)}.evp-card-media{position:relative;height:205px;background:var(--navy-900);overflow:hidden}.evp-card-media>img{width:100%;height:100%;object-fit:cover;transition:.7s}.evp-card:hover .evp-card-media>img{transform:scale(1.06)}.evp-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,20,32,.03),rgba(10,20,32,.72) 100%)}.evp-date-badge{position:absolute;top:14px;inset-inline-start:14px;width:51px;height:57px;border-radius:var(--r);background:rgba(255,255,255,.96);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;box-shadow:0 8px 18px rgba(0,0,0,.18)}.evp-date-badge b{font-size:var(--fs-20);color:var(--navy-900)}.evp-date-badge span{color:var(--orange);font-size:var(--fs-9);font-weight:900;letter-spacing:1px;margin-top:4px}.evp-category{position:absolute;top:16px;inset-inline-end:52px;max-width:calc(100% - 125px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:rgba(14,27,46,.78);backdrop-filter:blur(7px);color:#fff;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:6px 10px;font-size:var(--fs-10);font-weight:800}.evp-bookmark{position:absolute;top:13px;inset-inline-end:13px;width:32px;height:32px;border-radius:var(--r);display:grid;place-items:center;color:#fff;background:rgba(14,27,46,.7);backdrop-filter:blur(7px);transition:.2s}.evp-bookmark:hover,.evp-bookmark.on{background:var(--orange);color:#fff}.evp-media-chips{position:absolute;bottom:13px;inset-inline:13px;display:flex;gap:6px;flex-wrap:wrap}.evp-media-chips span{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.92);color:var(--navy-900);font-size:var(--fs-10);font-weight:800}.evp-media-chips span:first-child{background:rgba(14,27,46,.83);color:#fff;border:1px solid rgba(255,255,255,.15)}.evp-card-body{display:flex;flex:1;flex-direction:column;padding:18px}.evp-status-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.evp-type{color:var(--orange);font-size:var(--fs-10);font-weight:850;letter-spacing:.8px;text-transform:uppercase}.evp-card-body h3{font-size:var(--fs-17);font-weight:850;line-height:1.35;margin-top:10px}.evp-card:hover h3{color:var(--orange)}.evp-desc{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:var(--muted);font-size:var(--fs-12);line-height:1.75;margin-top:7px;min-height:42px}.evp-meta{display:flex;flex-direction:column;gap:7px;border-top:1px solid var(--line);margin-top:14px;padding-top:12px;color:var(--muted);font-size:var(--fs-11)}.evp-meta span{display:flex;align-items:center;gap:6px;min-width:0}.evp-meta span em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal}.evp-meta .ic{color:var(--orange)}.evp-meta b{color:var(--navy-900)}.evp-speaker{display:flex;align-items:center;gap:8px;border-top:1px solid var(--line);margin-top:13px;padding-top:12px;min-width:0}.evp-avatar{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:var(--navy-900);color:#fff;font-size:var(--fs-9);font-weight:900;flex:none}.evp-speaker>span:nth-child(2){display:flex;flex-direction:column;min-width:0}.evp-speaker small{color:var(--muted-2);font-size:var(--fs-9)}.evp-speaker b{display:block;color:var(--navy-900);font-size:var(--fs-10);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:145px}.evp-regnum{margin-inline-start:auto;color:var(--muted);font-size:var(--fs-10);white-space:nowrap}.evp-card-actions{display:flex;gap:7px;margin-top:16px}.evp-card-actions .evp-detail-btn{flex:1}.evp-card-actions .evp-register-btn{min-width:88px;padding-inline:10px}.evp-connect{margin-top:11px}.evp-connect>span{margin-inline-end:auto}.evp-empty{max-width:450px;margin:20px auto;padding:45px 20px;text-align:center;border:1px dashed var(--line);border-radius:var(--r-xl);background:var(--cream)}.evp-empty>.ic{width:35px;height:35px;color:var(--orange);margin:0 auto 10px}.evp-empty h3{font-size:var(--fs-17)}.evp-empty p{color:var(--muted);font-size:var(--fs-12);margin-top:4px}
.evp-benefits{padding:42px 0;background:var(--navy-900);color:#fff}.evp-benefits>.container{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.evp-benefit{display:flex;align-items:flex-start;gap:13px;padding:20px;border:1px solid rgba(255,255,255,.11);border-radius:var(--r-lg);background:rgba(255,255,255,.045)}.evp-benefit>span{display:grid;place-items:center;width:43px;height:43px;border-radius:var(--r);flex:none;background:rgba(242,107,29,.16);color:#FF9A61}.evp-benefit>span.green{background:rgba(31,157,85,.17);color:#72D99A}.evp-benefit>span.blue{background:rgba(37,99,235,.18);color:#82ACFF}.evp-benefit b{display:block;color:#fff;font-size:var(--fs-13)}.evp-benefit p{color:#AAB9C9;font-size:var(--fs-11);line-height:1.65;margin-top:5px}
/* event modals */
.evp-reg-intro{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--cream);margin-bottom:17px}.evp-reg-intro>span{display:grid;place-items:center;width:38px;height:38px;border-radius:var(--r);background:var(--orange);color:#fff;flex:none}.evp-reg-intro b{display:block;font-size:var(--fs-13);line-height:1.45}.evp-reg-intro small{display:block;color:var(--muted);font-size:var(--fs-11);margin-top:3px}.evp-reg-form{display:flex;flex-direction:column;gap:13px}.evp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.evp-reg-form label{display:flex;flex-direction:column;gap:5px;color:var(--muted);font-size:var(--fs-11);font-weight:800}.evp-reg-form input,.evp-reg-form select,.evp-reg-form textarea{width:100%;border:1px solid var(--line-2);border-radius:var(--r);background:#fff;color:var(--ink);padding:10px 11px;font-size:var(--fs-13);font-weight:500;outline:0;resize:vertical}.evp-reg-form input:focus,.evp-reg-form select:focus,.evp-reg-form textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-ring)}.evp-form-wide{width:100%}.evp-consent{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:8px;color:var(--muted)!important;font-size:var(--fs-11)!important;font-weight:500!important;line-height:1.6}.evp-consent input{width:16px;min-width:16px;margin-top:2px;accent-color:var(--orange)}.evp-form-submit{min-height:44px}.evp-success{text-align:center;padding:5px 6px}.evp-success-icon{display:grid;place-items:center;width:65px;height:65px;border-radius:22px;margin:0 auto 13px;background:var(--green-soft);color:var(--green)}.evp-success-icon .ic{width:31px;height:31px}.evp-success-badge{display:inline-flex;padding:5px 10px;border-radius:999px;background:var(--green-soft);color:var(--green);font-size:var(--fs-10);font-weight:850}.evp-success h3{font-size:var(--fs-22);margin-top:9px}.evp-success>p{max-width:520px;margin:6px auto 15px;color:var(--muted);font-size:var(--fs-12);line-height:1.75}.evp-ticket{display:flex;flex-direction:column;gap:3px;padding:13px 15px;text-align:start;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--cream)}.evp-ticket b{font-size:var(--fs-13)}.evp-ticket span{font-size:var(--fs-11);color:var(--muted)}.evp-access{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:13px}.evp-access a{display:flex;align-items:center;gap:10px;text-align:start;padding:12px;border-radius:var(--r-lg);font-weight:700}.evp-access a>.ic{width:23px;height:23px}.evp-access small,.evp-access b{display:block}.evp-access small{font-size:var(--fs-10);opacity:.75}.evp-access b{font-size:var(--fs-12);margin-top:2px}.evp-access-note{color:var(--muted);font-size:var(--fs-11);padding-top:12px}.evp-detail{margin:-4px}.evp-detail-hero{position:relative;height:230px;overflow:hidden;border-radius:var(--r-lg);background:var(--navy-900);color:#fff}.evp-detail-hero img{width:100%;height:100%;object-fit:cover}.evp-detail-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(10,20,32,.9))}.evp-detail-hero>div{position:absolute;z-index:1;bottom:20px;inset-inline:20px}.evp-detail-hero span{display:inline-block;color:#FFB27D;font-size:var(--fs-10);font-weight:850;text-transform:uppercase;letter-spacing:.7px}.evp-detail-hero h3{color:#fff;font-size:clamp(20px,3vw,29px);line-height:1.25;margin-top:7px}.evp-detail-body{padding:22px 4px 3px}.evp-detail-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:13px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--cream);margin-bottom:22px}.evp-detail-stats span{display:flex;flex-direction:column;gap:4px;min-width:0}.evp-detail-stats .ic{color:var(--orange)}.evp-detail-stats b{font-size:var(--fs-12);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.evp-detail-stats small{color:var(--muted);font-size:var(--fs-10)}.evp-detail-body h4{font-size:var(--fs-15);margin:17px 0 7px}.evp-detail-body p{color:var(--muted);font-size:var(--fs-13);line-height:1.8}.evp-agenda{display:flex;flex-direction:column;gap:7px}.evp-agenda-row{display:flex;align-items:center;gap:11px;padding:9px 11px;border:1px solid var(--line);border-radius:var(--r);font-size:var(--fs-12);color:var(--muted)}.evp-agenda-num{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:var(--orange-soft);color:var(--orange);font-size:var(--fs-10);font-weight:850;flex:none}.evp-speakers{display:flex;gap:7px;flex-wrap:wrap}.evp-speaker-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid var(--line);border-radius:999px;color:var(--navy-900);font-size:var(--fs-11);font-weight:750}.evp-speaker-chip i{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:var(--navy-900);color:#fff;font-style:normal;font-size:var(--fs-9)}.evp-detail-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.evp-detail-links a{min-height:38px;padding:0 13px}.evp-mine-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--cream);margin-bottom:9px}.evp-mine-row>div:first-child{min-width:0}.evp-mine-row b,.evp-mine-row span{display:block}.evp-mine-row b{font-size:var(--fs-12);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.evp-mine-row span{color:var(--muted);font-size:var(--fs-10);margin-top:4px}.evp-mine-row>div:last-child{display:flex;gap:5px;flex:none}.evp-mine-row a{font-size:var(--fs-10);padding:6px 8px}
@media(max-width:1050px){.evp-hero-grid{gap:30px}.evp-filter-card{grid-template-columns:minmax(200px,1.2fr) repeat(3,minmax(115px,.65fr)) 38px}.evp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.evp-hero-grid{grid-template-columns:1fr}.evp-hero-visual{min-height:310px;max-width:620px}.evp-filter-card{grid-template-columns:1fr 1fr}.evp-search-field{grid-column:1/-1}.evp-reset{position:absolute;inset-inline-end:10px;margin-top:-54px}.evp-results{grid-column:1/-1}.evp-featured-card{grid-template-columns:1fr}.evp-featured-media{min-height:270px;height:270px}.evp-featured-body{padding:25px}.evp-benefits>.container{grid-template-columns:1fr}}
@media(max-width:620px){.evp-hero{padding:28px 0 42px}.evp-hero h1{font-size:clamp(33px,11vw,48px);letter-spacing:-1px}.evp-hero-copy>p{font-size:var(--fs-13)}.evp-trust{gap:10px 14px;margin-top:25px}.evp-trust span{font-size:var(--fs-10)}.evp-hero-visual{min-height:245px}.evp-visual-card{inset-inline:12px;bottom:12px;padding:11px}.evp-visual-card b{font-size:var(--fs-11)}.evp-filter-card{grid-template-columns:1fr}.evp-search-field,.evp-results{grid-column:1}.evp-reset{margin-top:-54px}.evp-section-head{align-items:flex-start;flex-direction:column}.evp-section-note{display:none}.evp-featured-body{padding:20px 17px}.evp-featured-top{align-items:flex-start;flex-direction:column;gap:10px}.evp-featured-body h3{font-size:var(--fs-22)}.evp-featured-actions{align-items:stretch}.evp-share-links{width:100%;margin-inline-start:0}.evp-share-links>a{flex:1}.evp-grid{grid-template-columns:1fr}.evp-card-media{height:190px}.evp-card-body{padding:16px}.evp-card-actions{gap:6px}.evp-card-actions .evp-detail-btn{padding-inline:9px}.evp-connect{gap:5px}.evp-connect>span{width:100%;margin-inline-end:0}.evp-connect>a{flex:1}.evp-form-grid,.evp-access,.evp-detail-stats{grid-template-columns:1fr 1fr}.evp-detail-hero{height:200px}.evp-detail-stats span:last-child{grid-column:1/-1}.evp-mine-row{align-items:flex-start;flex-direction:column}.evp-mine-row>div:last-child{width:100%}.evp-mine-row a{flex:1;text-align:center}.evp-modal .m-bd{padding:16px}}

/* ================= Register — luxury split-screen (pro) ================= */
.rgx{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:calc(100vh - var(--header-h));background:#fff}
.rgx-main{min-width:0}
/* ---------- left: cinematic brand panel ---------- */
.rgx-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--navy-950);color:#fff;display:flex;flex-direction:column;justify-content:space-between;gap:18px;padding:24px clamp(20px,2.8vw,46px);min-width:0}
.rgx-bg{position:absolute;inset:0;z-index:-2;overflow:hidden}
.rgx-bg img{width:100%;height:100%;object-fit:cover;object-position:center 42%;animation:rgxKen 26s cubic-bezier(.4,0,.2,1) infinite alternate;will-change:transform}
@keyframes rgxKen{from{transform:scale(1) translateY(0)}to{transform:scale(1.09) translateY(-1.6%)}}
.rgx-veil{position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(10,20,32,.95) 6%,rgba(10,20,32,.6) 50%,rgba(10,20,32,.34))}
.rgx-veil::after{content:"";position:absolute;inset:0;background:linear-gradient(to right,rgba(10,20,32,.5),transparent 28%,transparent 72%,rgba(10,20,32,.5))}
.rgx-glow{position:absolute;z-index:-1;border-radius:50%;filter:blur(70px);pointer-events:none}
.rgx-glow.a{width:340px;height:340px;top:-110px;inset-inline-start:-110px;background:rgba(242,107,29,.3)}
.rgx-glow.b{width:280px;height:280px;bottom:70px;inset-inline-end:30px;background:rgba(232,147,12,.15)}
.rgx-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.rgx-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:10.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:rgba(255,255,255,.92)}
.rgx-chip .dot-live{position:relative;width:8px;height:8px;border-radius:50%;background:var(--orange);flex:none}
.rgx-chip .dot-live::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid rgba(242,107,29,.55);animation:rgxPing 1.6s ease-out infinite}
@keyframes rgxPing{0%{transform:scale(.45);opacity:1}100%{transform:scale(1.25);opacity:0}}
.rgx-chip.ok{color:#C9F3DC}.rgx-chip.ok .ic{color:var(--green)}
.rgx-brandcard{max-width:530px;background:rgba(10,20,32,.6);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-radius:22px;padding:clamp(16px,2vw,26px);box-shadow:0 24px 60px rgba(0,0,0,.45)}
.rgx-kicker{display:flex;align-items:center;gap:8px;font-size:10.5px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:#FFB27D}
.rgx-kicker::before{content:"";width:26px;height:5px;border-radius:99px;background:linear-gradient(90deg,var(--orange),#F7B267);flex:none}
.rgx-brandcard h1{color:#fff;font-size:clamp(20px,2.1vw,29px);font-weight:800;letter-spacing:-.3px;margin:9px 0 6px}
.rgx-brandcard h1 span{background:linear-gradient(90deg,#FFB27D,#FFD9A8);-webkit-background-clip:text;background-clip:text;color:transparent}
.rgx-brandcard>p{font-size:12.5px;color:#C7D2DE;line-height:1.75}
.rgx-pills{display:flex;flex-wrap:wrap;gap:7px;margin:13px 0 15px}
.rgx-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:10px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);font-size:11.5px;font-weight:600;color:#E6ECF3;transition:.18s}
.rgx-pill .ic{width:14px;height:14px;color:#FFB27D}
.rgx-pill:hover{transform:translateY(-2px);background:rgba(255,255,255,.13);border-color:rgba(242,107,29,.5)}
.rgx-metrics{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.13);padding-top:13px;gap:10px}
.rgx-metrics>div+div{border-inline-start:1px solid rgba(255,255,255,.13);padding-inline-start:13px}
.rgx-metrics b{display:block;font-size:clamp(16px,1.6vw,21px);font-weight:800;color:#fff;line-height:1.2}
.rgx-metrics span{font-size:10.5px;color:#9FB0C1;font-weight:600;line-height:1.4;display:block;margin-top:2px}
.rgx-support{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:16px;padding:11px 14px}
.rgx-sup-l{display:flex;align-items:center;gap:10px;min-width:0}
.rgx-sup-ic{width:34px;height:34px;border-radius:10px;background:rgba(242,107,29,.18);border:1px solid rgba(242,107,29,.35);display:flex;align-items:center;justify-content:center;color:#FFB27D;flex:none}
.rgx-sup-ic .ic{width:15px;height:15px}
.rgx-sup-c{display:flex;flex-direction:column;min-width:0}
.rgx-sup-t{font-size:10px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;color:#B9C6D4;display:inline-flex;align-items:center;gap:6px}
.rgx-247{display:inline-flex;align-items:center;gap:4px;font-size:9.5px;font-weight:800;letter-spacing:0;color:#C9F3DC;background:rgba(31,157,85,.16);border:1px solid rgba(31,157,85,.4);border-radius:99px;padding:2px 8px;text-transform:none}
.rgx-sup-s{font-size:11.5px;color:#C7D2DE;margin-top:2px}
.rgx-sup-links{display:flex;align-items:center;gap:16px;font-size:12px;flex-wrap:wrap}
.rgx-sup-links a{display:inline-flex;align-items:center;gap:7px;color:#C7D2DE;transition:color .15s;min-width:0}
.rgx-sup-links a:hover{color:#fff}
.rgx-sup-links a .ic{width:14px;height:14px;flex:none}
/* ---------- right: form panel ---------- */
.rgx-main{display:flex;flex-direction:column;gap:14px;padding:20px clamp(18px,3.4vw,58px) 16px;background-image:radial-gradient(circle,rgba(19,32,46,.045) 1px,transparent 1px);background-size:22px 22px}
.rgx-topbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.rgx-mark{display:inline-flex;align-items:center;gap:8px;font-weight:900;letter-spacing:2.5px;color:var(--navy-900);font-size:13px;direction:ltr;unicode-bidi:isolate}
.rgx-mark i{width:10px;height:10px;background:var(--orange);transform:rotate(45deg);border-radius:2px;box-shadow:0 0 0 4px var(--orange-soft)}
.rgx-mark b{color:var(--orange)}
.rgx-alt{font-size:12px;color:var(--muted-2);display:inline-flex;align-items:center;gap:8px}
.rgx-si{font-weight:800;font-size:12px;color:var(--orange-700);background:var(--orange-soft);padding:7px 13px;border-radius:99px;transition:.15s}
.rgx-si:hover{background:#FFE2CD}
.rgx-body{margin:auto;width:100%;max-width:478px;display:flex;flex-direction:column;gap:12px;padding-block:4px}
.rgx-head{text-align:center;display:flex;flex-direction:column;gap:4px}
.rgx-head h2{font-size:clamp(20px,2.2vw,26px);font-weight:800;letter-spacing:-.3px}
.rgx-head p{font-size:13px;color:var(--muted)}
.rgx-form{display:flex;flex-direction:column;gap:13px}
.rgx-g2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.rgx-field{display:flex;flex-direction:column;gap:5px;min-width:0;text-align:start;position:relative}
.rgx-lbl{font-size:11px;font-weight:800;letter-spacing:.7px;text-transform:uppercase;color:#42536A}
.rgx-lbl .req{color:var(--orange);font-weight:800}
.rgx-ctl{position:relative;display:flex;align-items:center}
.ic.rgx-ic{position:absolute;inset-inline-start:13px;width:15px;height:15px;color:var(--muted-2);pointer-events:none}
.rgx-in{width:100%;min-width:0;border:1.5px solid var(--line-2);border-radius:12px;background:#fff;padding:11px 13px;padding-inline-start:38px;font-size:var(--fs-14);outline:none;transition:border-color .15s,box-shadow .15s;appearance:none}
.rgx-in::placeholder{color:var(--muted-2)}
.rgx-in:focus{border-color:var(--orange);box-shadow:0 0 0 4px var(--orange-ring)}
.rgx-in.bad{border-color:var(--red);box-shadow:0 0 0 4px rgba(214,69,69,.1)}
select.rgx-in{cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238B98A5' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-inline-end:34px}
html[dir="rtl"] select.rgx-in{background-position:left 12px center}
/* dropdown (register as) */
.rgx-dd-btn{display:flex;align-items:center;gap:11px;text-align:start;cursor:pointer;padding-inline:13px}
.rgx-dd-ic{width:34px;height:34px;border-radius:10px;background:var(--cream-2);display:flex;align-items:center;justify-content:center;color:var(--navy-800);flex:none}
.rgx-dd-ic .ic{width:16px;height:16px}
.rgx-dd-tx{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.35}
.rgx-dd-tx b{font-size:13.5px;color:var(--navy-900);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rgx-dd-tx small{font-size:11px;color:var(--muted-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rgx-chev{width:16px;height:16px;color:var(--muted-2);flex:none;transition:transform .18s;margin-inline-start:auto}
.rgx-dd-btn[aria-expanded="true"] .rgx-chev{transform:rotate(180deg)}
.rgx-dd-menu{position:absolute;top:calc(100% + 6px);inset-inline:0;z-index:60;background:#fff;border:1px solid var(--line-2);border-radius:14px;box-shadow:var(--sh-lg);max-height:268px;overflow:auto;padding:4px;display:none}
.rgx-dd-menu.open{display:block;animation:rgxPop .18s cubic-bezier(.16,1,.3,1)}
@keyframes rgxPop{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.rgx-opt{display:flex;gap:10px;align-items:flex-start;padding:9px 10px;border-radius:10px;cursor:pointer;transition:background .12s}
.rgx-opt:hover{background:var(--cream)}
.rgx-opt.sel{background:var(--orange-soft)}
.rgx-opt .o-ic{width:34px;height:34px;border-radius:10px;background:var(--cream-2);display:flex;align-items:center;justify-content:center;flex:none;color:var(--navy-800)}
.rgx-opt .o-ic .ic{width:16px;height:16px}
.rgx-opt.sel .o-ic{background:#fff;color:var(--orange)}
.rgx-opt .o-tx{flex:1;min-width:0}
.rgx-opt .o-tx b{font-size:13px;color:var(--navy-900);display:block}
.rgx-opt .o-tx p{font-size:11px;color:var(--muted);line-height:1.45;margin-top:1px}
.rgx-opt .o-check{margin-inline-start:auto;color:var(--orange);display:none;align-self:center}
.rgx-opt .o-check .ic{width:15px;height:15px}
.rgx-opt.sel .o-check{display:inline-flex}
/* password eye + strength meter */
.rgx-eye{position:absolute;inset-inline-end:8px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:8px;color:var(--muted-2);transition:.15s}
.rgx-eye:hover{color:var(--navy-800);background:var(--cream)}
.rgx-eye .ic{width:16px;height:16px}
.rgx-meter{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:2px}
.rgx-bars{display:flex;gap:4px;flex:1;max-width:120px}
.rgx-bars i{height:4px;flex:1;border-radius:99px;background:var(--line-2);transition:background .25s}
.rgx-bars i.on-1{background:var(--red)}.rgx-bars i.on-2{background:var(--amber)}.rgx-bars i.on-3{background:var(--orange)}.rgx-bars i.on-4{background:var(--green)}
.rgx-mtxt{font-size:11px;color:var(--muted-2);font-weight:600;white-space:nowrap}
/* agreements */
.rgx-checks{display:flex;flex-direction:column;gap:8px}
.rgx-ck{display:flex;gap:9px;align-items:flex-start;font-size:12.5px;color:var(--muted);cursor:pointer;line-height:1.5}
.rgx-ck input{accent-color:var(--orange);width:15px;height:15px;margin-top:2px;flex:none;cursor:pointer}
.rgx-ck a{color:var(--orange-700);font-weight:700}
.rgx-ck a:hover{text-decoration:underline}
/* errors */
.rgx-err{display:none;font-size:11.5px;font-weight:600;color:var(--red);line-height:1.45}
.rgx-err.show{display:block}
/* submit */
.rgx-go{width:100%;height:48px;border-radius:12px;background:linear-gradient(135deg,var(--orange),var(--orange-600));color:#fff;font-weight:800;font-size:14.5px;display:inline-flex;align-items:center;justify-content:center;gap:9px;box-shadow:0 10px 24px var(--orange-ring);transition:transform .15s,box-shadow .15s,filter .15s;cursor:pointer}
.rgx-go:hover{transform:translateY(-1px);filter:brightness(1.05);box-shadow:0 14px 30px var(--orange-ring)}
.rgx-go:active{transform:translateY(0) scale(.995)}
.rgx-go:disabled{opacity:.75;cursor:not-allowed;transform:none}
.rgx-go .ic{width:15px;height:15px}
.rgx-spin{width:15px;height:15px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:rgxSpin .7s linear infinite;display:none}
@keyframes rgxSpin{to{transform:rotate(360deg)}}
.rgx-go.loading .rgx-spin{display:inline-block}
.rgx-note{display:flex;gap:8px;align-items:flex-start;font-size:11.5px;color:var(--muted-2);line-height:1.65;text-align:start}
.rgx-note .ic{width:14px;height:14px;flex:none;color:var(--green);margin-top:2px}
/* panel footer */
.rgx-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line-2);padding-top:10px;font-size:11px;color:var(--muted-2);flex-wrap:wrap}
.rgx-foot .ssl{display:inline-flex;align-items:center;gap:5px;color:var(--green);font-weight:700}
.rgx-foot-links a:hover{color:var(--navy-900)}
/* entrance motion */
@media(prefers-reduced-motion:no-preference){
  .rgx-body{animation:rgxUp .5s cubic-bezier(.16,1,.3,1) both}
  .rgx-brandcard{animation:rgxUp .6s .05s cubic-bezier(.16,1,.3,1) both}
}
@keyframes rgxUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){
  .rgx-bg img{animation:none}
  .rgx-chip .dot-live::after{animation:none}
}
/* responsive */
@media(max-width:1100px){
  .rgx{grid-template-columns:1fr;min-height:0}
  .rgx-main{order:1}
  .rgx-hero{order:2;padding:22px 18px}
  .rgx-brandcard{max-width:640px}
}
@media(max-width:560px){
  .rgx-g2{grid-template-columns:1fr}
  .rgx-metrics{gap:8px}
  .rgx-metrics>div+div{padding-inline-start:8px}
  .rgx-sup-links{width:100%;justify-content:space-between}
}

/* ================= Login — luxury split-screen (pro) ================= */
/* Reuses the register (.rgx) design language; only login-specific pieces: */
.lgx-main{background-image:linear-gradient(rgba(19,32,46,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(19,32,46,.05) 1px,transparent 1px);background-size:26px 26px}
.rgx-brandcard.lgx-accent{position:relative}
.rgx-brandcard.lgx-accent::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,rgba(242,107,29,.55),transparent 38%,transparent 68%,rgba(242,107,29,.28));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.lgx-sec .ic{color:#7FDCA4}
.lgx-assist{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;color:var(--muted);padding:7px 13px;border-radius:99px;transition:.15s}
.lgx-assist .ic{width:14px;height:14px}
.lgx-assist:hover{color:var(--orange-700);background:var(--orange-soft)}
.lgx-lblrow{display:flex;align-items:center;justify-content:space-between;gap:10px}
.lgx-forgot{font-size:11.5px;font-weight:700;color:var(--orange-700);background:none;border:none;cursor:pointer;padding:0;transition:.15s}
.lgx-forgot:hover{text-decoration:underline;color:var(--orange)}
.lgx-remember{display:flex;align-items:center;gap:9px;font-size:12.5px;color:var(--muted);cursor:pointer;user-select:none}
.lgx-remember input{accent-color:var(--orange);width:15px;height:15px;flex:none;cursor:pointer}
.lgx-cred{margin-top:-4px}
.lgx-divider{display:flex;align-items:center;gap:12px;margin:2px 0}
.lgx-divider i{flex:1;height:1px;background:var(--line-2)}
.lgx-divider span{font-size:10px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted-2);white-space:nowrap}
.lgx-google{width:100%;height:44px;border-radius:12px;border:1.5px solid var(--line-2);background:#fff;color:var(--navy-900);font-weight:700;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;transition:.15s}
.lgx-google:hover{background:var(--cream);border-color:var(--line)}
.lgx-google:active{transform:scale(.99)}
.lgx-google svg{width:16px;height:16px;flex:none}
.lgx-new{text-align:center;font-size:12.5px;color:var(--muted);margin-top:2px}
.lgx-new a{color:var(--orange-700);font-weight:800}
.lgx-new a:hover{text-decoration:underline}
.lgx-demo{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;font-size:10.5px;color:var(--muted-2);padding-top:2px}
.lgx-demo button{font-size:10.5px;font-weight:700;color:var(--navy-700);background:var(--cream-2);border:1px solid var(--line);border-radius:99px;padding:3px 10px;cursor:pointer;transition:.15s}
.lgx-demo button:hover{background:var(--orange-soft);border-color:var(--orange);color:var(--orange-700)}
.lgx-shake{animation:lgxShake .4s cubic-bezier(.36,.07,.19,.97)}
@keyframes lgxShake{10%,90%{transform:translateX(-1px)}20%,80%{transform:translateX(2px)}30%,50%,70%{transform:translateX(-4px)}40%,60%{transform:translateX(4px)}}
@media(max-width:560px){.lgx-sec{display:none}}


/* ===== Admin v2: register verification docs + services marketplace ===== */
.rgx-docs-head{display:flex;gap:12px;align-items:flex-start;background:var(--cream,#FAF4EC);border:1px solid var(--line-2);border-radius:12px;padding:12px;margin:2px 0 10px}
.rgx-doc{display:flex;flex-direction:column;align-items:center;gap:6px;border:1.5px dashed var(--line-2,#D8DEE5);border-radius:12px;padding:14px 8px;cursor:pointer;text-align:center;font-size:var(--fs-12,12px);transition:border-color .2s,background .2s}
.rgx-doc:hover{border-color:var(--orange);background:#FFF7F0}
.rgx-doc .ic{color:var(--orange);width:22px;height:22px}
.rgx-doc b{font-size:var(--fs-12,12px)}
.rgx-doc small{color:var(--muted,#8B98A5);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.svcCard{transition:transform .18s,box-shadow .18s}
.svcCard:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(14,27,46,.12)}

/* ===== Homepage: Selected Packages for Umrah Mufradah (row scroller) ===== */
.lp-head h2 span{color:var(--orange)}
.lp-row .ump-card{flex:0 0 300px;max-width:86%}
.lp-row .ump-card .ump-media img{height:190px}

/* ===== PWA standalone (installed app) polish ===== */
@media all and (display-mode: standalone){
  body{padding-top:env(safe-area-inset-top)}
  header{padding-top:calc(var(--sat,0px) + env(safe-area-inset-top,0px))}
  .footer .bottom{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}
  #toastRoot{padding-top:calc(10px + env(safe-area-inset-top,0px))}
}
html[dir="rtl"] .kpg-bar-prog i{right:auto;left:auto;float:right}
