@import url('https://fonts.googleapis.com/css2?family=Tajawal:wght@400;500;700;800&family=Readex+Pro:wght@300;400;500;600;700&family=Cairo:wght@400;500;600;700;800&display=swap');

:root{
  --bg:#0b0b0b;
  --bg-soft:#14110e;
  --ink:#181512;
  --muted:#756b61;
  --gold:#c9954c;
  --gold-2:#efcf92;
  --cream:#f7f0e5;
  --white:#fffaf2;
  --glass:rgba(255,255,255,.08);
  --glass-2:rgba(255,255,255,.14);
  --line:rgba(255,255,255,.16);
  --line-dark:rgba(24,21,18,.12);
  --shadow:0 30px 80px rgba(0,0,0,.28);
  --radius:28px;
  --ease:cubic-bezier(.2,.78,.2,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Cairo','Almarai','Segoe UI',Tahoma,Arial,sans-serif;
  font-size:13px;
  line-height:1.8;
  color:var(--white);
  background:var(--bg);
  overflow-x:hidden;
}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
::selection{background:rgba(201,149,76,.45);color:#fff}

.noise-layer{
  position:fixed;inset:0;pointer-events:none;z-index:1;opacity:.06;mix-blend-mode:soft-light;
  background-image:linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px);
  background-size:48px 48px;
}
.cursor-glow{position:fixed;width:340px;height:340px;border-radius:999px;pointer-events:none;z-index:2;opacity:0;background:radial-gradient(circle,rgba(239,207,146,.18),transparent 68%);transform:translate(-50%,-50%);transition:opacity .25s ease}
.cursor-glow.active{opacity:1}

.site-header{
  position:fixed;
  top:18px;
  left:50%;
  transform:translateX(-50%);
  width:min(1260px,calc(100% - 36px));
  min-height:66px;
  z-index:50;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:16px;
  padding:9px 12px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  background:rgba(12,10,8,.58);
  backdrop-filter:blur(26px) saturate(1.2);
  box-shadow:0 22px 70px rgba(0,0,0,.25);
}
.site-header.is-plain{position:sticky;margin:18px auto 0;transform:none;left:auto;top:18px;background:rgba(16,13,10,.74)}
.brand{grid-column:3;justify-self:end;display:flex;align-items:center;gap:12px;min-width:260px;justify-content:flex-start}
.brand-rowad{width:118px;max-height:40px;object-fit:contain}
.brand-jubail{width:124px;max-height:38px;object-fit:contain}
.brand-divider{width:1px;height:30px;background:rgba(255,255,255,.22)}
.main-nav{grid-column:2;justify-self:center;display:flex;align-items:center;justify-content:center;gap:3px;white-space:nowrap}
.main-nav a{position:relative;padding:8px 12px;border-radius:999px;color:rgba(255,250,242,.72);font-size:12px;font-weight:700;transition:.25s var(--ease)}
.main-nav a:hover{color:#fff;background:rgba(255,255,255,.10);transform:translateY(-1px)}
.main-nav .nav-cta{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#1b1208;box-shadow:0 12px 30px rgba(201,149,76,.26)}
.header-spacer{grid-column:1}
.menu-toggle{display:none;grid-column:1;justify-self:start;width:42px;height:42px;border:0;border-radius:14px;background:rgba(255,255,255,.12);color:#fff}

main{position:relative;z-index:3}.section{padding:74px 28px}.section-inner{width:min(1180px,100%);margin:auto}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}.section-head span,.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--gold-2);font-size:10.5px;font-weight:800;letter-spacing:.08em}.section-head span::before,.eyebrow::before{content:'';width:24px;height:1px;background:linear-gradient(90deg,var(--gold),transparent)}.section-head h2{margin:8px 0 0;font-family:'Almarai','Cairo',sans-serif;font-size:clamp(21px,2.35vw,34px);line-height:1.4}.section-head p{margin:0;max-width:380px;color:rgba(255,250,242,.58);font-size:12px}

.hero-buildings{position:relative;min-height:100svh;padding:108px 28px 46px;display:flex;align-items:center;isolation:isolate;overflow:hidden}
.hero-buildings::before{content:'';position:absolute;inset:0;z-index:-3;background:linear-gradient(180deg,rgba(7,7,7,.26),rgba(7,7,7,.74) 75%,#0b0b0b),linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.25) 52%,rgba(0,0,0,.72)),url('../images/exterior-06.jpg') center/cover no-repeat;transform:scale(1.04);animation:heroBreath 16s ease-in-out infinite alternate}
.hero-buildings::after{content:'';position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 50% 16%,rgba(239,207,146,.20),transparent 34%),linear-gradient(120deg,transparent 0 30%,rgba(255,255,255,.08) 30.1% 30.25%,transparent 30.4% 100%);opacity:.78}
@keyframes heroBreath{from{transform:scale(1.04)}to{transform:scale(1.09) translate3d(-18px,8px,0)}}
.buildings-wrap{width:min(1240px,100%);margin:auto}.building-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2.2vw,26px);perspective:1200px}.building-card{position:relative;min-height:clamp(420px,56vh,610px);border:1px solid rgba(255,255,255,.18);border-radius:34px;padding:26px;overflow:hidden;background:linear-gradient(145deg,rgba(255,255,255,.15),rgba(255,255,255,.045));backdrop-filter:blur(22px) saturate(1.25);box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.20);display:flex;flex-direction:column;justify-content:space-between;transform-style:preserve-3d;transition:transform .4s var(--ease),border-color .3s ease,box-shadow .3s ease}.building-card::before{content:'';position:absolute;inset:-1px;background:radial-gradient(circle at 72% 12%,rgba(239,207,146,.28),transparent 34%),linear-gradient(120deg,transparent 0 42%,rgba(255,255,255,.13) 42.2%,transparent 43%);opacity:.7;pointer-events:none}.building-card::after{content:'';position:absolute;top:-20%;right:-35%;width:46%;height:145%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.20),transparent);transform:rotate(11deg) translateX(110%);transition:transform .85s var(--ease)}.building-card:hover{border-color:rgba(239,207,146,.52);box-shadow:0 42px 120px rgba(0,0,0,.38),0 0 0 1px rgba(239,207,146,.12) inset}.building-card:hover::after{transform:rotate(11deg) translateX(-230%)}.building-card.featured{transform:translateY(-18px)}.building-card.featured:hover{transform:translateY(-22px)}.building-number{position:relative;z-index:2;font-family:'Almarai','Cairo',sans-serif;font-size:clamp(50px,7vw,110px);font-weight:800;color:rgba(255,255,255,.12);line-height:1}.tower-mark{position:absolute;inset:auto 22px 140px auto;display:flex;gap:8px;align-items:flex-end;opacity:.68;transform:translateZ(35px)}.tower-mark i{display:block;width:36px;border-radius:12px 12px 0 0;background:linear-gradient(180deg,rgba(239,207,146,.55),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.20)}.tower-mark i:nth-child(1){height:130px}.tower-mark i:nth-child(2){height:185px}.tower-mark i:nth-child(3){height:96px}.building-content{position:relative;z-index:2;transform:translateZ(44px)}.building-content h1{font-family:'Almarai','Cairo',sans-serif;font-size:clamp(22px,2.65vw,42px);line-height:1.32;margin:0 0 8px}.building-unit-count{display:inline-flex;padding:6px 13px;border-radius:999px;background:rgba(239,207,146,.12);border:1px solid rgba(239,207,146,.26);color:var(--gold-2);font-size:12px;font-weight:800}.building-content p{margin:14px 0 0;color:rgba(255,250,242,.62);font-size:12.5px;max-width:260px}.building-actions{position:relative;z-index:3;display:grid;grid-template-columns:1fr 1fr;gap:10px;transform:translateZ(58px)}

.btn{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:10px 18px;font-size:12px;font-weight:800;transition:.26s var(--ease);white-space:nowrap}.btn:hover{transform:translateY(-3px)}.btn-primary{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#1a1107;box-shadow:0 18px 38px rgba(201,149,76,.28)}.btn-ghost{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.16)}.btn-dark{background:#17130f;color:#fff;border:1px solid rgba(255,255,255,.12)}.btn-link{background:transparent;color:var(--gold-2);padding-inline:8px}

.showcase{background:#0b0b0b}.cinema-slider{position:relative;height:min(70vh,620px);min-height:430px;border-radius:34px;overflow:hidden;border:1px solid rgba(255,255,255,.14);box-shadow:var(--shadow);background:#111}.cinema-slide{position:absolute;inset:0;opacity:0;transform:scale(1.06);transition:opacity .9s ease,transform 6s ease;background-size:cover;background-position:center}.cinema-slide.active{opacity:1;transform:scale(1)}.cinema-slider::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.58)),linear-gradient(90deg,rgba(0,0,0,.58),transparent 55%);pointer-events:none}.slider-meta{position:absolute;right:26px;bottom:24px;z-index:2}.slider-meta span{font-size:11px;color:var(--gold-2);font-weight:800}.slider-meta h3{margin:6px 0 0;font-family:'Almarai','Cairo',sans-serif;font-size:clamp(24px,3vw,42px)}.slider-controls{position:absolute;left:22px;bottom:22px;z-index:3;display:flex;gap:8px}.slider-controls button{width:42px;height:42px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.10);color:#fff;backdrop-filter:blur(16px);transition:.25s var(--ease)}.slider-controls button:hover{background:rgba(239,207,146,.25);transform:translateY(-2px)}.slider-dots{position:absolute;right:26px;top:24px;z-index:3;display:flex;gap:7px}.slider-dots button{width:28px;height:3px;border:0;border-radius:99px;background:rgba(255,255,255,.28);padding:0;transition:.25s ease}.slider-dots button.active{width:52px;background:var(--gold-2)}

.advantages,.guarantees{background:#f7f0e5;color:var(--ink)}.advantages .section-head span,.guarantees .section-head span{color:#9a6b2e}.advantages .section-head h2,.guarantees .section-head h2{color:var(--ink)}.advantages .section-head p,.guarantees .section-head p{color:#786e64}.icon-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}.icon-card{min-height:112px;padding:16px 10px;border-radius:22px;background:rgba(255,255,255,.72);border:1px solid rgba(24,21,18,.07);box-shadow:0 16px 40px rgba(31,27,22,.07);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;transition:.28s var(--ease)}.icon-card:hover{transform:translateY(-7px);box-shadow:0 26px 62px rgba(31,27,22,.12);border-color:rgba(201,149,76,.25)}.icon-card .icon{width:40px;height:40px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(201,149,76,.16),rgba(201,149,76,.04));color:#9b6a2a}.icon svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-card strong{font-size:12.2px;line-height:1.5}.guarantee-card strong{font-size:11.8px}.guarantee-card p{margin:0;color:#9a6b2e;font-size:11px;font-weight:800;line-height:1.3}

.about{background:#0b0b0b}.about-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:22px;align-items:stretch}.about-copy{border-radius:34px;background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.045));border:1px solid rgba(255,255,255,.14);padding:34px;min-height:380px;display:flex;flex-direction:column;justify-content:center}.about-copy h2{font-family:'Almarai','Cairo',sans-serif;font-size:clamp(24px,3vw,42px);margin:10px 0 12px}.about-copy p{margin:0 0 22px;color:rgba(255,250,242,.64);font-size:13px;max-width:520px}.about-media{position:relative;min-height:430px;border-radius:34px;overflow:hidden;border:1px solid rgba(255,255,255,.14);box-shadow:var(--shadow)}.about-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.about-media:hover img{transform:scale(1.04)}.video-section{background:#0b0b0b;padding-top:0}.video-frame{position:relative;height:min(62vh,560px);min-height:390px;border-radius:34px;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.02)),url('../images/exterior-04.jpg') center/cover;box-shadow:var(--shadow)}.video-frame video{width:100%;height:100%;object-fit:cover;background:#000}.video-frame:not(:has(video source[src$='.mp4']))::before{content:''}.video-empty{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(180deg,rgba(0,0,0,.14),rgba(0,0,0,.52))}.play-mark{width:76px;height:76px;border-radius:999px;display:grid;place-items:center;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(16px);color:var(--gold-2);font-size:28px}

.site-footer{padding:34px 20px;text-align:center;background:#080808;border-top:1px solid rgba(255,255,255,.08);color:rgba(255,250,242,.55)}.site-footer img{height:38px;margin:0 auto 10px}.site-footer p{margin:0;font-size:12px}

.details-main,.reservation-main{min-height:calc(100svh - 110px);padding:64px 28px 80px}.page-hero{width:min(1180px,100%);margin:0 auto 26px;display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.page-hero h1{font-family:'Almarai','Cairo',sans-serif;font-size:clamp(26px,4vw,54px);line-height:1.25;margin:8px 0 0}.detail-slider-wrap{width:min(1180px,100%);margin:0 auto;border-radius:34px;overflow:hidden;border:1px solid rgba(255,255,255,.14);position:relative;height:min(66vh,610px);min-height:410px;box-shadow:var(--shadow)}.detail-slide{position:absolute;inset:0;opacity:0;background-size:cover;background-position:center;transform:scale(1.06);transition:opacity .8s ease,transform 5.6s ease}.detail-slide.active{opacity:1;transform:scale(1)}.detail-slider-wrap::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.36));pointer-events:none}.detail-controls{position:absolute;left:22px;bottom:20px;z-index:3;display:flex;gap:8px}.detail-controls button{width:42px;height:42px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(0,0,0,.26);color:#fff;backdrop-filter:blur(16px)}.units{width:min(1180px,100%);margin:28px auto 0}.units-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.unit-card{padding:22px;border-radius:26px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.07);box-shadow:0 22px 60px rgba(0,0,0,.16);transition:.28s var(--ease)}.unit-card:hover{transform:translateY(-6px);border-color:rgba(239,207,146,.36)}.unit-card h3{margin:0 0 8px;font-size:17px;font-family:'Almarai','Cairo',sans-serif}.unit-card strong{display:block;color:var(--gold-2);font-size:12px;margin-bottom:10px}.unit-card p{margin:0;color:rgba(255,250,242,.62);font-size:12px}.reserve-band{width:min(1180px,100%);margin:28px auto 0;padding:26px;border-radius:30px;background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#1a1107;display:flex;align-items:center;justify-content:space-between;gap:16px}.reserve-band h2{font-family:'Almarai','Cairo',sans-serif;margin:0;font-size:24px}.reserve-band span{font-size:11px;font-weight:800;opacity:.72}

.reservation-main{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:22px;align-items:stretch;width:min(1180px,100%);margin:0 auto}.reservation-card,.reservation-visual{border-radius:34px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.045));box-shadow:var(--shadow);overflow:hidden}.reservation-card{padding:32px}.form-head{max-width:610px}.form-head h1{font-family:'Almarai','Cairo',sans-serif;font-size:clamp(24px,3vw,42px);margin:8px 0 8px}.form-head p{margin:0;color:rgba(255,250,242,.62);font-size:12.5px}.reservation-form{margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.reservation-form label{display:flex;flex-direction:column;gap:7px;font-size:12.5px;font-weight:800;color:rgba(255,250,242,.84)}.reservation-form small{font-weight:500;color:rgba(255,250,242,.48)}.full-span{grid-column:1/-1}.reservation-form input,.reservation-form select,.reservation-form textarea{width:100%;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.22);color:#fff;border-radius:17px;padding:12px 13px;outline:none;min-height:48px;transition:.22s ease}.reservation-form textarea{resize:vertical}.reservation-form input:focus,.reservation-form select:focus,.reservation-form textarea:focus{border-color:rgba(239,207,146,.55);box-shadow:0 0 0 4px rgba(201,149,76,.12)}.reservation-form input.invalid{border-color:#ff7b7b;box-shadow:0 0 0 4px rgba(255,90,90,.12)}.phone-group{display:grid;grid-template-columns:130px 1fr;gap:8px}.field-error{min-height:17px;color:#ffb0a8!important;font-size:11px!important}.submit-btn{grid-column:1/-1;width:100%;margin-top:4px}.form-actions{margin-top:16px}.reservation-visual{position:relative;min-height:600px}.reservation-visual img{width:100%;height:100%;object-fit:cover}.visual-caption{position:absolute;inset:auto 18px 18px;background:rgba(12,10,8,.62);border:1px solid rgba(255,255,255,.14);border-radius:24px;padding:18px;backdrop-filter:blur(18px)}.visual-caption img{height:42px;width:auto;object-fit:contain;margin-bottom:10px}.visual-caption p{margin:0;color:rgba(255,250,242,.72);font-size:12px}
.success-panel{position:fixed;inset:0;z-index:90;display:none;place-items:center;background:rgba(0,0,0,.68);backdrop-filter:blur(14px);padding:24px}.success-panel.open{display:grid}.success-box{width:min(460px,100%);padding:34px;border-radius:30px;background:var(--cream);color:var(--ink);text-align:center;box-shadow:var(--shadow)}.success-mark{width:70px;height:70px;border-radius:999px;background:linear-gradient(135deg,var(--gold),var(--gold-2));display:grid;place-items:center;margin:0 auto 16px;font-size:34px;color:#1a1107}.success-box h2{font-size:24px;margin:0 0 8px}.success-box p{margin:0 0 18px;color:#6b6258;font-size:13px}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal.is-visible{opacity:1;transform:translateY(0)}

@media(max-width:1100px){.icon-grid{grid-template-columns:repeat(4,1fr)}.reservation-main{grid-template-columns:1fr}.reservation-visual{min-height:360px}.brand{min-width:230px}.brand-rowad{width:102px}.brand-jubail{width:112px}.main-nav a{padding:7px 9px}}
@media(max-width:860px){.site-header{grid-template-columns:auto 1fr auto;border-radius:22px}.brand{grid-column:2;justify-self:center;min-width:0}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:76px;left:0;right:0;background:rgba(12,10,8,.94);border:1px solid rgba(255,255,255,.13);border-radius:22px;padding:12px;flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.building-grid,.units-grid,.about-grid,.reservation-form{grid-template-columns:1fr}.building-card,.building-card.featured{min-height:360px;transform:none}.icon-grid{grid-template-columns:repeat(2,1fr)}.section-head,.page-hero,.reserve-band{align-items:flex-start;flex-direction:column}.phone-group{grid-template-columns:1fr}.section{padding:56px 18px}.hero-buildings{padding:100px 18px 36px}.details-main,.reservation-main{padding:42px 18px 60px}.cinema-slider,.detail-slider-wrap{min-height:360px}.brand-rowad{width:94px}.brand-jubail{width:104px}.brand-divider{height:24px}}


/* ===== Client refinement v9: premium previous direction restored ===== */
:root{
  --gold:#d3a25c;
  --gold-2:#f0d39d;
  --cream:#fff7ec;
  --ink:#17130f;
  --ease:cubic-bezier(.2,.8,.2,1);
}
body,
button,
input,
select,
textarea{
  font-family:'IBM Plex Sans Arabic', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}
.section-head h2,
.about-copy h2,
.page-hero h1,
.form-head h1,
.reserve-band h2,
.slider-meta h3,
.building-content h1,
.building-number{
  font-family:'Noto Kufi Arabic','IBM Plex Sans Arabic',system-ui,sans-serif !important;
}
body{font-size:13px !important;}

/* Header: logos fixed right, menu exactly centered on every page */
.site-header,
.site-header.is-plain{
  position:fixed !important;
  top:18px !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  width:min(1260px,calc(100% - 36px)) !important;
  min-height:68px !important;
  display:block !important;
  padding:0 !important;
  border-radius:24px !important;
  background:rgba(12,13,16,.58) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  backdrop-filter:blur(26px) saturate(1.3) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.24) !important;
}
.site-header .brand,
.site-header.is-plain .brand{
  position:absolute !important;
  right:16px !important;
  left:auto !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex-direction:row !important;
  gap:12px !important;
  min-width:auto !important;
  z-index:4 !important;
}
.site-header .main-nav,
.site-header.is-plain .main-nav{
  position:absolute !important;
  left:50% !important;
  right:auto !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  grid-column:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:5px !important;
  margin:0 !important;
  z-index:3 !important;
}
.header-spacer{display:none !important;}
.menu-toggle{
  position:absolute !important;
  left:13px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  z-index:5 !important;
}
.brand-rowad{width:118px !important;max-height:42px !important;object-fit:contain !important;}
.brand-jubail{width:122px !important;max-height:40px !important;object-fit:contain !important;}
.brand-divider{width:1px !important;height:32px !important;background:rgba(255,255,255,.18) !important;}
.main-nav a{font-size:12.5px !important;font-weight:700 !important;padding:9px 12px !important;}

/* Keep content clear below fixed header */
.details-main,
.reservation-main{padding-top:120px !important;}

/* Building cards: no descriptive paragraph, only unit count + two buttons */
.building-content p{display:none !important;}
.building-content h1{font-size:clamp(22px,2.6vw,38px) !important;}
.building-unit-count{
  margin-top:12px !important;
  font-size:13px !important;
  background:rgba(211,162,92,.13) !important;
  border:1px solid rgba(240,211,157,.32) !important;
  color:#ffe0aa !important;
}

/* Restore the distinctive dark glass design for advantages and guarantees */
.advantages,
.guarantees{
  background:
    radial-gradient(circle at 12% 0%, rgba(211,162,92,.16), transparent 30%),
    radial-gradient(circle at 84% 12%, rgba(255,255,255,.08), transparent 28%),
    linear-gradient(135deg,#0c0d10,#17130f 62%,#0b0c0f) !important;
  color:var(--cream) !important;
  position:relative !important;
  overflow:hidden !important;
}
.advantages::before,
.guarantees::before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.55;
  background:
    linear-gradient(115deg, transparent 0 26%, rgba(255,255,255,.075) 26.1% 26.35%, transparent 26.45% 100%),
    linear-gradient(65deg, transparent 0 62%, rgba(255,255,255,.06) 62.1% 62.35%, transparent 62.45% 100%);
}
.advantages .section-inner,
.guarantees .section-inner{position:relative;z-index:1;}
.advantages .section-head span,
.guarantees .section-head span{
  display:inline-flex !important;
  width:fit-content !important;
  align-items:center !important;
  gap:8px !important;
  margin-bottom:10px !important;
  padding:7px 14px !important;
  color:#ffe0aa !important;
  background:rgba(211,162,92,.12) !important;
  border:1px solid rgba(211,162,92,.22) !important;
  border-radius:999px !important;
  font-size:11.5px !important;
  font-weight:800 !important;
}
.advantages .section-head span::before,
.guarantees .section-head span::before{display:none !important;}
.advantages .section-head h2,
.guarantees .section-head h2{
  color:#fff7ec !important;
  font-size:clamp(22px,2.5vw,38px) !important;
}
.icon-grid{
  display:grid !important;
  grid-template-columns:repeat(7,minmax(0,1fr)) !important;
  gap:12px !important;
}
.icon-card{
  min-height:120px !important;
  padding:16px 12px !important;
  border-radius:26px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.045)) !important;
  backdrop-filter:blur(18px) saturate(1.2) !important;
  box-shadow:0 18px 56px rgba(0,0,0,.16) !important;
  color:#fff8ee !important;
  transition:transform .30s var(--ease),border-color .30s ease,background .30s ease,box-shadow .30s ease !important;
}
.icon-card:hover{
  transform:translateY(-8px) !important;
  border-color:rgba(240,211,157,.38) !important;
  background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.06)) !important;
  box-shadow:0 28px 74px rgba(0,0,0,.25),0 0 58px rgba(211,162,92,.10) !important;
}
.icon-card .icon{
  width:48px !important;
  height:48px !important;
  border-radius:17px !important;
  background:linear-gradient(135deg,rgba(211,162,92,.95),rgba(255,227,170,.95)) !important;
  color:#15100b !important;
  box-shadow:0 16px 35px rgba(211,162,92,.18) !important;
}
.icon-card .icon svg{width:24px !important;height:24px !important;}
.icon-card strong{
  color:#fff8ee !important;
  font-size:13px !important;
  line-height:1.45 !important;
  font-weight:800 !important;
}
.guarantee-card{min-height:132px !important;}
.guarantee-card strong{
  color:#fff8ee !important;
  font-size:13px !important;
  font-weight:800 !important;
}
.guarantee-card p{
  color:#ffe0aa !important;
  font-size:12px !important;
  font-weight:800 !important;
  margin:0 !important;
}

/* Keep the video area client-ready without explanatory filler */
.video-empty{cursor:pointer;}

@media(max-width:1100px){
  .icon-grid{grid-template-columns:repeat(4,1fr) !important;}
  .site-header .main-nav{gap:2px !important;}
  .main-nav a{padding:8px 8px !important;font-size:11.5px !important;}
  .brand-rowad{width:102px !important;}.brand-jubail{width:106px !important;}
}
@media(max-width:860px){
  .site-header,.site-header.is-plain{display:grid !important;grid-template-columns:auto 1fr auto !important;padding:9px 12px !important;min-height:64px !important;border-radius:22px !important;}
  .site-header .brand,.site-header.is-plain .brand{position:static !important;transform:none !important;grid-column:2 !important;justify-self:center !important;}
  .site-header .main-nav,.site-header.is-plain .main-nav{
    display:none !important;
    position:absolute !important;
    top:76px !important;
    left:0 !important;
    right:0 !important;
    transform:none !important;
    background:rgba(12,10,8,.95) !important;
    border:1px solid rgba(255,255,255,.13) !important;
    border-radius:22px !important;
    padding:12px !important;
    flex-direction:column !important;
    align-items:stretch !important;
  }
  .site-header .main-nav.open,.site-header.is-plain .main-nav.open{display:flex !important;}
  .menu-toggle{display:block !important;position:static !important;transform:none !important;grid-column:1 !important;justify-self:start !important;}
  .icon-grid{grid-template-columns:repeat(2,1fr) !important;}
  .details-main,.reservation-main{padding-top:102px !important;}
}


/* ===== V10 refinement: continuous premium flow, centered navigation, preferred Arabic font ===== */
body,
button,
input,
select,
textarea{
  font-family:'Readex Pro','Cairo',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Tahoma,Arial,sans-serif !important;
  letter-spacing:0 !important;
}
.section-head h2,
.about-copy h2,
.page-hero h1,
.form-head h1,
.reserve-band h2,
.slider-meta h3,
.building-content h1,
.building-number,
.unit-card h3{
  font-family:'Readex Pro','Cairo',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Tahoma,Arial,sans-serif !important;
  letter-spacing:-.02em !important;
}
body{font-size:12.5px !important;}

/* Header: logos on the right and menu mathematically centered on every page */
.site-header,
.site-header.is-plain{
  position:fixed !important;
  top:18px !important;
  left:50% !important;
  right:auto !important;
  transform:translateX(-50%) !important;
  width:min(1260px,calc(100% - 36px)) !important;
  display:block !important;
  min-height:68px !important;
}
.site-header .brand,
.site-header.is-plain .brand{
  position:absolute !important;
  top:50% !important;
  right:16px !important;
  left:auto !important;
  transform:translateY(-50%) !important;
  z-index:4 !important;
}
.site-header .main-nav,
.site-header.is-plain .main-nav{
  position:absolute !important;
  top:50% !important;
  left:50% !important;
  right:auto !important;
  transform:translate(-50%,-50%) !important;
  width:max-content !important;
  max-width:calc(100% - 430px) !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  margin:0 !important;
  padding:0 !important;
  z-index:3 !important;
  white-space:nowrap !important;
}
.site-header .main-nav a,
.site-header.is-plain .main-nav a{
  font-size:12px !important;
  padding:8px 11px !important;
}

/* Continuous homepage: no cut blocks behind advantages/guarantees */
body.home-page{
  background:
    radial-gradient(circle at 15% 18%, rgba(211,162,92,.10), transparent 28%),
    radial-gradient(circle at 90% 45%, rgba(255,255,255,.055), transparent 30%),
    linear-gradient(180deg,#090909 0%,#0b0b0b 32%,#11100f 100%) !important;
}
.showcase,
.advantages,
.guarantees,
.about,
.video-section{
  background:transparent !important;
  color:var(--cream) !important;
}
.advantages::before,
.guarantees::before{display:none !important;}
.advantages,
.guarantees{
  position:relative !important;
  overflow:visible !important;
  padding-top:56px !important;
  padding-bottom:56px !important;
}
.advantages + .guarantees{padding-top:24px !important;}
.advantages .section-inner,
.guarantees .section-inner{
  position:relative !important;
  z-index:1 !important;
}
.advantages .section-head,
.guarantees .section-head{
  margin-bottom:20px !important;
}
.advantages .section-head span,
.guarantees .section-head span{
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  color:#f0d39d !important;
  font-size:11px !important;
}
.advantages .section-head span::before,
.guarantees .section-head span::before{
  display:block !important;
}
.advantages .section-head h2,
.guarantees .section-head h2{
  color:#fff7ec !important;
  font-size:clamp(20px,2.2vw,32px) !important;
}
.icon-grid{
  grid-template-columns:repeat(7,minmax(0,1fr)) !important;
  gap:12px !important;
}
.icon-card{
  min-height:118px !important;
  padding:15px 10px !important;
  border-radius:24px !important;
  background:linear-gradient(145deg,rgba(255,255,255,.088),rgba(255,255,255,.035)) !important;
  border:1px solid rgba(255,255,255,.11) !important;
  box-shadow:0 18px 52px rgba(0,0,0,.14) !important;
  backdrop-filter:blur(18px) saturate(1.2) !important;
  color:#fff8ee !important;
}
.icon-card:hover{
  transform:translateY(-7px) scale(1.015) !important;
  border-color:rgba(240,211,157,.38) !important;
  box-shadow:0 28px 72px rgba(0,0,0,.23),0 0 52px rgba(211,162,92,.08) !important;
}
.icon-card .icon{
  width:46px !important;
  height:46px !important;
  border-radius:17px !important;
  background:linear-gradient(135deg,rgba(211,162,92,.96),rgba(255,226,169,.94)) !important;
  color:#15100b !important;
}
.icon-card strong,
.guarantee-card strong{
  font-size:12.3px !important;
  font-weight:700 !important;
  line-height:1.55 !important;
}
.guarantee-card p{
  font-size:11.5px !important;
  color:#f0d39d !important;
}

/* Keep the three building cards next to each other on tablets and desktop */
.building-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  align-items:stretch !important;
}
.building-card{
  min-height:clamp(350px,48vh,560px) !important;
  padding:24px !important;
}
.building-content h1{
  font-size:clamp(19px,2.2vw,34px) !important;
}
.building-number{
  font-size:clamp(44px,6vw,94px) !important;
}

