/*
Theme Name: Bizzen Child
Theme URI: https://prajot.konkandigital.com
Description: Child theme of Bizzen for Prajot Vaidya & Co. Practising Company Secretaries.
Author: Prajot Vaidya & Co.
Template: bizzen
Version: 1.3.0
Text Domain: bizzen-child
*/

/* ==========================================================================
   0. Typography Fonts - Aligned with Prajot Vaidya & Co. Brand & Logo
   - Logo Wordmark & UI: Inter (Clean, Modern, Geometric Sans-Serif)
   - Brand Authority Headings: Plus Jakarta Sans (High-contrast Serif)
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700&display=swap');

:root {
  --heading-font: 'Montserrat', sans-serif !important;
  --body-font: 'Montserrat', sans-serif !important;
  --unit-heading-font-family: 'Montserrat', sans-serif !important;
  --unit-body-font-family: 'Montserrat', sans-serif !important;
  --heading-font-family: 'Montserrat', sans-serif !important;

  --pvc-font-heading: 'Montserrat', sans-serif;
  --pvc-font-sans: 'Montserrat', sans-serif;
  --pvc-color-dark: #163B4C;
  --pvc-color-dark-deep: #0E2834;
  --pvc-color-navy: #163B4C;
  --pvc-color-navy-deep: #0E2834;
  --pvc-color-gold: #E09B3D;
  --pvc-color-gold-hover: #C88327;
  --pvc-color-coral: #E09B3D;
  --pvc-color-accent: #E09B3D;
  --pvc-color-accent-hover: #C88327;
  --pvc-color-bg-light: #F7F9F6;
  --pvc-color-card-bg: #FFFFFF;
  --pvc-color-border: #E4EAE2;
  --pvc-color-text: #334155;
  --pvc-color-text-muted: #64748B;
  --pvc-space-section-desktop: 80px;
  --pvc-space-section-mobile: 45px;
  --pvc-radius-card: 12px;
  --pvc-shadow-card: 0 4px 20px rgba(0, 0, 0, 0.04);
  --pvc-shadow-hover: 0 10px 30px rgba(13, 56, 49, 0.08);
}

/* ==========================================================================
   1. Global Typography Standardization
   ========================================================================== */
body, p, input, select, textarea {
  font-family: var(--pvc-font-sans);
  color: var(--pvc-color-text);
  line-height: 1.65;
}

h1, h2 {
  font-family: var(--pvc-font-heading);
  font-weight: 700;
  color: var(--pvc-color-dark-deep);
  letter-spacing: -0.01em;
}

h3, h4, h5, h6 {
  font-family: var(--pvc-font-sans);
  font-weight: 600;
  color: var(--pvc-color-dark-deep);
}

/* Buttons & CTAs match logo wordmark font */
.theme-btn,
.nav-button .theme-btn,
.theme-nav-button .theme-btn,
.elementor-button,
a.elementor-button,
button[type="submit"],
.bizzen-btn {
  font-family: var(--pvc-font-sans);
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  border-radius: 6px !important;
  transition: all 0.25s ease !important;
}

/* Eyebrows / Section Overlines */
.sub-title,
.sec-title .sub-title,
.bizzen-section-title .sub-title,
.features-wrapper .sub-title {
  font-family: var(--pvc-font-sans);
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15em !important;
  color: var(--pvc-color-coral) !important;
}

/* ==========================================================================
   2. Theme Artifact Fix: Remove trailing "___" decorative pseudo-lines
   ========================================================================== */
.sub-title:after,
.sub-title::after,
.sub-title:before,
.sub-title::before,
.sec-title .sub-title:after,
.sec-title .sub-title::after {
  display: none !important;
  content: none !important;
  width: 0 !important;
  height: 0 !important;
}

/* ==========================================================================
   3. Global Header & Navigation — Premium Sticky Header
   ========================================================================== */

