/* Empire City — EPX property page v1 (dark navy · Manrope/Montserrat) — 2026-11-04 */
html.epx-on{--p-n0:#05070d;--p-n1:#080b14;--p-n2:#0f1420;--p-n3:#141a29;--p-gl:rgba(255,255,255,.045);--p-gl2:rgba(255,255,255,.08);--p-ln:rgba(255,255,255,.11);--p-ln2:rgba(255,255,255,.2);--p-tx:#fff;--p-mu:rgba(214,224,238,.72);--p-mu2:rgba(214,224,238,.5);--p-ac:#E6B57E;--p-ac2:#F3CFA0;--p-r:22px;--p-hd:76px;--p-ease:cubic-bezier(.2,.7,.2,1);--p-sans:'Manrope','Vazirmatn','Noto Sans Devanagari',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--p-disp:'Montserrat','Manrope','Vazirmatn','Noto Sans Devanagari',system-ui,sans-serif}
html.epx-on,html.epx-on body{background:var(--p-n1)!important}
html.epx-on body{padding-top:0!important;padding-left:0!important;padding-right:0!important}
html.epx-on #sp-main-body,html.epx-on #sp-section-1,html.epx-on #sp-slider-glav,html.epx-on #sp-vakan,html.epx-on #breadcrumb-holder{display:none!important}

/* ---------- base ---------- */
html.epx-on body #epx-root.epx{position:relative;color:var(--p-tx);background:radial-gradient(1200px 600px at 85% 8%,rgba(230,181,126,.07),transparent 60%),radial-gradient(900px 700px at 0% 40%,rgba(64,110,190,.10),transparent 60%),linear-gradient(180deg,var(--p-n1),var(--p-n0));font-family:var(--p-sans)!important;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow:clip}
html.epx-on body #epx-root.epx *,html.epx-on body #epx-root.epx *::before,html.epx-on body #epx-root.epx *::after{box-sizing:border-box}
html.epx-on body #epx-root.epx *:where(:not(i):not([class*="fa-"]):not(.fa)){font-family:var(--p-sans)!important}
html.epx-on body #epx-root.epx h1,html.epx-on body #epx-root.epx h2,html.epx-on body #epx-root.epx h3,html.epx-on body #epx-root.epx .epx-disp{font-family:var(--p-disp)!important;color:var(--p-tx)!important;text-transform:none;letter-spacing:-.02em!important;margin:0!important;padding:0!important;text-align:start!important;background:none!important;border:0!important}
html.epx-on body #epx-root.epx h1::before,html.epx-on body #epx-root.epx h1::after,html.epx-on body #epx-root.epx h2::before,html.epx-on body #epx-root.epx h2::after,html.epx-on body #epx-root.epx h3::before,html.epx-on body #epx-root.epx h3::after{display:none!important}
html.epx-on body #epx-root.epx p{margin:0 0 1em;color:var(--p-mu)!important;font-family:var(--p-sans)!important;font-size:inherit;line-height:1.7!important;letter-spacing:0!important;text-align:start!important}
html.epx-on body #epx-root.epx p:last-child{margin-bottom:0}
html.epx-on body #epx-root.epx a{color:inherit;text-decoration:none}
html.epx-on body #epx-root.epx img{max-width:100%;display:block;filter:none!important}
html.epx-on body #epx-root .epx-wrap{width:100%;max-width:1320px;margin:0 auto;padding:0 clamp(16px,3.6vw,40px)}
html.epx-on body #epx-root .epx-acc{color:var(--p-ac)!important;background:linear-gradient(100deg,var(--p-ac2),var(--p-ac));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
html.epx-on body #epx-root .epx-glass{background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.03));border:1px solid var(--p-ln);border-radius:var(--p-r);-webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3);box-shadow:0 20px 60px -30px rgba(0,0,0,.7),inset 0 1px 0 rgba(255,255,255,.06)}
html.epx-on body #epx-root .epx-eye{display:inline-flex;align-items:center;gap:14px;font-size:12px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--p-mu)}
html.epx-on body #epx-root .epx-eye::after{content:"";width:56px;height:1px;background:linear-gradient(90deg,var(--p-ac),transparent)}
html.epx-on body #epx-root .epx-eye b{color:var(--p-ac);font-weight:800}

/* buttons */
html.epx-on body #epx-root .epx-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:0 28px;border-radius:14px;border:1px solid transparent!important;font:700 15.5px/1 var(--p-sans)!important;letter-spacing:0!important;text-transform:none!important;cursor:pointer;transition:transform .25s var(--p-ease),background .25s,box-shadow .25s,border-color .25s,color .25s;white-space:nowrap}
html.epx-on body #epx-root .epx-btn svg{width:18px;height:18px;flex:none;transition:transform .25s var(--p-ease)}
html.epx-on body #epx-root .epx-btn:hover svg{transform:translateX(4px)}
html.epx-on[dir=rtl] body #epx-root .epx-btn svg.epx-arr{transform:scaleX(-1)}
html.epx-on[dir=rtl] body #epx-root .epx-btn:hover svg.epx-arr{transform:scaleX(-1) translateX(4px)}
html.epx-on body #epx-root .epx-btn--w{background:#fff!important;color:#080b14!important;box-shadow:0 14px 40px -16px rgba(255,255,255,.45)!important}
html.epx-on body #epx-root .epx-btn--w:hover{background:var(--p-ac2)!important;transform:translateY(-2px)}
html.epx-on body #epx-root .epx-btn--g{background:rgba(255,255,255,.05)!important;color:#fff!important;border-color:var(--p-ln2)!important}
html.epx-on body #epx-root .epx-btn--g:hover{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.4)!important;transform:translateY(-2px)}
html.epx-on body #epx-root .epx-btn--sm{min-height:44px;padding:0 20px;font-size:14px!important;border-radius:12px}
html.epx-on body #epx-root .epx-play{display:inline-flex;align-items:center;gap:14px;color:#fff!important;font-weight:600;font-size:15px;line-height:1.25;cursor:pointer;background:none!important;border:0!important;padding:0}
html.epx-on body #epx-root .epx-play span:first-child{width:56px;height:56px;border-radius:50%;border:1.5px solid rgba(255,255,255,.7)!important;display:grid;place-items:center;transition:background .25s,transform .25s var(--p-ease)}
html.epx-on body #epx-root .epx-play:hover span:first-child{background:rgba(255,255,255,.12)!important;transform:scale(1.06)}
html.epx-on body #epx-root .epx-play svg{width:20px;height:20px}

/* ---------- hero ---------- */
html.epx-on body #epx-root .epx-hero{position:relative;min-height:min(92svh,900px);padding:calc(var(--p-hd) + clamp(24px,3.4vw,48px)) 0 clamp(40px,5vw,72px);display:flex;align-items:center;isolation:isolate}
html.epx-on body #epx-root .epx-hero__bg{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;transform:scale(1.04);animation:epxZoom 16s var(--p-ease) forwards}
html.epx-on body #epx-root .epx-hero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,7,13,.94) 0%,rgba(5,7,13,.78) 42%,rgba(5,7,13,.35) 75%,rgba(5,7,13,.55) 100%),linear-gradient(0deg,var(--p-n1) 0%,rgba(8,11,19,0) 38%),linear-gradient(180deg,rgba(5,7,13,.6),transparent 30%)}
html.epx-on[dir=rtl] body #epx-root .epx-hero__bg::after{background:linear-gradient(-90deg,rgba(5,7,13,.94) 0%,rgba(5,7,13,.78) 42%,rgba(5,7,13,.35) 75%,rgba(5,7,13,.55) 100%),linear-gradient(0deg,var(--p-n1) 0%,rgba(8,11,19,0) 38%)}
@keyframes epxZoom{to{transform:scale(1)}}
html.epx-on body #epx-root .epx-hero__in{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:clamp(28px,4vw,64px);align-items:center}
html.epx-on body #epx-root .epx-bc{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--p-mu2);margin-bottom:26px}
html.epx-on body #epx-root .epx-bc a{color:var(--p-mu)!important;transition:color .2s}
html.epx-on body #epx-root .epx-bc a:hover{color:#fff!important}
html.epx-on body #epx-root .epx-bc i{font-style:normal;opacity:.5}
html.epx-on body #epx-root .epx-hero h1{font-size:clamp(34px,5.2vw,74px)!important;line-height:1.02!important;font-weight:800!important;text-transform:uppercase!important;margin:22px 0 22px!important;max-width:14ch;text-wrap:balance}
html.epx-on body #epx-root .epx-hero h1 .epx-acc{display:block;font-size:.56em;letter-spacing:-.01em;margin-top:.2em;text-transform:none}
html.epx-on body #epx-root .epx-lead{font-size:clamp(16px,1.35vw,19px)!important;color:rgba(232,238,247,.82)!important;max-width:620px;margin-bottom:34px!important}
html.epx-on body #epx-root .epx-stats{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:12px;margin-bottom:36px;max-width:820px}
html.epx-on body #epx-root .epx-stat{padding:18px 18px 16px;border-radius:18px;min-width:0}
html.epx-on body #epx-root .epx-stat__v{font:800 clamp(18px,1.7vw,24px)/1.15 var(--p-disp)!important;color:#fff;letter-spacing:-.01em;word-break:break-word}
html.epx-on body #epx-root .epx-stat__v *{font:inherit!important;color:inherit!important;background:none!important;border:0!important;padding:0!important;margin:0!important;letter-spacing:inherit!important;text-align:start!important}
html.epx-on body #epx-root .epx-stat__v br{display:none}
html.epx-on body #epx-root .epx-stat__v .fontsmall{display:block;font-size:0!important;margin-top:8px!important}
html.epx-on body #epx-root .epx-stat__v .fontsmall select,html.epx-on body #epx-root .epx-stat__v select{font:600 12px/1 var(--p-sans)!important;color:var(--p-mu)!important;background:rgba(255,255,255,.06) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M2 4l3 3 3-3' fill='none' stroke='%23c9d3e2' stroke-width='1.4'/%3E%3C/svg%3E") no-repeat right 8px center/10px!important;border:1px solid var(--p-ln)!important;border-radius:8px!important;padding:6px 26px 6px 10px!important;height:auto!important;width:auto!important;min-width:0!important;-webkit-appearance:none;appearance:none;cursor:pointer;box-shadow:none!important}
html.epx-on body #epx-root .epx-stat__v select option{color:#080b14;background:#fff}
html.epx-on body #epx-root .epx-stat__l{margin-top:8px;font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--p-mu2)}
html.epx-on body #epx-root .epx-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:18px 32px}

/* hero form card */
html.epx-on body #epx-root .epx-fcard{padding:30px 28px 26px}
html.epx-on body #epx-root .epx-chip{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(230,181,126,.12)!important;border:1px solid rgba(230,181,126,.3)!important;color:var(--p-ac2)!important;font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
html.epx-on body #epx-root .epx-chip::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--p-ac);box-shadow:0 0 0 4px rgba(230,181,126,.2);animation:epxPulse 2s infinite}
@keyframes epxPulse{50%{box-shadow:0 0 0 7px rgba(230,181,126,0)}}
html.epx-on body #epx-root .epx-fcard h2,html.epx-on body #epx-root .epx-fcard .epx-ftitle{font-size:26px!important;line-height:1.15!important;font-weight:800!important;margin:16px 0 6px!important;text-transform:none!important}
html.epx-on body #epx-root .epx-fcard .epx-fsub{font-size:14px!important;margin-bottom:18px!important}
html.epx-on body #epx-root .epx-form .form-group{margin:0 0 12px!important;position:relative}
html.epx-on body #epx-root .epx-form label{display:block;font:600 12px/1 var(--p-sans)!important;color:var(--p-mu2)!important;letter-spacing:.04em!important;text-transform:none!important;margin:0 0 7px!important}
html.epx-on body #epx-root .epx-form input[type=text],html.epx-on body #epx-root .epx-form input[type=tel],html.epx-on body #epx-root .epx-form input[type=email],html.epx-on body #epx-root .epx-form textarea,html.epx-on body #callbackModal.epx-modal input[type=text],html.epx-on body #callbackModal.epx-modal input[type=tel],html.epx-on body #callbackModal.epx-modal input[type=email],html.epx-on body #callbackModal.epx-modal textarea{width:100%!important;height:50px!important;padding:0 16px!important;border-radius:12px!important;border:1px solid var(--p-ln)!important;background:rgba(255,255,255,.055)!important;color:#fff!important;font:500 15px/1.3 var(--p-sans)!important;box-shadow:none!important;outline:0!important;transition:border-color .2s,background .2s!important;margin:0!important}
html.epx-on body #epx-root .epx-form textarea,html.epx-on body #callbackModal.epx-modal textarea{height:78px!important;padding:13px 16px!important;resize:vertical}
html.epx-on body #epx-root .epx-form input:focus,html.epx-on body #epx-root .epx-form textarea:focus,html.epx-on body #callbackModal.epx-modal input:focus,html.epx-on body #callbackModal.epx-modal textarea:focus{border-color:rgba(230,181,126,.65)!important;background:rgba(255,255,255,.085)!important}
html.epx-on body #epx-root .epx-form ::placeholder,html.epx-on body #callbackModal.epx-modal ::placeholder{color:rgba(214,224,238,.38)!important;text-transform:none!important;letter-spacing:0!important}
html.epx-on body #epx-root .epx-form input,html.epx-on body #epx-root .epx-form textarea,html.epx-on body #callbackModal.epx-modal input,html.epx-on body #callbackModal.epx-modal textarea{text-transform:none!important;letter-spacing:0!important}
html.epx-on body #epx-root .epx-fcard .epx-ftitle::first-letter,html.epx-on body #callbackModal.epx-modal .modal-title::first-letter{text-transform:uppercase}
html.epx-on body #epx-root .epx-form button[type=submit],html.epx-on body #callbackModal.epx-modal button[type=submit]{width:100%!important;min-height:54px!important;margin-top:6px!important;border:0!important;border-radius:14px!important;background:#fff!important;color:#080b14!important;font:800 15.5px/1 var(--p-sans)!important;letter-spacing:0!important;text-transform:none!important;cursor:pointer;transition:background .25s,transform .25s var(--p-ease)!important;box-shadow:0 14px 40px -18px rgba(255,255,255,.5)!important}
html.epx-on body #epx-root .epx-form button[type=submit]:hover,html.epx-on body #callbackModal.epx-modal button[type=submit]:hover{background:var(--p-ac2)!important;transform:translateY(-2px)}
html.epx-on body #epx-root .epx-fnote{display:flex;align-items:center;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid var(--p-ln);font-size:13.5px;color:var(--p-mu2)}
html.epx-on body #epx-root .epx-fnote a{color:#fff!important;font-weight:700}
html.epx-on body #epx-root .epx-fnote svg{width:16px;height:16px;opacity:.7}

/* ---------- sub-nav ---------- */
html.epx-on body #epx-root .epx-sub{position:sticky;top:var(--p-hd);z-index:40;background:rgba(7,10,18,.82);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--p-ln);border-bottom:1px solid var(--p-ln)}
html.epx-on body #epx-root .epx-sub__in{display:flex;align-items:center;gap:22px;min-height:64px}
html.epx-on body #epx-root .epx-sub__t{font:800 15px/1.2 var(--p-disp)!important;white-space:nowrap;max-width:260px;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;letter-spacing:.01em}
html.epx-on body #epx-root .epx-sub nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;flex:1;min-width:0;-webkit-mask:linear-gradient(90deg,#000 92%,transparent);mask:linear-gradient(90deg,#000 92%,transparent)}
html.epx-on body #epx-root .epx-sub nav::-webkit-scrollbar{display:none}
html.epx-on body #epx-root .epx-sub nav a{flex:none;padding:9px 16px;border-radius:999px;font-size:14px;font-weight:600;color:var(--p-mu)!important;transition:background .2s,color .2s}
html.epx-on body #epx-root .epx-sub nav a:hover{color:#fff!important;background:rgba(255,255,255,.06)!important}
html.epx-on body #epx-root .epx-sub nav a.is-on{background:#fff!important;color:#080b14!important}

/* ---------- sections ---------- */
html.epx-on body #epx-root .epx-sec{position:relative;padding:clamp(64px,8vw,120px) 0;scroll-margin-top:calc(var(--p-hd) + 64px)}
html.epx-on body #epx-root .epx-sec+.epx-sec{padding-top:0}
html.epx-on body #epx-root .epx-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px 48px;align-items:end;margin-bottom:clamp(32px,4vw,56px)}
html.epx-on body #epx-root .epx-head h2,html.epx-on body #epx-root .epx-head .epx-h2{font-size:clamp(30px,4.2vw,58px)!important;line-height:1.04!important;font-weight:800!important;text-transform:uppercase!important;margin-top:18px!important;text-wrap:balance}
html.epx-on body #epx-root .epx-head__aside{font-size:16px!important;max-width:460px;justify-self:end;margin:0!important}
html.epx-on body #epx-root .epx-head--solo{grid-template-columns:1fr}

/* overview rows */
html.epx-on body #epx-root .epx-rows{display:grid;gap:clamp(20px,2.6vw,32px)}
html.epx-on body #epx-root .epx-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-radius:28px;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));border:1px solid var(--p-ln)}
html.epx-on body #epx-root .epx-row__txt{padding:clamp(28px,4vw,56px);display:flex;flex-direction:column;justify-content:center;position:relative}
html.epx-on body #epx-root .epx-row__n{font:800 13px/1 var(--p-disp)!important;color:var(--p-ac);letter-spacing:.2em;margin-bottom:20px}
html.epx-on body #epx-root .epx-row__txt p{font-size:clamp(15.5px,1.2vw,17.5px)!important;color:rgba(226,233,244,.8)!important}
html.epx-on body #epx-root .epx-row__img{position:relative;min-height:340px;overflow:hidden}
html.epx-on body #epx-root .epx-row__img img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;transition:transform 1.2s var(--p-ease)}
html.epx-on body #epx-root .epx-row:hover .epx-row__img img{transform:scale(1.045)}
html.epx-on body #epx-root .epx-row:nth-child(even) .epx-row__img{order:-1}

/* amenities */
html.epx-on body #epx-root .epx-amen{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
html.epx-on body #epx-root .epx-am{display:flex;align-items:center;gap:16px;padding:18px 20px;border-radius:18px;background:rgba(255,255,255,.04)!important;border:1px solid var(--p-ln)!important;font-weight:600;font-size:15.5px;line-height:1.3;color:#fff!important;transition:background .25s,border-color .25s,transform .25s var(--p-ease)}
html.epx-on body #epx-root .epx-am:hover{background:rgba(255,255,255,.075)!important;border-color:rgba(230,181,126,.35)!important;transform:translateY(-3px)}
html.epx-on body #epx-root .epx-am__i{flex:none;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(230,181,126,.22),rgba(230,181,126,.05));border:1px solid rgba(230,181,126,.3);color:var(--p-ac2)}
html.epx-on body #epx-root .epx-am__i i{font-size:18px!important;color:var(--p-ac2)!important;border:0!important;padding:0!important;margin:0!important;width:auto!important;height:auto!important;background:none!important;line-height:1!important}
html.epx-on body #epx-root .epx-more{margin-top:32px;display:flex;flex-wrap:wrap;gap:14px}

/* gallery */
html.epx-on body #epx-root .epx-gal{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(150px,15vw,230px);gap:12px}
html.epx-on body #epx-root .epx-gal a{position:relative;display:block;border-radius:20px;overflow:hidden;background:var(--p-n2)}
html.epx-on body #epx-root .epx-gal a:first-child{grid-column:span 2;grid-row:span 2}
html.epx-on body #epx-root .epx-gal a img{width:100%!important;height:100%!important;object-fit:cover;transition:transform 1s var(--p-ease),opacity .3s}
html.epx-on body #epx-root .epx-gal a:hover img{transform:scale(1.06)}
html.epx-on body #epx-root .epx-gal a::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,7,13,.45),transparent 45%);opacity:.6;transition:opacity .3s}
html.epx-on body #epx-root .epx-gal a:hover::after{opacity:1}
html.epx-on body #epx-root .epx-gal a.is-x{display:none}
html.epx-on body #epx-root .epx-gal__more{position:absolute;inset:0;z-index:2;display:grid;place-items:center;background:rgba(5,7,13,.58);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);font:800 clamp(22px,2.4vw,34px)/1 var(--p-disp)!important;color:#fff}
html.epx-on body #epx-root .epx-gal__more small{display:block;font:600 13px/1 var(--p-sans)!important;color:var(--p-mu);margin-top:8px;text-align:center}

/* layouts */
html.epx-on body #epx-root .epx-lay{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:clamp(28px,4vw,56px);align-items:center}
html.epx-on body #epx-root .epx-lay__txt p{font-size:17px!important}
html.epx-on body #epx-root .epx-lay__ctl{display:flex;gap:10px;margin-top:28px}
html.epx-on body #epx-root .epx-arrow{width:52px;height:52px;border-radius:50%;border:1px solid var(--p-ln2)!important;background:rgba(255,255,255,.04)!important;color:#fff!important;display:grid;place-items:center;cursor:pointer;transition:background .2s,border-color .2s}
html.epx-on body #epx-root .epx-arrow:hover{background:#fff!important;color:#080b14!important;border-color:#fff!important}
html.epx-on body #epx-root .epx-arrow svg{width:18px;height:18px}
html.epx-on[dir=rtl] body #epx-root .epx-arrow svg{transform:scaleX(-1)}
html.epx-on body #epx-root .epx-lay__track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px;scroll-behavior:smooth}
html.epx-on body #epx-root .epx-lay__track::-webkit-scrollbar{display:none}
html.epx-on body #epx-root .epx-plan{flex:0 0 clamp(250px,30vw,380px);scroll-snap-align:start;border-radius:22px;background:#f4f1ec;padding:18px;display:flex;flex-direction:column;gap:12px;transition:transform .3s var(--p-ease)}
html.epx-on body #epx-root .epx-plan:hover{transform:translateY(-4px)}
html.epx-on body #epx-root .epx-plan__img{height:clamp(260px,30vw,400px);display:grid;place-items:center;background:#fff;border-radius:14px;overflow:hidden}
html.epx-on body #epx-root .epx-plan__img img{max-height:100%!important;width:auto!important;object-fit:contain;padding:10px}
html.epx-on body #epx-root .epx-plan__cap{display:flex;justify-content:space-between;align-items:center;color:#080b14;font-weight:700;font-size:14px}
html.epx-on body #epx-root .epx-plan__cap span:last-child{width:34px;height:34px;border-radius:50%;background:#080b14;color:#fff;display:grid;place-items:center}
html.epx-on body #epx-root .epx-plan__cap svg{width:14px;height:14px}

/* area & developer cards */
html.epx-on body #epx-root .epx-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2vw,24px)}
html.epx-on body #epx-root .epx-card{position:relative;display:flex;flex-direction:column;border-radius:28px;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.02));border:1px solid var(--p-ln)}
html.epx-on body #epx-root .epx-card__img{position:relative;aspect-ratio:16/10;overflow:hidden}
html.epx-on body #epx-root .epx-card__img img{width:100%!important;height:100%!important;object-fit:cover;transition:transform 1.2s var(--p-ease)}
html.epx-on body #epx-root .epx-card:hover .epx-card__img img{transform:scale(1.05)}
html.epx-on body #epx-root .epx-card__img::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,11,19,.85),transparent 55%)}
html.epx-on body #epx-root .epx-card__tag{position:absolute;z-index:2;top:18px;inset-inline-start:18px;padding:8px 14px;border-radius:999px;background:rgba(7,10,18,.6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--p-ln2);font-size:11.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
html.epx-on body #epx-root .epx-card__tag h2{font:inherit!important;font-family:var(--p-sans)!important;letter-spacing:inherit!important;text-transform:inherit!important;color:#fff!important}
html.epx-on body #epx-root .epx-card__body{padding:0 clamp(24px,3vw,40px) clamp(28px,3vw,40px);margin-top:-46px;position:relative;z-index:2;display:flex;flex-direction:column;flex:1}
html.epx-on body #epx-root .epx-card__body h3{font-size:clamp(26px,2.6vw,38px)!important;line-height:1.08!important;font-weight:800!important;margin-bottom:16px!important}
html.epx-on body #epx-root .epx-card__body p{flex:1}
html.epx-on body #epx-root .epx-card__body .epx-btn{align-self:flex-start;margin-top:22px}

/* location / map */
html.epx-on body #epx-root .epx-loc{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:clamp(16px,2vw,24px)}
html.epx-on body #epx-root .epx-map{position:relative;border-radius:28px;overflow:hidden;min-height:clamp(380px,40vw,560px);background:var(--p-n2);border:1px solid var(--p-ln);box-shadow:0 30px 80px -40px rgba(0,0,0,.8)}
html.epx-on body #epx-root .epx-map .video-container{position:absolute!important;inset:0!important;padding:0!important;height:auto!important;margin:0!important}
html.epx-on body #epx-root .epx-map iframe{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important;transition:filter .5s}
html.epx-on body #epx-root .epx-map.is-dark iframe{filter:invert(.92) hue-rotate(182deg) saturate(.75) brightness(.92) contrast(.92)}
html.epx-on body #epx-root .epx-map::after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),inset 0 -90px 90px -60px rgba(5,7,13,.7);border-radius:inherit}
html.epx-on body #epx-root .epx-map__pin{position:absolute;z-index:3;top:18px;inset-inline-start:18px;display:flex;align-items:center;gap:12px;padding:10px 16px 10px 10px;border-radius:16px;pointer-events:none}
html.epx-on body #epx-root .epx-map__pin span:first-child{width:38px;height:38px;border-radius:12px;background:var(--p-ac);color:#080b14;display:grid;place-items:center}
html.epx-on body #epx-root .epx-map__pin svg{width:18px;height:18px}
html.epx-on body #epx-root .epx-map__pin b{display:block;font-size:14.5px;line-height:1.2}
html.epx-on body #epx-root .epx-map__pin small{display:block;font-size:12.5px;color:var(--p-mu)}
html.epx-on body #epx-root .epx-map__tg{position:absolute;z-index:3;bottom:18px;inset-inline-end:18px;display:flex;padding:4px;border-radius:12px;gap:4px}
html.epx-on body #epx-root .epx-map__tg button{border:0!important;background:transparent!important;color:var(--p-mu)!important;font:700 12.5px/1 var(--p-sans)!important;padding:9px 14px;border-radius:9px;cursor:pointer;transition:background .2s,color .2s}
html.epx-on body #epx-root .epx-map__tg button.is-on{background:#fff!important;color:#080b14!important}
html.epx-on body #epx-root .epx-locc{padding:clamp(26px,3vw,40px);display:flex;flex-direction:column}
html.epx-on body #epx-root .epx-locc h3{font-size:clamp(24px,2.2vw,32px)!important;line-height:1.1!important;font-weight:800!important;margin:16px 0 8px!important}
html.epx-on body #epx-root .epx-locc>p{font-size:15px!important}
html.epx-on body #epx-root .epx-facts{list-style:none;margin:22px 0 26px!important;padding:0!important;display:grid;gap:0}
html.epx-on body #epx-root .epx-facts li{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px dashed var(--p-ln);font-size:14.5px;list-style:none!important;margin:0!important}
html.epx-on body #epx-root .epx-facts li::before{display:none!important}
html.epx-on body #epx-root .epx-facts li span{color:var(--p-mu2)}
html.epx-on body #epx-root .epx-facts li b{color:#fff;text-align:end;font-weight:700}
html.epx-on body #epx-root .epx-locc .epx-btns{display:grid;gap:10px;margin-top:auto}
html.epx-on body #epx-root .epx-locc .epx-btn{width:100%}

/* final CTA */
html.epx-on body #epx-root .epx-cta{position:relative;overflow:hidden;border-radius:32px;padding:clamp(36px,5vw,72px);display:grid;grid-template-columns:minmax(0,1.3fr) auto;gap:32px;align-items:center;background:radial-gradient(600px 300px at 100% 0%,rgba(230,181,126,.22),transparent 60%),radial-gradient(500px 300px at 0% 100%,rgba(70,120,210,.2),transparent 60%),linear-gradient(135deg,var(--p-n3),var(--p-n2));border:1px solid var(--p-ln)}
html.epx-on body #epx-root .epx-cta .epx-disp{font-size:clamp(28px,3.6vw,50px);line-height:1.05;font-weight:800;text-transform:uppercase;margin:16px 0 14px!important;display:block}
html.epx-on body #epx-root .epx-cta p{max-width:560px}
html.epx-on body #epx-root .epx-cta__b{display:flex;flex-direction:column;gap:12px;min-width:260px}

/* reveal */
html.epx-anim body #epx-root .epx-rv{opacity:0;transform:translateY(28px);transition:opacity .9s var(--p-ease),transform .9s var(--p-ease)}
html.epx-anim body #epx-root .epx-rv.is-in{opacity:1;transform:none}
html.epx-on body #epx-root .epx-hero .epx-in{animation:epxUp .9s var(--p-ease) both}
html.epx-on body #epx-root .epx-hero .epx-in:nth-child(2){animation-delay:.06s}html.epx-on body #epx-root .epx-hero .epx-in:nth-child(3){animation-delay:.12s}html.epx-on body #epx-root .epx-hero .epx-in:nth-child(4){animation-delay:.18s}html.epx-on body #epx-root .epx-hero .epx-in:nth-child(5){animation-delay:.24s}html.epx-on body #epx-root .epx-hero .epx-in:nth-child(6){animation-delay:.3s}
@keyframes epxUp{from{opacity:0;transform:translateY(24px)}}
@media (prefers-reduced-motion:reduce){html.epx-on body #epx-root.epx *{animation:none!important;transition:none!important}html.epx-anim body #epx-root .epx-rv{opacity:1;transform:none}}

/* modal */
html.epx-on body #callbackModal.epx-modal .modal-content{background:linear-gradient(180deg,var(--p-n3),var(--p-n2))!important;border:1px solid var(--p-ln)!important;border-radius:24px!important;color:#fff!important;box-shadow:0 40px 120px -30px rgba(0,0,0,.8)!important;font-family:var(--p-sans)!important}
html.epx-on body #callbackModal.epx-modal .modal-header{border:0!important;padding:26px 28px 6px!important;background:none!important}
html.epx-on body #callbackModal.epx-modal .modal-title{font:800 24px/1.15 var(--p-disp)!important;color:#fff!important;text-transform:none!important;letter-spacing:-.01em!important}
html.epx-on body #callbackModal.epx-modal .modal-body{padding:14px 28px 28px!important;background:none!important}
html.epx-on body #callbackModal.epx-modal .close{background:rgba(255,255,255,.08)!important;border:1px solid var(--p-ln)!important;border-radius:50%!important;width:38px!important;height:38px!important;color:#fff!important;opacity:1!important;font-size:22px!important;line-height:1!important;padding:0!important;text-shadow:none!important}
html.epx-on body #callbackModal.epx-modal label{display:block;font:600 12px/1 var(--p-sans)!important;color:var(--p-mu2)!important;margin:0 0 7px!important;text-transform:none!important;letter-spacing:.04em!important}
html.epx-on body #callbackModal.epx-modal .form-group{margin:0 0 12px!important}
html.epx-on body #callbackModal.epx-modal .modal-footer{background:none!important;border:0!important;padding:0 28px 28px!important;display:block!important}
html.epx-on body #callbackModal.epx-modal .modal-footer [data-dismiss],html.epx-on body #callbackModal.epx-modal .modal-footer .btn-secondary{display:none!important}
.modal-backdrop.show{background:#030710!important;opacity:.72!important}

/* ---------- responsive ---------- */
@media (max-width:1199px){
 html.epx-on body #epx-root .epx-hero__in{grid-template-columns:minmax(0,1fr) 380px}
 html.epx-on body #epx-root .epx-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:991px){
 html.epx-on body #epx-root .epx-hero{min-height:0}
 html.epx-on body #epx-root .epx-hero__in{grid-template-columns:1fr}
 html.epx-on body #epx-root .epx-hero h1{max-width:none}
 html.epx-on body #epx-root .epx-fcard{max-width:620px}
 html.epx-on body #epx-root .epx-stats{grid-template-columns:repeat(var(--n,4),minmax(0,1fr))}
 html.epx-on body #epx-root .epx-head{grid-template-columns:1fr}
 html.epx-on body #epx-root .epx-head__aside{justify-self:start}
 html.epx-on body #epx-root .epx-row{grid-template-columns:1fr}
 html.epx-on body #epx-root .epx-row:nth-child(even) .epx-row__img{order:0}
 html.epx-on body #epx-root .epx-row__img{min-height:0;aspect-ratio:16/10;order:-1!important}
 html.epx-on body #epx-root .epx-lay{grid-template-columns:1fr}
 html.epx-on body #epx-root .epx-duo{grid-template-columns:1fr}
 html.epx-on body #epx-root .epx-loc{grid-template-columns:1fr}
 html.epx-on body #epx-root .epx-cta{grid-template-columns:1fr}
 html.epx-on body #epx-root .epx-cta__b{flex-direction:row;flex-wrap:wrap;min-width:0}
 html.epx-on body #epx-root .epx-sub__t{display:none}
}
@media (max-width:767px){
 html.epx-on body #epx-root .epx-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
 html.epx-on body #epx-root .epx-gal{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:clamp(120px,32vw,200px)}
 html.epx-on body #epx-root .epx-sub .epx-btn{display:none}
 html.epx-on body #epx-root .epx-sub__in{min-height:56px}
 html.epx-on body #epx-root .epx-amen{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 html.epx-on body #epx-root .epx-am{flex-direction:column;align-items:flex-start;gap:12px;padding:16px;font-size:14px}
 html.epx-on body #epx-root .epx-am__i{width:42px;height:42px;border-radius:12px}
 html.epx-on body #epx-root .epx-hero h1 .epx-acc{font-size:.6em}
}
@media (max-width:480px){
 html.epx-on body #epx-root.epx{font-size:15px}
 html.epx-on body #epx-root .epx-stat{padding:14px 14px 12px;border-radius:14px}
 html.epx-on body #epx-root .epx-ctas{gap:16px}
 html.epx-on body #epx-root .epx-ctas .epx-btn{width:100%}
 html.epx-on body #epx-root .epx-fcard{padding:24px 18px 20px}
 html.epx-on body #epx-root .epx-am{padding:14px 16px}
 html.epx-on body #epx-root .epx-cta__b .epx-btn{width:100%}
 html.epx-on body #epx-root .epx-map{min-height:340px;border-radius:22px}
 html.epx-on body #epx-root .epx-map__tg button{padding:8px 10px}
 html.epx-on body #epx-root .epx-row,html.epx-on body #epx-root .epx-card{border-radius:22px}
}
@media (max-width:360px){html.epx-on body #epx-root .epx-stats{grid-template-columns:1fr}html.epx-on body #epx-root .epx-btn{padding:0 18px}}