/* Reservation form: fixed two-column alignment so building sits next to email */
.reservation-form{
  grid-template-columns:1fr 1fr !important;
  grid-template-areas:
    "name phone"
    "email building"
    "unit unit"
    "notes notes"
    "submit submit" !important;
  align-items:start !important;
}
.reservation-form label:nth-of-type(1){grid-area:name !important;}
.reservation-form label:nth-of-type(2){grid-area:phone !important;}
.reservation-form label:nth-of-type(3){grid-area:email !important;}
.reservation-form label:nth-of-type(4){grid-area:building !important;}
.reservation-form label:nth-of-type(5){grid-area:unit !important;}
.reservation-form label:nth-of-type(6){grid-area:notes !important;}
.reservation-form .submit-btn{grid-area:submit !important;}
.reservation-form input,
.reservation-form select,
.reservation-form textarea{
  font-size:12.5px !important;
}
.form-head h1{font-size:clamp(22px,2.5vw,34px) !important;}

@media(max-width:1100px){
  .site-header .main-nav,.site-header.is-plain .main-nav{max-width:calc(100% - 360px) !important;}
  .site-header .main-nav a,.site-header.is-plain .main-nav a{font-size:11.2px !important;padding:7px 8px !important;}
  .building-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:12px !important;}
  .building-card{min-height:390px !important;padding:18px !important;border-radius:28px !important;}
  .building-actions{grid-template-columns:1fr !important;}
  .icon-grid{grid-template-columns:repeat(4,1fr) !important;}
}
@media(max-width:860px){
  .site-header .main-nav,.site-header.is-plain .main-nav{
    display:none !important;
    position:absolute !important;
    top:76px !important;
    left:0 !important;
    right:0 !important;
    width:auto !important;
    max-width:none !important;
    transform:none !important;
    background:rgba(12,10,8,.95) !important;
    border:1px solid rgba(255,255,255,.13) !important;
    border-radius:22px !important;
    padding:12px !important;
    flex-direction:column !important;
    align-items:stretch !important;
  }
  .site-header .main-nav.open,.site-header.is-plain .main-nav.open{display:flex !important;}
  .building-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:10px !important;}
  .building-card,.building-card.featured{min-height:330px !important;transform:none !important;padding:14px !important;border-radius:24px !important;}
  .building-actions .btn{font-size:11px !important;padding:10px 8px !important;}
  .tower-mark{display:none !important;}
  .building-unit-count{font-size:11px !important;padding:5px 10px !important;}
  .reservation-form{grid-template-columns:1fr 1fr !important;}
  .phone-group{grid-template-columns:102px 1fr !important;}
}
@media(max-width:640px){
  .building-grid{grid-template-columns:1fr !important;}
  .building-card{min-height:320px !important;}
  .reservation-form{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "name"
      "phone"
      "email"
      "building"
      "unit"
      "notes"
      "submit" !important;
  }
  .phone-group{grid-template-columns:1fr !important;}
  .icon-grid{grid-template-columns:repeat(2,1fr) !important;}
}


/* ===== V11 final polish: clean gallery, form loading, email/building alignment ===== */
/* No written titles over the 12-image home slider */
.slider-meta{
  display:none !important;
}
.cinema-slider::after{
  background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.30)) !important;
}

/* Reservation form alignment */
.reservation-form label{
  min-height:96px !important;
}
.reservation-form label.full-span{
  min-height:0 !important;
}
.label-row{
  min-height:22px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:8px !important;
}
.label-row small{
  display:inline-flex !important;
  margin:0 !important;
  color:rgba(255,250,242,.50) !important;
  font-size:11px !important;
  font-weight:500 !important;
}
.field-email,
.field-building{
  display:grid !important;
  grid-template-rows:22px 48px 17px !important;
  gap:7px !important;
  align-content:start !important;
}
.field-email input,
.field-building select{
  min-height:48px !important;
}
.field-email input{
  direction:ltr !important;
  text-align:left !important;
  unicode-bidi:plaintext !important;
}
.field-placeholder{visibility:hidden !important;}

/* Loading state while sending reservation */
.submit-btn.is-loading{
  position:relative !important;
  opacity:.88 !important;
  pointer-events:none !important;
  padding-inline-start:48px !important;
}
.submit-btn.is-loading::before{
  content:'';
  position:absolute;
  left:18px;
  top:50%;
  width:18px;
  height:18px;
  margin-top:-9px;
  border-radius:50%;
  border:2px solid rgba(24,18,10,.28);
  border-top-color:#1b1208;
  animation:spin .75s linear infinite;
}
.loading-panel{
  position:fixed;
  inset:0;
  z-index:98;
  display:grid;
  place-items:center;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  background:rgba(7,7,7,.36);
  backdrop-filter:blur(10px);
  transition:opacity .22s ease,visibility .22s ease;
}
.loading-panel.open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.loading-box{
  min-width:220px;
  display:grid;
  justify-items:center;
  gap:14px;
  padding:26px 30px;
  border-radius:26px;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(145deg,rgba(18,15,12,.88),rgba(27,23,19,.76));
  box-shadow:0 30px 90px rgba(0,0,0,.34);
  color:#fff8ee;
}
.loader-ring{
  width:42px;
  height:42px;
  border-radius:50%;
  border:3px solid rgba(240,211,157,.24);
  border-top-color:#f0d39d;
  animation:spin .75s linear infinite;
}
.loading-box p{
  margin:0;
  font-size:13px;
  font-weight:700;
  color:#fff8ee;
}
@keyframes spin{to{transform:rotate(360deg)}}

@media(max-width:640px){
  .reservation-form label{min-height:auto !important;}
  .field-email,.field-building{grid-template-rows:auto auto auto !important;}
}


/* ===== Unit ticketing page: tower unit selection ===== */
.unit-booking-main{
  width:min(1240px,100%);
  margin:0 auto;
  padding:120px 28px 80px;
  position:relative;
  z-index:3;
}
.unit-booking-shell{
  border-radius:36px;
  border:1px solid rgba(255,255,255,.13);
  background:
    radial-gradient(circle at 12% 0%,rgba(211,162,92,.14),transparent 32%),
    radial-gradient(circle at 92% 8%,rgba(255,255,255,.07),transparent 30%),
    linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.035));
  box-shadow:var(--shadow);
  padding:26px;
  overflow:hidden;
  position:relative;
}
.unit-booking-shell::before{
  content:'';
  position:absolute;
  inset:-1px;
  pointer-events:none;
  background:linear-gradient(110deg,transparent 0 38%,rgba(255,255,255,.09) 40%,transparent 43%);
  opacity:.5;
}
.unit-booking-head{
  position:relative;
  z-index:2;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:22px;
}
.unit-booking-head h1{
  margin:8px 0 6px;
  font-size:clamp(24px,3vw,42px);
  line-height:1.35;
  font-family:'Readex Pro','Cairo',system-ui,sans-serif;
}
.unit-booking-head p{
  max-width:620px;
  margin:0;
  color:rgba(255,250,242,.62);
  font-size:12.5px;
}
.tower-switcher{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.tower-switcher button{
  min-width:118px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:18px;
  background:rgba(0,0,0,.20);
  color:#fff8ee;
  padding:11px 13px;
  text-align:right;
  transition:.25s var(--ease);
}
.tower-switcher button strong{
  display:block;
  font-size:12.5px;
}
.tower-switcher button span{
  display:block;
  margin-top:3px;
  font-size:11px;
  color:rgba(255,250,242,.52);
}
.tower-switcher button:hover,
.tower-switcher button.active{
  transform:translateY(-2px);
  border-color:rgba(240,211,157,.48);
  background:linear-gradient(135deg,rgba(211,162,92,.26),rgba(255,255,255,.08));
}
.unit-booking-layout{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1fr) 330px;
  gap:18px;
  align-items:start;
}
.floor-board{
  border-radius:28px;
  border:1px solid rgba(255,255,255,.11);
  background:rgba(0,0,0,.16);
  padding:16px;
}
.floor-tabs{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding-bottom:10px;
  scrollbar-width:thin;
}
.floor-tabs button{
  flex:0 0 auto;
  border:1px solid rgba(255,255,255,.13);
  border-radius:999px;
  background:rgba(255,255,255,.055);
  color:rgba(255,250,242,.70);
  padding:8px 14px;
  font-size:12px;
  font-weight:800;
  transition:.22s var(--ease);
}
.floor-tabs button:hover,
.floor-tabs button.active{
  color:#1b1208;
  border-color:transparent;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  box-shadow:0 12px 30px rgba(201,149,76,.20);
}
.floor-title-row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin:8px 0 15px;
}
.floor-title-row span{
  color:var(--gold-2);
  font-size:11px;
  font-weight:800;
}
.floor-title-row h2{
  margin:4px 0 0;
  font-size:21px;
}
.floor-title-row p{
  margin:0;
  color:rgba(255,250,242,.52);
  font-size:12px;
}
.unit-ticket-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.unit-ticket{
  min-height:178px;
  text-align:right;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:14px;
  color:#fff8ee;
  background:
    radial-gradient(circle at 12% 0%,rgba(239,207,146,.12),transparent 32%),
    linear-gradient(145deg,rgba(255,255,255,.078),rgba(255,255,255,.032));
  box-shadow:0 16px 48px rgba(0,0,0,.16);
  transition:transform .26s var(--ease),border-color .26s ease,box-shadow .26s ease,background .26s ease;
  position:relative;
  overflow:hidden;
}
.unit-ticket::after{
  content:'';
  position:absolute;
  top:-20%;
  left:-40%;
  width:36%;
  height:150%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent);
  transform:rotate(-14deg) translateX(-120%);
  transition:transform .65s var(--ease);
}
.unit-ticket:hover{
  transform:translateY(-6px);
  border-color:rgba(240,211,157,.44);
  box-shadow:0 28px 72px rgba(0,0,0,.26);
}
.unit-ticket:hover::after{
  transform:rotate(-14deg) translateX(330%);
}
.unit-ticket.selected{
  border-color:rgba(240,211,157,.75);
  background:
    radial-gradient(circle at 20% 0%,rgba(240,211,157,.26),transparent 34%),
    linear-gradient(145deg,rgba(211,162,92,.28),rgba(255,255,255,.07));
  box-shadow:0 0 0 1px rgba(240,211,157,.18) inset,0 28px 80px rgba(0,0,0,.30);
}
.ticket-status{
  display:inline-flex;
  padding:5px 10px;
  border-radius:999px;
  background:rgba(82,211,151,.13);
  border:1px solid rgba(82,211,151,.28);
  color:#9ff0c9;
  font-size:10.5px;
  font-weight:800;
}
.unit-ticket strong{
  display:block;
  margin-top:12px;
  font-size:24px;
  line-height:1;
  letter-spacing:.02em;
  color:#fff;
  direction:ltr;
  text-align:left;
}
.unit-ticket em{
  display:block;
  margin:8px 0 12px;
  font-style:normal;
  color:var(--gold-2);
  font-weight:800;
  font-size:12px;
}
.ticket-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  border-top:1px solid rgba(255,255,255,.08);
  padding-top:8px;
  margin-top:8px;
  color:rgba(255,250,242,.74);
  font-size:11.5px;
}
.ticket-row b{
  color:rgba(255,250,242,.46);
  font-weight:700;
}
.selected-unit-card{
  position:sticky;
  top:110px;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.13);
  background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.04));
  box-shadow:0 22px 70px rgba(0,0,0,.22);
  padding:20px;
}
.selected-unit-card .mini-label{
  color:var(--gold-2);
  font-weight:800;
  font-size:11px;
}
.selected-unit-card h2{
  margin:8px 0 8px;
  font-size:23px;
  direction:ltr;
  text-align:right;
}
.selected-unit-card p{
  margin:0 0 14px;
  color:rgba(255,250,242,.62);
  font-size:12px;
}
.selected-specs{
  display:grid;
  gap:8px;
  margin:16px 0;
}
.selected-specs span{
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  background:rgba(0,0,0,.14);
  padding:10px 12px;
  font-size:12px;
  color:#fff8ee;
}
.selected-specs b{
  display:block;
  color:rgba(255,250,242,.50);
  font-size:10.5px;
  margin-bottom:3px;
}
.selected-unit-card .btn{
  width:100%;
}
.selected-unit-card .btn:disabled{
  opacity:.45;
  cursor:not-allowed;
  filter:saturate(.2);
}
.empty-state{
  min-height:220px;
  display:grid;
  place-items:center;
  color:rgba(255,250,242,.58);
  font-size:13px;
}

/* Reservation selected unit summary */
.selected-unit-summary{
  margin-top:18px;
  padding:15px 16px;
  border-radius:20px;
  border:1px solid rgba(240,211,157,.26);
  background:linear-gradient(135deg,rgba(211,162,92,.17),rgba(255,255,255,.055));
}
.selected-unit-summary span{
  display:block;
  color:var(--gold-2);
  font-size:11px;
  font-weight:800;
}
.selected-unit-summary strong{
  display:block;
  margin-top:6px;
  font-size:19px;
  color:#fff;
  direction:ltr;
  text-align:right;
}
.selected-unit-summary p{
  margin:6px 0 0;
  color:rgba(255,250,242,.66);
  font-size:12px;
}

@media(max-width:980px){
  .unit-booking-layout{
    grid-template-columns:1fr;
  }
  .selected-unit-card{
    position:relative;
    top:auto;
  }
  .unit-ticket-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:720px){
  .unit-booking-main{
    padding:100px 16px 60px;
  }
  .unit-booking-shell{
    padding:16px;
    border-radius:28px;
  }
  .unit-booking-head,
  .floor-title-row{
    flex-direction:column;
    align-items:flex-start;
  }
  .tower-switcher{
    width:100%;
    justify-content:stretch;
  }
  .tower-switcher button{
    flex:1 1 30%;
    min-width:100px;
  }
  .unit-ticket-grid{
    grid-template-columns:1fr;
  }
}

/* ===== V14: Unit code format, sales status page, and exact centered navigation ===== */
.site-header,
.site-header.is-plain{
  display:block !important;
  position:fixed !important;
  top:18px !important;
  left:50% !important;
  right:auto !important;
  transform:translateX(-50%) !important;
  width:min(1260px,calc(100% - 36px)) !important;
  min-height:68px !important;
}
.site-header .main-nav,
.site-header.is-plain .main-nav{
  position:absolute !important;
  top:50% !important;
  left:50% !important;
  right:auto !important;
  transform:translate(-50%,-50%) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  max-width:calc(100% - 430px) !important;
  white-space:nowrap !important;
  overflow:visible !important;
}
.site-header .brand,
.site-header.is-plain .brand{
  position:absolute !important;
  top:50% !important;
  right:16px !important;
  left:auto !important;
  transform:translateY(-50%) !important;
}
.site-header .main-nav a,
.site-header.is-plain .main-nav a{
  font-size:11.5px !important;
  padding:8px 9px !important;
}

.unit-ticket.reserved{
  opacity:.58;
  cursor:not-allowed;
  filter:saturate(.65);
}
.unit-ticket.reserved .ticket-status,
.sales-unit-pill.reserved span{
  background:rgba(255,202,98,.15);
  border-color:rgba(255,202,98,.28);
  color:#ffd37f;
}
.sales-main{
  width:min(1240px,100%);
  margin:0 auto;
  padding:120px 28px 80px;
  position:relative;
  z-index:3;
}
.sales-dashboard{
  min-height:360px;
  border-radius:38px;
  padding:28px;
  border:1px solid rgba(255,255,255,.13);
  background:
    radial-gradient(circle at 14% 8%,rgba(211,162,92,.18),transparent 32%),
    radial-gradient(circle at 86% 0%,rgba(255,255,255,.075),transparent 30%),
    linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.035));
  box-shadow:var(--shadow);
  display:grid;
  grid-template-columns:1fr 340px;
  gap:22px;
  align-items:stretch;
  overflow:hidden;
  position:relative;
}
.sales-dashboard::after{
  content:'';
  position:absolute;
  inset:-1px;
  background:linear-gradient(112deg,transparent 0 40%,rgba(255,255,255,.10) 42%,transparent 45%);
  opacity:.5;
  pointer-events:none;
}
.sales-hero-copy{
  position:relative;
  z-index:2;
  align-self:end;
  padding-bottom:8px;
}
.sales-hero-copy h1{
  margin:10px 0 10px;
  font-size:clamp(30px,4vw,58px);
  line-height:1.25;
  font-family:'Readex Pro','Cairo',system-ui,sans-serif;
}
.sales-hero-copy p{
  max-width:610px;
  margin:0;
  color:rgba(255,250,242,.64);
  font-size:13px;
}
.sales-counter-card{
  position:relative;
  z-index:2;
  border-radius:32px;
  border:1px solid rgba(240,211,157,.28);
  background:
    radial-gradient(circle at 50% 0%,rgba(240,211,157,.28),transparent 38%),
    linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.34));
  display:grid;
  place-items:center;
  text-align:center;
  min-height:300px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 28px 70px rgba(0,0,0,.26);
}
.sales-counter-card span{
  font-weight:800;
  color:rgba(255,250,242,.72);
  font-size:13px;
}
.sales-counter-card strong{
  display:block;
  font-size:88px;
  line-height:1;
  color:#fff8ee;
  direction:ltr;
  text-shadow:0 22px 60px rgba(201,149,76,.34);
}
.sales-counter-card p{
  margin:0;
  color:rgba(255,250,242,.68);
  font-size:13px;
}
.sales-mini-stats{
  grid-column:1/-1;
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.sales-mini-card{
  border:1px solid rgba(255,255,255,.11);
  border-radius:22px;
  background:rgba(0,0,0,.18);
  padding:15px 16px;
}
.sales-mini-card span{
  display:block;
  color:rgba(255,250,242,.54);
  font-size:11.5px;
  font-weight:700;
}
.sales-mini-card strong{
  display:block;
  margin-top:5px;
  font-size:27px;
  direction:ltr;
  text-align:right;
  color:#fff8ee;
}
.sales-towers{
  margin-top:22px;
  display:grid;
  gap:18px;
}
.sales-tower-card{
  border-radius:32px;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.032));
  box-shadow:0 24px 80px rgba(0,0,0,.22);
  padding:20px;
}
.sales-tower-card header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}
.sales-tower-card header span{
  display:block;
  color:var(--gold-2);
  font-weight:800;
  font-size:11px;
}
.sales-tower-card header h2{
  margin:5px 0 0;
  font-size:24px;
}
.sales-floor-list{
  display:grid;
  gap:10px;
}
.sales-floor-row{
  display:grid;
  grid-template-columns:58px 1fr;
  gap:12px;
  align-items:center;
  padding:12px;
  border-radius:22px;
  background:rgba(0,0,0,.14);
  border:1px solid rgba(255,255,255,.08);
}
.sales-floor-row>strong{
  direction:ltr;
  text-align:center;
  color:#1b1208;
  border-radius:16px;
  padding:10px 8px;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  box-shadow:0 14px 30px rgba(201,149,76,.20);
}
.sales-unit-strip{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.sales-unit-pill{
  min-width:58px;
  display:grid;
  place-items:center;
  gap:4px;
  padding:9px 9px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.055);
  transition:.22s var(--ease);
}
.sales-unit-pill:hover{
  transform:translateY(-2px);
  border-color:rgba(240,211,157,.45);
}
.sales-unit-pill b{
  direction:ltr;
  font-size:16px;
  color:#fff8ee;
}
.sales-unit-pill span{
  display:inline-flex;
  padding:3px 7px;
  border-radius:999px;
  background:rgba(82,211,151,.13);
  border:1px solid rgba(82,211,151,.25);
  color:#9ff0c9;
  font-size:9.5px;
  font-weight:800;
}

@media(max-width:1100px){
  .site-header .main-nav,.site-header.is-plain .main-nav{max-width:calc(100% - 360px) !important;}
  .site-header .main-nav a,.site-header.is-plain .main-nav a{font-size:10.8px !important;padding:7px 7px !important;}
  .sales-dashboard{grid-template-columns:1fr;}
  .sales-mini-stats{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:860px){
  .site-header .main-nav,.site-header.is-plain .main-nav{
    display:none !important;
    position:absolute !important;
    top:76px !important;
    left:0 !important;
    right:0 !important;
    width:auto !important;
    max-width:none !important;
    transform:none !important;
    background:rgba(12,10,8,.95) !important;
    border:1px solid rgba(255,255,255,.13) !important;
    border-radius:22px !important;
    padding:12px !important;
    flex-direction:column !important;
    align-items:stretch !important;
  }
  .site-header .main-nav.open,.site-header.is-plain .main-nav.open{display:flex !important;}
  .sales-main{padding:100px 16px 60px;}
  .sales-counter-card strong{font-size:64px;}
  .sales-floor-row{grid-template-columns:1fr;}
  .sales-floor-row>strong{text-align:right;}
}

/* ===== V16 reservation simplification ===== */
.reservation-form{
  grid-template-columns:1fr 1fr !important;
  grid-template-areas:
    "name phone"
    "email email"
    "notes notes"
    "submit submit" !important;
}
.reservation-form .field-name{grid-area:name !important;}
.reservation-form .field-phone{grid-area:phone !important;}
.reservation-form .field-email{grid-area:email !important;}
.reservation-form .full-span{grid-area:notes !important;}
.reservation-form .submit-btn{grid-area:submit !important;}
.reservation-form .field-building,
.reservation-form .field-unit-type{
  display:none !important;
}
.reservation-form .field-email{
  min-height:96px !important;
}
@media(max-width:640px){
  .reservation-form{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "name"
      "phone"
      "email"
      "notes"
      "submit" !important;
  }
}

/* ===== V17: selected building image on reservation page ===== */
.building-photo-panel{
  isolation:isolate;
  background:
    radial-gradient(circle at 20% 0%,rgba(240,211,157,.18),transparent 34%),
    linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035)) !important;
}
.building-photo-panel::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.50));
  pointer-events:none;
}
.building-photo-panel>img{
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.02);
  filter:saturate(1.04) contrast(1.02);
}
.building-photo-kicker{
  position:absolute;
  top:18px;
  right:18px;
  z-index:3;
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:1px solid rgba(240,211,157,.28);
  background:rgba(12,10,8,.46);
  backdrop-filter:blur(16px);
  border-radius:999px;
  padding:8px 13px;
  color:var(--gold-2);
  font-size:11px;
  font-weight:900;
  letter-spacing:.01em;
}
.building-photo-caption{
  z-index:3;
  display:flex;
  align-items:center;
  gap:12px;
}
.building-photo-caption img{
  height:38px !important;
  margin:0 !important;
  flex:0 0 auto;
}
.building-photo-caption strong{
  display:block;
  color:#fff8ee;
  font-size:17px;
  margin-bottom:3px;
}
.building-photo-caption p{
  margin:0 !important;
  color:rgba(255,250,242,.68) !important;
}
.selected-unit-summary{
  display:grid;
  grid-template-columns:1fr;
}
@media(max-width:1100px){
  .building-photo-panel{min-height:420px !important;}
}

/* ===== V18: Details page now uses the same live unit inventory as reservation/booking ===== */
.detail-inventory-panel{
  grid-column:1/-1;
  width:100%;
  display:grid;
  gap:16px;
}
.detail-inventory-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.detail-inventory-summary article{
  min-height:104px;
  padding:18px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(circle at 18% 0%,rgba(240,211,157,.15),transparent 34%),
    linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.032));
  box-shadow:0 18px 52px rgba(0,0,0,.17);
}
.detail-inventory-summary span{
  display:block;
  color:rgba(255,250,242,.56);
  font-size:11px;
  font-weight:800;
  margin-bottom:8px;
}
.detail-inventory-summary strong{
  display:block;
  color:#fff;
  font-size:clamp(24px,3vw,40px);
  line-height:1;
  direction:ltr;
  text-align:right;
  letter-spacing:-.02em;
}
.detail-inventory-summary em{
  display:block;
  color:var(--gold-2);
  font-style:normal;
  font-size:11px;
  font-weight:800;
  margin-top:8px;
}
.detail-floor-tabs{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:4px 2px 8px;
  scrollbar-width:thin;
}
.detail-floor-tabs button{
  flex:0 0 auto;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.055);
  color:rgba(255,250,242,.78);
  border-radius:999px;
  padding:10px 17px;
  font-weight:900;
  font-size:12px;
  cursor:pointer;
  transition:.22s ease;
}
.detail-floor-tabs button:hover{
  transform:translateY(-2px);
  border-color:rgba(240,211,157,.42);
}
.detail-floor-tabs button.active{
  color:#1b1208;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  border-color:transparent;
  box-shadow:0 16px 34px rgba(201,149,76,.18);
}
.detail-floor-units{
  padding:18px;
  border-radius:30px;
  border:1px solid rgba(255,255,255,.11);
  background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.026));
}
.detail-floor-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin-bottom:15px;
}
.detail-floor-head span{
  display:block;
  color:var(--gold-2);
  font-size:11px;
  font-weight:900;
}
.detail-floor-head h3{
  margin:4px 0 0;
  font-size:22px;
}
.detail-floor-head p{
  margin:0;
  color:rgba(255,250,242,.58);
  font-size:12px;
}
.detail-unit-ticket-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.detail-unit-ticket{
  min-height:230px;
  display:flex;
  flex-direction:column;
  gap:13px;
  padding:15px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(circle at 12% 0%,rgba(239,207,146,.12),transparent 32%),
    linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.032));
  box-shadow:0 16px 48px rgba(0,0,0,.16);
  position:relative;
  overflow:hidden;
  transition:.26s var(--ease);
}
.detail-unit-ticket::after{
  content:'';
  position:absolute;
  top:-20%;
  left:-38%;
  width:34%;
  height:150%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.13),transparent);
  transform:rotate(-14deg) translateX(-120%);
  transition:transform .65s var(--ease);
}
.detail-unit-ticket:hover{
  transform:translateY(-6px);
  border-color:rgba(240,211,157,.42);
  box-shadow:0 26px 70px rgba(0,0,0,.26);
}
.detail-unit-ticket:hover::after{
  transform:rotate(-14deg) translateX(330%);
}
.detail-unit-ticket.reserved{
  opacity:.62;
  filter:saturate(.72);
}
.detail-ticket-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.detail-ticket-top strong{
  display:block;
  color:#fff;
  font-size:22px;
  line-height:1;
  direction:ltr;
  text-align:left;
}
.detail-ticket-meta{
  display:grid;
  gap:8px;
  margin-top:auto;
}
.detail-ticket-meta span{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  color:rgba(255,250,242,.72);
  font-size:11.5px;
  border-top:1px solid rgba(255,255,255,.075);
  padding-top:8px;
}
.detail-ticket-meta b{
  color:rgba(255,250,242,.45);
  font-weight:800;
}
.detail-unit-reserve{
  width:100%;
  min-height:44px;
  position:relative;
  z-index:2;
}
.btn-disabled{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:999px;
  padding:12px 18px;
  background:rgba(255,255,255,.08);
  color:rgba(255,250,242,.46);
  cursor:not-allowed;
  font-weight:900;
}
.detail-empty-state{
  grid-column:1/-1;
  padding:28px;
  border-radius:24px;
  border:1px dashed rgba(255,255,255,.18);
  color:rgba(255,250,242,.65);
  text-align:center;
}
@media(max-width:980px){
  .detail-inventory-summary{grid-template-columns:repeat(2,minmax(0,1fr));}
  .detail-unit-ticket-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px){
  .detail-inventory-summary,
  .detail-unit-ticket-grid{grid-template-columns:1fr;}
  .detail-floor-head{align-items:flex-start;flex-direction:column;}
}


/* ===== V19: final booking/status polish ===== */
body,
button,
input,
select,
textarea,
.section-head h2,
.about-copy h2,
.page-hero h1,
.form-head h1,
.reserve-band h2,
.slider-meta h3,
.building-content h1,
.building-number,
.unit-card h3,
.unit-booking-head h1,
.sales-hero-copy h1{
  font-family:'Tajawal','Cairo',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Tahoma,Arial,sans-serif !important;
}
body{font-size:12.8px !important;}

/* Exact centered menu on all public pages */
.site-header,
.site-header.is-plain{
  display:block !important;
  position:fixed !important;
  top:18px !important;
  left:50% !important;
  right:auto !important;
  transform:translateX(-50%) !important;
  width:min(1260px,calc(100% - 36px)) !important;
  min-height:68px !important;
}
.site-header .brand,
.site-header.is-plain .brand{
  position:absolute !important;
  top:50% !important;
  right:16px !important;
  left:auto !important;
  transform:translateY(-50%) !important;
  z-index:4 !important;
}
.site-header .main-nav,
.site-header.is-plain .main-nav{
  position:absolute !important;
  top:50% !important;
  left:50% !important;
  right:auto !important;
  transform:translate(-50%,-50%) !important;
  width:max-content !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:3px !important;
  white-space:nowrap !important;
  overflow:visible !important;
  z-index:3 !important;
}
.site-header .main-nav a,
.site-header.is-plain .main-nav a{
  font-size:11.2px !important;
  padding:7px 8px !important;
  line-height:1.3 !important;
}
.brand-rowad{width:108px !important;}
.brand-jubail{width:112px !important;}

/* Reservation form repair: clean two-column customer form */
.reservation-main{
  align-items:start !important;
}
.reservation-card{padding:28px !important;}
.reservation-form{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  grid-template-areas:
    "name phone"
    "email email"
    "notes notes"
    "submit submit" !important;
  gap:14px 16px !important;
  align-items:start !important;
}
.reservation-form .field-name{grid-area:name !important;}
.reservation-form .field-phone{grid-area:phone !important;}
.reservation-form .field-email{grid-area:email !important;}
.reservation-form .full-span{grid-area:notes !important;}
.reservation-form .submit-btn{grid-area:submit !important;}
.reservation-form label{
  min-height:auto !important;
  gap:7px !important;
}
.reservation-form .field-email,
.reservation-form .field-phone,
.reservation-form .field-name{
  display:flex !important;
  flex-direction:column !important;
}
.phone-group{
  display:grid !important;
  grid-template-columns:118px minmax(0,1fr) !important;
  gap:8px !important;
  width:100% !important;
}
.phone-group select,
.phone-group input,
.reservation-form input,
.reservation-form textarea{
  min-height:48px !important;
}
.reservation-form textarea{
  min-height:112px !important;
  resize:vertical !important;
}
.field-error{min-height:17px !important;}
.field-email{min-height:auto !important;}
.field-email input{
  direction:ltr !important;
  text-align:left !important;
}
.reservation-form .field-building,
.reservation-form .field-unit-type{
  display:none !important;
}