/* Base header */
.header-area {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 9999 !important;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* Default state — solid white header (no backdrop-filter — causes mobile blur glitch) */
.header-navigation {
  background: #FFFFFF !important;
  border-bottom: 1px solid rgba(13, 56, 49, 0.08) !important;
  box-shadow: 0 2px 16px rgba(22, 59, 76, 0.06) !important;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
  padding: 0 !important;
}

/* Scrolled state — elevated with stronger shadow */
.header-area.scrolled .header-navigation,
.header-area.sticky .header-navigation {
  background: #FFFFFF !important;
  box-shadow: 0 4px 24px rgba(22, 59, 76, 0.08) !important;
  border-bottom-color: rgba(13, 56, 49, 0.08) !important;
}

/* Container */
.header-navigation .container-fluid {
  max-width: 1440px !important;
  padding-left: 40px !important;
  padding-right: 40px !important;
}

/* Primary menu layout */
.primary-menu {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

/* Logo */
.site-branding {
  flex-shrink: 0 !important;
}

.site-branding img {
  max-height: 48px !important;
  width: auto !important;
  height: auto !important;
  transition: all 0.3s ease !important;
}

.header-area.scrolled .site-branding img {
  max-height: 42px !important;
}

/* Main menu links */
.main-menu ul > li {
  margin-left: 4px !important;
  margin-right: 4px !important;
}

.main-menu ul > li > a {
  font-family: var(--pvc-font-sans);
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #1E293B !important;
  letter-spacing: 0.01em !important;
  text-transform: capitalize !important;
  padding: 28px 14px !important;
  position: relative !important;
  transition: color 0.2s ease !important;
}

/* Active underline indicator - Sleek, compact & centered */
.header-navigation .main-menu ul > li > a::after,
.header-navigation .main-menu ul > li > a:after,
.main-menu ul > li > a::after,
.main-menu ul > li > a:after {
  content: "" !important;
  position: absolute !important;
  bottom: 18px !important;
  left: 50% !important;
  right: auto !important;
  width: 22px !important;
  height: 2px !important;
  background: var(--pvc-color-coral, #E09B3D) !important;
  border-radius: 2px !important;
  transform: translateX(-50%) scaleX(0) !important;
  transform-origin: center !important;
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.2s ease !important;
  opacity: 0 !important;
}

.header-navigation .main-menu ul > li:hover > a::after,
.header-navigation .main-menu ul > li:hover > a:after,
.header-navigation .main-menu ul > li > a:hover::after,
.header-navigation .main-menu ul > li > a:hover:after,
.header-navigation .main-menu ul > li.current-menu-item > a::after,
.header-navigation .main-menu ul > li.current-menu-item > a:after,
.header-navigation .main-menu ul > li.active > a::after,
.header-navigation .main-menu ul > li.active > a:after {
  left: 50% !important;
  right: auto !important;
  width: 22px !important;
  transform: translateX(-50%) scaleX(1) !important;
  opacity: 1 !important;
}

/* Hover & active state */
.main-menu ul > li > a:hover,
.main-menu ul > li.current-menu-item > a,
.main-menu ul > li.active > a {
  color: var(--pvc-color-dark, #163B4C) !important;
}

/* Dropdown submenu */
.main-menu ul > li .sub-menu {
  background: #FFFFFF !important;
  border: 1px solid rgba(13, 56, 49, 0.06) !important;
  border-radius: 10px !important;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.1), 0 2px 8px rgba(0, 0, 0, 0.04) !important;
  padding: 8px 0 !important;
  min-width: 260px !important;
  margin-top: 0 !important;
}

.main-menu ul > li .sub-menu li a {
  font-family: var(--pvc-font-sans);
  font-size: 13.5px !important;
  font-weight: 500 !important;
  color: #334155 !important;
  padding: 10px 24px !important;
  line-height: 1.5 !important;
  border-radius: 0 !important;
  transition: all 0.2s ease !important;
  margin: 0 !important;
}

.main-menu ul > li .sub-menu li a:hover {
  color: var(--pvc-color-coral, #E09B3D) !important;
  background: rgba(13, 56, 49, 0.03) !important;
  padding-left: 28px !important;
}

/* CTA button */
.nav-right-item {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
}

.nav-button .theme-btn.style-one {
  background: linear-gradient(135deg, var(--pvc-color-coral, #E09B3D) 0%, #C88327 100%) !important;
  color: #FFFFFF !important;
  border-radius: 8px !important;
  font-family: var(--pvc-font-sans);
  font-size: 13.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  padding: 12px 24px !important;
  line-height: 1.4 !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  box-shadow: 0 2px 8px rgba(224, 155, 61, 0.25) !important;
}

.nav-button .theme-btn.style-one:hover {
  background: linear-gradient(135deg, #163B4C 0%, #1A5C4F 100%) !important;
  color: #FFFFFF !important;
  box-shadow: 0 6px 20px rgba(13, 56, 49, 0.3) !important;
  transform: translateY(-2px) !important;
}

.nav-button .theme-btn.style-one i {
  margin-left: 8px !important;
  font-size: 12px !important;
  transition: transform 0.3s ease !important;
}

.nav-button .theme-btn.style-one:hover i {
  transform: translateX(3px) !important;
}

/* Hamburger */
.navbar-toggler {
  border: none !important;
  padding: 8px !important;
  cursor: pointer !important;
}

.navbar-toggler span {
  display: block !important;
  width: 24px !important;
  height: 2px !important;
  background: #163B4C !important;
  margin: 5px 0 !important;
  border-radius: 2px !important;
  transition: all 0.3s ease !important;
}

/* Body padding for fixed header */
body {
  padding-top: 80px !important;
}

/* Offset for pages with hero (hero already handles this) */
.bizzen-hero_one {
  margin-top: -80px !important;
  padding-top: 80px !important;
}

/* Responsive */
@media (max-width: 1199.98px) {
  .header-navigation {
    padding: 12px 0 !important;
  }
  .header-navigation .container-fluid {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  body {
    padding-top: 72px !important;
  }
  .bizzen-hero_one {
    margin-top: -72px !important;
    padding-top: 72px !important;
  }
}

@media (max-width: 767.98px) {
  .nav-button .theme-btn.style-one {
    padding: 10px 18px !important;
    font-size: 12.5px !important;
  }
  body {
    padding-top: 66px !important;
  }
  .bizzen-hero_one {
    margin-top: -66px !important;
    padding-top: 66px !important;
  }
}

/* ==========================================================================
   4. Inner Page Hero Banner (Separate section from header, sticked flush below it)
   ========================================================================== */
.page-hero,
.page-hero-area,
.page-hero.bg_cover {
  margin-top: 76px !important;
  background: linear-gradient(135deg, #0E2834 0%, #163B4C 60%, #1F4E64 100%) !important;
  background-image: none !important;
  padding-top: 55px !important;
  padding-bottom: 50px !important;
  min-height: auto !important;
  position: relative !important;
  overflow: hidden !important;
}

.page-hero:before {
  content: "" !important;
  position: absolute !important;
  top: 0; left: 0; right: 0; bottom: 0;
  background: radial-gradient(circle at 85% 20%, rgba(184, 216, 142, 0.12) 0%, transparent 50%),
              radial-gradient(circle at 15% 80%, rgba(13, 56, 49, 0.4) 0%, transparent 60%) !important;
  pointer-events: none !important;
}

.page-hero-area .page-content h1 {
  font-family: var(--pvc-font-heading);
  font-size: 40px !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
  margin-bottom: 12px !important;
  letter-spacing: -0.01em !important;
}

.page-hero-area .breadcrumb {
  font-family: var(--pvc-font-sans);
  font-size: 14px !important;
  font-weight: 400 !important;
 -justify-content: center !important;
  color: rgba(255, 255, 255, 0.75) !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
}

.page-hero-area .breadcrumb a {
  color: var(--pvc-color-accent) !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.page-hero-area .breadcrumb a:hover {
  color: #FFFFFF !important;
}

.page-hero-area .breadcrumb span.current-item {
  color: rgba(255, 255, 255, 0.85) !important;
}

/* ==========================================================================
   5. Homepage Section Polishing & Alignment (Premium Anti-Slop)
   ========================================================================== */

/* Hero Banner (Above the Fold) */
/* ==========================================================================
   Hero Section Overhauls & Frosted Glass Trust Card
   ========================================================================== */
.bizzen-hero_one {
  padding-top: 130px !important;
  padding-bottom: 75px !important;
  min-height: auto !important;
  position: relative !important;
  background-color: #062823 !important;
}

.bizzen-hero_one:before {
  content: "" !important;
  position: absolute !important;
  top: 0; left: 0; right: 0; bottom: 0;
  background: radial-gradient(circle at 85% 20%, rgba(184, 216, 142, 0.12) 0%, transparent 50%),
              radial-gradient(circle at 15% 80%, rgba(6, 40, 35, 0.6) 0%, transparent 60%) !important;
  pointer-events: none !important;
}

.bizzen-hero_one .container-fluid {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

.bizzen-hero_one .row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 30px 0 !important;
}

.bizzen-hero_one .hero-content {
  max-width: 650px !important;
}

.bizzen-hero_one .hero-content .sub-title {
  display: inline-block !important;
  font-family: var(--pvc-font-sans);
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  color: #FFA573 !important;
  margin-bottom: 16px !important;
}

.bizzen-hero_one .hero-content h1 {
  font-family: var(--pvc-font-heading);
  font-size: 50px !important;
  line-height: 1.16 !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
  margin-bottom: 28px !important;
  letter-spacing: -0.01em !important;
}

.bizzen-hero_one .hero-button .theme-btn.style-one {
  background-color: var(--pvc-color-accent) !important;
  color: var(--pvc-color-dark-deep) !important;
  padding: 14px 34px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
  box-shadow: 0 8px 24px rgba(184, 216, 142, 0.28) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  transition: all 0.3s ease !important;
}

.bizzen-hero_one .hero-button .theme-btn.style-one:hover {
  background-color: #FFFFFF !important;
  color: var(--pvc-color-dark-deep) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 28px rgba(255, 255, 255, 0.25) !important;
}

/* Frosted Glass Trust Card on Hero Right Column */
.bizzen-hero .text-box,
.bizzen-hero_one .text-box,
.bizzen-hero_one .col-lg-4 .text-box {
  background: rgba(255, 255, 255, 0.08) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  border-radius: 16px !important;
  padding: 34px 28px !important;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.25) !important;
  margin: 0 !important;
  position: relative !important;
}

.bizzen-hero .text-box h4,
.bizzen-hero_one .text-box h4,
.bizzen-hero_one .col-lg-4 .text-box h4 {
  font-family: var(--pvc-font-heading);
  font-size: 44px !important;
  font-weight: 700 !important;
  color: var(--pvc-color-accent) !important;
  line-height: 1 !important;
  margin-bottom: 6px !important;
}

.bizzen-hero .text-box h4 span,
.bizzen-hero_one .text-box h4 span,
.bizzen-hero_one .col-lg-4 .text-box h4 span {
  display: block !important;
  font-family: var(--pvc-font-sans);
  font-size: 13.5px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  color: #FFFFFF !important;
  margin-top: 8px !important;
}

.bizzen-hero .text-box p,
.bizzen-hero_one .text-box p,
.bizzen-hero_one .col-lg-4 .text-box p {
  color: rgba(255, 255, 255, 0.84) !important;
  font-size: 14.5px !important;
  line-height: 1.65 !important;
  margin-top: 16px !important;
  margin-bottom: 0 !important;
  padding-top: 16px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
}

/* Trusted By Section Alignment */
.bizzen-company-sec,
[data-id="93c73a3"] {
  background-color: var(--pvc-color-bg-light) !important;
}
/* Override Elementor inline container padding on Trusted By section */
.elementor-element-93c73a3 {
  /* padding overridden by combined rule below */
}

#trusted-by-title,
[data-id="trusted-by-title"] {
  max-width: 800px !important;
  margin: 0 auto !important;
}

#trusted-by-title h2,
[data-id="trusted-by-title"] h2 {
  font-size: 30px !important;
  line-height: 1.3 !important;
  text-align: center !important;
  text-wrap: balance !important;
  margin-bottom: 30px !important;
}

.bizzen-company-sec .client-item img,
.bizzen-company-sec img {
  max-height: 52px !important;
  width: auto !important;
  filter: none !important;
  -webkit-filter: none !important;
  opacity: 1 !important;
  transition: transform 0.25s ease !important;
}

.bizzen-company-sec .client-item img:hover,
.bizzen-company-sec img:hover {
  filter: none !important;
  -webkit-filter: none !important;
  opacity: 1 !important;
  transform: scale(1.06) !important;
}

/* ==========================================================================
   Practice Areas Section & 7 Cards Alignment
   ========================================================================== */
[data-id="services-heading"] {
  padding-top: 75px !important;
  margin-bottom: 36px !important;
  text-align: center !important;
}

#services-heading-title h2 {
  font-size: 36px !important;
  line-height: 1.25 !important;
  text-wrap: balance !important;
}

#services-row2,
[data-id="services-row2"] {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 20px 30px !important;
}

#services-row2 > .e-con-inner,
[data-id="services-row2"] > .e-con-inner {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 24px !important;
}

/* Card Column */
#services-row2 .e-con-inner > .e-con,
[data-id="services-row2"] .e-con-inner > .e-con {
  display: flex !important;
  flex-direction: column !important;
  flex: 0 1 calc(25% - 24px) !important;
  min-width: 255px !important;
  max-width: 285px !important;
  width: calc(25% - 24px) !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
}

/* White Card Box with Top Accent Bar */
#services-row2 [data-id$="-inner"],
[data-id="services-row2"] [data-id$="-inner"],
.elementor-1833 .elementor-element[data-id$="-inner"]:not(.elementor-motion-effects-element-type-background) {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  width: 100% !important;
  padding: 30px 24px 26px !important;
  border-radius: 14px !important;
  background-color: #FFFFFF !important;
  background-image: none !important;
  border: 1px solid #E2E8F0 !important;
  border: 1px solid #E2E8F0 !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.04) !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  position: relative !important;
}

#services-row2 [data-id$="-inner"]:hover,
[data-id="services-row2"] [data-id$="-inner"]:hover,
#services-row2 .e-con-inner > .e-con:hover [data-id$="-inner"],
[data-id="services-row2"] .e-con-inner > .e-con:hover [data-id$="-inner"] {
  box-shadow: 0 16px 36px rgba(13, 56, 49, 0.1) !important;
  transform: translateY(-5px) !important;
  border-color: rgba(13, 56, 49, 0.25) !important;
  border-top-color: var(--pvc-color-coral) !important;
}

/* Icon Container Badge */
#services-row2 .elementor-icon-box-wrapper,
[data-id="services-row2"] .elementor-icon-box-wrapper {
  display: flex !important;
  flex-direction: column !important;
}

#services-row2 .elementor-icon-box-icon,
[data-id="services-row2"] .elementor-icon-box-icon {
  margin-bottom: 16px !important;
}

#services-row2 .elementor-icon,
[data-id="services-row2"] .elementor-icon {
  width: 48px !important;
  height: 48px !important;
  border-radius: 12px !important;
  background: transparent !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--pvc-color-coral) !important;
  font-size: 22px !important;
  transition: all 0.25s ease !important;
}

#services-row2 [data-id$="-inner"]:hover .elementor-icon,
[data-id="services-row2"] [data-id$="-inner"]:hover .elementor-icon {
  background: var(--pvc-color-dark) !important;
  color: #FFFFFF !important;
  transform: scale(1.05) !important;
}

#services-row2 .elementor-icon-box-title,
[data-id="services-row2"] .elementor-icon-box-title {
  font-family: var(--pvc-font-heading);
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #163B4C !important;
  line-height: 1.35 !important;
  margin-bottom: 12px !important;
  min-height: 52px !important;
  display: flex !important;
  align-items: flex-start !important;
}

#services-row2 .elementor-widget-text-editor,
[data-id="services-row2"] .elementor-widget-text-editor {
  margin-bottom: 20px !important;
}

#services-row2 .elementor-widget-text-editor p,
[data-id="services-row2"] .elementor-widget-text-editor p {
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: #64748B !important;
  margin: 0 !important;
}

#services-row2 .elementor-widget-button,
[data-id="services-row2"] .elementor-widget-button {
  margin-top: auto !important;
  padding-top: 14px !important;
  border-top: none !important;
  width: 100% !important;
}

#services-row2 .elementor-button,
[data-id="services-row2"] .elementor-button {
  background-color: transparent !important;
  color: var(--pvc-color-dark) !important;
  padding: 0 !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

#services-row2 .elementor-button:hover,
#services-row2 [data-id$="-inner"]:hover .elementor-button,
[data-id="services-row2"] [data-id$="-inner"]:hover .elementor-button {
  color: var(--pvc-color-coral) !important;
}

#services-row2 .elementor-button:after {
  content: "→" !important;
  display: inline-block !important;
  transition: transform 0.25s ease !important;
}

#services-row2 [data-id$="-inner"]:hover .elementor-button:after,
[data-id="services-row2"] [data-id$="-inner"]:hover .elementor-button:after {
  transform: translateX(4px) !important;
}

#services-tagline {
  max-width: 800px !important;
  margin: 10px auto 50px !important;
  text-align: center !important;
  padding: 0 20px !important;
}

#services-tagline-text p {
  font-size: 16px !important;
  font-weight: 500 !important;
  color: #475569 !important;
  line-height: 1.6 !important;
}

/* ==========================================================================
   Industries We Serve - Mid Align Bottom Row & Clean Border Grid
   ========================================================================== */
/* ==========================================================================
   Compliance Expertise Across Every Sector / Industries We Serve Cards
   ========================================================================== */
[data-id="e7243a1"],
[data-id="525f319"],
.elementor-element-525f319 {
  background-color: var(--pvc-color-bg-light, #F1F6F0) !important;
  padding-top: 80px !important;
  padding-bottom: 85px !important;
}

[data-id="e7243a1"] .features-wrapper,
[data-id="525f319"] .features-wrapper,
.elementor-element-525f319 .features-wrapper {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  border-top: none !important;
}

[data-id="e7243a1"] .features-wrapper .row,
[data-id="525f319"] .features-wrapper .row,
.elementor-element-525f319 .features-wrapper .row {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  margin-left: -12px !important;
  margin-right: -12px !important;
  row-gap: 24px !important;
}

/* Card Column */
[data-id="e7243a1"] .features-wrapper .item-column,
[data-id="525f319"] .features-wrapper .item-column,
.elementor-element-525f319 .features-wrapper .item-column {
  box-sizing: border-box !important;
  padding: 0 12px !important;
  display: flex !important;
  flex-direction: column !important;
  border: none !important;
}

/* White Card Container matching user reference */
[data-id="e7243a1"] .bizzen-features-item.style-one,
[data-id="525f319"] .bizzen-features-item.style-one,
.elementor-element-525f319 .bizzen-features-item.style-one {
  background-color: #FFFFFF !important;
  border: 1px solid #E2E8E0 !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.035) !important;
  padding: 34px 26px 26px !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  width: 100% !important;
  text-align: left !important;
  box-sizing: border-box !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

[data-id="e7243a1"] .bizzen-features-item.style-one:hover,
[data-id="525f319"] .bizzen-features-item.style-one:hover,
.elementor-element-525f319 .bizzen-features-item.style-one:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(13, 56, 49, 0.25) !important;
  box-shadow: 0 14px 32px rgba(13, 56, 49, 0.08) !important;
}

/* Top-left icon */
[data-id="e7243a1"] .bizzen-features-item.style-one .icon,
[data-id="525f319"] .bizzen-features-item.style-one .icon,
.elementor-element-525f319 .bizzen-features-item.style-one .icon {
  margin: 0 0 20px 0 !important;
  width: 38px !important;
  height: 38px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  background: transparent !important;
  transition: transform 0.3s ease !important;
}

[data-id="e7243a1"] .bizzen-features-item.style-one:hover .icon,
[data-id="525f319"] .bizzen-features-item.style-one:hover .icon {
  transform: scale(1.08) !important;
}

[data-id="e7243a1"] .bizzen-features-item.style-one .icon img,
[data-id="525f319"] .bizzen-features-item.style-one .icon img,
.elementor-element-525f319 .bizzen-features-item.style-one .icon img {
  width: 36px !important;
  height: 36px !important;
  object-fit: contain !important;
}

/* Card Content Area */
[data-id="e7243a1"] .bizzen-features-item.style-one .content,
[data-id="525f319"] .bizzen-features-item.style-one .content,
.elementor-element-525f319 .bizzen-features-item.style-one .content {
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
  text-align: left !important;
  padding: 0 !important;
}

[data-id="e7243a1"] .bizzen-features-item.style-one .content h4,
[data-id="525f319"] .bizzen-features-item.style-one .content h4,
.elementor-element-525f319 .bizzen-features-item.style-one .content h4 {
  font-family: var(--pvc-font-heading);
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #163B4C !important;
  line-height: 1.35 !important;
  margin-bottom: 12px !important;
  text-align: left !important;
}

[data-id="e7243a1"] .bizzen-features-item.style-one .content p,
[data-id="525f319"] .bizzen-features-item.style-one .content p,
.elementor-element-525f319 .bizzen-features-item.style-one .content p {
  font-family: var(--pvc-font-sans);
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: #556B66 !important;
  margin-bottom: 0 !important;
  text-align: left !important;
}

/* Bottom Sticked Text Button */
[data-id="e7243a1"] .pvc-card-action,
[data-id="525f319"] .pvc-card-action,
.elementor-element-525f319 .pvc-card-action {
  margin-top: auto !important;
  padding-top: 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

[data-id="e7243a1"] .pvc-card-btn,
[data-id="525f319"] .pvc-card-btn,
.elementor-element-525f319 .pvc-card-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-family: var(--pvc-font-sans);
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  color: #1F1F1F !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
  cursor: pointer !important;
}

[data-id="e7243a1"] .pvc-btn-arrow,
[data-id="525f319"] .pvc-btn-arrow,
.elementor-element-525f319 .pvc-btn-arrow {
  width: 12px !important;
  height: 12px !important;
  transition: transform 0.25s ease !important;
}

[data-id="e7243a1"] .bizzen-features-item.style-one:hover .pvc-card-btn,
[data-id="525f319"] .bizzen-features-item.style-one:hover .pvc-card-btn,
.elementor-element-525f319 .bizzen-features-item.style-one:hover .pvc-card-btn,
.pvc-card-btn:hover {
  color: var(--pvc-color-coral, #E09B3D) !important;
}

[data-id="e7243a1"] .bizzen-features-item.style-one:hover .pvc-btn-arrow,
[data-id="525f319"] .bizzen-features-item.style-one:hover .pvc-btn-arrow,
.pvc-card-btn:hover .pvc-btn-arrow {
  transform: translateX(4px) !important;
}

/* DESKTOP: 4 in Row 1, 3 in Row 2 Centered */
@media (min-width: 1200px) {
  [data-id="e7243a1"] .features-wrapper .item-column,
  [data-id="525f319"] .features-wrapper .item-column,
  .elementor-element-525f319 .features-wrapper .item-column {
    flex: 0 0 25% !important;
    max-width: 25% !important;
    width: 25% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    border: none !important;
  }
}

/* TABLET: 2 Columns with Centered Last Item */
@media (min-width: 768px) and (max-width: 1199.98px) {
  [data-id="e7243a1"] .features-wrapper .item-column,
  [data-id="525f319"] .features-wrapper .item-column,
  .elementor-element-525f319 .features-wrapper .item-column {
    flex: 0 0 50% !important;
    max-width: 50% !important;
    width: 50% !important;
    border: none !important;
    margin-left: 0 !important;
  }
}

/* MOBILE: 1 Column Full Width */
@media (max-width: 767.98px) {
  [data-id="e7243a1"] .features-wrapper .item-column,
  [data-id="525f319"] .features-wrapper .item-column,
  .elementor-element-525f319 .features-wrapper .item-column {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    border: none !important;
    margin-left: 0 !important;
  }
}

/* ==========================================================================
   Compliance Calendar Deadlines - Segregated White Cards
   ========================================================================== */
[data-id="990c3ff"] {
  padding-top: 10px !important;
  padding-bottom: 60px !important;
}

[data-id="compliance-calendar"],
.elementor-element-compliance-calendar {
  padding-top: 60px !important;
  padding-bottom: 10px !important;
}

/* Kill parent theme border-top on features-wrapper */
[data-id="compliance-calendar"] .features-wrapper,
.elementor-element-compliance-calendar .features-wrapper {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  border-top: none !important;
}

/* Flex grid with real gutters */
[data-id="compliance-calendar"] .features-wrapper .row,
.elementor-element-compliance-calendar .features-wrapper .row {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  margin-left: -12px !important;
  margin-right: -12px !important;
  row-gap: 24px !important;
}

/* Kill parent theme border-right dividers */
[data-id="compliance-calendar"] .features-wrapper .item-column,
.elementor-element-compliance-calendar .features-wrapper .item-column {
  box-sizing: border-box !important;
  padding: 0 12px !important;
  display: flex !important;
  flex-direction: column !important;
  border: none !important;
  border-right: none !important;
  flex: 0 0 25% !important;
  max-width: 25% !important;
  width: 25% !important;
  margin-bottom: 0 !important;
}

/* White card container */
[data-id="compliance-calendar"] .bizzen-features-item.style-one,
.elementor-element-compliance-calendar .bizzen-features-item.style-one {
  background-color: #FFFFFF !important;
  border: 1px solid #E2E8E0 !important;
  border-radius: 10px !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.035) !important;
  padding: 28px 24px 24px !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  width: 100% !important;
  text-align: left !important;
  box-sizing: border-box !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  margin: 0 !important;
}

[data-id="compliance-calendar"] .bizzen-features-item.style-one:hover,
.elementor-element-compliance-calendar .bizzen-features-item.style-one:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(13, 56, 49, 0.25) !important;
  box-shadow: 0 14px 32px rgba(13, 56, 49, 0.09) !important;
}

/* Kill pseudo-elements */
[data-id="compliance-calendar"] .bizzen-features-item:before,
[data-id="compliance-calendar"] .bizzen-features-item:after,
.elementor-element-compliance-calendar .bizzen-features-item:before,
.elementor-element-compliance-calendar .bizzen-features-item:after {
  display: none !important;
  content: none !important;
}

/* Icon - direct child of .bizzen-features-item, NOT inside .content */
[data-id="compliance-calendar"] .bizzen-features-item.style-one > .icon,
.elementor-element-compliance-calendar .bizzen-features-item.style-one > .icon {
  margin: 0 0 16px 0 !important;
  width: 42px !important;
  height: 42px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  background: transparent !important;
  flex-shrink: 0 !important;
}

[data-id="compliance-calendar"] .bizzen-features-item.style-one > .icon img,
.elementor-element-compliance-calendar .bizzen-features-item.style-one > .icon img {
  width: 34px !important;
  height: 34px !important;
  object-fit: contain !important;
}

/* Content area */
[data-id="compliance-calendar"] .bizzen-features-item.style-one .content,
.elementor-element-compliance-calendar .bizzen-features-item.style-one .content {
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
  text-align: left !important;
  padding: 0 !important;
}

/* Title */
[data-id="compliance-calendar"] .bizzen-features-item.style-one .content h4,
.elementor-element-compliance-calendar .bizzen-features-item.style-one .content h4 {
  font-family: var(--pvc-font-heading);
  font-size: 17px !important;
  font-weight: 700 !important;
  color: #163B4C !important;
  line-height: 1.35 !important;
  margin-bottom: 12px !important;
  min-height: 46px !important;
  text-align: left !important;
}

/* Due date badge inside <strong> */
[data-id="compliance-calendar"] .bizzen-features-item.style-one .content p strong,
.elementor-element-compliance-calendar .bizzen-features-item.style-one .content p strong {
  display: inline-block !important;
  background: rgba(224, 155, 61, 0.12) !important;
  color: #E09B3D !important;
  font-family: var(--pvc-font-sans);
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  padding: 4px 10px !important;
  border-radius: 4px !important;
  margin-bottom: 8px !important;
  border: 1px solid rgba(224, 155, 61, 0.25) !important;
}

/* Description text */
[data-id="compliance-calendar"] .bizzen-features-item.style-one .content p,
.elementor-element-compliance-calendar .bizzen-features-item.style-one .content p {
  font-family: var(--pvc-font-sans);
  font-size: 13.5px !important;
  line-height: 1.6 !important;
  color: #556B66 !important;
  margin-bottom: 0 !important;
  text-align: left !important;
}

/* Bottom-sticked action button */
[data-id="compliance-calendar"] .pvc-card-action,
.elementor-element-compliance-calendar .pvc-card-action {
  margin-top: auto !important;
  padding-top: 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

[data-id="compliance-calendar"] .pvc-card-btn,
.elementor-element-compliance-calendar .pvc-card-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-family: var(--pvc-font-sans);
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  color: #1F1F1F !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
}

[data-id="compliance-calendar"] .bizzen-features-item.style-one:hover .pvc-card-btn,
.elementor-element-compliance-calendar .bizzen-features-item.style-one:hover .pvc-card-btn {
  color: var(--pvc-color-coral, #E09B3D) !important;
}

[data-id="compliance-calendar"] .pvc-btn-arrow,
.elementor-element-compliance-calendar .pvc-btn-arrow {
  transition: transform 0.25s ease !important;
}

[data-id="compliance-calendar"] .bizzen-features-item.style-one:hover .pvc-btn-arrow,
.elementor-element-compliance-calendar .bizzen-features-item.style-one:hover .pvc-btn-arrow {
  transform: translateX(4px) !important;
}

/* Tablet: 2 columns */
@media (max-width: 1199.98px) {
  [data-id="compliance-calendar"] .features-wrapper .item-column,
  .elementor-element-compliance-calendar .features-wrapper .item-column {
    flex: 0 0 50% !important;
    max-width: 50% !important;
    width: 50% !important;
  }
}

/* Mobile: 1 column */
@media (max-width: 767.98px) {
  [data-id="compliance-calendar"] .features-wrapper .item-column,
  .elementor-element-compliance-calendar .features-wrapper .item-column {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }
}

/* ==========================================================================
   6. Inner Pages Layout & Form Standards
   ========================================================================== */
.tg-page-area,
.bizzen-page-content {
  padding-top: 75px !important;
  padding-bottom: 80px !important;
}

.contact-form input,
.contact-form textarea,
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form textarea {
  width: 100% !important;
  padding: 13px 18px !important;
  border: 1px solid #CBD5E1 !important;
  border-radius: 8px !important;
  font-family: var(--pvc-font-sans);
  font-size: 15px !important;
  transition: all 0.25s ease !important;
}

.contact-form input:focus,
.contact-form textarea:focus,
.wpcf7-form input:focus,
.wpcf7-form textarea:focus {
  border-color: var(--pvc-color-dark) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(13, 56, 49, 0.12) !important;
}


/* ==========================================================================
   Contact Page - Modern Redesign
   ========================================================================== */

/* Overall contact info section */
.bizzen-contact-info-sec {
  background-color: var(--pvc-color-bg-light, #F1F6F0) !important;
  padding-top: 60px !important;
  padding-bottom: 30px !important;
}

.bizzen-contact-info-sec .section-title h2 {
  font-family: var(--pvc-font-heading);
  color: var(--pvc-color-dark-deep, #163B4C) !important;
  font-size: 36px !important;
  font-weight: 700 !important;
}

/* Info cards - modernized */
.bizzen-contact-info-sec {
  padding-top: 60px !important;
  padding-bottom: 0 !important;
}
.bizzen-contact-info-sec .section-title {
  margin-bottom: 32px !important;
}
.bizzen-info-left-box {
  background: #FFFFFF !important;
  border: 1px solid #E2E8E0 !important;
  border-radius: 12px !important;
  padding: 22px 24px !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.04) !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
  min-height: auto !important;
}

.bizzen-info-left-box.mb-40 {
  margin-bottom: 24px !important;
}

.bizzen-info-left-box:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 32px rgba(13, 56, 49, 0.1) !important;
  border-color: rgba(13, 56, 49, 0.2) !important;
}

/* Icon circle */
.bizzen-info-left-box .icon {
  width: 50px !important;
  height: 50px !important;
  min-width: 50px !important;
  background: linear-gradient(135deg, #163B4C 0%, #1A5C4F 100%) !important;
  border-radius: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-right: 18px !important;
  border: none !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.bizzen-info-left-box:hover .icon {
  background: linear-gradient(135deg, var(--pvc-color-coral, #E09B3D) 0%, #C88327 100%) !important;
  transform: scale(1.05) !important;
}

.bizzen-info-left-box .icon i {
  font-size: 20px !important;
  color: #FFFFFF !important;
}

/* Info content */
.bizzen-info-left-box .content {
  flex: 1 1 auto !important;
}

.bizzen-info-left-box .content h5 {
  font-family: var(--pvc-font-heading);
  font-size: 17px !important;
  font-weight: 700 !important;
  color: var(--pvc-color-dark-deep, #163B4C) !important;
  margin-bottom: 4px !important;
}

.bizzen-info-left-box .content p,
.bizzen-info-left-box .content p span {
  font-family: var(--pvc-font-sans);
  font-size: 13.5px !important;
  line-height: 1.5 !important;
  color: #556B66 !important;
  margin-bottom: 0 !important;
}

/* Contact form section */
.bizzen-contact_two {
  background-color: #FFFFFF !important;
  padding-top: 20px !important;
  padding-bottom: 80px !important;
}

/* Map styling */
.bizzen-contact_two .map-box,
.map-box {
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.08) !important;
  border: 1px solid #E2E8E0 !important;
}

.bizzen-contact_two .map-box iframe,
.map-box iframe {
  height: 100% !important;
  min-height: 520px !important;
  border-radius: 14px !important;
  display: block !important;
}

/* Form wrapper */
.bizzen-contact_two .contact-wrapper {
  background: #FAFCFA !important;
  border: 1px solid #E2E8E0 !important;
  border-radius: 14px !important;
  padding: 40px 36px 44px !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
  height: 100% !important;
}

.bizzen-contact_two .contact-wrapper h2 {
  font-family: var(--pvc-font-heading);
  color: var(--pvc-color-dark-deep, #163B4C) !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  margin-bottom: 8px !important;
}

.bizzen-contact_two .contact-wrapper .contact-form p,
.bizzen-contact_two .contact-wrapper > p {
  font-family: var(--pvc-font-sans);
  color: #556B66 !important;
  font-size: 15px !important;
  margin-bottom: 28px !important;
}

/* Elementor form inside contact page */
.bizzen-contact_two .elementor-form .elementor-field-textual {
  background: #FFFFFF !important;
  border: 1px solid #D1DAD7 !important;
  border-radius: 8px !important;
  padding: 12px 16px !important;
  font-family: var(--pvc-font-sans);
  font-size: 14px !important;
  color: #163B4C !important;
  transition: all 0.25s ease !important;
}

.bizzen-contact_two .elementor-form .elementor-field-textual:focus {
  border-color: var(--pvc-color-dark, #163B4C) !important;
  box-shadow: 0 0 0 3px rgba(13, 56, 49, 0.1) !important;
  outline: none !important;
}

.bizzen-contact_two .elementor-form /* Form labels - light background contexts */
.elementor-field-label {
  font-family: var(--pvc-font-sans);
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #163B4C !important;
  margin-bottom: 6px !important;
}

/* Form labels - dark background contexts (homepage consultation form, dark sections) */
.bizzen-contact_one .elementor-field-label,
.elementor-3397 .elementor-field-label,
[data-id="8a21df7"] .elementor-field-label {
  color: rgba(255, 255, 255, 0.85) !important;
}

/* Submit button */
.bizzen-contact_two .elementor-form .elementor-button {
  background: linear-gradient(135deg, #163B4C 0%, #1A5C4F 100%) !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 14px 32px !important;
  font-family: var(--pvc-font-sans);
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  transition: all 0.3s ease !important;
}

.bizzen-contact_two .elementor-form .elementor-button:hover {
  background: linear-gradient(135deg, var(--pvc-color-coral, #E09B3D) 0%, #C88327 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(224, 155, 61, 0.25) !important;
}

/* Responsive */
@media (max-width: 1199.98px) {
  .bizzen-contact_two .map-box iframe,
  .map-box iframe {
    min-height: 400px !important;
  }
}

@media (max-width: 767.98px) {
  .bizzen-contact-info-sec {
    padding-top: 40px !important;
    padding-bottom: 20px !important;
  }
  .bizzen-info-left-box {
    padding: 24px 20px !important;
  }
  .bizzen-contact_two .contact-wrapper {
    padding: 28px 22px 32px !important;
  }
  .bizzen-contact_two .map-box iframe,
  .map-box iframe {
    min-height: 300px !important;
  }
}

/* ==========================================================================
   PVC Complete High-Conversion Footer Architecture & Styles
   ========================================================================== */
.main-footer.pvc-footer {
  background: linear-gradient(180deg, #0E2834 0%, #031D19 100%) !important;
  color: #E2E8F0 !important;
  position: relative !important;
  overflow: hidden !important;
  padding-top: 0 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

/* Hide theme's default awkward watermark image in footer */
.main-footer.pvc-footer .footer-shape {
  display: none !important;
}

/* Remove default theme pseudo-elements that cut across the footer */
.main-footer.pvc-footer .footer-widget-inner:after,
.main-footer.pvc-footer .footer-top:after {
  display: none !important;
  content: none !important;
}

/* Top CTA Banner */
.pvc-footer-cta-wrapper {
  padding-top: 60px;
  padding-bottom: 20px;
}

.pvc-footer-cta-box {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 18px !important;
  padding: 42px 48px !important;
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.25) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
}

.pvc-footer-cta-badge {
  font-family: var(--pvc-font-sans);
  font-size: 11.5px !important;
  font-weight: 700 !important;
  color: #FFA573 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  margin-bottom: 8px !important;
  display: inline-block !important;
}

.pvc-footer-cta-title {
  font-family: var(--pvc-font-heading);
  font-size: 34px !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
  line-height: 1.2 !important;
  margin-bottom: 10px !important;
}

.pvc-footer-cta-desc {
  font-size: 15px !important;
  color: rgba(255, 255, 255, 0.78) !important;
  line-height: 1.6 !important;
  max-width: 580px !important;
  margin: 0 !important;
}

.pvc-footer-cta-actions {
  display: inline-flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  align-items: center !important;
}

.pvc-footer-btn-primary {
  background-color: var(--pvc-color-accent) !important;
  color: var(--pvc-color-dark-deep) !important;
  padding: 14px 28px !important;
  border-radius: 8px !important;
  font-weight: 700 !important;
  font-size: 14.5px !important;
  box-shadow: 0 8px 24px rgba(184, 216, 142, 0.28) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  transition: all 0.3s ease !important;
  text-decoration: none !important;
}

.pvc-footer-btn-primary:hover {
  background-color: #FFFFFF !important;
  color: var(--pvc-color-dark-deep) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 28px rgba(255, 255, 255, 0.3) !important;
}

.pvc-footer-btn-wa {
  background-color: rgba(37, 211, 102, 0.15) !important;
  color: #25D366 !important;
  border: 1px solid rgba(37, 211, 102, 0.35) !important;
  padding: 13px 22px !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
  font-size: 14.5px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  transition: all 0.3s ease !important;
  text-decoration: none !important;
}

.pvc-footer-btn-wa:hover {
  background-color: #25D366 !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px rgba(37, 211, 102, 0.3) !important;
}

/* Main Content Area */
.pvc-footer-content {
  padding-top: 55px !important;
  padding-bottom: 55px !important;
}

.pvc-footer .footer-logo img {
  max-height: 48px !important;
  width: auto !important;
}

.pvc-footer-about-text {
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: rgba(255, 255, 255, 0.72) !important;
  margin-bottom: 16px !important;
}

.pvc-footer-tagline span {
  display: inline-block !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: var(--pvc-color-accent) !important;
  background: rgba(184, 216, 142, 0.1) !important;
  border: 1px solid rgba(184, 216, 142, 0.25) !important;
  padding: 5px 12px !important;
  border-radius: 20px !important;
  margin-bottom: 22px !important;
}

.pvc-footer-social {
  display: flex !important;
  gap: 10px !important;
  align-items: center !important;
}

.pvc-footer-social a {
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.07) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  color: #FFFFFF !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 14.5px !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
}

.pvc-footer-social a:hover {
  background: var(--pvc-color-accent) !important;
  color: var(--pvc-color-dark-deep) !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 6px 18px rgba(184, 216, 142, 0.35) !important;
}

/* Widget Titles */
.pvc-footer-widget-title {
  font-family: var(--pvc-font-heading);
  font-size: 17.5px !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
  margin-bottom: 22px !important;
  position: relative !important;
  padding-bottom: 12px !important;
  letter-spacing: 0.02em !important;
}

.pvc-footer-widget-title:after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 28px !important;
  height: 2.5px !important;
  background: var(--pvc-color-coral) !important;
  border-radius: 2px !important;
}

/* Navigation Lists */
.pvc-footer-menu {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.pvc-footer-menu li {
  margin-bottom: 11px !important;
  padding: 0 !important;
}

.pvc-footer-menu li a {
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  transition: all 0.2s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  text-decoration: none !important;
}

.pvc-footer-menu li a:hover {
  color: var(--pvc-color-accent) !important;
  transform: translateX(4px) !important;
}

.pvc-footer-menu li.pvc-all-services-link a {
  color: var(--pvc-color-accent) !important;
  font-weight: 600 !important;
  margin-top: 6px !important;
}

.pvc-footer-menu li.pvc-all-services-link a:hover {
  color: #FFFFFF !important;
}

/* Contact List */
.pvc-contact-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.pvc-contact-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 14px !important;
  margin-bottom: 18px !important;
}

.pvc-contact-icon {
  width: 34px !important;
  height: 34px !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  color: var(--pvc-color-coral) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 14px !important;
  flex-shrink: 0 !important;
  margin-top: 2px !important;
  transition: all 0.25s ease !important;
}

.pvc-contact-item:hover .pvc-contact-icon {
  background: var(--pvc-color-coral) !important;
  color: #FFFFFF !important;
}

.pvc-contact-details {
  font-size: 13.5px !important;
  line-height: 1.55 !important;
}

.pvc-contact-details strong {
  display: block !important;
  font-size: 11.5px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: rgba(255, 255, 255, 0.5) !important;
  margin-bottom: 2px !important;
}

.pvc-contact-details span {
  color: rgba(255, 255, 255, 0.8) !important;
}

.pvc-contact-details a {
  color: rgba(255, 255, 255, 0.85) !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.pvc-contact-details a:hover {
  color: var(--pvc-color-accent) !important;
}

/* Copyright Row */
.copyright-area.pvc-copyright {
  background-color: #031815 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  padding: 22px 0 !important;
  font-size: 13.5px !important;
  color: rgba(255, 255, 255, 0.5) !important;
}

.pvc-legal-links a {
  color: rgba(255, 255, 255, 0.6) !important;
  font-size: 13.5px !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.pvc-legal-links a:hover {
  color: var(--pvc-color-accent) !important;
}

.pvc-legal-links .divider {
  margin: 0 10px !important;
  color: rgba(255, 255, 255, 0.25) !important;
}

/* Responsive Overrides */
@media (max-width: 991.98px) {
  .pvc-footer-cta-box {
    padding: 32px 26px !important;
  }
  .pvc-footer-cta-title {
    font-size: 28px !important;
  }
  .pvc-footer-content {
    padding-top: 40px !important;
    padding-bottom: 30px !important;
  }
}

@media (max-width: 767.98px) {
  .pvc-footer-cta-actions {
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
  }
  .pvc-footer-cta-actions a {
    justify-content: center !important;
  }
}

/* ==========================================================================
   8. Responsive & Mobile Optimizations
   ========================================================================= */
@media (max-width: 991.98px) {
  .bizzen-hero_one {
    padding-top: 90px !important;
    padding-bottom: 50px !important;
  }
  #services-row2 > .e-con {
    flex: 1 1 45% !important;
  }
  #homepage-founder-inner {
    flex-direction: column !important;
    text-align: center;
    padding: 32px 24px !important;
  }
  #homepage-founder-inner .elementor-widget-button {
    text-align: center !important;
  }
}

@media (max-width: 767.98px) {
  .header-navigation .container-fluid {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .page-hero-area {
    padding-top: 65px !important;
    padding-bottom: 50px !important;
  }
  .page-hero-area .page-content h1 {
    font-size: 28px !important;
  }
  #services-row2 > .e-con {
    flex: 1 1 100% !important;
  }
  .bizzen-hero_one .hero-content h1 {
    font-size: 32px !important;
    line-height: 1.25 !important;
  }
}

/* ==========================================================================
   9. Anti-Slop Supplementary Rules (v1.3.1)
   ========================================================================== */

/* #12: Timeline connector - cap the line endpoints */
.bizzen-award-area.style-four .timeline-line,
.bizzen-award-area.style-four .award-timeline::before,
.bizzen-award-area.style-four .award-timeline::after {
  border-radius: 4px !important;
}

/* #13: Founder section - style the placeholder area */
#homepage-founder .elementor-widget-image .elementor-widget-container {
  background-color: var(--pvc-color-bg-light) !important;
  border-radius: var(--pvc-radius-card) !important;
  min-height: 300px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* #16: Practice Areas tagline - sentence case override */
#services-tagline-text .elementor-widget-container p {
  text-transform: none !important;
}

/* #24: Client logos - uniform background treatment */
.bizzen-company-sec .client-item,
.bizzen-company-sec .swiper-slide {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 16px !important;
  background: transparent !important;
}

.bizzen-company-sec .client-item img {
  background: transparent !important;
  border: none !important;
  object-fit: contain !important;
}

/* #28: Footer CTA form - better placeholder contrast */
.footer-area input::placeholder,
.footer-area textarea::placeholder {
  color: rgba(255, 255, 255, 0.55) !important;
}

.footer-area input,
.footer-area textarea {
  color: #FFFFFF !important;
}

/* #29: WhatsApp widget - prevent overlapping footer content */
.joinchat__app {
  z-index: 999 !important;
}

/* Additional responsive rules */
@media (max-width: 991.98px) {
  #services-row2 > .e-con {
    flex: 1 1 45% !important;
    max-width: none !important;
    min-width: auto !important;
  }
}

@media (max-width: 767.98px) {
  .bizzen-hero_one {
    padding-top: 85px !important;
    padding-bottom: 40px !important;
  }
  #services-row2 > .e-con {
    flex: 1 1 100% !important;
    max-width: 100% !important;
  }
}



/* ==========================================================================
   CTA Section Enhancement: Ready to Register Your Company or Get Compliant?
   ========================================================================== */
.bizzen-cta-sec {
  position: relative !important;
  background: linear-gradient(135deg, #0E2834 0%, #0A3730 50%, #0F493F 100%) !important;
  padding: 85px 0 !important;
  overflow: hidden !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.bizzen-cta-sec:before {
  content: "" !important;
  position: absolute !important;
  top: -30% !important;
  right: -10% !important;
  width: 600px !important;
  height: 600px !important;
  background: radial-gradient(circle, rgba(184, 216, 142, 0.16) 0%, transparent 70%) !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

.bizzen-cta-sec:after {
  display: none !important;
}

.bizzen-cta-sec .container {
  position: relative !important;
  z-index: 2 !important;
  max-width: 1240px !important;
}

.bizzen-cta-sec .row {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border-radius: 20px !important;
  padding: 48px 54px !important;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.3) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

.bizzen-cta-sec .section-title {
  margin-bottom: 0 !important;
  text-align: left !important;
}

.bizzen-cta-sec .section-title:before {
  content: "FAST-TRACK INCORPORATION & STATUTORY ADVISORY" !important;
  display: inline-block !important;
  font-family: var(--pvc-font-sans);
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #E09B3D !important;
  margin-bottom: 12px !important;
}

.bizzen-cta-sec .section-title h2 {
  font-family: var(--pvc-font-heading);
  font-size: 38px !important;
  font-weight: 700 !important;
  color: #163B4C !important;
  line-height: 1.25 !important;
  margin-bottom: 12px !important;
  letter-spacing: -0.01em !important;
  text-wrap: balance !important;
}

.bizzen-cta-sec .section-title:after {
  content: "Speak directly with certified Practising Company Secretaries. Transparent process, clear communication, fixed fees." !important;
  display: block !important;
  font-family: var(--pvc-font-sans);
  font-size: 15px !important;
  line-height: 1.6 !important;
  color: #475569 !important;
  margin-top: 10px !important;
  max-width: 580px !important;
}

.bizzen-cta-sec .bizzen-button {
  margin-bottom: 0 !important;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
}

.bizzen-cta-sec .bizzen-button .theme-btn.style-one {
  background-color: var(--pvc-color-accent, #E09B3D) !important;
  color: #062823 !important;
  padding: 17px 36px !important;
  border-radius: 10px !important;
  font-family: var(--pvc-font-sans);
  font-size: 15.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  box-shadow: 0 10px 28px rgba(184, 216, 142, 0.3) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  text-decoration: none !important;
  border: none !important;
}

.bizzen-cta-sec .bizzen-button .theme-btn.style-one:hover {
  background-color: #FFFFFF !important;
  color: #062823 !important;
  transform: translateY(-3px) scale(1.02) !important;
  box-shadow: 0 16px 36px rgba(255, 255, 255, 0.35) !important;
}

.bizzen-cta-sec .bizzen-button .theme-btn.style-one i {
  transition: transform 0.25s ease !important;
}

.bizzen-cta-sec .bizzen-button .theme-btn.style-one:hover i {
  transform: translateX(5px) !important;
}

@media (max-width: 1199.98px) {
  .bizzen-cta-sec .row {
    padding: 38px 30px !important;
  }
  .bizzen-cta-sec .section-title h2 {
    font-size: 32px !important;
  }
  .bizzen-cta-sec .bizzen-button {
    margin-top: 24px !important;
    justify-content: flex-start !important;
  }
}

@media (max-width: 767.98px) {
  .bizzen-cta-sec {
    padding: 55px 0 !important;
  }
  .bizzen-cta-sec .row {
    padding: 28px 20px !important;
  }
  .bizzen-cta-sec .section-title h2 {
    font-size: 26px !important;
  }
  .bizzen-cta-sec .bizzen-button .theme-btn.style-one {
    width: 100% !important;
    justify-content: center !important;
  }
}

/* ==========================================================================
   CLIENT LOGOS CONTINUOUS MARQUEE & UNIFORM SIZING (FULL COLOR & HIGH RES)
   ========================================================================== */
.bizzen-company-sec,
[data-id="93c73a3"],
[data-id="7f4df60"],
.elementor-element-7f4df60 {
  background-color: var(--pvc-color-bg-light, #F1F6F0) !important;
}

.elementor-element-7f4df60,
[data-id="7f4df60"] {
  padding: 0 !important;
  margin: 0 !important;
}

.bizzen-company-sec,
[data-id="93c73a3"] {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  overflow: hidden !important;
}

/* Remove parent theme pb-120 override */
.bizzen-company-sec.pb-120 {
  padding-bottom: 45px !important;
}

/* Override theme pt-115 and pt-120 on logo marquee section */
.bizzen-company-sec.pt-120,
.bizzen-company-sec.pt-115 {
  padding-top: 32px !important;
}

/* Ensure bizzen-company-sec itself has tight vertical padding */
.bizzen-company-sec {
  padding-top: 32px !important;
  padding-bottom: 32px !important;
}

/* Remove awkward margins from adjacent sections on About Us */
.elementor-element-2389c13,
[data-id="2389c13"] {
  margin-bottom: 0 !important;
}

.elementor-element-762d4ec,
[data-id="762d4ec"] {
  margin-top: 0 !important;
}

.bizzen-company-sec .text-box {
  margin-bottom: 25px !important;
  position: relative !important;
}

.bizzen-company-sec .text-box:after {
  display: none !important;
}

.bizzen-company-sec .text-box h6 {
  background: transparent !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--pvc-color-primary, #163B4C) !important;
  padding: 0 !important;
}

/* Gradient fade masks on left and right for seamless edges */
.bizzen-company-sec .container-fluid {
  position: relative !important;
  -webkit-mask-image: linear-gradient(to right, transparent 0%, black 5%, black 95%, transparent 100%) !important;
  mask-image: linear-gradient(to right, transparent 0%, black 5%, black 95%, transparent 100%) !important;
}

/* Slick Track in continuous linear flow */
.bizzen-company-sec .clients-slider .slick-track {
  display: flex !important;
  align-items: center !important;
  transition-timing-function: linear !important;
  -webkit-transition-timing-function: linear !important;
}

/* Slide item containers - increased height & spacing */
.bizzen-company-sec .bizzen-client-item,
.bizzen-client-item {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 85px !important;
  padding: 0 28px !important;
  box-sizing: border-box !important;
  outline: none !important;
}

.bizzen-company-sec .client-img,
.bizzen-client-item .client-img {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
}

/* Logo images - 52px max-height, 175px max-width, FULL COLOR (never grayscale) */
.bizzen-company-sec .client-img img,
.bizzen-client-item .client-img img,
.bizzen-company-sec img {
  max-height: 52px !important;
  max-width: 175px !important;
  height: auto !important;
  width: auto !important;
  object-fit: contain !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
  filter: none !important;
  -webkit-filter: none !important;
  opacity: 1 !important;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  cursor: pointer !important;
}

/* Hover effect on logo: gentle scale lift */
.bizzen-company-sec .client-img img:hover,
.bizzen-company-sec .bizzen-client-item:hover .client-img img,
.bizzen-client-item:hover .client-img img {
  filter: none !important;
  -webkit-filter: none !important;
  opacity: 1 !important;
  transform: scale(1.08) !important;
}

@media (max-width: 767.98px) {
  .bizzen-company-sec,
  [data-id="93c73a3"] {
    padding-top: 35px !important;
    padding-bottom: 35px !important;
  }
  .bizzen-company-sec.pb-120 {
    padding-bottom: 35px !important;
  }
  .bizzen-company-sec .bizzen-client-item {
    padding: 0 16px !important;
    height: 65px !important;
  }
  .bizzen-company-sec .client-img img {
    max-height: 40px !important;
    max-width: 130px !important;
  }
}

/* ==========================================================================
   Consultation Form Section (bizzen-contact_one): Remove extra white space
   ========================================================================== */
.bizzen-contact_one {
  background-color: #0E2834 !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.bizzen-contact_one .contact-wrapper {
  margin-bottom: 0 !important;
  background-color: #0E2834 !important;
}

.bizzen-contact_one .contact-form-wrapper,
.bizzen-contact_one .contact-wrapper .contact-form-wrapper {
  margin-bottom: 0 !important;
  padding-bottom: 70px !important;
  background-color: #0E2834 !important;
}

.elementor-element-8a21df7,
[data-id="8a21df7"] {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  background-color: #0E2834 !important;
}

.elementor-element-home-cta-section,
[data-id="home-cta-section"] {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* ==========================================================================
   Meet The Founder Section: Full-width clean section, zero round edges
   ========================================================================== */
#homepage-founder,
[data-id="homepage-founder"],
.elementor-element-homepage-founder {
  background-color: #F4F8EC !important;
  background-image: none !important;
  border-radius: 0 !important;
  border: none !important;
  padding-top: 80px !important;
  padding-bottom: 80px !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  box-shadow: none !important;
}

#homepage-founder-inner,
[data-id="homepage-founder-inner"],
.elementor-element-homepage-founder-inner {
  background-color: transparent !important;
  background-image: none !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 auto !important;
  max-width: 1200px !important;
  width: 100% !important;
}

#homepage-founder-inner > .e-con-inner,
[data-id="homepage-founder-inner"] > .e-con-inner {
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

@media (max-width: 991.98px) {
  #homepage-founder,
  [data-id="homepage-founder"] {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
}

/* ==========================================================================
   PVC Bespoke Blog Archive & Insights Grid
   ========================================================================== */

.pvc-blog-archive-area {
  padding: 60px 0 90px;
  background-color: #f8fafc;
  min-height: 80vh;
}

.pvc-blog-filter-wrap {
  margin-bottom: 40px;
}

.pvc-filter-pills {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.pvc-filter-pills .pvc-pill {
  display: inline-flex;
  align-items: center;
  padding: 8px 20px;
  border-radius: 50px;
  font-size: 13px;
  font-weight: 600;
  font-family: var(--pvc-font-sans);
  color: #163B4C;
  background: #ffffff;
  border: 1px solid rgba(22, 59, 76, 0.12);
  text-decoration: none;
  transition: all 0.25s ease;
  box-shadow: 0 2px 4px rgba(22, 59, 76, 0.03);
}

.pvc-filter-pills .pvc-pill:hover {
  background: #163B4C;
  color: #ffffff;
  border-color: #163B4C;
  transform: translateY(-1px);
}

.pvc-filter-pills .pvc-pill.active {
  background: #163B4C;
  color: #ffffff;
  border-color: #163B4C;
  box-shadow: 0 4px 10px rgba(22, 59, 76, 0.15);
}

/* 3-Column Responsive Grid */
.pvc-blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  margin-bottom: 50px;
}

@media (max-width: 1024px) {
  .pvc-blog-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
}

@media (max-width: 680px) {
  .pvc-blog-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}

/* Card Style */
.pvc-blog-card {
  background: #ffffff;
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(22, 59, 76, 0.08);
  box-shadow: 0 4px 20px rgba(22, 59, 76, 0.04);
  display: flex;
  flex-direction: column;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease;
  height: 100%;
}

.pvc-blog-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 35px -10px rgba(22, 59, 76, 0.12);
  border-color: rgba(224, 155, 61, 0.3);
}

/* Card Thumbnail & Floating Badge */
.pvc-blog-thumb {
  position: relative;
  width: 100%;
  height: 220px;
  overflow: hidden;
  background-color: #163B4C;
}

.pvc-blog-thumb a {
  display: block;
  width: 100%;
  height: 100%;
}

.pvc-blog-thumb .pvc-thumb-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.pvc-blog-card:hover .pvc-thumb-img {
  transform: scale(1.06);
}

.pvc-card-badge {
  position: absolute;
  top: 14px;
  left: 14px;
  background: #E09B3D;
  color: #ffffff;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 4px 12px;
  border-radius: 50px;
  pointer-events: none;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  font-family: var(--pvc-font-sans);
  z-index: 2;
}

/* Card Body */
.pvc-blog-body {
  padding: 24px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.pvc-card-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: #64748B;
  margin-bottom: 12px;
  font-family: var(--pvc-font-sans);
}

.pvc-card-meta i {
  color: #E09B3D;
  margin-right: 4px;
}

.pvc-meta-dot {
  color: #CBD5E1;
}

.pvc-card-title {
  font-family: var(--pvc-font-heading);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  margin: 0 0 12px;
}

.pvc-card-title a {
  color: #163B4C;
  text-decoration: none;
  transition: color 0.2s ease;
}

.pvc-card-title a:hover {
  color: #E09B3D;
}

.pvc-card-excerpt {
  font-size: 14px;
  line-height: 1.6;
  color: #475569;
  margin-bottom: 20px;
  flex-grow: 1;
}

.pvc-card-excerpt p {
  margin: 0;
}

/* Card Footer */
.pvc-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 16px;
  border-top: 1px solid rgba(22, 59, 76, 0.08);
  font-size: 13px;
}

.pvc-author-tag {
  color: #64748B;
  display: flex;
  align-items: center;
  gap: 6px;
  font-weight: 500;
  font-family: var(--pvc-font-sans);
}

.pvc-author-tag i {
  color: #163B4C;
}

.pvc-read-more {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #163B4C;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.2s ease;
  font-family: var(--pvc-font-sans);
}

.pvc-read-more i {
  color: #E09B3D;
  transition: transform 0.2s ease;
}

.pvc-read-more:hover {
  color: #E09B3D;
}

.pvc-read-more:hover i {
  transform: translateX(4px);
}

/* Pagination */
.pvc-pagination-wrapper {
  margin-top: 40px;
  display: flex;
  justify-content: center;
}

.pvc-pagination-list {
  display: flex;
  align-items: center;
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.pvc-pagination-list .pvc-page-item {
  display: inline-flex;
}

.pvc-pagination-list .pvc-page-item .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 42px;
  padding: 0 14px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  font-family: var(--pvc-font-sans);
  color: #163B4C;
  background: #ffffff;
  border: 1px solid rgba(22, 59, 76, 0.12);
  text-decoration: none;
  transition: all 0.2s ease;
}

.pvc-pagination-list .pvc-page-item .page-numbers:hover {
  background: #E09B3D;
  color: #ffffff;
  border-color: #E09B3D;
}

.pvc-pagination-list .pvc-page-item.active .page-numbers,
.pvc-pagination-list .pvc-page-item .page-numbers.current {
  background: #163B4C;
  color: #ffffff;
  border-color: #163B4C;
  box-shadow: 0 4px 12px rgba(22, 59, 76, 0.2);
}

/* ==========================================================================
   PVC Homepage Practice Areas Section (Matching Demo Features Layout)
   ========================================================================== */

#homepage-practice-areas,
.pvc-practice-areas-section,
[data-id="homepage-practice-areas"] {
  background-color: #F8FAF9 !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  box-shadow: none !important;
}

#homepage-practice-areas .bizzen-features_one,
.pvc-practice-areas-section .bizzen-features_one {
  padding: 12px 0 60px !important;
  background-color: #F8FAF9 !important;
}

#homepage-practice-areas .section-title,
.pvc-practice-areas-section .section-title {
  margin-bottom: 50px !important;
  text-align: center !important;
}

#homepage-practice-areas .section-title .sub-title,
.pvc-practice-areas-section .section-title .sub-title {
  color: #E09B3D !important;
  font-family: var(--pvc-font-sans);
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  display: inline-block !important;
  margin-bottom: 12px !important;
  position: relative !important;
}

#homepage-practice-areas .section-title .sub-title:after,
.pvc-practice-areas-section .section-title .sub-title:after {
  content: "" !important;
  display: inline-block !important;
  width: 35px !important;
  height: 2px !important;
  background-color: #E09B3D !important;
  vertical-align: middle !important;
  margin-left: 10px !important;
}

#homepage-practice-areas .section-title h2,
.pvc-practice-areas-section .section-title h2 {
  font-family: var(--pvc-font-heading);
  font-size: 42px !important;
  font-weight: 700 !important;
  color: #163B4C !important;
  line-height: 1.25 !important;
  margin: 0 auto !important;
  max-width: 800px !important;
}

@media (max-width: 991px) {
  #homepage-practice-areas .section-title h2,
  .pvc-practice-areas-section .section-title h2 {
    font-size: 32px !important;
  }
}

@media (max-width: 575px) {
  #homepage-practice-areas .section-title h2,
  .pvc-practice-areas-section .section-title h2 {
    font-size: 26px !important;
  }
}

/* Features Wrapper & Vertical Dividers */
#homepage-practice-areas .features-wrapper,
.pvc-practice-areas-section .features-wrapper {
  border-top: none !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

#homepage-practice-areas .features-wrapper .row,
.pvc-practice-areas-section .features-wrapper .row {
  display: flex !important;
  flex-wrap: wrap !important;
  margin: 0 !important;
  justify-content: center !important;
}

#homepage-practice-areas .features-wrapper .item-column,
.pvc-practice-areas-section .features-wrapper .item-column {
  padding: 0 !important;
  border-right: 1px solid rgba(22, 59, 76, 0.12) !important;
  border-left: none !important;
  border-top: none !important;
  border-bottom: none !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

@media (min-width: 1200px) {
  #homepage-practice-areas .features-wrapper .item-column,
  .pvc-practice-areas-section .features-wrapper .item-column {
    flex: 0 0 25% !important;
    max-width: 25% !important;
    width: 25% !important;
  }
  #homepage-practice-areas .features-wrapper .item-column:last-child,
  .pvc-practice-areas-section .features-wrapper .item-column:last-child {
    border-right: none !important;
  }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  #homepage-practice-areas .features-wrapper .item-column,
  .pvc-practice-areas-section .features-wrapper .item-column {
    flex: 0 0 50% !important;
    max-width: 50% !important;
    width: 50% !important;
  }
  #homepage-practice-areas .features-wrapper .item-column:nth-child(2n),
  .pvc-practice-areas-section .features-wrapper .item-column:nth-child(2n) {
    border-right: none !important;
  }
  #homepage-practice-areas .features-wrapper .item-column:nth-child(-n+2),
  .pvc-practice-areas-section .features-wrapper .item-column:nth-child(-n+2) {
    border-bottom: 1px solid rgba(22, 59, 76, 0.12) !important;
  }
}

@media (max-width: 767.98px) {
  #homepage-practice-areas .features-wrapper .item-column,
  .pvc-practice-areas-section .features-wrapper .item-column {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    border-right: none !important;
    border-bottom: 1px solid rgba(22, 59, 76, 0.12) !important;
  }
  #homepage-practice-areas .features-wrapper .item-column:last-child,
  .pvc-practice-areas-section .features-wrapper .item-column:last-child {
    border-bottom: none !important;
  }
}

/* Individual Feature Item - Left Aligned to match site standard */
#homepage-practice-areas .bizzen-features-item.style-one,
.pvc-practice-areas-section .bizzen-features-item.style-one {
  background: #FFFFFF !important;
  border: 1px solid rgba(22, 59, 76, 0.08) !important;
  border-radius: 14px !important;
  box-shadow: 0 4px 18px rgba(22, 59, 76, 0.04) !important;
  padding: 36px 28px 30px !important;
  text-align: left !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  height: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

#homepage-practice-areas .bizzen-features-item.style-one:hover,
.pvc-practice-areas-section .bizzen-features-item.style-one:hover {
  background-color: #FFFFFF !important;
  border-color: #E09B3D !important;
  transform: translateY(-5px) !important;
  box-shadow: 0 12px 30px rgba(22, 59, 76, 0.1) !important;
}

/* Content & Typography matching left alignment */
#homepage-practice-areas .bizzen-features-item.style-one .content,
.pvc-practice-areas-section .bizzen-features-item.style-one .content {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  text-align: left !important;
  width: 100% !important;
  padding: 0 !important;
  flex: 1 1 auto !important;
}

#homepage-practice-areas .bizzen-features-item.style-one .content h4,
.pvc-practice-areas-section .bizzen-features-item.style-one .content h4 {
  font-family: var(--pvc-font-heading);
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #163B4C !important;
  line-height: 1.35 !important;
  margin: 0 0 16px 0 !important;
  text-align: left !important;
  min-height: 54px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
}

#homepage-practice-areas .bizzen-features-item.style-one .content h4 a,
.pvc-practice-areas-section .bizzen-features-item.style-one .content h4 a {
  color: #163B4C !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
  text-align: left !important;
}

#homepage-practice-areas .bizzen-features-item.style-one .content h4 a:hover,
.pvc-practice-areas-section .bizzen-features-item.style-one .content h4 a:hover,
#homepage-practice-areas .bizzen-features-item.style-one:hover .content h4 a,
.pvc-practice-areas-section .bizzen-features-item.style-one:hover .content h4 a {
  color: #E09B3D !important;
}

/* Left-aligned Icon */
#homepage-practice-areas .bizzen-features-item.style-one .content .icon,
.pvc-practice-areas-section .bizzen-features-item.style-one .content .icon {
  margin: 0 0 20px 0 !important;
  width: 54px !important;
  height: 54px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  background: transparent !important;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

#homepage-practice-areas .bizzen-features-item.style-one:hover .content .icon,
.pvc-practice-areas-section .bizzen-features-item.style-one .content .icon {
  transform: scale(1.1) translateY(-2px) !important;
}

#homepage-practice-areas .bizzen-features-item.style-one .content .icon img,
.pvc-practice-areas-section .bizzen-features-item.style-one .content .icon img {
  width: 44px !important;
  height: 44px !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
}

/* Description text - Left Aligned */
#homepage-practice-areas .bizzen-features-item.style-one .content p,
.pvc-practice-areas-section .bizzen-features-item.style-one .content p {
  font-family: var(--pvc-font-sans);
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: #64748B !important;
  margin: 0 0 20px 0 !important;
  text-align: left !important;
  max-width: 100% !important;
}

/* Action CTA link - Left Aligned */
#homepage-practice-areas .bizzen-features-item.style-one .pvc-card-action,
.pvc-practice-areas-section .bizzen-features-item.style-one .pvc-card-action {
  margin-top: auto !important;
  padding-top: 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
}

#homepage-practice-areas .bizzen-features-item.style-one .pvc-card-btn,
.pvc-practice-areas-section .bizzen-features-item.style-one .pvc-card-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-family: var(--pvc-font-sans);
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  color: #163B4C !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
  cursor: pointer !important;
}

#homepage-practice-areas .bizzen-features-item.style-one .pvc-card-btn:hover,
.pvc-practice-areas-section .bizzen-features-item.style-one .pvc-card-btn:hover {
  color: #E09B3D !important;
}

/* ==========================================================================
   PVC Bespoke Single Service & Service Archive Overhaul
   ========================================================================== */

/* Hero Banner (Single & Archive) — Executive Practice Hero */
.pvc-service-hero {
  position: relative;
  background: linear-gradient(135deg, #091C25 0%, #0E2834 35%, #163B4C 75%, #1F4E64 100%);
  padding: 125px 0 65px;
  color: #FFFFFF;
  border-bottom: 3px solid #E09B3D;
  overflow: hidden;
}

.pvc-service-hero .pvc-hero-decor-orb {
  position: absolute;
  top: -20%;
  right: 5%;
  width: 550px;
  height: 550px;
  background: radial-gradient(circle, rgba(224, 155, 61, 0.08) 0%, rgba(22, 59, 76, 0) 70%);
  pointer-events: none;
  z-index: 1;
}

.pvc-service-hero .container {
  position: relative;
  z-index: 2;
}

/* Breadcrumb styling */
.pvc-hero-breadcrumb {
  font-family: var(--pvc-font-sans);
  font-size: 13px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.7);
  margin-bottom: 22px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.pvc-hero-breadcrumb a {
  color: rgba(255, 255, 255, 0.85);
  text-decoration: none;
  transition: all 0.2s ease;
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.pvc-hero-breadcrumb a:hover {
  color: #E09B3D;
}

.pvc-hero-breadcrumb .sep {
  color: rgba(224, 155, 61, 0.6);
  font-size: 11px;
  display: inline-flex;
  align-items: center;
}

.pvc-hero-breadcrumb .current {
  color: #E09B3D;
  font-weight: 600;
}

/* Category Badge */
.pvc-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(224, 155, 61, 0.12);
  border: 1px solid rgba(224, 155, 61, 0.32);
  color: #E09B3D;
  font-family: var(--pvc-font-sans);
  font-size: 11.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 6px 14px;
  border-radius: 6px;
  margin-bottom: 18px;
}

/* Title */
.pvc-hero-title {
  font-family: var(--pvc-font-heading);
  font-size: 40px;
  font-weight: 800;
  color: #FFFFFF;
  line-height: 1.22;
  letter-spacing: -0.01em;
  margin: 0 0 16px;
}

/* Lead */
.pvc-hero-lead {
  font-family: var(--pvc-font-sans);
  font-size: 15.5px;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.88);
  margin: 0 0 24px;
  max-width: 640px;
}

/* Trust Credentials Strip */
.pvc-hero-trust-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 28px;
}

.pvc-trust-pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 6px;
  padding: 6px 12px;
  font-family: var(--pvc-font-sans);
  font-size: 12px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.92);
}

.pvc-trust-pill i {
  color: #E09B3D;
  font-size: 12px;
}

/* Hero Action CTAs */
.pvc-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
}

.pvc-hero-btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  background: linear-gradient(135deg, #E09B3D 0%, #C88327 100%);
  color: #FFFFFF !important;
  font-family: var(--pvc-font-sans);
  font-size: 14px;
  font-weight: 700;
  padding: 12px 24px;
  border-radius: 8px;
  text-decoration: none;
  box-shadow: 0 6px 18px rgba(224, 155, 61, 0.28);
  transition: all 0.25s ease;
}

.pvc-hero-btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(224, 155, 61, 0.4);
  color: #FFFFFF !important;
}

.pvc-hero-btn-secondary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(37, 211, 102, 0.12);
  border: 1px solid rgba(37, 211, 102, 0.4);
  color: #25D366 !important;
  font-family: var(--pvc-font-sans);
  font-size: 14px;
  font-weight: 700;
  padding: 12px 22px;
  border-radius: 8px;
  text-decoration: none;
  transition: all 0.25s ease;
}

.pvc-hero-btn-secondary:hover {
  background: #25D366;
  color: #FFFFFF !important;
  transform: translateY(-2px);
}

/* Right Executive Card */
.pvc-hero-exec-card {
  background: rgba(14, 40, 52, 0.88);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border: 1px solid rgba(224, 155, 61, 0.28);
  border-radius: 16px;
  padding: 24px 26px;
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.1);
  position: relative;
}

.pvc-exec-card-header {
  display: flex;
  align-items: center;
  gap: 14px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.09);
  margin-bottom: 18px;
}

.pvc-exec-avatar {
  width: 46px;
  height: 46px;
  border-radius: 12px;
  background: linear-gradient(135deg, #163B4C, #0E2834);
  border: 1.5px solid #E09B3D;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #E09B3D;
  font-size: 20px;
  flex-shrink: 0;
}

.pvc-exec-info {
  flex-grow: 1;
}

.pvc-exec-name {
  font-family: var(--pvc-font-sans);
  font-size: 17px;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0 0 2px;
}

.pvc-exec-designation {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.65);
  margin: 0;
}

.pvc-exec-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 600;
  color: #25D366;
  background: rgba(37, 211, 102, 0.1);
  border: 1px solid rgba(37, 211, 102, 0.25);
  padding: 4px 10px;
  border-radius: 50px;
}

.pvc-live-indicator {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #25D366;
  display: inline-block;
}

/* Meta grid */
.pvc-exec-meta-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 18px;
}

.pvc-meta-item {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 8px;
  padding: 10px 12px;
}

.pvc-meta-label {
  display: block;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #E09B3D;
  font-weight: 700;
  margin-bottom: 4px;
}

.pvc-meta-value {
  display: block;
  font-size: 12px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.92);
  line-height: 1.35;
}

/* Frameworks */
.pvc-exec-frameworks {
  margin-bottom: 18px;
}

.pvc-ef-label {
  display: block;
  font-size: 10.5px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: rgba(255, 255, 255, 0.7);
  margin-bottom: 8px;
  font-weight: 700;
}

.pvc-ef-label i {
  color: #E09B3D;
  margin-right: 4px;
}

.pvc-ef-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.pvc-ef-tag {
  display: inline-block;
  font-size: 11px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.88);
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.14);
  padding: 3px 10px;
  border-radius: 4px;
}

/* Footer call line */
.pvc-exec-footer {
  padding-top: 14px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.pvc-exec-call-link {
  display: flex;
  align-items: center;
  gap: 8px;
  color: rgba(255, 255, 255, 0.85);
  font-size: 13px;
  text-decoration: none;
  transition: color 0.2s ease;
}

.pvc-exec-call-link i {
  color: #E09B3D;
}

.pvc-exec-call-link strong {
  color: #FFFFFF;
  margin-left: 2px;
}

.pvc-exec-call-link:hover {
  color: #E09B3D;
}
.pvc-exec-call-link:hover strong {
  color: #E09B3D;
}

/* Responsive adjustments */
@media (max-width: 991.98px) {
  .pvc-hero-card-col {
    margin-top: 32px;
  }
}

@media (max-width: 767.98px) {
  .pvc-service-hero {
    padding: 125px 0 45px !important;
  }
  .pvc-hero-title {
    font-size: 27px !important;
  }
  .pvc-hero-lead {
    font-size: 14px !important;
  }
  .pvc-hero-trust-strip {
    gap: 8px;
    margin-bottom: 20px;
  }
  .pvc-trust-pill {
    font-size: 11px;
    padding: 5px 10px;
  }
  .pvc-hero-actions {
    gap: 10px;
  }
  .pvc-hero-btn-primary,
  .pvc-hero-btn-secondary {
    flex: 1 1 calc(50% - 5px);
    font-size: 12px;
    padding: 11px 12px;
    justify-content: center;
    text-align: center;
  }
  .pvc-hero-exec-card {
    padding: 20px;
  }
}

/* ==========================================
   Single Service 2-Column Main Layout
   ========================================== */
.pvc-service-main-wrap {
  background-color: #F8FAF9;
  padding: 70px 0 95px;
  min-height: 80vh;
}

.pvc-service-section {
  margin-bottom: 50px;
}

.pvc-section-header {
  margin-bottom: 24px;
}

.pvc-sub-badge {
  font-family: var(--pvc-font-sans);
  font-size: 12px;
  font-weight: 700;
  color: #E09B3D;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: block;
  margin-bottom: 6px;
}

.pvc-section-heading {
  font-family: var(--pvc-font-heading);
  font-size: 28px;
  font-weight: 700;
  color: #163B4C;
  line-height: 1.3;
  margin: 0 0 8px;
}

.pvc-section-desc {
  font-family: var(--pvc-font-sans);
  font-size: 15px;
  color: #64748B;
  margin: 0;
  line-height: 1.6;
}

/* Deliverables 2-Column Grid */
.pvc-deliverables-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

@media (max-width: 767px) {
  .pvc-deliverables-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}

.pvc-deliverable-card {
  background: #FFFFFF;
  border: 1px solid rgba(22, 59, 76, 0.08);
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 4px 12px rgba(22, 59, 76, 0.03);
  transition: all 0.25s ease;
  display: flex;
  flex-direction: column;
}

.pvc-deliverable-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 28px rgba(22, 59, 76, 0.08);
  border-color: rgba(224, 155, 61, 0.35);
}

.pvc-deliv-header {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 12px;
}

.pvc-deliv-num {
  font-family: var(--pvc-font-sans);
  font-size: 12px;
  font-weight: 700;
  color: #E09B3D;
  background: rgba(224, 155, 61, 0.12);
  padding: 3px 8px;
  border-radius: 6px;
  flex-shrink: 0;
  margin-top: 3px;
}

.pvc-deliv-title {
  font-family: var(--pvc-font-heading);
  font-size: 19px;
  font-weight: 700;
  color: #163B4C;
  line-height: 1.35;
  margin: 0;
}

.pvc-deliv-desc {
  font-family: var(--pvc-font-sans);
  font-size: 14px;
  line-height: 1.6;
  color: #556B66;
  margin: 0;
}

/* Target Clients Grid */
.pvc-target-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

@media (max-width: 767px) {
  .pvc-target-grid {
    grid-template-columns: 1fr;
  }
}

.pvc-target-card {
  background: #FFFFFF;
  border: 1px solid rgba(22, 59, 76, 0.08);
  border-left: 4px solid #E09B3D;
  border-radius: 8px;
  padding: 18px 20px;
  display: flex;
  gap: 14px;
  align-items: flex-start;
  box-shadow: 0 2px 8px rgba(22, 59, 76, 0.03);
}

.pvc-target-icon {
  color: #163B4C;
  font-size: 20px;
  margin-top: 2px;
  flex-shrink: 0;
}

.pvc-target-title {
  font-family: var(--pvc-font-sans);
  font-size: 15px;
  font-weight: 700;
  color: #163B4C;
  margin: 0 0 4px;
}

.pvc-target-desc {
  font-family: var(--pvc-font-sans);
  font-size: 13.5px;
  color: #64748B;
  margin: 0;
  line-height: 1.5;
}

/* Accessible High-Contrast FAQ Accordion */
.pvc-faq-accordion {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.pvc-faq-item {
  background: #FFFFFF;
  border: 1px solid rgba(22, 59, 76, 0.1);
  border-radius: 10px;
  overflow: hidden;
  transition: all 0.2s ease;
}

.pvc-faq-item.active {
  border-color: #E09B3D;
  box-shadow: 0 4px 14px rgba(22, 59, 76, 0.06);
}

.pvc-faq-btn {
  width: 100%;
  padding: 18px 22px;
  background: transparent;
  border: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-align: left;
  cursor: pointer;
  outline: none;
}

.pvc-faq-q {
  font-family: var(--pvc-font-heading);
  font-size: 17px;
  font-weight: 700;
  color: #163B4C;
  padding-right: 15px;
}

.pvc-faq-icon {
  color: #E09B3D;
  font-size: 14px;
  transition: transform 0.25s ease;
  flex-shrink: 0;
}

.pvc-faq-item.active .pvc-faq-icon {
  transform: rotate(180deg);
}

.pvc-faq-answer {
  padding: 0 22px 20px 22px;
}

.pvc-faq-answer p {
  font-family: var(--pvc-font-sans);
  font-size: 14.5px;
  line-height: 1.65;
  color: #475569;
  margin: 0;
}

/* Fast Consultation Box */
.pvc-service-cta-box {
  background: #163B4C;
  border-radius: 14px;
  padding: 38px 34px;
  color: #FFFFFF;
  box-shadow: 0 12px 30px rgba(22, 59, 76, 0.15);
}

.pvc-cta-sub {
  font-family: var(--pvc-font-sans);
  font-size: 11px;
  font-weight: 700;
  color: #E09B3D;
  letter-spacing: 0.1em;
  display: block;
  margin-bottom: 8px;
}

.pvc-cta-title {
  font-family: var(--pvc-font-heading);
  font-size: 26px;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0 0 10px;
}

.pvc-cta-text {
  font-family: var(--pvc-font-sans);
  font-size: 14.5px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.85);
  margin: 0 0 24px;
}

.pvc-cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.pvc-btn-gold {
  background: #E09B3D;
  color: #FFFFFF;
  font-family: var(--pvc-font-sans);
  font-size: 13.5px;
  font-weight: 700;
  padding: 12px 24px;
  border-radius: 8px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: all 0.2s ease;
}

.pvc-btn-gold:hover {
  background: #C88327;
  color: #FFFFFF;
  transform: translateY(-1px);
}

.pvc-btn-wa {
  background: #25D366;
  color: #FFFFFF;
  font-family: var(--pvc-font-sans);
  font-size: 13.5px;
  font-weight: 700;
  padding: 12px 24px;
  border-radius: 8px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: all 0.2s ease;
}

.pvc-btn-wa:hover {
  background: #1EBE5B;
  color: #FFFFFF;
}

/* ==========================================
   Sticky Sidebar Styles
   ========================================== */
.pvc-service-sidebar {
  position: -webkit-sticky;
  position: sticky;
  top: 100px;
}

.pvc-sidebar-card {
  background: #FFFFFF;
  border: 1px solid rgba(22, 59, 76, 0.08);
  border-radius: 12px;
  padding: 24px;
  margin-bottom: 24px;
  box-shadow: 0 4px 16px rgba(22, 59, 76, 0.03);
}

.pvc-widget-title {
  font-family: var(--pvc-font-heading);
  font-size: 20px;
  font-weight: 700;
  color: #163B4C;
  margin: 0 0 16px;
  padding-bottom: 12px;
  border-bottom: 2px solid rgba(224, 155, 61, 0.3);
}

/* Practice Nav List — Compact & Elegant */
.pvc-practice-nav-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.pvc-practice-nav-item {
  margin-bottom: 4px;
}

.pvc-practice-link {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 6px 10px;
  border-radius: 6px;
  text-decoration: none;
  font-family: var(--pvc-font-sans);
  font-size: 12.5px;
  font-weight: 600;
  color: #163B4C;
  background: #F8FAF9;
  border: 1px solid rgba(22, 59, 76, 0.06);
  transition: all 0.2s ease;
}

.pvc-practice-link .pvc-link-icon {
  color: #E09B3D;
  font-size: 13px;
  width: 16px;
  text-align: center;
}

.pvc-practice-link .pvc-link-text {
  flex-grow: 1;
}

.pvc-practice-link .pvc-link-arrow {
  color: #94A3B8;
  font-size: 10px;
  transition: transform 0.2s;
}

.pvc-practice-link:hover {
  background: #163B4C;
  color: #FFFFFF;
  border-color: #163B4C;
}

.pvc-practice-link:hover .pvc-link-arrow {
  color: #E09B3D;
  transform: translateX(3px);
}

.pvc-practice-nav-item.active .pvc-practice-link {
  background: #163B4C;
  color: #FFFFFF;
  border-color: #163B4C;
  box-shadow: 0 2px 8px rgba(22, 59, 76, 0.12);
}

.pvc-practice-nav-item.active .pvc-link-arrow {
  color: #E09B3D;
}

/* Partner Helpline Card — Compact */
.pvc-partner-header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
}

.pvc-partner-avatar {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(22, 59, 76, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #163B4C;
  font-size: 16px;
}

.pvc-partner-name {
  font-family: var(--pvc-font-heading);
  font-size: 16px;
  font-weight: 700;
  color: #163B4C;
  margin: 0;
}

.pvc-partner-role {
  font-family: var(--pvc-font-sans);
  font-size: 11px;
  color: #E09B3D;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  display: block;
}

.pvc-partner-bio {
  font-family: var(--pvc-font-sans);
  font-size: 12px;
  line-height: 1.45;
  color: #64748B;
  margin: 0 0 8px;
}

.pvc-contact-points {
  border-top: 1px solid rgba(22, 59, 76, 0.08);
  padding-top: 8px;
  margin-bottom: 12px;
}

.pvc-cp-row {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--pvc-font-sans);
  font-size: 12px;
  color: #163B4C;
  text-decoration: none;
  padding: 4px 0;
}

.pvc-cp-row:hover {
  color: #E09B3D;
}

.pvc-cp-icon {
  color: #E09B3D;
  width: 16px;
  text-align: center;
  font-size: 12px;
}

.pvc-sidebar-btn {
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: #163B4C;
  color: #FFFFFF;
  font-family: var(--pvc-font-sans);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  padding: 9px 14px;
  border-radius: 6px;
  text-decoration: none;
  transition: all 0.2s ease;
}

.pvc-sidebar-btn:hover {
  background: #E09B3D;
  color: #FFFFFF;
}

/* Trust Widget */
.pvc-trust-title {
  font-family: var(--pvc-font-heading);
  font-size: 15px;
  font-weight: 700;
  color: #163B4C;
  margin: 0 0 8px;
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(224, 155, 61, 0.2);
}

.pvc-trust-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.pvc-trust-list li {
  font-family: var(--pvc-font-sans);
  font-size: 11.5px;
  color: #475569;
  margin-bottom: 6px;
  display: flex;
  gap: 7px;
  align-items: flex-start;
  line-height: 1.4;
}

.pvc-trust-list li i {
  color: #E09B3D;
  margin-top: 2px;
  font-size: 11px;
}

/* ==========================================
   Service Archive / Directory Page Styles
   ========================================== */
.pvc-archive-main {
  background: #F8FAF9;
  padding: 50px 0 95px;
  min-height: 80vh;
}

.pvc-trust-strip {
  background: #FFFFFF;
  border: 1px solid rgba(22, 59, 76, 0.08);
  border-radius: 12px;
  padding: 24px 30px;
  margin-bottom: 50px;
  box-shadow: 0 4px 16px rgba(22, 59, 76, 0.03);
}

.pvc-stat-card {
  text-align: center;
  padding: 10px;
}

.pvc-stat-num {
  font-family: var(--pvc-font-heading);
  font-size: 26px;
  font-weight: 700;
  color: #163B4C;
  display: block;
  margin-bottom: 4px;
}

.pvc-stat-label {
  font-family: var(--pvc-font-sans);
  font-size: 12px;
  font-weight: 600;
  color: #64748B;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

/* 8-Card Balanced Practice Grid */
.pvc-practice-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  margin-bottom: 55px;
}

@media (max-width: 1200px) {
  .pvc-practice-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 680px) {
  .pvc-practice-grid {
    grid-template-columns: 1fr;
  }
}

.pvc-card {
  background: #FFFFFF;
  border: 1px solid rgba(22, 59, 76, 0.08);
  border-radius: 14px;
  padding: 28px 24px;
  display: flex;
  flex-direction: column;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 0 4px 16px rgba(22, 59, 76, 0.03);
}

.pvc-card:hover {
  transform: translateY(-5px);
  border-color: rgba(224, 155, 61, 0.35);
  box-shadow: 0 16px 32px rgba(22, 59, 76, 0.08);
}

.pvc-card-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 18px;
}

.pvc-card-num {
  font-family: var(--pvc-font-sans);
  font-size: 12px;
  font-weight: 700;
  color: #E09B3D;
  background: rgba(224, 155, 61, 0.12);
  padding: 3px 8px;
  border-radius: 4px;
}

.pvc-card-icon {
  width: 44px;
  height: 44px;
  border-radius: 8px;
  background: rgba(22, 59, 76, 0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #163B4C;
  font-size: 18px;
  transition: transform 0.3s ease;
}

.pvc-card:hover .pvc-card-icon {
  transform: scale(1.1);
  background: #163B4C;
  color: #FFFFFF;
}

.pvc-card-heading {
  font-family: var(--pvc-font-heading);
  font-size: 19px;
  font-weight: 700;
  line-height: 1.35;
  margin: 0 0 12px;
  min-height: 52px;
}

.pvc-card-heading a {
  color: #163B4C;
  text-decoration: none;
  transition: color 0.2s;
}

.pvc-card-heading a:hover {
  color: #E09B3D;
}

.pvc-card-desc {
  font-family: var(--pvc-font-sans);
  font-size: 13.5px;
  line-height: 1.6;
  color: #64748B;
  margin-bottom: 18px;
}

.pvc-card-bullets {
  list-style: none;
  padding: 0;
  margin: 0 0 24px;
  flex-grow: 1;
}

.pvc-card-bullets li {
  font-family: var(--pvc-font-sans);
  font-size: 12.5px;
  color: #475569;
  margin-bottom: 8px;
  display: flex;
  gap: 8px;
  align-items: flex-start;
  line-height: 1.45;
}

.pvc-card-bullets li i {
  color: #E09B3D;
  font-size: 11px;
  margin-top: 3px;
  flex-shrink: 0;
}

.pvc-action-link {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 10px 14px;
  background: #F8FAF9;
  border-radius: 8px;
  text-decoration: none;
  font-family: var(--pvc-font-sans);
  font-size: 13px;
  font-weight: 600;
  color: #163B4C;
  transition: all 0.2s ease;
}

.pvc-action-link:hover {
  background: #163B4C;
  color: #FFFFFF;
}

.pvc-action-link i {
  color: #E09B3D;
  transition: transform 0.2s ease;
}

.pvc-action-link:hover i {
  transform: translateX(4px);
}

/* Card 8 Featured Retainer Variant */
.pvc-card.featured-retainer {
  background: #163B4C;
  color: #FFFFFF;
  border-color: #163B4C;
}

.pvc-card.featured-retainer .pvc-card-icon {
  background: rgba(224, 155, 61, 0.2);
  color: #E09B3D;
}

.pvc-card.featured-retainer .pvc-card-heading a {
  color: #FFFFFF;
}

.pvc-card.featured-retainer .pvc-card-desc {
  color: rgba(255, 255, 255, 0.8);
}

.pvc-card.featured-retainer .pvc-card-bullets li {
  color: rgba(255, 255, 255, 0.9);
}

.pvc-card.featured-retainer .pvc-action-link {
  background: #E09B3D;
  color: #FFFFFF;
}

.pvc-card.featured-retainer .pvc-action-link i {
  color: #FFFFFF;
}

.pvc-card.featured-retainer .pvc-action-link:hover {
  background: #C88327;
}

/* Bottom Consultation CTA Banner */
.pvc-archive-cta-banner {
  background: #163B4C;
  border-radius: 14px;
  padding: 40px 36px;
  color: #FFFFFF;
  box-shadow: 0 10px 30px rgba(22, 59, 76, 0.15);
}

.pvc-cta-badge {
  font-family: var(--pvc-font-sans);
  font-size: 11px;
  font-weight: 700;
  color: #E09B3D;
  letter-spacing: 0.1em;
  display: block;
  margin-bottom: 8px;
}

.pvc-cta-h3 {
  font-family: var(--pvc-font-heading);
  font-size: 26px;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0 0 10px;
}

.pvc-cta-p {
  font-family: var(--pvc-font-sans);
  font-size: 14.5px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.85);
  margin: 0;
}

.pvc-btn-cta-gold {
  background: #E09B3D;
  color: #FFFFFF;
  font-family: var(--pvc-font-sans);
  font-size: 14px;
  font-weight: 700;
  padding: 13px 28px;
  border-radius: 8px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: all 0.2s ease;
  white-space: nowrap;
}

.pvc-btn-cta-gold:hover {
  background: #C88327;
  color: #FFFFFF;
  transform: translateY(-1px);
}


/* --- Mobile Hero Top Clearance Fix (Full Audit) --- */
@media (max-width: 767.98px) {
    body.home .elementor-element-37ef983,
    body.home .elementor-section.elementor-top-section:first-of-type {
        padding-top: 35px !important;
    }
}


/* Reinforced Logo-Synced Typography */
h1, h2, h3, h4, h5, h6,
.section-title h2, .section-title h3,
.elementor-heading-title,
.pvc-archive-hero h1, .pvc-service-hero h1,
.pvc-card-title, .pvc-deliverable-card h4,
.bizzen-features_one .section-title h2 {
  font-family: var(--pvc-font-heading);
}


/* ==========================================================================
   PVC ABOUT US PAGE - EXECUTIVE CORPORATE LEGAL STYLES
   ========================================================================== */

/* --- 1. About Hero Section --- */
.pvc-about-hero {
  position: relative;
  background: linear-gradient(135deg, #0E2834 0%, #163B4C 100%);
  padding: 130px 0 50px;
  color: #FFFFFF;
  overflow: hidden;
}

.pvc-about-hero::before {
  content: '';
  position: absolute;
  top: -20%;
  right: -10%;
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(224, 155, 61, 0.08) 0%, rgba(22, 59, 76, 0) 70%);
  border-radius: 50%;
  pointer-events: none;
}

.pvc-breadcrumb {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--pvc-font-sans);
  font-size: 13px;
  font-weight: 500;
  margin-bottom: 24px;
}

.pvc-breadcrumb a {
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  transition: color 0.2s ease;
}

.pvc-breadcrumb a:hover {
  color: #E09B3D;
}

.pvc-breadcrumb-sep {
  color: rgba(255, 255, 255, 0.4);
}

.pvc-breadcrumb-curr {
  color: #E09B3D;
  font-weight: 600;
}

.pvc-about-hero-content {
  max-width: 860px;
  margin-bottom: 40px;
}

.pvc-about-badge {
  display: inline-block;
  background: rgba(224, 155, 61, 0.15);
  color: #E09B3D;
  border: 1px solid rgba(224, 155, 61, 0.35);
  padding: 6px 14px;
  border-radius: 30px;
  font-family: var(--pvc-font-sans);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  margin-bottom: 18px;
}

.pvc-about-hero-title {
  font-family: var(--pvc-font-heading);
  font-size: 42px !important;
  font-weight: 800 !important;
  color: #FFFFFF !important;
  line-height: 1.22 !important;
  letter-spacing: -0.025em !important;
  margin-bottom: 20px !important;
}

.pvc-about-hero-desc {
  font-family: var(--pvc-font-sans);
  font-size: 17px !important;
  line-height: 1.7 !important;
  color: rgba(255, 255, 255, 0.88) !important;
  margin-bottom: 0 !important;
}

/* Trust Metric Strip */
.pvc-about-trust-strip {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 14px;
  padding: 24px 32px;
  backdrop-filter: blur(10px);
}

.pvc-about-trust-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: relative;
}

.pvc-about-trust-item:not(:last-child)::after {
  content: '';
  position: absolute;
  right: -8px;
  top: 15%;
  height: 70%;
  width: 1px;
  background: rgba(255, 255, 255, 0.12);
}

.pvc-about-trust-num {
  font-family: var(--pvc-font-heading);
  font-size: 28px;
  font-weight: 800;
  color: #E09B3D;
  line-height: 1.1;
  margin-bottom: 4px;
}

.pvc-about-trust-label {
  font-family: var(--pvc-font-sans);
  font-size: 13px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.75);
  letter-spacing: 0.02em;
}

/* --- Common Section Styles --- */
.pvc-section-eyebrow {
  display: inline-block;
  font-family: var(--pvc-font-sans);
  font-size: 12.5px;
  font-weight: 700;
  color: #E09B3D;
  letter-spacing: 0.12em;
  margin-bottom: 10px;
  text-transform: uppercase;
}

.pvc-section-heading {
  font-family: var(--pvc-font-heading);
  font-size: 34px !important;
  font-weight: 800 !important;
  color: #163B4C !important;
  line-height: 1.25 !important;
  letter-spacing: -0.02em !important;
  margin-bottom: 18px !important;
}

.pvc-section-subtitle {
  font-family: var(--pvc-font-sans);
  font-size: 16px;
  line-height: 1.65;
  color: #556B66;
  max-width: 680px;
  margin: 0 auto;
}

/* --- 2. Firm Narrative & Factsheet --- */
.pvc-about-story-sec {
  padding: 85px 0;
  background: #FFFFFF;
}

.pvc-story-p {
  font-family: var(--pvc-font-sans);
  font-size: 15.5px;
  line-height: 1.75;
  color: #4A5B57;
  margin-bottom: 18px;
}

.pvc-story-pillars {
  margin-top: 32px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.pvc-pillar-item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
}

.pvc-pillar-icon {
  width: 44px;
  height: 44px;
  min-width: 44px;
  background: rgba(22, 59, 76, 0.08);
  color: #163B4C;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 2px;
}

.pvc-pillar-text h4 {
  font-family: var(--pvc-font-heading);
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #163B4C !important;
  margin-bottom: 4px !important;
}

.pvc-pillar-text p {
  font-family: var(--pvc-font-sans);
  font-size: 14px;
  line-height: 1.55;
  color: #556B66;
  margin-bottom: 0;
}

/* Factsheet Card */
.pvc-factsheet-card {
  background: #F8FAF9;
  border: 1px solid #E2E8E0;
  border-radius: 16px;
  padding: 34px 30px;
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.04);
}

