.lv-site{--lv-navy:#172f40;--lv-deep:#0d293a;--lv-steel:#326a80;--lv-ink:#183247;--lv-muted:#526575;--lv-pale:#eef5f8;color:var(--lv-ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}.lv-site *{box-sizing:border-box}.lv-site .lv-container{width:min(1180px,calc(100% - 48px));margin-inline:auto}.lv-site h1,.lv-site h2,.lv-site h3{font-family:inherit;line-height:1.16;letter-spacing:-.025em;margin:0 0 18px;color:inherit}.lv-site h1{font-size:clamp(2.5rem,5vw,4.7rem);max-width:780px}.lv-site h2{font-size:clamp(1.9rem,3vw,2.7rem);max-width:830px}.lv-site h3{font-size:calc(1.12rem + 2pt)}.lv-site p{margin:0 0 16px}.lv-site a{text-decoration:none}.lv-site a:focus-visible{outline:3px solid #58b3d8;outline-offset:4px}.lv-eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--lv-steel)}.lv-hero{padding:92px 0 68px;background:linear-gradient(115deg,#f5fafc 0%,#e7f1f5 58%,#d3e5ed 100%);overflow:hidden}.lv-hero-grid{display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:40px}.lv-lead{font-size:1.15rem;max-width:650px;color:#354e60}.lv-actions{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}.lv-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 21px;border-radius:4px;font-size:.94rem;font-weight:700;transition:transform .2s,background .2s}.lv-button:hover{transform:translateY(-2px)}.lv-primary{background:var(--lv-deep);color:#fff!important}.lv-outline{border:1px solid var(--lv-deep);color:var(--lv-deep)!important}.lv-tags{font-size:.83rem;color:#476477;margin-top:34px}.lv-hero-art{height:330px;position:relative;display:grid;place-items:center}.lv-orbit{position:absolute;width:300px;height:300px;border:2px solid #8eb4c5;border-radius:50%;transform:rotateX(65deg) rotate(-32deg)}.lv-orbit-two{transform:rotateY(65deg) rotate(32deg);border-color:#477f99}.lv-art-card{position:relative;z-index:1;background:var(--lv-deep);color:#fff;padding:23px 16px;box-shadow:0 18px 40px #0d293a30;font-weight:800;letter-spacing:.08em;font-size:.72rem;text-align:center}.lv-art-card span{color:#7cc2de;padding:0 4px}.lv-section{padding:82px 0}.lv-soft{background:var(--lv-pale)}.lv-section-intro{max-width:760px;color:var(--lv-muted);font-size:1.05rem;margin-bottom:26px}.lv-grid{display:grid;gap:16px;margin-top:30px}.lv-four{grid-template-columns:repeat(4,minmax(0,1fr))}.lv-services{grid-template-columns:repeat(5,minmax(0,1fr))}.lv-card{background:#fff;border:1px solid #dce7ec;border-radius:5px;padding:24px;min-width:0;box-shadow:0 3px 18px #0d293a08}.lv-card p{font-size:.92rem;color:var(--lv-muted)}.lv-service{padding:0;overflow:hidden;display:flex;flex-direction:column}.lv-service-art{height:115px;background:linear-gradient(130deg,#173f57,#85b3c6);display:flex;align-items:center;justify-content:center;color:#fff;font-size:2.2rem;font-weight:300}.lv-art-1{background:linear-gradient(130deg,#315d71,#b1cfd7)}.lv-art-2{background:linear-gradient(130deg,#20394f,#7097a5)}.lv-art-3{background:linear-gradient(130deg,#48788e,#c0d7df)}.lv-art-4{background:linear-gradient(130deg,#1b364b,#63869a)}.lv-card-body{padding:22px;display:flex;flex-direction:column;flex:1}.lv-card-body a{margin-top:auto;font-weight:750;font-size:.87rem;color:var(--lv-deep)}.lv-dark{background:var(--lv-deep);color:#fff}.lv-dark .lv-eyebrow,.lv-cta .lv-eyebrow{color:#a2ccdc}.lv-why-grid{display:grid;grid-template-columns:1fr 1.1fr .9fr;gap:40px;align-items:start}.lv-why-grid p{color:#d1e0e7}.lv-checks{list-style:none!important;padding:0!important;margin:0!important}.lv-checks li{padding:0 0 17px 30px;position:relative}.lv-checks li:before{content:'✓';position:absolute;left:0;color:#9ad1e3;font-weight:bold}.lv-principal{border-left:1px solid #6b91a3;padding-left:28px}.lv-principal a,.lv-dark a{color:#d1eefa;font-weight:700}.lv-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:26px 0}.lv-post a,.lv-text-link{color:var(--lv-deep);font-weight:750}.lv-cta{background:linear-gradient(110deg,#102e40,#285a70);color:#fff}.lv-cta p:not(.lv-eyebrow){max-width:780px;color:#e0edf2}.lv-light{background:#fff;color:var(--lv-deep)!important}.lv-outline-light{border:1px solid #fff;color:#fff!important}.lv-site .lv-hero,.lv-site .lv-section{margin-block:0}.lv-site .lv-container>:last-child{margin-bottom:0}@media(max-width:1050px){.lv-services{grid-template-columns:repeat(3,minmax(0,1fr))}.lv-four{grid-template-columns:repeat(2,minmax(0,1fr))}.lv-why-grid{grid-template-columns:1fr 1fr}.lv-principal{grid-column:1/-1}}@media(max-width:720px){.lv-site .lv-container{width:min(100% - 32px,1180px)}.lv-hero{padding:64px 0 42px}.lv-hero-grid,.lv-why-grid{grid-template-columns:1fr}.lv-hero-art{height:170px}.lv-orbit{width:170px;height:170px}.lv-art-card{font-size:.58rem}.lv-section{padding:54px 0}.lv-four,.lv-services,.lv-post-grid{grid-template-columns:1fr}.lv-service-art{height:85px}.lv-principal{grid-column:auto}.lv-actions{flex-direction:column;align-items:stretch}.lv-button{width:100%}.lv-site h1{font-size:clamp(2.25rem,10vw,3.4rem)}}@media(prefers-reduced-motion:reduce){.lv-button{transition:none}.lv-button:hover{transform:none}}

/* Lavante v2 reusable secondary pages */
.lv-v2-hero{padding:85px 0 76px;background:linear-gradient(120deg,#f5fafc,#dce9ee)}.lv-v2-subtitle{font-size:clamp(1.35rem,2.5vw,2.1rem);font-weight:650;color:#326a80;max-width:790px}.lv-v2-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lv-v2-grid .lv-card{border-top:4px solid #326a80;min-height:115px}.lv-v2-notice{padding:22px 0;color:#526575;font-size:.9rem}.lv-v2 .lv-section:nth-of-type(even):not(.lv-cta){background:#eef5f8}@media(max-width:720px){.lv-v2-hero{padding:58px 0 46px}.lv-v2-grid{grid-template-columns:1fr}}

/* v2.1 additional standalone sections */
.lv-site .lv-extra-link{margin-top:26px}.lv-site .lv-extra-link a{display:inline-block}.lv-site .lv-v2-hero{margin-block:0}.lv-site .lv-v2-grid .lv-card p{margin-bottom:0}

/* v2.1.2: Apply the same +2pt increase to all Lavante h3 section/card headings. */

/* v2.2 editorial sections */
.lv-site .lv-detail-section .lv-section-intro{max-width:880px}.lv-site .lv-detail-section .lv-v2-grid{margin-top:24px}.lv-site .lv-detail-section .lv-card{min-height:100px}

/* v2.2.1 Principal-led consulting profile photograph */
.lv-site .lv-principal-feature-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);align-items:center;gap:clamp(28px,5vw,72px)}
.lv-site .lv-principal-feature-photo{width:100%;max-width:370px;justify-self:end;overflow:hidden;border-radius:8px;box-shadow:0 16px 42px #0d293a20;aspect-ratio:3/4}
.lv-site .lv-principal-feature-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 28%}
@media(max-width:720px){.lv-site .lv-principal-feature-grid{grid-template-columns:1fr}.lv-site .lv-principal-feature-photo{justify-self:start;max-width:300px}}

/* v2.2.2: Keep section headings readable regardless of active theme heading rules.
   Dark sections use near-white text; light sections use a contrasting navy/steel blue. */
.lv-site .lv-dark h1, .lv-site .lv-dark h2, .lv-site .lv-dark h3,
.lv-site .lv-cta h1, .lv-site .lv-cta h2, .lv-site .lv-cta h3 {
  color: #f2f9fc !important;
}
.lv-site .lv-dark .lv-eyebrow, .lv-site .lv-cta .lv-eyebrow {
  color: #b9e0ef !important;
}
.lv-site .lv-dark .lv-checks li { color: #e6f2f7; }
.lv-site .lv-detail-section:not(.lv-dark):not(.lv-cta) > .lv-container > h2,
.lv-site .lv-section:not(.lv-dark):not(.lv-cta) > .lv-container > h2 {
  color: #24556b !important;
}

/* v2.2.3: approved practice descriptions */
.lv-site .lv-practice-description { margin: 1.15rem 0 0; max-width: 70ch; font-size: 1.125rem; line-height: 1.7; color: #e8f3f8; }
.lv-site .lv-practice-card p { line-height: 1.65; }
.lv-site .lv-practice-card a { display: inline-block; margin-top: .65rem; }

/* v2.2.4: Show the principal photograph on the homepage as well. */
.lv-site .lv-principal-home-photo{width:100%;max-width:260px;aspect-ratio:3/4;overflow:hidden;border-radius:8px;margin-bottom:22px}
.lv-site .lv-principal-home-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 28%}

/* v2.2.5: Case Studies hero has accessible light text on navy background. */
.lv-site .lv-v2-hero.lv-cases-hero {background:linear-gradient(120deg,#102e40,#285a70);color:#f2f9fc}
.lv-site .lv-cases-hero h1,.lv-site .lv-cases-hero .lv-v2-subtitle {color:#f2f9fc!important}
.lv-site .lv-cases-hero .lv-eyebrow {color:#b9e0ef!important}
.lv-site .lv-cases-hero .lv-lead {color:#e0edf2!important}

/* v2.2.6: predictable profile layout and image display across WordPress themes */
.lv-site .lv-principal-feature { padding-block:clamp(36px,5vw,64px); }
.lv-site .lv-principal-feature-grid { align-items:start; }
.lv-site .lv-principal-feature-photo { align-self:start; margin:0; min-height:0; }
.lv-site .lv-principal-feature-photo img, .lv-site .lv-principal-home-photo img { visibility:visible!important; opacity:1!important; max-width:none!important; }
@media(max-width:720px){.lv-site .lv-principal-feature-photo { justify-self:start; }}

/* v2.2.7: make profile image layout explicit and remove excessive blank space. */
.lv-site .lv-principal-feature-grid { grid-template-columns: minmax(0, 1fr) minmax(230px, 330px); gap: 28px; align-items: start; }
.lv-site .lv-principal-feature-photo { display:block!important; height:auto!important; min-height:0!important; aspect-ratio:auto; overflow:visible; }
.lv-site .lv-principal-feature-photo img { display:block!important; width:100%!important; height:auto!important; max-width:100%!important; object-fit:cover; border-radius:8px; visibility:visible!important; opacity:1!important; }
@media(max-width:720px) {.lv-site .lv-principal-feature-grid {grid-template-columns:minmax(0,1fr);} .lv-site .lv-principal-feature-photo {max-width:280px;justify-self:start;}}

/* v2.2.9: stronger legibility for service engagement section. */
.lv-site.lv-v2 .lv-section:has(> .lv-container > h2:first-child):not(.lv-dark):not(.lv-cta) > .lv-container > h2 { color:#17364a!important; }
.lv-site.lv-v2 .lv-section:has(> .lv-container > h2:first-child) .lv-card h3 { color:#17364a!important; }
/* The engagement section is the fifth section in service-page shortcode output. */
.lv-site.lv-v2 > .lv-section:nth-of-type(5) { background:#e5f0f5!important; }
.lv-site.lv-v2 > .lv-section:nth-of-type(5) > .lv-container > h2 { color:#102e40!important; font-weight:800; }
.lv-site.lv-v2 > .lv-section:nth-of-type(5) .lv-card { background:#fff!important; border-color:#b9d1dd; box-shadow:0 6px 18px rgba(13,41,58,.09); }
.lv-site.lv-v2 > .lv-section:nth-of-type(5) .lv-card h3 { color:#17364a!important; }
/* On photo-backed hero areas, improve readability without changing light hero designs. */
.lv-site .lv-dark h1,.lv-site .lv-dark h2,.lv-site .lv-cta h2 { text-shadow:0 2px 8px rgba(0,0,0,.35); }

/* v2.3.0: consistent background across the complete service-page body.
   The service hero remains distinct; all content sections share one surface. */
.lv-site.lv-v2:has(> .lv-v2-hero) > .lv-section,
.lv-site.lv-v2:has(> .lv-v2-hero) > .lv-section.lv-soft,
.lv-site.lv-v2:has(> .lv-v2-hero) > .lv-detail-section {
  background-color:#e5f0f5!important;
  background-image:none!important;
}
.lv-site.lv-v2:has(> .lv-v2-hero) > .lv-section .lv-card {
  background-color:#fff!important;
  color:#17364a;
  border:1px solid #c5d8e2;
}
.lv-site.lv-v2:has(> .lv-v2-hero) > .lv-section > .lv-container > h2 {
  color:#102e40!important;
}

/* v2.3.1: consistent light-blue content canvas on every Lavante page.
   Preserve deliberately dark sections and CTA banners for contrast. */
.lv-site > .lv-section:not(.lv-dark):not(.lv-cta),
.lv-site > .lv-detail-section:not(.lv-dark):not(.lv-cta),
.lv-site > .lv-section.lv-soft:not(.lv-dark):not(.lv-cta) {
  background:#e5f0f5!important;
  background-image:none!important;
}
.lv-site > .lv-section:not(.lv-dark):not(.lv-cta) > .lv-container > h2,
.lv-site > .lv-detail-section:not(.lv-dark):not(.lv-cta) > .lv-container > h2 {
  color:#102e40!important;
}
.lv-site > .lv-section:not(.lv-dark):not(.lv-cta) .lv-card,
.lv-site > .lv-detail-section:not(.lv-dark):not(.lv-cta) .lv-card {
  background:#fff!important;
  border-color:#c5d8e2;
}
.lv-site > .lv-section:not(.lv-dark):not(.lv-cta) .lv-card h3,
.lv-site > .lv-detail-section:not(.lv-dark):not(.lv-cta) .lv-card h3 {
  color:#17364a!important;
}

/* v2.3.2: compact leadership image before Interim Expertise role section */
.lv-site.lv-v2 .lv-interim-leadership-image {
  background:#e5f0f5;
  padding:28px 20px 4px;
  display:flex;
  justify-content:center;
}
.lv-site.lv-v2 .lv-interim-leadership-image img {
  display:block;
  width:min(100%, 440px);
  height:auto;
  aspect-ratio:3 / 2;
  object-fit:cover;
  border-radius:12px;
  box-shadow:0 8px 24px rgba(17,47,64,.14);
}