/* Tower tabs with image icon + preview modal */
.tower-switcher button{
  min-width:154px !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  text-align:right !important;
  padding:9px 10px !important;
}
.tower-tab-thumb{
  width:46px;
  height:46px;
  flex:0 0 46px;
  border-radius:15px;
  overflow:hidden;
  border:1px solid rgba(240,211,157,.30);
  position:relative;
  background:rgba(255,255,255,.08);
  box-shadow:0 14px 30px rgba(0,0,0,.18);
  cursor:zoom-in;
}
.tower-tab-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s var(--ease),filter .35s ease;
}
.tower-tab-thumb i{
  position:absolute;
  inset:auto 5px 5px auto;
  width:20px;
  height:20px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:rgba(10,8,6,.68);
  color:#f0d39d;
  font-size:12px;
  font-style:normal;
  backdrop-filter:blur(10px);
}
.tower-tab-thumb:hover img{
  transform:scale(1.13);
  filter:saturate(1.08) contrast(1.04);
}
.tower-tab-copy{display:block;min-width:0;}
.tower-tab-copy strong{white-space:nowrap;}
.tower-image-modal{
  position:fixed;
  inset:0;
  z-index:120;
  display:grid;
  place-items:center;
  padding:24px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .24s ease,visibility .24s ease;
}
.tower-image-modal.open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.tower-image-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.72);
  backdrop-filter:blur(16px);
}
.tower-image-box{
  position:relative;
  z-index:1;
  width:min(980px,100%);
  border-radius:34px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.16);
  background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.04));
  box-shadow:0 40px 120px rgba(0,0,0,.45);
}
.tower-image-zoom{
  height:min(70vh,620px);
  min-height:390px;
  overflow:hidden;
  cursor:zoom-in;
  background:#060606;
}
.tower-image-zoom img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .22s ease-out;
  will-change:transform,transform-origin;
}
.tower-image-caption{
  position:absolute;
  right:18px;
  bottom:18px;
  left:18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:16px 18px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(12,10,8,.62);
  backdrop-filter:blur(18px);
}
.tower-image-caption span{
  color:var(--gold-2);
  font-size:11px;
  font-weight:900;
}
.tower-image-caption strong{
  color:#fff8ee;
  font-size:20px;
}
.tower-image-close{
  position:absolute;
  top:16px;
  left:16px;
  z-index:2;
  width:42px;
  height:42px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  background:rgba(12,10,8,.62);
  color:#fff;
  font-size:26px;
  line-height:1;
  backdrop-filter:blur(14px);
}

.sales-hero-copy p{
  font-size:13px !important;
  color:rgba(255,250,242,.70) !important;
}

@media(max-width:1160px){
  .site-header .main-nav a,.site-header.is-plain .main-nav a{font-size:10.4px !important;padding:7px 6px !important;}
  .brand-rowad{width:94px !important;}
  .brand-jubail{width:98px !important;}
  .tower-switcher button{min-width:142px !important;}
}
@media(max-width:860px){
  .site-header,.site-header.is-plain{
    display:grid !important;
    grid-template-columns:auto 1fr auto !important;
    padding:9px 12px !important;
    min-height:64px !important;
  }
  .site-header .brand,.site-header.is-plain .brand{
    position:static !important;
    transform:none !important;
    grid-column:2 !important;
    justify-self:center !important;
  }
  .site-header .main-nav,.site-header.is-plain .main-nav{
    display:none !important;
    position:absolute !important;
    top:76px !important;
    left:0 !important;
    right:0 !important;
    transform:none !important;
    width:auto !important;
    max-width:none !important;
    background:rgba(12,10,8,.95) !important;
    border:1px solid rgba(255,255,255,.13) !important;
    border-radius:22px !important;
    padding:12px !important;
    flex-direction:column !important;
    align-items:stretch !important;
  }
  .site-header .main-nav.open,.site-header.is-plain .main-nav.open{display:flex !important;}
  .reservation-form{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "name"
      "phone"
      "email"
      "notes"
      "submit" !important;
  }
  .phone-group{grid-template-columns:112px minmax(0,1fr) !important;}
  .tower-switcher{justify-content:stretch !important;}
  .tower-switcher button{flex:1 1 100% !important;min-width:0 !important;}
}
@media(max-width:520px){
  .phone-group{grid-template-columns:1fr !important;}
  .tower-image-zoom{min-height:320px;}
  .tower-image-caption{position:static;border-radius:0;}
}

/* ===== V21: restore V18 typography and sizing exactly after Firebase integration ===== */
body,
button,
input,
select,
textarea{
  font-family:'Readex Pro','Cairo',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Tahoma,Arial,sans-serif !important;
  font-size:12.5px !important;
  letter-spacing:0 !important;
}
body{
  font-size:12.5px !important;
  line-height:1.8 !important;
}
.section-head h2,
.about-copy h2,
.page-hero h1,
.form-head h1,
.reserve-band h2,
.slider-meta h3,
.building-content h1,
.building-number,
.unit-card h3,
.unit-booking-head h1,
.sales-hero-copy h1,
.detail-ticket-top strong,
.tower-image-caption strong{
  font-family:'Readex Pro','Cairo',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Tahoma,Arial,sans-serif !important;
  letter-spacing:-.02em !important;
}
.main-nav a,
.site-header .main-nav a,
.site-header.is-plain .main-nav a{
  font-family:'Readex Pro','Cairo',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Tahoma,Arial,sans-serif !important;
  font-size:12px !important;
  line-height:1.35 !important;
}
.form-head h1,
.page-hero h1,
.unit-booking-head h1,
.sales-hero-copy h1{
  font-size:clamp(24px,3vw,42px) !important;
  line-height:1.32 !important;
}
.building-content h1{
  font-size:clamp(22px,2.65vw,42px) !important;
  line-height:1.32 !important;
}
.building-number{
  font-size:clamp(50px,7vw,110px) !important;
  line-height:1 !important;
}
.section-head h2{
  font-size:clamp(21px,2.35vw,34px) !important;
  line-height:1.4 !important;
}
.btn,
.reservation-form label,
.reservation-form input,
.reservation-form select,
.reservation-form textarea,
.unit-ticket,
.detail-unit-ticket,
.status-card,
.icon-card,
.guarantee-card{
  font-size:12.5px !important;
}
.selected-unit-summary strong,
.unit-code,
.detail-ticket-top strong{
  font-size:20px !important;
}
.sales-hero-copy p,
.form-head p,
.page-hero p,
.section-head p{
  font-size:12.5px !important;
}
@media(max-width:1160px){
  .site-header .main-nav a,.site-header.is-plain .main-nav a{
    font-size:11px !important;
    padding:7px 7px !important;
  }
}

/* ===== V25: live availability states, customer-safe wording ===== */
.fully-reserved-banner{
  position:relative;
  overflow:hidden;
  margin:0 0 14px;
  padding:18px 20px;
  border-radius:24px;
  border:1px solid rgba(240,211,157,.32);
  background:
    radial-gradient(circle at 8% 0%,rgba(240,211,157,.28),transparent 34%),
    linear-gradient(135deg,rgba(211,162,92,.20),rgba(255,255,255,.055));
  box-shadow:0 22px 60px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.08);
}
.fully-reserved-banner::before{
  content:'';
  position:absolute;
  inset:-1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),transparent);
  transform:translateX(-120%) skewX(-18deg);
  animation:softSweep 3.8s ease-in-out infinite;
  pointer-events:none;
}
.fully-reserved-banner strong{
  display:block;
  color:#fff8ee;
  font-size:22px;
  line-height:1.35;
  font-weight:900;
}
.fully-reserved-banner span{
  display:block;
  margin-top:6px;
  color:rgba(255,250,242,.66);
  font-size:12.5px;
}
.floor-tabs button,
.detail-floor-tabs button{
  display:inline-grid;
  gap:2px;
  place-items:center;
  line-height:1.2;
}
.floor-tabs button span,
.detail-floor-tabs button span{
  display:block;
}
.floor-tabs button em,
.detail-floor-tabs button em{
  display:block;
  font-style:normal;
  font-size:9px;
  font-weight:900;
  color:inherit;
  opacity:.72;
}
.floor-tabs button.fully-reserved-tab,
.detail-floor-tabs button.fully-reserved-tab{
  border-color:rgba(240,211,157,.22);
  background:rgba(240,211,157,.08);
  color:rgba(255,250,242,.58);
}
.floor-tabs button.fully-reserved-tab.active,
.detail-floor-tabs button.fully-reserved-tab.active{
  background:linear-gradient(135deg,rgba(211,162,92,.80),rgba(240,211,157,.80));
  color:#1b1208;
}
.floor-title-row.is-fully-reserved,
.detail-floor-head.is-fully-reserved{
  border:1px solid rgba(240,211,157,.16);
  border-radius:20px;
  padding:14px;
  background:rgba(240,211,157,.055);
}
.sales-tower-card.fully-reserved-tower{
  border-color:rgba(240,211,157,.34);
  background:
    radial-gradient(circle at 10% 0%,rgba(240,211,157,.16),transparent 32%),
    linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.032));
}
.fully-booked-badge{
  display:inline-flex;
  margin-top:9px;
  padding:6px 10px;
  border-radius:999px;
  color:#1b1208;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  box-shadow:0 12px 26px rgba(201,149,76,.20);
  font-size:11px;
  font-weight:900;
  font-style:normal;
}
.sales-floor-row.fully-reserved-floor{
  border-color:rgba(240,211,157,.18);
  background:rgba(240,211,157,.055);
}
.sales-floor-row.fully-reserved-floor>strong{
  filter:saturate(.75);
}
.floor-full-chip{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  margin-bottom:8px;
  padding:5px 10px;
  border-radius:999px;
  color:#1b1208;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  font-size:10.5px;
  font-weight:900;
  box-shadow:0 12px 26px rgba(201,149,76,.16);
}
@keyframes softSweep{
  0%,48%{transform:translateX(-120%) skewX(-18deg); opacity:0;}
  56%{opacity:1;}
  100%{transform:translateX(120%) skewX(-18deg); opacity:0;}
}
@media(max-width:720px){
  .fully-reserved-banner strong{font-size:18px;}
  .fully-reserved-banner{padding:15px; border-radius:20px;}
}

/* ===== V26: clean reservation form alignment under selected unit ===== */
.reservation-card{
  padding:clamp(22px,3vw,34px) !important;
}
.reservation-form{
  margin-top:20px !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  grid-template-areas:
    "name phone"
    "email email"
    "notes notes"
    "submit submit" !important;
  gap:14px !important;
  align-items:start !important;
}
.reservation-form .field-name{grid-area:name !important;}
.reservation-form .field-phone{grid-area:phone !important;}
.reservation-form .field-email{grid-area:email !important;}
.reservation-form .full-span{grid-area:notes !important;}
.reservation-form .submit-btn{grid-area:submit !important;}
.reservation-form .field-building,
.reservation-form .field-unit-type{
  display:none !important;
}
.reservation-form label{
  min-height:auto !important;
  padding:0 !important;
}
.reservation-form input,
.reservation-form select,
.reservation-form textarea{
  min-height:48px !important;
  border-radius:18px !important;
  padding:12px 14px !important;
  line-height:1.5 !important;
}
.reservation-form textarea{
  min-height:118px !important;
}
.field-email{
  display:flex !important;
  flex-direction:column !important;
  gap:7px !important;
}
.field-phone{
  display:flex !important;
  flex-direction:column !important;
  gap:7px !important;
}
.phone-group{
  display:grid !important;
  grid-template-columns:118px minmax(0,1fr) !important;
  gap:8px !important;
  align-items:stretch !important;
}
.phone-group select,
.phone-group input{
  height:48px !important;
}
.field-error{
  display:block !important;
  min-height:16px !important;
  line-height:1.35 !important;
}
.selected-unit-summary + .reservation-form{
  border-top:1px solid rgba(255,255,255,.10) !important;
  padding-top:18px !important;
}
.submit-btn{
  min-height:50px !important;
  margin-top:2px !important;
}
@media(max-width:860px){
  .reservation-form{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    grid-template-areas:
      "name phone"
      "email email"
      "notes notes"
      "submit submit" !important;
  }
  .phone-group{
    grid-template-columns:108px minmax(0,1fr) !important;
  }
}
@media(max-width:640px){
  .reservation-form{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "name"
      "phone"
      "email"
      "notes"
      "submit" !important;
  }
  .phone-group{
    grid-template-columns:1fr !important;
  }
}

/* ===== V27: final reservation form visual alignment ===== */
body.reservation-page .reservation-main{
  align-items:start !important;
}
body.reservation-page .reservation-card{
  overflow:visible !important;
}
body.reservation-page #reservationForm.reservation-form{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:flex-start !important;
  gap:18px 18px !important;
  width:100% !important;
  grid-template-columns:none !important;
  grid-template-areas:none !important;
  direction:rtl !important;
}
body.reservation-page #reservationForm.reservation-form .field-name,
body.reservation-page #reservationForm.reservation-form .field-phone{
  flex:1 1 calc(50% - 9px) !important;
  max-width:calc(50% - 9px) !important;
  min-width:260px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
  margin:0 !important;
}
body.reservation-page #reservationForm.reservation-form .field-email,
body.reservation-page #reservationForm.reservation-form .full-span,
body.reservation-page #reservationForm.reservation-form .submit-btn{
  flex:0 0 100% !important;
  max-width:100% !important;
  width:100% !important;
  margin:0 !important;
}
body.reservation-page #reservationForm.reservation-form .field-email,
body.reservation-page #reservationForm.reservation-form .full-span{
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
}
body.reservation-page #reservationForm.reservation-form .field-building,
body.reservation-page #reservationForm.reservation-form .field-unit-type{
  display:none !important;
}
body.reservation-page #reservationForm.reservation-form label{
  min-height:0 !important;
  padding:0 !important;
  color:rgba(255,250,242,.88) !important;
}
body.reservation-page #reservationForm.reservation-form input,
body.reservation-page #reservationForm.reservation-form select,
body.reservation-page #reservationForm.reservation-form textarea{
  width:100% !important;
  box-sizing:border-box !important;
  min-height:50px !important;
  border-radius:20px !important;
  padding:13px 16px !important;
  background:rgba(0,0,0,.24) !important;
}
body.reservation-page #reservationForm.reservation-form textarea{
  min-height:126px !important;
  resize:vertical !important;
}
body.reservation-page #reservationForm.reservation-form .phone-group{
  display:flex !important;
  flex-direction:row !important;
  gap:10px !important;
  width:100% !important;
  direction:rtl !important;
}
body.reservation-page #reservationForm.reservation-form .phone-group select{
  flex:0 0 132px !important;
  width:132px !important;
  text-align:center !important;
}
body.reservation-page #reservationForm.reservation-form .phone-group input{
  flex:1 1 auto !important;
  min-width:0 !important;
  direction:ltr !important;
  text-align:left !important;
}
body.reservation-page #reservationForm.reservation-form input[name="email"]{
  direction:ltr !important;
  text-align:left !important;
  unicode-bidi:plaintext !important;
}
body.reservation-page #reservationForm.reservation-form .field-error{
  display:block !important;
  min-height:16px !important;
  width:100% !important;
  line-height:1.35 !important;
}
body.reservation-page #reservationForm.reservation-form .submit-btn{
  min-height:54px !important;
  margin-top:4px !important;
  justify-self:stretch !important;
}
body.reservation-page .form-actions{
  margin-top:18px !important;
  display:flex !important;
  justify-content:flex-start !important;
}
@media(max-width:760px){
  body.reservation-page #reservationForm.reservation-form .field-name,
  body.reservation-page #reservationForm.reservation-form .field-phone{
    flex-basis:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }
  body.reservation-page #reservationForm.reservation-form .phone-group{
    flex-direction:column !important;
  }
  body.reservation-page #reservationForm.reservation-form .phone-group select{
    width:100% !important;
    flex-basis:auto !important;
  }
}

/* ===== V28: hidden reservations list page ===== */
.reservations-list-page{
  min-height:100vh;
  background:
    radial-gradient(circle at 18% 8%, rgba(225,178,96,.16), transparent 34%),
    radial-gradient(circle at 88% 24%, rgba(255,255,255,.08), transparent 34%),
    linear-gradient(135deg,#100e0c 0%,#191714 45%,#0b0a09 100%);
}
.reservations-main{
  width:min(1180px,calc(100% - 48px));
  margin:0 auto;
  padding:120px 0 80px;
}
.reservations-dashboard{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,.85fr);
  gap:18px;
  align-items:stretch;
  margin-bottom:18px;
}
.reservations-hero-copy,
.reservations-stats,
.reservations-panel{
  border:1px solid rgba(255,255,255,.13);
  background:linear-gradient(145deg,rgba(255,255,255,.095),rgba(255,255,255,.045));
  box-shadow:var(--shadow);
  backdrop-filter:blur(20px);
}
.reservations-hero-copy{
  border-radius:34px;
  padding:30px;
}
.reservations-hero-copy h1{
  margin:8px 0 10px;
  font-family:'Almarai','Cairo',sans-serif;
  font-size:clamp(28px,4vw,52px);
  line-height:1.15;
}
.reservations-hero-copy p{
  margin:0;
  color:rgba(255,250,242,.68);
  font-size:13px;
  line-height:1.9;
}
.reservations-stats{
  border-radius:34px;
  padding:18px;
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}
.reservation-stat-card{
  border:1px solid rgba(255,255,255,.11);
  border-radius:24px;
  padding:18px 20px;
  background:rgba(0,0,0,.16);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.reservation-stat-card span{
  font-size:12px;
  color:rgba(255,250,242,.62);
  font-weight:800;
}
.reservation-stat-card strong{
  font-family:'Almarai','Cairo',sans-serif;
  font-size:28px;
  color:var(--gold-2);
  line-height:1;
}
.reservations-panel{
  border-radius:34px;
  overflow:hidden;
}
.reservations-toolbar{
  padding:22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.reservations-toolbar h2{
  margin:0 0 6px;
  font-family:'Almarai','Cairo',sans-serif;
  font-size:24px;
}
.reservations-toolbar p{
  margin:0;
  font-size:12px;
  color:rgba(255,250,242,.6);
}
.reservation-search{
  width:min(380px,100%);
  display:flex;
  flex-direction:column;
  gap:8px;
  font-size:12px;
  font-weight:800;
  color:rgba(255,250,242,.78);
}
.reservation-search input{
  width:100%;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.24);
  color:#fff;
  border-radius:18px;
  padding:13px 15px;
  outline:none;
  min-height:48px;
}
.reservation-search input:focus{
  border-color:rgba(239,207,146,.55);
  box-shadow:0 0 0 4px rgba(201,149,76,.12);
}
.reservations-table-wrap{
  width:100%;
  overflow:auto;
}
.reservations-table{
  width:100%;
  border-collapse:collapse;
  min-width:980px;
}
.reservations-table th,
.reservations-table td{
  padding:15px 16px;
  text-align:right;
  border-bottom:1px solid rgba(255,255,255,.08);
  vertical-align:top;
  font-size:12.5px;
}
.reservations-table th{
  color:rgba(255,250,242,.52);
  font-weight:900;
  background:rgba(0,0,0,.16);
  white-space:nowrap;
}
.reservations-table td strong,
.reservations-table td b{
  display:block;
  color:#fffaf2;
  font-size:13px;
}
.reservations-table td small{
  display:block;
  margin-top:4px;
  color:rgba(255,250,242,.48);
  font-size:11px;
}
.reservations-table tr:hover td{
  background:rgba(255,255,255,.035);
}
.table-empty{
  text-align:center!important;
  padding:34px!important;
  color:rgba(255,250,242,.58)!important;
}
.reservations-cards{
  display:none;
  padding:18px;
  gap:12px;
}
.reservation-record-card{
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:18px;
  background:rgba(0,0,0,.18);
}
.reservation-record-card header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.reservation-record-card header span,
.record-grid span{
  display:block;
  color:rgba(255,250,242,.48);
  font-size:11px;
  font-weight:800;
  margin-bottom:5px;
}
.reservation-record-card h3{
  margin:0;
  font-family:'Almarai','Cairo',sans-serif;
  font-size:18px;
}
.reservation-record-card header strong{
  color:#1d1307;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  padding:9px 12px;
  border-radius:999px;
  white-space:nowrap;
  font-size:12px;
}
.record-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
}
.record-grid p{
  margin:0;
  padding:12px;
  border-radius:17px;
  background:rgba(255,255,255,.045);
}
.record-grid b{
  color:#fffaf2;
  font-size:12px;
}
.record-notes{
  margin:12px 0 0;
  color:rgba(255,250,242,.66);
  font-size:12px;
  line-height:1.8;
  border-top:1px solid rgba(255,255,255,.09);
  padding-top:12px;
}
@media(max-width:980px){
  .reservations-main{width:min(100% - 34px,1180px);padding-top:104px;}
  .reservations-dashboard{grid-template-columns:1fr;}
  .reservations-toolbar{flex-direction:column;align-items:stretch;}
  .reservation-search{width:100%;}
  .reservations-table-wrap{display:none;}
  .reservations-cards{display:grid;}
}
@media(max-width:620px){
  .record-grid{grid-template-columns:1fr;}
  .reservations-hero-copy,.reservations-stats,.reservations-panel{border-radius:26px;}
  .reservation-stat-card strong{font-size:23px;}
}

/* ===== V29: reservations actions ===== */
.reservation-stat-card.wide{
  min-height:96px;
}
.reservation-row.sold td{
  background:rgba(73,190,122,.035);
}
.reservation-row.cancelled td{
  background:rgba(255,95,95,.035);
  opacity:.82;
}
.reservation-status-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
  border-radius:999px;
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);
  color:rgba(255,250,242,.78);
  font-size:11px;
  font-weight:900;
}
.reservation-status-pill.new{
  border-color:rgba(239,207,146,.22);
  color:var(--gold-2);
}
.reservation-status-pill.sold{
  border-color:rgba(82,210,140,.32);
  background:rgba(82,210,140,.11);
  color:#9cf0bd;
}
.reservation-status-pill.cancelled{
  border-color:rgba(255,100,100,.32);
  background:rgba(255,100,100,.10);
  color:#ffb1ab;
}
.reservation-actions,
.record-actions{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
}
.reservation-action-btn{
  width:36px;
  height:36px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(255,255,255,.07);
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:18px;
  font-weight:900;
  cursor:pointer;
  transition:transform .22s ease, background .22s ease, border-color .22s ease, opacity .22s ease;
}
.reservation-action-btn:hover{
  transform:translateY(-2px) scale(1.04);
}
.reservation-action-btn.sold{
  color:#122115;
  background:linear-gradient(135deg,#75e2a0,#b8ffd0);
  border-color:rgba(116,226,160,.55);
}
.reservation-action-btn.cancel{
  color:#fff;
  background:linear-gradient(135deg,#9d2d2d,#ed6666);
  border-color:rgba(255,105,105,.45);
}
.reservation-action-btn:disabled{
  opacity:.46;
  cursor:progress;
  transform:none;
}
.reservation-action-state{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:8px 11px;
  font-size:11px;
  font-weight:900;
  white-space:nowrap;
}
.reservation-action-state.sold{
  color:#99efba;
  background:rgba(82,210,140,.10);
  border:1px solid rgba(82,210,140,.26);
}
.reservation-action-state.cancelled{
  color:#ffb1ab;
  background:rgba(255,100,100,.10);
  border:1px solid rgba(255,100,100,.26);
}
.record-actions{
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.09);
}
.reservation-record-card.sold{
  border-color:rgba(82,210,140,.22);
}
.reservation-record-card.cancelled{
  border-color:rgba(255,100,100,.22);
  opacity:.84;
}


/* ===== V30: sold unit state after confirming sale ===== */
.unit-ticket.sold,
.detail-unit-ticket.sold{
  opacity:.54;
  cursor:not-allowed;
  filter:saturate(.55);
  border-color:rgba(82,210,140,.18) !important;
  background:linear-gradient(145deg,rgba(82,210,140,.08),rgba(255,255,255,.035)) !important;
}
.unit-ticket.sold .ticket-status,
.sales-unit-pill.sold span,
.detail-unit-ticket.sold .ticket-status{
  background:rgba(82,210,140,.12) !important;
  border-color:rgba(82,210,140,.30) !important;
  color:#9cf0bd !important;
}
.sales-unit-pill.sold{
  opacity:.68;
  pointer-events:none;
  filter:saturate(.7);
}

/* ===== V31: reservations additional notes icon + customer note modal ===== */
.notes-icon-btn,
.record-notes-button{
  border:1px solid rgba(240,211,157,.28);
  background:linear-gradient(135deg,rgba(240,211,157,.18),rgba(255,255,255,.055));
  color:var(--gold-2);
  cursor:pointer;
  transition:transform .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease;
}
.notes-icon-btn{
  width:36px;
  height:36px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:17px;
  box-shadow:0 12px 26px rgba(0,0,0,.14);
}
.notes-icon-btn:hover,
.record-notes-button:hover{
  transform:translateY(-2px);
  border-color:rgba(240,211,157,.52);
  background:linear-gradient(135deg,rgba(240,211,157,.27),rgba(255,255,255,.075));
  box-shadow:0 18px 34px rgba(0,0,0,.20);
}
.no-notes{
  color:rgba(255,250,242,.35);
  font-weight:900;
}
.record-notes-button{
  width:100%;
  margin:12px 0 0;
  padding:12px 14px;
  border-radius:17px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-weight:900;
  font-size:12px;
}
.record-notes-button span{
  width:24px;
  height:24px;
  border-radius:999px;
  display:grid;
  place-items:center;
  color:#1b1208;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
}
.notes-modal{
  position:fixed;
  inset:0;
  z-index:160;
  display:grid;
  place-items:center;
  padding:22px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .22s ease,visibility .22s ease;
}
.notes-modal.open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.notes-modal-backdrop{
  position:absolute;
  inset:0;
  border:0;
  background:rgba(0,0,0,.70);
  backdrop-filter:blur(18px);
  cursor:pointer;
}
.notes-modal-card{
  position:relative;
  z-index:1;
  width:min(560px,100%);
  border-radius:30px;
  padding:28px;
  border:1px solid rgba(255,255,255,.16);
  background:
    radial-gradient(circle at 10% 0%,rgba(240,211,157,.20),transparent 34%),
    linear-gradient(145deg,rgba(22,18,13,.96),rgba(9,8,7,.96));
  box-shadow:0 40px 120px rgba(0,0,0,.48);
  overflow:hidden;
}
.notes-modal-card::before{
  content:'';
  position:absolute;
  inset:-1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.10),transparent);
  transform:translateX(-120%) skewX(-16deg);
  animation:softSweep 4.2s ease-in-out infinite;
  pointer-events:none;
}
.notes-modal-card h2{
  margin:8px 0 8px;
  color:#fffaf2;
  font-size:26px;
  line-height:1.35;
  font-weight:900;
}
.notes-modal-customer{
  margin:0 0 18px;
  color:rgba(255,250,242,.56);
  font-size:12px;
}
.notes-modal-text{
  position:relative;
  margin:0;
  padding:18px;
  border-radius:22px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.10);
  color:rgba(255,250,242,.88);
  line-height:2;
  white-space:pre-wrap;
  font-size:13px;
}
.notes-modal-close{
  position:absolute;
  top:16px;
  left:16px;
  z-index:2;
  width:38px;
  height:38px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.07);
  color:#fff;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}
.notes-modal-close:hover{
  background:rgba(255,255,255,.12);
}
@media(max-width:620px){
  .notes-modal-card{padding:24px 18px;border-radius:24px;}
  .notes-modal-card h2{font-size:22px;}
}