.pvc-factsheet-header {
  border-bottom: 1px solid #E2E8E0;
  padding-bottom: 18px;
  margin-bottom: 20px;
}

.pvc-factsheet-badge {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #E09B3D;
  margin-bottom: 6px;
}

.pvc-factsheet-header h3 {
  font-family: var(--pvc-font-heading);
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #163B4C !important;
  margin: 0 !important;
}

.pvc-factsheet-list {
  list-style: none;
  padding: 0;
  margin: 0 0 24px 0;
}

.pvc-factsheet-list li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 11px 0;
  border-bottom: 1px solid rgba(226, 232, 224, 0.7);
  font-family: var(--pvc-font-sans);
  font-size: 13.5px;
}

.pvc-factsheet-lbl {
  color: #64748B;
  font-weight: 500;
}

.pvc-factsheet-val {
  color: #163B4C;
  font-weight: 700;
  text-align: right;
}

.pvc-btn-gold {
  display: inline-block;
  background: linear-gradient(135deg, #E09B3D 0%, #C88327 100%);
  color: #FFFFFF !important;
  font-family: var(--pvc-font-sans);
  font-size: 14.5px;
  font-weight: 700;
  padding: 13px 26px;
  border-radius: 8px;
  text-decoration: none;
  transition: all 0.3s ease;
  text-align: center;
  width: 100%;
  box-shadow: 0 4px 14px rgba(224, 155, 61, 0.25);
}

.pvc-btn-gold:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(224, 155, 61, 0.38);
  color: #FFFFFF !important;
}

