/* ==========================================================================
   Condition-page family (WS-E1 / WS-E2) - restyles the legacy Liquid condition
   templates (hero section + #about intro + .row>.container>.col-md-* blocks)
   Scope: .jv-cond (class on <main id="content">). Uses tokens from jeevisha-ui.css.
   ========================================================================== */
.jv-cond { background: var(--jv-bg-soft); color: var(--jv-ink); font-family: var(--jv-font-body); font-size: var(--jv-fs-body); line-height: 1.7; overflow-x: hidden; }
.jv-cond *, .jv-cond *::before, .jv-cond *::after { box-sizing: border-box; }

/* ---- hero ---------------------------------------------------------------- */
.jv-cond > section.vc_row.fullheight { position: relative; min-height: 0 !important; padding-top: 2rem !important; padding-bottom: 0 !important; margin: 0 !important; display: flex; align-items: center; flex-direction: column; justify-content: center; background-size: cover !important; background-position: center !important; isolation: isolate; }
.jv-cond > section.vc_row.fullheight::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(120deg, rgba(13,27,74,.92) 0%, rgba(35,63,146,.82) 60%, rgba(63,111,18,.55) 100%); }
.jv-cond > section.vc_row.fullheight .container { width: 100%; max-width: var(--jv-container); padding: 0 var(--jv-gutter); }
.jv-cond > section.vc_row.fullheight .row { margin: 0; }
.jv-cond > section.vc_row.fullheight [class*="col-"] { width: 100%; float: none; padding: 0; text-align: center !important; }
.jv-cond > section.vc_row.fullheight h1 { font-family: var(--jv-font-head); font-size: var(--jv-fs-h1) !important; line-height: 1.15 !important; font-weight: 700; color: #fff !important; margin: 0 !important; text-align: center; margin-left: auto !important; margin-right: auto !important; max-width: 20em; text-wrap: balance; text-shadow: 0 2px 12px rgba(0,0,0,.25); }
.jv-cond > section.vc_row.fullheight h1, .jv-cond > section.vc_row.fullheight h1 * { opacity: 1 !important; visibility: visible !important; color: #fff !important; }
.jv-cond > section.vc_row.fullheight h1 * { font-size: inherit !important; }
.jv-cond > section.vc_row.fullheight h1 .split-inner, .jv-cond > section.vc_row.fullheight h1 .split-unit { transform: none !important; }
.jv-cond > section.vc_row.fullheight .one-row_bottom_divider { display: block; z-index: 1; }
.jv-cond > section.vc_row.fullheight > *:not(.container):not(.one-row_bottom_divider) { display: none; }

/* ---- intro (#about) ------------------------------------------------------ */
.jv-cond > section#about { padding: 40px 0 8px !important; background: transparent; }
.jv-cond > section#about > .container { max-width: var(--jv-container); padding: 0 var(--jv-gutter); width: 100%; }
.jv-cond > section#about .row { margin: 0; display: flex; flex-wrap: wrap; gap: 28px 40px; align-items: flex-start; }
.jv-cond > section#about .row .row { gap: 28px 40px; flex: 1 1 100%; align-items: center; }
.jv-cond > section#about [class*="col-"] { float: none; padding: 0; width: auto; }
.jv-cond > section#about [class*="col-md-4"], .jv-cond > section#about [class*="col-sm-4"] { flex: 0 1 340px; max-width: 100%; }
.jv-cond > section#about [class*="col-md-8"], .jv-cond > section#about [class*="col-sm-8"] { flex: 1 1 420px; min-width: 0; }
.jv-cond > section#about img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: contain; max-width: 360px; background: #fff; border-radius: var(--jv-radius); box-shadow: var(--jv-shadow); padding: 10px; margin: 0 !important; }
.jv-cond > section#about p { font-size: var(--jv-fs-body) !important; line-height: 1.75 !important; color: var(--jv-ink); margin: 0 0 1em; font-weight: 400; max-width: 75ch; }
.jv-cond > section#about p:first-of-type { font-size: var(--jv-fs-lead) !important; color: var(--jv-navy); }
.jv-cond .fancy-title:empty { display: none; }
.jv-cond .lqd-space { display: contents !important; }

/* ---- content blocks: .row > .container > .col-md-* ----------------------- */
.jv-cond > .row { margin: 0 !important; padding: 0 var(--jv-gutter); }
.jv-cond .row > .container { display: flex; flex-wrap: wrap; gap: 24px; max-width: var(--jv-container); width: 100%; padding: 0; margin: 0 auto; }
.jv-cond .row > .container > [class*="col-"] { float: none; width: auto; flex: 1 1 100%; min-width: 0; margin: 0; padding: clamp(20px, 3vw, 36px); background: #fff; border: 1px solid var(--jv-line); border-radius: var(--jv-radius); box-shadow: var(--jv-shadow); }
.jv-cond .row > .container > .col-md-6 { flex: 1 1 min(100%, 420px); }
.jv-cond .row > .container > [class*="col-"] + [class*="col-"], .jv-cond .row > .container > [class*="col-"] { margin-bottom: 0; }
.jv-cond section#about .row > .container { padding: 0; }
.jv-cond .row:has(> .container > [class*="col-"]) { margin: 24px 0 0 !important; }
.jv-cond > .row { margin-top: 24px !important; }
.jv-cond > .row:last-of-type { margin-bottom: 0 !important; }
.jv-cond > hr { display: none; }
.jv-cond .container > br, .jv-cond [class*="col-"] > br, .jv-cond ul > br, .jv-cond > br { display: none; }

.jv-cond h2 { font-family: var(--jv-font-head); font-size: var(--jv-fs-h2) !important; line-height: 1.2 !important; font-weight: 700; color: var(--jv-navy); margin: 0 0 .6em !important; overflow-wrap: anywhere; letter-spacing: 0; }
.jv-cond h2 strong, .jv-cond h2 b { font-weight: 700; line-height: inherit !important; }
.jv-cond h2::after { content: ""; display: block; width: 56px; height: 4px; border-radius: 4px; background: var(--jv-green); margin-top: 12px; }
.jv-cond h3, .jv-cond h4 { font-family: var(--jv-font-head); font-size: var(--jv-fs-h3) !important; line-height: 1.3; color: var(--jv-blue); margin: 1.2em 0 .5em; }
.jv-cond p { color: var(--jv-ink); line-height: 1.75; margin: 0 0 1em; font-size: var(--jv-fs-body); }
.jv-cond .font-size-20 { font-size: var(--jv-fs-body) !important; }
.jv-cond a { color: var(--jv-blue); text-decoration: underline; text-underline-offset: 2px; }
.jv-cond a.jv-btn { text-decoration: none; }

/* lists */
.jv-cond ul { list-style: none; padding: 0; margin: 0 0 1em; font-weight: 400 !important; }
.jv-cond li { position: relative; padding: 0 0 0 30px; margin: 0 0 .65em; font-weight: 400 !important; line-height: 1.65; color: var(--jv-ink); }
.jv-cond li::before { content: ""; position: absolute; left: 0; top: .45em; width: 18px; height: 18px; border-radius: 50%; background: var(--jv-green-50) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.3l2.2 2.2 4.8-5' fill='none' stroke='%233f6f12' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px no-repeat; }
.jv-cond li strong, .jv-cond li b { color: var(--jv-navy); }
.jv-cond li ul, .jv-cond ul ul { margin: .6em 0 0; }
.jv-cond ol { padding-left: 1.4em; }
.jv-cond ol li { padding-left: 4px; }
.jv-cond ol li::before { display: none; }
.jv-cond ul > p, .jv-cond ul > ul { list-style: none; }

/* media + tables */
.jv-cond img { max-width: 100%; height: auto; border-radius: var(--jv-radius-sm); }
.jv-cond table { width: 100%; border-collapse: collapse; margin: 0 0 1.2em; font-size: .95rem; display: block; overflow-x: auto; }
.jv-cond th, .jv-cond td { border: 1px solid var(--jv-line); padding: 10px 14px; text-align: left; vertical-align: top; }
.jv-cond th { background: var(--jv-blue-50); color: var(--jv-navy); }
.jv-cond iframe, .jv-cond video { max-width: 100%; border: 0; border-radius: var(--jv-radius-sm); }

/* ---- CTA row (after intro) and CTA band ---------------------------------- */
.jv-cond-cta-row { max-width: var(--jv-container); margin: 8px auto 0; padding: 20px var(--jv-gutter) 0; }
@media (max-width: 575.98px) { .jv-cond-cta .jv-btn, .jv-cond-cta-row .jv-btn { width: 100%; } .jv-cond > section#about [class*="col-md-4"] { flex-basis: 100%; } }
@media (max-width: 991.98px) { .jv-cond > section#about [class*="col-md-4"] { flex: 1 1 100%; max-width: 420px; } }

/* neutralise bootstrap negative row margins / fixed container widths inside condition pages */
.jv-cond .row { margin-left: 0 !important; margin-right: 0 !important; max-width: 100%; }
.jv-cond .container { max-width: min(100%, var(--jv-container)); }
.jv-cond [class*="col-"] { max-width: 100%; }

/* hero spacing under the fixed header */
@media (min-width: 768px) and (max-width: 991.98px) { .jv-cond > section.vc_row.fullheight > .container:not(.jv-cond-hero-cta) { padding-top: 118px !important; } .jv-cond > section.vc_row.fullheight > .jv-cond-hero-cta { padding-bottom: 48px !important; } }
@media (max-width: 767.98px) { .jv-cond > section.vc_row.fullheight > .container:not(.jv-cond-hero-cta) { padding-top: 64px !important; } .jv-cond > section.vc_row.fullheight > .jv-cond-hero-cta { padding-bottom: 40px !important; } }

/* CTA band: contained rounded card with white space above the footer */
.jv-cond-cta { background: transparent; padding: clamp(32px, 5vw, 56px) var(--jv-gutter) 64px; margin: 0; }
.jv-cond-cta__inner { max-width: var(--jv-container); margin: 0 auto; background: linear-gradient(135deg, var(--jv-blue) 0%, var(--jv-navy) 100%); border-radius: var(--jv-radius); padding: clamp(28px, 5vw, 56px); box-shadow: var(--jv-shadow-lg); text-align: center; }
.jv-cond-cta .jv-btn-row { justify-content: center; }
.jv-cond-cta .jv-btn--light { background: #fff; color: var(--jv-blue) !important; }
.jv-cond-cta .jv-btn--outline { background: transparent; color: #fff !important; border-color: #fff; }
.jv-cond-cta .jv-btn--outline:hover { background: #fff; color: var(--jv-blue) !important; }
.jv-cond-cta .jv-btn--whatsapp { background: #128c4b; color: #fff !important; }

/* sub-condition card grids (.service blocks): 2 columns desktop, 1 mobile, 16:9 image on top */
.jv-cond .container:has(> .row .service) { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
.jv-cond .container:has(> .row .service) > :not(.row) { grid-column: 1 / -1; }
.jv-cond .row:has(> .container > [class*="col-"] > .service), .jv-cond .row:has(> .container > [class*="col-"] > .service) > .container { display: contents !important; }
.jv-cond [class*="col-"]:has(> .service) { display: flex; width: auto; float: none; padding: 0 !important; margin: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; min-width: 0; }
.jv-cond .service { display: flex; flex-direction: column; width: 100%; height: 100%; padding: 0 0 20px !important; background: #fff !important; border: 1px solid var(--jv-line); border-radius: var(--jv-radius); box-shadow: var(--jv-shadow); overflow: hidden; }
.jv-cond .service img { width: 100% !important; height: auto !important; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 0; margin: 0 0 14px; }
.jv-cond .service h3 { margin: 0 0 8px; padding: 0 20px; }
.jv-cond .service p { padding: 0 20px; margin: 0; font-size: 1rem !important; }
@media (max-width: 767.98px) { .jv-cond .container:has(> .row .service) { grid-template-columns: 1fr; } }

/* CTA inside hero (under the H1) */
.jv-cond > section.vc_row.fullheight .jv-cond-hero-cta { margin-top: 28px; }
.jv-cond-hero-cta .jv-btn-row { justify-content: center; }
.jv-cond-hero-cta .jv-btn--light { background: #fff; color: var(--jv-blue) !important; }
.jv-cond-hero-cta .jv-btn--outline { background: transparent; color: #fff !important; border-color: rgba(255,255,255,.85); }
.jv-cond-hero-cta .jv-btn--outline:hover { background: rgba(255,255,255,.15); }
.jv-cond-hero-cta .jv-btn--whatsapp { background: #128c4b; color: #fff !important; }
@media (max-width: 575.98px) { .jv-cond-hero-cta .jv-btn { width: 100%; } }

@media (min-width: 992px) {
.jv-cond > section.vc_row.fullheight > .container:not(.jv-cond-hero-cta) { padding-top: 168px; }
.jv-cond > section.vc_row.fullheight > .jv-cond-hero-cta { padding-bottom: 64px; }
}
.jv-cond .container:has(> .row .service)::before, .jv-cond .container:has(> .row .service)::after,
.jv-cond .row:has(> .container > [class*="col-"] > .service)::before, .jv-cond .row:has(> .container > [class*="col-"] > .service)::after,
.jv-cond .row:has(> .container > [class*="col-"] > .service) > .container::before, .jv-cond .row:has(> .container > [class*="col-"] > .service) > .container::after { display: none !important; content: none !important; }