/* ===== V32: Premium realtime availability dashboard ===== */
.availability-dashboard-page{
  background:#020912 !important;
  color:#fffaf2;
  min-height:100svh;
}
.availability-main{
  position:relative;
  z-index:3;
  padding:112px 18px 36px;
  min-height:100svh;
  background:
    radial-gradient(circle at 50% 8%, rgba(240,211,157,.14), transparent 28%),
    radial-gradient(circle at 8% 72%, rgba(39,125,164,.18), transparent 30%),
    radial-gradient(circle at 92% 78%, rgba(211,162,92,.13), transparent 32%),
    linear-gradient(180deg,#020813 0%,#06101d 42%,#020912 100%);
  overflow:hidden;
}
.availability-main::before{
  content:'';
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  opacity:.28;
  background:
    linear-gradient(90deg,rgba(240,211,157,.08) 1px,transparent 1px),
    linear-gradient(rgba(240,211,157,.06) 1px,transparent 1px);
  background-size:96px 96px;
  mask-image:radial-gradient(circle at center,#000,transparent 78%);
}
.availability-board{
  position:relative;
  z-index:2;
  width:min(1680px,100%);
  margin:0 auto;
  padding:20px clamp(12px,1.4vw,24px) 24px;
  border:1px solid rgba(240,211,157,.28);
  border-radius:34px;
  background:
    linear-gradient(180deg,rgba(8,20,36,.88),rgba(2,8,16,.94)),
    radial-gradient(circle at 52% 2%,rgba(240,211,157,.16),transparent 28%);
  box-shadow:
    0 34px 130px rgba(0,0,0,.52),
    inset 0 1px 0 rgba(255,255,255,.08),
    0 0 0 1px rgba(255,255,255,.03);
  overflow:hidden;
}
.availability-board::before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 50% 10%,rgba(240,211,157,.14),transparent 30%),
    linear-gradient(115deg,transparent 0 24%,rgba(240,211,157,.14) 24.12%,transparent 24.4% 100%),
    linear-gradient(245deg,transparent 0 21%,rgba(240,211,157,.10) 21.1%,transparent 21.35% 100%);
  opacity:.72;
}
.availability-board::after{
  content:'';
  position:absolute;
  left:5%;
  right:5%;
  bottom:-180px;
  height:320px;
  border:1px solid rgba(240,211,157,.34);
  border-color:rgba(240,211,157,.34) transparent transparent transparent;
  border-radius:50%;
  filter:drop-shadow(0 0 22px rgba(240,211,157,.18));
  pointer-events:none;
}
.availability-orb{
  position:absolute;
  border-radius:999px;
  pointer-events:none;
  filter:blur(18px);
  opacity:.38;
}
.availability-orb.orb-one{
  width:320px;height:320px;
  right:-130px;top:90px;
  background:radial-gradient(circle,rgba(240,211,157,.34),transparent 66%);
}
.availability-orb.orb-two{
  width:260px;height:260px;
  left:-110px;bottom:130px;
  background:radial-gradient(circle,rgba(91,143,73,.24),transparent 68%);
}
.availability-topbar,
.availability-summary,
.availability-content,
.availability-bottom-grid{
  position:relative;
  z-index:2;
}
.availability-topbar{
  display:grid;
  grid-template-columns:220px 1fr 260px;
  gap:18px;
  align-items:center;
  margin-bottom:16px;
}
.live-clock-card,
.dashboard-brand-card,
.availability-stat,
.availability-legend,
.availability-tower,
.recent-bookings-panel,
.bottom-total-panel,
.unit-details-panel{
  border:1px solid rgba(240,211,157,.24);
  background:linear-gradient(150deg,rgba(9,23,42,.82),rgba(4,12,23,.58));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 48px rgba(0,0,0,.28);
  backdrop-filter:blur(18px) saturate(1.12);
}
.live-clock-card{
  border-radius:18px;
  padding:16px 18px;
  justify-self:start;
  min-width:190px;
}
.clock-row,
.date-row{
  display:flex;
  align-items:center;
  gap:10px;
  direction:ltr;
  justify-content:flex-start;
}
.clock-row strong{
  font-size:27px;
  line-height:1;
  letter-spacing:.02em;
  color:#fff;
}
.clock-icon,
.date-row>span{
  color:var(--gold-2);
  font-weight:900;
  font-size:22px;
}
.date-row{
  margin-top:12px;
  direction:rtl;
}
.date-row p{margin:0;line-height:1.4;color:rgba(255,250,242,.86);font-weight:800}
.date-row small{display:block;color:rgba(255,250,242,.62);font-size:12px;font-weight:700}
.availability-title-wrap{text-align:center;align-self:center}
.dashboard-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--gold-2);
  font-size:12px;
  font-weight:900;
  margin-bottom:4px;
  letter-spacing:.02em;
}
.availability-title-wrap h1{
  margin:0;
  font-family:'Noto Kufi Arabic','IBM Plex Sans Arabic','Cairo',sans-serif !important;
  font-size:clamp(38px,5vw,76px);
  line-height:1.12;
  font-weight:900;
  color:var(--gold-2);
  text-shadow:0 8px 34px rgba(211,162,92,.20);
}
.availability-title-wrap p{
  margin:10px auto 0;
  color:rgba(255,250,242,.68);
  font-size:13px;
  max-width:760px;
  line-height:1.8;
}
.dashboard-brand-card{
  justify-self:end;
  border:0;
  background:transparent;
  box-shadow:none;
  text-align:right;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:8px;
}
.dashboard-brand-card img{
  width:185px;
  max-height:72px;
  object-fit:contain;
  filter:drop-shadow(0 10px 26px rgba(0,0,0,.42));
}
.dashboard-brand-card span{color:rgba(255,250,242,.78);font-size:13px;font-weight:800}
.availability-summary{
  display:grid;
  grid-template-columns:1.28fr 1fr 1fr 1fr 1.05fr;
  gap:12px;
  margin-bottom:14px;
}
.availability-stat,
.availability-legend{
  min-height:106px;
  border-radius:20px;
  padding:14px 18px;
  display:flex;
  align-items:center;
  gap:16px;
  overflow:hidden;
  position:relative;
}
.availability-stat::before,
.availability-legend::before{
  content:'';
  position:absolute;
  inset:auto -20px -45px -20px;
  height:80px;
  background:radial-gradient(ellipse at center,rgba(240,211,157,.18),transparent 66%);
  pointer-events:none;
}
.stat-icon{
  width:66px;
  height:66px;
  border-radius:999px;
  display:grid;
  place-items:center;
  border:1px solid rgba(240,211,157,.35);
  color:var(--gold-2);
  font-size:34px;
  font-weight:900;
  flex:0 0 auto;
  background:rgba(255,255,255,.035);
}
.stat-icon svg,
.bottom-total-panel svg{
  width:54px;height:54px;
  fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;
}
.availability-stat span{
  display:block;
  color:rgba(255,250,242,.75);
  font-weight:800;
  font-size:13px;
}
.availability-stat strong{
  display:block;
  font-size:clamp(34px,3.2vw,54px);
  line-height:1.05;
  margin-top:3px;
  color:#fff;
  letter-spacing:.01em;
}
.availability-stat.available .stat-icon,
.availability-stat.available strong{color:#9cd657}
.availability-stat.reserved .stat-icon,
.availability-stat.reserved strong{color:#ff941b}
.availability-stat.ratio .stat-icon{font-size:36px}
.availability-legend{
  flex-direction:column;
  align-items:stretch;
  justify-content:center;
  gap:10px;
}
.availability-legend strong{
  color:#fff;font-size:14px;text-align:center;margin-bottom:3px;
}
.availability-legend div{
  display:flex;align-items:center;gap:9px;justify-content:center;color:rgba(255,250,242,.84);font-weight:800;font-size:13px;
}
.legend-dot{width:18px;height:18px;border-radius:999px;display:inline-block;box-shadow:0 0 18px currentColor}
.legend-dot.available{background:#8fc34b;color:rgba(143,195,75,.55)}
.legend-dot.reserved{background:#ff8a05;color:rgba(255,138,5,.55)}
.availability-content{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  align-items:start;
}
.availability-tower{
  border-radius:22px;
  padding:12px;
  overflow:hidden;
  position:relative;
  min-width:0;
  transition:transform .28s var(--ease),border-color .28s ease,box-shadow .28s ease;
}
.availability-tower:hover{
  transform:translateY(-4px);
  border-color:rgba(240,211,157,.48);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 30px 70px rgba(0,0,0,.38),0 0 50px rgba(211,162,92,.08);
}
.availability-tower-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:4px 4px 12px;
  border-bottom:1px solid rgba(240,211,157,.18);
}
.tower-head-title{display:flex;align-items:center;gap:9px;min-width:0}
.tower-head-title svg{width:38px;height:38px;fill:none;stroke:var(--gold-2);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.tower-head-title h2{
  margin:0;
  font-family:'Noto Kufi Arabic','IBM Plex Sans Arabic','Cairo',sans-serif !important;
  font-size:clamp(22px,2.2vw,34px);
  line-height:1.15;
  color:var(--gold-2);
}
.tower-head-title span{display:block;color:rgba(255,250,242,.78);font-size:12px;font-weight:800;margin-top:3px}
.tower-select-link,
.tower-full-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  min-height:34px;
  padding:7px 12px;
  font-size:11px;
  font-weight:900;
  white-space:nowrap;
}
.tower-select-link{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13);color:var(--gold-2)}
.tower-select-link:hover{background:rgba(240,211,157,.14);transform:translateY(-1px)}
.tower-full-badge{font-style:normal;color:#1a1004;background:linear-gradient(135deg,var(--gold),var(--gold-2));box-shadow:0 12px 24px rgba(211,162,92,.20)}
.tower-grid-wrap{display:grid;gap:6px;margin-top:10px}
.dashboard-floor{
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  gap:7px;
  align-items:stretch;
}
.floor-number{
  min-height:43px;
  border:1px solid rgba(240,211,157,.16);
  border-radius:12px;
  display:grid;
  place-items:center;
  color:#fff;
  background:rgba(255,255,255,.035);
  font-size:18px;
  line-height:1;
}
.floor-units{
  position:relative;
  display:grid;
  grid-template-columns:repeat(var(--unit-cols),minmax(0,1fr));
  gap:5px;
  min-height:43px;
}
.dashboard-unit{
  position:relative;
  min-width:0;
  min-height:43px;
  border-radius:10px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:0;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 10px 22px rgba(0,0,0,.22);
  overflow:hidden;
  transition:.2s var(--ease);
}
.dashboard-unit::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.22),transparent 42%,rgba(0,0,0,.16));
  pointer-events:none;
}
.dashboard-unit.available{background:linear-gradient(180deg,#8fc34b,#3d7b32);color:#fff}
.dashboard-unit.reserved{background:linear-gradient(180deg,#ff9a18,#db6500);color:#fff}
.dashboard-unit.available:hover{transform:translateY(-2px) scale(1.015);filter:saturate(1.1);box-shadow:0 14px 32px rgba(143,195,75,.22)}
.dashboard-unit b{
  position:relative;
  z-index:1;
  direction:ltr;
  unicode-bidi:bidi-override;
  font-size:10px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.01em;
  white-space:nowrap;
}
.dashboard-unit small{
  position:relative;
  z-index:1;
  opacity:.88;
  font-size:8.5px;
  font-weight:800;
  line-height:1.1;
  margin-top:2px;
}
.floor-full .floor-units{
  padding-top:25px;
}
.floor-full-ribbon{
  position:absolute;
  top:0;
  right:0;
  left:0;
  height:22px;
  z-index:2;
  border-radius:9px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  font-size:10px;
  font-weight:900;
  color:var(--gold-2);
  border:1px solid rgba(255,148,27,.55);
  background:linear-gradient(90deg,rgba(255,138,5,.22),rgba(75,31,5,.66),rgba(255,138,5,.22));
  box-shadow:0 10px 22px rgba(255,138,5,.12);
}
.floor-full-ribbon::before{content:'●';font-size:8px;color:#ff941b;filter:drop-shadow(0 0 8px #ff941b)}
.tower-foot-stats{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:10px;
}
.tower-foot-stats span{
  border-radius:14px;
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.10);
  color:rgba(255,250,242,.78);
  font-size:12px;
  font-weight:800;
}
.tower-foot-stats b{color:var(--gold-2);font-size:16px}
.availability-bottom-grid{
  display:grid;
  grid-template-columns:1.1fr 1.05fr .9fr;
  gap:12px;
  margin-top:14px;
  align-items:stretch;
}
.recent-bookings-panel,
.bottom-total-panel,
.unit-details-panel{
  border-radius:20px;
  padding:14px;
  min-height:128px;
}
.recent-bookings-panel header{
  display:flex;align-items:center;gap:8px;margin-bottom:10px;color:var(--gold-2)
}
.recent-bookings-panel h2{margin:0;font-size:15px;line-height:1.2}
.panel-icon{font-size:18px;color:var(--gold-2)}
.recent-bookings-list{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
}
.recent-booking-card{
  min-width:0;
  border-radius:14px;
  padding:10px 8px;
  background:rgba(0,0,0,.22);
  border:1px solid rgba(240,211,157,.16);
  text-align:center;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.recent-booking-card span{display:block;color:var(--gold-2);font-size:10px;font-weight:900;direction:ltr}
.recent-booking-card strong{display:block;color:#fff;font-size:15px;line-height:1.2;margin:4px 0 2px;direction:ltr;unicode-bidi:bidi-override}
.recent-booking-card p{margin:0;color:rgba(255,250,242,.78);font-size:11px;font-weight:800}
.recent-booking-card small{display:block;color:rgba(255,250,242,.56);font-size:10px;margin-top:2px;font-weight:800}
.bottom-total-panel{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
  padding:0;
  overflow:hidden;
}
.bottom-total-panel>div{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  min-height:128px;
  border-left:1px solid rgba(240,211,157,.14);
}
.bottom-total-panel>div:last-child{border-left:0}
.bottom-total-panel svg{width:34px;height:34px;color:var(--gold-2)}
.bottom-total-panel strong{font-size:25px;line-height:1;color:#fff}
.bottom-total-panel span{font-size:11px;font-weight:800;color:rgba(255,250,242,.70)}
.panel-line-icon{font-size:30px;line-height:1;color:var(--gold-2);font-weight:900}
.panel-line-icon.green{color:#9cd657}.panel-line-icon.orange{color:#ff941b}
.unit-details-panel{
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
  align-items:center;
  background:
    linear-gradient(135deg,rgba(240,211,157,.09),rgba(9,23,42,.82)),
    radial-gradient(circle at 95% 90%,rgba(240,211,157,.16),transparent 48%);
}
.unit-details-panel span{display:block;color:var(--gold-2);font-size:18px;font-weight:900;line-height:1.4}
.unit-details-panel p{margin:6px 0 0;color:rgba(255,250,242,.68);font-size:12px;line-height:1.7;max-width:310px}
.dashboard-empty,
.mini-placeholder,
.skeleton-card{
  border:1px solid rgba(240,211,157,.18);
  background:rgba(255,255,255,.045);
  border-radius:20px;
  color:rgba(255,250,242,.72);
  padding:22px;
  font-weight:800;
  text-align:center;
}
.availability-content .dashboard-empty{grid-column:1/-1;min-height:180px;display:grid;place-items:center}
@media(max-width:1320px){
  .availability-content{grid-template-columns:1fr;}
  .availability-tower{width:100%;}
  .dashboard-unit b{font-size:11px;}
  .availability-bottom-grid{grid-template-columns:1fr;}
}
@media(max-width:980px){
  .availability-main{padding:100px 12px 24px;}
  .availability-board{border-radius:24px;padding:14px 10px 18px;}
  .availability-topbar{grid-template-columns:1fr;}
  .live-clock-card,.dashboard-brand-card{justify-self:center;text-align:center;align-items:center;}
  .availability-summary{grid-template-columns:repeat(2,1fr);}
  .availability-legend{grid-column:1/-1;}
  .availability-title-wrap h1{font-size:38px;}
  .availability-title-wrap p{font-size:12px;}
  .recent-bookings-list{grid-template-columns:repeat(2,1fr);}
  .unit-details-panel{grid-template-columns:1fr;}
  .unit-details-panel .btn{width:100%;}
}
@media(max-width:640px){
  .availability-summary{grid-template-columns:1fr;}
  .availability-stat,.availability-legend{min-height:90px;}
  .dashboard-floor{grid-template-columns:1fr;}
  .floor-number{min-height:34px;}
  .floor-units{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .bottom-total-panel{grid-template-columns:repeat(2,1fr);}
  .bottom-total-panel>div{min-height:105px;}
  .recent-bookings-list{grid-template-columns:1fr;}
}

/* ===== V33: better live dashboard update + floor 8 label ===== */
.availability-live-chip{
  margin:12px auto 0;
  width:max-content;
  max-width:100%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:7px 13px;
  border-radius:999px;
  border:1px solid rgba(240,211,157,.22);
  background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.025));
  color:rgba(255,250,242,.82);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 34px rgba(0,0,0,.20);
  backdrop-filter:blur(14px);
  font-size:11px;
  font-weight:900;
}
.availability-live-chip span{
  width:9px;
  height:9px;
  border-radius:999px;
  background:#9cd657;
  box-shadow:0 0 0 0 rgba(156,214,87,.42),0 0 18px rgba(156,214,87,.55);
  animation:livePulse 1.55s ease-in-out infinite;
}
.availability-live-chip.is-refreshing span{
  background:#ff941b;
  box-shadow:0 0 0 0 rgba(255,148,27,.48),0 0 18px rgba(255,148,27,.55);
}
.availability-live-chip b{color:#fff;font-weight:900;line-height:1;}
.availability-live-chip small{color:rgba(255,250,242,.58);font-weight:800;line-height:1;}
.availability-live-chip em{font-style:normal;direction:ltr;display:inline-block;color:var(--gold-2)}
.availability-board.just-updated .availability-stat,
.availability-board.just-updated .availability-tower,
.availability-board.just-updated .recent-booking-card{
  animation:boardSoftRefresh .55s ease both;
}
.floor-number{
  font-family:'Readex Pro','Cairo','IBM Plex Sans Arabic',sans-serif !important;
  font-weight:800;
}
.floor-full-ribbon{
  letter-spacing:0;
}
@keyframes livePulse{
  0%{box-shadow:0 0 0 0 currentColor,0 0 18px currentColor;transform:scale(1)}
  70%{box-shadow:0 0 0 8px rgba(156,214,87,0),0 0 18px currentColor;transform:scale(1.08)}
  100%{box-shadow:0 0 0 0 rgba(156,214,87,0),0 0 18px currentColor;transform:scale(1)}
}
@keyframes boardSoftRefresh{
  0%{filter:brightness(1);}
  38%{filter:brightness(1.16) saturate(1.08);}
  100%{filter:brightness(1);}
}
@media(max-width:980px){
  .availability-live-chip{font-size:10px;flex-wrap:wrap;width:auto;}
}

/* ===== V34: presentation-only availability dashboard refinement ===== */
.availability-main{
  background:
    radial-gradient(circle at 50% -8%, rgba(240,211,157,.18), transparent 26%),
    radial-gradient(circle at 14% 72%, rgba(61,119,140,.17), transparent 28%),
    radial-gradient(circle at 88% 70%, rgba(211,162,92,.13), transparent 31%),
    linear-gradient(180deg,#020611 0%,#071322 48%,#02070e 100%);
}
.availability-board{
  border-radius:38px;
  padding:clamp(16px,1.6vw,28px);
  background:
    linear-gradient(180deg,rgba(10,22,39,.90),rgba(2,8,16,.96)),
    radial-gradient(circle at 50% 0%,rgba(240,211,157,.20),transparent 30%);
}
.availability-board::before{
  background:
    radial-gradient(ellipse at 50% 8%,rgba(240,211,157,.13),transparent 36%),
    linear-gradient(120deg,transparent 0 18%,rgba(240,211,157,.12) 18.1%,transparent 18.32% 100%),
    linear-gradient(240deg,transparent 0 18%,rgba(240,211,157,.09) 18.1%,transparent 18.32% 100%);
}
.availability-board::after{
  left:10%;right:10%;bottom:-205px;height:360px;
  opacity:.85;
}
.availability-title-wrap h1{
  letter-spacing:-.04em;
  text-shadow:0 12px 42px rgba(211,162,92,.28),0 1px 0 rgba(255,255,255,.18);
}
.availability-title-wrap p{max-width:850px;font-size:13.5px;color:rgba(255,250,242,.72)}
.availability-live-chip{
  border-color:rgba(240,211,157,.30);
  background:linear-gradient(135deg,rgba(240,211,157,.11),rgba(255,255,255,.035));
}
.availability-summary{
  gap:14px;
  margin-block:18px;
}
.availability-stat,
.availability-legend{
  min-height:112px;
  border-radius:24px;
  border-color:rgba(240,211,157,.30);
  background:
    linear-gradient(145deg,rgba(13,31,55,.82),rgba(4,13,24,.74)),
    radial-gradient(circle at 18% 15%,rgba(255,255,255,.12),transparent 30%);
  transition:transform .28s var(--ease),border-color .28s ease,box-shadow .28s ease;
}
.availability-stat:hover,
.availability-legend:hover{
  transform:translateY(-3px);
  border-color:rgba(240,211,157,.48);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 26px 70px rgba(0,0,0,.34),0 0 42px rgba(211,162,92,.08);
}
.availability-content{gap:16px;}
.availability-tower{
  border-radius:26px;
  padding:14px;
  background:
    linear-gradient(180deg,rgba(12,29,52,.82),rgba(3,10,20,.88)),
    radial-gradient(circle at 50% 0%,rgba(240,211,157,.10),transparent 38%);
  border-color:rgba(240,211,157,.30);
}
.availability-tower::before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,transparent,rgba(240,211,157,.06),transparent),
    radial-gradient(circle at 88% 10%,rgba(240,211,157,.12),transparent 28%);
  opacity:.55;
}
.availability-tower-head{position:relative;z-index:2;padding:6px 5px 14px;}
.tower-head-title h2{letter-spacing:-.03em;}
.tower-available-badge,
.tower-full-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  border-radius:999px;
  min-height:34px;
  padding:7px 13px;
  font-size:11px;
  font-weight:900;
  white-space:nowrap;
  font-style:normal;
}
.tower-available-badge{
  color:#dfffc2;
  background:linear-gradient(135deg,rgba(139,200,78,.18),rgba(139,200,78,.06));
  border:1px solid rgba(156,214,87,.32);
  box-shadow:0 0 26px rgba(156,214,87,.08);
}
.tower-available-badge b{font-size:13px;color:#9cd657;}
.tower-grid-wrap{position:relative;z-index:2;gap:7px;}
.dashboard-floor{
  grid-template-columns:38px minmax(0,1fr);
  gap:7px;
}
.floor-number{
  border-radius:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.025));
  border-color:rgba(240,211,157,.20);
  color:rgba(255,250,242,.92);
}
.floor-units{gap:6px;}
.dashboard-unit{
  cursor:default;
  min-height:44px;
  border-radius:12px;
}
.dashboard-unit.available:hover,
.dashboard-unit.reserved:hover{
  transform:translateY(-2px);
}
.dashboard-unit.available:hover{box-shadow:0 14px 34px rgba(143,195,75,.17),inset 0 1px 0 rgba(255,255,255,.18)}
.dashboard-unit.reserved:hover{box-shadow:0 14px 34px rgba(255,138,5,.18),inset 0 1px 0 rgba(255,255,255,.18)}
.floor-full-ribbon{
  height:23px;
  border-radius:11px;
  background:linear-gradient(90deg,rgba(255,138,5,.16),rgba(77,34,7,.82),rgba(255,138,5,.16));
}
.tower-foot-stats{position:relative;z-index:2;}
.availability-bottom-grid{
  grid-template-columns:1.1fr 1.05fr .92fr;
  gap:16px;
  margin-top:16px;
}
.recent-bookings-panel,
.bottom-total-panel,
.unit-details-panel{
  border-radius:24px;
  border-color:rgba(240,211,157,.28);
  background:linear-gradient(145deg,rgba(12,29,52,.76),rgba(3,10,20,.74));
}
.dashboard-display-note{
  grid-template-columns:1fr 58px;
}
.dashboard-display-note .display-note-mark{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:20px;
  color:#1a1004;
  font-size:28px;
  font-weight:900;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  box-shadow:0 20px 42px rgba(211,162,92,.22);
}
.dashboard-display-note p{max-width:360px;}
.recent-booking-card{
  transition:transform .24s var(--ease),border-color .24s ease,box-shadow .24s ease;
}
.recent-booking-card:hover{
  transform:translateY(-3px);
  border-color:rgba(240,211,157,.32);
  box-shadow:0 16px 38px rgba(0,0,0,.22),0 0 30px rgba(211,162,92,.07);
}
@media (min-width:1321px){
  .availability-content{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:980px){
  .dashboard-display-note{grid-template-columns:1fr;}
  .dashboard-display-note .display-note-mark{width:52px;height:52px;justify-self:start;}
}

/* ===== V35: true black dashboard, remove technical display card, sold status shown correctly ===== */
.availability-dashboard-page{
  background:#050505 !important;
}
.availability-main{
  background:
    radial-gradient(circle at 50% -12%, rgba(238,196,122,.16), transparent 24%),
    radial-gradient(circle at 8% 72%, rgba(180,118,42,.10), transparent 28%),
    radial-gradient(circle at 92% 70%, rgba(238,196,122,.09), transparent 30%),
    linear-gradient(180deg,#050505 0%,#0a0a0a 46%,#030303 100%) !important;
}
.availability-main::before{
  opacity:.18;
  background:
    linear-gradient(90deg,rgba(240,211,157,.055) 1px,transparent 1px),
    linear-gradient(rgba(240,211,157,.04) 1px,transparent 1px) !important;
}
.availability-board{
  background:
    linear-gradient(180deg,rgba(15,15,15,.94),rgba(4,4,4,.97)),
    radial-gradient(circle at 50% 0%,rgba(240,211,157,.16),transparent 32%) !important;
  border-color:rgba(240,211,157,.30) !important;
  box-shadow:
    0 34px 130px rgba(0,0,0,.64),
    inset 0 1px 0 rgba(255,255,255,.07),
    0 0 0 1px rgba(255,255,255,.025) !important;
}
.live-clock-card,
.dashboard-brand-card,
.availability-stat,
.availability-legend,
.availability-tower,
.recent-bookings-panel,
.bottom-total-panel,
.unit-details-panel{
  background:
    linear-gradient(145deg,rgba(21,21,21,.88),rgba(6,6,6,.78)),
    radial-gradient(circle at 18% 12%,rgba(240,211,157,.075),transparent 34%) !important;
}
.availability-stat,
.availability-legend,
.availability-tower,
.recent-bookings-panel,
.bottom-total-panel{
  border-color:rgba(240,211,157,.28) !important;
}
.availability-tower{
  background:
    linear-gradient(180deg,rgba(20,20,20,.88),rgba(5,5,5,.92)),
    radial-gradient(circle at 50% 0%,rgba(240,211,157,.105),transparent 40%) !important;
}
.recent-booking-card{
  background:rgba(0,0,0,.38) !important;
}
.availability-bottom-grid{
  grid-template-columns:1.08fr 1fr !important;
}
.dashboard-display-note{
  display:none !important;
}
.legend-dot.sold{background:#b8b8b8;color:rgba(184,184,184,.55)}
.dashboard-unit.sold{
  background:linear-gradient(180deg,#6e6e6e,#343434) !important;
  color:#fff;
  border-color:rgba(255,255,255,.22);
}
.dashboard-unit.sold:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 34px rgba(180,180,180,.12),inset 0 1px 0 rgba(255,255,255,.16);
}
@media(max-width:980px){
  .availability-bottom-grid{grid-template-columns:1fr !important;}
}

/* ===== V37: details sorting controls + dashboard order cleanup ===== */
.detail-sort-controls{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:16px 0 14px;
  padding:14px 16px;
  border-radius:24px;
  border:1px solid rgba(240,211,157,.18);
  background:
    radial-gradient(circle at 95% 0%,rgba(240,211,157,.13),transparent 36%),
    linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.03));
  box-shadow:0 16px 42px rgba(0,0,0,.16);
}
.detail-sort-controls span{
  display:block;
  color:rgba(255,250,242,.54);
  font-size:11px;
  font-weight:800;
  margin-bottom:4px;
}
.detail-sort-controls strong{
  display:block;
  color:#fff;
  font-size:14px;
  font-weight:900;
}
.detail-sort-controls select{
  min-width:260px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:18px;
  color:#fff;
  background:rgba(0,0,0,.34);
  padding:12px 14px;
  outline:none;
  font-weight:800;
  cursor:pointer;
}
.detail-sort-controls select:focus{
  border-color:rgba(240,211,157,.58);
  box-shadow:0 0 0 4px rgba(201,149,76,.12);
}
.detail-sort-controls option{background:#12100d;color:#fff;}
@media (max-width:760px){
  .detail-sort-controls{align-items:stretch;flex-direction:column;}
  .detail-sort-controls select{width:100%;min-width:0;}
}

/* ===== V38: building details card spacing, sold color, stable sales-status menu ===== */
.detail-ticket-meta-clean{
  gap:10px !important;
}
.detail-ticket-meta-clean .detail-ticket-model{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
}
.detail-ticket-info-line{
  margin:0 !important;
  padding-top:10px !important;
  border-top:1px solid rgba(255,255,255,.075) !important;
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:7px !important;
  color:rgba(255,250,242,.76) !important;
  font-size:12px !important;
  line-height:1.9 !important;
}
.detail-ticket-info-line span{
  display:inline-flex !important;
  width:auto !important;
  padding:0 !important;
  border:0 !important;
  color:rgba(255,250,242,.78) !important;
}
.detail-ticket-info-line i{
  color:var(--gold-2) !important;
  font-style:normal !important;
  opacity:.9 !important;
  font-weight:900 !important;
}
.unit-ticket.sold,
.detail-unit-ticket.sold{
  opacity:.72 !important;
  cursor:not-allowed !important;
  filter:saturate(.28) !important;
  border-color:rgba(210,210,210,.26) !important;
  background:
    radial-gradient(circle at 14% 0%,rgba(255,255,255,.12),transparent 34%),
    linear-gradient(145deg,rgba(104,104,104,.25),rgba(24,24,24,.72)) !important;
}
.unit-ticket.sold .ticket-status,
.detail-unit-ticket.sold .ticket-status{
  background:rgba(210,210,210,.12) !important;
  border-color:rgba(210,210,210,.30) !important;
  color:#e6e6e6 !important;
}
.unit-ticket.sold:hover,
.detail-unit-ticket.sold:hover{
  border-color:rgba(240,211,157,.22) !important;
  box-shadow:0 18px 44px rgba(0,0,0,.28) !important;
}
body.availability-dashboard-page .site-header,
body.availability-dashboard-page .site-header.is-plain{
  position:fixed !important;
  top:18px !important;
  left:50% !important;
  right:auto !important;
  transform:translateX(-50%) !important;
  display:block !important;
  width:min(1260px,calc(100% - 36px)) !important;
  min-height:68px !important;
  margin:0 !important;
}
body.availability-dashboard-page .site-header .main-nav,
body.availability-dashboard-page .site-header.is-plain .main-nav{
  position:absolute !important;
  top:50% !important;
  left:50% !important;
  right:auto !important;
  transform:translate(-50%,-50%) !important;
  width:max-content !important;
  max-width:none !important;
  margin:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:3px !important;
  white-space:nowrap !important;
}
body.availability-dashboard-page .site-header .brand,
body.availability-dashboard-page .site-header.is-plain .brand{
  position:absolute !important;
  top:50% !important;
  right:16px !important;
  left:auto !important;
  transform:translateY(-50%) !important;
}
@media(max-width:860px){
  body.availability-dashboard-page .site-header .main-nav,
  body.availability-dashboard-page .site-header.is-plain .main-nav{
    display:none !important;
    top:76px !important;
    left:0 !important;
    right:0 !important;
    transform:none !important;
    width:auto !important;
    max-width:none !important;
  }
  body.availability-dashboard-page .site-header .main-nav.open,
  body.availability-dashboard-page .site-header.is-plain .main-nav.open{
    display:flex !important;
  }
}

/* ===== V39: golden integrated background for building details pages ===== */
body.detail-page{
  position:relative;
  min-height:100svh;
  background:
    radial-gradient(circle at 82% 8%, rgba(240,211,157,.22), transparent 30%),
    radial-gradient(circle at 12% 24%, rgba(211,162,92,.14), transparent 34%),
    radial-gradient(circle at 50% 100%, rgba(240,211,157,.10), transparent 32%),
    linear-gradient(180deg,#080604 0%,#0d0a07 48%,#050403 100%) !important;
  overflow-x:hidden;
}
body.detail-page::before{
  content:'';
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(115deg, transparent 0 22%, rgba(240,211,157,.105) 22.15%, transparent 22.7% 58%, rgba(211,162,92,.075) 58.15%, transparent 58.6% 100%),
    radial-gradient(ellipse at 76% 18%, rgba(240,211,157,.12), transparent 44%),
    radial-gradient(ellipse at 8% 72%, rgba(211,162,92,.09), transparent 38%);
  opacity:.92;
}
body.detail-page::after{
  content:'';
  position:fixed;
  inset:auto -10% -18% -10%;
  height:46svh;
  z-index:0;
  pointer-events:none;
  background:radial-gradient(ellipse at 50% 100%, rgba(240,211,157,.20), transparent 62%);
  filter:blur(18px);
  opacity:.72;
}
body.detail-page .details-main{
  position:relative;
  z-index:3;
  isolation:isolate;
}
body.detail-page .details-main::before{
  content:'';
  position:absolute;
  inset:28px max(20px,calc((100% - 1180px)/2)) auto;
  height:230px;
  z-index:-1;
  pointer-events:none;
  border-radius:40px;
  background:
    radial-gradient(circle at 88% 12%, rgba(240,211,157,.20), transparent 35%),
    linear-gradient(90deg, rgba(240,211,157,.08), transparent 44%, rgba(211,162,92,.07));
  border:1px solid rgba(240,211,157,.10);
  box-shadow:0 40px 120px rgba(0,0,0,.36);
  opacity:.75;
}
body.detail-page .page-hero{
  position:relative;
  padding:18px 22px;
  border:1px solid rgba(240,211,157,.18);
  border-radius:30px;
  background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.025));
  backdrop-filter:blur(18px) saturate(1.1);
  box-shadow:0 22px 70px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.08);
}
body.detail-page .page-hero::after{
  content:'';
  position:absolute;
  inset:auto 24px -1px 24px;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--gold-2),transparent);
  opacity:.72;
}
body.detail-page .detail-slider-wrap{
  border-color:rgba(240,211,157,.25) !important;
  box-shadow:
    0 40px 120px rgba(0,0,0,.42),
    0 0 0 1px rgba(240,211,157,.06),
    0 0 80px rgba(211,162,92,.11) !important;
}
body.detail-page .detail-slider-wrap::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    radial-gradient(circle at 86% 15%, rgba(240,211,157,.16), transparent 30%),
    linear-gradient(135deg, rgba(240,211,157,.10), transparent 22%, transparent 78%, rgba(211,162,92,.12));
  mix-blend-mode:screen;
  opacity:.62;
}
body.detail-page .units{
  position:relative;
}
body.detail-page .units::before{
  content:'';
  position:absolute;
  inset:-30px -18px auto;
  height:260px;
  z-index:-1;
  pointer-events:none;
  border-radius:42px;
  background:
    radial-gradient(circle at 14% 12%, rgba(240,211,157,.15), transparent 35%),
    radial-gradient(circle at 92% 75%, rgba(211,162,92,.11), transparent 38%);
  opacity:.70;
}
body.detail-page .detail-inventory-panel,
body.detail-page .detail-floor-head,
body.detail-page .detail-unit-ticket{
  border-color:rgba(240,211,157,.18) !important;
  background:
    radial-gradient(circle at 90% 0%, rgba(240,211,157,.10), transparent 32%),
    linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.028)) !important;
}
body.detail-page .detail-unit-ticket:hover{
  border-color:rgba(240,211,157,.42) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.24),0 0 48px rgba(211,162,92,.09) !important;
}
body.detail-page .reserve-band{
  position:relative;
  overflow:hidden;
  box-shadow:0 26px 90px rgba(211,162,92,.22), inset 0 1px 0 rgba(255,255,255,.22) !important;
}
body.detail-page .reserve-band::before{
  content:'';
  position:absolute;
  top:-55%;
  right:-22%;
  width:44%;
  height:210%;
  transform:rotate(18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.30),transparent);
  opacity:.58;
  pointer-events:none;
}
@media(max-width:860px){
  body.detail-page .page-hero{padding:16px;border-radius:24px;}
  body.detail-page .details-main::before{inset:18px 14px auto;height:190px;}
}