/* --- 3. Core Values Matrix --- */
.pvc-about-values-sec {
  padding: 85px 0;
  background: #F8FAF9;
}

.pvc-values-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 18px;
  margin-top: 45px;
}

.pvc-value-card {
  background: #FFFFFF;
  border: 1px solid #E2E8E0;
  border-radius: 14px;
  padding: 26px 20px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.03);
  transition: all 0.3s ease;
  display: flex;
  flex-direction: column;
}

.pvc-value-card:hover {
  transform: translateY(-4px);
  border-color: rgba(224, 155, 61, 0.4);
  box-shadow: 0 10px 28px rgba(22, 59, 76, 0.08);
}

.pvc-value-card-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
}

.pvc-value-num {
  font-family: var(--pvc-font-heading);
  font-size: 15px;
  font-weight: 800;
  color: #E09B3D;
  background: rgba(224, 155, 61, 0.12);
  padding: 3px 9px;
  border-radius: 6px;
}

.pvc-value-icon {
  width: 36px;
  height: 36px;
  background: rgba(22, 59, 76, 0.06);
  color: #163B4C;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.pvc-value-title {
  font-family: var(--pvc-font-heading);
  font-size: 16.5px !important;
  font-weight: 700 !important;
  color: #163B4C !important;
  margin-bottom: 10px !important;
  line-height: 1.3 !important;
}

