/* WS-D3 location + area pages family CSS (2026-10-30). Uses --jv-* tokens from jeevisha-ui.css. */

/* ===== Location pages (JSEO-47) ===== */
.jv-d3 .jv-hero { padding: clamp(40px, 6vw, 80px) 0 clamp(40px, 6vw, 72px); text-align: left; }
@media (min-width: 1200px) { .jv-d3 .jv-hero.pcl-hero { padding-top: 180px !important; } }
.jv-d3 .jv-narrow-left { max-width: 820px; }
.jv-d3 .jv-hero .jv-h1 { color: var(--jv-blue); }
.jv-d3 .jv-hero .jv-lead { margin: 0 0 1.6rem; }
.jv-d3 .jv-btn { text-decoration: none; }
.jv-d3 .jv-split--top { align-items: start; }
.jv-d3 .jv-prose h2:first-child { margin-top: 0; }
.jv-d3 .jv-d3-media > * + * { margin-top: 16px; }
.jv-d3 .jv-d3-photo img, .jv-d3 .jv-d3-doc img { width: 100%; height: auto; border-radius: var(--jv-radius); box-shadow: var(--jv-shadow); margin: 0; display: block; }
.jv-d3 .jv-d3-doc { max-width: 460px; }
.jv-d3 .jv-d3-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0 0 1em; }
.jv-d3 .jv-d3-links > li { padding: 0; margin: 0; }
.jv-d3 .jv-d3-links > li::before { display: none; }
.jv-d3 .jv-d3-links a { display: block; height: 100%; padding: 12px 16px; background: #fff; border: 1px solid var(--jv-line); border-radius: var(--jv-radius-sm); color: var(--jv-blue); font-weight: 600; text-decoration: none; line-height: 1.4; transition: border-color .2s, box-shadow .2s; }
.jv-d3 .jv-d3-links a:hover { border-color: var(--jv-green); box-shadow: var(--jv-shadow); }
@media (max-width: 575.98px) { .jv-d3 .jv-d3-links { grid-template-columns: 1fr; } }
.jv-d3 .jv-d3-visit .jv-h2 { margin-bottom: .6em; }
.jv-d3 .jv-d3-nap { line-height: 2; font-size: 1.0625rem; color: var(--jv-ink); margin: 0; overflow-wrap: anywhere; }
.jv-d3 .jv-d3-nap a { color: var(--jv-blue); }
.jv-d3 .jv-d3-actions .jv-btn { width: 100%; max-width: 440px; justify-content: center; }
.jv-d3 .jv-d3-actions .jv-btn-row { flex-direction: column; align-items: stretch; }
.jv-d3 .jv-faq__q { cursor: pointer; }
.jv-d3 .jv-btn { white-space: normal; text-align: center; }

/* ===== Legacy area pages (body.jv-d3--legacy) ===== */
body.jv-d3--legacy { overflow-x: hidden; }
.jv-d3--legacy #about { padding: clamp(32px, 5vw, 64px) 0 !important; background: #fff !important; }
.jv-d3--legacy #about .container, .jv-d3--legacy #about .row { width: 100%; max-width: var(--jv-container); margin-left: auto; margin-right: auto; padding-left: var(--jv-gutter); padding-right: var(--jv-gutter); box-sizing: border-box; }
.jv-d3--legacy #about .row { padding: 0; }
.jv-d3--legacy #about .row > .container { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(24px, 4vw, 56px); align-items: start; padding: 0; }
.jv-d3--legacy #about .row > .container > [class*="col-md-"] { float: none; width: auto; max-width: 100%; padding: 0; }
.jv-d3--legacy #about .row > .container > .col-md-12 { grid-column: 1 / -1; }
.jv-d3--legacy #about img { width: 100%; height: auto; border-radius: var(--jv-radius); box-shadow: var(--jv-shadow-lg); display: block; object-fit: cover; }
.jv-d3--legacy #about h1 { font-family: var(--jv-font-head) !important; font-size: var(--jv-fs-h1) !important; line-height: 1.15 !important; font-weight: 700 !important; color: var(--jv-blue) !important; letter-spacing: -.01em; margin: 0 0 .6em !important; height: auto !important; }
.jv-d3--legacy #about p { font-size: var(--jv-fs-body) !important; line-height: 1.75 !important; color: var(--jv-ink); margin: 0 0 1.1em !important; }
.jv-d3--legacy #about a { color: var(--jv-blue); text-decoration: underline; text-underline-offset: 2px; }
.jv-d3--legacy #about br { display: none; }
@media (max-width: 991.98px) { .jv-d3--legacy #about .row > .container { grid-template-columns: 1fr; } }
.jv-d3--legacy #about .row + .row { margin-top: 0; }

.jv-d3-cta { background: var(--jv-bg-soft); padding: clamp(20px, 3vw, 32px) 0; }
.jv-d3--legacy .jv-d3-cta .jv-btn { text-decoration: none; }

/* stats band */
.jv-d3--legacy section.vc_row.pt-50.pb-50 { padding: clamp(32px, 5vw, 56px) 0 !important; }
.jv-d3--legacy section.vc_row.pt-50.pb-50 .row { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin: 0; }
.jv-d3--legacy section.vc_row.pt-50.pb-50 .row > [class*="col-"] { float: none; width: auto; padding: 8px; text-align: center !important; }
.jv-d3--legacy section.vc_row.pt-50.pb-50 .liquid-counter { text-align: center !important; }
.jv-d3--legacy section.vc_row.pt-50.pb-50 .liquid-counter-element { font-family: var(--jv-font-head); font-weight: 700; }
.jv-d3--legacy section.vc_row.pt-50.pb-50 .liquid-counter-text { color: #fff !important; font-weight: 600; letter-spacing: .08em; font-size: .85rem; }
@media (max-width: 767.98px) { .jv-d3--legacy section.vc_row.pt-50.pb-50 .row { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* section headings (Testimonials video / Testimonials) */
.jv-d3--legacy section.vc_row .fancy-title h2 { font-family: var(--jv-font-head) !important; font-size: var(--jv-fs-h2) !important; font-weight: 700 !important; color: var(--jv-navy) !important; margin: 0 0 .6em !important; line-height: 1.2 !important; text-align: center; }
.jv-d3--legacy section.vc_row.pt-100.pb-100, .jv-d3--legacy section.vc_row.pt-100.pb-250 { padding-top: clamp(40px, 6vw, 72px) !important; padding-bottom: clamp(40px, 6vw, 72px) !important; }

/* videos */
.jv-d3--legacy section.vc_row.pt-100.pb-100 > .container { max-width: var(--jv-container); padding: 0 var(--jv-gutter); box-sizing: border-box; }
.jv-d3--legacy section.vc_row.pt-100.pb-100 .row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(14px, 2vw, 24px); margin: 0 0 clamp(14px, 2vw, 24px); }
.jv-d3--legacy section.vc_row.pt-100.pb-100 .row > header { grid-column: 1 / -1; }
.jv-d3--legacy section.vc_row.pt-100.pb-100 .row > br { display: none; }
.jv-d3--legacy section.vc_row.pt-100.pb-100 .row > [class*="col-"] { float: none; width: auto; padding: 0; }
.jv-d3--legacy section.vc_row.pt-100.pb-100 iframe { width: 100%; height: auto !important; aspect-ratio: 16 / 9; border: 0; border-radius: var(--jv-radius); box-shadow: var(--jv-shadow); background: #000; display: block; }
@media (max-width: 767.98px) { .jv-d3--legacy section.vc_row.pt-100.pb-100 .row { grid-template-columns: 1fr; } }
.jv-d3--legacy a.btn-gradient { width: auto !important; max-width: 100%; display: flex !important; justify-content: center; margin: 8px auto 0 !important; min-height: 48px; padding: .8em 1.6em !important; }

/* review cards */
.jv-d3--legacy section.vc_row.pt-100.pb-250 .container > .row:not(:has(.carousel-container)) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(16px, 2.5vw, 28px); margin: 0; }
.jv-d3--legacy section.vc_row.pt-100.pb-250 .row > .col-md-6 { float: none; width: auto; padding: 0; border: 1px solid var(--jv-line) !important; border-radius: var(--jv-radius); box-shadow: var(--jv-shadow); background: #fff; overflow: hidden; }
.jv-d3--legacy section.vc_row.pt-100.pb-250 .row > .col-md-6 img { width: 100%; height: auto; border: 0 !important; padding: 0 !important; display: block; }
.jv-d3--legacy section.vc_row.pt-100.pb-250 .row > .col-md-6 h3 { margin: 0 !important; background: var(--jv-blue) !important; padding: 16px !important; font-family: var(--jv-font-head); font-size: 1.05rem; }
.jv-d3--legacy section.vc_row.pt-100.pb-250 .row > .col-md-6 h3, .jv-d3--legacy section.vc_row.pt-100.pb-250 .row > .col-md-6 a { color: #fff; text-decoration: none; }
@media (max-width: 575.98px) { .jv-d3--legacy section.vc_row.pt-100.pb-250 .container > .row:not(:has(.carousel-container)) { grid-template-columns: 1fr; } }

/* testimonials: flatten the 3D carousel into a readable grid */
.jv-d3--legacy section.vc_row[style*="#eee"] { background: var(--jv-bg-soft) !important; }
.jv-d3--legacy section.vc_row[style*="#eee"] .container { max-width: var(--jv-container); padding: 0 var(--jv-gutter); box-sizing: border-box; }
.jv-d3--legacy section.vc_row[style*="#eee"] .lqd-column { float: none !important; width: 100% !important; margin-left: 0 !important; padding: 0; }
.jv-d3--legacy .carousel-container, .jv-d3--legacy .carousel-items { position: static !important; height: auto !important; width: auto !important; transform: none !important; perspective: none !important; }
.jv-d3--legacy .carousel-items { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(16px, 2.5vw, 24px); }
.jv-d3--legacy .carousel-item { position: static !important; transform: none !important; opacity: 1 !important; visibility: visible !important; width: auto !important; height: auto !important; margin: 0 !important; left: auto !important; top: auto !important; }
.jv-d3--legacy .testimonial { background: #fff !important; border-radius: var(--jv-radius); box-shadow: var(--jv-shadow) !important; padding: 24px; height: 100%; box-sizing: border-box; }
.jv-d3--legacy .testimonial blockquote { color: var(--jv-ink) !important; font-size: 1rem; line-height: 1.7; margin: 0; padding: 0; border: 0; }
.jv-d3--legacy .testimonial-info h5 { font-weight: 700; color: var(--jv-navy); margin: 12px 0 0; }
@media (max-width: 767.98px) { .jv-d3--legacy .carousel-items { grid-template-columns: 1fr; } }

/* clearfix pseudo-elements would become grid cells */
.jv-d3--legacy #about .row > .container::before, .jv-d3--legacy #about .row > .container::after,
.jv-d3--legacy section.vc_row.pt-100.pb-100 .row::before, .jv-d3--legacy section.vc_row.pt-100.pb-100 .row::after,
.jv-d3--legacy .carousel-items::before, .jv-d3--legacy .carousel-items::after,
.jv-d3--legacy section.vc_row.pt-50.pb-50 .row::before, .jv-d3--legacy section.vc_row.pt-50.pb-50 .row::after,
.jv-d3--legacy section.vc_row.pt-100.pb-250 .row::before, .jv-d3--legacy section.vc_row.pt-100.pb-250 .row::after { display: none !important; content: none !important; }

.jv-d3--legacy section.fullheight { margin-bottom: 0 !important; }
.jv-d3--legacy a.btn-gradient { max-width: 360px; }
@media (min-width: 768px) { .jv-d3--legacy section.fullheight { min-height: 0 !important; height: 640px; } }