/* ===== V40: subtle integrated gold background for details pages (no stacked cards) ===== */
body.detail-page{
  background:
    radial-gradient(circle at 78% 6%, rgba(240,211,157,.13), transparent 31%),
    radial-gradient(circle at 13% 34%, rgba(211,162,92,.09), transparent 36%),
    linear-gradient(180deg,#080705 0%,#0b0a08 48%,#050403 100%) !important;
}
body.detail-page::before{
  background:
    linear-gradient(116deg, transparent 0 25%, rgba(240,211,157,.06) 25.15%, transparent 25.55% 63%, rgba(211,162,92,.045) 63.15%, transparent 63.55% 100%),
    radial-gradient(ellipse at 75% 22%, rgba(240,211,157,.08), transparent 44%),
    radial-gradient(ellipse at 10% 78%, rgba(211,162,92,.065), transparent 40%) !important;
  opacity:.72 !important;
}
body.detail-page::after{
  height:38svh !important;
  background:radial-gradient(ellipse at 50% 100%, rgba(240,211,157,.12), transparent 64%) !important;
  opacity:.45 !important;
  filter:blur(28px) !important;
}
body.detail-page .details-main::before,
body.detail-page .units::before{
  display:none !important;
}
body.detail-page .page-hero{
  padding:14px 6px 10px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  backdrop-filter:none !important;
  box-shadow:none !important;
  margin-bottom:20px !important;
}
body.detail-page .page-hero::after{
  inset:auto 0 -6px 0 !important;
  height:1px !important;
  background:linear-gradient(90deg,transparent,rgba(240,211,157,.45),transparent) !important;
  opacity:.65 !important;
}
body.detail-page .page-hero h1{
  text-shadow:0 18px 55px rgba(211,162,92,.18);
}
body.detail-page .page-hero .eyebrow{
  background:rgba(240,211,157,.08);
  border:1px solid rgba(240,211,157,.16);
  padding:5px 12px;
  border-radius:999px;
}
body.detail-page .detail-slider-wrap{
  border-color:rgba(240,211,157,.18) !important;
  box-shadow:0 36px 100px rgba(0,0,0,.42),0 0 55px rgba(211,162,92,.075) !important;
}
body.detail-page .detail-slider-wrap::before{
  opacity:.28 !important;
}
body.detail-page .detail-inventory-panel,
body.detail-page .detail-floor-head,
body.detail-page .detail-unit-ticket{
  background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025)) !important;
}
@media(max-width:860px){
  body.detail-page .page-hero{padding:12px 2px 8px !important;}
}

/* ===== V41: clean details floor header - remove unnecessary translucent white card ===== */
body.detail-page .detail-floor-units{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:10px 0 0 !important;
  border-radius:0 !important;
}
body.detail-page .detail-floor-head,
body.detail-page .detail-floor-head.is-fully-reserved{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 2px 14px !important;
  margin:0 0 16px !important;
  border-bottom:1px solid rgba(240,211,157,.12) !important;
}
body.detail-page .detail-floor-head::before,
body.detail-page .detail-floor-head::after{
  display:none !important;
}

/* ===== V42: refined details pages spacing and curved dark-glass cards ===== */
body.detail-page .detail-inventory-panel{
  gap:22px !important;
}
body.detail-page .detail-inventory-summary{
  gap:16px !important;
}
body.detail-page .detail-inventory-summary article{
  min-height:132px !important;
  padding:24px 26px !important;
  border-radius:34px !important;
  border-color:rgba(240,211,157,.18) !important;
  background:
    radial-gradient(circle at 88% 8%,rgba(240,211,157,.14),transparent 34%),
    linear-gradient(145deg,rgba(28,24,18,.94),rgba(10,9,7,.88)) !important;
  box-shadow:0 28px 80px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.08) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}
body.detail-page .detail-inventory-summary span{
  margin-bottom:12px !important;
  color:rgba(255,250,242,.58) !important;
}
body.detail-page .detail-inventory-summary strong{
  line-height:1.18 !important;
  color:#fffaf2 !important;
}
body.detail-page .detail-inventory-summary em{
  margin-top:10px !important;
}
body.detail-page .detail-sort-controls{
  margin:20px 0 18px !important;
  padding:22px 24px !important;
  border-radius:34px !important;
  border-color:rgba(240,211,157,.18) !important;
  background:
    radial-gradient(circle at 92% 0%,rgba(240,211,157,.12),transparent 36%),
    linear-gradient(145deg,rgba(28,24,18,.92),rgba(9,8,7,.88)) !important;
  box-shadow:0 28px 85px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
body.detail-page .detail-sort-controls select{
  min-height:50px !important;
  min-width:310px !important;
  border-radius:999px !important;
  padding:0 18px !important;
  background:rgba(0,0,0,.42) !important;
  border-color:rgba(240,211,157,.20) !important;
}
body.detail-page .detail-floor-tabs{
  padding:8px 2px 18px !important;
  gap:10px !important;
}
body.detail-page .detail-floor-tabs button{
  min-height:46px !important;
  padding:10px 20px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.045) !important;
  border-color:rgba(240,211,157,.14) !important;
}
body.detail-page .detail-floor-tabs button.active{
  background:linear-gradient(135deg,var(--gold),var(--gold-2)) !important;
}
body.detail-page .detail-floor-head,
body.detail-page .detail-floor-head.is-fully-reserved{
  padding:0 0 18px !important;
  margin:4px 0 20px !important;
  border-bottom:1px solid rgba(240,211,157,.16) !important;
}
body.detail-page .detail-floor-head h3{
  font-size:clamp(24px,2.4vw,34px) !important;
  line-height:1.2 !important;
}
body.detail-page .detail-unit-ticket-grid{
  gap:18px !important;
}
body.detail-page .detail-unit-ticket{
  min-height:268px !important;
  padding:22px 22px 20px !important;
  border-radius:34px !important;
  border-color:rgba(240,211,157,.16) !important;
  background:
    radial-gradient(circle at 87% 0%,rgba(240,211,157,.11),transparent 36%),
    linear-gradient(150deg,rgba(27,24,19,.96),rgba(10,9,8,.94)) !important;
  box-shadow:0 24px 75px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.075) !important;
}
body.detail-page .detail-unit-ticket:hover{
  transform:translateY(-5px) !important;
  border-color:rgba(240,211,157,.40) !important;
  box-shadow:0 34px 95px rgba(0,0,0,.34),0 0 42px rgba(211,162,92,.08), inset 0 1px 0 rgba(255,255,255,.09) !important;
}
body.detail-page .detail-ticket-top{
  align-items:center !important;
  padding-bottom:14px !important;
  border-bottom:1px solid rgba(255,255,255,.075) !important;
}
body.detail-page .detail-ticket-top strong{
  font-size:22px !important;
  letter-spacing:.01em !important;
}
body.detail-page .ticket-status{
  padding:6px 11px !important;
  border-radius:999px !important;
  font-size:10.5px !important;
}
body.detail-page .detail-ticket-meta{
  gap:0 !important;
  margin-top:4px !important;
}
body.detail-page .detail-ticket-meta-clean .detail-ticket-model{
  padding:12px 0 !important;
  border-top:0 !important;
  border-bottom:1px solid rgba(255,255,255,.07) !important;
  line-height:1.7 !important;
}
body.detail-page .detail-ticket-info-line{
  width:100% !important;
  padding:13px 0 0 !important;
  border-top:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  direction:rtl !important;
  text-align:right !important;
  line-height:1.9 !important;
}
body.detail-page .detail-ticket-info-line span{
  color:rgba(255,250,242,.78) !important;
  white-space:nowrap !important;
}
body.detail-page .detail-ticket-info-line i{
  color:rgba(240,211,157,.95) !important;
  margin:0 1px !important;
}
body.detail-page .detail-unit-reserve{
  margin-top:auto !important;
  min-height:48px !important;
  border-radius:999px !important;
}
body.detail-page .btn-disabled.detail-unit-reserve{
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.10) !important;
}
body.detail-page .detail-unit-ticket.sold{
  background:
    radial-gradient(circle at 88% 0%,rgba(255,255,255,.10),transparent 34%),
    linear-gradient(150deg,rgba(72,72,72,.26),rgba(12,12,12,.92)) !important;
  border-color:rgba(210,210,210,.22) !important;
}
body.detail-page .detail-unit-ticket.reserved{
  background:
    radial-gradient(circle at 88% 0%,rgba(240,211,157,.08),transparent 34%),
    linear-gradient(150deg,rgba(28,24,19,.88),rgba(10,9,8,.92)) !important;
}
@media(max-width:980px){
  body.detail-page .detail-inventory-summary{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  body.detail-page .detail-sort-controls{align-items:stretch !important;flex-direction:column !important;}
  body.detail-page .detail-sort-controls select{min-width:0 !important;width:100% !important;}
}
@media(max-width:640px){
  body.detail-page .detail-inventory-summary{grid-template-columns:1fr !important;}
  body.detail-page .detail-unit-ticket{border-radius:28px !important;padding:20px !important;}
}

/* ===== V43: final clean details layout - remove parent glass panel and refine cards ===== */
body.detail-page .units{
  width:min(1180px,calc(100% - 56px)) !important;
  margin:34px auto 0 !important;
}
body.detail-page .units-grid{
  display:block !important;
}
body.detail-page .detail-inventory-panel{
  width:100% !important;
  display:grid !important;
  gap:28px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  overflow:visible !important;
}
body.detail-page .detail-inventory-panel::before,
body.detail-page .detail-inventory-panel::after{
  display:none !important;
  content:none !important;
}
body.detail-page .detail-inventory-summary{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
}
body.detail-page .detail-inventory-summary article{
  position:relative !important;
  min-height:168px !important;
  padding:30px 32px 26px !important;
  border-radius:42px !important;
  overflow:hidden !important;
  border:1px solid rgba(240,211,157,.18) !important;
  background:
    radial-gradient(circle at 18% 6%,rgba(240,211,157,.12),transparent 36%),
    linear-gradient(150deg,rgba(23,21,17,.96),rgba(8,7,6,.97) 72%) !important;
  box-shadow:0 26px 78px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.055) !important;
}
body.detail-page .detail-inventory-summary article::before{
  content:'';
  position:absolute;
  inset:auto 28px 24px 28px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(240,211,157,.24),transparent);
  pointer-events:none;
}
body.detail-page .detail-inventory-summary article::after{
  content:'';
  position:absolute;
  top:-35%;
  left:-32%;
  width:46%;
  height:175%;
  transform:rotate(-16deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.07),transparent);
  pointer-events:none;
}
body.detail-page .detail-inventory-summary span{
  margin:0 0 18px !important;
  color:rgba(255,250,242,.62) !important;
  font-size:12.5px !important;
  font-weight:900 !important;
  line-height:1.5 !important;
}
body.detail-page .detail-inventory-summary strong{
  color:#fff8ee !important;
  font-size:clamp(40px,4.2vw,66px) !important;
  line-height:1.02 !important;
  letter-spacing:-.025em !important;
  text-shadow:0 22px 58px rgba(211,162,92,.12) !important;
}
body.detail-page .detail-inventory-summary article:nth-child(4) strong{
  font-size:clamp(27px,3vw,45px) !important;
  line-height:1.34 !important;
  white-space:normal !important;
  word-break:keep-all !important;
  direction:rtl !important;
  text-align:right !important;
}
body.detail-page .detail-inventory-summary em{
  margin-top:12px !important;
  color:#f2d293 !important;
  font-size:12px !important;
}
body.detail-page .detail-sort-controls{
  margin:4px 0 2px !important;
  padding:24px 30px !important;
  border-radius:38px !important;
  border:1px solid rgba(240,211,157,.18) !important;
  background:
    radial-gradient(circle at 87% 0%,rgba(240,211,157,.11),transparent 34%),
    linear-gradient(150deg,rgba(21,19,16,.94),rgba(8,7,6,.96)) !important;
  box-shadow:0 24px 72px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.055) !important;
}
body.detail-page .detail-sort-controls span{
  color:rgba(255,250,242,.56) !important;
  font-size:12px !important;
  line-height:1.5 !important;
}
body.detail-page .detail-sort-controls strong{
  color:#fff8ee !important;
  font-size:18px !important;
  line-height:1.55 !important;
}
body.detail-page .detail-sort-controls select{
  min-width:300px !important;
  min-height:58px !important;
  padding:0 22px !important;
  border-radius:999px !important;
  background:rgba(0,0,0,.44) !important;
  border:1px solid rgba(240,211,157,.18) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05) !important;
}
body.detail-page .detail-floor-tabs{
  justify-content:flex-start !important;
  gap:12px !important;
  padding:8px 0 0 !important;
}
body.detail-page .detail-floor-tabs button{
  min-width:94px !important;
  min-height:50px !important;
  padding:10px 20px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(240,211,157,.16) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
}
body.detail-page .detail-floor-tabs button.active{
  color:#201306 !important;
  background:linear-gradient(135deg,#d9a85f,#f3d598) !important;
  box-shadow:0 18px 42px rgba(211,162,92,.18) !important;
}
body.detail-page .detail-floor-units{
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}
body.detail-page .detail-floor-head,
body.detail-page .detail-floor-head.is-fully-reserved{
  padding:28px 4px 18px !important;
  margin:0 0 20px !important;
  border:0 !important;
  border-bottom:1px solid rgba(240,211,157,.16) !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
body.detail-page .detail-floor-head h3{
  margin-top:6px !important;
  color:#fff8ee !important;
  font-size:clamp(26px,2.5vw,38px) !important;
}
body.detail-page .detail-floor-head p{
  color:rgba(255,250,242,.66) !important;
  font-weight:800 !important;
}
body.detail-page .detail-unit-ticket-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:20px !important;
}
body.detail-page .detail-unit-ticket{
  min-height:280px !important;
  padding:28px 28px 24px !important;
  border-radius:38px !important;
  border:1px solid rgba(240,211,157,.15) !important;
  background:
    radial-gradient(circle at 86% 0%,rgba(240,211,157,.10),transparent 35%),
    linear-gradient(150deg,rgba(22,20,17,.96),rgba(8,7,6,.98)) !important;
  box-shadow:0 26px 82px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.055) !important;
}
body.detail-page .detail-unit-ticket:hover{
  transform:translateY(-6px) !important;
  border-color:rgba(240,211,157,.38) !important;
  box-shadow:0 36px 105px rgba(0,0,0,.36),0 0 46px rgba(211,162,92,.08), inset 0 1px 0 rgba(255,255,255,.07) !important;
}
body.detail-page .detail-ticket-top{
  padding-bottom:16px !important;
  border-bottom:1px solid rgba(255,255,255,.075) !important;
}
body.detail-page .detail-ticket-top strong{
  font-size:24px !important;
  color:#fff8ee !important;
}
body.detail-page .ticket-status{
  background:rgba(82,211,151,.12) !important;
  border:1px solid rgba(82,211,151,.24) !important;
  color:#a7f3ca !important;
  padding:7px 12px !important;
  border-radius:999px !important;
}
body.detail-page .detail-unit-ticket.reserved .ticket-status{
  background:rgba(240,211,157,.11) !important;
  border-color:rgba(240,211,157,.24) !important;
  color:#f3d598 !important;
}
body.detail-page .detail-unit-ticket.sold .ticket-status{
  background:rgba(190,190,190,.10) !important;
  border-color:rgba(210,210,210,.20) !important;
  color:#d6d6d6 !important;
}
body.detail-page .detail-ticket-meta-clean .detail-ticket-model{
  padding:15px 0 !important;
}
body.detail-page .detail-ticket-info-line{
  padding-top:15px !important;
  gap:9px !important;
  color:rgba(255,250,242,.76) !important;
}
body.detail-page .detail-unit-reserve{
  margin-top:auto !important;
}
@media(max-width:980px){
  body.detail-page .detail-inventory-summary{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  body.detail-page .detail-unit-ticket-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  body.detail-page .detail-sort-controls{flex-direction:column !important;align-items:stretch !important;}
  body.detail-page .detail-sort-controls select{min-width:0 !important;width:100% !important;}
}
@media(max-width:640px){
  body.detail-page .units{width:calc(100% - 30px) !important;}
  body.detail-page .detail-inventory-summary,
  body.detail-page .detail-unit-ticket-grid{grid-template-columns:1fr !important;}
  body.detail-page .detail-inventory-summary article{min-height:140px !important;padding:24px !important;border-radius:32px !important;}
  body.detail-page .detail-unit-ticket{border-radius:32px !important;padding:24px !important;}
}

/* ===== V44: Units page ticket spacing + home building card count fix ===== */
.unit-ticket .unit-ticket-info-line{
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:7px !important;
  margin-top:10px !important;
  padding-top:10px !important;
  border-top:1px solid rgba(255,255,255,.08) !important;
  color:rgba(255,250,242,.76) !important;
  font-size:12px !important;
  line-height:1.9 !important;
}
.unit-ticket .unit-ticket-info-line span{
  display:inline-flex !important;
  width:auto !important;
  padding:0 !important;
  border:0 !important;
  color:rgba(255,250,242,.78) !important;
}
.unit-ticket .unit-ticket-info-line i{
  color:var(--gold-2) !important;
  font-style:normal !important;
  font-weight:900 !important;
  opacity:.92 !important;
}

.building-card .tower-mark{
  right:auto !important;
  left:22px !important;
  bottom:132px !important;
  opacity:.34 !important;
  z-index:1 !important;
  transform:translateZ(16px) scale(.82) !important;
  filter:blur(.05px) saturate(.9) !important;
}
.building-card .building-content{
  z-index:4 !important;
  max-width:62% !important;
  padding-inline-start:0 !important;
}
.building-card .building-unit-count{
  position:relative !important;
  z-index:5 !important;
  margin-top:12px !important;
  padding:7px 15px !important;
  min-width:96px !important;
  justify-content:center !important;
  background:linear-gradient(135deg,rgba(211,162,92,.18),rgba(255,255,255,.055)) !important;
  border:1px solid rgba(240,211,157,.38) !important;
  box-shadow:0 12px 30px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.12) !important;
  backdrop-filter:blur(12px) !important;
}
@media(max-width:1100px){
  .building-card .tower-mark{left:16px !important;bottom:122px !important;transform:translateZ(12px) scale(.70) !important;opacity:.28 !important;}
  .building-card .building-content{max-width:70% !important;}
}
@media(max-width:860px){
  .building-card .tower-mark{display:none !important;}
  .building-card .building-content{max-width:100% !important;}
}