.pvc-value-desc {
  font-family: var(--pvc-font-sans);
  font-size: 13.5px;
  line-height: 1.58;
  color: #556B66;
  margin-bottom: 0;
}

/* --- 4. Founder Leadership Spotlight --- */
.pvc-about-founder-sec {
  padding: 85px 0;
  background: #FFFFFF;
}

.pvc-founder-card {
  background: #FAFCFB;
  border: 1px solid #E2E8E0;
  border-radius: 18px;
  padding: 42px 36px;
  box-shadow: 0 6px 28px rgba(0, 0, 0, 0.04);
}

.pvc-founder-visual {
  background: linear-gradient(135deg, #0E2834 0%, #163B4C 100%);
  border-radius: 14px;
  padding: 32px 24px;
  color: #FFFFFF;
  text-align: center;
}

.pvc-founder-badge-crest {
  width: 80px;
  height: 80px;
  margin: 0 auto 16px;
  background: rgba(255, 255, 255, 0.08);
  border: 2px solid rgba(224, 155, 61, 0.4);
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.pvc-crest-monogram {
  font-family: var(--pvc-font-heading);
  font-size: 22px;
  font-weight: 800;
  color: #E09B3D;
  line-height: 1;
}

.pvc-crest-sub {
  font-size: 7px;
  letter-spacing: 0.1em;
  color: rgba(255, 255, 255, 0.7);
  margin-top: 2px;
}

.pvc-founder-name {
  font-family: var(--pvc-font-heading);
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #FFFFFF !important;
  margin-bottom: 4px !important;
}

.pvc-founder-role {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: #E09B3D;
  margin-bottom: 6px;
}

.pvc-founder-cred {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.75);
  margin-bottom: 18px;
  line-height: 1.4;
}

.pvc-founder-direct-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.pvc-founder-action-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: rgba(255, 255, 255, 0.1);
  color: #FFFFFF !important;
  border: 1px solid rgba(255, 255, 255, 0.18);
  padding: 9px 14px;
  border-radius: 6px;
  font-size: 12.5px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.25s ease;
}

.pvc-founder-action-btn:hover {
  background: #E09B3D;
  border-color: #E09B3D;
  color: #FFFFFF !important;
}

.pvc-founder-story {
  padding-left: 20px;
}

.pvc-founder-p {
  font-family: var(--pvc-font-sans);
  font-size: 15px;
  line-height: 1.72;
  color: #4A5B57;
  margin-bottom: 16px;
}

.pvc-founder-quote {
  margin-top: 24px;
  background: #FFFFFF;
  border-left: 4px solid #E09B3D;
  border-radius: 0 10px 10px 0;
  padding: 20px 24px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.03);
  position: relative;
}

.pvc-quote-icon {
  color: rgba(224, 155, 61, 0.35);
  margin-bottom: 8px;
}

.pvc-founder-quote blockquote {
  font-family: var(--pvc-font-heading);
  font-size: 16px;
  font-style: italic;
  font-weight: 600;
  color: #163B4C;
  line-height: 1.6;
  margin: 0 0 8px 0;
}

.pvc-quote-author {
  font-family: var(--pvc-font-sans);
  font-size: 13px;
  font-weight: 700;
  color: #E09B3D;
}

/* --- 5. Engagement Lifecycle --- */
.pvc-about-process-sec {
  padding: 85px 0;
  background: #F8FAF9;
}

.pvc-process-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-top: 45px;
}

.pvc-process-card {
  background: #FFFFFF;
  border: 1px solid #E2E8E0;
  border-radius: 14px;
  padding: 28px 22px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.03);
  transition: all 0.3s ease;
  position: relative;
}

.pvc-process-card:hover {
  transform: translateY(-4px);
  border-color: rgba(22, 59, 76, 0.3);
  box-shadow: 0 10px 26px rgba(22, 59, 76, 0.08);
}

.pvc-process-step-badge {
  display: inline-block;
  background: rgba(22, 59, 76, 0.08);
  color: #163B4C;
  font-family: var(--pvc-font-sans);
  font-size: 11.5px;
  font-weight: 800;
  padding: 4px 10px;
  border-radius: 6px;
  margin-bottom: 14px;
  letter-spacing: 0.05em;
}

.pvc-process-title {
  font-family: var(--pvc-font-heading);
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #163B4C !important;
  margin-bottom: 10px !important;
}

.pvc-process-desc {
  font-family: var(--pvc-font-sans);
  font-size: 13.5px;
  line-height: 1.6;
  color: #556B66;
  margin-bottom: 0;
}

/* --- 6. Clients & Trust Showcase --- */
.pvc-about-clients-sec {
  padding: 65px 0;
  background: #FFFFFF;
  border-top: 1px solid #E2E8E0;
  border-bottom: 1px solid #E2E8E0;
}

.pvc-clients-title {
  font-family: var(--pvc-font-heading);
  font-size: 24px !important;
  font-weight: 800 !important;
  color: #163B4C !important;
  margin-bottom: 30px !important;
}

.pvc-about-logo-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 36px 48px;
}

.pvc-logo-item img {
  max-height: 38px;
  width: auto;
  opacity: 0.85;
  filter: contrast(105%);
  transition: all 0.3s ease;
}

.pvc-logo-item img:hover {
  opacity: 1;
  transform: scale(1.05);
}

/* --- 7. Fast Action Advisory CTA Banner --- */
.pvc-about-cta-sec {
  padding: 85px 0;
  background: #F8FAF9;
}

.pvc-about-cta-box {
  background: linear-gradient(135deg, #0E2834 0%, #163B4C 100%);
  border-radius: 18px;
  padding: 50px 45px;
  color: #FFFFFF;
  box-shadow: 0 10px 32px rgba(14, 40, 52, 0.2);
}

.pvc-about-cta-badge {
  display: inline-block;
  background: rgba(224, 155, 61, 0.15);
  color: #E09B3D;
  border: 1px solid rgba(224, 155, 61, 0.35);
  padding: 5px 12px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  margin-bottom: 12px;
}

.pvc-about-cta-title {
  font-family: var(--pvc-font-heading);
  font-size: 30px !important;
  font-weight: 800 !important;
  color: #FFFFFF !important;
  margin-bottom: 12px !important;
  line-height: 1.25 !important;
}

.pvc-about-cta-desc {
  font-family: var(--pvc-font-sans);
  font-size: 15px;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.85);
  margin-bottom: 0;
  max-width: 620px;
}

.pvc-about-cta-actions {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.pvc-btn-outline-white {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: transparent;
  color: #FFFFFF !important;
  border: 1px solid rgba(255, 255, 255, 0.3);
  font-family: var(--pvc-font-sans);
  font-size: 14px;
  font-weight: 600;
  padding: 12px 22px;
  border-radius: 8px;
  text-decoration: none;
  transition: all 0.3s ease;
}

.pvc-btn-outline-white:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: #FFFFFF;
  color: #FFFFFF !important;
}

/* --- Responsive Adjustments --- */
@media (max-width: 1199.98px) {
  .pvc-values-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .pvc-process-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 767.98px) {
  .pvc-about-hero {
    padding: 105px 0 40px;
  }
  .pvc-about-hero-title {
    font-size: 28px !important;
  }
  .pvc-about-hero-desc {
    font-size: 15px !important;
  }
  .pvc-about-trust-strip {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px 12px;
    padding: 18px;
  }
  .pvc-about-trust-item:not(:last-child)::after {
    display: none;
  }
  .pvc-values-grid {
    grid-template-columns: 1fr;
  }
  .pvc-process-grid {
    grid-template-columns: 1fr;
  }
  .pvc-founder-story {
    padding-left: 0;
    margin-top: 24px;
  }
  .pvc-founder-card {
    padding: 24px 18px;
  }
  .pvc-about-cta-box {
    padding: 32px 22px;
    text-align: center;
  }
  .pvc-about-cta-actions {
    margin-top: 24px;
  }
}

/* Hide redundant parent theme breadcrumb bar on bespoke About Us page */
body.page-template-page-about .page-hero-area,
body.page-template-page-about .page-hero {
  display: none !important;
}

/* ==========================================================================
   PATCH: Contact Page Mobile — Form Above Map
   ========================================================================== */

/* Add spacing between contact info section and map/form section */
.bizzen-contact-info-sec {
  padding-bottom: 40px !important;
  margin-bottom: 0 !important;
}

.bizzen-contact_two {
  padding-top: 50px !important;
  padding-bottom: 80px !important;
}

/* Increase spacing between the info boxes and the row below */
.bizzen-contact-info-sec .row {
  margin-bottom: 0 !important;
}

@media (max-width: 991.98px) {
  /* On mobile, reverse the map and form columns */
  .bizzen-contact_two .row {
    display: flex !important;
    flex-direction: column-reverse !important;
  }

  /* Form wrapper on top */
  .bizzen-contact_two .contact-wrapper {
    margin-bottom: 32px !important;
  }

  /* Map below */
  .bizzen-contact_two .map-box {
    margin-bottom: 0 !important;
  }

  .bizzen-contact_two .map-box iframe,
  .map-box iframe {
    min-height: 320px !important;
  }
}

/* ==========================================================================
   PATCH: Breadcrumb / Page Hero — Brand Color Background
   ========================================================================== */
.page-hero-area {
  background: linear-gradient(135deg, #0E2834 0%, #163B4C 60%, #1A5C4F 100%) !important;
  padding: 100px 0 40px !important;
  position: relative !important;
}

.page-hero-area::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") !important;
  pointer-events: none !important;
}

.page-hero-area .breadcrumb-text h1,
.page-hero-area h1 {
  color: #FFFFFF !important;
  font-family: var(--pvc-font-heading);
  font-weight: 700 !important;
  font-size: 38px !important;
  margin-bottom: 12px !important;
}

.page-hero-area .breadcrumb-text p,
.page-hero-area p {
  color: rgba(255, 255, 255, 0.8) !important;
}

.page-hero-area .breadcrumb-items li,
.page-hero-area .breadcrumb-items li a {
  color: rgba(255, 255, 255, 0.7) !important;
  font-family: var(--pvc-font-sans);
  font-size: 14px !important;
}

.page-hero-area .breadcrumb-items li.active,
.page-hero-area .breadcrumb-items li a:hover {
  color: #E09B3D !important;
}

.page-hero-area .breadcrumb-items li + li::before,
.page-hero-area .breadcrumb-items .separator {
  color: rgba(255, 255, 255, 0.4) !important;
}

@media (max-width: 767.98px) {
  .page-hero-area {
    padding: 90px 0 30px !important;
  }
  .page-hero-area .breadcrumb-text h1,
  .page-hero-area h1 {
    font-size: 26px !important;
  }
}

/* ==========================================================================
   PATCH: Service Single Page — CTA Buttons Side by Side
   ========================================================================== */
.pvc-cta-actions {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  align-items: center !important;
}

.pvc-cta-actions .pvc-btn-gold,
.pvc-cta-actions .pvc-btn-wa {
  width: auto !important;
  max-width: none !important;
  flex: 0 1 auto !important;
  text-align: center !important;
  justify-content: center !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 12px 24px !important;
  box-sizing: border-box !important;
}

@media (max-width: 575.98px) {
  .pvc-cta-actions {
    gap: 10px !important;
  }
  .pvc-cta-actions .pvc-btn-gold,
  .pvc-cta-actions .pvc-btn-wa {
    flex: 1 1 calc(50% - 5px) !important;
    min-width: 130px !important;
    font-size: 12.5px !important;
    padding: 11px 14px !important;
  }
}

/* ==========================================================================
   PATCH: Service Sidebar — Ensure Proper Sticky Behavior
   ========================================================================== */

/* The parent row MUST have align-items: flex-start so the sidebar column
   does not stretch to full content height. Without this, sticky has no room
   to scroll and will not work. */
.pvc-service-main-wrap > .container > .row,
.pvc-service-main-wrap .row {
  display: flex !important;
  align-items: flex-start !important;
  flex-wrap: wrap !important;
}

/* The sidebar column must not stretch */
.pvc-service-sidebar-col {
  position: relative !important;
  align-self: flex-start !important;
  height: auto !important;
}

/* The sidebar itself is sticky — moves smoothly with the page */
.pvc-service-sidebar {
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 115px !important;
  max-height: none !important;
  overflow: visible !important;
}

@media (max-width: 991.98px) {
  .pvc-service-sidebar {
    position: static !important;
    max-height: none !important;
    overflow-y: visible !important;
    margin-top: 40px !important;
  }
}

/* Compact sidebar card padding for comfortable desktop viewing */
.pvc-service-sidebar .pvc-sidebar-card {
  padding: 20px !important;
  margin-bottom: 18px !important;
}

.pvc-service-sidebar .pvc-practice-nav-item {
  margin-bottom: 6px !important;
}

.pvc-service-sidebar .pvc-practice-link {
  padding: 8px 12px !important;
}

/* Ensure no ancestor has overflow:hidden which kills sticky */
.pvc-service-main-wrap {
  overflow: visible !important;
}

.pvc-service-main-wrap > .container {
  overflow: visible !important;
}

/* ==========================================================================
   PATCH: Mobile Navigation Drawer — Bulletproof Off-Canvas
   ========================================================================== */
