/* Blog v2 blocks and server-rendered blog pages (contract 2.3, 4.7). base.css styles the article, cards and listing
   cards (.ja-*, .jr-*, .tk-*); this file adds the ngb- blocks, the pager, series nav, preview banner and the tools. */
/* the tools are rendered hidden and shown by blog-blocks.js; base.css gives .ja-acts, .ja-fb, .ja-fb div and .btn a display,
   which would beat the browser's own [hidden] rule and leave dead buttons on screen */
#ngPost [hidden],.jr [hidden]{display:none!important}
.ngb-a{display:block;position:relative;top:-110px;visibility:hidden}
.ja-b h3[id],.ja-b h4[id],.ngb-fns li,.ja-b [id^="fnref-"]{scroll-margin-top:110px}
.ja-b h4{font-size:17px;color:var(--ink);margin:22px 0 6px}
.ja-b mark{background:#FDF0C8;color:inherit;padding:0 2px;border-radius:3px}
.ja-b code{font-size:.9em;background:var(--sand);border-radius:5px;padding:1px 5px}
.ja-b sub,.ja-b sup{line-height:0}
.ja-b sup.fn a{text-decoration:none;font-weight:600;font-size:.78em;padding:0 1px}
.ja-b blockquote.is-center{text-align:center;border-left:0;padding-left:0}
.ngb-q p{margin:0}
.ngb-q cite{display:block;margin-top:10px;font-size:.62em;font-style:normal;font-weight:500;color:var(--mute);letter-spacing:0}
.ngb-q cite:before{content:"— "}
.ngb-hr{border:0;margin:38px auto;width:120px;height:4px;background:radial-gradient(circle,var(--rule) 2px,transparent 2.5px) 0 0/20px 4px repeat-x}
.ngb-check{list-style:none;padding-left:0!important}
.ngb-check li{position:relative;padding-left:30px}
.ngb-check li:before{content:"";position:absolute;left:0;top:.35em;width:18px;height:18px;border:2px solid var(--mute);border-radius:5px;box-sizing:border-box}
.ngb-check li[data-checked="1"]:before{background:var(--act);border-color:var(--act)}
.ngb-check li[data-checked="1"]:after{content:"";position:absolute;left:6px;top:calc(.35em + 3px);width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.ja-b ol ol,.ja-b ul ul,.ja-b ol ul,.ja-b ul ol{margin-top:8px}

/* images, galleries */
.ja-b figure figcaption,.ngb-cap{font-size:13px;line-height:1.5;color:var(--mute);margin-top:8px}
.ngb-credit a{color:var(--mute)}
.ngb-img.has-border img{border:1px solid var(--rule)}
.ngb-img.is-wide{margin-left:max(-8vw,-110px);margin-right:max(-8vw,-110px)}
.ngb-img.is-full{width:100vw;max-width:1200px;margin-left:50%;transform:translateX(-50%)}
.ngb-img.is-full img{border-radius:0}
.ngb-img.is-full figcaption{padding:0 16px}
[data-zoom]{cursor:zoom-in}
.ngb-gal ul,.ngb-slider ul{list-style:none;padding:0!important;margin:0}
.ngb-gal ul{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}
.ngb-gal.c2 ul{grid-template-columns:repeat(2,minmax(0,1fr))}
.ngb-gal.c4 ul{grid-template-columns:repeat(4,minmax(0,1fr))}
.ngb-gal li figure{margin:0}
.ngb-gal.is-grid img{aspect-ratio:4/3;object-fit:cover;height:auto}
.ngb-gal.is-masonry ul{display:block;columns:3;column-gap:10px}
.ngb-gal.is-masonry.c2 ul{columns:2}
.ngb-gal.is-masonry.c4 ul{columns:4}
.ngb-gal.is-masonry li{break-inside:avoid;margin-bottom:10px}
.ngb-gal img{border-radius:10px!important}
.ngb-slider{position:relative;margin:26px 0}
.ngb-slider ul{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.ngb-slider li{flex:0 0 min(86%,560px);scroll-snap-align:start}
.ngb-slider li figure{margin:0}
.ngb-slider img{aspect-ratio:3/2;object-fit:cover;height:auto}
.ngb-sl-b{position:absolute;top:calc(50% - 40px);width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.94);color:var(--ink);font:700 18px Poppins,sans-serif;box-shadow:0 6px 18px -6px rgba(11,42,74,.5);cursor:pointer;z-index:2}
.ngb-sl-b.p{left:8px}.ngb-sl-b.n{right:8px}
.ngb-sl-b[disabled]{opacity:0;pointer-events:none}
.ngb-ba{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:26px 0;position:relative}
.ngb-ba figure{margin:0!important;position:relative}
.ngb-ba figcaption{position:absolute;top:10px;left:10px;margin:0!important;background:rgba(11,42,74,.82);color:#fff!important;font-weight:600;font-size:12px!important;padding:4px 10px;border-radius:99px}
.ngb-ba .ngb-cap{grid-column:1/-1}
.ngb-ba.is-live{display:block}
.ngb-ba.is-live figure+figure{position:absolute;inset:0 0 auto 0;clip-path:inset(0 0 0 var(--ba,50%))}
.ngb-ba.is-live figure+figure figcaption{left:auto;right:10px}
.ngb-ba.is-live img{display:block}
.ngb-ba-r{position:absolute;left:0;right:0;top:0;height:var(--h,100%);width:100%;margin:0;opacity:0;cursor:ew-resize;z-index:3}
.ngb-ba-l{position:absolute;top:0;height:var(--h,100%);left:var(--ba,50%);width:3px;margin-left:-1.5px;background:#fff;box-shadow:0 0 0 1px rgba(11,42,74,.3);pointer-events:none;z-index:2}
.ngb-ba-l:after{content:"⇆";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:36px;border-radius:50%;background:#fff;color:var(--ink);display:grid;place-items:center;font-weight:700}
.ngb-ba-r:focus-visible+.ngb-ba-l{box-shadow:0 0 0 3px var(--blue)}

/* video, audio, files */
.ngb-vid-f{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;padding:0;border-radius:14px;overflow:hidden;background:var(--ink);cursor:pointer;color:#fff}
.ngb-vid-f img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:0!important}
.ngb-vid-p{position:absolute;top:50%;left:50%;width:68px;height:48px;margin:-24px 0 0 -34px;border-radius:14px;background:#E8341C;box-shadow:0 8px 24px -8px rgba(0,0,0,.6)}
.ngb-vid-p:after{content:"";position:absolute;left:27px;top:14px;border:10px solid transparent;border-left:17px solid #fff;border-right:0}
.ngb-vid-f:hover .ngb-vid-p,.ngb-vid-f:focus-visible .ngb-vid-p{background:#C4200D}
.ngb-vid-t{position:absolute;left:0;right:0;bottom:0;padding:28px 14px 12px;text-align:left;font:600 14px/1.35 Poppins,sans-serif;background:linear-gradient(transparent,rgba(7,28,51,.85))}
.ngb-vid iframe{display:block;width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:14px;background:#000}
.ngb-tr{margin:-12px 0 24px;font-size:15px;border:1px solid var(--rule);border-radius:12px;padding:10px 14px;background:#fff}
.ngb-tr summary{cursor:pointer;font-weight:600;color:var(--ink)}
.ngb-tr p{margin:10px 0 0}
.ngb-aud{background:#fff;border:1px solid var(--rule);border-radius:14px;padding:14px 16px}
.ngb-aud figcaption{margin:0 0 8px!important;font-weight:600;color:var(--ink)!important;font-size:15px!important}
.ngb-aud audio{width:100%}
.ngb-file{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;background:#fff;border:1px solid var(--rule);border-radius:14px;padding:12px 16px 12px 46px;position:relative;font-size:15px}
.ngb-file:before{content:"";position:absolute;left:16px;top:14px;width:18px;height:22px;border:2px solid var(--blue);border-radius:3px 9px 3px 3px;box-sizing:border-box}
.ngb-file a{font-weight:600}
.ngb-file small{color:var(--mute);font-size:12.5px}

/* tables, buttons, callouts, faq, code, embeds */
.ngb-tbl{margin:24px 0}
.ngb-tbl caption{caption-side:bottom;text-align:left;font-size:13px;color:var(--mute);padding:8px 12px}
.ngb-tbl td,.ngb-tbl th{vertical-align:top}
.ngb-btn{margin:24px 0}
.ja-b .btn,.ja-cta .btn{font-size:15px}
.ja-b .ngb-co{border-left:4px solid #3BB54A}
.ngb-co.is-tip{background:#EEF7F0;border-color:#3BB54A}
.ja-b .ngb-co.is-info{background:#EEF4FB;border-color:var(--blue)}
.ja-b .ngb-co.is-info b{color:#123E6E}
.ja-b .ngb-co.is-warn{background:#FDF4E7;border-color:#E8891D}
.ja-b .ngb-co.is-warn b{color:#7A4508}
.ja-b .ngb-co.is-law{background:#F3F0FA;border-color:#6A55B4}
.ja-b .ngb-co.is-law b{color:#3F2F7E}
.ngb-faq{margin:34px 0}
.ngb-faq-i{border-top:1px solid var(--rule);padding:14px 0 4px}
.ngb-faq-i h3{margin:0 0 6px!important;font-size:17px!important}
.ngb-faq-i p{margin:0 0 10px}
.ngb-code{background:#0B2A4A;color:#E6EEF7;border-radius:12px;padding:14px 16px;overflow:auto;font-size:14px;line-height:1.55;margin:24px 0}
.ngb-code code{background:none;padding:0;font-size:inherit;color:inherit;white-space:pre}
.ngb-emb{margin:24px 0}
.ja-b .ngb-emb-a{display:grid;gap:2px;text-decoration:none;background:#fff;border:1px solid var(--rule);border-radius:14px;padding:14px 16px 14px 52px;position:relative;color:var(--ink)}
.ngb-emb-a:before{content:"↗";position:absolute;left:16px;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:13px}
.ngb-emb-a span{font-size:13px;color:var(--mute);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ngb-emb-a:hover{border-color:var(--ink)}

/* footnotes, contents */
.ngb-fns{margin-top:34px;padding-top:14px;border-top:1px solid var(--rule);font-size:14px;line-height:1.6;color:#3A4A5C}
.ngb-fns ol{padding-left:22px}
.ngb-fns li.on{background:#FDF0C8;border-radius:6px}
.ja-b .ngb-fn-back{text-decoration:none}
.ngb-toc{background:#fff;border:1px solid var(--rule);border-radius:14px;padding:14px 18px;margin:24px 0;font-size:15px}
.ngb-toc b{display:block;color:var(--ink);margin-bottom:6px}
.ngb-toc ol{margin:0!important;gap:4px!important}
.ngb-toc li.l3{margin-left:16px;list-style:circle}

/* listings, price check, calculators, maps, ask */
.ngb-listings{margin:34px 0}
.ngb-listings h2{margin-top:0!important}
.ja-b .ngb-lgrid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}
.ja-b .ngb-l a{text-decoration:none}
.ngb-l{position:relative}
.ngb-sold{position:absolute;top:14px;right:-6px;z-index:3;background:#C4200D;color:#fff;font:700 12px Poppins,sans-serif;letter-spacing:.06em;text-transform:uppercase;padding:5px 12px;border-radius:4px 0 0 4px;box-shadow:0 4px 10px -4px rgba(0,0,0,.5)}
.ngb-l.is-sold .tk-img img{filter:grayscale(.6);opacity:.85}
.ngb-sold-l{font-size:13px;margin-top:8px}
.ngb-l.is-off{display:grid;place-items:center;min-height:120px;padding:18px;border:1px dashed var(--rule);border-radius:20px;background:#FBF9F4;text-align:center;font-size:14px;color:var(--mute)}
.ngb-note{font-size:13px;color:var(--mute);margin-top:8px}
.ngb-price{background:#fff;border:1px solid var(--rule);border-radius:16px;padding:18px 20px;margin:28px 0;font-size:15px;line-height:1.55}
.ngb-price-t{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;margin:0 0 6px}
.ngb-price-t b{font-size:18px;color:var(--ink)}
.ngb-price-t small{font-size:12.5px;color:var(--mute)}
.ngb-pr{padding:10px 0;border-top:1px solid #F0ECE3}
.ngb-pr p,.ngb-pr ul{margin:0 0 6px!important}
.ngb-pr ul{gap:2px!important}
.ngb-pr-h{font-weight:700;color:var(--ink);font-size:14px;margin:4px 0!important}
.ngb-pr-n{font-size:13px;color:var(--mute)}
.ngb-price .ngb-src{font-size:13px;color:var(--mute);padding-left:20px;margin:0;display:grid;gap:2px}
.ngb-src a{color:var(--mute)!important}
.ngb-calc{background:var(--cream);border:1px solid var(--rule);border-radius:16px;padding:18px 20px;margin:28px 0;font-size:15px}
.ngb-calc-t{margin:0 0 10px}
.ngb-calc-t b{font-size:17px;color:var(--ink)}
.ngb-calc-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.ngb-calc-in label{display:grid;gap:4px;font-size:12.5px;font-weight:600;color:var(--mute)}
.ngb-calc-in input[type=number]{font:600 16px Poppins,sans-serif;color:var(--ink);border:1px solid var(--rule);border-radius:10px;padding:9px 10px;background:#fff;width:100%;box-sizing:border-box}
.ngb-calc-in .ngb-calc-ck{display:flex;align-items:center;gap:8px;grid-column:1/-1}
.ngb-calc-ck input{width:18px;height:18px;accent-color:var(--act)}
.ngb-calc-r{margin-top:14px}
.ngb-calc-o{margin:0!important;font-size:15px}
.ngb-calc-o output{font-size:26px;font-weight:800;color:var(--ink);letter-spacing:-.02em}
.ngb-calc-s{margin:2px 0 0!important;font-size:14px;color:#3A4A5C}
.ngb-calc-s output{font-weight:700;color:var(--ink)}
.ngb-calc-d{font-size:12.5px;color:var(--mute);margin:10px 0 0!important}
.ngb-map img{aspect-ratio:3/2;height:auto;object-fit:cover;background:#071C33}
.ngb-map figcaption a{color:var(--mute)}
.ngb-ask{margin:22px 0}
.ngb-ask .btn{height:auto;min-height:46px;padding:10px 20px;white-space:normal;text-align:left}

/* MahaRERA (Order 46C/2025): number, website and agent number at least as large as any contact detail in the post */
.ngb-rera{display:flex;flex-direction:row-reverse;justify-content:space-between;gap:14px;align-items:flex-start;background:#fff;border:2px solid var(--ink);border-radius:14px;padding:14px 16px;margin:0 0 26px}
.ngb-rera-qr{width:110px!important;height:110px;object-fit:contain;flex:none;border-radius:6px!important;background:#fff}
.ngb-rera-t{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}   /* the website at 1.125rem is wider than a phone's text column */
.ngb-rera-t p{margin:0 0 4px!important;font-size:15px;line-height:1.45}
.ngb-rera-p{font-weight:700;color:var(--ink)}
.ngb-rera-no,.ngb-rera-web,.ngb-rera-ag{font-size:1.125rem;font-weight:700}
.ja-b .ngb-rera-no,.ja-b .ngb-rera-web,.ja-b .ngb-rera-ag{font-size:max(1.125rem,1em);color:var(--ink)}
.ngb-rera-v{font-size:13px!important;color:var(--mute)}
#ngPost>.ngb-rera{margin:0 0 22px}
#ngPost>.ngb-rera a{color:var(--ink)}
.ja-b a[href^="tel:"],.ja-b a[href^="https://wa.me"],.ja-cta a,.ja-b .btn{font-size:min(1em,1.125rem)}

/* facts, synced */
.ngb-fact small{display:block;margin-top:4px;font-size:12.5px;color:var(--mute);line-height:1.45}
.ngb-miss{border:1px dashed #E8891D;border-radius:10px;padding:8px 12px;font-size:13px;color:#7A4508;background:#FDF4E7}

/* pages: pager, series, archive head, filters as links, tags, preview */
.ngb-pager{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:34px 0 10px;font-size:14px;color:var(--mute)}
.ngb-pager a{font-weight:600;color:var(--ink);border:1px solid var(--rule);background:#fff;border-radius:99px;padding:9px 16px}
.ngb-pager a:hover{border-color:var(--ink)}
.ngb-series{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;background:#fff;border:1px solid var(--rule);border-radius:14px;padding:12px 16px;margin:0 0 26px;font-size:14px;color:var(--mute)}
.ngb-series a{color:var(--blue);font-weight:600}
.ngb-series span{margin-right:auto}
.ngb-arch h1{font-size:clamp(34px,5vw,60px)}
.ngb-kick{font-size:12px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--act)!important}
.ngb-auth-ph{width:96px;height:96px;border-radius:50%;object-fit:cover}
.ngb-role{font-weight:600;color:var(--ink)!important}
.ngb-links{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.ngb-links a{color:var(--blue);font-weight:600;font-size:14px}
.ngb-fil a{border:1px solid var(--rule);background:#fff;border-radius:99px;padding:8px 15px;font:600 14px Poppins,sans-serif;color:var(--ink);display:inline-flex;gap:7px;align-items:center}
.ngb-fil a em{font-style:normal;font-size:12px;color:var(--mute)}
.ngb-fil a:hover{border-color:var(--ink)}
.ngb-fil a.on{background:var(--ink);border-color:var(--ink);color:#fff}
.ngb-fil a.on em{color:#86E494}
.ngb-tagbox{margin:40px 0 10px}
.ngb-tagbox h2{font-size:18px;color:var(--ink);margin-bottom:10px}
.jr-tags a{border:1px solid var(--rule);background:#fff;border-radius:99px;padding:6px 12px;font:500 13px Poppins,sans-serif;color:var(--ink)}
.jr-tags a:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.jr-bar small{font-size:13px}
.ngb-prev{position:sticky;top:0;z-index:70;margin:0;background:#E8891D;color:#fff;text-align:center;font:700 14px Poppins,sans-serif;padding:8px 16px}
.ngb-av{overflow:hidden;padding:0}
.ngb-av img{width:100%;height:100%;object-fit:cover}
.ja-auth small{color:var(--mute);font-size:12.5px}

/* lightbox */
.ngb-lb{position:fixed;inset:0;z-index:200;background:rgba(7,28,51,.92);display:grid;place-items:center;padding:16px;cursor:zoom-out;border:0;margin:0;width:100%;height:100%;max-width:none;max-height:none}
.ngb-lb::backdrop{background:rgba(7,28,51,.92)}
.ngb-lb img{max-width:100%;max-height:calc(100vh - 80px);object-fit:contain;border-radius:8px}
.ngb-lb p{color:#C6D4E4;font-size:13px;margin:8px 0 0;text-align:center;max-width:70ch}
.ngb-lb button{position:absolute;top:12px;right:12px;width:44px;height:44px;border-radius:50%;border:0;background:#fff;color:var(--ink);font-size:20px;cursor:pointer}

/* two columns (contents aside on the left): wide and full photos grow to the right only, never over the sticky aside;
   from 1180px the page margin leaves room for a little more than the column */
@media (min-width:1021px){
  .ngb-img.is-wide,.ngb-img.is-full{width:auto;max-width:none;margin-left:0;margin-right:0;transform:none}
  .ngb-img.is-full img{border-radius:14px}
  .ngb-img.is-full figcaption{padding:0}
}
@media (min-width:1180px){.ngb-img.is-wide,.ngb-img.is-full{margin-right:-70px}}
@media (max-width:640px){
  .ngb-img.is-wide{margin-left:0;margin-right:0}
  .ngb-gal ul,.ngb-gal.c4 ul{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ngb-gal.is-masonry ul,.ngb-gal.is-masonry.c4 ul{columns:2}
  .ja-b .ngb-lgrid{grid-template-columns:minmax(0,1fr)}
  .ngb-ba{grid-template-columns:1fr}
  .ngb-rera{padding:12px}
  .ngb-rera-qr{width:84px!important;height:84px}
  .ngb-pager{font-size:13px}
  .ngb-pager a{padding:8px 12px}
}
@media (prefers-reduced-motion:reduce){.ngb-slider ul{scroll-behavior:auto}}
/* /blog: the reader's own shelves (blog-blocks.js, from this browser's saved and reading history) */
.ngb-shelves{display:grid;gap:10px;margin-bottom:26px}
.ngb-shelves .jr-shelf{margin-bottom:0}
@media print{.ja-acts,.ja-toc,.ja-fb,.ja-share,.post-rel,.g-prog,.ngb-sl-b,.ngb-ask{display:none!important}.ja-g{display:block}}