/* ===== V46: screen-first availability dashboard layout ===== */
.availability-dashboard-page .site-header{display:none !important;}
.dashboard-home-btn{
  position:fixed;
  top:18px;
  left:18px;
  z-index:80;
  width:52px;
  height:52px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0;
  color:var(--gold-2);
  text-decoration:none;
  border:1px solid rgba(240,211,157,.28);
  background:linear-gradient(135deg,rgba(18,14,10,.84),rgba(8,7,6,.68));
  box-shadow:0 18px 48px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  transition:transform .22s var(--ease),border-color .22s ease,box-shadow .22s ease;
}
.dashboard-home-btn svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
.dashboard-home-btn span{
  position:absolute;
  left:58px;
  top:50%;
  transform:translateY(-50%) translateX(-8px);
  opacity:0;
  pointer-events:none;
  white-space:nowrap;
  font-size:11px;
  font-weight:900;
  color:#160e04;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  border-radius:999px;
  padding:7px 10px;
  box-shadow:0 10px 26px rgba(211,162,92,.20);
  transition:.22s var(--ease);
}
.dashboard-home-btn:hover{transform:translateY(-2px);border-color:rgba(240,211,157,.48);box-shadow:0 24px 58px rgba(0,0,0,.42),0 0 38px rgba(211,162,92,.14);}
.dashboard-home-btn:hover span{opacity:1;transform:translateY(-50%) translateX(0);}
.availability-dashboard-page{
  background:#070604 !important;
}
.availability-main{
  padding:14px 12px 28px !important;
  min-height:100svh !important;
  background:
    radial-gradient(circle at 52% -10%,rgba(240,211,157,.18),transparent 30%),
    radial-gradient(circle at 8% 42%,rgba(211,162,92,.08),transparent 24%),
    radial-gradient(circle at 94% 52%,rgba(240,211,157,.07),transparent 26%),
    linear-gradient(180deg,#0a0805 0%,#050504 58%,#080604 100%) !important;
}
.availability-main::before{
  opacity:.16 !important;
  background:
    linear-gradient(90deg,rgba(240,211,157,.08) 1px,transparent 1px),
    linear-gradient(rgba(240,211,157,.06) 1px,transparent 1px) !important;
  background-size:120px 120px !important;
}
.availability-board{
  width:min(1840px,100%) !important;
  padding:12px 14px 16px !important;
  border-radius:26px !important;
  background:
    linear-gradient(180deg,rgba(14,12,9,.82),rgba(5,5,4,.94)),
    radial-gradient(circle at 50% 0%,rgba(240,211,157,.13),transparent 24%) !important;
  border-color:rgba(240,211,157,.22) !important;
}
.availability-board::before{
  background:
    radial-gradient(ellipse at 50% 2%,rgba(240,211,157,.12),transparent 25%),
    linear-gradient(115deg,transparent 0 23%,rgba(240,211,157,.10) 23.06%,transparent 23.28% 100%),
    linear-gradient(245deg,transparent 0 19%,rgba(240,211,157,.07) 19.08%,transparent 19.24% 100%) !important;
  opacity:.52 !important;
}
.availability-topbar{
  grid-template-columns:150px minmax(0,1fr) 170px !important;
  gap:10px !important;
  margin-bottom:8px !important;
}
.live-clock-card{
  min-height:72px !important;
  padding:10px 12px !important;
  border-radius:18px !important;
}
.clock-row strong{font-size:20px !important;}
.clock-icon{font-size:18px !important;}
.date-row span{font-size:14px !important;}
.date-row b{font-size:11px !important;}
.date-row small{font-size:10px !important;}
.dashboard-kicker{font-size:10.5px !important;margin-bottom:1px !important;}
.availability-title-wrap h1{
  font-size:clamp(30px,3.25vw,56px) !important;
  line-height:1.03 !important;
}
.availability-title-wrap p{
  margin-top:6px !important;
  font-size:11.5px !important;
  line-height:1.55 !important;
}
.availability-live-chip{
  margin-top:7px !important;
  padding:5px 10px !important;
  font-size:10px !important;
  gap:7px !important;
}
.availability-live-chip span{width:7px !important;height:7px !important;}
.dashboard-brand-card img{
  width:135px !important;
  max-height:54px !important;
}
.availability-summary{
  grid-template-columns:1.15fr .95fr .95fr .95fr 1fr !important;
  gap:8px !important;
  margin-bottom:8px !important;
}
.availability-stat,.availability-legend{
  min-height:72px !important;
  border-radius:16px !important;
  padding:10px 12px !important;
  gap:10px !important;
}
.stat-icon{width:44px !important;height:44px !important;font-size:24px !important;}
.stat-icon svg{width:36px !important;height:36px !important;}
.availability-stat span{font-size:10.8px !important;}
.availability-stat strong{font-size:clamp(24px,2.2vw,40px) !important;}
.availability-legend{gap:6px !important;}
.availability-legend strong{font-size:11.5px !important;}
.availability-legend div{font-size:11px !important;gap:7px !important;}
.legend-dot{width:13px !important;height:13px !important;}
.availability-content{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
  align-items:start !important;
}
.availability-tower{
  padding:8px !important;
  border-radius:18px !important;
}
.availability-tower:hover{transform:translateY(-2px) !important;}
.availability-tower-head{
  padding:2px 2px 7px !important;
  gap:7px !important;
}
.tower-head-title{gap:7px !important;}
.tower-head-title svg{width:26px !important;height:26px !important;stroke-width:3.2 !important;}
.tower-head-title h2{font-size:clamp(18px,1.45vw,26px) !important;}
.tower-head-title span{font-size:10px !important;margin-top:1px !important;}
.tower-full-badge,.tower-available-badge{
  min-height:26px !important;
  padding:5px 8px !important;
  font-size:9px !important;
}
.tower-grid-wrap{gap:4px !important;margin-top:7px !important;}
.dashboard-floor{
  grid-template-columns:28px minmax(0,1fr) !important;
  gap:4px !important;
}
.floor-number{
  min-height:30px !important;
  border-radius:9px !important;
  font-size:14px !important;
}
.floor-units{
  min-height:30px !important;
  gap:3px !important;
}
.dashboard-unit{
  min-height:30px !important;
  border-radius:8px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 6px 14px rgba(0,0,0,.18) !important;
}
.dashboard-unit:hover{transform:none !important;}
.dashboard-unit b{
  font-size:8.7px !important;
  letter-spacing:-.01em !important;
}
.dashboard-unit small{
  display:none !important;
}
.floor-full .floor-units{padding-top:17px !important;}
.floor-full-ribbon{
  height:16px !important;
  border-radius:7px !important;
  font-size:8px !important;
}
.floor-full-ribbon::before{font-size:6px !important;}
.tower-foot-stats{
  margin-top:7px !important;
  gap:6px !important;
}
.tower-foot-stats span{
  min-height:29px !important;
  border-radius:10px !important;
  font-size:9.8px !important;
}
.tower-foot-stats b{font-size:13px !important;}
.availability-bottom-grid{
  margin-top:12px !important;
  padding-top:10px !important;
  border-top:1px solid rgba(240,211,157,.13);
}
@media(max-width:1320px){
  .availability-content{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  .availability-tower{width:auto !important;}
  .dashboard-unit b{font-size:7.9px !important;}
  .availability-bottom-grid{grid-template-columns:1fr !important;}
}
@media(max-width:980px){
  .availability-main{padding:10px 8px 22px !important;}
  .dashboard-home-btn{top:10px;left:10px;width:46px;height:46px;border-radius:15px;}
  .availability-topbar{grid-template-columns:1fr !important;}
  .live-clock-card,.dashboard-brand-card{display:none !important;}
  .availability-summary{grid-template-columns:repeat(2,1fr) !important;}
  .availability-legend{grid-column:1/-1 !important;}
  .availability-title-wrap h1{font-size:32px !important;}
  .availability-content{grid-template-columns:1fr !important;}
  .dashboard-unit small{display:block !important;}
  .dashboard-unit{min-height:38px !important;}
  .dashboard-floor{grid-template-columns:34px minmax(0,1fr) !important;}
}

/* V47 availability dashboard refinement */
.availability-dashboard-page .availability-summary,
.availability-dashboard-page .availability-bottom-grid,
.availability-dashboard-page .recent-bookings-panel,
.availability-dashboard-page .bottom-total-panel,
.availability-dashboard-page .tower-foot-stats{
  display:none !important;
}
.availability-dashboard-page .availability-board{
  min-height:calc(100svh - 28px) !important;
  display:flex !important;
  flex-direction:column !important;
}
.availability-dashboard-page .availability-content{
  flex:1 1 auto !important;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
  align-items:stretch !important;
  margin-top:8px !important;
}
.availability-dashboard-page .availability-tower{
  display:flex !important;
  flex-direction:column !important;
  min-height:0 !important;
  padding:9px !important;
  border-radius:22px !important;
}
.availability-dashboard-page .availability-tower-head.compact-tower-head{
  min-height:54px !important;
  padding:2px 2px 8px !important;
}
.availability-dashboard-page .tower-grid-wrap{
  flex:1 1 auto !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
  gap:4px !important;
}
.availability-dashboard-page .dashboard-floor{
  grid-template-columns:56px minmax(0,1fr) !important;
  gap:4px !important;
}
.availability-dashboard-page .floor-number{
  min-height:27px !important;
  padding:3px 4px !important;
  border-radius:9px !important;
  font-size:9.2px !important;
  line-height:1.05 !important;
  white-space:nowrap !important;
  display:grid !important;
  place-items:center !important;
}
.availability-dashboard-page .floor-units{
  min-height:27px !important;
  gap:3px !important;
}
.availability-dashboard-page .dashboard-unit{
  min-height:27px !important;
  padding:3px 2px !important;
  border-radius:8px !important;
}
.availability-dashboard-page .dashboard-unit b{
  font-size:8.1px !important;
  line-height:1 !important;
}
.availability-dashboard-page .dashboard-unit small{display:none !important;}
.availability-dashboard-page .floor-full .floor-units{padding-top:15px !important;}
.availability-dashboard-page .floor-full-ribbon{
  height:14px !important;
  font-size:7px !important;
  border-radius:7px !important;
}
.availability-dashboard-page .tower-full-badge{
  min-height:24px !important;
  font-size:8.5px !important;
}
.availability-dashboard-page .availability-title-wrap p{max-width:780px;margin-inline:auto !important;}
@media (max-width:1280px){
  .availability-dashboard-page .dashboard-floor{grid-template-columns:48px minmax(0,1fr) !important;}
  .availability-dashboard-page .floor-number{font-size:8.4px !important;}
  .availability-dashboard-page .dashboard-unit b{font-size:7.1px !important;}
}

/* ===== V48: frontage split dashboard + 7-floor presentation fit ===== */
.availability-dashboard-page .availability-topbar{
  grid-template-columns:128px minmax(0,1fr) 148px !important;
  margin-bottom:6px !important;
}
.availability-dashboard-page .availability-title-wrap h1{
  font-size:clamp(28px,3vw,48px) !important;
}
.availability-dashboard-page .availability-title-wrap p{
  font-size:10.8px !important;
  margin-top:4px !important;
}
.availability-dashboard-page .availability-live-chip{
  margin-top:5px !important;
  padding:4px 9px !important;
}
.availability-dashboard-page .dashboard-brand-card img{
  width:122px !important;
  max-height:46px !important;
}
.availability-dashboard-page .live-clock-card{
  min-height:62px !important;
  padding:8px 10px !important;
}
.availability-dashboard-page .clock-row strong{font-size:18px !important;}
.availability-dashboard-page .date-row{margin-top:6px !important;}
.availability-dashboard-page .availability-content{
  gap:9px !important;
  margin-top:5px !important;
}
.availability-dashboard-page .availability-tower{
  padding:8px !important;
  border-radius:20px !important;
}
.availability-dashboard-page .availability-tower-head.compact-tower-head{
  min-height:42px !important;
  padding:1px 2px 6px !important;
}
.availability-dashboard-page .tower-head-title svg{
  width:22px !important;
  height:22px !important;
}
.availability-dashboard-page .tower-head-title h2{
  font-size:clamp(17px,1.35vw,23px) !important;
}
.availability-dashboard-page .tower-grid-wrap{
  gap:3px !important;
}
.availability-dashboard-page .dashboard-floor{
  grid-template-columns:54px minmax(0,1fr) !important;
  gap:4px !important;
  align-items:stretch !important;
}
.availability-dashboard-page .floor-number{
  min-height:46px !important;
  padding:2px 3px !important;
  font-size:8.4px !important;
  border-radius:9px !important;
  text-align:center !important;
}
.availability-dashboard-page .floor-units.split-floor-units{
  min-height:46px !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  grid-template-rows:repeat(2,minmax(0,1fr)) !important;
  gap:3px !important;
  padding:0 !important;
}
.availability-dashboard-page .floor-unit-group{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  align-items:center;
  gap:3px;
  min-height:21px;
  border:1px solid rgba(240,211,157,.08);
  border-radius:8px;
  background:rgba(255,255,255,.025);
  overflow:hidden;
}
.availability-dashboard-page .floor-unit-group.frontage{
  background:linear-gradient(90deg,rgba(240,211,157,.055),rgba(255,255,255,.018));
}
.availability-dashboard-page .floor-group-label{
  height:100%;
  min-height:21px;
  display:grid;
  place-items:center;
  border-left:1px solid rgba(240,211,157,.10);
  color:rgba(240,211,157,.92);
  font-size:7.2px;
  font-weight:900;
  white-space:nowrap;
}
.availability-dashboard-page .floor-group-units{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:3px;
  padding:2px;
  min-width:0;
}
.availability-dashboard-page .dashboard-unit{
  min-height:18px !important;
  padding:2px 1px !important;
  border-radius:6px !important;
}
.availability-dashboard-page .dashboard-unit b{
  font-size:7px !important;
  line-height:1 !important;
  direction:ltr !important;
  unicode-bidi:embed !important;
}
.availability-dashboard-page .dashboard-unit small{display:none !important;}
.availability-dashboard-page .no-units-label{
  min-height:18px;
  display:grid;
  place-items:center;
  color:rgba(255,250,242,.25);
  font-style:normal;
  font-size:7px;
  font-weight:800;
}
.availability-dashboard-page .floor-full .floor-units{padding-top:13px !important;}
.availability-dashboard-page .floor-full-ribbon{
  height:12px !important;
  font-size:6.8px !important;
  border-radius:7px !important;
  top:0 !important;
  z-index:6 !important;
}
.availability-dashboard-page .tower-full-badge{
  min-height:20px !important;
  padding:3px 7px !important;
  font-size:7.4px !important;
}
@media(max-width:1320px){
  .availability-dashboard-page .floor-group-label{font-size:6.5px;}
  .availability-dashboard-page .dashboard-unit b{font-size:6.4px !important;}
  .availability-dashboard-page .floor-group-units{gap:2px;}
}
@media(max-width:980px){
  .availability-dashboard-page .floor-units.split-floor-units{grid-template-rows:auto !important;}
  .availability-dashboard-page .floor-unit-group{grid-template-columns:58px minmax(0,1fr);}
  .availability-dashboard-page .floor-group-units{grid-template-columns:repeat(3,minmax(0,1fr));}
  .availability-dashboard-page .dashboard-unit{min-height:28px !important;}
  .availability-dashboard-page .dashboard-unit b{font-size:10px !important;}
}

/* Firebase units sync progress */
.seed-progress {
  margin-top: 16px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 12px;
  align-items: center;
  direction: ltr;
}
.seed-progress-track {
  width: 100%;
  height: 10px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(210,174,109,.22);
}
.seed-progress-track span {
  display: block;
  width: 0%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #8d6a2f, #e8c77b, #fff0b9);
  box-shadow: 0 0 18px rgba(232,199,123,.35);
  transition: width .25s ease;
}
.seed-progress strong {
  min-width: 52px;
  text-align: end;
  color: #e8c77b;
  font-size: .88rem;
}

/* ===== V50: clearer availability unit labels + consistent frontage split ===== */
.availability-dashboard-page .floor-unit-group{
  grid-template-columns:40px minmax(0,1fr) !important;
}
.availability-dashboard-page .floor-group-label{
  font-size:8.4px !important;
  letter-spacing:0 !important;
}
.availability-dashboard-page .floor-group-units{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:3px !important;
  padding:2px !important;
}
.availability-dashboard-page .dashboard-unit{
  min-height:21px !important;
  padding:2px 2px !important;
  border-radius:7px !important;
}
.availability-dashboard-page .dashboard-unit b{
  font-size:10px !important;
  line-height:1.05 !important;
  letter-spacing:.015em !important;
  transform:translateY(.5px);
}
.availability-dashboard-page .no-units-label{
  min-height:21px !important;
  font-size:8px !important;
}
@media(max-width:1320px){
  .availability-dashboard-page .floor-unit-group{grid-template-columns:38px minmax(0,1fr) !important;}
  .availability-dashboard-page .floor-group-label{font-size:7.5px !important;}
  .availability-dashboard-page .dashboard-unit b{font-size:8.8px !important;}
}
@media(max-width:980px){
  .availability-dashboard-page .dashboard-unit b{font-size:10px !important;}
  .availability-dashboard-page .floor-group-label{font-size:8px !important;}
}


/* ===== V51: larger screen-friendly availability tables ===== */
.availability-dashboard-page .availability-main{
  padding:18px 16px 22px !important;
}
.availability-dashboard-page .availability-board{
  width:min(1920px,100%) !important;
  min-height:calc(100svh - 40px) !important;
  padding:16px 16px 18px !important;
  border-radius:30px !important;
}
.availability-dashboard-page .availability-topbar{
  grid-template-columns:112px minmax(0,1fr) 126px !important;
  gap:10px !important;
  margin-bottom:8px !important;
}
.availability-dashboard-page .live-clock-card{
  min-width:0 !important;
  min-height:54px !important;
  padding:7px 9px !important;
  border-radius:16px !important;
}
.availability-dashboard-page .clock-row strong{font-size:16px !important;}
.availability-dashboard-page .clock-icon,
.availability-dashboard-page .date-row>span{font-size:15px !important;}
.availability-dashboard-page .date-row p{font-size:9px !important;}
.availability-dashboard-page .date-row small{font-size:8px !important;}
.availability-dashboard-page .dashboard-brand-card img{
  width:108px !important;
  max-height:42px !important;
}
.availability-dashboard-page .availability-title-wrap h1{
  font-size:clamp(30px,2.8vw,46px) !important;
  line-height:1.05 !important;
}
.availability-dashboard-page .availability-title-wrap p{
  display:none !important;
}
.availability-dashboard-page .availability-live-chip{
  margin-top:6px !important;
  padding:4px 10px !important;
  font-size:10px !important;
}
.availability-dashboard-page .availability-content{
  gap:14px !important;
  margin-top:10px !important;
  align-items:stretch !important;
}
.availability-dashboard-page .availability-tower{
  padding:11px !important;
  border-radius:24px !important;
}
.availability-dashboard-page .availability-tower-head.compact-tower-head{
  min-height:48px !important;
  padding:2px 4px 9px !important;
}
.availability-dashboard-page .tower-head-title svg{
  width:26px !important;
  height:26px !important;
}
.availability-dashboard-page .tower-head-title h2{
  font-size:clamp(20px,1.45vw,28px) !important;
}
.availability-dashboard-page .tower-grid-wrap{
  gap:7px !important;
}
.availability-dashboard-page .dashboard-floor{
  grid-template-columns:74px minmax(0,1fr) !important;
  gap:7px !important;
}
.availability-dashboard-page .floor-number{
  min-height:clamp(58px,8.4vh,86px) !important;
  padding:6px 4px !important;
  border-radius:14px !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1.15 !important;
}
.availability-dashboard-page .floor-units.split-floor-units{
  min-height:clamp(58px,8.4vh,86px) !important;
  gap:6px !important;
  grid-template-rows:repeat(2,minmax(0,1fr)) !important;
}
.availability-dashboard-page .floor-unit-group{
  grid-template-columns:56px minmax(0,1fr) !important;
  min-height:clamp(26px,3.85vh,40px) !important;
  border-radius:12px !important;
  gap:5px !important;
}
.availability-dashboard-page .floor-group-label{
  min-height:100% !important;
  font-size:10.5px !important;
  font-weight:900 !important;
  line-height:1.05 !important;
}
.availability-dashboard-page .floor-group-units{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:5px !important;
  padding:4px !important;
}
.availability-dashboard-page .dashboard-unit{
  min-height:clamp(22px,3.1vh,34px) !important;
  border-radius:10px !important;
  padding:3px 4px !important;
}
.availability-dashboard-page .dashboard-unit b{
  font-size:clamp(11.5px,.82vw,15px) !important;
  line-height:1.05 !important;
  font-weight:950 !important;
  letter-spacing:.02em !important;
}
.availability-dashboard-page .dashboard-unit small{display:none !important;}
.availability-dashboard-page .no-units-label{
  min-height:clamp(22px,3.1vh,34px) !important;
  font-size:9.5px !important;
}
.availability-dashboard-page .floor-full .floor-units{
  padding-top:24px !important;
}
.availability-dashboard-page .floor-full-ribbon{
  height:20px !important;
  font-size:10px !important;
  border-radius:10px !important;
}
@media(max-width:1500px){
  .availability-dashboard-page .availability-board{padding:13px 12px 15px !important;}
  .availability-dashboard-page .availability-content{gap:9px !important;}
  .availability-dashboard-page .availability-tower{padding:8px !important;}
  .availability-dashboard-page .dashboard-floor{grid-template-columns:64px minmax(0,1fr) !important;gap:5px !important;}
  .availability-dashboard-page .floor-number{font-size:10.5px !important;}
  .availability-dashboard-page .floor-unit-group{grid-template-columns:48px minmax(0,1fr) !important;gap:4px !important;}
  .availability-dashboard-page .floor-group-label{font-size:9px !important;}
  .availability-dashboard-page .floor-group-units{gap:3px !important;padding:3px !important;}
  .availability-dashboard-page .dashboard-unit b{font-size:clamp(10.2px,.72vw,12px) !important;}
}
@media(max-width:1180px){
  .availability-dashboard-page .availability-content{grid-template-columns:repeat(3,minmax(300px,1fr)) !important;overflow-x:auto !important;padding-bottom:8px !important;}
  .availability-dashboard-page .availability-tower{min-width:300px !important;}
}


/* ===== V52: sales-status header/readability refinements ===== */
.availability-dashboard-page .dashboard-left-tools{
  position:fixed !important;
  top:18px !important;
  left:18px !important;
  z-index:90 !important;
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  direction:ltr !important;
}
.availability-dashboard-page .dashboard-left-tools .dashboard-home-btn{
  position:relative !important;
  top:auto !important;
  left:auto !important;
  width:54px !important;
  height:54px !important;
  flex:0 0 54px !important;
}
.availability-dashboard-page .dashboard-side-logo{
  width:158px !important;
  max-height:62px !important;
  object-fit:contain !important;
  display:block !important;
  filter:drop-shadow(0 12px 28px rgba(0,0,0,.45)) !important;
}
.availability-dashboard-page .dashboard-brand-card{
  display:none !important;
}
.availability-dashboard-page .availability-topbar{
  grid-template-columns:210px minmax(0,1fr) 210px !important;
  align-items:center !important;
}
.availability-dashboard-page .live-clock-card{
  min-width:205px !important;
  width:205px !important;
  justify-self:start !important;
}
.availability-dashboard-page .clock-row{
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
  justify-content:flex-start !important;
  gap:8px !important;
}
.availability-dashboard-page .clock-row strong{
  white-space:nowrap !important;
  display:inline-flex !important;
  align-items:center !important;
  direction:ltr !important;
  unicode-bidi:plaintext !important;
  letter-spacing:.01em !important;
  font-size:19px !important;
}
.availability-dashboard-page .date-row{
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
  gap:8px !important;
}
.availability-dashboard-page .date-row p,
.availability-dashboard-page .date-row b,
.availability-dashboard-page .date-row small{
  white-space:nowrap !important;
}
.availability-dashboard-page .availability-tower-head,
.availability-dashboard-page .availability-tower-head.compact-tower-head{
  justify-content:center !important;
  text-align:center !important;
}
.availability-dashboard-page .tower-head-title{
  justify-content:center !important;
  text-align:center !important;
  width:100% !important;
  gap:8px !important;
}
.availability-dashboard-page .tower-head-title > div{
  text-align:center !important;
}
.availability-dashboard-page .tower-head-title h2{
  text-align:center !important;
  margin-inline:auto !important;
}
.availability-dashboard-page .tower-full-badge{
  position:absolute !important;
  top:8px !important;
  left:8px !important;
}
@media(max-width:1180px){
  .availability-dashboard-page .dashboard-left-tools{top:10px !important;left:10px !important;gap:8px !important;}
  .availability-dashboard-page .dashboard-side-logo{width:118px !important;max-height:48px !important;}
  .availability-dashboard-page .dashboard-left-tools .dashboard-home-btn{width:46px !important;height:46px !important;flex-basis:46px !important;}
  .availability-dashboard-page .availability-topbar{grid-template-columns:180px minmax(0,1fr) 130px !important;}
  .availability-dashboard-page .live-clock-card{width:178px !important;min-width:178px !important;}
  .availability-dashboard-page .clock-row strong{font-size:17px !important;}
}
@media(max-width:980px){
  .availability-dashboard-page .dashboard-side-logo{display:none !important;}
  .availability-dashboard-page .live-clock-card{display:none !important;}
}

/* ===== V53: dashboard header spacing + responsive screen layout ===== */
.availability-dashboard-page .dashboard-left-tools{
  top:26px !important;
  left:26px !important;
  gap:12px !important;
  padding:10px 12px !important;
  border-radius:20px !important;
  border:1px solid rgba(240,211,157,.24) !important;
  background:linear-gradient(150deg,rgba(15,13,10,.84),rgba(5,5,4,.66)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 48px rgba(0,0,0,.30) !important;
  backdrop-filter:blur(18px) saturate(1.12) !important;
  -webkit-backdrop-filter:blur(18px) saturate(1.12) !important;
}
.availability-dashboard-page .dashboard-left-tools .dashboard-home-btn{
  width:48px !important;
  height:48px !important;
  flex:0 0 48px !important;
  border-radius:16px !important;
  position:relative !important;
  top:auto !important;
  left:auto !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 30px rgba(0,0,0,.28) !important;
}
.availability-dashboard-page .dashboard-left-tools .dashboard-home-btn svg{
  width:22px !important;
  height:22px !important;
}
.availability-dashboard-page .dashboard-side-logo{
  width:178px !important;
  max-height:64px !important;
  margin:0 !important;
}
.availability-dashboard-page .live-clock-card{
  width:224px !important;
  min-width:224px !important;
  min-height:82px !important;
  padding:10px 14px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  text-align:center !important;
}
.availability-dashboard-page .clock-row,
.availability-dashboard-page .date-row{
  width:100% !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center !important;
  gap:8px !important;
}
.availability-dashboard-page .clock-row{
  direction:ltr !important;
}
.availability-dashboard-page .clock-row strong{
  display:inline-block !important;
  white-space:nowrap !important;
  word-break:keep-all !important;
  line-height:1 !important;
  min-width:max-content !important;
  font-size:22px !important;
}
.availability-dashboard-page .date-row{
  direction:rtl !important;
}
.availability-dashboard-page .date-row p{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  margin:0 !important;
  width:auto !important;
  text-align:center !important;
}
.availability-dashboard-page .date-row b,
.availability-dashboard-page .date-row small{
  display:inline !important;
  white-space:nowrap !important;
  line-height:1.15 !important;
  text-align:center !important;
}
.availability-dashboard-page .availability-topbar{
  grid-template-columns:240px minmax(0,1fr) 240px !important;
  padding-inline:4px !important;
}

/* Large display scaling: keep the 3 towers visible and use the screen better */
@media (min-width:1800px){
  .availability-dashboard-page .availability-main{padding:22px 24px 30px !important;}
  .availability-dashboard-page .availability-board{
    width:min(96vw,2300px) !important;
    min-height:calc(100svh - 52px) !important;
    padding:18px 22px 22px !important;
    border-radius:34px !important;
  }
  .availability-dashboard-page .dashboard-left-tools{top:34px !important;left:34px !important;padding:12px 14px !important;}
  .availability-dashboard-page .dashboard-side-logo{width:210px !important;max-height:76px !important;}
  .availability-dashboard-page .dashboard-left-tools .dashboard-home-btn{width:56px !important;height:56px !important;flex-basis:56px !important;}
  .availability-dashboard-page .live-clock-card{width:246px !important;min-width:246px !important;min-height:92px !important;}
  .availability-dashboard-page .clock-row strong{font-size:25px !important;}
  .availability-dashboard-page .date-row b{font-size:13px !important;}
  .availability-dashboard-page .date-row small{font-size:12px !important;}
  .availability-dashboard-page .availability-title-wrap h1{font-size:clamp(44px,3vw,68px) !important;}
  .availability-dashboard-page .availability-content{gap:18px !important;}
  .availability-dashboard-page .availability-tower{padding:14px !important;border-radius:28px !important;}
  .availability-dashboard-page .tower-head-title h2{font-size:clamp(28px,1.5vw,38px) !important;}
  .availability-dashboard-page .floor-number{font-size:13px !important;min-height:clamp(68px,8.6vh,102px) !important;}
  .availability-dashboard-page .floor-units.split-floor-units{min-height:clamp(68px,8.6vh,102px) !important;gap:8px !important;}
  .availability-dashboard-page .floor-unit-group{grid-template-columns:68px minmax(0,1fr) !important;gap:7px !important;border-radius:14px !important;}
  .availability-dashboard-page .floor-group-label{font-size:12px !important;}
  .availability-dashboard-page .floor-group-units{gap:6px !important;padding:5px !important;}
  .availability-dashboard-page .dashboard-unit{min-height:clamp(28px,3.35vh,42px) !important;border-radius:11px !important;}
  .availability-dashboard-page .dashboard-unit b{font-size:clamp(13px,.78vw,17px) !important;}
}

@media (min-width:2400px){
  .availability-dashboard-page .availability-board{width:min(94vw,2800px) !important;}
  .availability-dashboard-page .availability-title-wrap h1{font-size:72px !important;}
  .availability-dashboard-page .availability-content{gap:24px !important;}
  .availability-dashboard-page .availability-tower{padding:18px !important;}
  .availability-dashboard-page .dashboard-unit b{font-size:18px !important;}
  .availability-dashboard-page .floor-group-label{font-size:13px !important;}
  .availability-dashboard-page .floor-number{font-size:14px !important;}
}

@media (max-width:1180px){
  .availability-dashboard-page .dashboard-left-tools{
    top:12px !important;
    left:12px !important;
    padding:8px 9px !important;
    gap:8px !important;
  }
  .availability-dashboard-page .dashboard-side-logo{width:120px !important;max-height:46px !important;}
  .availability-dashboard-page .live-clock-card{width:190px !important;min-width:190px !important;}
  .availability-dashboard-page .clock-row strong{font-size:18px !important;}
}

/* ===== V54: match dashboard logo/home badge with time badge ===== */
.availability-dashboard-page .dashboard-left-tools,
.availability-dashboard-page .live-clock-card{
  border:1px solid rgba(240,211,157,.24) !important;
  background:linear-gradient(150deg,rgba(15,13,10,.84),rgba(5,5,4,.66)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 48px rgba(0,0,0,.30) !important;
  backdrop-filter:blur(18px) saturate(1.12) !important;
  -webkit-backdrop-filter:blur(18px) saturate(1.12) !important;
  border-radius:20px !important;
}
.availability-dashboard-page .dashboard-left-tools{
  top:26px !important;
  left:26px !important;
  min-height:82px !important;
  padding:10px 14px !important;
  gap:14px !important;
  align-items:center !important;
  justify-content:center !important;
}
.availability-dashboard-page .dashboard-left-tools::before,
.availability-dashboard-page .live-clock-card::before{
  content:"";
  position:absolute;
  inset:8px;
  border-radius:16px;
  border:1px solid rgba(240,211,157,.07);
  pointer-events:none;
}
.availability-dashboard-page .dashboard-left-tools .dashboard-home-btn{
  width:48px !important;
  height:48px !important;
  flex:0 0 48px !important;
  border-radius:15px !important;
  border:1px solid rgba(240,211,157,.24) !important;
  background:rgba(0,0,0,.14) !important;
  box-shadow:none !important;
}
.availability-dashboard-page .dashboard-left-tools .dashboard-home-btn:hover{
  transform:translateY(-1px) !important;
  border-color:rgba(240,211,157,.42) !important;
  box-shadow:0 0 24px rgba(211,162,92,.12) !important;
}
.availability-dashboard-page .dashboard-side-logo{
  width:172px !important;
  max-height:58px !important;
  object-fit:contain !important;
  margin:0 !important;
}
.availability-dashboard-page .live-clock-card{
  width:224px !important;
  min-width:224px !important;
  min-height:82px !important;
  padding:10px 14px !important;
  position:relative !important;
  overflow:hidden !important;
}
.availability-dashboard-page .clock-row,
.availability-dashboard-page .date-row{
  justify-content:center !important;
  align-items:center !important;
  width:100% !important;
}
.availability-dashboard-page .clock-row strong{
  font-size:22px !important;
  white-space:nowrap !important;
}
.availability-dashboard-page .date-row p{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  margin:0 !important;
}
@media (min-width:1800px){
  .availability-dashboard-page .dashboard-left-tools{
    top:34px !important;
    left:34px !important;
    min-height:92px !important;
    padding:12px 16px !important;
  }
  .availability-dashboard-page .dashboard-side-logo{width:200px !important;max-height:70px !important;}
  .availability-dashboard-page .dashboard-left-tools .dashboard-home-btn{width:56px !important;height:56px !important;flex-basis:56px !important;}
}
@media(max-width:1180px){
  .availability-dashboard-page .dashboard-left-tools{
    top:12px !important;
    left:12px !important;
    min-height:62px !important;
    padding:8px 10px !important;
    gap:8px !important;
  }
  .availability-dashboard-page .dashboard-side-logo{width:120px !important;max-height:46px !important;}
  .availability-dashboard-page .dashboard-left-tools .dashboard-home-btn{width:42px !important;height:42px !important;flex-basis:42px !important;}
}

/* ===== V56: Final units components display ===== */
.detail-ticket-components,
.unit-ticket-components{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  color:rgba(255,250,242,.78) !important;
  font-size:12px !important;
  font-style:normal !important;
  font-weight:800 !important;
  border-bottom:1px solid rgba(255,255,255,.065) !important;
  padding:12px 0 !important;
  line-height:1.8 !important;
}
.detail-ticket-components b{
  color:rgba(255,250,242,.46) !important;
  font-weight:900 !important;
  white-space:nowrap !important;
}
.unit-ticket-components{
  display:block !important;
  margin-top:8px !important;
  padding:8px 0 0 !important;
  border-bottom:0 !important;
  border-top:1px solid rgba(255,255,255,.07) !important;
  color:rgba(240,211,157,.86) !important;
  font-size:11.5px !important;
  text-align:right !important;
}
.selected-specs span:nth-child(2){
  border-color:rgba(240,211,157,.22) !important;
}


/* ===== V57: availability dashboard without frontage split ===== */
.availability-dashboard-page .floor-units.dashboard-floor-units{
  min-height:clamp(58px,8.4vh,86px) !important;
  display:grid !important;
  grid-template-columns:repeat(var(--unit-cols),minmax(0,1fr)) !important;
  grid-template-rows:1fr !important;
  gap:7px !important;
  padding:0 !important;
  align-items:stretch !important;
}
.availability-dashboard-page .floor-units.dashboard-floor-units .dashboard-unit{
  min-height:clamp(50px,7.4vh,78px) !important;
  border-radius:14px !important;
  padding:6px 4px !important;
}
.availability-dashboard-page .floor-units.dashboard-floor-units .dashboard-unit b{
  font-size:clamp(14px,1vw,18px) !important;
  line-height:1.05 !important;
  letter-spacing:.02em !important;
  font-weight:950 !important;
}
.availability-dashboard-page .floor-units.dashboard-floor-units .dashboard-unit small{
  display:none !important;
}
.availability-dashboard-page .floor-unit-group,
.availability-dashboard-page .floor-group-label,
.availability-dashboard-page .floor-group-units{
  display:none !important;
}
.availability-dashboard-page .floor-full .floor-units.dashboard-floor-units{
  padding-top:24px !important;
}
.availability-dashboard-page .floor-full .floor-units.dashboard-floor-units .dashboard-unit{
  min-height:clamp(34px,5.1vh,56px) !important;
}
@media(max-width:1500px){
  .availability-dashboard-page .floor-units.dashboard-floor-units{
    gap:5px !important;
    min-height:clamp(52px,8vh,76px) !important;
  }
  .availability-dashboard-page .floor-units.dashboard-floor-units .dashboard-unit{
    min-height:clamp(44px,6.8vh,68px) !important;
    border-radius:12px !important;
  }
  .availability-dashboard-page .floor-units.dashboard-floor-units .dashboard-unit b{
    font-size:clamp(12px,.9vw,15px) !important;
  }
}
@media(min-width:1800px){
  .availability-dashboard-page .floor-units.dashboard-floor-units{
    min-height:clamp(68px,8.6vh,102px) !important;
    gap:9px !important;
  }
  .availability-dashboard-page .floor-units.dashboard-floor-units .dashboard-unit{
    min-height:clamp(58px,7.8vh,92px) !important;
    border-radius:16px !important;
  }
  .availability-dashboard-page .floor-units.dashboard-floor-units .dashboard-unit b{
    font-size:clamp(16px,.92vw,22px) !important;
  }
}
@media(max-width:1180px){
  .availability-dashboard-page .floor-units.dashboard-floor-units{
    min-width:620px !important;
  }
}

/* ===== V58: final unit prices + no tower tab images + reservations Excel export ===== */
.tower-switcher.no-image-tabs button{
  min-width:138px !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center !important;
  padding:14px 18px !important;
}
.tower-switcher.no-image-tabs .tower-tab-copy{
  display:block;
  width:100%;
  text-align:center;
}
.tower-switcher.no-image-tabs .tower-tab-copy strong{
  display:block;
  font-size:13px;
  white-space:nowrap;
}
.tower-switcher.no-image-tabs .tower-tab-copy span{
  display:block;
  margin-top:5px;
  font-size:11px;
  color:rgba(255,250,242,.58);
}
.reservations-toolbar-actions{
  display:flex;
  align-items:flex-end;
  gap:12px;
  flex-wrap:wrap;
  justify-content:flex-start;
}
.reservations-export-btn{
  min-height:48px;
  border:1px solid rgba(239,207,146,.38);
  border-radius:18px;
  padding:0 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  cursor:pointer;
  color:#1a1007;
  background:linear-gradient(135deg,#d9a95c,#f4d391);
  box-shadow:0 16px 36px rgba(214,166,93,.18);
  font-weight:900;
  font-family:inherit;
  transition:transform .22s var(--ease), box-shadow .22s ease, filter .22s ease;
}
.reservations-export-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 22px 46px rgba(214,166,93,.26);
  filter:saturate(1.08);
}
.reservations-export-btn span{
  font-size:14px;
  line-height:1;
}
@media (max-width:820px){
  .reservations-toolbar-actions{
    width:100%;
    flex-direction:column;
    align-items:stretch;
  }
  .reservations-export-btn{
    width:100%;
  }
}

/* ===== V59: Home / RowadClients rename + cross-screen responsive hardening ===== */
*{box-sizing:border-box;}
html,body{max-width:100%;overflow-x:hidden;}
img,video,svg{max-width:100%;}
.site-header{z-index:1000 !important;}

@media (min-width:1500px){
  .section-inner,
  .buildings-wrap,
  .details-main,
  .unit-booking-main,
  .reservation-main,
  .reservations-main{
    width:min(1500px,calc(100% - 72px)) !important;
  }
  .building-grid{gap:clamp(22px,1.8vw,36px) !important;}
  .building-card{min-height:clamp(520px,56vh,720px) !important;}
}

@media (min-width:1800px){
  .section-inner,
  .buildings-wrap,
  .details-main,
  .unit-booking-main,
  .reservation-main,
  .reservations-main{
    width:min(1680px,calc(100% - 96px)) !important;
  }
  .site-header,.site-header.is-plain{width:min(1500px,calc(100% - 72px)) !important;}
}

@media (max-width:1180px){
  .site-header .main-nav,.site-header.is-plain .main-nav{max-width:calc(100% - 330px) !important;}
  .site-header .main-nav a,.site-header.is-plain .main-nav a{font-size:10.6px !important;padding:7px 6px !important;}
  .brand-rowad{width:92px !important;}
  .brand-jubail{width:96px !important;}
}

@media (max-width:980px){
  .reservation-main,
  .details-main,
  .unit-booking-main,
  .reservations-main{width:100% !important;padding-left:18px !important;padding-right:18px !important;}
  .building-card{padding:20px !important;border-radius:28px !important;}
  .building-content h1{font-size:clamp(20px,3vw,30px) !important;}
  .building-unit-count{font-size:11px !important;padding:5px 10px !important;}
}

@media (max-width:860px){
  .site-header,.site-header.is-plain{
    width:calc(100% - 24px) !important;
    top:12px !important;
    left:12px !important;
    right:12px !important;
    transform:none !important;
  }
  .main-nav a,.site-header .main-nav a,.site-header.is-plain .main-nav a{font-size:12px !important;padding:10px 12px !important;}
  .hero-buildings{padding-top:96px !important;}
  .building-grid{grid-template-columns:1fr !important;}
  .building-card,.building-card.featured{min-height:330px !important;}
  .reservation-form{grid-template-columns:1fr !important;grid-template-areas:"name" "phone" "email" "notes" "submit" !important;}
  .phone-group{grid-template-columns:110px minmax(0,1fr) !important;}
  .reservations-table-wrap{overflow-x:auto !important;-webkit-overflow-scrolling:touch;}
  .reservations-table{min-width:980px !important;}
}

@media (max-width:520px){
  .brand-rowad{width:74px !important;}
  .brand-jubail{width:82px !important;}
  .brand-divider{height:22px !important;}
  .section{padding-left:14px !important;padding-right:14px !important;}
  .reservation-card,.reservation-visual,.unit-booking-shell,.details-unit-card{border-radius:24px !important;}
  .phone-group{grid-template-columns:1fr !important;}
  .tower-switcher.no-image-tabs{gap:8px !important;}
  .tower-switcher.no-image-tabs button{min-width:0 !important;flex:1 1 100% !important;}
}

/* ===== V60: restored tower PDF thumbnails in building tabs ===== */
.tower-switcher{
  align-items:stretch;
}
.tower-switcher button{
  min-width:190px !important;
  justify-content:flex-start !important;
  align-items:center !important;
  text-align:right !important;
  padding:9px 12px !important;
  gap:12px !important;
}
.tower-switcher button .tower-tab-thumb{
  display:block !important;
}
.tower-switcher button .tower-tab-copy{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  text-align:right !important;
  min-width:0 !important;
}
.tower-switcher button .tower-tab-copy strong{
  font-size:13.5px !important;
  line-height:1.4 !important;
}
.tower-switcher button .tower-tab-copy span{
  font-size:11px !important;
  margin-top:3px !important;
  color:rgba(255,250,242,.62) !important;
}
@media(max-width:760px){
  .tower-switcher button{
    min-width:0 !important;
    width:100% !important;
  }
  .tower-tab-thumb{
    width:54px !important;
    height:54px !important;
    flex-basis:54px !important;
  }
}

/* ===== V61: portrait tower images fix =====
   Tower PDF renders are vertical, so show the full image instead of cropping it. */
.tower-switcher button{
  min-height:86px !important;
  overflow:visible !important;
}
.tower-tab-thumb,
.tower-switcher button .tower-tab-thumb{
  width:56px !important;
  height:72px !important;
  flex:0 0 56px !important;
  border-radius:18px !important;
  background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035)) !important;
  padding:3px !important;
  box-shadow:0 16px 34px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.10) !important;
}
.tower-tab-thumb img,
.tower-switcher button .tower-tab-thumb img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  border-radius:14px !important;
  background:#080706 !important;
}
.tower-tab-thumb:hover img{
  transform:scale(1.04) !important;
  filter:saturate(1.08) contrast(1.05) brightness(1.04) !important;
}
.tower-tab-thumb i{
  width:22px !important;
  height:22px !important;
  left:4px !important;
  right:auto !important;
  bottom:4px !important;
  background:rgba(8,7,6,.76) !important;
}
.tower-image-modal{
  padding:18px !important;
}
.tower-image-box{
  width:min(760px,96vw) !important;
  max-height:92vh !important;
  border-radius:34px !important;
  background:radial-gradient(circle at 50% 0%,rgba(240,211,157,.16),transparent 42%),linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035)) !important;
}
.tower-image-zoom{
  height:min(82vh,780px) !important;
  min-height:min(640px,74vh) !important;
  display:grid !important;
  place-items:center !important;
  background:radial-gradient(circle at center,rgba(240,211,157,.10),rgba(0,0,0,.70) 62%,#050504) !important;
  padding:16px !important;
}
.tower-image-zoom img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  border-radius:24px !important;
  box-shadow:0 26px 70px rgba(0,0,0,.38) !important;
}
.tower-image-caption{
  right:22px !important;
  bottom:22px !important;
  left:22px !important;
}