@media (max-width: 1199.98px) {
  .header-navigation .theme-nav-menu {
    position: fixed !important;
    top: 0 !important;
    left: -320px !important;
    width: 300px !important;
    max-width: 85vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    background: #FFFFFF !important;
    z-index: 999999 !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 24px 20px 40px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    box-shadow: 4px 0 30px rgba(0, 0, 0, 0.2) !important;
    transition: left 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .header-navigation .theme-nav-menu.menu-on {
    left: 0 !important;
  }

  /* Menu top bar with close button */
  .header-navigation .theme-menu-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 16px !important;
    padding-bottom: 16px !important;
    border-bottom: 1px solid rgba(22, 59, 76, 0.08) !important;
    flex-shrink: 0 !important;
  }

  .header-navigation .theme-menu-top .site-branding img {
    max-height: 38px !important;
  }

  /* Close button */
  .header-navigation .navbar-close {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    background: rgba(22, 59, 76, 0.06) !important;
    border: 1px solid rgba(22, 59, 76, 0.1) !important;
    border-radius: 8px !important;
    font-size: 18px !important;
    color: #163B4C !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    flex-shrink: 0 !important;
  }

  .header-navigation .navbar-close:hover {
    background: #163B4C !important;
    color: #FFFFFF !important;
  }

  /* Main nav menu items */
  .header-navigation .theme-nav-menu .main-menu {
    margin-top: 0 !important;
    flex-grow: 1 !important;
  }

  .header-navigation .theme-nav-menu .main-menu ul {
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
  }

  .header-navigation .theme-nav-menu .main-menu ul li {
    display: block !important;
    margin: 0 !important;
    position: relative !important;
  }

  .header-navigation .theme-nav-menu .main-menu ul > li > a {
    display: block !important;
    padding: 14px 0 !important;
    font-family: var(--pvc-font-sans);
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #163B4C !important;
    text-decoration: none !important;
    line-height: 1.3 !important;
    min-height: 44px !important;
    border-bottom: 1px solid rgba(22, 59, 76, 0.06) !important;
  }

  .header-navigation .theme-nav-menu .main-menu ul > li > a:hover {
    color: #E09B3D !important;
  }

  /* Dropdown trigger */
  .header-navigation .theme-nav-menu .main-menu ul li .dd-trigger {
    position: absolute !important;
    right: 0 !important;
    top: 10px !important;
    height: 30px !important;
    width: 30px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(22, 59, 76, 0.04) !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    z-index: 2 !important;
    font-size: 14px !important;
    color: #163B4C !important;
    transition: all 0.2s ease !important;
  }

  .header-navigation .theme-nav-menu .main-menu ul li .dd-trigger:hover {
    background: rgba(224, 155, 61, 0.15) !important;
    color: #E09B3D !important;
  }

  .header-navigation .theme-nav-menu .main-menu ul li .dd-trigger.sub-menu-open {
    background: rgba(224, 155, 61, 0.15) !important;
    color: #E09B3D !important;
    transform: rotate(180deg) !important;
  }

  /* Sub-menus */
  .header-navigation .theme-nav-menu .main-menu ul li .sub-menu {
    width: 100% !important;
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    padding: 0 0 0 16px !important;
    box-shadow: none !important;
    background-color: transparent !important;
    visibility: visible !important;
    opacity: 1 !important;
    display: none; /* NO !important — allows jQuery slideToggle to override */
    transition: none !important;
    border-left: 2px solid rgba(224, 155, 61, 0.3) !important;
  }

  .header-navigation .theme-nav-menu .main-menu ul li .sub-menu > li > a {
    padding: 10px 0 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #556B66 !important;
    min-height: 40px !important;
  }

  .header-navigation .theme-nav-menu .main-menu ul li .sub-menu > li > a:hover {
    color: #E09B3D !important;
  }

  /* Bottom section */
  .header-navigation .theme-menu-bottom {
    margin-top: auto !important;
    padding-top: 20px !important;
    border-top: 1px solid rgba(22, 59, 76, 0.08) !important;
    flex-shrink: 0 !important;
  }

  .header-navigation .theme-menu-bottom h5 {
    font-family: var(--pvc-font-heading);
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #163B4C !important;
    margin-bottom: 14px !important;
  }

  .header-navigation .theme-menu-bottom .social-link li a {
    width: 38px !important;
    height: 38px !important;
    border-radius: 8px !important;
    background: rgba(22, 59, 76, 0.05) !important;
    border: 1px solid rgba(22, 59, 76, 0.08) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #163B4C !important;
    transition: all 0.2s ease !important;
  }

  .header-navigation .theme-menu-bottom .social-link li a:hover {
    background: #163B4C !important;
    border-color: #163B4C !important;
    color: #FFFFFF !important;
  }

  /* Mobile nav CTA button */
  .header-navigation .theme-nav-button {
    margin-top: 20px !important;
  }

  .header-navigation .theme-nav-button .theme-btn {
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
    background: linear-gradient(135deg, #E09B3D 0%, #C88327 100%) !important;
    border-radius: 8px !important;
    padding: 14px 24px !important;
    font-family: var(--pvc-font-sans);
    font-size: 14px !important;
    font-weight: 700 !important;
  }

  /* Overlay when menu open */
  .offcanvas__overlay.overlay-open {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(0, 0, 0, 0.55) !important;
    opacity: 1 !important;
    z-index: 999998 !important;
  }

  /* Hamburger styles */
  .navbar-toggler {
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
  }

  /* Primary menu fixes */
  .primary-menu {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  /* Header height offset for body content */
  body {
    padding-top: 0 !important;
  }
}

/* ==========================================================================
   PATCH: Mobile Section Spacing & Rhythm
   ========================================================================== */
@media (max-width: 767.98px) {
  /* Tighten up all major sections */
  section,
  .elementor-section {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }

  /* Override specific hero clearance */
  .elementor-section:first-of-type,
  section:first-of-type {
    padding-top: 50px !important;
  }

  /* Service single page hero on mobile — ensure breadcrumb is fully clear of header */
  .pvc-service-hero {
    padding: 125px 0 35px !important;
  }

  .pvc-service-hero .pvc-hero-title {
    font-size: 24px !important;
  }

  .pvc-service-hero .pvc-hero-lead {
    font-size: 14px !important;
  }

  /* Service CTA box on mobile */
  .pvc-service-cta-box {
    padding: 28px 22px !important;
    border-radius: 12px !important;
  }

  .pvc-service-cta-box .pvc-cta-title {
    font-size: 20px !important;
  }

  /* Contact page mobile spacing */
  .bizzen-contact-info-sec {
    padding-top: 40px !important;
    padding-bottom: 20px !important;
  }

  .bizzen-contact_two {
    padding-top: 30px !important;
    padding-bottom: 50px !important;
  }

  .bizzen-contact_two .contact-wrapper {
    padding: 28px 20px 32px !important;
  }
}

/* ==========================================================================
   PATCH: Hide Duplicate Breadcrumbs on Service Templates
   ========================================================================== */
body.page-template-page-service .page-hero-area,
body.post-type-archive-services .page-hero-area,
body.single-services .page-hero-area {
  display: none !important;
}


/* ==========================================================================
   Homepage Section Separation & Consultation Button Enhancement
   ========================================================================== */

/* 1. Hero Bottom Divider */
.bizzen-hero_one {
  border-bottom: 2px solid #E09B3D !important;
}

/* 2. "Book Your Free Consultation Today" Button (Form Submit Button) */
.elementor-3397 .elementor-button[type="submit"],
.bizzen-contact_one .elementor-button[type="submit"],
.bizzen-contact_one button[type="submit"],
.contact-form button[type="submit"] {
  background: linear-gradient(135deg, #E09B3D 0%, #C88327 100%) !important;
  color: #FFFFFF !important;
  font-family: var(--pvc-font-sans);
  font-size: 15.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.03em !important;
  padding: 15px 34px !important;
  border-radius: 8px !important;
  border: none !important;
  box-shadow: 0 6px 22px rgba(224, 155, 61, 0.38) !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  text-align: center !important;
}

.elementor-3397 .elementor-button[type="submit"]:hover,
.bizzen-contact_one .elementor-button[type="submit"]:hover,
.bizzen-contact_one button[type="submit"]:hover,
.contact-form button[type="submit"]:hover {
  background: linear-gradient(135deg, #F0AB4D 0%, #D89337 100%) !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(224, 155, 61, 0.52) !important;
}

/* 3. Alternating Section Separation */

/* Sec 1: Trusted By (Logos) - Pure White */
[data-id="93c73a3"],
.elementor-element-93c73a3 {
  background-color: var(--pvc-color-bg-light, #F7F9F6) !important;
  border-bottom: none !important;
  padding-top: 28px !important;
  padding-bottom: 0 !important;
}

/* Sec 2: Practice Areas - Soft Slate Neutral */
[data-id="homepage-practice-areas"],
.elementor-element-homepage-practice-areas {
  background-color: #F4F7F9 !important;
  border-bottom: 1px solid rgba(22, 59, 76, 0.08) !important;
  padding: 85px 0 !important;
}

[data-id="homepage-practice-areas"] .elementor-element[data-id$="-inner"] {
  background-color: #FFFFFF !important;
  border: 1px solid rgba(22, 59, 76, 0.08) !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 18px rgba(22, 59, 76, 0.04) !important;
  transition: all 0.3s ease !important;
}

[data-id="homepage-practice-areas"] .elementor-element[data-id$="-inner"]:hover {
  border-color: #E09B3D !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 26px rgba(22, 59, 76, 0.1) !important;
}

/* Sec 3: Industries We Serve - Pure White */
[data-id="e7243a1"],
.elementor-element-e7243a1 {
  background-color: #FFFFFF !important;
  border-bottom: 1px solid rgba(22, 59, 76, 0.08) !important;
  padding: 85px 0 !important;
}

[data-id="e7243a1"] .elementor-element[data-id$="-inner"] {
  background-color: #F8FAF9 !important;
  border: 1px solid rgba(22, 59, 76, 0.08) !important;
  border-radius: 12px !important;
}

/* Sec 4: How We Work - Deep Navy Authority Mid-Page Anchor */
[data-id="99ceb84"],
.elementor-element-99ceb84 {
  background: linear-gradient(135deg, #091C25 0%, #0E2834 50%, #163B4C 100%) !important;
  border-bottom: 2px solid rgba(224, 155, 61, 0.35) !important;
  padding: 90px 0 !important;
  color: #FFFFFF !important;
  position: relative !important;
}

[data-id="99ceb84"] h2,
[data-id="99ceb84"] .elementor-heading-title {
  color: #FFFFFF !important;
}

[data-id="99ceb84"] .sub-title,
[data-id="99ceb84"] .pvc-sub-badge {
  color: #E09B3D !important;
}

[data-id="99ceb84"] p,
[data-id="99ceb84"] .elementor-widget-text-editor {
  color: rgba(255, 255, 255, 0.82) !important;
}

[data-id="99ceb84"] .elementor-element[data-id$="-inner"] {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2) !important;
  color: #FFFFFF !important;
}

[data-id="99ceb84"] .elementor-element[data-id$="-inner"] h3,
[data-id="99ceb84"] .elementor-element[data-id$="-inner"] h4 {
  color: #FFFFFF !important;
}

[data-id="99ceb84"] .elementor-element[data-id$="-inner"] p {
  color: rgba(255, 255, 255, 0.75) !important;
}

/* Sec 5: Statutory Deadlines - Pure White */
[data-id="990c3ff"],
.elementor-element-990c3ff {
  background-color: #FFFFFF !important;
  border-bottom: 1px solid rgba(22, 59, 76, 0.08) !important;
  padding: 85px 0 !important;
}

/* Sec 6: Meet The Founder - Soft Executive Slate */
[data-id="homepage-founder"],
.elementor-element-homepage-founder {
  background-color: #EDF2F5 !important;
  border-bottom: 1px solid rgba(22, 59, 76, 0.08) !important;
  padding: 85px 0 !important;
}

/* Sec 7: FAQ - Pure White */
[data-id="e974857"],
.elementor-element-e974857 {
  background-color: #FFFFFF !important;
  border-bottom: 1px solid rgba(22, 59, 76, 0.08) !important;
  padding: 85px 0 !important;
}

/* Sec 8: Consultation Form Section */
[data-id="8a21df7"],
.bizzen-contact_one {
  background-color: #0E2834 !important;
  padding: 80px 0 !important;
}

/* Sec 9: Pre-Footer CTA - Slate Navy with Gold Accent Line */
[data-id="home-cta-section"],
.bizzen-cta-sec {
  background-color: #FFFFFF !important;
  border-top: 2px solid rgba(22, 59, 76, 0.08) !important;
  padding: 70px 0 !important;
}


/* How We Work Process Steps High Contrast Fix */
[data-id="99ceb84"] .bizzen-process-item.style-three .content h4 {
  color: #FFFFFF !important;
  font-family: var(--pvc-font-heading);
  font-size: 20px !important;
  font-weight: 700 !important;
  margin-top: 14px !important;
  margin-bottom: 10px !important;
}

[data-id="99ceb84"] .bizzen-process-item.style-three .content p {
  color: rgba(255, 255, 255, 0.82) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

[data-id="99ceb84"] .bizzen-process-item.style-three .number {
  color: #E09B3D !important;
  -webkit-text-stroke: 1.5px #E09B3D !important;
  font-size: 52px !important;
  font-weight: 800 !important;
  opacity: 0.9 !important;
}

[data-id="99ceb84"] .bizzen-process-item.style-three:hover .number {
  color: #E09B3D !important;
  transform: translateY(-2px) !important;
  opacity: 1 !important;
}

[data-id="99ceb84"] .bizzen-process-item.style-three .line {
  background-color: rgba(224, 155, 61, 0.3) !important;
}

[data-id="99ceb84"] .bizzen-process-item.style-three:before {
  background-color: #E09B3D !important;
}

/* Suppress Bizzen theme header on blog & single posts to let Elementor templates control the layout */
body.blog .page-hero-area, body.archive .page-hero-area, body.single-post .page-hero-area { display: none !important; }


/* ==========================================================================
   Single Post Blog Sidebar — Fully Visible & Floating (Pure CSS Sticky)
   ========================================================================== */
.elementor-element-pvc_single_body > .e-con-inner,
.elementor-element-pvc_single_body {
  align-items: flex-start !important;
}

.elementor-element-pvc_right_sidebar {
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 100px !important;
  align-self: flex-start !important;
  height: fit-content !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-y: visible !important;
  z-index: 20 !important;
}

@media (max-width: 991.98px) {
  .elementor-element-pvc_right_sidebar {
    position: static !important;
    max-height: none !important;
    overflow: visible !important;
  }
}

/* ==========================================================================
   High Contrast & Readability Fixes: Sidebar CTA Card
   ========================================================================== */
.elementor-element-pvc_cta_card {
  background-color: #163B4C !important;
  border: 1px solid rgba(224, 155, 61, 0.25) !important;
  border-radius: 12px !important;
}

.elementor-element-pvc_cta_card h3,
.elementor-element-pvc_cta_card .elementor-heading-title {
  color: #FFFFFF !important;
}

.elementor-element-pvc_cta_card p,
.elementor-element-pvc_cta_card .elementor-element-pvc_cta_desc,
.elementor-element-pvc_cta_card .elementor-element-pvc_cta_desc p,
.elementor-element-pvc_cta_card .elementor-widget-text-editor,
.elementor-element-pvc_cta_card .elementor-widget-text-editor p {
  color: #E2E8F0 !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  opacity: 0.92 !important;
}

/* ==========================================================================
   High Contrast & Readability Fixes: Footer Copyright Area
   ========================================================================== */
.copyright-area.pvc-copyright,
.copyright-area.pvc-copyright p,
.copyright-area.pvc-copyright p.mb-0 {
  color: #CBD5E1 !important;
  font-size: 13.5px !important;
  line-height: 1.6 !important;
}

.copyright-area.pvc-copyright .pvc-legal-links a {
  color: #CBD5E1 !important;
  font-size: 13.5px !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.copyright-area.pvc-copyright .pvc-legal-links a:hover {
  color: #E09B3D !important;
}

.copyright-area.pvc-copyright .pvc-legal-links .divider {
  color: rgba(203, 213, 225, 0.4) !important;
  margin: 0 10px !important;
}

/* ==========================================================================
   Premium Bespoke Blog Archive Pagination
   ========================================================================== */
.elementor-pagination {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 55px 0 25px !important;
  padding: 0 !important;
  list-style: none !important;
}

.elementor-pagination .page-numbers {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 44px !important;
  height: 44px !important;
  padding: 0 18px !important;
  font-family: var(--pvc-font-sans);
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #163B4C !important;
  background-color: #FFFFFF !important;
  border: 1px solid #CBD5E1 !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  box-shadow: 0 2px 6px rgba(22, 59, 76, 0.04) !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.elementor-pagination .page-numbers:hover:not(.current):not(span) {
  background-color: #FFFDF9 !important;
  border-color: #E09B3D !important;
  color: #E09B3D !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(224, 155, 61, 0.16) !important;
}

.elementor-pagination .page-numbers.current {
  background: linear-gradient(135deg, #163B4C 0%, #0E2834 100%) !important;
  border-color: #163B4C !important;
  color: #FFFFFF !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 14px rgba(22, 59, 76, 0.25) !important;
  pointer-events: none !important;
  cursor: default !important;
}

.elementor-pagination span.page-numbers.prev,
.elementor-pagination span.page-numbers.next {
  opacity: 0.35 !important;
  background-color: #F8FAFC !important;
  border-color: #E2E8F0 !important;
  color: #94A3B8 !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
  pointer-events: none !important;
}

.elementor-pagination a.page-numbers.prev,
.elementor-pagination a.page-numbers.next {
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 0.3px !important;
  padding: 0 22px !important;
}


/* ==========================================================================
   Elementor Template 4002 Footer Copyright & Legal Links High Contrast
   ========================================================================== */
.elementor-location-footer .elementor-element-f00003c,
.elementor-location-footer .elementor-element-f00003c .elementor-widget-container,
.elementor-element-f00003c {
  color: #CBD5E1 !important;
  font-weight: 450 !important;
  font-size: 13.5px !important;
  opacity: 0.95 !important;
}

.elementor-location-footer .elementor-element-f000040 .elementor-icon-list-text,
.elementor-element-f000040 .elementor-icon-list-text {
  color: #CBD5E1 !important;
  font-weight: 450 !important;
  font-size: 13.5px !important;
  transition: color 0.2s ease !important;
}

.elementor-location-footer .elementor-element-f000040 .elementor-icon-list-item:hover .elementor-icon-list-text,
.elementor-element-f000040 .elementor-icon-list-item:hover .elementor-icon-list-text {
  color: #E09B3D !important;
}


/* ==========================================================================
   Modern Expansive Layout & Un-Boxed Blog Design
   Increased container width (1360px) + edge-to-edge media + fluid card hierarchy
   ========================================================================== */
.elementor-element-pvc_archive_grid_sec > .e-con-inner,
.elementor-element-pvc_archive_hero > .e-con-inner,
.elementor-element-pvc_single_hero > .e-con-inner,
.elementor-element-pvc_single_body > .e-con-inner {
  max-width: 1360px !important;
  width: 100% !important;
}

/* ==========================================================================
   PVC Blog Archive & Single Post Image & Layout System (Automotive Standard)
   ========================================================================== */

/* 1. Blog Card Inset Framing & Proportional Image */
.elementor-element-pvc_img_container {
  width: 100% !important;
  padding: 12px 12px 0 12px !important;
  margin: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.elementor-element-pvc_feat_img {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}

.elementor-element-pvc_feat_img .elementor-widget-container {
  width: 100% !important;
  overflow: hidden !important;
  border-radius: 10px !important;
}

.elementor-element-pvc_feat_img a {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  border-radius: 10px !important;
}

.elementor-element-pvc_feat_img img {
  width: 100% !important;
  height: 215px !important;
  max-height: 215px !important;
  aspect-ratio: 16 / 10 !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 10px !important;
  display: block !important;
  transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.elementor-element-pvc_loop_card:hover .elementor-element-pvc_feat_img img {
  transform: scale(1.05) !important;
}

/* 2. Single Post Featured Image (Proportional 16:9 Banner) */
.elementor-element-pvc_single_feat_img {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 32px 0 !important;
  padding: 0 !important;
}

.elementor-element-pvc_single_feat_img .elementor-widget-container {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
  border-radius: 12px !important;
}

.elementor-element-pvc_single_feat_img img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 480px !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 12px !important;
  display: block !important;
  box-shadow: 0 4px 20px rgba(22, 59, 76, 0.08) !important;
}

@media (max-width: 767px) {
  .elementor-element-pvc_feat_img img {
    height: 195px !important;
    max-height: 195px !important;
    aspect-ratio: 16 / 9 !important;
  }
  .elementor-element-pvc_single_feat_img img {
    max-height: 260px !important;
    aspect-ratio: 16 / 9 !important;
  }
}

/* 3. Single Post Sticky Sidebar */
@media (min-width: 1025px) {
  .elementor-element-pvc_right_sidebar {
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 95px !important;
    align-self: flex-start !important;
    z-index: 10 !important;
  }
}

/* 4. Single Post Article Typography & Content Polish */
.pvc-single-content h2,
.pvc-post-content-card h2 {
  font-family: var(--pvc-font-heading);
  color: #163B4C !important;
  font-size: 28px !important;
  margin-top: 36px !important;
  margin-bottom: 16px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}

.pvc-single-content h3,
.pvc-post-content-card h3 {
  font-family: var(--pvc-font-heading);
  color: #163B4C !important;
  font-size: 22px !important;
  margin-top: 28px !important;
  margin-bottom: 12px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}

.pvc-single-content p,
.pvc-post-content-card p {
  color: #1E293B !important;
  font-size: 16px !important;
  line-height: 1.85 !important;
  margin-bottom: 20px !important;
}

.pvc-single-content ul,
.pvc-single-content ol,
.pvc-post-content-card ul,
.pvc-post-content-card ol {
  margin-bottom: 24px !important;
  padding-left: 24px !important;
  line-height: 1.8 !important;
  color: #1E293B !important;
}

.pvc-single-content li,
.pvc-post-content-card li {
  margin-bottom: 8px !important;
}

.pvc-single-content blockquote,
.pvc-post-content-card blockquote {
  border-left: 4px solid #E09B3D !important;
  padding: 16px 22px !important;
  background: #F8FAFC !important;
  margin: 24px 0 !important;
  font-style: italic !important;
  color: #163B4C !important;
  border-radius: 0 8px 8px 0 !important;
}

.pvc-single-content a,
.pvc-post-content-card a {
  color: #E09B3D !important;
  text-decoration: underline !important;
  font-weight: 500 !important;
  transition: color 0.2s ease !important;
}

.pvc-single-content a:hover,
.pvc-post-content-card a:hover {
  color: #C88327 !important;
}

/* 5. Rank Math FAQ Accordion Discipline in Single Post */
.rank-math-list-item {
  margin-bottom: 14px !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 10px !important;
  background: #FFFFFF !important;
  overflow: hidden !important;
}
.rank-math-question {
  font-family: var(--pvc-font-heading);
  color: #163B4C !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  padding: 16px 20px !important;
  margin: 0 !important;
}
.rank-math-answer {
  padding: 0 20px 16px 20px !important;
  border-top: 1px solid #F1F5F7 !important;
  color: #475569 !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}

/* 6. Blog Archive & Related Posts Pagination Buttons */
.elementor-pagination {
  display: flex !important;
  gap: 10px !important;
  justify-content: center !important;
  margin-top: 36px !important;
}
.elementor-pagination .page-numbers {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 40px !important;
  height: 40px !important;
  padding: 0 14px !important;
  border-radius: 8px !important;
  background-color: #FFFFFF !important;
  border: 1px solid rgba(22, 59, 76, 0.12) !important;
  color: #163B4C !important;
  text-decoration: none !important;
  font-family: var(--pvc-font-sans);
  font-size: 14px !important;
  font-weight: 600 !important;
  transition: all 0.25s ease !important;
}
.elementor-pagination .page-numbers.current,
.elementor-pagination .page-numbers:hover {
  background-color: #E09B3D !important;
  border-color: #E09B3D !important;
  color: #FFFFFF !important;
  box-shadow: 0 4px 12px rgba(224, 155, 61, 0.25) !important;
}

/* Fluid card styling: softened borders + ambient elevation */
.elementor-element-pvc_loop_card {
  border: 1px solid rgba(22, 59, 76, 0.08) !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  background-color: #FFFFFF !important;
  box-shadow: 0 4px 20px rgba(22, 59, 76, 0.05) !important;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.35s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.35s ease !important;
}

.elementor-element-pvc_loop_card:hover {
  transform: translateY(-6px) !important;
  border-color: rgba(224, 155, 61, 0.35) !important;
  box-shadow: 0 16px 36px rgba(22, 59, 76, 0.11) !important;
}

/* Generous, clean card body */
.elementor-element-pvc_content_container {
  padding: 24px 26px 22px 26px !important;
}

.elementor-element-pvc_post_title h3,
.elementor-element-pvc_post_title .elementor-heading-title {
  font-family: var(--pvc-font-heading);
  font-size: 21px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  color: #163B4C !important;
  margin-top: 4px !important;
  margin-bottom: 10px !important;
  transition: color 0.2s ease !important;
}

.elementor-element-pvc_loop_card:hover .elementor-element-pvc_post_title h3 a,
.elementor-element-pvc_loop_card:hover .elementor-element-pvc_post_title .elementor-heading-title a {
  color: #E09B3D !important;
}

.elementor-element-pvc_post_excerpt p {
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: #64748B !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  margin-bottom: 0 !important;
}

.elementor-element-pvc_read_more_btn .elementor-button {
  color: #E09B3D !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 0.5px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 0 !important;
  transition: all 0.25s ease !important;
}

.elementor-element-pvc_read_more_btn .elementor-button i,
.elementor-element-pvc_read_more_btn .elementor-button svg {
  transition: transform 0.25s ease !important;
}

.elementor-element-pvc_loop_card:hover .elementor-element-pvc_read_more_btn .elementor-button {
  color: #163B4C !important;
}

.elementor-element-pvc_loop_card:hover .elementor-element-pvc_read_more_btn .elementor-button i,
.elementor-element-pvc_loop_card:hover .elementor-element-pvc_read_more_btn .elementor-button svg {
  transform: translateX(5px) !important;
}


/* =========================================================================
   Compact Blog Archive Hero & Tiles-First Layout
   ========================================================================= */
.pvc-archive-hero,
.elementor-element-pvc_archive_hero,
.elementor-element-pvc_archive_hero.e-con {
  position: relative !important;
  background: linear-gradient(135deg, #091C25 0%, #0E2834 35%, #163B4C 75%, #1F4E64 100%) !important;
  padding-top: 24px !important;
  padding-bottom: 22px !important;
  color: #FFFFFF !important;
  border-bottom: 3px solid #E09B3D !important;
  overflow: hidden !important;
  min-height: auto !important;
}

.elementor-element-pvc_archive_hero .elementor-element-pvc_archive_eyebrow,
.elementor-element-pvc_archive_hero .elementor-element-pvc_archive_eyebrow .elementor-heading-title {
  margin-bottom: 4px !important;
  font-size: 11.5px !important;
  letter-spacing: 0.12em !important;
}

.elementor-element-pvc_archive_hero .elementor-element-pvc_archive_title,
.elementor-element-pvc_archive_hero .elementor-element-pvc_archive_title h1,
.elementor-element-pvc_archive_hero h1 {
  font-size: 34px !important;
  line-height: 1.2 !important;
  margin-top: 4px !important;
  margin-bottom: 8px !important;
}

.elementor-element-pvc_archive_hero .elementor-element-pvc_archive_sub,
.elementor-element-pvc_archive_hero .elementor-element-pvc_archive_sub p,
.elementor-element-pvc_archive_hero p {
  font-size: 14.5px !important;
  line-height: 1.5 !important;
  max-width: 660px !important;
  margin: 0 auto !important;
}

/* Reduced spacing between hero and blog grid */
.elementor-element-pvc_archive_grid_sec,
.elementor-element-pvc_archive_grid_sec.e-con {
  padding-top: 26px !important;
  padding-bottom: 60px !important;
  background-color: #F1F5F7 !important;
}





.elementor-element-pvc_ind_hero,
.elementor-element-pvc_ind_hero.e-con {
  background: linear-gradient(135deg, #091C25 0%, #163B4C 60%, #1F4E64 100%) !important;
  color: #FFFFFF !important;
  position: relative;
  overflow: hidden;
}

.elementor-element-pvc_ind_hero::before {
  content: "";
  position: absolute;
  top: -50%;
  right: -20%;
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(224, 155, 61, 0.12) 0%, transparent 70%);
  pointer-events: none;
}

.pvc-hero-breadcrumbs,
.pvc-hero-breadcrumbs a {
  color: rgba(255, 255, 255, 0.7) !important;
  font-size: 13.5px !important;
  text-decoration: none !important;
}

.pvc-hero-breadcrumbs a:hover {
  color: #E09B3D !important;
}

.pvc-hero-breadcrumbs .sep {
  margin: 0 8px;
  color: rgba(224, 155, 61, 0.8);
}

.pvc-hero-badge {
  display: inline-block;
  background: rgba(224, 155, 61, 0.16);
  color: #E09B3D;
  border: 1px solid rgba(224, 155, 61, 0.35);
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 5px 16px;
  border-radius: 50px;
  margin-bottom: 12px;
}

.pvc-hero-title,
.pvc-hero-title h1 {
  font-family: var(--pvc-font-sans);
  font-size: 42px !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
  line-height: 1.25 !important;
  letter-spacing: -0.5px !important;
  margin: 0 0 8px !important;
}

.pvc-hero-lead,
.pvc-hero-lead p {
  font-size: 16.5px !important;
  line-height: 1.65 !important;
  color: rgba(255, 255, 255, 0.85) !important;
  max-width: 720px !important;
  margin: 0 auto !important;
}


.elementor-element-pvc_ind_intro,
.elementor-element-pvc_ind_intro.e-con {
  background-color: #F8FAFC !important;
  padding-top: 55px !important;
  padding-bottom: 25px !important;
}

.pvc-sub-label {
  color: #E09B3D !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  display: inline-block !important;
  margin-bottom: 8px !important;
}

.pvc-sec-title,
.pvc-sec-title h2 {
  font-family: var(--pvc-font-sans);
  font-size: 34px !important;
  font-weight: 700 !important;
  color: #163B4C !important;
  line-height: 1.3 !important;
  margin-bottom: 12px !important;
}

.pvc-sec-lead,
.pvc-sec-lead p {
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: #5B6B75 !important;
  max-width: 780px !important;
  margin: 0 auto !important;
}


.elementor-element-pvc_ind_grid_sec,
.elementor-element-pvc_ind_grid_sec.e-con {
  background-color: #F8FAFC !important;
  padding-top: 15px !important;
  padding-bottom: 60px !important;
}

.pvc-ind-cards-grid,
.pvc-ind-cards-grid.e-con {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 26px !important;
  width: 100% !important;
}


@media (min-width: 1025px) {
  .pvc-ind-card,
  .pvc-ind-card.e-con {
    flex: 0 1 calc(25% - 20px) !important;
    max-width: calc(25% - 20px) !important;
    min-width: 260px !important;
  }
}


@media (max-width: 1024px) and (min-width: 641px) {
  .pvc-ind-card,
  .pvc-ind-card.e-con {
    flex: 0 1 calc(50% - 15px) !important;
    max-width: calc(50% - 15px) !important;
  }
}


@media (max-width: 640px) {
  .pvc-ind-card,
  .pvc-ind-card.e-con {
    flex: 0 1 100% !important;
    max-width: 100% !important;
  }
  .pvc-hero-title,
  .pvc-hero-title h1 {
    font-size: 30px !important;
  }
  .pvc-sec-title,
  .pvc-sec-title h2 {
    font-size: 26px !important;
  }
}


.pvc-ind-card,
.pvc-ind-card.e-con {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 16px !important;
  padding: 30px 24px 24px !important;
  box-shadow: 0 4px 16px rgba(9, 28, 37, 0.04) !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  position: relative !important;
  overflow: hidden !important;
}

.pvc-ind-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #163B4C, #E09B3D);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.pvc-ind-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 16px 36px rgba(22, 59, 76, 0.12) !important;
  border-color: #CBD5E1 !important;
}

.pvc-ind-card:hover::before {
  opacity: 1;
}


.pvc-ind-icon-box,
.pvc-ind-icon-box.e-con {
  width: 56px !important;
  height: 56px !important;
  border-radius: 14px !important;
  background: rgba(22, 59, 76, 0.06) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 18px !important;
  transition: all 0.3s ease !important;
}

.pvc-ind-icon-box img {
  widgh: 32px !important;
  height: 32px !important;
  object-fit: contain !important;
  transition: transform 0.3s ease !important;
}

.pvc-ind-card:hover .pvc-ind-icon-box {
  background: rgba(224, 155, 61, 0.15) !important;
}

.pvc-ind-card:hover .pvc-ind-icon-box img {
  transform: scale(1.08);
}


.pvc-ind-card-title,
.pvc-ind-card-title h3 {
  font-family: var(--pvc-font-sans);
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #163B4C !important;
  line-height: 1.35 !important;
  margin: 0 0 10px 0 !important;
}

.pvc-ind-card-desc,
.pvc-ind-card-desc p {
  font-size: 13.5px !important;
  line-height: 1.65 !important;
  color: #5B6B75 !important;
  margin-bottom: 16px !important;
  flex-grow: 1 !important;
}


.pvc-ind-pills-wrap {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin-bottom: 20px !important;
}

.pvc-pill {
  display: inline-block !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #163B4C !important;
  background: #EEF4F7 !important;
  border: 1px solid #D8E4EC !important;
  border-radius: 6px !important;
  padding: 3px 8px !important;
  letter-spacing: 0.15px !important;
  transition: background 0.2s ease;
}

.pvc-ind-card:hover .pvc-pill {
  background: #E5EFF4 !important;
  border-color: #C7DCE7 !important;
}


.pvc-ind-action {
  margin-top: auto !important;
  padding-top: 14px !important;
  border-top: 1px solid #F1F5F7 !important;
}

.pvc-ind-action-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color: #163B4C !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
}

.pvc-ind-action-btn .arrow {
  font-size: 14px !important;
  color: #E09B3D !important;
  transition: transform 0.25s ease !important;
}

.pvc-ind-card:hover .pvc-ind-action-btn {
  color: #E09B3D !important;
}

.pvc-ind-card:hover .pvc-ind-action-btn .arrow {
  transform: translateX(4px) !important;
}


.elementor-element-pvc_ind_why_section,
.elementor-element-pvc_ind_why_section.e-con {
  background: #FFFFFF !important;
  padding-top: 60px !important;
  padding-bottom: 60px !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
}

.pvc-ind-adv-grid,
.pvc-ind-adv-grid.e-con {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: space-between !important;
  align-items: stretch !important;
  gap: 24px !important;
  margin-top: 36px !important;
}

.pvc-ind-adv-card,
.pvc-ind-adv-card.e-con {
  flex: 0 1 calc(33.333% - 18px) !important;
  background: #F8FAFC !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 16px !important;
  padding: 32px 28px !important;
  box-shadow: 0 4px 14px rgba(9, 28, 37, 0.03) !important;
  transition: all 0.3s ease !important;
}

@media (max-width: 900px) {
  .pvc-ind-adv-card,
  .pvc-ind-adv-card.e-con {
    flex: 0 1 100% !important;
  }
}

.pvc-ind-adv-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 10px 24px rgba(22, 59, 76, 0.08) !important;
  background: #FFFFFF !important;
}

.pvc-adv-icon {
  font-size: 28px !important;
  margin-bottom: 14px !important;
  display: inline-block !important;
}

.pvc-ind-adv-card h4 {
  font-family: var(--pvc-font-sans);
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #163B4C !important;
  margin-bottom: 10px !important;
}

.pvc-adv-desc,
.pvc-adv-desc p {
  font-size: 14px !important;
  color: #5B6B75 !important;
  line-height: 1.65 !important;
  margin: 0 !important;
}


.elementor-element-pvc_ind_cta_sec,
.elementor-element-pvc_ind_cta_sec.e-con {
  background-color: #F8FAFC !important;
  padding-top: 50px !important;
  padding-bottom: 75px !important;
}

.pvc-ind-cta-card,
.pvc-ind-cta-card.e-con {
  background: linear-gradient(135deg, #0E2834 0%, #163B4C 100%) !important;
  border: 1px solid rgba(224, 155, 61, 0.3) !important;
  border-radius: 20px !important;
  padding: 44px 48px !important;
  box-shadow: 0 16px 40px rgba(14, 40, 52, 0.16) !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 24px !important;
  position: relative !important;
  overflow: hidden !important;
}

.pvc-ind-cta-card::after {
  content: "";
  position: absolute;
  bottom: -40px;
  right: -40px;
  width: 250px;
  height: 250px;
  background: radial-gradient(circle, rgba(224, 155, 61, 0.15) 0%, transparent 70%);
  pointer-events: none;
}

.pvc-ind-cta-text-col,
.pvc-ind-cta-text-col.e-con {
  flex: 1 1 600px !important;
}

.pvc-ind-cta-card h2 {
  font-family: var(--pvc-font-sans);
  color: #FFFFFF !important;
  font-size: 27px !important;
  font-weight: 700 !important;
  margin: 0 0 8px 0 !important;
  line-height: 1.3 !important;
}

.pvc-ind-cta-card p {
  color: rgba(255, 255, 255, 0.85) !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}

.pvc-ind-cta-btn-col,
.pvc-ind-cta-btn-col.e-con {
  font: 0 0 auto !important;
  flex: 0 0 auto !important;
}

.pvc-ind-cta-button .elementor-button,
.pvc-ind-cta-button a {
  background: #E09B3D !important;
  color: #091C25 !important;
  font-family: var(--pvc-font-sans);
  font-size: 15px !important;
  font-weight: 700 !important;
  padding: 14px 32px !important;
  border-radius: 50px !important;
  transition: all 0.3s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  box-shadow: 0 6px 18px rgba(224, 155, 61, 0.35) !important;
  text-decoration: none !important;
  border: none !important;
}

.pvc-ind-cta-button .elementor-button:hover,
.pvc-ind-cta-button a:hover {
  background: #C88428 !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 24px rgba(224, 155, 61, 0.45) !important;
}


/* ==========================================================================
   Footer Copyright & Candid Digital Credit High-Contrast Styling
   ========================================================================== */
.copyright-area.pvc-copyright,
.copyright-area.pvc-copyright p,
.copyright-area.pvc-copyright p.mb-0,
.elementor-location-footer .elementor-element-f00003c,
.elementor-location-footer .elementor-element-f00003c p,
.elementor-location-footer .elementor-element-f00003c .elementor-widget-container,
.elementor-element-f00003c {
  color: #CBD5E1 !important;
  font-family: var(--pvc-font-sans);
  font-size: 13.5px !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  opacity: 1 !important;
  display: block !important;
  visibility: visible !important;
}

.pvc-footer-divider,
.pvc-copyright .divider {
  color: rgba(255, 255, 255, 0.4) !important;
  margin: 0 8px !important;
  display: inline-block !important;
}

.pvc-candid-credit,
.elementor-element-f00003c a,
.copyright-area.pvc-copyright a.pvc-candid-credit {
  color: #E09B3D !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  display: inline-block !important;
}

.pvc-candid-credit:hover,
.elementor-element-f00003c a:hover,
.copyright-area.pvc-copyright a.pvc-candid-credit:hover {
  color: #FFFFFF !important;
  text-decoration: underline !important;
}


/* === PHASE 3: Mobile & Responsive Polish === */

/* Fluid hero headlines */
@media (max-width: 767px) {
  body, p { font-size: 15px !important; line-height: 1.65 !important; }
  h1, .elementor-widget-heading h1 { font-size: clamp(26px, 7vw, 36px) !important; line-height: 1.25 !important; }
  h2, .elementor-widget-heading h2 { font-size: clamp(22px, 6vw, 32px) !important; line-height: 1.3 !important; }
  .elementor-widget-text-editor p { word-break: break-word !important; }
}

/* Industries card grid */
.pvc-ind-cards-grid { display: flex !important; flex-wrap: wrap !important; gap: 24px !important; }
.pvc-ind-card { flex: 0 0 calc(33.333% - 16px) !important; min-width: 280px !important; }
@media (max-width: 1023px) { .pvc-ind-card { flex: 0 0 calc(50% - 12px) !important; } }
@media (max-width: 599px) { .pvc-ind-card { flex: 0 0 100% !important; } }

/* Industries CTA - stack on mobile */
@media (max-width: 767px) {
  .pvc-ind-cta-card { flex-direction: column !important; padding: 32px 24px !important; gap: 24px !important; }
  .pvc-ind-cta-btn-col { justify-content: flex-start !important; width: 100% !important; }
}

/* CTA buttons - 44px tap target on mobile */
@media (max-width: 599px) {
  .elementor-button, .bizzen-btn, .theme-btn {
    min-height: 44px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
}

/* WhatsApp / Joinchat floating button offset */
#joinchat, .joinchat, [id^="joinchat"] { bottom: 24px !important; right: 16px !important; }
@media (max-width: 599px) { #joinchat, .joinchat { bottom: 80px !important; } }

/* Hamburger - 44px tap target */
@media (max-width: 991px) {
  .bizzen-navbar .navbar-toggler, .navbar-toggler {
    display: flex !important; align-items: center !important;
    justify-content: center !important; height: 44px !important; min-width: 44px !important;
  }
}

/* About page - founder + story stack on mobile */
@media (max-width: 767px) {
  .elementor-element[data-id="about-founder-inner"] > .e-con-inner,
  .elementor-element[data-id="about-story"] > .e-con-inner { flex-direction: column !important; }
  .elementor-element[data-id="about-founder-photo"] {
    width: 100% !important; max-width: 240px !important; margin: 0 auto 24px auto !important;
  }
  .elementor-element[data-id="about-story-text"],
  .elementor-element[data-id="about-story-image"] { width: 100% !important; }
}

/* About values - 1 col on mobile */
@media (max-width: 599px) {
  .elementor-element[data-id="value-integrity-col"],
  .elementor-element[data-id="value-precision-col"],
  .elementor-element[data-id="value-speed-col"],
  .elementor-element[data-id="value-research-col"],
  .elementor-element[data-id="value-client-col"] {
    width: 100% !important; border-right: none !important;
    border-bottom: 1px solid #E4EAE2 !important;
  }
}

/* Homepage founder section - stack on mobile */
@media (max-width: 767px) {
  .elementor-element[data-id="homepage-founder-inner"] > .e-con-inner { flex-direction: column !important; }
  .elementor-element[data-id="homepage-founder-photo"] { width: 100% !important; max-width: 280px !important; margin: 0 auto !important; }
}
/* === END PHASE 3 === */


/* ==========================================================================
   MOBILE NAV FIX — Hamburger Icon Visibility & Blur
   ========================================================================== */

/* Override parent theme header-one white bars — bars were invisible on white bg */
.header-area.header-one .nav-right-item .navbar-toggler span,
.header-one .nav-right-item .navbar-toggler span,
.header-navigation .nav-right-item .navbar-toggler span {
  background-color: #163B4C !important;
}

/* Toggler button appearance — visible dark border with navy bars */
.header-area.header-one .nav-right-item .navbar-toggler,
.header-one .nav-right-item .navbar-toggler,
.header-navigation .nav-right-item .navbar-toggler {
  border: 1.5px solid rgba(22, 59, 76, 0.25) !important;
  background: transparent !important;
  border-radius: 6px !important;
  padding: 9px 8px !important;
  cursor: pointer !important;
  flex-direction: column !important;
  gap: 5px !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 40px !important;
  min-height: 40px !important;
}

.header-area.header-one .nav-right-item .navbar-toggler:hover,
.header-one .nav-right-item .navbar-toggler:hover {
  background: rgba(22, 59, 76, 0.05) !important;
  border-color: #163B4C !important;
}

/* Span bars — ensure consistent sizing */
.header-navigation .nav-right-item .navbar-toggler span {
  display: block !important;
  width: 22px !important;
  height: 2px !important;
  background: #163B4C !important;
  border-radius: 2px !important;
  transition: all 0.3s ease !important;
}

/* Active/open state — X transform */
.header-navigation .nav-right-item .navbar-toggler.active span:nth-child(1) {
  transform: rotate(45deg) translate(5px, 5px) !important;
}
.header-navigation .nav-right-item .navbar-toggler.active span:nth-child(2) {
  opacity: 0 !important;
  transform: translateX(-8px) !important;
}
.header-navigation .nav-right-item .navbar-toggler.active span:nth-child(3) {
  transform: rotate(-45deg) translate(5px, -5px) !important;
}

/* Overlay — semi-transparent dim only, no blur */
@media (max-width: 1199.98px) {
  .offcanvas__overlay.overlay-open {
    background: rgba(0, 0, 0, 0.45) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
}


/* === MOBILE FIXES v3 === */

/* 1. Hamburger spans - font-size:0 and line-height:0 kill the inheritance that collapses height */
.header-navigation .nav-right-item .navbar-toggler span,
.header-area.header-one .nav-right-item .navbar-toggler span,
.navbar-toggler > span {
  display: block !important;
  width: 22px !important;
  height: 2px !important;
  min-height: 2px !important;
  max-height: 2px !important;
  flex-shrink: 0 !important;
  flex-grow: 0 !important;
  align-self: center !important;
  background-color: #163B4C !important;
  border-radius: 2px !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  overflow: hidden !important;
  box-sizing: content-box !important;
}
/* Hamburger: only visible on mobile/tablet — hidden at desktop (>=1200px) */
@media (max-width: 1199.98px) {
  .header-navigation .nav-right-item .navbar-toggler,
  .header-area.header-one .nav-right-item .navbar-toggler {
    display: flex !important;
  }
}
@media (min-width: 1200px) {
  .header-navigation .nav-right-item .navbar-toggler,
  .header-area.header-one .nav-right-item .navbar-toggler,
  .header-one .nav-right-item .navbar-toggler,
  .navbar-toggler {
    display: none !important;
  }
}
.header-navigation .nav-right-item .navbar-toggler,
.header-area.header-one .nav-right-item .navbar-toggler {
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  width: 40px !important;
  min-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  padding: 0 !important;
  border: 1.5px solid rgba(22,59,76,0.3) !important;
  border-radius: 6px !important;
  background: transparent !important;
  cursor: pointer !important;
}

/* 2. Logo cap on mobile */
@media (max-width: 767px) {
  .site-branding img {
    max-height: 36px !important;
    max-width: 160px !important;
    width: auto !important;
    height: auto !important;
  }
  .header-navigation .container-fluid {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}
/* 3. Overlay - no blur, no teal, pure neutral dim */
.offcanvas__overlay { backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
.offcanvas__overlay.overlay-open {
  background: rgba(0, 0, 0, 0.55) !important;
  opacity: 1 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
/* 4. Mobile nav links - Montserrat */
@media (max-width: 1199.98px) {
  .header-navigation .theme-nav-menu .main-menu ul > li > a,
  .header-navigation .theme-nav-menu .main-menu ul li a,
  .header-navigation .theme-nav-menu .main-menu ul li a.nav-links,
  .header-navigation .theme-nav-menu .main-menu ul li a.dropdown-items {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #163B4C !important;
  }
  .header-navigation .theme-menu-bottom h5 { font-family: 'Montserrat', sans-serif !important; }
}
/* 5. Desktop nav links - Montserrat */
.header-area .header-navigation .main-menu ul > li > a,
.header-navigation .main-menu ul > li > a,
.header-navigation .main-menu ul > li > a.nav-links,
.header-navigation .main-menu ul > li .sub-menu li a,
.header-navigation .main-menu ul > li .sub-menu li a.dropdown-items,
.header-one .header-navigation .main-menu ul > li > a,
.header-one .header-navigation .main-menu ul > li .sub-menu li a,
.header-two .header-navigation .main-menu ul > li > a,
.header-two .header-navigation .main-menu ul > li .sub-menu li a,
.header-navigation .theme-nav-menu .main-menu ul > li > a,
.header-navigation .theme-nav-menu .main-menu ul li a,
.main-menu ul > li > a,
.main-menu ul > li .sub-menu li a,
a.nav-links,
a.dropdown-items {
  font-family: 'Montserrat', sans-serif !important;
}
/* === END MOBILE FIXES v3 === */


/* Overlay opacity override - parent theme sets opacity:0.8 which multiplies with rgba alpha */
.offcanvas__overlay.overlay-open {
  opacity: 1 !important;
  background: rgba(0, 0, 0, 0.55) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}


/* Overlay final fix - lighter dim so page content behind is visibly different from the panel */
.offcanvas__overlay.overlay-open {
  background: rgba(0, 0, 0, 0.4) !important;
  opacity: 1 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}


/* Overlay - opaque enough to mask the teal hero behind it */
.offcanvas__overlay.overlay-open {
  background: rgba(0, 0, 0, 0.72) !important;
  opacity: 1 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}


/* Fix nav panel stacking - overlay was covering panel despite lower z-index */
@media (max-width: 1199.98px) {
  .header-navigation .theme-nav-menu {
    z-index: 1000100 !important;
    isolation: isolate;
  }
  .offcanvas__overlay {
    z-index: 1000000 !important;
  }
  .offcanvas__overlay.overlay-open {
    z-index: 1000000 !important;
    background: rgba(0,0,0,0.72) !important;
    opacity: 1 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
}


/* Root fix: header-area z-index must beat the overlay so the nav panel shows above it */
@media (max-width: 1199.98px) {
  .header-area {
    z-index: 1000200 !important;
  }
  .header-area .header-navigation {
    z-index: 1000200 !important;
  }
  .offcanvas__overlay,
  .offcanvas__overlay.overlay-open {
    z-index: 1000100 !important;
  }
}

/* ==========================================================================
   FIX BATCH v2.0 — Sept 2026
   1. Services dropdown z-index (GSAP ScrollSmoother #smooth-wrapper clips it)
   2. Get a Quote button — ensure visible & clickable on all pages
   3. About Us — hide duplicate Elementor hero banner section
   4. USP / Practice Areas — 2×2 grid on mobile & tablet
   5. Font readability improvements across all inner pages
   ========================================================================== */

/* ------------------------------------------------------------------
   FIX 1: Nav dropdown — raise above GSAP #smooth-wrapper
   #smooth-wrapper has position:fixed + overflow:hidden at z-index that
   clips the sub-menu. Solution: raise sub-menu z-index above it.
   ------------------------------------------------------------------ */
.header-area {
  z-index: 1000300 !important;
}

.header-navigation .main-menu ul > li .sub-menu,
.main-menu ul > li .sub-menu {
  z-index: 1000200 !important;
  position: absolute !important;
}

/* Ensure the li itself creates a stacking context above scroll wrapper */
.main-menu > ul > li {
  position: relative !important;
  z-index: 1000100 !important;
}

/* Desktop: restore opacity/visibility hover behaviour */
@media (min-width: 1200px) {
  .header-navigation .main-menu ul > li > .sub-menu {
    display: block !important;
    visibility: hidden !important;
    opacity: 0 !important;
    top: 120% !important;
    pointer-events: none !important;
    transition: opacity 0.2s ease, visibility 0.2s ease, top 0.2s ease !important;
  }
  .header-navigation .main-menu ul > li:hover > .sub-menu {
    visibility: visible !important;
    opacity: 1 !important;
    top: 100% !important;
    pointer-events: auto !important;
  }
  /* Remove JS-applied display:none that mobile slide behaviour sets */
  /* REMOVED: was blocking jQuery slideToggle on mobile sub-menus */
}

/* ------------------------------------------------------------------
   FIX 2: Get a Quote button — ensure it is always visible & functional
   Theme sets display based on d-none / d-md-block breakpoints
   ------------------------------------------------------------------ */
.nav-right-item .nav-button {
  display: flex !important;
  align-items: center !important;
}

@media (max-width: 767.98px) {
  .nav-right-item .nav-button {
    display: none !important; /* Hidden on mobile — CTA is in mobile drawer instead */
  }
  .theme-nav-button {
    display: block !important;
  }
}

/* ------------------------------------------------------------------
   FIX 3: About Us page — hide duplicate Elementor hero/stats banner
   The About Us Elementor page (ID 2458) has a first section [data-id="f072580"]
   that duplicates the page's own hero content built into the Elementor layout.
   Hide it cleanly. The page template is 'elementor_header_footer', so the
   .page-template-page-about rule did not match. Target by page ID instead.
   ------------------------------------------------------------------ */
.page-id-2458 .page-hero-area,
.page-id-2458 .page-hero {
  display: none !important;
}

/* Also clean up the breadcrumb plugin output on About page */
.page-id-2458 #breadcrumbs,
.page-id-2458 .breadcrumb-nav,
.page-id-2458 .bcn-wrapper {
  display: none !important;
}

/* ------------------------------------------------------------------
   FIX 4: USP / Practice Areas — 2×2 grid on tablet (was nowrap)
   The theme uses flex-wrap:nowrap !important on the .row inside
   #homepage-practice-areas. Override to wrap at ≤1199px so 4 items
   form a 2×2 grid on tablet.
   ------------------------------------------------------------------ */
@media (min-width: 768px) and (max-width: 1199.98px) {
  #homepage-practice-areas .features-wrapper .row,
  .pvc-practice-areas-section .features-wrapper .row {
    flex-wrap: wrap !important;
  }
  #homepage-practice-areas .features-wrapper .item-column,
  .pvc-practice-areas-section .features-wrapper .item-column {
    flex: 0 0 50% !important;
    max-width: 50% !important;
    width: 50% !important;
  }
}

/* Also fix the Theme CSS global rule that sets flex-wrap:nowrap */
#homepage-practice-areas .features-wrapper .row {
  flex-wrap: wrap !important;
}

/* ------------------------------------------------------------------
   FIX 5: Font readability — improve contrast on dark sections
   Several sections use light-on-dark with insufficient contrast.
   ------------------------------------------------------------------ */

/* About Us page hero — ensure white text is fully legible */
.page-id-2458 .elementor-element[data-id="f072580"] {
  display: none !important; /* Hide duplicate hero entirely */
}

/* About page Elementor section hero text contrast */
.page-id-2458 [data-id="77bbb89"] .elementor-heading-title,
.page-id-2458 .elementor-element-77bbb89 .elementor-heading-title {
  color: #FFFFFF !important;
  font-size: clamp(28px, 4vw, 48px) !important;
  line-height: 1.2 !important;
}

.page-id-2458 [data-id="ahl"] p,
.page-id-2458 .elementor-element-ahl p {
  color: rgba(255,255,255,0.88) !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
}

/* Stats numbers on dark bg — readable gold */
.page-id-2458 [data-id="hs1n"] .elementor-heading-title,
.page-id-2458 [data-id="hs2n"] .elementor-heading-title,
.page-id-2458 [data-id="hs3n"] .elementor-heading-title,
.page-id-2458 [data-id="hs4n"] .elementor-heading-title {
  color: #E09B3D !important;
  font-size: 28px !important;
}

.page-id-2458 [data-id="hs1l"] .elementor-heading-title,
.page-id-2458 [data-id="hs2l"] .elementor-heading-title,
.page-id-2458 [data-id="hs3l"] .elementor-heading-title,
.page-id-2458 [data-id="hs4l"] .elementor-heading-title {
  color: rgba(255,255,255,0.75) !important;
  font-size: 11px !important;
}

/* About story section — readable body text */
.page-id-2458 [data-id="astb"] p,
.page-id-2458 .elementor-element-astb p {
  color: #475569 !important;
  font-size: 15.5px !important;
  line-height: 1.75 !important;
}

/* About values section — ensure h3 readable on white bg */
[data-id="value-integrity-colt"] .elementor-heading-title,
[data-id="value-precision-colt"] .elementor-heading-title,
[data-id="value-speed-colt"] .elementor-heading-title,
[data-id="value-research-colt"] .elementor-heading-title,
[data-id="value-client-colt"] .elementor-heading-title {
  color: #163B4C !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  font-family: var(--pvc-font-sans);
}

[data-id="value-integrity-cold"] p,
[data-id="value-precision-cold"] p,
[data-id="value-speed-cold"] p,
[data-id="value-research-cold"] p,
[data-id="value-client-cold"] p {
  color: #475569 !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

/* About process steps — white text on dark navy bg (#0E2834) */
[data-id="ps1t"] .elementor-heading-title,
[data-id="ps2t"] .elementor-heading-title,
[data-id="ps3t"] .elementor-heading-title,
[data-id="ps4t"] .elementor-heading-title {
  color: #FFFFFF !important;
  font-size: 18px !important;
  font-weight: 700 !important;
}

[data-id="ps1d"] p,
[data-id="ps2d"] p,
[data-id="ps3d"] p,
[data-id="ps4d"] p {
  color: rgba(255, 255, 255, 0.75) !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

/* Inner page hero area — ensure h1 is always white & legible */
.page-hero-area .page-content h1,
.page-hero-area h1,
.page-hero-area .breadcrumb-text h1 {
  color: #FFFFFF !important;
  font-size: clamp(26px, 4vw, 40px) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  text-shadow: 0 2px 8px rgba(0,0,0,0.18) !important;
}

/* FAQ section body text contrast */
.bizzen-faq-sec .bizzen-faq-item .content p,
.bizzen-faq-sec p,
[data-id="e974857"] p {
  color: #334155 !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}

/* General body/paragraph contrast improvement across all pages */
.elementor-widget-text-editor p {
  color: #334155;
  font-size: 15px;
  line-height: 1.7;
}

/* Ensure all section headings are fully opaque and legible */
.elementor-heading-title {
  opacity: 1 !important;
}

/* Contact page form labels & helper text */
.elementor-field-label {
  color: #163B4C !important;
  font-weight: 600 !important;
  font-size: 13.5px !important;
}

/* Mobile: improve tap/read experience */
@media (max-width: 767.98px) {
  .elementor-widget-text-editor p {
    font-size: 15px !important;
    line-height: 1.75 !important;
  }
  .elementor-heading-title.elementor-size-xl,
  .elementor-heading-title.elementor-size-xxl {
    font-size: clamp(24px, 6vw, 40px) !important;
    line-height: 1.25 !important;
  }
}
/* =========================================================
   FIX: Elementor Form Select on dark background (template 3397)
   ========================================================= */
.bizzen-contact_one .elementor-field-type-select .elementor-select-wrapper select,
.bizzen-contact_one select.elementor-field-textual,
.elementor-3397 .elementor-field-type-select select,
.elementor-3397 select.elementor-field-textual {
  background-color: rgba(255, 255, 255, 0.1) !important;
  color: #FFFFFF !important;
  border: 1px solid rgba(244, 239, 227, 0.35) !important;
  border-radius: 8px !important;
  padding: 12px 40px 12px 16px !important;
  font-family: var(--pvc-font-sans);
  font-size: 14px !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  cursor: pointer !important;
  width: 100% !important;
}

.bizzen-contact_one .elementor-field-type-select .elementor-select-wrapper select option,
.elementor-3397 select.elementor-field-textual option {
  background-color: #163B4C !important;
  color: #FFFFFF !important;
}

.bizzen-contact_one .elementor-field-type-select .elementor-select-wrapper select:focus,
.elementor-3397 select.elementor-field-textual:focus {
  outline: none !important;
  border-color: rgba(224, 155, 61, 0.6) !important;
  box-shadow: 0 0 0 3px rgba(224, 155, 61, 0.15) !important;
}

/* Chevron arrow colour on dark bg */
.bizzen-contact_one .elementor-select-wrapper::after,
.elementor-3397 .elementor-select-wrapper::after {
  border-color: rgba(244, 239, 227, 0.7) !important;
}

/* ============================================================================
   PATCH: Doc-Edits Sept 2026
   ============================================================================ */

/* HOMEPAGE: practice area bottom padding */
#homepage-practice-areas .bizzen-features_one,
.pvc-practice-areas-section .bizzen-features_one {
  padding-bottom: 80px !important;
}

/* HOMEPAGE: popup close icon smaller */
.dialog-close-button,
.e-popup .dialog-close-button,
.elementor-popup-modal .dialog-close-button {
  width: 28px !important;
  height: 28px !important;
  font-size: 13px !important;
  border-radius: 50% !important;
  background: rgba(22,59,76,0.08) !important;
  top: 14px !important;
  right: 14px !important;
}

/* HOMEPAGE: mobile hero clears header */
@media (max-width: 767.98px) {
  .bizzen-hero_one { padding-top: 96px !important; }
}

/* HOMEPAGE: CTA button pops on white */
[data-id="home-cta-section"] .theme-btn.style-one,
.bizzen-cta-sec .theme-btn.style-one {
  background-color: #E09B3D !important;
  color: #FFFFFF !important;
  box-shadow: 0 6px 20px rgba(224,155,61,0.3) !important;
}
[data-id="home-cta-section"] .theme-btn.style-one:hover,
.bizzen-cta-sec .theme-btn.style-one:hover {
  background-color: #163B4C !important;
  color: #FFFFFF !important;
}

/* ABOUT: hover animations on value + process cards */
[data-id="value-integrity-col"],[data-id="value-precision-col"],
[data-id="value-speed-col"],[data-id="value-research-col"],[data-id="value-client-col"],
[data-id="ps1"],[data-id="ps2"],[data-id="ps3"],[data-id="ps4"] {
  transition: transform 0.25s cubic-bezier(0.16,1,0.3,1), box-shadow 0.25s ease !important;
}
[data-id="value-integrity-col"]:hover,[data-id="value-precision-col"]:hover,
[data-id="value-speed-col"]:hover,[data-id="value-research-col"]:hover,[data-id="value-client-col"]:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 12px 30px rgba(22,59,76,0.1) !important;
}
[data-id="ps1"]:hover,[data-id="ps2"]:hover,[data-id="ps3"]:hover,[data-id="ps4"]:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 10px 26px rgba(22,59,76,0.08) !important;
}

/* INDUSTRIES: 3 per row on desktop */
@media (min-width: 1025px) {
  .pvc-ind-card,.pvc-ind-card.e-con {
    flex: 0 1 calc(33.333% - 18px) !important;
    max-width: calc(33.333% - 18px) !important;
  }
}
.elementor-element-pvc_ind_intro.e-con {
  padding-top: 40px !important;
  padding-bottom: 16px !important;
}
.elementor-element-pvc_ind_grid_sec.e-con {
  padding-top: 12px !important;
  padding-bottom: 60px !important;
}

/* SERVICE SINGLE: hero 80vh */
.pvc-service-hero {
  min-height: 80vh !important;
  display: flex !important;
  align-items: center !important;
}
@media (max-width: 991.98px) {
  .pvc-service-hero { min-height: 55vh !important; padding-top: 100px !important; }
}
@media (max-width: 767.98px) {
  .pvc-service-hero { min-height: 50vh !important; padding-top: 90px !important; padding-bottom: 36px !important; }
  .pvc-hero-title { font-size: 22px !important; }
  .pvc-hero-lead { font-size: 13.5px !important; }
  .pvc-hero-trust-strip { display: none !important; }
  .pvc-hero-exec-card { display: none !important; }
}

/* SERVICE SINGLE: pills spacing + side padding */
.pvc-ef-tags { margin-top: 10px !important; }
.pvc-service-main-wrap > .container { padding-left: 24px !important; padding-right: 24px !important; }
@media (max-width: 767.98px) {
  .pvc-service-main-wrap > .container, .pvc-service-hero .container {
    padding-left: 16px !important; padding-right: 16px !important;
  }
}

/* SERVICE SINGLE: FAQ hover/active */
.pvc-faq-item { transition: border-color 0.2s ease, box-shadow 0.2s ease !important; }
.pvc-faq-item:hover { border-color: rgba(224,155,61,0.4) !important; }
.pvc-faq-item.active { border-color: #E09B3D !important; box-shadow: 0 4px 14px rgba(22,59,76,0.07) !important; }

/* BLOG: date visibility */
.elementor-element-pvc_date_badge .elementor-icon-list-text { color: #64748B !important; font-size: 12px !important; }

/* CONTACT: top space + card gaps */
.bizzen-contact-info-sec { padding-top: 24px !important; }
.bizzen-info-left-box.mb-40 { margin-bottom: 16px !important; }

/* NAV: active link highlight on all pages */
.main-menu ul > li.current-menu-item > a,
.main-menu ul > li.current-menu-ancestor > a {
  color: var(--pvc-color-accent, #E09B3D) !important;
}
.main-menu ul > li.current-menu-item > a::after,
.main-menu ul > li.current-menu-ancestor > a::after {
  transform: translateX(-50%) scaleX(1) !important;
  opacity: 1 !important;
}/* SERVICES hover */
[data-id="archive-services-row2"] [data-id$="-inner"] { transition: transform 0.25s ease, box-shadow 0.25s ease !important; }
[data-id="archive-services-row2"] [data-id$="-inner"]:hover { transform: translateY(-5px) !important; box-shadow: 0 14px 32px rgba(22,59,76,0.1) !important; }
[data-id="archive-services-row2"] .elementor-button-wrapper { text-align: left !important; }

/* INDUSTRIES CTA */
.pvc-ind-cta-card { background: linear-gradient(135deg, #163B4C 0%, #0E2834 100%) !important; border: 1.5px solid rgba(224,155,61,0.4) !important; }

/* SERVICE SINGLE font */
body.single-services h1, body.single-services h2, body.single-services h3 { font-family: var(--pvc-font-heading); }
body.single-services p, body.single-services li { font-family: var(--pvc-font-sans); }

/* CONTACT address link */
.bizzen-info-left-box .content p a { color: inherit !important; text-decoration: underline !important; text-underline-offset: 2px !important; }

/* Industries + Blog hero: force padding-top to clear fixed nav */
.elementor-3862 .elementor-element.elementor-element-pvc_ind_hero {
  padding-top: 110px !important;
}
.elementor-3999 .elementor-element.elementor-element-pvc_archive_hero {
  padding-top: 24px !important;
  padding-bottom: 22px !important;
}
/* Services page intro: force top padding */
.elementor-2525 .elementor-element.elementor-element-46d7e53 {
  padding-top: 110px !important;
}

/* Hero firm name: larger font size */
.bizzen-hero_one .hero-content .sub-title {
  font-size: 16px !important;
  letter-spacing: 0.04em !important;
}
@media (max-width: 767.98px) {
  .bizzen-hero_one .hero-content .sub-title {
    font-size: 14px !important;
  }
}

[data-id="vision-col"] .elementor-widget-text-editor p,
[data-id="vision-text"] p,
[data-id="mv-vision-col"] .elementor-widget-text-editor p,
[data-id="mv-vision-text"] p,
[data-id="mv-vision-text"] p * { color: #FFFFFF !important; }

/* ==========================================================================
   PERFORMANCE & HARDWARE SCROLL ENGINE — ZERO LAG, ZERO STICKING
   ========================================================================== */

/* 1. Hardware-accelerated native viewport scrolling */
html, body {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    height: auto !important;
    min-height: 100% !important;
    scroll-behavior: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

/* 2. Neutralize GSAP wrapper & content elements to standard static layout flow */
#smooth-wrapper,
#smooth-content {
    position: static !important;
    overflow: visible !important;
    height: auto !important;
    min-height: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    transform: none !important;
    -webkit-transform: none !important;
    filter: none !important;
    perspective: none !important;
    will-change: auto !important;
    z-index: auto !important;
}

/* 3. Native Viewport Sticky Sidebar */
@media (min-width: 992px) {
    .elementor-element-pvc_right_sidebar {
        position: -webkit-sticky !important;
        position: sticky !important;
        top: 100px !important;
        align-self: flex-start !important;
        height: fit-content !important;
        max-height: calc(100vh - 120px) !important;
        overflow-y: auto !important;
        z-index: 30 !important;
        scrollbar-width: thin;
    }
}

@media (max-width: 991.98px) {
    .elementor-element-pvc_right_sidebar {
        position: static !important;
        max-height: none !important;
        overflow: visible !important;
    }
}


/* ==========================================================================
   PVC-PRACTICE-ROW-GAP (2026-10-01)
   Homepage Practice Areas: vertical breathing room between card rows
   (top 4 / bottom 3). row-gap only, so card widths are unchanged.
   ========================================================================== */
#homepage-practice-areas .features-wrapper .row,
.pvc-practice-areas-section .features-wrapper .row {
  row-gap: 24px !important;
}
@media (max-width: 767.98px) {
  #homepage-practice-areas .features-wrapper .row,
  .pvc-practice-areas-section .features-wrapper .row {
    row-gap: 16px !important;
  }
}


/* ==========================================================================
   PVC-FOOTER-LIGHT (2026-10-01)
   Footer switched to a light theme (#F1F5F4 + gold top rule). These rules
   override the older dark-footer copyright/legal overrides above.
   ========================================================================== */
.elementor-location-footer .elementor-element-f00003c,
.elementor-location-footer .elementor-element-f00003c p,
.elementor-location-footer .elementor-element-f00003c .elementor-widget-container,
.elementor-element-f00003c {
  color: #475569 !important;
}
.elementor-location-footer .elementor-element-f000040 .elementor-icon-list-text,
.elementor-element-f000040 .elementor-icon-list-text {
  color: #475569 !important;
}
.elementor-location-footer .elementor-element-f000040 .elementor-icon-list-item:hover .elementor-icon-list-text,
.elementor-element-f000040 .elementor-icon-list-item:hover .elementor-icon-list-text {
  color: #9A5B12 !important;
}
.elementor-location-footer .pvc-footer-divider {
  color: rgba(22, 59, 76, 0.35) !important;
}
.elementor-location-footer .pvc-candid-credit,
.elementor-element-f00003c a {
  color: #9A5B12 !important;
}
.elementor-location-footer .pvc-candid-credit:hover,
.elementor-element-f00003c a:hover {
  color: #163B4C !important;
}


/* ==========================================================================
   PVC-HOME-HERO (2026-10-01)
   Homepage hero: big brand name + tagline (left), rotating text slider (right).
   Content is native Elementor (container "pvc-home-hero"); this only adds
   layout polish and the slide transitions. Rotation script: functions.php
   (pvc_home_hero_slider_script).
   ========================================================================== */
.pvc-home-hero {
  position: relative;
  overflow: hidden;
}
.pvc-home-hero::before {
  content: "";
  position: absolute;
  top: -20%;
  right: -10%;
  width: 640px;
  height: 640px;
  background: radial-gradient(circle, rgba(224, 155, 61, 0.14) 0%, transparent 65%);
  pointer-events: none;
  z-index: 0;
}
.pvc-home-hero > .e-con-inner {
  position: relative;
  z-index: 1;
}
.pvc-home-hero .elementor-heading-title {
  opacity: 1 !important;
  visibility: visible !important;
}

/* Slider card */
.pvc-hero-slider {
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.25);
}

/* Slides stack in one grid cell, so the card height is the tallest slide (no jump) */
.pvc-hero-slides {
  display: grid !important;
  grid-template-columns: 100%;
}
.pvc-hero-slides > .pvc-hero-slide {
  grid-area: 1 / 1;
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: opacity 0.6s ease, transform 0.6s ease, visibility 0s linear 0.6s;
}
.pvc-hero-slides > .pvc-hero-slide.is-active {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition: opacity 0.6s ease, transform 0.6s ease, visibility 0s linear 0s;
}
/* Before the script runs, show the first slide only */
.pvc-hero-slides:not(.is-ready) > .pvc-hero-slide:first-child {
  opacity: 1;
  visibility: visible;
  transform: none;
}
.pvc-hero-slide .elementor-heading-title a {
  color: inherit !important;
  text-decoration: none !important;
  transition: color 0.2s ease;
}
.pvc-hero-slide .elementor-heading-title a:hover {
  color: #E09B3D !important;
}

/* Controls (dots + progress) injected by the script */
.pvc-hero-controls {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 28px;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
}
.pvc-hero-dots {
  display: flex;
  gap: 4px;
}
.pvc-hero-dot {
  width: 24px;
  height: 24px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.pvc-hero-dot::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.35);
  transition: all 0.25s ease;
}
.pvc-hero-dot.is-active::before {
  width: 22px;
  border-radius: 4px;
  background: #E09B3D;
}
.pvc-hero-dot:focus-visible {
  outline: 2px solid #E09B3D;
  outline-offset: 2px;
  border-radius: 4px;
}
.pvc-hero-counter {
  margin-left: auto;
  font-family: var(--pvc-font-sans);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.7);
}
.pvc-hero-progress {
  height: 2px;
  margin-top: 14px;
  background: rgba(255, 255, 255, 0.12);
  border-radius: 2px;
  overflow: hidden;
}
.pvc-hero-progress span {
  display: block;
  height: 100%;
  width: 0;
  background: #E09B3D;
}
.pvc-hero-progress span.is-running {
  width: 100%;
  transition: width linear;
}

/* Mobile: slider card stacks under the text, full width */
@media (max-width: 767.98px) {
  .pvc-home-hero::before {
    width: 360px;
    height: 360px;
    top: -10%;
    right: -40%;
  }
  .pvc-hero-controls {
    margin-top: 22px;
    padding-top: 18px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .pvc-hero-slides > .pvc-hero-slide,
  .pvc-hero-slides > .pvc-hero-slide.is-active {
    transition: none;
    transform: none;
  }
}
/* PVC-HOME-HERO-FIX1: global theme rules override hero paragraph color and label fonts */
.pvc-home-hero .elementor-widget-text-editor,
.pvc-home-hero .elementor-widget-text-editor p {
  color: rgba(255, 255, 255, 0.86) !important;
}
.pvc-home-hero .elementor-element-pvc-hero-lead p {
  font-size: inherit !important;
  line-height: inherit !important;
  margin: 0 !important;
}
.pvc-hero-slide .elementor-widget-text-editor p {
  color: rgba(255, 255, 255, 0.82) !important;
  margin: 0 !important;
}
.pvc-home-hero .elementor-element-pvc-hero-eyebrow .elementor-heading-title,
.pvc-hero-slide [class*="-label"] .elementor-heading-title {
  font-family: var(--pvc-font-sans);
  font-style: normal !important;
}
/* PVC-HOME-HERO-FIX2: keep the brand name large on mobile, full-width CTAs */
@media (max-width: 767.98px) {
  .pvc-home-hero .elementor-element-pvc-hero-brand .elementor-heading-title {
    font-size: 42px !important;
    line-height: 1.08 !important;
  }
  .pvc-home-hero .pvc-hero-actions > .elementor-widget-button,
  .pvc-home-hero .pvc-hero-actions .elementor-button {
    width: 100% !important;
  }
  .pvc-home-hero .pvc-hero-actions .elementor-button {
    justify-content: center !important;
    min-height: 48px;
  }
}

/* PVC-FOOTER-CREDIT-RIGHT: copyright left, Developed by right */
.elementor-location-footer .elementor-element-pvc-footer-credit,
.elementor-location-footer .elementor-element-pvc-footer-credit p {
  color: #475569 !important;
  font-family: var(--pvc-font-sans);
  font-size: 13.5px !important;
  margin: 0 !important;
  text-align: right;
}
.elementor-location-footer .elementor-element-pvc-footer-credit a {
  color: #9A5B12 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
.elementor-location-footer .elementor-element-pvc-footer-credit a:hover {
  color: #163B4C !important;
  text-decoration: underline !important;
}
@media (max-width: 1024px) {
  .elementor-location-footer .elementor-element-pvc-footer-credit,
  .elementor-location-footer .elementor-element-pvc-footer-credit p,
  .elementor-location-footer .elementor-element-f00003c,
  .elementor-location-footer .elementor-element-f00003c p {
    text-align: center !important;
  }
}


/* PVC-FOOTER-READABLE: contact details were inheriting the serif heading font */
.elementor-location-footer .elementor-element-f00003a .elementor-heading-title,
.elementor-location-footer .elementor-element-f000003 .elementor-heading-title {
  font-family: var(--pvc-font-sans);
  font-style: normal !important;
}
.elementor-location-footer .elementor-element-f000026 .elementor-heading-title,
.elementor-location-footer .elementor-element-f00002b .elementor-heading-title,
.elementor-location-footer .elementor-element-f000030 .elementor-heading-title,
.elementor-location-footer .elementor-element-f000035 .elementor-heading-title {
  color: #475569 !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  margin-bottom: 3px !important;
}
.elementor-location-footer .elementor-element-f000027 .elementor-heading-title,
.elementor-location-footer .elementor-element-f00002c .elementor-heading-title,
.elementor-location-footer .elementor-element-f000031 .elementor-heading-title,
.elementor-location-footer .elementor-element-f000036 .elementor-heading-title {
  color: #163B4C !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.6 !important;
}
.elementor-location-footer .elementor-element-f000027 .elementor-heading-title a:hover,
.elementor-location-footer .elementor-element-f00002c .elementor-heading-title a:hover,
.elementor-location-footer .elementor-element-f000031 .elementor-heading-title a:hover {
  color: #9A5B12 !important;
}
.elementor-location-footer .elementor-element-f000037 .elementor-heading-title {
  color: #475569 !important;
  font-size: 13.5px !important;
}
/* PVC-FOOTER-READABLE-HEADING: keep the Contact & Office column title in the brand serif, like the other column titles */
.elementor-location-footer .elementor-element-f00003a .elementor-element-f000022 .elementor-heading-title {
  font-family: var(--pvc-font-heading);
}


/* ==========================================================================
   PVC-MOBILE-NAV-DROPDOWN (2026-10-01)
   An older rule forces every ".main-menu ul" to display:block !important,
   which also caught the Services sub-menu, so it could never be collapsed.
   Mobile/tablet sub-menus are now driven by an open class on the parent <li>
   (toggled by pvc_mobile_nav_dropdown_script in functions.php).
   ========================================================================== */
@media (max-width: 1199.98px) {
  .header-navigation .theme-nav-menu .main-menu ul li > .sub-menu {
    display: none !important;
  }
  .header-navigation .theme-nav-menu .main-menu ul li.pvc-sub-open > .sub-menu {
    display: block !important;
    animation: pvcSubMenuIn 0.22s ease-out;
  }
  .header-navigation .theme-nav-menu .main-menu ul li .dd-trigger {
    transition: transform 0.2s ease, background-color 0.2s ease !important;
  }
  .header-navigation .theme-nav-menu .main-menu ul li.pvc-sub-open > a .dd-trigger {
    transform: rotate(180deg) !important;
    background: rgba(224, 155, 61, 0.15) !important;
    color: #E09B3D !important;
  }
  .header-navigation .theme-nav-menu .main-menu ul li:not(.pvc-sub-open) > a .dd-trigger {
    transform: none !important;
  }
  .header-navigation .theme-nav-menu .main-menu ul li .dd-trigger:focus-visible {
    outline: 2px solid #E09B3D;
    outline-offset: 2px;
  }
}
@keyframes pvcSubMenuIn {
  from { opacity: 0; transform: translateY(-6px); }
  to   { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .header-navigation .theme-nav-menu .main-menu ul li.pvc-sub-open > .sub-menu { animation: none; }
}
/* Mobile hero: keep the brand name on one line on narrow phones */
@media (max-width: 420px) {
  .pvc-home-hero .elementor-element-pvc-hero-brand .elementor-heading-title {
    font-size: 36px !important;
  }
}

/* ==========================================================================
   Homepage Tagline Sequential Word Reveal Animation
   "Driven by Research. Committed to Impact."
   ========================================================================== */
.pvc-hero-tagline .elementor-heading-title {
  letter-spacing: -0.01em;
  min-height: 1.3em;
}

.pvc-tagline-word {
  display: inline-block;
  opacity: 0;
  transform: translateY(8px);
  filter: blur(3px);
  animation: pvcTaglineWordFadeIn 1.0s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
  will-change: opacity, transform, filter;
}

.pvc-tagline-word.pvc-word-1 { animation-delay: 0.35s; }
.pvc-tagline-word.pvc-word-2 { animation-delay: 0.85s; }
.pvc-tagline-word.pvc-word-3 { animation-delay: 1.35s; }
.pvc-tagline-word.pvc-word-4 { animation-delay: 2.05s; }
.pvc-tagline-word.pvc-word-5 { animation-delay: 2.55s; }
.pvc-tagline-word.pvc-word-6 { animation-delay: 3.05s; }

@keyframes pvcTaglineWordFadeIn {
  0% {
    opacity: 0;
    transform: translateY(10px);
    filter: blur(4px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .pvc-tagline-word {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
}


/* ==========================================================================
   PVC Vision & Mission Executive Cards (Tri-Tone Focus & Distinction)
   ========================================================================== */
html body .elementor-element-mv-vision-card-new,
html body .e-con .elementor-element-mv-vision-card-new,
.elementor-element-mv-vision-card-new,
.pvc-vision-card-gold {
  background: linear-gradient(135deg, #B46A14 0%, #D97706 38%, #E09B3D 75%, #F59E0B 100%) !important;
  background-image: linear-gradient(135deg, #B46A14 0%, #D97706 38%, #E09B3D 75%, #F59E0B 100%) !important;
  background-color: #D97706 !important;
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
  border-radius: 20px !important;
  box-shadow: 0 16px 36px rgba(217, 119, 6, 0.28) !important;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease !important;
  position: relative !important;
  overflow: hidden !important;
}
html body .elementor-element-mv-vision-card-new:hover,
.pvc-vision-card-gold:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 22px 44px rgba(217, 119, 6, 0.35) !important;
}
.elementor-element-mv-vision-card-new .elementor-heading-title,
.elementor-element-mv-vision-card-new .elementor-widget-heading .elementor-heading-title {
  font-family: var(--pvc-font-sans);
  font-weight: 800 !important;
  letter-spacing: -0.025em !important;
  color: #FFFFFF !important;
}
.elementor-element-mv-vision-card-new .elementor-widget-text-editor,
.elementor-element-mv-vision-card-new .elementor-widget-text-editor p {
  color: rgba(255, 255, 255, 0.95) !important;
}

html body .elementor-element-mv-mission-card-new,
html body .e-con .elementor-element-mv-mission-card-new,
.elementor-element-mv-mission-card-new,
.pvc-mission-card-pearl {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  border: 2px solid #E2E8F0 !important;
  border-left: 5px solid #D97706 !important;
  border-radius: 20px !important;
  box-shadow: 0 12px 28px rgba(22, 59, 76, 0.07) !important;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease !important;
  position: relative !important;
  overflow: hidden !important;
}
html body .elementor-element-mv-mission-card-new:hover,
.pvc-mission-card-pearl:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 18px 36px rgba(22, 59, 76, 0.12) !important;
}
.elementor-element-mv-mission-card-new .elementor-heading-title,
.elementor-element-mv-mission-card-new .elementor-widget-heading .elementor-heading-title {
  font-family: var(--pvc-font-sans);
  font-weight: 800 !important;
  letter-spacing: -0.025em !important;
  color: #163B4C !important;
}
.elementor-element-mv-mission-card-new .elementor-widget-text-editor,
.elementor-element-mv-mission-card-new .elementor-widget-text-editor p {
  color: #475569 !important;
}


/* Global text font normalization for plugin UI, forms, and popups */
body, button, input, select, textarea, .joinchat, .elementor-popup-modal, .pvc-disclaimer-popup, .nav-links, .dropdown-items, .main-menu a, .header-navigation a {
  font-family: 'Montserrat', sans-serif;
}