@media(max-width:760px){
  .tower-switcher button{
    min-height:82px !important;
  }
  .tower-tab-thumb,
  .tower-switcher button .tower-tab-thumb{
    width:52px !important;
    height:68px !important;
    flex-basis:52px !important;
  }
  .tower-image-box{
    width:min(94vw,620px) !important;
    border-radius:26px !important;
  }
  .tower-image-zoom{
    height:76vh !important;
    min-height:430px !important;
    padding:10px !important;
  }
  .tower-image-caption{
    position:static !important;
    border-radius:0 !important;
  }
}


/* ===== V62: tower portrait images: full image only, no zoom ===== */
.tower-tab-thumb,
.tower-switcher button .tower-tab-thumb{
  cursor:pointer !important;
}
.tower-tab-thumb img,
.tower-switcher button .tower-tab-thumb img{
  object-fit:contain !important;
  object-position:center !important;
  transform:none !important;
  transition:filter .25s ease,border-color .25s ease !important;
}
.tower-tab-thumb:hover img,
.tower-switcher button .tower-tab-thumb:hover img{
  transform:none !important;
  filter:saturate(1.05) contrast(1.03) brightness(1.04) !important;
}
.tower-tab-thumb i{
  display:none !important;
}
.tower-image-box{
  width:min(740px,94vw) !important;
  max-height:94vh !important;
  display:flex !important;
  flex-direction:column !important;
  border-radius:28px !important;
  overflow:hidden !important;
}
.tower-image-zoom{
  cursor:default !important;
  height:min(86vh,820px) !important;
  min-height:min(620px,72vh) !important;
  overflow:hidden !important;
  padding:18px !important;
  display:grid !important;
  place-items:center !important;
}
.tower-image-zoom img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  transform:none !important;
  transition:none !important;
  will-change:auto !important;
  border-radius:18px !important;
}
.tower-image-caption{
  position:static !important;
  border-radius:0 !important;
  border-left:0 !important;
  border-right:0 !important;
  border-bottom:0 !important;
  background:rgba(12,10,8,.72) !important;
}
@media(max-width:760px){
  .tower-image-box{width:min(94vw,620px) !important;}
  .tower-image-zoom{height:78vh !important;min-height:420px !important;padding:10px !important;}
}


/* ===== V63: tower image popup fixed centered overlay with visible close button ===== */
body.tower-modal-open{
  overflow:hidden !important;
}
.tower-image-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:999999 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:22px !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
.tower-image-modal.open{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
.tower-image-backdrop{
  position:absolute !important;
  inset:0 !important;
  background:rgba(0,0,0,.82) !important;
  backdrop-filter:blur(18px) !important;
}
.tower-image-box{
  position:relative !important;
  z-index:2 !important;
  width:min(760px,94vw) !important;
  max-height:92vh !important;
  margin:auto !important;
  display:flex !important;
  flex-direction:column !important;
  border-radius:30px !important;
  overflow:hidden !important;
  border:1px solid rgba(240,211,157,.30) !important;
  background:linear-gradient(145deg,rgba(18,16,13,.98),rgba(8,7,6,.98)) !important;
  box-shadow:0 45px 140px rgba(0,0,0,.72),0 0 0 1px rgba(255,255,255,.05) inset !important;
}
.tower-image-zoom{
  width:100% !important;
  flex:1 1 auto !important;
  height:min(78vh,760px) !important;
  min-height:0 !important;
  padding:16px !important;
  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
  cursor:default !important;
  background:radial-gradient(circle at 50% 18%,rgba(240,211,157,.13),transparent 40%),#060504 !important;
}
.tower-image-zoom img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:none !important;
  transition:none !important;
  border-radius:20px !important;
  box-shadow:0 22px 65px rgba(0,0,0,.35) !important;
}
.tower-image-caption{
  position:static !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
  padding:14px 18px !important;
  border-radius:0 !important;
  border:0 !important;
  border-top:1px solid rgba(240,211,157,.18) !important;
  background:rgba(14,12,10,.94) !important;
  backdrop-filter:none !important;
}
.tower-image-caption span{
  color:rgba(240,211,157,.85) !important;
  font-size:12px !important;
  font-weight:800 !important;
}
.tower-image-caption strong{
  color:#fff8ed !important;
  font-size:20px !important;
  font-weight:900 !important;
}
.tower-image-close{
  position:absolute !important;
  top:14px !important;
  left:14px !important;
  right:auto !important;
  z-index:5 !important;
  width:auto !important;
  min-width:90px !important;
  height:42px !important;
  padding:0 16px !important;
  border-radius:999px !important;
  border:1px solid rgba(240,211,157,.35) !important;
  background:rgba(6,5,4,.82) !important;
  color:#f3d79d !important;
  font-size:14px !important;
  font-weight:900 !important;
  line-height:1 !important;
  cursor:pointer !important;
  backdrop-filter:blur(14px) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.35) !important;
}
.tower-image-close:hover{
  background:#f0c978 !important;
  color:#100d08 !important;
}
@media(max-width:760px){
  .tower-image-modal{padding:12px !important;}
  .tower-image-box{width:96vw !important;max-height:92vh !important;border-radius:24px !important;}
  .tower-image-zoom{height:76vh !important;padding:10px !important;}
  .tower-image-close{top:10px !important;left:10px !important;min-width:82px !important;height:38px !important;font-size:13px !important;}
}

/* ===== V64: portrait tower popup image uses portrait-shaped box, no square crop ===== */
.tower-image-modal{
  padding:18px !important;
}
.tower-image-box{
  width:fit-content !important;
  max-width:94vw !important;
  height:auto !important;
  max-height:94vh !important;
  display:inline-flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  border-radius:28px !important;
  overflow:hidden !important;
}
.tower-image-zoom{
  width:auto !important;
  height:auto !important;
  min-height:0 !important;
  max-height:calc(94vh - 74px) !important;
  padding:14px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}
.tower-image-zoom img{
  width:auto !important;
  height:auto !important;
  max-width:min(92vw, 760px) !important;
  max-height:calc(94vh - 112px) !important;
  object-fit:contain !important;
  border-radius:20px !important;
}
.tower-image-caption{
  width:100% !important;
  box-sizing:border-box !important;
}
@media(min-width:1200px){
  .tower-image-zoom img{
    max-height:calc(94vh - 112px) !important;
    max-width:min(78vw, 860px) !important;
  }
}
@media(max-width:760px){
  .tower-image-modal{padding:10px !important;}
  .tower-image-box{
    width:fit-content !important;
    max-width:96vw !important;
    border-radius:22px !important;
  }
  .tower-image-zoom{
    max-height:calc(92vh - 68px) !important;
    padding:8px !important;
  }
  .tower-image-zoom img{
    max-width:94vw !important;
    max-height:calc(92vh - 104px) !important;
    border-radius:16px !important;
  }
}


/* ===== V67: hidden price manager page ===== */
.price-manager-page{
  min-height:100vh;
  background:
    radial-gradient(circle at 18% 10%, rgba(224,185,105,.16), transparent 26%),
    radial-gradient(circle at 86% 5%, rgba(255,232,177,.10), transparent 22%),
    linear-gradient(145deg,#050403 0%,#0d0a07 48%,#030302 100%);
  color:#fff8ed;
}
.price-admin-header{
  justify-content:space-between;
}
.admin-home-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  padding:10px 18px;
  border-radius:999px;
  border:1px solid rgba(240,211,157,.22);
  background:rgba(255,255,255,.045);
  color:#f5d99b;
  font-weight:900;
  text-decoration:none;
  backdrop-filter:blur(18px);
}
.admin-home-link span{
  width:24px;height:24px;display:grid;place-items:center;
  border-radius:50%;background:rgba(240,211,157,.12);
}
.price-manager-main{
  width:min(1540px,calc(100% - 36px));
  margin:0 auto;
  padding:118px 0 56px;
}
.price-manager-hero{
  display:flex;
  align-items:stretch;
  justify-content:space-between;
  gap:22px;
  padding:28px;
  border-radius:34px;
  border:1px solid rgba(240,211,157,.18);
  background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.025));
  box-shadow:0 35px 95px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.06);
  overflow:hidden;
  position:relative;
}
.price-manager-hero:before{
  content:"";position:absolute;inset:auto 4% -55% auto;width:440px;height:440px;
  background:radial-gradient(circle,rgba(235,198,125,.18),transparent 62%);
  pointer-events:none;
}
.price-manager-hero h1{
  margin:8px 0 10px;
  font-size:clamp(30px,4vw,54px);
  line-height:1.08;
  color:#fff8ed;
}
.price-manager-hero p{
  max-width:760px;
  margin:0;
  color:rgba(255,248,237,.72);
  font-size:15px;
  line-height:1.9;
}
.price-manager-summary{
  display:grid;
  grid-template-columns:repeat(2,minmax(150px,1fr));
  gap:12px;
  min-width:min(420px,100%);
}
.price-manager-summary div{
  padding:18px;
  border-radius:24px;
  background:rgba(0,0,0,.28);
  border:1px solid rgba(240,211,157,.18);
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.price-manager-summary span{font-size:12px;color:rgba(240,211,157,.70);font-weight:800;}
.price-manager-summary strong{font-size:30px;color:#fff;font-weight:950;line-height:1.2;}
.price-manager-panel{
  margin-top:22px;
  padding:22px;
  border-radius:34px;
  border:1px solid rgba(240,211,157,.16);
  background:rgba(255,255,255,.045);
  box-shadow:0 28px 75px rgba(0,0,0,.30);
}
.price-toolbar{
  display:grid;
  grid-template-columns:minmax(260px,1.2fr) minmax(180px,.6fr) minmax(160px,.5fr) auto;
  gap:12px;
  align-items:end;
}
.price-toolbar label{
  display:flex;
  flex-direction:column;
  gap:8px;
  color:rgba(240,211,157,.75);
  font-size:12px;
  font-weight:900;
}
.price-toolbar input,.price-toolbar select{
  width:100%;
  min-height:48px;
  border-radius:18px;
  border:1px solid rgba(240,211,157,.18);
  background:rgba(0,0,0,.30);
  color:#fff8ed;
  padding:0 15px;
  outline:none;
  font-weight:800;
}
.price-save-all,.price-row-save{
  min-height:48px;
  border:0;
  border-radius:18px;
  padding:0 18px;
  background:linear-gradient(135deg,#f1d394,#c9943f);
  color:#140e07;
  font-weight:950;
  cursor:pointer;
  box-shadow:0 18px 38px rgba(201,148,63,.22);
}
.price-save-all:disabled,.price-row-save:disabled{opacity:.55;cursor:not-allowed;}
.price-status{
  margin:16px 0 14px;
  padding:12px 16px;
  border-radius:18px;
  border:1px solid rgba(240,211,157,.13);
  background:rgba(0,0,0,.22);
  color:rgba(255,248,237,.75);
  font-weight:800;
}
.price-status[data-type="success"]{color:#baf5c3;border-color:rgba(118,220,135,.24);background:rgba(66,180,89,.08);}
.price-status[data-type="error"]{color:#ffc4b8;border-color:rgba(255,111,83,.28);background:rgba(255,111,83,.08);}
.price-status[data-type="loading"]{color:#f2d391;}
.price-table-wrap{
  overflow:auto;
  border-radius:24px;
  border:1px solid rgba(240,211,157,.12);
  background:rgba(0,0,0,.18);
}
.price-table{
  width:100%;
  min-width:1080px;
  border-collapse:separate;
  border-spacing:0;
}
.price-table th,.price-table td{
  padding:14px 13px;
  text-align:right;
  border-bottom:1px solid rgba(240,211,157,.09);
  vertical-align:middle;
}
.price-table th{
  color:#f1d394;
  font-size:12px;
  font-weight:950;
  background:rgba(0,0,0,.28);
  position:sticky;
  top:0;
  z-index:1;
}
.price-table td{color:rgba(255,248,237,.86);font-size:13px;font-weight:800;}
.price-unit-code{font-size:16px;color:#fff8ed;display:block;margin-bottom:6px;}
.price-unit-status{
  display:inline-flex;align-items:center;justify-content:center;
  padding:5px 9px;border-radius:999px;font-size:11px;font-weight:950;
  border:1px solid rgba(255,255,255,.10);
}
.price-unit-status.available{color:#bbf7c2;background:rgba(64,196,92,.12);}
.price-unit-status.reserved{color:#ffd196;background:rgba(232,152,48,.12);}
.price-unit-status.sold{color:#ded8cb;background:rgba(255,255,255,.10);}
.price-input-wrap{
  display:flex;align-items:center;gap:8px;
  padding:6px 10px;
  border-radius:16px;
  border:1px solid rgba(240,211,157,.18);
  background:rgba(0,0,0,.28);
  min-width:170px;
}
.price-input-wrap input{
  width:100%;
  border:0;
  outline:0;
  background:transparent;
  color:#fff8ed;
  font-weight:950;
  font-size:15px;
  direction:ltr;
  text-align:left;
}
.price-input-wrap span{font-size:12px;color:rgba(240,211,157,.72);font-weight:900;white-space:nowrap;}
body.is-saving-prices .price-save-all,body.is-saving-prices .price-row-save{opacity:.66;pointer-events:none;}
@media(max-width:960px){
  .price-manager-main{width:min(100% - 24px,920px);padding-top:100px;}
  .price-manager-hero{flex-direction:column;padding:20px;border-radius:28px;}
  .price-manager-summary{grid-template-columns:repeat(2,1fr);min-width:0;}
  .price-toolbar{grid-template-columns:1fr 1fr;}
  .price-save-all{grid-column:1/-1;}
}
@media(max-width:620px){
  .price-toolbar{grid-template-columns:1fr;}
  .price-manager-summary{grid-template-columns:1fr;}
  .price-admin-header .brand{transform:scale(.88);transform-origin:left center;}
}

/* ===== V68: RowadPrices home button left + remove legacy pages cleanup ===== */
.price-manager-page .price-admin-header{
  display:block !important;
  position:fixed !important;
  top:18px !important;
  left:50% !important;
  right:auto !important;
  transform:translateX(-50%) !important;
  width:min(1260px,calc(100% - 36px)) !important;
  min-height:68px !important;
}
.price-manager-page .price-admin-header .brand{
  position:absolute !important;
  top:50% !important;
  right:16px !important;
  left:auto !important;
  transform:translateY(-50%) !important;
  z-index:4 !important;
}
.price-manager-page .price-admin-header .admin-home-link{
  position:absolute !important;
  top:50% !important;
  left:16px !important;
  right:auto !important;
  transform:translateY(-50%) !important;
  z-index:5 !important;
  margin:0 !important;
}
.price-manager-page .price-admin-header .header-spacer{display:none !important;}
@media(max-width:720px){
  .price-manager-page .price-admin-header{
    top:10px !important;
    width:calc(100% - 20px) !important;
    min-height:64px !important;
    border-radius:22px !important;
  }
  .price-manager-page .price-admin-header .brand{
    right:12px !important;
    transform:translateY(-50%) scale(.82) !important;
    transform-origin:right center !important;
  }
  .price-manager-page .price-admin-header .admin-home-link{
    left:12px !important;
    min-height:40px !important;
    padding:8px 12px !important;
    font-size:12px !important;
  }
  .price-manager-page .price-admin-header .admin-home-link span{width:22px;height:22px;}
}

/* ===== V69: Mobile responsiveness polish, especially reservation page ===== */
@media (max-width: 900px){
  html, body{
    width:100%;
    max-width:100%;
    overflow-x:hidden !important;
  }

  .site-header,
  .site-header.is-plain{
    top:10px !important;
    width:calc(100% - 20px) !important;
    min-height:64px !important;
    border-radius:22px !important;
    padding:0 !important;
  }

  .site-header .brand,
  .site-header.is-plain .brand{
    right:12px !important;
    left:auto !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    gap:7px !important;
    max-width:calc(100% - 78px) !important;
    overflow:hidden !important;
  }

  .site-header .brand-rowad,
  .site-header.is-plain .brand-rowad{
    width:82px !important;
    max-height:34px !important;
  }

  .site-header .brand-jubail,
  .site-header.is-plain .brand-jubail{
    width:88px !important;
    max-height:34px !important;
  }

  .site-header .brand-divider,
  .site-header.is-plain .brand-divider{
    height:24px !important;
  }

  .site-header .menu-toggle,
  .site-header.is-plain .menu-toggle{
    display:grid !important;
    place-items:center !important;
    width:42px !important;
    height:42px !important;
    left:11px !important;
    right:auto !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    border-radius:15px !important;
    background:rgba(255,255,255,.08) !important;
    border:1px solid rgba(255,255,255,.15) !important;
    color:#fff7ec !important;
  }

  .site-header .main-nav,
  .site-header.is-plain .main-nav{
    display:none !important;
    position:absolute !important;
    top:74px !important;
    left:0 !important;
    right:0 !important;
    transform:none !important;
    width:100% !important;
    padding:12px !important;
    border-radius:22px !important;
    background:rgba(9,8,7,.96) !important;
    border:1px solid rgba(240,211,157,.16) !important;
    box-shadow:0 26px 70px rgba(0,0,0,.42) !important;
    backdrop-filter:blur(22px) !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:7px !important;
  }

  .site-header .main-nav.open,
  .site-header.is-plain .main-nav.open{
    display:flex !important;
  }

  .site-header .main-nav a,
  .site-header.is-plain .main-nav a{
    width:100% !important;
    text-align:center !important;
    padding:12px 14px !important;
    font-size:13px !important;
    border-radius:16px !important;
    background:rgba(255,255,255,.045) !important;
  }

  .hero-buildings,
  .section,
  .details-main,
  .reservation-main{
    padding-left:12px !important;
    padding-right:12px !important;
  }

  .building-grid{
    grid-template-columns:1fr !important;
  }

  .building-card,
  .building-card.featured{
    min-height:310px !important;
  }
}

@media (max-width: 760px){
  .reservation-page{
    background:
      radial-gradient(circle at 12% 4%, rgba(240,211,157,.16), transparent 34%),
      radial-gradient(circle at 92% 18%, rgba(201,149,76,.10), transparent 30%),
      #060504 !important;
  }

  .reservation-main{
    display:flex !important;
    flex-direction:column !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 auto !important;
    padding-top:92px !important;
    padding-bottom:36px !important;
    gap:14px !important;
  }

  .reservation-card,
  .reservation-visual{
    width:100% !important;
    border-radius:24px !important;
    background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.035)) !important;
    border-color:rgba(240,211,157,.14) !important;
  }

  .reservation-card{
    padding:18px !important;
  }

  .form-head h1{
    font-size:24px !important;
    line-height:1.35 !important;
    margin:8px 0 8px !important;
  }

  .form-head p{
    font-size:12px !important;
    line-height:1.8 !important;
  }

  .selected-unit-summary{
    margin-top:16px !important;
    padding:15px !important;
    border-radius:20px !important;
  }

  .selected-unit-summary strong{
    font-size:20px !important;
    line-height:1.25 !important;
  }

  .selected-unit-summary p{
    font-size:12px !important;
    line-height:1.8 !important;
  }

  .reservation-form{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    margin-top:18px !important;
  }

  .reservation-form label,
  .reservation-form .full-span{
    grid-column:1/-1 !important;
    min-width:0 !important;
    width:100% !important;
    gap:7px !important;
    font-size:12px !important;
  }

  .reservation-form input,
  .reservation-form select,
  .reservation-form textarea{
    min-height:48px !important;
    border-radius:16px !important;
    padding:11px 12px !important;
    font-size:14px !important;
  }

  .phone-group{
    display:grid !important;
    grid-template-columns:112px minmax(0,1fr) !important;
    gap:8px !important;
    width:100% !important;
  }

  .phone-group select,
  .phone-group input{
    min-width:0 !important;
  }

  .reservation-form textarea{
    min-height:112px !important;
  }

  .submit-btn{
    min-height:52px !important;
    border-radius:18px !important;
    font-size:14px !important;
    margin-top:2px !important;
  }

  .form-actions{
    margin-top:12px !important;
  }

  .form-actions .btn{
    width:100% !important;
    justify-content:center !important;
  }

  .reservation-visual{
    min-height:0 !important;
    padding:12px !important;
    display:flex !important;
    flex-direction:column !important;
    gap:12px !important;
    overflow:hidden !important;
  }

  .reservation-visual > img{
    width:100% !important;
    height:220px !important;
    object-fit:cover !important;
    border-radius:20px !important;
  }

  .visual-caption{
    position:static !important;
    inset:auto !important;
    width:100% !important;
    border-radius:20px !important;
    padding:14px !important;
    background:rgba(0,0,0,.26) !important;
  }

  .visual-caption img{
    height:34px !important;
    margin-bottom:8px !important;
  }

  .visual-caption strong{
    font-size:14px !important;
  }

  .visual-caption p{
    font-size:11.5px !important;
    line-height:1.7 !important;
  }

  .loading-box,
  .success-box{
    width:min(100%,360px) !important;
    border-radius:24px !important;
    padding:26px 20px !important;
  }
}

@media (max-width: 420px){
  body{font-size:12.5px !important;}
  .site-header .brand-rowad,
  .site-header.is-plain .brand-rowad{width:72px !important;}
  .site-header .brand-jubail,
  .site-header.is-plain .brand-jubail{width:78px !important;}
  .site-header .brand{gap:5px !important;}
  .site-header .brand-divider{height:20px !important;}
  .form-head h1{font-size:21px !important;}
  .reservation-card{padding:15px !important;border-radius:22px !important;}
  .phone-group{grid-template-columns:104px minmax(0,1fr) !important;gap:7px !important;}
  .reservation-form input,
  .reservation-form select,
  .reservation-form textarea{font-size:13px !important;padding:10px 11px !important;}
}

@media (min-width: 1280px){
  .reservation-main{
    width:min(1280px,calc(100% - 54px)) !important;
  }
}

/* ===== V70: Full mobile layout hardening across all pages ===== */
@media (max-width: 900px){
  html,body{width:100% !important;max-width:100% !important;overflow-x:hidden !important;}
  body{min-width:0 !important;}
  main,section,article,aside,div{min-width:0;}

  .site-header,.site-header.is-plain{
    width:calc(100% - 20px) !important;
    left:10px !important;
    right:10px !important;
    transform:none !important;
    top:10px !important;
    min-height:62px !important;
    border-radius:22px !important;
  }
  .site-header .brand,.site-header.is-plain .brand{
    right:12px !important;
    max-width:calc(100% - 74px) !important;
    gap:6px !important;
  }
  .site-header .brand-rowad,.site-header.is-plain .brand-rowad{width:78px !important;max-height:32px !important;}
  .site-header .brand-jubail,.site-header.is-plain .brand-jubail{width:84px !important;max-height:32px !important;}
  .site-header .brand-divider,.site-header.is-plain .brand-divider{height:22px !important;}
  .site-header .menu-toggle,.site-header.is-plain .menu-toggle{
    display:grid !important;
    place-items:center !important;
    left:10px !important;
    width:42px !important;
    height:42px !important;
    border-radius:15px !important;
  }
  .site-header .main-nav,.site-header.is-plain .main-nav{
    display:none !important;
    position:absolute !important;
    top:72px !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    transform:none !important;
    max-width:none !important;
    padding:10px !important;
    border-radius:20px !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:7px !important;
    background:rgba(8,7,6,.96) !important;
    border:1px solid rgba(240,211,157,.18) !important;
    box-shadow:0 28px 70px rgba(0,0,0,.48) !important;
  }
  .site-header .main-nav.open,.site-header.is-plain .main-nav.open{display:flex !important;}
  .site-header .main-nav a,.site-header.is-plain .main-nav a{
    width:100% !important;
    text-align:center !important;
    padding:11px 12px !important;
    font-size:13px !important;
    border-radius:15px !important;
  }
}

/* Units page: fix shared .floor-units class conflict on mobile and desktop */
.units-page #floorUnits{
  display:block !important;
  grid-template-columns:none !important;
  gap:0 !important;
  min-height:auto !important;
  width:100% !important;
  overflow:visible !important;
}
.units-page #floorUnits .floor-title-row,
.units-page #floorUnits .unit-ticket-grid,
.units-page #floorUnits .fully-reserved-banner{
  width:100% !important;
}
.units-page #floorUnits .unit-ticket-grid{
  display:grid !important;
}

@media (max-width: 760px){
  .unit-booking-main{
    width:100% !important;
    padding:88px 10px 34px !important;
    margin:0 !important;
  }
  .unit-booking-shell{
    width:100% !important;
    padding:12px !important;
    border-radius:24px !important;
    overflow:hidden !important;
  }
  .unit-booking-head{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:14px !important;
    margin-bottom:14px !important;
  }
  .unit-booking-head h1{
    font-size:23px !important;
    line-height:1.35 !important;
    margin:6px 0 4px !important;
  }
  .unit-booking-head p{
    font-size:11.5px !important;
    line-height:1.75 !important;
    max-width:none !important;
  }
  .tower-switcher{
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:9px !important;
    justify-content:stretch !important;
  }
  .tower-switcher button{
    width:100% !important;
    min-width:0 !important;
    min-height:78px !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:11px !important;
    padding:9px 10px !important;
    border-radius:18px !important;
  }
  .tower-switcher button .tower-tab-thumb,
  .tower-tab-thumb{
    width:48px !important;
    height:62px !important;
    flex:0 0 48px !important;
    border-radius:14px !important;
  }
  .tower-switcher button .tower-tab-copy{
    flex:1 1 auto !important;
    min-width:0 !important;
    align-items:flex-start !important;
  }
  .tower-switcher button .tower-tab-copy strong{font-size:13px !important;}
  .tower-switcher button .tower-tab-copy span{font-size:11px !important;}

  .unit-booking-layout{
    display:flex !important;
    flex-direction:column !important;
    gap:14px !important;
    width:100% !important;
  }
  .floor-board{
    width:100% !important;
    padding:12px !important;
    border-radius:22px !important;
    overflow:hidden !important;
  }
  .floor-tabs{
    width:100% !important;
    display:flex !important;
    gap:7px !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch !important;
    padding:0 0 9px !important;
    margin:0 0 12px !important;
    scrollbar-width:thin !important;
  }
  .floor-tabs button{
    flex:0 0 auto !important;
    min-width:auto !important;
    padding:8px 13px !important;
    font-size:12px !important;
    white-space:nowrap !important;
  }
  .floor-title-row{
    display:block !important;
    margin:4px 0 14px !important;
    text-align:right !important;
  }
  .floor-title-row span{font-size:12px !important;}
  .floor-title-row h2{
    font-size:22px !important;
    line-height:1.35 !important;
    margin:4px 0 3px !important;
  }
  .floor-title-row p{
    font-size:11.5px !important;
    line-height:1.7 !important;
  }
  .unit-ticket-grid{
    grid-template-columns:1fr !important;
    gap:11px !important;
    width:100% !important;
  }
  .unit-ticket{
    width:100% !important;
    min-width:0 !important;
    min-height:auto !important;
    padding:15px !important;
    border-radius:22px !important;
    display:block !important;
    text-align:right !important;
  }
  .unit-ticket strong{
    font-size:24px !important;
    line-height:1.15 !important;
    text-align:right !important;
    direction:ltr !important;
    unicode-bidi:plaintext !important;
    margin-top:10px !important;
    word-break:keep-all !important;
  }
  .unit-ticket em{
    font-size:12px !important;
    margin:9px 0 !important;
  }
  .unit-ticket .unit-ticket-info-line{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:6px !important;
    font-size:12px !important;
    line-height:1.9 !important;
    text-align:right !important;
  }
  .unit-ticket .unit-ticket-info-line span{white-space:normal !important;}
  .unit-ticket .unit-ticket-info-line i{display:inline-flex !important;}
  .selected-unit-card{
    width:100% !important;
    position:relative !important;
    top:auto !important;
    padding:16px !important;
    border-radius:22px !important;
  }
  .selected-specs{grid-template-columns:1fr !important;}
  .selected-unit-card h2{font-size:22px !important;text-align:right !important;}
}

@media (max-width: 420px){
  .unit-booking-main{padding-left:8px !important;padding-right:8px !important;}
  .unit-booking-shell{padding:10px !important;border-radius:22px !important;}
  .floor-board{padding:10px !important;border-radius:20px !important;}
  .unit-ticket{padding:13px !important;border-radius:20px !important;}
  .unit-ticket strong{font-size:22px !important;}
  .floor-title-row h2{font-size:20px !important;}
}

/* Details page mobile polish */
@media (max-width: 760px){
  body.detail-page .details-main{
    width:100% !important;
    padding:88px 10px 34px !important;
  }
  body.detail-page .detail-hero,
  body.detail-page .detail-slider-wrap,
  body.detail-page .details-unit-card,
  body.detail-page .detail-sort-bar,
  body.detail-page .detail-floor-section{
    border-radius:22px !important;
  }
  body.detail-page .detail-inventory-summary,
  body.detail-page .detail-unit-ticket-grid{
    grid-template-columns:1fr !important;
    gap:11px !important;
  }
  body.detail-page .detail-floor-tabs{
    width:100% !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch !important;
    justify-content:flex-start !important;
    padding-bottom:8px !important;
  }
  body.detail-page .detail-floor-tabs button{
    flex:0 0 auto !important;
    white-space:nowrap !important;
  }
  body.detail-page .detail-unit-ticket{
    width:100% !important;
    min-width:0 !important;
    padding:16px !important;
    border-radius:22px !important;
  }
  body.detail-page .detail-unit-ticket strong{
    font-size:22px !important;
    text-align:right !important;
    direction:ltr !important;
    unicode-bidi:plaintext !important;
  }
}

/* Reservations and price manager mobile hardening */
@media (max-width: 760px){
  .reservations-main,
  .price-manager-main{
    width:100% !important;
    padding:88px 10px 34px !important;
  }
  .reservations-hero,
  .reservations-toolbar,
  .reservations-card,
  .price-manager-hero,
  .price-toolbar,
  .price-list-card{
    border-radius:22px !important;
  }
  .reservations-toolbar,
  .price-toolbar{
    grid-template-columns:1fr !important;
  }
  .reservation-mobile-card,
  .price-row{
    border-radius:20px !important;
    padding:14px !important;
  }
}

/* Home mobile: keep cards readable and prevent overlaps */
@media (max-width: 760px){
  .hero-buildings{padding:88px 10px 34px !important;min-height:auto !important;}
  .buildings-wrap{width:100% !important;}
  .building-grid{grid-template-columns:1fr !important;gap:14px !important;}
  .building-card,.building-card.featured{
    min-height:300px !important;
    padding:20px !important;
    border-radius:26px !important;
    transform:none !important;
  }
  .building-number{font-size:58px !important;}
  .tower-mark{right:18px !important;bottom:112px !important;opacity:.42 !important;transform:none !important;}
  .building-content h1{font-size:25px !important;line-height:1.35 !important;}
  .building-unit-count{font-size:12px !important;padding:6px 12px !important;}
  .building-actions{grid-template-columns:1fr 1fr !important;gap:9px !important;}
  .building-actions .btn{min-height:44px !important;padding:9px 12px !important;font-size:12px !important;}
}

/* Reservation mobile final alignment */
@media (max-width: 760px){
  .reservation-main{padding-left:10px !important;padding-right:10px !important;}
  .reservation-form{grid-template-columns:1fr !important;}
  .phone-group{grid-template-columns:112px minmax(0,1fr) !important;}
  .reservation-form label{width:100% !important;}
}
@media (max-width: 390px){
  .phone-group{grid-template-columns:96px minmax(0,1fr) !important;}
}

/* ===== V71: mobile navigation centering + responsive unit booking polish ===== */
html, body{
  max-width:100% !important;
  overflow-x:hidden !important;
}
*, *::before, *::after{box-sizing:border-box;}
img, video{max-width:100%;}

/* Reserve action that appears immediately inside the selected apartment card */
.ticket-reserve-now{
  display:none;
  width:100%;
  margin-top:14px;
  padding:12px 14px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  color:#130d06;
  font-weight:900;
  text-align:center;
  box-shadow:0 16px 40px rgba(211,162,92,.28);
  position:relative;
  z-index:3;
}
.unit-ticket.selected .ticket-reserve-now{
  display:block;
}
.unit-ticket.selected .ticket-reserve-now:active{
  transform:scale(.98);
}

/* keep the main logo visually centered on mobile headers */
@media(max-width:860px){
  .site-header,
  .site-header.is-plain{
    width:calc(100% - 24px) !important;
    min-height:68px !important;
    padding:10px 12px !important;
    display:block !important;
    left:50% !important;
    right:auto !important;
    transform:translateX(-50%) !important;
    top:12px !important;
    border-radius:22px !important;
    overflow:visible !important;
  }
  .site-header .brand,
  .site-header.is-plain .brand{
    position:absolute !important;
    left:50% !important;
    right:auto !important;
    top:50% !important;
    transform:translate(-50%,-50%) !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    width:auto !important;
    max-width:calc(100% - 112px) !important;
    min-width:0 !important;
    z-index:4 !important;
  }
  .site-header .menu-toggle,
  .site-header.is-plain .menu-toggle{
    display:grid !important;
    place-items:center !important;
    position:absolute !important;
    left:12px !important;
    right:auto !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    width:46px !important;
    height:46px !important;
    border-radius:16px !important;
    z-index:5 !important;
  }
  .site-header .brand-rowad,
  .site-header.is-plain .brand-rowad{
    width:84px !important;
    max-height:34px !important;
  }
  .site-header .brand-jubail,
  .site-header.is-plain .brand-jubail{
    width:92px !important;
    max-height:34px !important;
  }
  .site-header .brand-divider,
  .site-header.is-plain .brand-divider{
    height:24px !important;
  }
  .site-header .main-nav,
  .site-header.is-plain .main-nav{
    top:78px !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    max-width:none !important;
    transform:none !important;
    padding:12px !important;
    z-index:20 !important;
  }
  .site-header .main-nav a,
  .site-header.is-plain .main-nav a{
    text-align:center !important;
    justify-content:center !important;
    width:100% !important;
    font-size:13px !important;
    padding:12px 10px !important;
  }
}

@media(max-width:520px){
  .site-header,
  .site-header.is-plain{
    width:calc(100% - 16px) !important;
    min-height:62px !important;
    top:8px !important;
    padding:8px 10px !important;
    border-radius:20px !important;
  }
  .site-header .menu-toggle,
  .site-header.is-plain .menu-toggle{
    left:10px !important;
    width:42px !important;
    height:42px !important;
    border-radius:14px !important;
  }
  .site-header .brand,
  .site-header.is-plain .brand{
    gap:6px !important;
    max-width:calc(100% - 94px) !important;
  }
  .site-header .brand-rowad,
  .site-header.is-plain .brand-rowad{width:70px !important;}
  .site-header .brand-jubail,
  .site-header.is-plain .brand-jubail{width:80px !important;}
  .site-header .brand-divider,
  .site-header.is-plain .brand-divider{height:20px !important;}
}

/* Units page: strong mobile layout for small and large phones */
@media(max-width:860px){
  .unit-booking-main{
    padding:92px 12px 48px !important;
  }
  .unit-booking-shell{
    width:100% !important;
    max-width:100% !important;
    padding:14px !important;
    border-radius:26px !important;
  }
  .unit-booking-head{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:14px !important;
    margin-bottom:16px !important;
  }
  .unit-booking-head h1{
    font-size:23px !important;
    line-height:1.35 !important;
  }
  .tower-switcher{
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
    width:100% !important;
    overflow:visible !important;
  }
  .tower-switcher button{
    width:100% !important;
    min-width:0 !important;
    flex:0 0 auto !important;
    justify-content:space-between !important;
    padding:10px 12px !important;
    border-radius:20px !important;
  }
  .tower-tab-thumb{
    width:54px !important;
    height:54px !important;
    flex-basis:54px !important;
  }
  .unit-booking-layout{
    display:flex !important;
    flex-direction:column !important;
    gap:16px !important;
    width:100% !important;
  }
  .floor-board,
  .selected-unit-card{
    width:100% !important;
    max-width:100% !important;
    border-radius:24px !important;
    padding:12px !important;
  }
  .floor-tabs{
    width:100% !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    white-space:nowrap !important;
    display:flex !important;
    gap:8px !important;
    padding:0 0 10px !important;
    scrollbar-width:thin !important;
    -webkit-overflow-scrolling:touch !important;
  }
  .floor-tabs button{
    flex:0 0 auto !important;
    min-width:max-content !important;
    padding:9px 14px !important;
  }
  .floor-title-row{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:6px !important;
    margin:12px 0 !important;
  }
  .floor-title-row h2{
    font-size:21px !important;
    line-height:1.35 !important;
  }
  .floor-title-row p{
    font-size:12px !important;
  }
  .unit-ticket-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    width:100% !important;
  }
  .unit-ticket{
    width:100% !important;
    min-width:0 !important;
    min-height:auto !important;
    padding:16px !important;
    border-radius:24px !important;
    text-align:right !important;
  }
  .unit-ticket strong{
    font-size:27px !important;
    margin-top:14px !important;
    text-align:left !important;
    direction:ltr !important;
    overflow-wrap:anywhere !important;
  }
  .unit-ticket-info-line{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:6px !important;
    align-items:center !important;
    justify-content:flex-start !important;
    line-height:1.8 !important;
    text-align:right !important;
  }
  .unit-ticket-info-line span{
    min-width:0 !important;
    overflow-wrap:anywhere !important;
  }
  .selected-unit-card{
    position:static !important;
    order:-1 !important;
  }
}

@media(max-width:420px){
  .unit-booking-main{padding-inline:8px !important;}
  .unit-booking-shell{padding:10px !important;border-radius:22px !important;}
  .unit-ticket{padding:14px !important;border-radius:20px !important;}
  .unit-ticket strong{font-size:24px !important;}
  .ticket-status{font-size:10px !important;padding:5px 9px !important;}
  .ticket-reserve-now{padding:11px 12px !important;font-size:12.5px !important;}
}

/* General mobile safety for all pages */
@media(max-width:860px){
  .details-main,.reservation-main,.clients-main,.price-manager-main,.sync-main,
  .section,.hero-buildings{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }
  .reservation-card,.reservation-visual,.details-shell,.clients-shell,.price-manager-shell,.sync-card{
    max-width:100% !important;
  }
  .reservation-main{
    grid-template-columns:1fr !important;
    padding:92px 12px 48px !important;
  }
  .reservation-card{padding:18px !important;border-radius:26px !important;}
  .reservation-form{gap:12px !important;}
  .reservation-form input,.reservation-form select,.reservation-form textarea{width:100% !important;}
  .phone-group{grid-template-columns:112px minmax(0,1fr) !important;}
}
@media(max-width:420px){
  .phone-group{grid-template-columns:96px minmax(0,1fr) !important;gap:7px !important;}
  .reservation-card{padding:14px !important;border-radius:22px !important;}
  .reservation-form input,.reservation-form select,.reservation-form textarea{min-height:46px !important;font-size:12px !important;}
}

/* ===== V72: mobile bottom-sheet reservation + sales dashboard mobile repair ===== */
.unit-reservation-sheet{
  position:fixed;
  left:50%;
  bottom:18px;
  transform:translate(-50%,130%);
  width:min(560px,calc(100% - 24px));
  z-index:1200;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  padding:14px;
  border:1px solid rgba(240,211,157,.28);
  border-radius:24px;
  background:
    radial-gradient(circle at 15% 0%,rgba(240,211,157,.18),transparent 38%),
    linear-gradient(145deg,rgba(18,15,12,.96),rgba(8,7,6,.92));
  box-shadow:0 28px 90px rgba(0,0,0,.52), inset 0 1px 0 rgba(255,255,255,.09);
  backdrop-filter:blur(22px) saturate(1.15);
  -webkit-backdrop-filter:blur(22px) saturate(1.15);
  opacity:0;
  pointer-events:none;
  transition:transform .34s var(--ease), opacity .26s ease;
}
.unit-reservation-sheet.show{
  transform:translate(-50%,0);
  opacity:1;
  pointer-events:auto;
}
.unit-reservation-sheet-copy{
  min-width:0;
  text-align:right;
}
.unit-reservation-sheet-copy span{
  display:block;
  color:var(--gold-2);
  font-size:11px;
  font-weight:900;
  margin-bottom:4px;
}
.unit-reservation-sheet-copy strong{
  display:block;
  direction:ltr;
  text-align:right;
  color:#fff;
  font-size:20px;
  line-height:1.1;
  font-weight:950;
  letter-spacing:.02em;
}
.unit-reservation-sheet-copy small{
  display:block;
  margin-top:4px;
  color:rgba(255,250,242,.62);
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.unit-reservation-sheet .btn{
  min-width:170px;
  min-height:50px;
  border-radius:18px;
  padding-inline:20px;
}
.unit-reservation-sheet .btn:disabled{
  opacity:.45;
  filter:saturate(.2);
}
body.has-unit-sheet .unit-booking-main{
  padding-bottom:130px !important;
}
.ticket-reserve-now{display:none !important;}

@media(max-width:640px){
  .unit-reservation-sheet{
    width:calc(100% - 18px);
    bottom:9px;
    grid-template-columns:1fr;
    gap:10px;
    padding:12px;
    border-radius:22px 22px 18px 18px;
  }
  .unit-reservation-sheet .btn{
    width:100%;
    min-width:0;
    min-height:52px;
    font-size:14px;
  }
  .unit-reservation-sheet-copy strong{font-size:18px;}
  .unit-reservation-sheet-copy small{font-size:10.5px;}
  body.has-unit-sheet .unit-booking-main{padding-bottom:180px !important;}
}

/* Sales status mobile / small-screen layout: stacked, readable, no horizontal breakage */
@media(max-width:980px){
  body.availability-dashboard-page{
    overflow-x:hidden !important;
  }
  .availability-dashboard-page .dashboard-left-tools{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    width:calc(100% - 24px) !important;
    min-height:64px !important;
    margin:12px auto 0 !important;
    justify-content:center !important;
    padding:8px 12px !important;
    border-radius:22px !important;
  }
  .availability-dashboard-page .dashboard-side-logo{
    display:block !important;
    width:min(150px,42vw) !important;
    max-height:52px !important;
  }
  .availability-dashboard-page .dashboard-left-tools .dashboard-home-btn{
    width:44px !important;
    height:44px !important;
    flex:0 0 44px !important;
  }
  .availability-dashboard-page .availability-main{
    padding:12px 10px 26px !important;
    width:100% !important;
  }
  .availability-dashboard-page .availability-board{
    width:100% !important;
    min-height:auto !important;
    padding:14px 10px 16px !important;
    border-radius:26px !important;
  }
  .availability-dashboard-page .availability-topbar{
    grid-template-columns:1fr !important;
    gap:10px !important;
    padding-inline:0 !important;
    margin-bottom:14px !important;
  }
  .availability-dashboard-page .live-clock-card{
    display:flex !important;
    width:min(320px,100%) !important;
    min-width:0 !important;
    min-height:72px !important;
    justify-self:center !important;
    padding:10px 14px !important;
    order:2;
  }
  .availability-dashboard-page .availability-title-wrap{
    order:1;
    text-align:center !important;
  }
  .availability-dashboard-page .availability-title-wrap h1{
    font-size:clamp(28px,9vw,42px) !important;
    line-height:1.16 !important;
    margin-top:4px !important;
  }
  .availability-dashboard-page .dashboard-kicker{
    font-size:11px !important;
  }
  .availability-dashboard-page .availability-live-chip{
    margin-inline:auto !important;
    width:max-content !important;
    max-width:100% !important;
  }
  .availability-dashboard-page .availability-content{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    overflow:visible !important;
    padding:0 !important;
    margin-top:10px !important;
  }
  .availability-dashboard-page .availability-tower{
    min-width:0 !important;
    width:100% !important;
    padding:12px !important;
    border-radius:24px !important;
  }
  .availability-dashboard-page .availability-tower-head.compact-tower-head{
    min-height:auto !important;
    padding:4px 4px 12px !important;
  }
  .availability-dashboard-page .tower-head-title h2{
    font-size:24px !important;
  }
  .availability-dashboard-page .tower-grid-wrap{
    gap:8px !important;
  }
  .availability-dashboard-page .dashboard-floor{
    grid-template-columns:74px minmax(0,1fr) !important;
    gap:7px !important;
    align-items:stretch !important;
  }
  .availability-dashboard-page .floor-number{
    min-height:58px !important;
    font-size:11px !important;
    border-radius:13px !important;
    padding:6px 4px !important;
  }
  .availability-dashboard-page .floor-units.dashboard-floor-units{
    min-width:0 !important;
    min-height:58px !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    grid-auto-rows:minmax(44px,auto) !important;
    gap:6px !important;
    align-items:stretch !important;
  }
  .availability-dashboard-page .floor-units.dashboard-floor-units .dashboard-unit{
    min-height:44px !important;
    border-radius:12px !important;
    padding:5px 3px !important;
  }
  .availability-dashboard-page .floor-units.dashboard-floor-units .dashboard-unit b{
    font-size:13px !important;
    line-height:1 !important;
  }
  .availability-dashboard-page .floor-full .floor-units.dashboard-floor-units{
    padding-top:22px !important;
  }
  .availability-dashboard-page .floor-full-ribbon{
    height:18px !important;
    font-size:9px !important;
  }
}

@media(max-width:420px){
  .availability-dashboard-page .dashboard-floor{
    grid-template-columns:62px minmax(0,1fr) !important;
    gap:5px !important;
  }
  .availability-dashboard-page .floor-number{
    font-size:10px !important;
    min-height:52px !important;
  }
  .availability-dashboard-page .floor-units.dashboard-floor-units{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-auto-rows:minmax(42px,auto) !important;
    gap:5px !important;
  }
  .availability-dashboard-page .floor-units.dashboard-floor-units .dashboard-unit b{
    font-size:12px !important;
  }
}

/* ===== V73: final mobile dashboard repair + fixed reservation bottom sheet ===== */
/* Units page: choosing an apartment should clearly reveal a fixed bottom action sheet */
.unit-reservation-sheet{
  direction:rtl !important;
  border-color:rgba(240,211,157,.38) !important;
  background:
    radial-gradient(circle at 12% 0%,rgba(240,211,157,.22),transparent 40%),
    linear-gradient(145deg,rgba(20,17,13,.98),rgba(5,5,4,.96)) !important;
}
.unit-reservation-sheet.show{
  transform:translate(-50%,0) !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
.unit-reservation-sheet .btn{
  white-space:nowrap !important;
  font-weight:950 !important;
}
.unit-ticket.selected{
  border-color:rgba(240,211,157,.82) !important;
  box-shadow:0 0 0 2px rgba(240,211,157,.12) inset,0 24px 70px rgba(0,0,0,.34) !important;
}
@media(max-width:860px){
  .units-page .selected-unit-card{
    display:none !important;
  }
  .units-page .unit-ticket-grid{
    grid-template-columns:1fr !important;
  }
  .units-page .unit-ticket{
    cursor:pointer !important;
  }
  .unit-reservation-sheet{
    position:fixed !important;
    z-index:5000 !important;
    left:50% !important;
    right:auto !important;
    bottom:max(10px,env(safe-area-inset-bottom)) !important;
    width:min(520px,calc(100vw - 20px)) !important;
    grid-template-columns:1fr !important;
    padding:13px !important;
    border-radius:24px !important;
  }
  .unit-reservation-sheet-copy{
    text-align:right !important;
    padding-inline:2px !important;
  }
  .unit-reservation-sheet-copy strong{
    font-size:20px !important;
  }
  .unit-reservation-sheet-copy small{
    white-space:normal !important;
    line-height:1.55 !important;
  }
  .unit-reservation-sheet .btn{
    width:100% !important;
    min-height:54px !important;
    border-radius:18px !important;
    font-size:15px !important;
  }
  body.has-unit-sheet .unit-booking-main{
    padding-bottom:190px !important;
  }
}

/* Mobile availability dashboard: make it a clean vertical screen, no broken grids or horizontal scroll */
@media(max-width:980px){
  body.availability-dashboard-page,
  body.availability-dashboard-page *{
    max-width:100%;
  }
  body.availability-dashboard-page{
    overflow-x:hidden !important;
    background:#050403 !important;
  }
  .availability-dashboard-page .dashboard-left-tools{
    position:relative !important;
    inset:auto !important;
    transform:none !important;
    display:flex !important;
    width:calc(100% - 24px) !important;
    margin:12px auto 0 !important;
    min-height:66px !important;
    padding:9px 12px !important;
    justify-content:center !important;
    align-items:center !important;
    gap:12px !important;
    border-radius:24px !important;
  }
  .availability-dashboard-page .dashboard-left-tools .dashboard-home-btn{
    position:relative !important;
    inset:auto !important;
    transform:none !important;
    flex:0 0 46px !important;
    width:46px !important;
    height:46px !important;
    border-radius:16px !important;
  }
  .availability-dashboard-page .dashboard-left-tools .dashboard-home-btn span{
    display:none !important;
  }
  .availability-dashboard-page .dashboard-side-logo{
    display:block !important;
    width:min(165px,48vw) !important;
    max-height:52px !important;
    object-fit:contain !important;
  }
  .availability-dashboard-page .availability-main{
    width:100% !important;
    min-height:auto !important;
    padding:10px 10px 28px !important;
    overflow:visible !important;
  }
  .availability-dashboard-page .availability-board{
    width:100% !important;
    min-height:auto !important;
    padding:14px 10px 18px !important;
    border-radius:26px !important;
    overflow:hidden !important;
  }
  .availability-dashboard-page .availability-board::after{
    display:none !important;
  }
  .availability-dashboard-page .availability-topbar{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    padding:0 !important;
    margin:0 0 14px !important;
  }
  .availability-dashboard-page .dashboard-brand-card{
    display:none !important;
  }
  .availability-dashboard-page .live-clock-card{
    order:2 !important;
    display:flex !important;
    justify-self:center !important;
    width:min(320px,100%) !important;
    min-width:0 !important;
    min-height:70px !important;
    padding:10px 14px !important;
    border-radius:20px !important;
  }
  .availability-dashboard-page .clock-row strong{
    font-size:20px !important;
    white-space:nowrap !important;
  }
  .availability-dashboard-page .date-row b,
  .availability-dashboard-page .date-row small{
    font-size:11px !important;
    white-space:nowrap !important;
  }
  .availability-dashboard-page .availability-title-wrap{
    order:1 !important;
    text-align:center !important;
    width:100% !important;
  }
  .availability-dashboard-page .dashboard-kicker{
    font-size:11px !important;
    margin:0 0 4px !important;
  }
  .availability-dashboard-page .availability-title-wrap h1{
    font-size:clamp(28px,8.5vw,44px) !important;
    line-height:1.2 !important;
    margin:0 !important;
  }
  .availability-dashboard-page .availability-title-wrap p{
    font-size:11.5px !important;
    line-height:1.75 !important;
    margin:8px auto 0 !important;
    max-width:100% !important;
  }
  .availability-dashboard-page .availability-live-chip{
    margin:9px auto 0 !important;
    max-width:100% !important;
    width:fit-content !important;
    justify-content:center !important;
    flex-wrap:wrap !important;
  }
  .availability-dashboard-page .availability-content{
    display:flex !important;
    flex-direction:column !important;
    gap:14px !important;
    width:100% !important;
    padding:0 !important;
    margin:0 !important;
    overflow:visible !important;
  }
  .availability-dashboard-page .availability-tower{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    padding:12px !important;
    border-radius:24px !important;
    overflow:hidden !important;
  }
  .availability-dashboard-page .availability-tower-head,
  .availability-dashboard-page .availability-tower-head.compact-tower-head{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:auto !important;
    padding:4px 4px 12px !important;
    text-align:center !important;
  }
  .availability-dashboard-page .tower-head-title{
    justify-content:center !important;
    text-align:center !important;
  }
  .availability-dashboard-page .tower-head-title svg{
    width:28px !important;
    height:28px !important;
  }
  .availability-dashboard-page .tower-head-title h2{
    font-size:26px !important;
    text-align:center !important;
  }
  .availability-dashboard-page .tower-grid-wrap{
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
    width:100% !important;
  }
  .availability-dashboard-page .dashboard-floor{
    display:grid !important;
    grid-template-columns:82px minmax(0,1fr) !important;
    gap:7px !important;
    align-items:stretch !important;
    width:100% !important;
    min-width:0 !important;
  }
  .availability-dashboard-page .floor-number{
    min-height:58px !important;
    height:auto !important;
    border-radius:14px !important;
    font-size:11px !important;
    line-height:1.3 !important;
    display:grid !important;
    place-items:center !important;
    text-align:center !important;
    padding:5px !important;
  }
  .availability-dashboard-page .floor-units.dashboard-floor-units{
    min-width:0 !important;
    width:100% !important;
    min-height:58px !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    grid-auto-rows:minmax(44px,auto) !important;
    gap:6px !important;
    padding:0 !important;
    overflow:visible !important;
  }
  .availability-dashboard-page .floor-units.dashboard-floor-units .dashboard-unit{
    min-width:0 !important;
    min-height:44px !important;
    border-radius:12px !important;
    padding:5px 2px !important;
    display:grid !important;
    place-items:center !important;
  }
  .availability-dashboard-page .floor-units.dashboard-floor-units .dashboard-unit b{
    font-size:13px !important;
    line-height:1 !important;
    white-space:nowrap !important;
    overflow:visible !important;
  }
  .availability-dashboard-page .floor-units.dashboard-floor-units .dashboard-unit small{
    display:none !important;
  }
  .availability-dashboard-page .floor-full .floor-units.dashboard-floor-units{
    padding-top:22px !important;
  }
  .availability-dashboard-page .floor-full-ribbon{
    height:18px !important;
    border-radius:9px !important;
    font-size:9px !important;
  }
}

@media(max-width:430px){
  .availability-dashboard-page .availability-main{
    padding-inline:7px !important;
  }
  .availability-dashboard-page .availability-board{
    padding:12px 7px 16px !important;
    border-radius:22px !important;
  }
  .availability-dashboard-page .dashboard-floor{
    grid-template-columns:66px minmax(0,1fr) !important;
    gap:5px !important;
  }
  .availability-dashboard-page .floor-number{
    min-height:52px !important;
    font-size:9.5px !important;
  }
  .availability-dashboard-page .floor-units.dashboard-floor-units{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    grid-auto-rows:minmax(40px,auto) !important;
    gap:4px !important;
  }
  .availability-dashboard-page .floor-units.dashboard-floor-units .dashboard-unit{
    min-height:40px !important;
    border-radius:10px !important;
  }
  .availability-dashboard-page .floor-units.dashboard-floor-units .dashboard-unit b{
    font-size:11.5px !important;
  }
  .availability-dashboard-page .availability-title-wrap h1{
    font-size:27px !important;
  }
  .availability-dashboard-page .availability-title-wrap p{
    font-size:10.8px !important;
  }
}
