body{	
	padding:0;
	margin: 0;
	overflow-x: hidden;
}
p{
	padding: 0; margin: 0;
}
img{
	height: 0 auto;
}
a {
	text-decoration: none !important;
}
.t-c{
	text-align: center !important;
}
.t-l{
	text-align: left !important;
}
.t-r{
	text-align: right !important;
}
html {
    scroll-behavior: smooth;
}
.no-padding{
	padding: 0;
}
.no-padding-x{
	padding: 4px;
}
.center_contanier{
	width: 1200px; margin:0 auto;
}
.smallcenter_contanier{
	width: 1000px; margin:0 auto;
}
.smallcenter_contanier_md{
	width: 1050px; margin:0 auto;
}
.small_net_center_contanier {
    width: 900px;
    margin: 0 auto;
}
.center_big_contanier{
	max-width: 1400px; margin:0 auto;
}
.center_smallbig_contanier{
	width: 400px; margin:0 auto;
}
.container-fluid {
	width: 1280px;
}
.mar_1{
	margin-top: 5px;
}
.mar_2{
	margin-top: 14px;
}
.mar_3{
	margin-top: 15px;
}
.mar_4{
	margin-top: 20px;
}
.mar_5{
	margin-top: 25px;
}
.mar_6{
	margin-top: 30px;
}
.mar_7{
	margin-top: 35px;
}
.mar_8{
	margin-top: 40px;
}
.mar_9{
	margin-top: 45px;
}
.mar_10{
	margin-top: 50px;
}
.mar_11{
	margin-top: 55px;
}
.mar_12{
	margin-top: 60px;
}
.mar_13{
	margin-top: 65px;
}
.mar_14{
	margin-top: 70px;
}
.mar_15{
	margin-top: 75px;
}
.mar_16{
	margin-top: 80px;
}
.mar_17{
	margin-top: 85px;
}
.mar_18{
	margin-top: 90px;
}
.mar_19{
	margin-top: 95px;
}
.mar_20{
	margin-top: 100px;
}
.dddddead_buttontwo {
    display:none;
}

/* =========================================
   SERVICE AREA DETAILS - PREMIUM DESIGN
========================================= */

.service-area-details {
  --sad-primary: #193748;
  --sad-accent: #b78352;
  --sad-text: #273744;
  --sad-muted: #687886;
  --sad-border: #e5e9ed;
  --sad-bg: #f8f9fb;
  width: 100%;
  padding: 85px 20px 110px;
  background: var(--sad-bg);
  font-family: "DM Sans", sans-serif;
  color: var(--sad-text);
  display: inline-block;
  width: 100%;
}

.service-area-details *,
.service-area-details *::before,
.service-area-details *::after {
  box-sizing: border-box;
}

.sad-container {
  max-width: 1240px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 370px;
  gap: 42px;
  align-items: start;
}

.sad-main {
  min-width: 0;
}

/* HEADER */

.sad-heading {
  margin-bottom: 32px;
}

.sad-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #074180;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 2px;
  margin-bottom: 16px;
  font-family: "Outfit", sans-serif;
}

.sad-dot {
  width: 8px;
  height: 8px;
  background: linear-gradient(135deg, #0754a6, #083568);
  border-radius: 50%;
}

.sad-heading h1 {
  font-family: "Manrope", sans-serif;
  font-size: clamp(32px, 3.3vw, 47px);
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: -1.6px;
  color: var(--sad-primary);
  margin: 0 0 20px;
  font-family: "Outfit", sans-serif;
}

.sad-heading h1 span {
  color: #07407f;
}

.sad-heading p {
  color: var(--sad-muted);
  font-size: 15px;
  line-height: 1.9;
  margin: 0;
  font-family: "Outfit", sans-serif;
}

/* MAP CARD */

.sad-map-card {
  background: #fff;
  border: 1px solid var(--sad-border);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 12px 35px rgba(23, 48, 65, .04);
}

.sad-map-header {
  padding: 25px 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}

.sad-map-label {
  display: block;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.6px;
  color: #08417f;
  margin-bottom: 8px;
}

.sad-map-header h2 {
  margin: 0;
  font-family: "Manrope", sans-serif;
  font-size: 20px;
  font-weight: 800;
  color: var(--sad-primary);
}

.sad-map-link {
  text-decoration: none;
  color: #083a71;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}

.sad-map-link:hover {
  color: var(--sad-primary);
}

.sad-map {
  width: 100%;
  height: 365px;
  background: #edf0f2;
}

.sad-map iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}

.sad-map-footer {
  padding: 20px 28px;
  display: flex;
  align-items: center;
  gap: 14px;
}

.sad-location-icon {
  width: 43px;
  height: 43px;
  flex-shrink: 0;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #0754a6, #083568);
  color: #ffffff;
  font-size: 26px;
}

.sad-map-footer strong {
  display: block;
  font-size: 13px;
  color: var(--sad-primary);
  margin-bottom: 5px;
}

.sad-map-footer small {
  font-size: 12px;
  color: var(--sad-muted);
}

/* CONTENT */

.sad-content {
  padding-top: 48px;
}

.sad-section-heading span {
  display: block;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.6px;
  color: #08386e;
  margin-bottom: 12px;
}

.sad-section-heading h2,
.sad-nearby h2 {
  font-family: "Manrope", sans-serif;
  font-size: clamp(23px, 2.4vw, 30px);
  line-height: 1.4;
  font-weight: 800;
  color: var(--sad-primary);
  letter-spacing: -.6px;
  margin: 0 0 18px;
  font-family: "Outfit", sans-serif;
}

.sad-content > p {
  font-size: 15px;
  line-height: 1.95;
  color: var(--sad-muted);
  margin: 0 0 18px;
  font-family: "Outfit", sans-serif;
}

/* BENEFIT CARDS */

.sad-benefits {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
  margin: 35px 0 45px;
}

.sad-benefit {
  display: flex;
  gap: 13px;
  align-items: flex-start;
  background: #fff;
  border: 1px solid var(--sad-border);
  padding: 20px;
  border-radius: 13px;
  transition: .3s ease;
}

.sad-benefit:hover {
  transform: translateY(-3px);
  border-color: #d6b89c;
  box-shadow: 0 12px 30px rgba(0,0,0,.04);
}

.sad-benefit-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 29px;
  height: 29px;
  background: linear-gradient(135deg, #0754a6, #083568);
  color: #ffffff;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 800;
}

.sad-benefit h3 {
  margin: 0 0 6px;
  font-size: 14px;
  font-weight: 800;
  color: var(--sad-primary);
}

.sad-benefit p {
  font-size: 12px;
  line-height: 1.7;
  color: var(--sad-muted);
  margin: 0;
}

/* NEARBY LINKS */

.sad-nearby {
  border-top: 1px solid var(--sad-border);
  padding-top: 35px;
}

.sad-nearby h2 {
  font-size: 23px;
  margin-bottom: 8px;
}

.sad-nearby > p {
  font-size: 14px;
  line-height: 1.8;
  color: var(--sad-muted);
  margin-bottom: 22px;
}

.sad-area-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.sad-area-links a {
  display: inline-flex;
  align-items: center;
  padding: 11px 16px;
  border: 1px solid var(--sad-border);
  background: #fff;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 700;
  color: var(--sad-primary);
  text-decoration: none;
  transition: .25s ease;
}

.sad-area-links a:hover {
  background: var(--sad-primary);
  border-color: var(--sad-primary);
  color: #fff;
}

/* STICKY SIDEBAR */

.sad-sidebar {
  position: sticky;
  top: 25px;
  align-self: start;
  min-width: 0;
}

.sad-form-card {
  background: #fff;
  border-radius: 18px;
  padding: 10px;
  border: 1px solid var(--sad-border);
  box-shadow: 0 18px 50px rgba(20, 44, 61, .07);
}

.sad-form-header {
  background: linear-gradient(135deg, #0754a6, #083568);
  border-radius: 12px;
  padding: 28px 24px;
  position: relative;
  overflow: hidden;
}

.sad-form-header::after {
  content: "";
  position: absolute;
  width: 150px;
  height: 150px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 50%;
  right: -60px;
  top: -70px;
  pointer-events: none;
}

.sad-form-eyebrow {
  color: #ffffff;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.6px;
}

.sad-form-header h2 {
  font-family: "Manrope", sans-serif;
  color: #fff;
  font-size: 24px;
  line-height: 1.3;
  font-weight: 800;
  margin: 10px 0;
}

.sad-form-header p {
  color: #cbd8df;
  font-size: 12px;
  line-height: 1.7;
  margin: 0;
}

/* FORM */

.sad-form {
  padding: 23px 17px 13px;
}

.sad-field {
  margin-bottom: 17px;
}

.sad-field label {
  display: block;
  font-size: 12px;
  font-weight: 700;
  color: var(--sad-primary);
  margin-bottom: 8px;
}

.sad-field input,
.sad-field select,
.sad-field textarea {
  width: 100%;
  max-width: 100%;
  padding: 13px 14px;
  border: 1px solid #dfe5ea;
  background: #fbfcfd;
  border-radius: 8px;
  font-family: "DM Sans", sans-serif;
  font-size: 13px;
  color: var(--sad-text);
  outline: none;
  transition: .25s ease;
}

.sad-field input,
.sad-field select {
  height: 46px;
}

.sad-field textarea {
  resize: vertical;
  min-height: 95px;
}

.sad-field input:focus,
.sad-field select:focus,
.sad-field textarea:focus {
  border-color: var(--sad-accent);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(183,131,82,.1);
}

.sad-field input::placeholder,
.sad-field textarea::placeholder {
  color: #9ca8b3;
}

.sad-submit {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  padding: 15px 18px;
  border: none;
  border-radius: 9px;
  background: linear-gradient(135deg, #0754a6, #083568);
  color: #fff;
  font-family: "DM Sans", sans-serif;
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
  transition: .25s ease;
}

.sad-submit:hover {
  background: var(--sad-primary);
  transform: translateY(-2px);
}

.sad-submit span {
  font-size: 19px;
}

.sad-privacy {
  text-align: center;
  font-size: 11px;
  line-height: 1.6;
  color: var(--sad-muted);
  margin: 15px 0 0;
}

/* BOTTOM SIDEBAR NOTE */

.sad-sidebar-note {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 19px;
  margin-top: 15px;
  background: #f0e9e1;
  border-radius: 12px;
}

.sad-sidebar-note > span {
  font-size: 22px;
  color: var(--sad-accent);
}

.sad-sidebar-note strong {
  font-size: 13px;
  color: var(--sad-primary);
}

.sad-sidebar-note p {
  font-size: 12px;
  line-height: 1.7;
  color: var(--sad-muted);
  margin: 6px 0 0;
}

/* RESPONSIVE */

@media (max-width: 1100px) {
  .sad-container {
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 25px;
  }
}

@media (max-width: 900px) {
  .service-area-details {
    padding: 55px 20px;
  }

  .sad-container {
    grid-template-columns: minmax(0, 1fr);
    gap: 35px;
  }

  .sad-sidebar {
    position: static;
  }

  .sad-form-card {
    max-width: 100%;
  }
}

@media (max-width: 600px) {
  .service-area-details {
    padding: 40px 15px 60px;
  }

  .sad-heading h1 {
    font-size: 31px;
    letter-spacing: -.8px;
  }

  .sad-heading p {
    font-size: 14px;
  }

  .sad-map-header {
    padding: 20px;
    flex-direction: column;
    align-items: flex-start;
  }

  .sad-map {
    height: 270px;
  }

  .sad-map-footer {
    padding: 17px;
  }

  .sad-content {
    padding-top: 35px;
  }

  .sad-benefits {
    grid-template-columns: 1fr;
  }

  .sad-form-header {
    padding: 25px 20px;
  }

  .sad-form {
    padding: 20px 12px 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .service-area-details *,
  .service-area-details *::before,
  .service-area-details *::after {
    transition: none !important;
  }
}



/* ====================================
   CLASSIC SERVICE AREA SECTION
==================================== */

.classic-service-areas {
  --csa-navy: #172c3d;
  --csa-gold: #b49160;
  --csa-bg: #f8f7f4;
  --csa-text: #53616c;
  --csa-border: #e8e5df;
  padding: 100px 20px;
  background: var(--csa-bg);
  font-family: 'DM Sans', sans-serif;
  display: inline-block;
  width: 100%;
}

.classic-service-areas *,
.classic-service-areas *::before,
.classic-service-areas *::after {
  box-sizing: border-box;
}

.csa-container {
  max-width: 1240px;
  margin: 0 auto;
}

/* SECTION HEADING */

.csa-heading {
  max-width: 780px;
  margin: 0 auto 55px;
  text-align: center;
}

.classic-service-areas a.csa-location,
.classic-service-areas a.csa-location:visited {
    text-decoration: none;
    color: var(--csa-navy);
}

.classic-service-areas a.csa-location:hover {
    text-decoration: none;
    color: var(--csa-navy);
}

.classic-service-areas a.csa-location:focus-visible {
    outline: 2px solid var(--csa-gold);
    outline-offset: 3px;
}

.classic-service-areas a.csa-location {
    cursor: pointer;
}

.csa-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 15px;
  color: #103c77;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2.5px;
  margin-bottom: 22px;
  font-family: "Outfit", sans-serif;
}

.csa-line {
  display: inline-block;
  width: 30px;
  height: 1px;
  background: #061d3b;
}

.csa-heading h2 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(32px, 4vw, 52px);
  font-weight: 600;
  line-height: 1.22;
  letter-spacing: -1px;
  color: var(--csa-navy);
  margin: 0 0 22px;
  font-family: "Outfit", sans-serif;
}

.csa-heading h2 em {
  color: #002dc9;
  font-weight: 500;
  font-family: "Outfit", sans-serif;
}

.csa-heading p {
  font-size: 18px;
  line-height: 1.9;
  color: var(--csa-text);
  max-width: 610px;
  margin: 0 auto;
  font-family: "Outfit", sans-serif;
}

/* LOCATION GRID */

.csa-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 15px;
}

.csa-location {
  position: relative;
  display: flex;
  align-items: center;
  gap: 13px;
  min-height: 76px;
  padding: 19px 20px;
  background: #fff;
  border: 1px solid var(--csa-border);
  border-radius: 6px;
  color: #061e40;
  font-size: 14px;
  font-weight: 600;
  cursor: default;
  overflow: hidden;
  transition:
    background .3s ease,
    border-color .3s ease,
    box-shadow .3s ease,
    transform .3s ease;
  font-family: "Outfit", sans-serif;
}

.csa-location::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 3px;
  background: linear-gradient(135deg, #0754a6, #083568);
  transform: scaleY(0);
  transform-origin: bottom;
  transition: transform .3s ease;
}

.csa-pin {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #7bb5f4;
  color: #ffffff;
  font-size: 23px;
  font-weight: 400;
  transition: .3s ease;
}

.csa-arrow {
  margin-left: auto;
  color: #b6bec3;
  font-size: 17px;
  transition: .3s ease;
}

.csa-location:hover {
  transform: translateY(-4px);
  border-color: #d9c6a9;
  box-shadow: 0 14px 32px rgba(23,44,61,.08);
}

.csa-location:hover::before {
  transform: scaleY(1);
}

.csa-location:hover .csa-pin {
  background: linear-gradient(135deg, #0754a6, #083568);
  color: #fff;
}

.csa-location:hover .csa-arrow {
  color: var(--csa-gold);
  transform: translate(2px, -2px);
}

/* BOTTOM CTA */

.csa-cta {
  margin-top: 50px;
  padding: 45px 55px;
  background: linear-gradient(135deg, #0754a6, #083568);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  position: relative;
  overflow: hidden;
}

.csa-cta::after {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 50%;
  right: 120px;
  top: -110px;
  pointer-events: none;
}

.csa-cta-content {
  position: relative;
  z-index: 1;
}

.csa-cta-content > span {
  color: #ffffff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
}

.csa-cta h3 {
  color: #fff;
  font-family: 'Playfair Display', serif;
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 500;
  margin: 12px 0;
}

.csa-cta p {
  color: #ffffff;
  font-size: 14px;
  line-height: 1.8;
  max-width: 470px;
  margin: 0;
}

.csa-button {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  padding: 17px 25px;
  background: linear-gradient(135deg, #0754a6, #083568);
  color: #ffffff;
  text-decoration: none;
  border-radius: 4px;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
  transition: .3s ease;
}

.csa-button span {
  font-size: 19px;
}

.csa-button:hover {
  background: #fff;
  color: var(--csa-navy);
  transform: translateY(-2px);
}

/* RESPONSIVE */

@media (max-width: 1100px) {
  .csa-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .classic-service-areas {
    padding: 65px 15px;
  }

  .csa-heading {
    margin-bottom: 35px;
  }

  .csa-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .csa-location {
    padding: 14px 12px;
    min-height: 65px;
    font-size: 12px;
    gap: 8px;
  }

  .csa-pin {
    width: 28px;
    height: 28px;
    font-size: 19px;
  }

  .csa-arrow {
    font-size: 14px;
  }

  .csa-cta {
    padding: 32px 25px;
    flex-direction: column;
    align-items: flex-start;
    margin-top: 35px;
  }
}

@media (max-width: 380px) {
  .csa-grid {
    grid-template-columns: 1fr;
  }

  .csa-button {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .csa-location,
  .csa-location::before,
  .csa-pin,
  .csa-arrow,
  .csa-button {
    transition: none;
  }
}

/*----------------------------*/
.blink-soft {
  animation: blinker 1.5s linear infinite;
}
@keyframes blinker {
  50% {
    opacity: 0;
  }
}

/* ======================================
   MODERN PREMIUM HEADER
====================================== */

.topbaner_panel_2 {
    width: 100%;
    background: #ffffff;
    padding: 2px 0;
    position: relative;
    z-index: 999;
    box-shadow: 0 4px 25px rgba(15, 23, 42, 0.06);
    border-bottom: 1px solid #f1f1f1;
    font-family: "Outfit", sans-serif;
}

/* ==========================================
   PREMIUM APP STYLE MOBILE SIDEBAR
========================================== */

/* Prevent background scrolling */

body.wa-menu-active {
    overflow: hidden;
}

/* Dark overlay */

.wa-sidebar-overlay {
    position: fixed;
    inset: 0;
    background: rgba(5, 12, 28, 0.65);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.35s ease,
                visibility 0.35s ease;
    z-index: 9998;
}

.wa-sidebar-overlay.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

/* Sidebar close button */

.topbaner_panel_2 .wa-sidebar-close {
    display: none;
}

/* ==========================================
   MOBILE AND TABLET
========================================== */

@media (max-width: 1199px) {

    .topbaner_panel_2 {
        position: relative;
        z-index: 9999;
    }

    /* Hamburger */

    .topbaner_panel_2 .mobile_menu_toggle {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 46px;
        height: 46px;
        border: 1px solid #e8e8e8;
        border-radius: 12px;
        background: #0b132b;
        color: #ffffff;
        font-size: 19px;
        cursor: pointer;
        transition: all 0.3s ease;
    }

    .topbaner_panel_2 .mobile_menu_toggle:hover {
        background: #c5a044;
        border-color: #c5a044;
    }

    /* ======================================
       SIDEBAR PANEL
    ====================================== */

    .topbaner_panel_2 .right_panel_design_1 {
        display: flex !important;
        flex-direction: column;
        justify-content: flex-start;
        align-items: stretch;

        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;

        width: min(370px, 88vw);
        height: 100dvh;
        margin: 0;
        padding: 90px 24px 30px;

        background: #ffffff;
        border: none;
        border-radius: 0;

        box-shadow: -15px 0 50px rgba(0,0,0,0.12);

        z-index: 10000;

        overflow-y: auto;
        overscroll-behavior: contain;

        transform: translate3d(105%, 0, 0);
        visibility: hidden;
        pointer-events: none;

        transition:
            transform 0.4s cubic-bezier(0.22, 1, 0.36, 1),
            visibility 0.4s ease;

        will-change: transform;
    }

    /* Open sidebar */

    .topbaner_panel_2 .right_panel_design_1.menu-open {
        transform: translate3d(0, 0, 0);
        visibility: visible;
        pointer-events: auto;
    }

    /* ======================================
       CLOSE BUTTON
    ====================================== */

    .topbaner_panel_2 .wa-sidebar-close {
        position: absolute;
        top: 22px;
        right: 22px;

        width: 42px;
        height: 42px;

        display: flex;
        align-items: center;
        justify-content: center;

        background: #f2f4f7;
        color: #0b132b;
        border: none;
        border-radius: 50%;

        font-size: 19px;
        cursor: pointer;

        transition: all 0.3s ease;
    }

    .topbaner_panel_2 .wa-sidebar-close:hover {
        background: #0b132b;
        color: #ffffff;
        transform: rotate(90deg);
    }

    /* ======================================
       NAVIGATION
    ====================================== */

    .topbaner_panel_2 .menu_deign {
        display: block;
        width: 100%;
        margin: 0;
    }

    .topbaner_panel_2 .menu_deign > ul {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 5px;
        width: 100%;
        padding: 0;
        margin: 0;
    }

    .topbaner_panel_2 .menu_deign > ul > li {
        display: block;
        width: 100%;
        float: none;
    }

    .topbaner_panel_2 .menu_deign > ul > li > a {
        display: flex;
        align-items: center;
        justify-content: space-between;

        width: 100%;
        padding: 16px 17px;

        background: transparent;
        color: #253047;

        border-radius: 10px;
        border-bottom: none;

        font-size: 16px;
        font-weight: 500;
        text-decoration: none;

        transition: all 0.3s ease;
    }

    .topbaner_panel_2 .menu_deign > ul > li > a::after {
        display: none;
    }

    /* Active and hover */

    .topbaner_panel_2 .menu_deign > ul > li.active > a,
    .topbaner_panel_2 .menu_deign > ul > li > a:hover {
        background: #faf4e6;
        color: #b59035;
    }

    /* ======================================
       MOBILE SUBMENU
    ====================================== */

    .topbaner_panel_2 .menu_deign .dropdown-menu {
        position: static;
        float: none;
        display: none;

        width: 100%;
        min-width: 0;

        margin: 4px 0 8px;
        padding: 6px 0 6px 12px;

        background: #f8f9fb;
        border: none;
        border-left: 2px solid #c5a044;
        border-radius: 0 10px 10px 0;

        box-shadow: none;

        opacity: 1;
        visibility: visible;
        transform: none;
    }

    .topbaner_panel_2 .dropdown:hover > .dropdown-menu,
    .topbaner_panel_2 .dropdown:focus-within > .dropdown-menu {
        display: none;
    }

    .topbaner_panel_2 .dropdown.open > .dropdown-menu {
        display: block;
    }

    .topbaner_panel_2 .dropdown-menu li a {
        display: block;
        padding: 13px 15px;
        color: #475569;
        font-size: 14px;
        border-radius: 8px;
    }

    .topbaner_panel_2 .dropdown-menu li a:hover {
        background: #ffffff;
        color: #b59035;
        padding-left: 20px;
    }

    .topbaner_panel_2 .dropdown.open .fa-chevron-down {
        transform: rotate(180deg);
    }

    /* ======================================
       CONTACT BUTTONS
    ====================================== */

    .topbaner_panel_2 .header_actions {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 20px;

        width: 100%;
        margin-top: 25px;
        padding-top: 25px;

        border-top: 1px solid #edf0f3;
    }

    .topbaner_panel_2 .getquatewq {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 13px;
        width: 100%;
        padding: 0;
    }

    .topbaner_panel_2 .phone_icon {
        width: 48px;
        height: 48px;
        flex-shrink: 0;
    }

    .topbaner_panel_2 .getquate {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 12px;

        width: 100%;
        padding: 17px 20px;

        background: #0b132b;
        color: #ffffff;

        border-radius: 10px;
        font-size: 15px;
        font-weight: 600;
    }

    .topbaner_panel_2 .getquate:hover {
        background: #c5a044;
        color: #ffffff;
    }
}

/* ==========================================
   SMALL MOBILE DEVICES
========================================== */

@media (max-width: 575px) {

    .topbaner_panel_2 {
        padding: 12px 16px;
    }

    .topbaner_panel_2 .logo_pane {
        width: 145px;
    }

    .topbaner_panel_2 .right_panel_design_1 {
        width: min(340px, 90vw);
        padding: 85px 18px 25px;
    }

    .topbaner_panel_2 .menu_deign > ul > li > a {
        padding: 15px;
        font-size: 15px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .topbaner_panel_2 .right_panel_design_1,
    .wa-sidebar-overlay {
        transition-duration: 0.01ms;
    }
}

.topbaner_panel_2 * {
    box-sizing: border-box;
}

.topbaner_panel_2 .container-fluid {
    padding: 0;
}

.topbaner_panel_2 .opkkk {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    width: 100%;
}

/* ======================================
   LOGO
====================================== */

.topbaner_panel_2 .logo_pane {
    width: 250px;
    flex-shrink: 0;
}

.topbaner_panel_2 .logo_pane a {
    display: block;
}

.topbaner_panel_2 .logo_pane img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.3s ease;
}

.topbaner_panel_2 .logo_pane img:hover {
    transform: scale(1.025);
}

/* ======================================
   RIGHT HEADER
====================================== */

.topbaner_panel_2 .right_panel_design_1 {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 28px;
    flex: 1;
    min-width: 0;
    margin: 0;
    width: auto;
}

/* ======================================
   NAVIGATION
====================================== */

.topbaner_panel_2 .menu_deign {
    display: flex;
    align-items: center;
    margin: 0;
}

.topbaner_panel_2 .menu_deign > ul {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.topbaner_panel_2 .menu_deign ul li {
    position: relative;
    float: none;
    list-style: none;
}

.topbaner_panel_2 .menu_deign > ul > li > a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    position: relative;
    padding: 13px 12px;
    font-family: "Outfit", sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: #253047;
    text-decoration: none;
    white-space: nowrap;
    transition: color 0.3s ease;
    text-transform: uppercase;
}

/* Navigation underline */

.topbaner_panel_2 .menu_deign > ul > li > a::after {
    content: "";
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: 5px;
    height: 2px;
    border-radius: 5px;
    background: #337ab7;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s ease;
}

.topbaner_panel_2 .menu_deign > ul > li:hover > a,
.topbaner_panel_2 .menu_deign > ul > li.active > a {
    color: #296ba3;
}

.topbaner_panel_2 .menu_deign > ul > li:hover > a::after,
.topbaner_panel_2 .menu_deign > ul > li.active > a::after {
    transform: scaleX(1);
}

/* Dropdown icon */

.topbaner_panel_2 .dropdown-toggle .fa-chevron-down {
    font-size: 10px;
    transition: transform 0.3s ease;
}

.topbaner_panel_2 .dropdown:hover .fa-chevron-down,
.topbaner_panel_2 .dropdown.open .fa-chevron-down {
    transform: rotate(180deg);
}

/* ======================================
   DROPDOWN MENU
====================================== */

.topbaner_panel_2 .menu_deign .dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    display: block;
    float: none;
    min-width: 215px;
    margin: 0;
    padding: 10px;
    background: #ffffff;
    border: 1px solid #eeeeee;
    border-radius: 12px;
    box-shadow: 0 15px 40px rgba(0,0,0,0.10);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.25s ease;
    z-index: 1000;
}

.topbaner_panel_2 .dropdown:hover > .dropdown-menu,
.topbaner_panel_2 .dropdown.open > .dropdown-menu,
.topbaner_panel_2 .dropdown:focus-within > .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.topbaner_panel_2 .dropdown-menu li {
    width: 100%;
    display: block;
}

.topbaner_panel_2 .dropdown-menu li a {
    display: block;
    padding: 12px 15px;
    font-size: 14px;
    font-weight: 500;
    color: #334155;
    border-radius: 7px;
    text-decoration: none;
    transition: all 0.3s ease;
    text-transform: uppercase;
}

.topbaner_panel_2 .dropdown-menu li a::after {
    display: none;
}

.topbaner_panel_2 .dropdown-menu li a:hover {
    background: #eff8ff;
    color: #032851;
    padding-left: 20px;
}

/* ======================================
   HEADER ACTION BUTTONS
====================================== */

.topbaner_panel_2 .header_actions {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-shrink: 0;
}

/* Phone button */

.topbaner_panel_2 .getquatewq {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 0;
    color: #0b132b;
    text-decoration: none;
    white-space: nowrap;
}

.topbaner_panel_2 .phone_icon {
    width: 43px;
    height: 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #faf4e4;
    border: 1px solid #f1e3bc;
    border-radius: 50%;
    color: #b59035;
    font-size: 16px;
    transition: all 0.3s ease;
}

.topbaner_panel_2 .phone_text {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.topbaner_panel_2 .phone_text small {
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.3px;
    color: #64748b;
}

.topbaner_panel_2 .phone_text strong {
    font-size: 15px;
    font-weight: 600;
    color: #0b132b;
}

.topbaner_panel_2 .getquatewq:hover {
    background: transparent;
    color: #b59035;
}

.topbaner_panel_2 .getquatewq:hover .phone_icon {
    background: #c5a044;
    color: #ffffff;
    border-color: #c5a044;
    transform: rotate(-10deg);
}

/* Appointment Button */

.topbaner_panel_2 .getquate {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    background: #0b132b;
    color: #ffffff;
    padding: 15px 21px;
    border: 1px solid #0b132b;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    transition: all 0.3s ease;
    font-family: "Outfit", sans-serif;
    text-transform: uppercase;
}

.topbaner_panel_2 .getquate span {
    font-size: 13px;
    margin: 0;
    transition: transform 0.3s ease;
}

.topbaner_panel_2 .getquate:hover {
    background: #296ba3;
    border-color: #296ba3;
    color: #ffffff;
    box-shadow: 0 8px 22px rgba(197,160,68,0.22);
    transform: translateY(-2px);
}

.topbaner_panel_2 .getquate:hover span {
    transform: translateX(4px);
}

/* Mobile menu button */

.topbaner_panel_2 .mobile_menu_toggle {
    display: none;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    border: 1px solid #e2e8f0;
    background: #ffffff;
    border-radius: 8px;
    color: #0b132b;
    font-size: 20px;
    cursor: pointer;
}

/* ======================================
   RESPONSIVE
====================================== */

@media (max-width: 1400px) {
    .topbaner_panel_2 {
        padding: 14px 25px;
    }

    .topbaner_panel_2 .opkkk {
        gap: 20px;
    }

    .topbaner_panel_2 .right_panel_design_1 {
        gap: 15px;
    }

    .topbaner_panel_2 .logo_pane {
        width: 165px;
    }

    .topbaner_panel_2 .menu_deign > ul > li > a {
        padding-left: 9px;
        padding-right: 9px;
        font-size: 14px;
    }

    .topbaner_panel_2 .header_actions {
        gap: 10px;
    }
}

@media (max-width: 1199px) {
    .topbaner_panel_2 {
        padding: 12px 20px;
    }

    .topbaner_panel_2 .opkkk {
        flex-wrap: wrap;
    }

    .topbaner_panel_2 .logo_pane {
        width: 170px;
    }

    .topbaner_panel_2 .mobile_menu_toggle {
        display: flex;
        order: 2;
    }

    .topbaner_panel_2 .right_panel_design_1 {
        display: none;
        width: 100%;
        flex: 0 0 100%;
        order: 3;
        flex-direction: column;
        align-items: stretch;
        gap: 15px;
        padding: 15px 0 5px;
        border-top: 1px solid #eeeeee;
    }

    .topbaner_panel_2 .right_panel_design_1.menu-open {
        display: flex;
    }

    .topbaner_panel_2 .menu_deign {
        width: 100%;
        display: block;
    }

    .topbaner_panel_2 .menu_deign > ul {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
    }

    .topbaner_panel_2 .menu_deign > ul > li > a {
        width: 100%;
        padding: 14px 12px;
        font-size: 15px;
        justify-content: space-between;
        border-bottom: 1px solid #f1f1f1;
    }

    .topbaner_panel_2 .menu_deign > ul > li > a::after {
        display: none;
    }

    .topbaner_panel_2 .menu_deign .dropdown-menu {
        position: static;
        display: none;
        width: 100%;
        min-width: 0;
        opacity: 1;
        visibility: visible;
        transform: none;
        box-shadow: none;
        border: none;
        border-radius: 0;
        background: #fafafa;
        padding: 5px 10px;
    }

    .topbaner_panel_2 .dropdown:hover > .dropdown-menu,
    .topbaner_panel_2 .dropdown:focus-within > .dropdown-menu {
        display: none;
    }

    .topbaner_panel_2 .dropdown.open > .dropdown-menu {
        display: block;
    }

    .topbaner_panel_2 .header_actions {
        flex-wrap: wrap;
        justify-content: flex-start;
        padding: 10px 0;
    }
}

@media (max-width: 575px) {
    .topbaner_panel_2 {
        padding: 12px 15px;
    }

    .topbaner_panel_2 .logo_pane {
        width: 145px;
    }

    .topbaner_panel_2 .header_actions {
        flex-direction: column;
        align-items: stretch;
        gap: 15px;
    }

    .topbaner_panel_2 .getquate {
        width: 100%;
        padding: 15px;
    }

    .topbaner_panel_2 .getquatewq {
        justify-content: flex-start;
    }
}

@media (prefers-reduced-motion: reduce) {
    .topbaner_panel_2 *,
    .topbaner_panel_2 *::before,
    .topbaner_panel_2 *::after {
        transition: none !important;
    }
}

/* ==========================================
   WA CONSTRUCTION - PREMIUM HERO SLIDER
========================================== */

.ifixanyfone_slider {
    width: 100%;
    float: left;
    position: relative;
    overflow: hidden;
    font-family: "Outfit", sans-serif;
}

.ifixanyfone_slider * {
    box-sizing: border-box;
}

/* MAIN SLIDER */

.ifixanyfone_slider .bs-slider {
    position: relative;
    overflow: hidden;
    background: #041A38;
}

.ifixanyfone_slider .carousel-inner {
    position: relative;
}

/* SLIDER IMAGE */

.ifixanyfone_slider .carousel-inner > .item > img {
    width: 100%;
    height: 650px;
    object-fit: cover;
    object-position: center;
    display: block;
    opacity: 1;
}

/* PREMIUM DARK OVERLAY */

.ifixanyfone_slider .bs-slider-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
     background: linear-gradient(
        90deg,
        rgba(4, 20, 45, 0.96) 0%,
        rgba(6, 30, 65, 0.88) 35%,
        rgba(11, 45, 89, 0.58) 68%,
        rgba(11, 45, 89, 0.20) 100%
    );
}

/* FADE TRANSITION */

.ifixanyfone_slider .fade {
    opacity: 1;
}

.ifixanyfone_slider .fade .item {
    top: 0;
    left: 0 !important;
    width: 100%;
    position: absolute;
    display: block !important;
    opacity: 0;
    z-index: 1;
    transition: opacity 1s ease-in-out;
}

.ifixanyfone_slider .fade .item:first-child {
    position: relative;
}

.ifixanyfone_slider .fade .item.active {
    opacity: 1;
    z-index: 2;
}

/* CONTAINER */

.ifixanyfone_slider .item > .container {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    display: flex;
    align-items: center;
    width: 1280px;
}

/* SLIDE CONTENT */

.ifixanyfone_slider .slide-text {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    width: 100%;
    max-width: 780px;
    padding: 0;
    margin: 0;
    text-align: left;
}

/* SMALL TOP LABEL */

.ifixanyfone_slider .slider-tag {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #C4CBD3;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 25px;
}

.ifixanyfone_slider .tag-line {
    display: inline-block;
    width: 34px;
    height: 2px;
    background: linear-gradient(
        90deg,
        #C4CBD3,
        #3879C5
    );
}

/* MAIN HEADLINE */

.ifixanyfone_slider .slide-text h1 {
    width: 100%;
    float: none;
    margin: 0 0 22px;
    color: #ffffff;
    font-family: "Outfit", sans-serif;
    font-size: 58px;
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -1.8px;
    text-align: left;
    text-transform: none;
}

.ifixanyfone_slider .slide-text h1 span {
    display: block;
    color: #7dc3ff;
}

/* DESCRIPTION */

.ifixanyfone_slider .slide-text p {
    width: 100%;
    max-width: 610px;
    float: none;
    margin: 0 0 32px;
    padding: 0;
    color: #e1e9e2;
    font-family: "Outfit", sans-serif;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.8;
    text-align: left;
    text-transform: none;
}

/* BUTTON WRAPPER */

.ifixanyfone_slider .slider-buttons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
}

/* PRIMARY BUTTON */

.ifixanyfone_slider .slider-btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    min-height: 54px;
    padding: 16px 26px;
    color: #ffffff;
 background: linear-gradient(
        135deg,
        #0B2D59 0%,
        #174D91 55%,
        #3879C5 100%
    );
 border: 1px solid #3879C5;
    box-shadow: 0 8px 24px rgba(4, 26, 56, 0.30);
    border-radius: 7px;
    font-family: "Outfit", sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.6px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.ifixanyfone_slider .slider-btn-primary:hover {
    color: #ffffff;
    text-decoration: none;
    background: linear-gradient(
        135deg,
        #174D91,
        #3879C5
    );
    border-color: #8FC0FF;
    box-shadow: 0 12px 30px rgba(23, 77, 145, 0.35);
    transform: translateY(-3px);
}

.ifixanyfone_slider .slider-btn-primary i {
    font-size: 13px;
    transition: transform 0.3s ease;
}

.ifixanyfone_slider .slider-btn-primary:hover i {
    transform: translateX(5px);
}

/* SECONDARY BUTTON */

.ifixanyfone_slider .slider-btn-outline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    min-height: 54px;
    padding: 16px 26px;
    color: #ffffff;
 background: rgba(255, 255, 255, 0.06);
    border: 1px solid #C4CBD3;
    border-radius: 7px;
    font-family: "Outfit", sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.6px;
    text-decoration: none;
    backdrop-filter: blur(6px);
    transition: all 0.3s ease;
}

.ifixanyfone_slider .slider-btn-outline:hover {
    color: #ffffff;
    text-decoration: none;
    background: rgba(23, 77, 145, 0.35);
    border-color: #8FC0FF;
    transform: translateY(-3px);
}

/* TRUST FEATURES */

.ifixanyfone_slider .slider-bottom-text {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-top: 38px;
    color: #E3EAF4;
    font-size: 13px;
    font-weight: 500;
}

.ifixanyfone_slider .slider-bottom-text i {
    color: #8FC0FF;
    font-size: 15px;
}

.ifixanyfone_slider .slider-divider {
    display: inline-block;
    height: 16px;
    width: 1px;
    background: rgba(196, 203, 211, 0.45);
    margin: 0 8px;
}

/* ==========================================
   MODERN NAVIGATION ARROWS
========================================== */

.ifixanyfone_slider .control-round .carousel-control {
    position: absolute;
    top: 50%;
    z-index: 10;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    color: #ffffff;
    font-size: 25px;
    text-shadow: none;
    background: rgba(11, 45, 89, 0.65);
    border: 1px solid rgba(196, 203, 211, 0.45);
    border-radius: 50%;
    transform: translateY(-50%);
    transition: all 0.3s ease;
}

.ifixanyfone_slider .control-round:hover .carousel-control,
.ifixanyfone_slider .carousel-control:focus {
    opacity: 1;
}

.ifixanyfone_slider .carousel-control.left {
    left: 24px;
}

.ifixanyfone_slider .carousel-control.right {
    right: 24px;
}

.ifixanyfone_slider .carousel-control:hover {
    background: #174D91;
    border-color: #3879C5;
    color: #ffffff;
}

/* ==========================================
   SLIDER INDICATORS
========================================== */

.ifixanyfone_slider .carousel-indicators {
    position: absolute;
    z-index: 10;
    left: 50%;
    right: auto;
    bottom: 23px;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    gap: 9px;
    overflow: visible;
}

.ifixanyfone_slider .carousel-indicators li {
    width: 9px;
    height: 9px;
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 20px;
    background: rgba(196, 203, 211, 0.55);
    cursor: pointer;
    transition: all 0.35s ease;
}

.ifixanyfone_slider .carousel-indicators li.active {
    width: 32px;
    height: 9px;
    background: #3879C5;
}

.ifixanyfone_slider .carousel-indicators li.active:before {
    display: none;
}

/* ==========================================
   SLIDE CONTENT ANIMATION
========================================== */

.ifixanyfone_slider .item.active .slider-tag {
    animation: waFadeUp 0.7s ease both;
}

.ifixanyfone_slider .item.active h1 {
    animation: waFadeUp 0.8s ease 0.15s both;
}

.ifixanyfone_slider .item.active .slide-text p {
    animation: waFadeUp 0.8s ease 0.3s both;
}

.ifixanyfone_slider .item.active .slider-buttons {
    animation: waFadeUp 0.8s ease 0.45s both;
}

.ifixanyfone_slider .item.active .slider-bottom-text {
    animation: waFadeUp 0.8s ease 0.6s both;
}

@keyframes waFadeUp {
    from {
        opacity: 0;
        transform: translateY(25px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ==========================================
   RESPONSIVE - TABLET
========================================== */

@media (max-width: 1199px) {

    .ifixanyfone_slider .slide-text {
        max-width: 700px;
    }

    .ifixanyfone_slider .slide-text h1 {
        font-size: 49px;
    }
}

@media (max-width: 991px) {

    .ifixanyfone_slider .carousel-inner > .item > img {
        height: 580px;
    }

    .ifixanyfone_slider .slide-text {
        max-width: 620px;
    }

    .ifixanyfone_slider .slide-text h1 {
        font-size: 43px;
        line-height: 1.2;
    }

    .ifixanyfone_slider .slide-text p {
        font-size: 16px;
        line-height: 1.7;
    }

    .ifixanyfone_slider .control-round .carousel-control {
        width: 40px;
        height: 40px;
        font-size: 21px;
    }

    .ifixanyfone_slider .carousel-control.left {
        left: 10px;
    }

    .ifixanyfone_slider .carousel-control.right {
        right: 10px;
    }
}

/* ==========================================
   RESPONSIVE - MOBILE
========================================== */

@media (max-width: 767px) {

    .ifixanyfone_slider .carousel-inner > .item > img {
        height: 620px;
        object-position: center;
    }

    .ifixanyfone_slider .bs-slider-overlay {
          background: linear-gradient(
            90deg,
            rgba(4, 20, 45, 0.95) 0%,
            rgba(11, 45, 89, 0.82) 100%
        );
    }

    .ifixanyfone_slider .item > .container {
        padding-left: 25px;
        padding-right: 25px;
    }

    .ifixanyfone_slider .slide-text {
        max-width: 100%;
        padding: 0;
        text-align: left;
    }

    .ifixanyfone_slider .slider-tag {
        font-size: 10px;
        letter-spacing: 1.2px;
        margin-bottom: 18px;
        gap: 9px;
        color: #C4CBD3;
    }

    .ifixanyfone_slider .tag-line {
        width: 22px;
        
    }

    .ifixanyfone_slider .slide-text h1 {
        font-size: 35px;
        line-height: 1.2
        letter-spacing: -0.;7px;
        margin-bottom: 18px;
        color: #8FC0FF;
    }

    .ifixanyfone_slider .slide-text p {
        font-size: 14px;
        line-height: 1.75;
        margin-bottom: 25px;
    }

    .ifixanyfone_slider .slider-buttons {
        gap: 10px;
    }

    .ifixanyfone_slider .slider-btn-primary,
    .ifixanyfone_slider .slider-btn-outline {
        padding: 14px 17px;
        min-height: 48px;
        font-size: 11px;
        gap: 10px;
    }

    .ifixanyfone_slider .slider-bottom-text {
        margin-top: 25px;
        font-size: 11px;
        gap: 8px;
    }

    .ifixanyfone_slider .control-round .carousel-control {
        display: none;
    }

    .ifixanyfone_slider .carousel-indicators {
        bottom: 18px;
    }
}

/* ==========================================
   SMALL MOBILE
========================================== */

@media (max-width: 480px) {

    .ifixanyfone_slider .carousel-inner > .item > img {
        height: 620px;
    }

    .ifixanyfone_slider .slide-text h1 {
        font-size: 30px;
        line-height: 1.22;
    }

    .ifixanyfone_slider .slide-text p {
        font-size: 13px;
        line-height: 1.7;
    }

    .ifixanyfone_slider .slider-buttons {
        align-items: stretch;
    }

    .ifixanyfone_slider .slider-btn-primary,
    .ifixanyfone_slider .slider-btn-outline {
        padding: 13px 15px;
        font-size: 10px;
    }

    .ifixanyfone_slider .slider-bottom-text {
        line-height: 1.7;
    }
}

@media (max-width: 360px) {

    .ifixanyfone_slider .slide-text h1 {
        font-size: 26px;
    }

    .ifixanyfone_slider .slider-tag {
        font-size: 9px;
    }

    .ifixanyfone_slider .slider-btn-primary,
    .ifixanyfone_slider .slider-btn-outline {
        width: 100%;
    }
}

/* ACCESSIBILITY */

@media (prefers-reduced-motion: reduce) {

    .ifixanyfone_slider *,
    .ifixanyfone_slider *::before,
    .ifixanyfone_slider *::after {
        animation-duration: 0.01ms !important;
        transition-duration: 0.01ms !important;
    }
}


/* ==========================================
   WA RESIDENTIAL - PREMIUM MODERN DESIGN
========================================== */

.wa-residential-section {
    --wa-primary: #06264a;
    --wa-primary-dark: #03182e;
    --wa-accent: #c59a59;
    --wa-text: #172334;
    --wa-muted: #687484;
    --wa-light: #f5f7f9;

    width: 100%;
    padding: 90px 0;
    background: #ffffff;
    font-family: "Outfit", sans-serif;
    display: block;
    clear: both;
}

.wa-residential-section *,
.wa-residential-section *::before,
.wa-residential-section *::after {
    box-sizing: border-box;
}

.wa-residential-container {
    width: 100%;
    max-width: 1440px;
    padding: 0 30px;
    margin: 0 auto;
}

/* ==========================================
   SECTION HEADING
========================================== */

.wa-residential-heading {
    display: grid;
    grid-template-columns: 1.35fr 0.85fr;
    gap: 80px;
    align-items: end;
    margin-bottom: 48px;
}

.wa-section-label {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2.5px;
    color: var(--wa-primary);
    text-transform: uppercase;
    margin-bottom: 20px;
}

.wa-label-line {
    display: inline-block;
    width: 30px;
    height: 2px;
    background: #337ab7;
}

.wa-heading-left h2,
.wa-process-heading h2 {
    font-family: "Outfit", sans-serif;
    font-size: clamp(32px, 3.3vw, 52px);
    line-height: 1.12;
    font-weight: 800;
    letter-spacing: -1.5px;
    color: var(--wa-primary-dark);
    margin: 0;
    text-transform: uppercase;
}

.wa-heading-left h2 span,
.wa-process-heading h2 span {
    display: block;
    color: #337ab7;
}

.wa-heading-right {
    padding-bottom: 5px;
}

.wa-heading-right p {
    font-family: "Outfit", sans-serif;
    font-size: 16px;
    line-height: 1.85;
    color: var(--wa-muted);
    margin: 0 0 22px;
    font-weight: 400;
}

.wa-heading-link {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    color: var(--wa-primary);
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    border-bottom: 1px solid var(--wa-accent);
    padding-bottom: 7px;
    transition: all 0.3s ease;
}

.wa-heading-link span {
    font-size: 22px;
    line-height: 1;
    transition: transform 0.3s ease;
}

.wa-heading-link:hover {
    color: var(--wa-accent);
    text-decoration: none;
}

.wa-heading-link:hover span {
    transform: translateX(5px);
}

/* ==========================================
   SERVICES GRID
========================================== */

.wa-services-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.wa-service-card {
    position: relative;
    display: block;
    height: 510px;
    width: 100%;
    overflow: hidden;
    border-radius: 12px;
    background: var(--wa-primary-dark);
    isolation: isolate;
    text-decoration: none;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.07);
    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease;
}

.wa-service-card > img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.8s cubic-bezier(.2,.7,.2,1);
}

.wa-service-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(3, 20, 38, 0.12) 0%,
        rgba(3, 20, 38, 0.10) 35%,
        rgba(3, 20, 38, 0.72) 72%,
        rgba(3, 20, 38, 0.98) 100%
    );
    z-index: 1;
    transition: opacity 0.4s ease;
}

/* Card Number */

.wa-card-number {
    position: absolute;
    top: 25px;
    left: 25px;
    z-index: 3;
    font-size: 12px;
    font-weight: 600;
    color: #ffffff;
    letter-spacing: 2px;
    background: rgba(255,255,255,0.14);
    border: 1px solid rgba(255,255,255,0.24);
    padding: 9px 13px;
    border-radius: 4px;
    backdrop-filter: blur(8px);
}

/* Card Content */

.wa-service-content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 2;
    padding: 32px;
    color: #ffffff;
}

.wa-service-category {
    display: block;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #e6bf84;
    margin-bottom: 12px;
}

.wa-service-content h3 {
    font-family: "Outfit", sans-serif;
    font-size: 32px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: -0.6px;
    color: #ffffff;
    margin: 0 0 12px;
}

.wa-service-content p {
    font-family: "Outfit", sans-serif;
    font-size: 14px;
    line-height: 1.75;
    color: rgba(255,255,255,0.82);
    margin: 0 0 25px;
    max-width: 320px;
}

/* Card Bottom */

.wa-service-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    border-top: 1px solid rgba(255,255,255,0.25);
    padding-top: 18px;
}

.wa-service-bottom > span:first-child {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.8px;
    color: #ffffff;
}

.wa-service-arrow {
    width: 44px;
    height: 44px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    border-radius: 50%;
    background: #ffffff;
    color: var(--wa-primary);
    font-size: 24px;
    line-height: 1;
    transition: all 0.35s ease;
}

/* Card Hover */

.wa-service-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 25px 55px rgba(6,38,74,0.18);
    text-decoration: none;
}

.wa-service-card:hover > img {
    transform: scale(1.08);
}

.wa-service-card:hover .wa-service-arrow {
    background: var(--wa-accent);
    color: #ffffff;
    transform: rotate(45deg);
}

.wa-service-card:focus-visible {
    outline: 3px solid var(--wa-accent);
    outline-offset: 4px;
}

/* ==========================================
   WORK PROCESS SECTION
========================================== */

.wa-process-section {
    margin-top: 100px;
    padding: 0px 0px;
    border-radius: 18px;
}

.wa-process-heading {
    max-width: 760px;
    margin: 0 auto 60px;
    text-align: center;
}

.wa-process-heading .wa-section-label {
    justify-content: center;
}

.wa-process-heading h2 {
    font-size: clamp(30px, 3vw, 44px);
}

.wa-process-heading p {
    font-family: "Outfit", sans-serif;
    font-size: 16px;
    line-height: 1.8;
    color: var(--wa-muted);
    max-width: 570px;
    margin: 20px auto 0;
}

/* Process Grid */

.wa-process-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.wa-process-item {
    position: relative;
    background: #ffffff;
    padding: 30px 24px 35px;
    border-radius: 12px;
    border: 1px solid #e8edf1;
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease,
        border-color 0.35s ease;
}

/* Icon and Number */

.wa-process-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 30px;
}

.wa-process-number {
    font-size: 40px;
    font-weight: 800;
    color: #e2e8ee;
    line-height: 1;
    letter-spacing: -2px;
    transition: color 0.3s ease;
}

.wa-process-icon {
    width: 64px;
    height: 64px;
    background: #eef3f8;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: all 0.35s ease;
}

.wa-process-icon i {
    font-size: 26px;
    color: var(--wa-primary);
    transition: color 0.3s ease;
}

/* Process Text */

.wa-process-item h3 {
    font-family: "Outfit", sans-serif;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.3;
    color: var(--wa-primary-dark);
    margin: 0 0 14px;
}

.wa-process-item p {
    font-family: "Outfit", sans-serif;
    font-size: 14px;
    line-height: 1.85;
    color: var(--wa-muted);
    margin: 0;
}

/* Process Hover */

.wa-process-item:hover {
    transform: translateY(-7px);
    border-color: rgba(6,38,74,0.15);
    box-shadow: 0 18px 45px rgba(6,38,74,0.09);
}

.wa-process-item:hover .wa-process-icon {
    background: var(--wa-primary);
    transform: rotate(-5deg);
}

.wa-process-item:hover .wa-process-icon i {
    color: #ffffff;
}

.wa-process-item:hover .wa-process-number {
    color: var(--wa-accent);
}

/* ==========================================
   RESPONSIVE - LARGE TABLET
========================================== */

@media (max-width: 1199px) {

    .wa-residential-section {
        padding: 75px 0;
    }

    .wa-residential-heading {
        gap: 40px;
    }

    .wa-service-card {
        height: 460px;
    }

    .wa-service-content {
        padding: 24px;
    }

    .wa-service-content h3 {
        font-size: 28px;
    }

    .wa-process-section {
        padding: 55px 30px;
    }

    .wa-process-grid {
        gap: 15px;
    }

    .wa-process-item {
        padding: 25px 18px;
    }
}

/* ==========================================
   RESPONSIVE - TABLET
========================================== */

@media (max-width: 991px) {

    .wa-residential-heading {
        grid-template-columns: 1fr;
        gap: 25px;
        margin-bottom: 35px;
    }

    .wa-heading-right {
        max-width: 700px;
    }

    .wa-services-grid {
        gap: 16px;
    }

    .wa-service-card {
        height: 400px;
    }

    .wa-service-content {
        padding: 20px;
    }

    .wa-service-content h3 {
        font-size: 24px;
    }

    .wa-service-content p {
        font-size: 13px;
        margin-bottom: 18px;
    }

    .wa-service-bottom > span:first-child {
        font-size: 10px;
        letter-spacing: 1px;
    }

    .wa-service-arrow {
        width: 38px;
        height: 38px;
        font-size: 20px;
    }

    .wa-process-section {
        margin-top: 70px;
    }

    .wa-process-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }

    .wa-process-heading {
        margin-bottom: 40px;
    }
}

/* ==========================================
   RESPONSIVE - MOBILE
========================================== */

@media (max-width: 767px) {

    .wa-residential-section {
        padding: 55px 0;
    }

    .wa-residential-container {
        padding: 0 18px;
    }

    .wa-residential-heading {
        gap: 20px;
        margin-bottom: 30px;
    }

    .wa-section-label {
        font-size: 11px;
        letter-spacing: 2px;
        margin-bottom: 15px;
    }

    .wa-heading-left h2 {
        font-size: 34px;
        letter-spacing: -1px;
    }

    .wa-heading-right p {
        font-size: 15px;
        line-height: 1.75;
    }

    .wa-services-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .wa-service-card {
        height: 440px;
        border-radius: 10px;
    }

    .wa-service-content {
        padding: 28px;
    }

    .wa-service-content h3 {
        font-size: 30px;
    }

    .wa-service-content p {
        font-size: 14px;
    }

    .wa-process-section {
        margin-top: 60px;
        padding: 45px 20px;
        border-radius: 12px;
    }

    .wa-process-heading {
        margin-bottom: 35px;
    }

    .wa-process-heading h2 {
        font-size: 30px;
        letter-spacing: -0.7px;
    }

    .wa-process-heading p {
        font-size: 14px;
    }

    .wa-process-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .wa-process-item {
        padding: 25px;
    }

    .wa-process-top {
        margin-bottom: 20px;
    }

    .wa-process-item h3 {
        font-size: 21px;
    }

    .wa-process-item p {
        font-size: 14px;
    }
}

/* ==========================================
   SMALL MOBILE
========================================== */

@media (max-width: 400px) {

    .wa-heading-left h2 {
        font-size: 29px;
    }

    .wa-service-card {
        height: 400px;
    }

    .wa-service-content {
        padding: 22px;
    }

    .wa-service-content h3 {
        font-size: 27px;
    }

    .wa-process-section {
        padding: 35px 15px;
    }

    .wa-process-heading h2 {
        font-size: 27px;
    }
}

/* ==========================================
   REDUCED MOTION ACCESSIBILITY
========================================== */

@media (prefers-reduced-motion: reduce) {

    .wa-residential-section *,
    .wa-residential-section *::before,
    .wa-residential-section *::after {
        transition: none !important;
        animation: none !important;
    }
}


/* BEFORE & AFTER SECTION */

.wac-compare-section {
    width: 100%;
    padding: 55px 20px 85px;
    background:
        linear-gradient(
            rgba(5, 20, 37, 0.92),
            rgba(5, 20, 37, 0.92)
        ),
        url("images/background.jpg") center/cover no-repeat;
    font-family: Arial, sans-serif;
}

.wac-compare-section * {
    box-sizing: border-box;
}

.wac-compare-container {
    width: 100%;
    max-width: 1244px;
    margin: 0 auto;
}

/* HEADING */

.wac-compare-heading {
    text-align: center;
    margin-bottom: 65px;
}

.wac-compare-heading span {
    display: block;
    font-size: 16px;
    color: #fff;
    font-weight: 600;
    margin-bottom: 30px;
}

.wac-compare-heading h2 {
    font-size: 50px;
    line-height: 1.2;
    font-weight: 700;
    color: #fff;
    margin: 0;
    font-family: "Outfit", sans-serif;
}

/* COMPARISON SLIDER */

.wac-compare-slider {
    --compare-position: 50%;
    position: relative;
    width: 100%;
    aspect-ratio: 1244 / 518;
    border-radius: 6px;
    overflow: hidden;
    background: #182434;
    isolation: isolate;
}

/* BOTH IMAGES */

.wac-compare-img {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: center;
    top: 0;
    left: 0;
}

/* AFTER IMAGE */

.wac-compare-after {
    z-index: 1;
}

/* BEFORE IMAGE WRAPPER */

.wac-compare-before-wrap {
    position: absolute;
    inset: 0;
    width: var(--compare-position);
    overflow: hidden;
    z-index: 2;
}

.wac-compare-before {
    width: var(--compare-full-width, 1244px);
    height: 100%;
}

/* LABELS */

.wac-compare-label {
    position: absolute;
    bottom: 30px;
    z-index: 4;
    padding: 6px 25px;
    background: rgba(0, 0, 0, 0.55);
    color: #fff;
    font-size: 38px;
    font-weight: 300;
    border-radius: 5px;
    pointer-events: none;
}

.wac-label-before {
    left: 35px;
}

.wac-label-after {
    right: 35px;
}

/* VERTICAL DIVIDER */

.wac-compare-divider {
    position: absolute;
    top: 0;
    bottom: 0;
    left: var(--compare-position);
    width: 3px;
    background: #fff;
    transform: translateX(-50%);
    z-index: 5;
    pointer-events: none;
}

/* SLIDER HANDLE */

.wac-compare-handle {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 60px;
    height: 60px;
    background: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #102239;
    font-size: 19px;
    box-shadow: 0 3px 15px rgba(0,0,0,0.3);
}

/* RANGE INPUT */

.wac-compare-range {
    position: absolute;
    inset: 0;
    z-index: 10;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    opacity: 0;
    cursor: ew-resize;
    touch-action: pan-y;
}

/* RESPONSIVE */

@media (max-width: 991px) {
    .wac-compare-heading h2 {
        font-size: 38px;
    }

    .wac-compare-heading {
        margin-bottom: 45px;
    }

    .wac-compare-slider {
        aspect-ratio: 1.7;
    }

    .wac-compare-label {
        font-size: 28px;
    }
}

@media (max-width: 767px) {
    .wac-compare-section {
        padding: 50px 15px 60px;
    }

    .wac-compare-heading h2 {
        font-size: 30px;
    }

    .wac-compare-heading span {
        font-size: 13px;
        margin-bottom: 18px;
    }

    .wac-compare-heading {
        margin-bottom: 35px;
    }

    .wac-compare-slider {
        aspect-ratio: 1.15;
    }

    .wac-compare-handle {
        width: 46px;
        height: 46px;
        font-size: 15px;
    }

    .wac-compare-label {
        font-size: 20px;
        padding: 5px 12px;
        bottom: 15px;
    }

    .wac-label-before {
        left: 10px;
    }

    .wac-label-after {
        right: 10px;
    }
}

@media (max-width: 480px) {
    .wac-compare-heading h2 {
        font-size: 26px;
    }

    .wac-compare-slider {
        aspect-ratio: 1;
    }

    .wac-compare-label {
        font-size: 17px;
    }
}

/* =====================================
   MODERN CONSTRUCTION FEATURES SECTION
===================================== */

.vec-modern-section {
    --vec-navy: #071e38;
    --vec-navy-dark: #041326;
    --vec-gold: #c59b57;
    --vec-text: #182638;
    --vec-muted: #687585;
    --vec-border: #e7ebef;

    width: 100%;
    background: #ffffff;
    padding: 90px 0;
    font-family: 'Poppins', Arial, sans-serif;
    overflow: hidden;
}

.vec-modern-section *,
.vec-modern-section *::before,
.vec-modern-section *::after {
    box-sizing: border-box;
}

.vec-modern-container {
    max-width: 100%;
    padding: 0 0px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1fr);
    gap: 65px;
    align-items: center;
}

/* =====================================
   IMAGE GALLERY
===================================== */

.vec-modern-gallery {
    display: grid;
    grid-template-columns: 1.12fr 0.88fr;
    gap: 15px;
    height: 602px;
    position: relative;
    min-width: 0;
}

.vec-modern-main-image {
    position: relative;
    overflow: hidden;
    border-radius: 18px;
    height: 100%;
}

.vec-modern-main-image img,
.vec-modern-small-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.7s ease;
}

.vec-modern-main-image:hover img,
.vec-modern-small-image:hover img {
    transform: scale(1.06);
}

.vec-modern-image-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        transparent 35%,
        rgba(2, 15, 31, 0.85) 100%
    );
    pointer-events: none;
}

.vec-modern-image-caption {
    position: absolute;
    bottom: 35px;
    left: 26px;
    right: 20px;
    color: #ffffff;
    z-index: 2;
}

.vec-modern-caption-line {
    display: block;
    width: 38px;
    height: 3px;
    background: var(--vec-gold);
    margin-bottom: 15px;
}

.vec-modern-image-caption p {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 1.5px;
    margin: 0 0 10px;
    color: #e5e9ee;
}

.vec-modern-image-caption h3 {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.4;
    color: #ffffff;
    margin: 0;
}

/* SIDE GALLERY */

.vec-modern-side-gallery {
    display: grid;
    grid-template-rows: 55% minmax(0, 1fr);
    gap: 15px;
    min-height: 0;
}

.vec-modern-small-image {
    border-radius: 18px;
    overflow: hidden;
    position: relative;
}

/* EXPERIENCE CARD */

.vec-modern-experience-card {
    background: var(--vec-navy);
    color: #ffffff;
    border-radius: 18px;
    padding: 28px 24px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    overflow: hidden;
}

.vec-modern-experience-card::after {
    content: "";
    position: absolute;
    width: 160px;
    height: 160px;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 50%;
    right: -70px;
    bottom: -75px;
}

.vec-modern-experience-number {
    font-size: 70px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: -3px;
    color: #ffffff;
}

.vec-modern-experience-number span {
    color: #aedaff;
    font-size: 42px;
}

.vec-modern-experience-title {
    font-size: 15px;
    line-height: 1.5;
    font-weight: 600;
    letter-spacing: 1.2px;
    margin-top: 10px;
}

.vec-modern-experience-line {
    width: 40px;
    height: 2px;
    background: var(--vec-gold);
    margin: 18px 0;
}

.vec-modern-experience-card p {
    color: #c9d3df;
    font-size: 12px;
    line-height: 1.8;
    margin: 0;
}

/* FLOATING BADGE */

.vec-modern-floating-badge {
    position: absolute;
    left: 50%;
    bottom: 24px;
    transform: translateX(-50%);
    background: #ffffff;
    border-radius: 12px;
    padding: 13px 18px;
    display: flex;
    align-items: center;
    gap: 12px;
    box-shadow: 0 10px 35px rgba(0,0,0,0.16);
    z-index: 4;
    white-space: nowrap;
}

.vec-modern-badge-icon {
    width: 38px;
    height: 38px;
    background: #edf6f0;
    color: #238653;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 19px;
    font-weight: 700;
    flex-shrink: 0;
}

.vec-modern-floating-badge strong {
    display: block;
    font-size: 13px;
    color: var(--vec-navy);
    font-weight: 600;
}

.vec-modern-floating-badge small {
    display: block;
    color: #7a8491;
    font-size: 10px;
    margin-top: 3px;
}

/* =====================================
   CONTENT AREA
===================================== */

.vec-modern-content {
    min-width: 0;
}

.vec-modern-eyebrow {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #041326;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 20px;
}

.vec-modern-eyebrow-line {
    width: 35px;
    height: 2px;
    background: #041326;
    flex-shrink: 0;
}

.vec-modern-heading {
    color: #041326;
    font-size: 35px;
    font-weight: 700;
    line-height: 1.18;
    letter-spacing: -1.5px;
    margin: 0 0 23px;
}

.vec-modern-heading span {
    color: #337ab7;
    display: block;
}

.vec-modern-intro {
    font-size: 18px;
    line-height: 28px;
    color: var(--vec-text);
    font-weight: 500;
    margin: 0 0 15px;
    font-family: "Outfit", sans-serif;
}

.vec-modern-description {
    color: var(--vec-muted);
    font-size: 16px;
    line-height: 1.95;
    margin: 0 0 25px;
    font-family: "Outfit", sans-serif;
}

/* FEATURE GRID */

.vec-modern-features {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 17px 18px;
    padding: 22px 0;
    border-top: 1px solid var(--vec-border);
    border-bottom: 1px solid var(--vec-border);
}

.vec-modern-feature {
    display: flex;
    align-items: center;
    gap: 11px;
    color: var(--vec-text);
    font-size: 13px;
    font-weight: 500;
}

.vec-modern-feature-icon {
    width: 25px;
    height: 25px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #d5ecff;
    color: #041326;
    border-radius: 50%;
    font-size: 13px;
    font-weight: 700;
}

/* BUTTONS */

.vec-modern-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 24px;
    margin-top: 28px;
}

.vec-modern-primary-btn {
    background: #337ab7;
    color: #ffffff;
    padding: 16px 24px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 28px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
}

.vec-modern-primary-btn span {
    font-size: 20px;
    line-height: 1;
    transition: transform 0.3s ease;
}

.vec-modern-primary-btn:hover {
    background: #071e38;
    color: #ffffff;
    text-decoration: none;
    transform: translateY(-3px);
    box-shadow: 0 10px 22px rgba(0,0,0,0.12);
}

.vec-modern-primary-btn:hover span {
    transform: translate(3px, -3px);
}

.vec-modern-text-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 600;
    color: var(--vec-navy);
    text-decoration: none;
    transition: color 0.3s ease;
}

.vec-modern-text-btn span {
    font-size: 20px;
    transition: transform 0.3s ease;
}

.vec-modern-text-btn:hover {
    color: #337ab7;
    text-decoration: none;
}

.vec-modern-text-btn:hover span {
    transform: translateX(5px);
}

/* =====================================
   GOOGLE REVIEW CARD
===================================== */

.vec-modern-review-card {
    margin-top: 35px;
    background: #f6f8fa;
    border: 1px solid #e9edf1;
    border-radius: 14px;
    padding: 22px 25px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 20px;
}

.vec-modern-review-heading {
    font-size: 18px;
    font-weight: 600;
    color: var(--vec-navy);
    margin-bottom: 6px;
}

.vec-modern-review-summary p {
    font-size: 12px;
    line-height: 1.6;
    color: var(--vec-muted);
    margin: 0;
}

.vec-modern-review-details {
    border-left: 1px solid #dce2e8;
    padding-left: 24px;
    text-align: center;
}

.vec-modern-google-name {
    font-family: Arial, sans-serif;
    font-size: 27px;
    font-weight: 600;
    letter-spacing: -1.5px;
    line-height: 1.2;
}

.vec-google-blue { color: #4285f4; }
.vec-google-red { color: #ea4335; }
.vec-google-yellow { color: #fbbc05; }
.vec-google-green { color: #34a853; }

.vec-modern-rating-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 4px;
}

.vec-modern-rating-row strong {
    font-size: 20px;
    color: var(--vec-navy);
}

.vec-modern-stars {
    font-size: 17px;
    letter-spacing: 1px;
    color: #f5a623;
}

.vec-modern-review-details small {
    display: block;
    color: var(--vec-muted);
    font-size: 10px;
    margin-top: 4px;
}

/* =====================================
   RESPONSIVE - LAPTOP
===================================== */

@media (max-width: 1200px) {

    .vec-modern-container {
        gap: 35px;
        padding: 0 25px;
    }

    .vec-modern-gallery {
        height: 570px;
    }

    .vec-modern-heading {
        font-size: 34px;
    }

    .vec-modern-experience-number {
        font-size: 56px;
    }

    .vec-modern-experience-card {
        padding: 20px 16px;
    }

    .vec-modern-review-card {
        padding: 18px;
    }
}

/* =====================================
   RESPONSIVE - TABLET
===================================== */

@media (max-width: 991px) {

    .vec-modern-section {
        padding: 65px 0;
    }

    .vec-modern-container {
        grid-template-columns: 1fr;
        gap: 45px;
        max-width: 760px;
    }

    .vec-modern-gallery {
        height: 570px;
    }

    .vec-modern-heading {
        font-size: 40px;
    }

    .vec-modern-content {
        width: 100%;
    }
}

/* =====================================
   RESPONSIVE - MOBILE
===================================== */

@media (max-width: 575px) {

    .vec-modern-section {
        padding: 45px 0;
    }

    .vec-modern-container {
        padding: 0 15px;
        gap: 35px;
    }

    .vec-modern-gallery {
        height: 410px;
        gap: 9px;
    }

    .vec-modern-side-gallery {
        gap: 9px;
        grid-template-rows: 52% minmax(0, 1fr);
    }

    .vec-modern-main-image,
    .vec-modern-small-image,
    .vec-modern-experience-card {
        border-radius: 12px;
    }

    .vec-modern-image-caption {
        left: 15px;
        bottom: 65px;
        right: 10px;
    }

    .vec-modern-image-caption p {
        font-size: 8px;
        letter-spacing: 0.8px;
    }

    .vec-modern-image-caption h3 {
        font-size: 15px;
        line-height: 1.4;
    }

    .vec-modern-experience-card {
        padding: 15px 12px;
    }

    .vec-modern-experience-number {
        font-size: 43px;
    }

    .vec-modern-experience-number span {
        font-size: 27px;
    }

    .vec-modern-experience-title {
        font-size: 10px;
        letter-spacing: 0.6px;
        margin-top: 8px;
    }

    .vec-modern-experience-line {
        margin: 12px 0;
        width: 30px;
    }

    .vec-modern-experience-card p {
        font-size: 9px;
        line-height: 1.6;
    }

    .vec-modern-floating-badge {
        bottom: 12px;
        padding: 10px 12px;
        gap: 8px;
    }

    .vec-modern-badge-icon {
        width: 30px;
        height: 30px;
        font-size: 15px;
    }

    .vec-modern-floating-badge strong {
        font-size: 11px;
    }

    .vec-modern-floating-badge small {
        font-size: 9px;
    }

    .vec-modern-eyebrow {
        font-size: 10px;
        letter-spacing: 1.3px;
        gap: 9px;
        margin-bottom: 16px;
    }

    .vec-modern-eyebrow-line {
        width: 25px;
    }

    .vec-modern-heading {
        font-size: 31px;
        line-height: 1.25;
        letter-spacing: -0.8px;
    }

    .vec-modern-intro {
        font-size: 15px;
        line-height: 1.8;
    }

    .vec-modern-description {
        font-size: 13px;
        line-height: 1.85;
    }

    .vec-modern-features {
        gap: 14px;
    }

    .vec-modern-feature {
        font-size: 11px;
        gap: 7px;
    }

    .vec-modern-feature-icon {
        width: 21px;
        height: 21px;
        font-size: 11px;
    }

    .vec-modern-actions {
        gap: 18px;
    }

    .vec-modern-primary-btn {
        padding: 14px 18px;
        font-size: 12px;
        gap: 15px;
    }

    .vec-modern-text-btn {
        font-size: 12px;
    }

    .vec-modern-review-card {
        margin-top: 28px;
        padding: 18px 14px;
        gap: 12px;
    }

    .vec-modern-review-heading {
        font-size: 14px;
    }

    .vec-modern-review-summary p {
        font-size: 10px;
    }

    .vec-modern-review-details {
        padding-left: 12px;
    }

    .vec-modern-google-name {
        font-size: 23px;
    }

    .vec-modern-rating-row strong {
        font-size: 17px;
    }

    .vec-modern-stars {
        font-size: 12px;
        letter-spacing: 0;
    }

    .vec-modern-review-details small {
        font-size: 9px;
    }
}

/* =====================================
   EXTRA SMALL SCREENS
===================================== */

@media (max-width: 360px) {

    .vec-modern-gallery {
        height: 370px;
    }

    .vec-modern-experience-card p {
        font-size: 8px;
    }

    .vec-modern-heading {
        font-size: 27px;
    }

    .vec-modern-features {
        grid-template-columns: 1fr;
    }

    .vec-modern-review-card {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .vec-modern-review-details {
        border-left: 0;
        border-top: 1px solid #dce2e8;
        padding: 15px 0 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .vec-modern-section *,
    .vec-modern-section *::before,
    .vec-modern-section *::after {
        transition: none !important;
    }
}

/* ========================================
   LATEST PROJECTS SLIDER
======================================== */

.wa-projects-section {
    width: 100%;
    padding: 40px 0;
    background: #ffffff;
    font-family: 'Poppins', sans-serif;
}

.wa-projects-section *,
.wa-projects-section *::before,
.wa-projects-section *::after {
    box-sizing: border-box;
}

.wa-projects-container {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 18px;
}

/* ========================================
   HEADING
======================================== */

.wa-projects-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 25px;
    margin-bottom: 38px;
}

.wa-projects-heading {
    flex: 1;
}

.wa-projects-subtitle {
    display: block;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 5px;
    color: #4c5c72;
    margin-bottom: 11px;
    font-family: "Outfit", sans-serif;
}

.wa-projects-heading h2 {
    font-family: 'Poppins', sans-serif;
    font-size: 46px;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: -1.2px;
    color: #061d3b;
    margin: 0;
    padding: 0;
    text-transform: none;
    font-family: "Outfit", sans-serif;
}

/* ========================================
   NAVIGATION
======================================== */

.wa-projects-navigation {
    display: flex;
    align-items: center;
    gap: 6px;
    padding-bottom: 7px;
}

.wa-projects-arrow {
    width: 48px;
    height: 48px;
    padding: 0;
    border: none;
    border-radius: 0;
    background: #031c3b;
    color: #ffffff;
    font-size: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: background 0.3s ease;
}

.wa-projects-arrow:hover {
    background: #294a70;
    color: #ffffff;
}

.wa-projects-arrow:focus-visible {
    outline: 3px solid #6b91c3;
    outline-offset: 3px;
}

/* ========================================
   SLIDER
======================================== */

.wa-projects-slider {
    width: 100%;
    position: relative;
    overflow: hidden;
    touch-action: pan-y;
}

.wa-projects-track {
    display: flex;
    align-items: stretch;
    gap: 20px;
    will-change: transform;
    transition: transform 0.55s ease-in-out;
}

/* Three Images on Desktop */
.wa-projects-card {
    position: relative;
    flex: 0 0 calc((100% - 40px) / 3);
    height: 605px;
    overflow: hidden;
    border-radius: 12px;
    background: #f3f3f3;
    isolation: isolate;
}

.wa-projects-card img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.6s ease;
    user-select: none;
    -webkit-user-drag: none;
}

.wa-projects-card:hover img {
    transform: scale(1.045);
}

/* ========================================
   LAPTOP
======================================== */

@media (max-width: 1199px) {

    .wa-projects-heading h2 {
        font-size: 42px;
    }

    .wa-projects-card {
        height: 520px;
    }

}

/* ========================================
   TABLET
======================================== */

@media (max-width: 991px) {

    .wa-projects-heading h2 {
        font-size: 36px;
    }

    .wa-projects-subtitle {
        font-size: 14px;
        letter-spacing: 4px;
    }

    .wa-projects-card {
        flex-basis: calc((100% - 20px) / 2);
        height: 450px;
    }

}

/* ========================================
   MOBILE
======================================== */

@media (max-width: 767px) {

    .wa-projects-section {
        padding: 35px 0;
    }

    .wa-projects-container {
        padding: 0 15px;
    }

    .wa-projects-header {
        margin-bottom: 25px;
        gap: 15px;
    }

    .wa-projects-subtitle {
        font-size: 12px;
        letter-spacing: 3px;
        margin-bottom: 8px;
    }

    .wa-projects-heading h2 {
        font-size: 30px;
        line-height: 1.25;
    }

    .wa-projects-navigation {
        gap: 5px;
    }

    .wa-projects-arrow {
        width: 36px;
        height: 36px;
        font-size: 16px;
    }

    .wa-projects-track {
        gap: 15px;
    }

    .wa-projects-card {
        flex-basis: 100%;
        height: 460px;
        border-radius: 10px;
    }

}

/* ========================================
   SMALL MOBILE
======================================== */

@media (max-width: 480px) {

    .wa-projects-heading h2 {
        font-size: 26px;
    }

    .wa-projects-subtitle {
        font-size: 11px;
        letter-spacing: 2.5px;
    }

    .wa-projects-arrow {
        width: 32px;
        height: 32px;
        font-size: 14px;
    }

    .wa-projects-card {
        height: 390px;
    }

}

@media (prefers-reduced-motion: reduce) {
    .wa-projects-track,
    .wa-projects-card img,
    .wa-projects-arrow {
        transition: none;
    }
}


/* =========================================
   WA CONSTRUCTION - MODERN BLOG SECTION
========================================= */

.wac-blog-section {
    --wac-navy: #071e39;
    --wac-gold: #c6a06a;
    --wac-text: #5f6b79;
    --wac-border: #e9edf1;
    width: 100%;
    padding: 70px 0;
    font-family: 'Poppins', Arial, sans-serif;
}

.wac-blog-section *,
.wac-blog-section *::before,
.wac-blog-section *::after {
    box-sizing: border-box;
}

.wac-blog-container {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding: 0 28px;
}

/* =========================================
   SECTION HEADER
========================================= */

.wac-blog-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 35px;
    margin-bottom: 45px;
}

.wac-blog-header-content {
    max-width: 780px;
}

.wac-blog-subtitle {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #337ab7;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 18px;
}

.wac-blog-line {
    display: block;
    width: 35px;
    height: 2px;
    background: #337ab7;
}

.wac-blog-header h2 {
    font-size: clamp(32px, 3.4vw, 48px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -1.3px;
    color: var(--wac-navy);
    margin: 0 0 18px;
    font-family: "Outfit", sans-serif;
}

.wac-blog-header h2 span {
    color: #337ab7;
}

.wac-blog-header p {
    max-width: 620px;
    font-size: 15px;
    line-height: 1.9;
    color: var(--wac-text);
    margin: 0;
}

/* View All Button */

.wac-blog-view-all {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 15px 23px;
    background: var(--wac-navy);
    color: #fff !important;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none !important;
    border-radius: 7px;
    white-space: nowrap;
    transition: all 0.3s ease;
}

.wac-blog-view-all span {
    font-size: 20px;
    line-height: 1;
    transition: transform 0.3s ease;
}

.wac-blog-view-all:hover {
    background: var(--wac-gold);
    transform: translateY(-3px);
}

.wac-blog-view-all:hover span {
    transform: translate(3px, -3px);
}

/* =========================================
   BLOG GRID
========================================= */

.wac-blog-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
    align-items: stretch;
}

/* =========================================
   BLOG CARD
========================================= */

.wac-blog-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    background: #fff;
    border: 1px solid var(--wac-border);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 8px 28px rgba(7, 30, 57, 0.035);
    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease;
}

.wac-blog-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 18px 45px rgba(7, 30, 57, 0.12);
}

/* =========================================
   BLOG IMAGE
========================================= */

.wac-blog-image {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 1.43 / 1;
    overflow: hidden;
    background: #e7e9ed;
}

.wac-blog-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.65s ease;
}

.wac-blog-card:hover .wac-blog-image img {
    transform: scale(1.07);
}

/* Image Category Badge */

.wac-blog-category {
    position: absolute;
    left: 20px;
    bottom: 20px;
    display: inline-block;
    padding: 10px 14px;
    background: #fff;
    color: var(--wac-navy);
    border-radius: 5px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 1.3;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
}

/* =========================================
   BLOG CONTENT
========================================= */

.wac-blog-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex: 1;
    padding: 28px 27px 30px;
}

/* Meta */

.wac-blog-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 16px;
    color: #85909b;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.4px;
}

.wac-meta-dot {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--wac-gold);
}

/* Blog Heading */

.wac-blog-content h3 {
    margin: 0 0 15px;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: -0.3px;
    font-family: "Outfit", sans-serif;
}

.wac-blog-content h3 a {
    color: var(--wac-navy);
    text-decoration: none !important;
    transition: color 0.3s ease;
}

.wac-blog-content h3 a:hover {
    color: #337ab7;
}

/* Description */

.wac-blog-content p {
    color: var(--wac-text);
    font-size: 14px;
    line-height: 1.85;
    margin: 0 0 25px;
}

/* =========================================
   READ ARTICLE LINK
========================================= */

.wac-blog-read {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-top: auto;
    color: var(--wac-navy);
    font-size: 13px;
    font-weight: 700;
    text-decoration: none !important;
    transition: color 0.3s ease;
}

.wac-blog-read span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: #337ab7;
    border-radius: 50%;
    color: #fff;
    font-size: 19px;
    line-height: 1;
    transition: all 0.3s ease;
}

.wac-blog-read:hover {
    color: #337ab7;
}

.wac-blog-read:hover span {
    background: var(--wac-navy);
    color: #fff;
    transform: rotate(45deg);
}

/* =========================================
   TABLET RESPONSIVE
========================================= */

@media (max-width: 991px) {

    .wac-blog-section {
        padding: 65px 0;
    }

    .wac-blog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px;
    }

    .wac-blog-header h2 {
        font-size: 36px;
    }

    .wac-blog-content {
        padding: 24px;
    }

    .wac-blog-content h3 {
        font-size: 19px;
    }
}

/* =========================================
   MOBILE RESPONSIVE
========================================= */

@media (max-width: 767px) {

    .wac-blog-section {
        padding: 50px 0;
    }

    .wac-blog-container {
        padding: 0 18px;
    }

    .wac-blog-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
        margin-bottom: 32px;
    }

    .wac-blog-header h2 {
        font-size: 32px;
        letter-spacing: -0.6px;
    }

    .wac-blog-header p {
        font-size: 14px;
        line-height: 1.8;
    }

    .wac-blog-grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .wac-blog-image {
        aspect-ratio: 1.43 / 1;
    }

    .wac-blog-content {
        padding: 24px 22px 27px;
    }

    .wac-blog-content h3 {
        font-size: 20px;
    }

    .wac-blog-view-all {
        padding: 13px 20px;
    }
}

/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 375px) {

    .wac-blog-header h2 {
        font-size: 28px;
    }

    .wac-blog-content h3 {
        font-size: 18px;
    }

    .wac-blog-content {
        padding: 21px 18px 24px;
    }
}

/* Accessibility */

@media (prefers-reduced-motion: reduce) {
    .wac-blog-section *,
    .wac-blog-section *::before,
    .wac-blog-section *::after {
        transition: none !important;
        animation: none !important;
    }
}


/* =========================================
   WA CONSTRUCTION - SERVICE AREAS
========================================= */

.wac-area-section {
    position: relative;
    width: 100%;
    padding: 90px 0;
    background: #092d58 url("images/service-area-bg.jpg")
                center center / cover no-repeat;
    font-family: 'Poppins', sans-serif;
    overflow: hidden;
    isolation: isolate;
}

.wac-area-section * {
    box-sizing: border-box;
}

/* Background Overlay */

.wac-area-overlay {
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(
        115deg,
        rgba(3, 27, 59, 0.97) 0%,
        rgba(5, 48, 99, 0.94) 55%,
        rgba(4, 34, 76, 0.90) 100%
    );
}

/* Container */

.wac-area-container {
    position: relative;
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding: 0 30px;
}

/* =========================================
   HEADING
========================================= */

.wac-area-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 45px;
}

.wac-area-heading {
    max-width: 850px;
}

.wac-area-subtitle {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;
    color: #86bdff;
}

.wac-area-line {
    display: inline-block;
    width: 34px;
    height: 2px;
    background: #63a5ff;
}

.wac-area-heading h2 {
    margin: 0 0 20px;
    font-size: clamp(32px, 4vw, 54px);
    line-height: 1.15;
    font-weight: 700;
    letter-spacing: -1.5px;
    color: #ffffff;
    font-family: "Outfit", sans-serif;
}

.wac-area-heading h2 span {
    display: block;
    color: #80b8ff;
}

.wac-area-heading p {
    max-width: 650px;
    margin: 0;
    color: #c6d5e8;
    font-size: 15px;
    line-height: 1.9;
    font-weight: 400;
}

/* Licensed Highlight */

.wac-area-highlight {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px 22px;
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 12px;
    background: rgba(255,255,255,0.06);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    flex-shrink: 0;
}

.wac-area-highlight-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 42px;
    height: 42px;
    background: rgba(105,170,255,0.15);
    border: 1px solid rgba(130,190,255,0.35);
    border-radius: 50%;
    color: #8cc2ff;
    font-size: 22px;
    font-weight: 700;
}

.wac-area-highlight strong {
    display: block;
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 4px;
}

.wac-area-highlight div > span {
    display: block;
    color: #a9bfd8;
    font-size: 11px;
}

/* =========================================
   SERVICE AREA GRID
========================================= */

.wac-area-grid {
    display: grid;
    grid-template-columns: repeat(9, minmax(0, 1fr));
    gap: 15px;
}

/* Cards */

.wac-area-card {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: 148px;
    padding: 24px 12px;
    text-align: center;
    text-decoration: none !important;
    border: 1px solid rgba(255,255,255,0.13);
    border-radius: 14px;
    background: rgba(2, 22, 49, 0.65);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    overflow: hidden;
    transition:
        transform 0.35s ease,
        background 0.35s ease,
        border-color 0.35s ease,
        box-shadow 0.35s ease;
}

.wac-area-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: #75b2ff;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.35s ease;
}

/* Location Icon - Pure CSS/SVG */

.wac-area-icon {
    display: block;
    width: 36px;
    height: 36px;
    margin-bottom: 18px;
    background-color: #95c6ff;
    -webkit-mask:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 5-8 11-8 11S4 15 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E")
        center / contain no-repeat;
    mask:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 5-8 11-8 11S4 15 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E")
        center / contain no-repeat;
    transition: transform 0.35s ease;
}

/* Card Title */

.wac-area-card h3 {
    margin: 0;
    color: #ffffff;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    overflow-wrap: anywhere;
    transition: color 0.35s ease;
    font-family: "Outfit", sans-serif;
}

/* Arrow */

.wac-area-arrow {
    position: absolute;
    top: 13px;
    right: 15px;
    color: #a5ceff;
    font-size: 17px;
    opacity: 0;
    transform: translate(-5px, 5px);
    transition: all 0.35s ease;
}

/* =========================================
   HOVER EFFECTS
========================================= */

.wac-area-card:hover,
.wac-area-card:focus-visible {
    background: rgba(25, 82, 150, 0.88);
    border-color: rgba(140,195,255,0.6);
    transform: translateY(-6px);
    box-shadow: 0 15px 35px rgba(0,0,0,0.18);
}

.wac-area-card:hover::before,
.wac-area-card:focus-visible::before {
    transform: scaleX(1);
}

.wac-area-card:hover .wac-area-icon,
.wac-area-card:focus-visible .wac-area-icon {
    transform: translateY(-3px);
}

.wac-area-card:hover .wac-area-arrow,
.wac-area-card:focus-visible .wac-area-arrow {
    opacity: 1;
    transform: translate(0, 0);
}

/* =========================================
   FOOTER
========================================= */

.wac-area-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 25px;
    margin-top: 38px;
    padding-top: 30px;
    border-top: 1px solid rgba(255,255,255,0.15);
}

.wac-area-footer p {
    margin: 0;
    font-size: 14px;
    line-height: 1.7;
    color: #b9cee5;
}

.wac-area-footer p strong {
    color: #ffffff;
    font-weight: 600;
}

/* CTA Button */

.wac-area-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
    min-height: 48px;
    padding: 13px 24px;
    background: #ffffff;
    color: #0a3266 !important;
    border-radius: 7px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-decoration: none !important;
    white-space: nowrap;
    transition: all 0.3s ease;
}

.wac-area-button span {
    font-size: 19px;
}

.wac-area-button:hover {
    background: #83bbff;
    color: #052650 !important;
    transform: translateY(-3px);
}

/* =========================================
   RESPONSIVE - LARGE TABLET
========================================= */

@media (max-width: 1199px) {

    .wac-area-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .wac-area-header {
        align-items: flex-start;
    }

    .wac-area-highlight {
        padding: 14px;
    }

}

/* =========================================
   RESPONSIVE - TABLET
========================================= */

@media (max-width: 991px) {

    .wac-area-section {
        padding: 70px 0;
    }

    .wac-area-header {
        flex-direction: column;
        gap: 25px;
        margin-bottom: 35px;
    }

    .wac-area-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .wac-area-heading h2 {
        font-size: 40px;
    }

    .wac-area-card {
        min-height: 140px;
    }

}

/* =========================================
   RESPONSIVE - MOBILE
========================================= */

@media (max-width: 767px) {

    .wac-area-section {
        padding: 55px 0;
    }

    .wac-area-container {
        padding: 0 18px;
    }

    .wac-area-heading h2 {
        font-size: 32px;
        letter-spacing: -0.8px;
    }

    .wac-area-heading p {
        font-size: 14px;
        line-height: 1.8;
    }

    .wac-area-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .wac-area-card {
        min-height: 130px;
        padding: 20px 10px;
        border-radius: 12px;
    }

    .wac-area-card h3 {
        font-size: 13px;
    }

    .wac-area-icon {
        width: 30px;
        height: 30px;
        margin-bottom: 13px;
    }

    .wac-area-footer {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
    }

    .wac-area-button {
        width: 100%;
    }

}

/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 380px) {

    .wac-area-heading h2 {
        font-size: 28px;
    }

    .wac-area-card {
        min-height: 115px;
    }

    .wac-area-card h3 {
        font-size: 12px;
    }

}

@media (prefers-reduced-motion: reduce) {
    .wac-area-section *,
    .wac-area-section *::before,
    .wac-area-section *::after {
        transition: none !important;
    }
}


/* =====================================
   MODERN VEC FOOTER
===================================== */

.vec-footer {
  --vec-primary: #0754a6;
  --vec-accent: #2797ef;
  --vec-white: #ffffff;
  --vec-muted: #b8c5d7;

  position: relative;
  width: 100%;
  background: #071426 url("images/footer-bg.jpg")
    center center / cover no-repeat;
  color: var(--vec-white);
  font-family: "Poppins", Arial, sans-serif;
  overflow: hidden;
  isolation: isolate;
}

.vec-footer *,
.vec-footer *::before,
.vec-footer *::after {
  box-sizing: border-box;
}

.vec-footer-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    115deg,
    rgba(5, 17, 35, 0.80) 0%,
    rgba(7, 25, 48, 80) 0%,
    rgba(6, 22, 43, .80) 0%
  );
  z-index: -1;
}

.vec-footer-content {
  width: 100%;
  max-width: 1380px;
  padding: 0 30px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

/* =====================================
   CONTACT STRIP
===================================== */

.vec-footer-contact {
  display: grid;
  grid-template-columns: 1fr 1px 1fr;
  align-items: center;
  gap: 50px;
  padding: 35px 0;
  border-bottom: 1px solid rgba(255,255,255,.13);
}

.vec-contact-item {
  display: flex;
  align-items: center;
  gap: 20px;
  text-decoration: none !important;
  color: #fff;
  width: fit-content;
  max-width: 100%;
}

.vec-contact-item:last-child {
  justify-self: end;
}

.vec-contact-icon {
  width: 66px;
  height: 66px;
  flex-shrink: 0;
  border-radius: 18px;
  background: linear-gradient(135deg, #0754a6, #083568);
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 8px 25px rgba(0, 65, 140, .25);
  transition: all .35s ease;
}

.vec-contact-icon svg {
  width: 29px;
  height: 29px;
  color: #fff;
}

.vec-contact-item:hover .vec-contact-icon {
  transform: translateY(-4px);
  background: var(--vec-accent);
}

.vec-contact-text {
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
}

.vec-contact-text span {
  font-size: 13px;
  color: #fff703;
  font-weight: 500;
}

.vec-contact-text strong {
  color: #fff;
  font-size: 21px;
  font-weight: 600;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.vec-contact-divider {
  width: 1px;
  height: 55px;
  background: rgba(255,255,255,.15);
}

/* =====================================
   FOOTER GRID
===================================== */

.vec-footer-grid {
  display: grid;
  grid-template-columns: 1.4fr .8fr .8fr 1.15fr;
  gap: 55px;
  padding: 65px 0 70px;
  align-items: start;
}

/* =====================================
   COMPANY LOGO & DESCRIPTION
===================================== */

.vec-footer-logo {
  background: #fff;
  width: 230px;
  max-width: 100%;
  padding: 18px 24px;
  border-radius: 12px;
  margin-bottom: 24px;
  box-shadow: 0 12px 35px rgba(0,0,0,.15);
}

.vec-footer-logo img {
  display: block;
  width: 100%;
  max-height: 150px;
  height: auto;
  object-fit: contain;
}

.vec-footer-about p {
  font-size: 13.5px;
  font-weight: 400;
  line-height: 1.95;
  color: #ffffff;
  margin: 0;
  max-width: 310px;
  font-family: "Outfit", sans-serif;
}

.vec-footer-accent {
  width: 48px;
  height: 3px;
  background: var(--vec-accent);
  margin-top: 23px;
  border-radius: 5px;
}

/* =====================================
   FOOTER HEADINGS
===================================== */

.vec-footer-column h3 {
  position: relative;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.4;
  color: #fff;
  margin: 0 0 35px;
  padding-bottom: 16px;
  text-transform: uppercase;
  letter-spacing: .5px;
  font-family: "Outfit", sans-serif;
}

.vec-footer-column h3::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 42px;
  height: 3px;
  background: var(--vec-accent);
  border-radius: 5px;
}

/* =====================================
   FOOTER LINKS
===================================== */

.vec-footer-links {
  list-style: none;
  padding: 0;
  margin: 0;
  font-family: "Outfit", sans-serif;
}

.vec-footer-links li {
  margin-bottom: 17px;
}

.vec-footer-links a {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  color: #ffffff;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  text-decoration: none !important;
  transition: all .3s ease;
  text-transform: uppercase;
}

.vec-footer-links a::before {
  content: "›";
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 50%;
  color: var(--vec-accent);
  font-size: 18px;
  line-height: 1;
  transition: all .3s ease;
}

.vec-footer-links a:hover {
  color: #fff;
  transform: translateX(5px);
}

.vec-footer-links a:hover::before {
  background: var(--vec-primary);
  border-color: var(--vec-primary);
  color: #fff;
}

/* =====================================
   SOCIAL SECTION
===================================== */

.vec-social-intro {
  color: #ffffff;
  font-size: 15px;
  line-height: 25px;
  margin: -10px 0 22px;
  font-family: "Outfit", sans-serif;
}

.vec-social-icons {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 11px;
  margin-bottom: 28px;
}

.vec-social-btn {
  width: 43px;
  height: 43px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 12px;
  background: rgba(255,255,255,.07);
  color: #fff;
  text-decoration: none !important;
  transition: all .3s ease;
}

.vec-social-btn svg {
  width: 20px;
  height: 20px;
}

.vec-social-btn:hover {
  background: var(--vec-primary);
  color: #fff;
  border-color: var(--vec-primary);
  transform: translateY(-4px);
  box-shadow: 0 8px 18px rgba(0,75,170,.3);
}

/* =====================================
   GOOGLE REVIEW CARD
===================================== */

.vec-google-review {
  display: flex;
  align-items: center;
  gap: 14px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.12);
  padding: 17px;
  border-radius: 14px;
  max-width: 310px;
  transition: all .3s ease;
}

.vec-google-review:hover {
  background: rgba(255,255,255,.11);
  transform: translateY(-3px);
}

.vec-google-symbol img{
  width: 51px;
  height: 51px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border-radius: 10px;
  font-family: Arial, sans-serif;
  font-size: 34px;
  font-weight: 800;
  color: #4285f4;
  letter-spacing: -3px;
      padding: 6px;
}

.vec-review-details {
  min-width: 0;
}

.vec-review-top {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 4px;
}

.vec-review-top strong {
  font-size: 26px;
  color: #fff;
  font-weight: 700;
  line-height: 1.2;
}

.vec-review-stars {
  color: #ffca28;
  font-size: 15px;
  letter-spacing: 1px;
  white-space: nowrap;
}

.vec-review-caption {
  font-size: 11px;
  color: #ffffff;
}

/* =====================================
   COPYRIGHT
===================================== */

.vec-footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 23px 0;
  border-top: 1px solid rgba(255,255,255,.13);
}

.vec-footer-bottom p {
  font-size: 14px;
  color: #ffffff;
  line-height: 1.7;
  margin: 0;
  font-family: "Outfit", sans-serif;
}

.vec-footer-bottom a {
  color: #fff;
  font-weight: 600;
  text-decoration: none !important;
  transition: color .3s ease;
}

.vec-footer-bottom a:hover {
  color: var(--vec-accent);
}

/* =====================================
   TABLET RESPONSIVE
===================================== */

@media (max-width: 1199px) {
  .vec-footer-grid {
    grid-template-columns: 1.2fr 1fr 1fr;
    gap: 40px;
  }

  .vec-footer-social-column {
    grid-column: 1 / -1;
  }

  .vec-footer-contact {
    gap: 25px;
  }

  .vec-contact-text strong {
    font-size: 18px;
  }
}

@media (max-width: 767px) {
  .vec-footer-content {
    padding: 0 20px;
  }

  .vec-footer-contact {
    grid-template-columns: 1fr;
    gap: 22px;
    padding: 30px 0;
  }

  .vec-contact-divider {
    width: 100%;
    height: 1px;
  }

  .vec-contact-item:last-child {
    justify-self: start;
  }

  .vec-contact-icon {
    width: 55px;
    height: 55px;
    border-radius: 14px;
  }

  .vec-contact-icon svg {
    width: 25px;
    height: 25px;
  }

  .vec-contact-text strong {
    font-size: 17px;
  }

  .vec-footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 40px 25px;
    padding: 45px 0;
  }

  .vec-footer-about {
    grid-column: 1 / -1;
  }

  .vec-footer-social-column {
    grid-column: 1 / -1;
  }

  .vec-footer-column h3 {
    font-size: 15px;
    margin-bottom: 25px;
  }

  .vec-footer-links li {
    margin-bottom: 15px;
  }

  .vec-footer-bottom {
    flex-direction: column;
    text-align: center;
    gap: 8px;
    padding: 22px 0;
  }
}

/* =====================================
   SMALL MOBILE
===================================== */

@media (max-width: 480px) {
  .vec-footer-grid {
    grid-template-columns: 1fr;
    gap: 35px;
  }

  .vec-footer-about,
  .vec-footer-social-column {
    grid-column: auto;
  }

  .vec-footer-logo {
    width: 205px;
  }

  .vec-footer-column h3 {
    margin-bottom: 22px;
  }

  .vec-contact-item {
    gap: 14px;
  }

  .vec-contact-text strong {
    font-size: 16px;
  }

  .vec-google-review {
    max-width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .vec-footer *,
  .vec-footer *::before,
  .vec-footer *::after {
    transition: none !important;
  }
}


/* ==========================================
   MODERN PREMIUM RENOVATION HERO
========================================== */

.wa-premium-hero {
    position: relative;
    width: 100%;
    min-height: 720px;
    height: 90vh;
    max-height: 950px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    isolation: isolate;
    background: #111c2a;
    font-family: "Arial", sans-serif;
}

.wa-premium-hero *,
.wa-premium-hero *::before,
.wa-premium-hero *::after {
    box-sizing: border-box;
}

/* BACKGROUND IMAGE */

.wa-premium-bg {
    position: absolute;
    inset: 0;
    z-index: -2;
    background-image: url("images/renovation-banner.jpg");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    transform: scale(1);
    transition: transform 8s ease;
}

.wa-premium-hero:hover .wa-premium-bg {
    transform: scale(1.045);
}

/* GRADIENT OVERLAY */

.wa-premium-overlay {
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        linear-gradient(
            90deg,
            rgba(8, 18, 30, 0.83) 0%,
            rgba(8, 18, 30, 0.62) 45%,
            rgba(8, 18, 30, 0.35) 100%
        ),
        linear-gradient(
            0deg,
            rgba(5, 13, 23, 0.45),
            transparent 45%
        );
}

/* MAIN CONTAINER */

.wa-premium-container {
    position: relative;
    width: 100%;
    max-width: 1380px;
    padding: 100px 40px;
    margin: 0 auto;
    z-index: 2;
}

/* CONTENT */

.wa-premium-content {
    max-width: 900px;
    animation: waPremiumFade 1s ease both;
}

/* EYEBROW */

.wa-premium-eyebrow {
    display: flex;
    align-items: center;
    gap: 14px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: 28px;
}

.wa-premium-line {
    display: block;
    width: 38px;
    height: 2px;
    background: #ffffff;
    flex-shrink: 0;
}

/* MAIN TITLE */

.wa-premium-title {
    color: #ffffff;
    font-size: clamp(44px, 5.3vw, 82px);
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: -2px;
    margin: 0 0 26px;
    max-width: 1000px;
}

.wa-premium-title span {
    display: block;
    color: #4eadff;
}

/* DESCRIPTION */

.wa-premium-description {
    color: rgba(255,255,255,0.84);
    font-size: 17px;
    font-weight: 400;
    line-height: 1.9;
    max-width: 610px;
    margin: 0 0 38px;
}

/* BUTTONS */

.wa-premium-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 32px;
}

.wa-premium-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    padding: 18px 30px;
    background: #071e38;
    color: #ffffff;
    text-decoration: none;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.6px;
    border: 1px solid #071e38;
    border-radius: 3px;
    transition: all 0.3s ease;
}

.wa-premium-btn span {
    font-size: 20px;
    font-weight: 400;
    transition: transform 0.3s ease;
}

.wa-premium-btn:hover,
.wa-premium-btn:focus-visible {
    background: #ffffff;
    border-color: #ffffff;
    color: #111c2a;
    text-decoration: none;
    transform: translateY(-3px);
}

.wa-premium-btn:hover span {
    transform: translate(3px, -3px);
}

/* SECONDARY LINK */

.wa-premium-text-link {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    color: #ffffff;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.5px;
    text-decoration: none;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(255,255,255,0.55);
    transition: all 0.3s ease;
}

.wa-premium-text-link span {
    font-size: 19px;
    transition: transform 0.3s ease;
}

.wa-premium-text-link:hover,
.wa-premium-text-link:focus-visible {
    color: #e6b66c;
    border-color: #e6b66c;
    text-decoration: none;
}

.wa-premium-text-link:hover span {
    transform: translateX(5px);
}

/* BOTTOM DETAIL */

.wa-premium-bottom {
    position: absolute;
    bottom: 36px;
    left: max(40px, calc((100% - 1300px) / 2));
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 14px;
    color: rgba(255,255,255,0.75);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 2px;
}

.wa-premium-bottom-line {
    width: 45px;
    height: 1px;
    background: #e6b66c;
}

/* ENTRANCE ANIMATION */

@keyframes waPremiumFade {
    from {
        opacity: 0;
        transform: translateY(28px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ==========================================
   TABLET RESPONSIVE
========================================== */

@media (max-width: 991px) {
    .wa-premium-hero {
        min-height: 620px;
        height: 75vh;
    }

    .wa-premium-container {
        padding: 90px 30px;
    }

    .wa-premium-title {
        font-size: clamp(42px, 6vw, 65px);
        letter-spacing: -1px;
    }

    .wa-premium-description {
        font-size: 16px;
        max-width: 550px;
    }

    .wa-premium-bottom {
        left: 30px;
    }
}

/* ==========================================
   MOBILE RESPONSIVE
========================================== */

@media (max-width: 767px) {
    .wa-premium-hero {
        min-height: 600px;
        height: auto;
        max-height: none;
    }

    .wa-premium-bg {
        background-position: 58% center;
    }

    .wa-premium-overlay {
        background: linear-gradient(
            90deg,
            rgba(8,18,30,0.88),
            rgba(8,18,30,0.62)
        );
    }

    .wa-premium-container {
        padding: 105px 22px 115px;
    }

    .wa-premium-eyebrow {
        font-size: 10px;
        letter-spacing: 1.6px;
        gap: 10px;
        margin-bottom: 22px;
    }

    .wa-premium-line {
        width: 25px;
    }

    .wa-premium-title {
        font-size: clamp(35px, 8vw, 48px);
        line-height: 1.18;
        letter-spacing: -0.8px;
        margin-bottom: 22px;
    }

    .wa-premium-description {
        font-size: 14px;
        line-height: 1.85;
        margin-bottom: 30px;
    }

    .wa-premium-actions {
        gap: 24px;
    }

    .wa-premium-btn {
        padding: 16px 23px;
        font-size: 12px;
    }

    .wa-premium-bottom {
        bottom: 28px;
        left: 22px;
        font-size: 9px;
        letter-spacing: 1.2px;
    }

    .wa-premium-bottom-line {
        width: 25px;
    }
}

/* SMALL MOBILE */

@media (max-width: 400px) {
    .wa-premium-title {
        font-size: 34px;
    }

    .wa-premium-actions {
        align-items: flex-start;
        flex-direction: column;
        gap: 22px;
    }
}

/* ACCESSIBILITY */

@media (prefers-reduced-motion: reduce) {
    .wa-premium-content {
        animation: none;
    }

    .wa-premium-bg,
    .wa-premium-btn,
    .wa-premium-btn span,
    .wa-premium-text-link,
    .wa-premium-text-link span {
        transition: none;
    }

    .wa-premium-hero:hover .wa-premium-bg {
        transform: none;
    }
}
/*========================================
    MODERN INNER BANNER / BREADCRUMB
========================================*/

.inn_bedcame {
    position: relative;
    width: 100%;
    float: left;

    background-position: center center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-attachment: fixed;

    margin-top: -181px;

    padding: 270px 40px 100px;

    overflow: hidden;
    isolation: isolate;
}


/* Premium dark overlay */
.inn_bedcame::before {
    content: "";
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(8, 13, 18, 0.88) 0%,
            rgba(8, 13, 18, 0.68) 45%,
            rgba(8, 13, 18, 0.30) 100%
        );

    z-index: -2;
}


/* Subtle bottom gradient */
.inn_bedcame::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;

    width: 100%;
    height: 120px;

    background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.35),
        transparent
    );

    z-index: -1;
    pointer-events: none;
}


/* Banner Content */
.inn_bedcame_content {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;

    display: flex;
    flex-direction: column;
    align-items: center;

    text-align: center;

    position: relative;
    z-index: 2;
}


/* Small Heading */
.banner_subtitle {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-family: "Outfit", sans-serif;
    font-size: 13px;
    line-height: 1;
    font-weight: 700;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 4px;
    margin-bottom: 20px;
}


/* Decorative line */
.banner_subtitle::before,
.banner_subtitle::after {
    content: "";
    width: 35px;
    height: 2px;
    background: #ffffff;
    opacity: 0.75;
}


/* Main Heading */
.inn_bedcame h1 {
    font-family: "Outfit", sans-serif;
    font-size: 52px;
    line-height: 1.05;
    color: #ffffff;
    font-weight: 500;
    float: none;
    width: auto;
    text-align: center;
    margin: 0 0 24px;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-shadow:
        0 4px 15px rgba(0, 0, 0, 0.30),
        0 1px 2px rgba(0, 0, 0, 0.40);
}


/* Breadcrumb */
.breadcrumb_custom {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;

    gap: 12px;

    font-family: "League Spartan", sans-serif;
    font-size: 15px;
    font-weight: 500;

    color: rgba(255, 255, 255, 0.75);

    padding: 11px 22px;

    background: rgba(255, 255, 255, 0.08);

    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 50px;

    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}


/* Breadcrumb Link */
.breadcrumb_custom a {
    color: #ffffff;
    text-decoration: none;
    font-weight: 600;

    transition: all 0.3s ease;
}


.breadcrumb_custom a:hover {
    opacity: 0.7;
}


/* Breadcrumb Separator */
.breadcrumb_separator {
    color: rgba(255, 255, 255, 0.45);
}


/*========================================
    EXISTING BUTTON - IMPROVED
========================================*/

.inn_bedcame .getquate2 {
    font-family: "League Spartan", sans-serif;

    font-size: 15px;
    font-weight: 700;

    background: #ffffff;

    border: 2px solid #ffffff;

    color: #111111;

    padding: 14px 30px;

    border-radius: 4px;

    text-transform: uppercase;
    text-decoration: none;

    letter-spacing: 1px;

    transition:
        transform 0.3s ease,
        background 0.3s ease,
        color 0.3s ease,
        box-shadow 0.3s ease;

    float: none;

    display: inline-block;

    margin-top: 25px;
}


.inn_bedcame .getquate2:hover {
    background: transparent;
    color: #ffffff;

    transform: translateY(-3px);

    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.20);
}


/*========================================
    TABLET
========================================*/

@media (max-width: 991px) {

    .inn_bedcame {
        background-attachment: scroll;

        margin-top: -140px;

        padding: 230px 30px 85px;
    }

    .inn_bedcame h1 {
        font-size: clamp(45px, 8vw, 65px);
    }

}


/*========================================
    MOBILE
========================================*/

@media (max-width: 767px) {

    .inn_bedcame {
        background-attachment: scroll;

        margin-top: -110px;

        padding: 190px 20px 65px;

        min-height: 420px;

        display: flex;
        align-items: flex-end;
    }

    .inn_bedcame::before {
        background:
            linear-gradient(
                to bottom,
                rgba(7, 11, 15, 0.40) 0%,
                rgba(7, 11, 15, 0.78) 70%,
                rgba(7, 11, 15, 0.92) 100%
            );
    }

    .inn_bedcame_content {
        align-items: center;
    }

    .banner_subtitle {
        font-size: 11px;
        letter-spacing: 2.5px;
        margin-bottom: 15px;
    }

    .banner_subtitle::before,
    .banner_subtitle::after {
        width: 20px;
    }

    .inn_bedcame h1 {
        font-size: 42px;
        line-height: 1.05;

        margin-bottom: 20px;
    }

    .breadcrumb_custom {
        font-size: 13px;

        padding: 9px 17px;

        gap: 8px;
    }

}


/*========================================
    SMALL MOBILE
========================================*/

@media (max-width: 480px) {

    .inn_bedcame {
        padding-left: 15px;
        padding-right: 15px;
        min-height: 390px;
    }

    .inn_bedcame h1 {
        font-size: 36px;
    }

    .banner_subtitle {
        letter-spacing: 2px;
    }

}


/* Accessibility - Reduced Motion */
@media (prefers-reduced-motion: reduce) {

    .inn_bedcame *,
    .inn_bedcame *::before,
    .inn_bedcame *::after {
        transition: none !important;
    }

}

/* =========================================
   VEC ENGINEERING - PREMIUM ABOUT SECTION
========================================= */

.vec-about-section {
    --vec-navy: #061d3b;
    --vec-blue: #103c77;
    --vec-royal: #1b5bab;
    --vec-silver: #dce3ec;
    width: 100%;
    padding: 100px 0;
    font-family: 'Poppins', sans-serif;
    overflow: hidden;
}

.vec-about-section *,
.vec-about-section *::before,
.vec-about-section *::after {
    box-sizing: border-box;
}

.vec-about-container {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 25px;
    display: grid;
    grid-template-columns: 1fr 1.05fr;
    gap: 85px;
    align-items: center;
}

/* =========================================
   IMAGE DESIGN
========================================= */

.vec-about-visual {
    position: relative;
    min-height: 570px;
    padding: 0 40px 45px 0;
}

.vec-about-image-main {
    position: relative;
    width: 100%;
    height: 515px;
    border-radius: 20px 100px 20px 20px;
    overflow: hidden;
    z-index: 2;
    box-shadow: 0 20px 55px rgba(6,29,59,.12);
}

.vec-about-image-main img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .7s ease;
}

.vec-about-image-main:hover img {
    transform: scale(1.06);
}

/* SECONDARY IMAGE */

.vec-about-image-small {
    position: absolute;
    width: 235px;
    height: 220px;
    bottom: 0;
    right: 0;
    border: 7px solid #fff;
    border-radius: 18px;
    overflow: hidden;
    z-index: 4;
    box-shadow: 0 15px 40px rgba(0,0,0,.15);
}

.vec-about-image-small img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* FLOATING CARD */

.vec-about-floating-card {
    position: absolute;
    top: 35px;
    left: -25px;
    z-index: 5;
    background: #ffffff;
    padding: 18px 22px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    gap: 12px;
    box-shadow: 0 12px 35px rgba(0,0,0,.12);
    animation: vecFloat 4s ease-in-out infinite;
}

.vec-floating-icon {
    width: 45px;
    height: 45px;
    border-radius: 10px;
    background: var(--vec-blue);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 23px;
    font-weight: 700;
    flex-shrink: 0;
}

.vec-about-floating-card strong {
    display: block;
    color: var(--vec-navy);
    font-size: 14px;
    font-weight: 700;
}

.vec-about-floating-card span {
    display: block;
    color: #788493;
    font-size: 11px;
    margin-top: 4px;
}

.vec-about-image-decoration {
    position: absolute;
    width: 75%;
    height: 75%;
    border: 2px solid rgba(27,91,171,.16);
    border-radius: 25px 100px 25px 25px;
    top: -20px;
    right: 20px;
    z-index: 1;
}

/* =========================================
   CONTENT DESIGN
========================================= */

.vec-about-content {
    position: relative;
}

.vec-about-eyebrow {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    color: var(--vec-royal);
    margin-bottom: 22px;
}

.vec-about-line {
    width: 35px;
    height: 3px;
    background: var(--vec-royal);
    border-radius: 3px;
}

.vec-about-content h2 {
    font-size: clamp(30px, 3.1vw, 45px);
    font-weight: 800;
    line-height: 1.22;
    color: var(--vec-navy);
    letter-spacing: -.8px;
    margin: 0 0 25px;
}

.vec-about-content h2 span {
    color: var(--vec-royal);
}

.vec-about-heading-line {
    width: 75px;
    height: 4px;
    background: linear-gradient(
        90deg,
        var(--vec-royal),
        var(--vec-silver)
    );
    border-radius: 4px;
    margin-bottom: 27px;
}

.vec-about-intro {
    font-size: 15px;
    line-height: 1.95;
    color: #49596d;
    margin-bottom: 15px;
}

.vec-about-intro strong {
    color: var(--vec-navy);
    font-weight: 700;
}

.vec-about-description {
    font-size: 14px;
    line-height: 1.95;
    color: #68778b;
    margin-bottom: 30px;
}

/* =========================================
   FEATURE GRID
========================================= */

.vec-about-features {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
    margin-bottom: 35px;
}

.vec-about-feature {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 15px;
    border-radius: 12px;
    background: #ffffff;
    border: 1px solid #e9edf4;
    transition: all .3s ease;
}

.vec-about-feature:hover {
    transform: translateY(-5px);
    border-color: #b9cee9;
    box-shadow: 0 12px 25px rgba(6,29,59,.08);
}

.vec-feature-icon {
    width: 39px;
    height: 39px;
    min-width: 39px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #eaf2fc;
    color: var(--vec-royal);
    border-radius: 9px;
    font-size: 19px;
    font-weight: 700;
}

.vec-about-feature h4 {
    margin: 0 0 5px;
    font-size: 13px;
    line-height: 1.4;
    color: var(--vec-navy);
    font-weight: 700;
}

.vec-about-feature p {
    margin: 0;
    color: #7a8798;
    font-size: 11px;
    line-height: 1.6;
}

/* =========================================
   CTA AREA
========================================= */

.vec-about-bottom {
    display: flex;
    align-items: center;
    gap: 25px;
    flex-wrap: wrap;
}

.vec-about-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 25px;
    padding: 17px 25px;
    background: linear-gradient(
        135deg,
        #0c3265,
        #1b5bab
    );
    color: #ffffff;
    text-decoration: none;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .5px;
    border-radius: 7px;
    transition: all .3s ease;
    box-shadow: 0 10px 25px rgba(27,91,171,.2);
}

.vec-about-btn span {
    font-size: 20px;
    line-height: 1;
    transition: transform .3s ease;
}

.vec-about-btn:hover {
    background: var(--vec-navy);
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0 15px 30px rgba(6,29,59,.22);
}

.vec-about-btn:hover span {
    transform: translate(3px,-3px);
}

.vec-about-trust {
    display: flex;
    align-items: center;
    gap: 9px;
    color: var(--vec-navy);
    font-size: 12px;
    font-weight: 600;
}

.vec-trust-check {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #e5effb;
    color: var(--vec-royal);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
}

/* =========================================
   FLOATING ANIMATION
========================================= */

@keyframes vecFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-9px);
    }
}

/* =========================================
   RESPONSIVE - TABLET
========================================= */

@media (max-width: 1100px) {

    .vec-about-container {
        gap: 45px;
    }

    .vec-about-visual {
        min-height: 510px;
    }

    .vec-about-image-main {
        height: 455px;
    }

    .vec-about-image-small {
        width: 195px;
        height: 185px;
    }

    .vec-about-content h2 {
        font-size: 34px;
    }

    .vec-about-features {
        gap: 10px;
    }

    .vec-about-feature {
        padding: 12px;
    }
}

/* =========================================
   RESPONSIVE - MOBILE
========================================= */

@media (max-width: 767px) {

    .vec-about-section {
        padding: 60px 0;
    }

    .vec-about-container {
        grid-template-columns: 1fr;
        gap: 45px;
        padding: 0 20px;
    }

    .vec-about-visual {
        min-height: 430px;
        padding: 0 20px 35px 0;
    }

    .vec-about-image-main {
        height: 390px;
        border-radius: 15px 65px 15px 15px;
    }

    .vec-about-image-small {
        width: 155px;
        height: 145px;
        border-width: 5px;
    }

    .vec-about-floating-card {
        top: 20px;
        left: 8px;
        padding: 11px 13px;
    }

    .vec-floating-icon {
        width: 35px;
        height: 35px;
        font-size: 18px;
    }

    .vec-about-floating-card strong {
        font-size: 11px;
    }

    .vec-about-floating-card span {
        font-size: 9px;
    }

    .vec-about-content h2 {
        font-size: 32px;
    }

    .vec-about-features {
        gap: 12px;
    }

    .vec-about-bottom {
        gap: 18px;
    }
}

@media (max-width: 480px) {

    .vec-about-visual {
        min-height: 355px;
    }

    .vec-about-image-main {
        height: 320px;
    }

    .vec-about-image-small {
        width: 125px;
        height: 120px;
    }

    .vec-about-content h2 {
        font-size: 28px;
    }

    .vec-about-features {
        grid-template-columns: 1fr;
    }

    .vec-about-btn {
        width: 100%;
        gap: 15px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .vec-about-floating-card {
        animation: none;
    }

    .vec-about-section *,
    .vec-about-section *::before,
    .vec-about-section *::after {
        transition: none;
    }
}

/* =========================================
   VEC MISSION & VISION SECTION
========================================= */

.vec-mv-section {
    --vec-navy: #061d3b;
    --vec-blue: #103c77;
    --vec-royal: #1b5bab;
    --vec-silver: #dce3ec;
    width: 100%;
    padding: 100px 0;
    font-family: 'Poppins', sans-serif;
    position: relative;
    overflow: hidden;
}

.vec-mv-section *,
.vec-mv-section *::before,
.vec-mv-section *::after {
    box-sizing: border-box;
}

.vec-mv-container {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 25px;
}

/* =========================================
   SECTION HEADING
========================================= */

.vec-mv-heading {
    max-width: 750px;
    margin: 0 auto 55px;
    text-align: center;
}

.vec-mv-subtitle {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: var(--vec-royal);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 18px;
}

.vec-mv-subtitle span {
    width: 30px;
    height: 2px;
    background: var(--vec-royal);
}

.vec-mv-heading h2 {
    font-size: clamp(30px, 3.2vw, 44px);
    font-weight: 800;
    color: var(--vec-navy);
    line-height: 1.25;
    letter-spacing: -0.8px;
    margin: 0 0 20px;
}

.vec-mv-heading h2 span {
    color: var(--vec-royal);
}

.vec-mv-heading p {
    font-size: 15px;
    line-height: 1.9;
    color: #69788b;
    margin: 0;
}

/* =========================================
   GRID LAYOUT
========================================= */

.vec-mv-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px;
    align-items: stretch;
}

/* =========================================
   COMMON CARD STYLE
========================================= */

.vec-mv-card {
    position: relative;
    border-radius: 20px;
    padding: 45px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 490px;
    transition: transform .35s ease,
                box-shadow .35s ease;
}

.vec-mv-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 25px 55px rgba(6,29,59,.13);
}

/* CARD NUMBER */

.vec-mv-card-number {
    position: absolute;
    top: -28px;
    right: 20px;
    font-size: 145px;
    line-height: 1;
    font-weight: 800;
    opacity: .06;
    pointer-events: none;
}

/* =========================================
   MISSION CARD
========================================= */

.vec-mv-mission {
    background: linear-gradient(
        135deg,
        #103c77 0%,
        #061d3b 100%
    );
    color: #ffffff;
    box-shadow: 0 15px 45px rgba(6,29,59,.15);
}

.vec-mv-mission::before {
    content: "";
    position: absolute;
    width: 250px;
    height: 250px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 50%;
    right: -100px;
    bottom: -100px;
}

.vec-mv-mission .vec-mv-card-number {
    color: #ffffff;
}

/* =========================================
   VISION CARD
========================================= */

.vec-mv-vision {
    background: #ffffff;
    border: 1px solid #e1e9f4;
    color: var(--vec-navy);
    box-shadow: 0 12px 35px rgba(6,29,59,.04);
}

.vec-mv-vision::before {
    content: "";
    position: absolute;
    width: 250px;
    height: 250px;
    border: 1px solid rgba(27,91,171,.08);
    border-radius: 50%;
    right: -100px;
    bottom: -100px;
}

.vec-mv-vision .vec-mv-card-number {
    color: var(--vec-blue);
}

/* =========================================
   FONT AWESOME ICON BOX
========================================= */

.vec-mv-icon {
    width: 76px;
    height: 76px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 32px;
    position: relative;
    z-index: 2;
    transition: transform .35s ease;
}

.vec-mv-card:hover .vec-mv-icon {
    transform: rotate(-6deg) scale(1.07);
}

.vec-mv-icon i {
    font-size: 32px;
}

.vec-mv-mission .vec-mv-icon {
    background: rgba(255,255,255,.13);
    border: 1px solid rgba(255,255,255,.15);
    color: #ffffff;
}

.vec-mv-vision .vec-mv-icon {
    background: #eaf2fc;
    color: var(--vec-royal);
}

/* =========================================
   CARD CONTENT
========================================= */

.vec-mv-card-content {
    position: relative;
    z-index: 2;
    flex-grow: 1;
}

.vec-mv-label {
    display: block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 12px;
}

.vec-mv-mission .vec-mv-label {
    color: #a9c8ef;
}

.vec-mv-vision .vec-mv-label {
    color: var(--vec-royal);
}

.vec-mv-card h3 {
    font-size: 32px;
    font-weight: 800;
    line-height: 1.3;
    margin: 0 0 18px;
}

.vec-mv-mission h3 {
    color: #ffffff;
}

.vec-mv-vision h3 {
    color: var(--vec-navy);
}

.vec-mv-line {
    width: 55px;
    height: 4px;
    border-radius: 5px;
    margin-bottom: 25px;
}

.vec-mv-mission .vec-mv-line {
    background: #8ab9f4;
}

.vec-mv-vision .vec-mv-line {
    background: var(--vec-royal);
}

.vec-mv-card p {
    font-size: 14px;
    line-height: 1.95;
    margin: 0 0 15px;
}

.vec-mv-mission p {
    color: #d7e5f6;
}

.vec-mv-vision p {
    color: #69788b;
}

/* =========================================
   CARD FOOTER
========================================= */

.vec-mv-card-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    padding-top: 25px;
    margin-top: 25px;
    border-top: 1px solid;
    position: relative;
    z-index: 2;
}

.vec-mv-card-footer span {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    font-weight: 600;
}

.vec-mv-card-footer span i {
    font-size: 17px;
}

.vec-mv-card-footer > i {
    font-size: 19px;
    transition: transform .3s ease;
}

.vec-mv-card:hover .vec-mv-card-footer > i {
    transform: translate(4px, -4px);
}

.vec-mv-mission .vec-mv-card-footer {
    border-color: rgba(255,255,255,.18);
    color: #ffffff;
}

.vec-mv-vision .vec-mv-card-footer {
    border-color: #e5ebf3;
    color: var(--vec-blue);
}

/* =========================================
   RESPONSIVE TABLET
========================================= */

@media (max-width: 991px) {

    .vec-mv-section {
        padding: 75px 0;
    }

    .vec-mv-grid {
        gap: 20px;
    }

    .vec-mv-card {
        padding: 30px;
    }

    .vec-mv-card h3 {
        font-size: 28px;
    }
}

/* =========================================
   RESPONSIVE MOBILE
========================================= */

@media (max-width: 767px) {

    .vec-mv-section {
        padding: 60px 0;
    }

    .vec-mv-container {
        padding: 0 20px;
    }

    .vec-mv-heading {
        margin-bottom: 35px;
    }

    .vec-mv-heading h2 {
        font-size: 30px;
    }

    .vec-mv-heading p {
        font-size: 14px;
    }

    .vec-mv-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .vec-mv-card {
        min-height: auto;
        padding: 30px 25px;
        border-radius: 15px;
    }

    .vec-mv-icon {
        width: 65px;
        height: 65px;
        margin-bottom: 25px;
    }

    .vec-mv-icon i {
        font-size: 27px;
    }

    .vec-mv-card h3 {
        font-size: 27px;
    }

    .vec-mv-card-number {
        font-size: 110px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .vec-mv-card,
    .vec-mv-icon,
    .vec-mv-card-footer > i {
        transition: none;
    }
}

/* =========================================
   VEC PREMIUM TESTIMONIAL SECTION
========================================= */

.vec-testimonial-section {
    --vec-navy: #061d3b;
    --vec-blue: #103c77;
    --vec-royal: #1b5bab;

    width: 100%;
    padding: 100px 0;
    background: linear-gradient(
        135deg,
        #f4f7fb 0%,
        #ffffff 100%
    );
    font-family: 'Poppins', sans-serif;
    overflow: hidden;
}

.vec-testimonial-section *,
.vec-testimonial-section *::before,
.vec-testimonial-section *::after {
    box-sizing: border-box;
}

.vec-testimonial-container {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 25px;
    position: relative;
}

/* SECTION HEADING */

.vec-testimonial-heading {
    max-width: 720px;
    margin: 0 auto 55px;
    text-align: center;
}

.vec-testimonial-subtitle {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    color: var(--vec-royal);
    margin-bottom: 18px;
}

.vec-testimonial-subtitle span {
    width: 30px;
    height: 2px;
    background: var(--vec-royal);
}

.vec-testimonial-heading h2 {
    font-size: clamp(30px, 3.2vw, 44px);
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: -.8px;
    color: var(--vec-navy);
    margin: 0 0 20px;
}

.vec-testimonial-heading h2 span {
    color: var(--vec-royal);
}

.vec-testimonial-heading p {
    font-size: 15px;
    line-height: 1.9;
    color: #69788b;
    margin: 0;
}

/* SLIDER */

.vec-testimonial-slider {
    width: 100%;
    padding: 15px 5px 50px;
    overflow: hidden;
}

.vec-testimonial-slider .swiper-wrapper {
    align-items: stretch;
}

.vec-testimonial-slider .swiper-slide {
    height: auto;
}

/* TESTIMONIAL CARD */

.vec-testimonial-card {
    background: #ffffff;
    border: 1px solid #e6edf5;
    border-radius: 18px;
    padding: 35px;
    height: 100%;
    min-height: 315px;
    display: flex;
    flex-direction: column;
    position: relative;
    transition: all .35s ease;
    box-shadow: 0 8px 30px rgba(6,29,59,.04);
}

.vec-testimonial-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 35px;
    right: 35px;
    height: 3px;
    background: linear-gradient(
        90deg,
        #103c77,
        #1b5bab
    );
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .35s ease;
}

.vec-testimonial-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 45px rgba(6,29,59,.10);
    border-color: #cad9ed;
}

.vec-testimonial-card:hover::before {
    transform: scaleX(1);
}

/* TOP ICONS */

.vec-testimonial-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    margin-bottom: 25px;
}

.vec-quote-icon {
    width: 60px;
    height: 60px;
    border-radius: 13px;
    background: #eaf2fc;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--vec-royal);
}

.vec-quote-icon i {
    font-size: 27px;
}

.vec-testimonial-stars {
    display: flex;
    align-items: center;
    gap: 4px;
    color: #e9a929;
}

.vec-testimonial-stars i {
    font-size: 13px;
}

/* TESTIMONIAL TEXT */

.vec-testimonial-text {
    font-size: 14px;
    line-height: 1.95;
    color: #5c6c80;
    margin: 0 0 30px;
    flex-grow: 1;
}

/* CLIENT FOOTER */

.vec-testimonial-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-top: 23px;
    border-top: 1px solid #e9eef5;
}

.vec-client-info {
    display: flex;
    align-items: center;
    gap: 13px;
}

.vec-client-avatar {
    width: 48px;
    height: 48px;
    min-width: 48px;
    border-radius: 50%;
    background: linear-gradient(
        135deg,
        #103c77,
        #1b5bab
    );
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
}

.vec-client-avatar i {
    font-size: 18px;
}

.vec-client-info h4 {
    margin: 0 0 5px;
    font-size: 14px;
    font-weight: 700;
    color: var(--vec-navy);
}

.vec-client-info span {
    display: block;
    font-size: 11px;
    color: #7a899a;
}

.vec-verified-icon {
    font-size: 21px;
    color: var(--vec-royal);
}

/* PAGINATION */

.vec-testimonial-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 30px;
}

.vec-testimonial-pagination .swiper-pagination-bullet {
    width: 9px;
    height: 9px;
    background: #b5c4d7;
    opacity: 1;
    border-radius: 20px;
    transition: all .3s ease;
}

.vec-testimonial-pagination
.swiper-pagination-bullet-active {
    width: 30px;
    background: var(--vec-royal);
}

/* NAVIGATION BUTTONS */

.vec-testimonial-navigation {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    margin-top: 5px;
}

.vec-testimonial-prev,
.vec-testimonial-next {
    width: 46px;
    height: 46px;
    border: 1px solid #cbd9ea;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    color: var(--vec-blue);
    cursor: pointer;
    transition: all .3s ease;
}

.vec-testimonial-prev i,
.vec-testimonial-next i {
    font-size: 15px;
}

.vec-testimonial-prev:hover,
.vec-testimonial-next:hover {
    background: var(--vec-blue);
    color: #ffffff;
    border-color: var(--vec-blue);
    transform: translateY(-3px);
}

.vec-testimonial-prev.swiper-button-disabled,
.vec-testimonial-next.swiper-button-disabled {
    opacity: .35;
    cursor: not-allowed;
}

/* RESPONSIVE TABLET */

@media (max-width: 991px) {

    .vec-testimonial-section {
        padding: 75px 0;
    }

    .vec-testimonial-card {
        padding: 28px;
    }
}

/* RESPONSIVE MOBILE */

@media (max-width: 767px) {

    .vec-testimonial-section {
        padding: 60px 0;
    }

    .vec-testimonial-container {
        padding: 0 20px;
    }

    .vec-testimonial-heading {
        margin-bottom: 30px;
    }

    .vec-testimonial-heading h2 {
        font-size: 30px;
    }

    .vec-testimonial-heading p {
        font-size: 14px;
    }

    .vec-testimonial-card {
        padding: 25px;
        min-height: 290px;
    }

    .vec-quote-icon {
        width: 50px;
        height: 50px;
    }

    .vec-quote-icon i {
        font-size: 23px;
    }

    .vec-testimonial-text {
        font-size: 13px;
    }

    .vec-testimonial-prev,
    .vec-testimonial-next {
        width: 42px;
        height: 42px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .vec-testimonial-card,
    .vec-testimonial-card::before,
    .vec-testimonial-prev,
    .vec-testimonial-next {
        transition: none;
    }
}


/* =========================================
   VEC CONTACT US PAGE
========================================= */

.vec-contact-hero,
.vec-contact-info-section,
.vec-contact-main-section,
.vec-contact-map-section,
.vec-contact-cta-section {
    --vec-navy: #061d3b;
    --vec-blue: #103c77;
    --vec-royal: #1b5bab;
    --vec-silver: #dce3ec;
    font-family: 'Poppins', sans-serif;
}

.vec-contact-hero *,
.vec-contact-info-section *,
.vec-contact-main-section *,
.vec-contact-map-section *,
.vec-contact-cta-section * {
    box-sizing: border-box;
}

.vec-contact-container {
    max-width: 1320px;
    padding: 0 25px;
    margin: 0 auto;
}

/* HERO BANNER */

.vec-contact-hero {
    position: relative;
    padding: 105px 0;
    background:
        linear-gradient(
            110deg,
            rgba(6,29,59,.96),
            rgba(16,60,119,.88)
        ),
        url('images/contact-banner.jpg')
        center / cover no-repeat;
    overflow: hidden;
    display: inline-block;
    width: 100%;
}

.vec-contact-hero::after {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 50%;
    right: -100px;
    top: -120px;
    pointer-events: none;
}

.vec-contact-hero-content {
    position: relative;
    z-index: 2;
    max-width: 700px;
}

.vec-contact-breadcrumb {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #c9dcf4;
    font-size: 13px;
    margin-bottom: 25px;
}

.vec-contact-breadcrumb a {
    color: #ffffff;
    text-decoration: none;
}

.vec-contact-breadcrumb i {
    font-size: 10px;
}

.vec-contact-hero-tag {
    display: inline-block;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
    color: #bdd7f7;
    margin-bottom: 18px;
}

.vec-contact-hero h1 {
    font-size: clamp(42px, 5vw, 66px);
    line-height: 1.15;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 22px;
}

.vec-contact-hero h1 span {
    color: #a9cef8;
}

.vec-contact-hero p {
    font-size: 16px;
    line-height: 1.9;
    color: #d7e5f6;
    margin: 0;
}

/* CONTACT INFO CARDS */

.vec-contact-info-section {
    display: inline-block;
    width: 100%;
    padding: 70px 0px;
    padding-bottom: 0px;
}

.vec-contact-info-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 25px;
}

.vec-contact-info-card {
    background: #ffffff;
    border-radius: 16px;
    padding: 35px 30px;
    border: 1px solid #e7edf5;
    box-shadow: 0 15px 45px rgba(6,29,59,.10);
    transition: all .35s ease;
}

.vec-contact-info-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 22px 50px rgba(6,29,59,.15);
}

.vec-contact-info-icon {
    width: 65px;
    height: 65px;
    background: #eaf2fc;
    color: var(--vec-royal);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    margin-bottom: 25px;
}

.vec-contact-info-icon i {
    font-size: 25px;
}

.vec-contact-info-card h3 {
    font-size: 20px;
    font-weight: 700;
    color: var(--vec-navy);
    margin: 0 0 12px;
}

.vec-contact-info-card p {
    font-size: 14px;
    line-height: 1.8;
    color: #68788b;
    margin: 0 0 18px;
}

.vec-contact-info-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    font-weight: 700;
    color: var(--vec-royal);
    text-decoration: none;
}

.vec-contact-info-link:hover {
    color: var(--vec-navy);
}

/* MAIN CONTACT SECTION */

.vec-contact-main-section {
    padding: 110px 0px;
}

.vec-contact-main-grid {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 70px;
    align-items: start;
}

/* LEFT CONTENT */

.vec-contact-subtitle {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    color: var(--vec-royal);
    margin-bottom: 20px;
}

.vec-contact-subtitle span {
    width: 35px;
    height: 3px;
    background: var(--vec-royal);
}

.vec-contact-left h2 {
    font-size: clamp(30px, 3.3vw, 45px);
    font-weight: 800;
    line-height: 1.25;
    color: var(--vec-navy);
    margin: 0 0 25px;
}

.vec-contact-left h2 span {
    color: var(--vec-royal);
}

.vec-contact-description {
    font-size: 15px;
    line-height: 1.95;
    color: #69788b;
    margin: 0 0 35px;
}

/* BENEFITS */

.vec-contact-benefits {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.vec-contact-benefit {
    display: flex;
    align-items: flex-start;
    gap: 18px;
}

.vec-contact-benefit-icon {
    width: 55px;
    height: 55px;
    min-width: 55px;
    border-radius: 12px;
    background: #e6effb;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--vec-royal);
}

.vec-contact-benefit-icon i {
    font-size: 22px;
}

.vec-contact-benefit h4 {
    font-size: 16px;
    font-weight: 700;
    color: var(--vec-navy);
    margin: 0 0 8px;
}

.vec-contact-benefit p {
    font-size: 13px;
    line-height: 1.8;
    color: #718093;
    margin: 0;
}

/* HELP BOX */

.vec-contact-help-box {
    margin-top: 40px;
    padding: 25px;
    display: flex;
    gap: 17px;
    align-items: center;
    background: #ffffff;
    border-left: 4px solid var(--vec-royal);
    border-radius: 10px;
    box-shadow: 0 8px 30px rgba(6,29,59,.05);
}

.vec-contact-help-icon {
    width: 50px;
    height: 50px;
    min-width: 50px;
    background: var(--vec-blue);
    color: #ffffff;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.vec-contact-help-icon i {
    font-size: 21px;
}

.vec-contact-help-box h4 {
    font-size: 15px;
    font-weight: 700;
    color: var(--vec-navy);
    margin: 0 0 6px;
}

.vec-contact-help-box p {
    font-size: 12px;
    line-height: 1.7;
    color: #718093;
    margin: 0;
}

/* CONTACT FORM CARD */

.vec-contact-form-card {
    background: #ffffff;
    padding: 40px;
    border-radius: 20px;
    box-shadow: 0 20px 60px rgba(6,29,59,.08);
    border: 1px solid #e7edf5;
}

.vec-contact-form-heading {
    display: flex;
    align-items: center;
    gap: 16px;
    padding-bottom: 25px;
    margin-bottom: 30px;
    border-bottom: 1px solid #e9eef5;
}

.vec-contact-form-icon {
    width: 55px;
    height: 55px;
    min-width: 55px;
    border-radius: 12px;
    background: var(--vec-blue);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.vec-contact-form-icon i {
    font-size: 21px;
}

.vec-contact-form-heading h3 {
    font-size: 22px;
    font-weight: 800;
    color: var(--vec-navy);
    margin: 0 0 6px;
}

.vec-contact-form-heading p {
    font-size: 13px;
    color: #758397;
    line-height: 1.6;
    margin: 0;
}

/* FORM FIELDS */

.vec-contact-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 22px;
}

.vec-contact-full {
    grid-column: 1 / -1;
}

.vec-contact-field label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--vec-navy);
    margin-bottom: 10px;
}

.vec-contact-input-wrap {
    position: relative;
}

.vec-contact-input-wrap > i {
    position: absolute;
    top: 50%;
    left: 17px;
    transform: translateY(-50%);
    color: var(--vec-royal);
    font-size: 15px;
    pointer-events: none;
}

.vec-contact-field input,
.vec-contact-field select,
.vec-contact-field textarea {
    display: block;
    width: 100%;
    border: 1px solid #dfe6ef;
    border-radius: 8px;
    background: #f9fbfe;
    color: var(--vec-navy);
    font-family: inherit;
    font-size: 13px;
    outline: none;
    transition: all .3s ease;
}

.vec-contact-field input,
.vec-contact-field select {
    height: 52px;
    padding: 0 15px 0 45px;
}

.vec-contact-field textarea {
    padding: 17px;
    min-height: 135px;
    resize: vertical;
}

.vec-contact-field input:focus,
.vec-contact-field select:focus,
.vec-contact-field textarea:focus {
    border-color: var(--vec-royal);
    background: #ffffff;
    box-shadow: 0 0 0 3px rgba(27,91,171,.09);
}

.vec-contact-field input::placeholder,
.vec-contact-field textarea::placeholder {
    color: #9aa7b7;
}

/* SUBMIT BUTTON */

.vec-contact-submit {
    width: 100%;
    min-height: 55px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin-top: 27px;
    padding: 15px 25px;
    background: linear-gradient(
        135deg,
        #103c77,
        #1b5bab
    );
    color: #ffffff;
    border: none;
    border-radius: 8px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .5px;
    cursor: pointer;
    transition: all .3s ease;
}

.vec-contact-submit:hover {
    background: var(--vec-navy);
    transform: translateY(-2px);
    box-shadow: 0 12px 25px rgba(6,29,59,.2);
}

.vec-contact-privacy {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    text-align: center;
    color: #8491a1;
    font-size: 11px;
    line-height: 1.6;
    margin: 17px 0 0;
}

.vec-contact-privacy i {
    color: var(--vec-royal);
}

/* GOOGLE MAP SECTION */

.vec-contact-map-section {
    padding: 90px 0;
    background: #ffffff;
}

.vec-contact-map-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: 35px;
}

.vec-contact-map-heading span {
    display: block;
    color: var(--vec-royal);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 15px;
}

.vec-contact-map-heading h2 {
    font-size: 38px;
    font-weight: 800;
    color: var(--vec-navy);
    margin: 0;
}

.vec-contact-map-heading h2 strong {
    color: var(--vec-royal);
}

.vec-contact-map-heading p {
    max-width: 380px;
    color: #718093;
    font-size: 14px;
    line-height: 1.8;
    margin: 0;
}

.vec-contact-map-frame {
    width: 100%;
    height: 400px;
    overflow: hidden;
    border-radius: 18px;
    border: 1px solid #e1e9f4;
}

.vec-contact-map-frame iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.vec-contact-map-placeholder {
    height: 100%;
    background: #edf3fa;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 25px;
    color: var(--vec-blue);
}

.vec-contact-map-placeholder i {
    font-size: 45px;
    margin-bottom: 20px;
}

.vec-contact-map-placeholder h3 {
    font-size: 22px;
    margin: 0 0 10px;
}

.vec-contact-map-placeholder p {
    font-size: 14px;
    color: #718093;
}

/* CTA SECTION */

.vec-contact-cta-section {
    padding: 20px 0 90px;
    background: #ffffff;
}

.vec-contact-cta-box {
    background: linear-gradient(
        115deg,
        #061d3b,
        #103c77
    );
    border-radius: 20px;
    padding: 55px 60px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 35px;
    position: relative;
    overflow: hidden;
}

.vec-contact-cta-box::after {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 50%;
    right: -80px;
    top: -130px;
    pointer-events: none;
}

.vec-contact-cta-content {
    position: relative;
    z-index: 2;
}

.vec-contact-cta-content span {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    color: #a9cef8;
}

.vec-contact-cta-content h2 {
    font-size: clamp(25px, 3vw, 36px);
    font-weight: 800;
    color: #ffffff;
    margin: 15px 0;
}

.vec-contact-cta-content p {
    font-size: 14px;
    line-height: 1.8;
    color: #cbdcf1;
    max-width: 650px;
    margin: 0;
}

.vec-contact-cta-btn {
    position: relative;
    z-index: 2;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 25px;
    padding: 18px 25px;
    border-radius: 8px;
    background: #ffffff;
    color: var(--vec-blue);
    text-decoration: none;
    font-size: 12px;
    font-weight: 700;
    transition: all .3s ease;
}

.vec-contact-cta-btn:hover {
    background: #dceafa;
    color: var(--vec-navy);
    transform: translateY(-3px);
}

/* TABLET */

@media (max-width: 991px) {
    .vec-contact-main-grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .vec-contact-info-grid {
        gap: 15px;
    }

    .vec-contact-info-card {
        padding: 25px 20px;
    }

    .vec-contact-cta-box {
        padding: 40px;
    }
}

/* MOBILE */

@media (max-width: 767px) {
    .vec-contact-container {
        padding: 0 20px;
    }

    .vec-contact-hero {
        padding: 75px 0 100px;
    }

    .vec-contact-hero h1 {
        font-size: 42px;
    }

    .vec-contact-info-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .vec-contact-info-section {
        margin-top: -45px;
    }

    .vec-contact-info-card {
        padding: 25px;
    }

    .vec-contact-info-icon {
        width: 55px;
        height: 55px;
        margin-bottom: 15px;
    }

    .vec-contact-main-section {
        padding: 65px 0;
    }

    .vec-contact-left h2 {
        font-size: 32px;
    }

    .vec-contact-form-card {
        padding: 25px 20px;
    }

    .vec-contact-form-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .vec-contact-form-heading h3 {
        font-size: 19px;
    }

    .vec-contact-map-section {
        padding: 60px 0;
    }

    .vec-contact-map-heading {
        display: block;
    }

    .vec-contact-map-heading h2 {
        font-size: 30px;
        margin-bottom: 15px;
    }

    .vec-contact-map-frame {
        height: 300px;
    }

    .vec-contact-cta-section {
        padding-bottom: 60px;
    }

    .vec-contact-cta-box {
        padding: 35px 25px;
        flex-direction: column;
        align-items: flex-start;
    }

    .vec-contact-cta-btn {
        width: 100%;
        justify-content: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .vec-contact-info-card,
    .vec-contact-submit,
    .vec-contact-cta-btn {
        transition: none;
    }
}





/* =====================================
   VEC NEW BUILDS INTRODUCTION
===================================== */

.vec-newbuild-intro {
  --vec-navy: #061d3b;
  --vec-blue: #124c91;
  --vec-blue-light: #eaf2fc;
  --vec-silver: #d8dee7;
  --vec-text: #536174;

  width: 100%;
  padding: 100px 0;
  background: linear-gradient(
    135deg,
    #ffffff 0%,
    #ffffff 65%,
    #f4f7fb 100%
  );
  font-family: "Poppins", Arial, sans-serif;
  overflow: hidden;
}

.vec-newbuild-intro *,
.vec-newbuild-intro *::before,
.vec-newbuild-intro *::after {
  box-sizing: border-box;
}

.vec-newbuild-container {
  width: 100%;
  max-width: 1320px;
  padding: 0 24px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  gap: 85px;
  align-items: center;
}

/* =====================================
   IMAGE PANEL
===================================== */

.vec-newbuild-visual {
  position: relative;
  padding: 0 38px 65px 0;
  min-width: 0;
}

.vec-newbuild-image-main {
  width: 100%;
  height: 600px;
  border-radius: 18px 90px 18px 18px;
  overflow: hidden;
  position: relative;
  z-index: 2;
  box-shadow: 0 20px 50px rgba(6,29,59,.12);
}

.vec-newbuild-image-main img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .7s ease;
}

.vec-newbuild-image-main:hover img {
  transform: scale(1.055);
}

.vec-newbuild-image-small {
  position: absolute;
  width: 48%;
  height: 205px;
  right: 0;
  bottom: 0;
  z-index: 4;
  padding: 8px;
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 15px 45px rgba(0,0,0,.13);
}

.vec-newbuild-image-small img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 12px;
  display: block;
}

.vec-newbuild-image-label {
  position: absolute;
  left: -18px;
  bottom: 110px;
  z-index: 5;
  display: flex;
  align-items: center;
  gap: 14px;
  background: var(--vec-navy);
  color: #fff;
  padding: 20px 24px;
  border-radius: 12px;
  box-shadow: 0 15px 35px rgba(6,29,59,.25);
}

.vec-newbuild-label-icon {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,.13);
  font-size: 23px;
}

.vec-newbuild-image-label strong {
  display: block;
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 4px;
}

.vec-newbuild-image-label small {
  display: block;
  font-size: 11px;
  color: #d6e5f6;
}

.vec-newbuild-decoration {
  position: absolute;
  width: 68%;
  height: 65%;
  top: -22px;
  right: 12px;
  border: 2px solid var(--vec-silver);
  border-radius: 20px 100px 20px 20px;
  z-index: 1;
}

/* =====================================
   CONTENT
===================================== */

.vec-newbuild-content {
  min-width: 0;
}

.vec-newbuild-eyebrow {
  display: flex;
  align-items: center;
  gap: 13px;
  font-size: 12px;
  font-weight: 700;
  color: var(--vec-blue);
  letter-spacing: 2px;
  margin-bottom: 22px;
}

.vec-newbuild-line {
  width: 34px;
  height: 3px;
  background: var(--vec-blue);
  border-radius: 5px;
}

.vec-newbuild-content h2 {
  font-size: clamp(32px, 3.3vw, 49px);
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: -1.5px;
  color: var(--vec-navy);
  margin: 0 0 25px;
}

.vec-newbuild-content h2 span {
  display: block;
  color: var(--vec-blue);
}

.vec-newbuild-lead {
  font-size: 16px;
  line-height: 1.85;
  color: #283c55;
  font-weight: 500;
  margin: 0 0 16px;
}

.vec-newbuild-lead strong {
  color: var(--vec-navy);
  font-weight: 700;
}

.vec-newbuild-description {
  font-size: 14px;
  line-height: 1.95;
  color: var(--vec-text);
  margin: 0 0 15px;
}

/* =====================================
   FEATURE GRID
===================================== */

.vec-newbuild-features {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px 20px;
  padding: 30px 0;
  margin-top: 12px;
  border-top: 1px solid #e6eaf0;
  border-bottom: 1px solid #e6eaf0;
}

.vec-newbuild-feature {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.vec-feature-icon {
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 12px;
  background: var(--vec-blue-light);
  color: var(--vec-blue);
  font-size: 19px;
  transition: all .3s ease;
}

.vec-newbuild-feature:hover .vec-feature-icon {
  background: var(--vec-blue);
  color: #fff;
  transform: translateY(-4px);
}

.vec-newbuild-feature h3 {
  font-size: 13px;
  line-height: 1.5;
  color: var(--vec-navy);
  font-weight: 700;
  margin: 0 0 5px;
}

.vec-newbuild-feature p {
  font-size: 12px;
  line-height: 1.65;
  color: var(--vec-text);
  margin: 0;
}

/* =====================================
   BUTTONS
===================================== */

.vec-newbuild-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 30px;
}

.vec-newbuild-btn-primary,
.vec-newbuild-btn-secondary {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 11px;
  min-height: 52px;
  padding: 14px 20px;
  border-radius: 7px;
  text-decoration: none !important;
  font-size: 12px;
  font-weight: 700;
  transition: all .3s ease;
}

.vec-newbuild-btn-primary {
  background: var(--vec-navy);
  color: #fff !important;
  border: 1px solid var(--vec-navy);
  box-shadow: 0 8px 24px rgba(6,29,59,.15);
}

.vec-newbuild-btn-primary:hover {
  background: var(--vec-blue);
  border-color: var(--vec-blue);
  transform: translateY(-3px);
}

.vec-newbuild-btn-secondary {
  background: #fff;
  border: 1px solid #cbd5e2;
  color: var(--vec-navy) !important;
}

.vec-newbuild-btn-secondary:hover {
  background: var(--vec-blue-light);
  border-color: var(--vec-blue);
  transform: translateY(-3px);
}

.vec-newbuild-btn-primary:focus-visible,
.vec-newbuild-btn-secondary:focus-visible,
.vec-newbuild-contact a:focus-visible {
  outline: 3px solid #4385d4;
  outline-offset: 4px;
}

/* =====================================
   CONTACT DETAILS
===================================== */

.vec-newbuild-contact {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 23px;
  color: var(--vec-text);
  font-size: 12px;
}

.vec-newbuild-contact i {
  color: var(--vec-blue);
}

.vec-newbuild-contact a {
  color: var(--vec-navy);
  text-decoration: none;
  font-weight: 600;
}

.vec-contact-divider {
  width: 1px;
  height: 16px;
  background: #cbd5e2;
  margin: 0 8px;
}

/* =====================================
   RESPONSIVE DESIGN
===================================== */

@media (max-width: 1199px) {
  .vec-newbuild-container {
    gap: 45px;
  }

  .vec-newbuild-image-main {
    height: 540px;
  }

  .vec-newbuild-content h2 {
    font-size: 36px;
  }
}

@media (max-width: 991px) {
  .vec-newbuild-intro {
    padding: 75px 0;
  }

  .vec-newbuild-container {
    grid-template-columns: 1fr;
    gap: 55px;
  }

  .vec-newbuild-visual {
    max-width: 650px;
    width: 100%;
    margin: 0 auto;
  }

  .vec-newbuild-image-main {
    height: 500px;
  }

  .vec-newbuild-content h2 {
    font-size: 40px;
  }
}

@media (max-width: 575px) {
  .vec-newbuild-intro {
    padding: 55px 0;
  }

  .vec-newbuild-container {
    padding: 0 18px;
    gap: 35px;
  }

  .vec-newbuild-visual {
    padding: 0 15px 50px 0;
  }

  .vec-newbuild-image-main {
    height: 360px;
    border-radius: 12px 50px 12px 12px;
  }

  .vec-newbuild-image-small {
    width: 48%;
    height: 135px;
    padding: 5px;
    border-radius: 10px;
  }

  .vec-newbuild-image-label {
    left: 0;
    bottom: 90px;
    padding: 12px;
    gap: 8px;
  }

  .vec-newbuild-label-icon {
    width: 36px;
    height: 36px;
    font-size: 16px;
  }

  .vec-newbuild-image-label strong {
    font-size: 11px;
  }

  .vec-newbuild-image-label small {
    font-size: 9px;
  }

  .vec-newbuild-content h2 {
    font-size: 30px;
    letter-spacing: -.7px;
  }

  .vec-newbuild-lead {
    font-size: 14px;
  }

  .vec-newbuild-description {
    font-size: 13px;
  }

  .vec-newbuild-features {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .vec-newbuild-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .vec-newbuild-btn-primary,
  .vec-newbuild-btn-secondary {
    width: 100%;
  }

  .vec-newbuild-contact {
    font-size: 11px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .vec-newbuild-intro *,
  .vec-newbuild-intro *::before,
  .vec-newbuild-intro *::after {
    transition: none !important;
    animation: none !important;
  }
}

/* =========================================
   VEC BEFORE AFTER SECTION
========================================= */

.vec-ba-section {
  --vec-navy: #061d3b;
  --vec-blue: #124c91;
  --vec-silver: #d8dee7;
  --vec-muted: #657184;

  padding: 95px 0;
  background: #f5f7fb;
  font-family: "Poppins", Arial, sans-serif;
}

.vec-ba-section *,
.vec-ba-section *::before,
.vec-ba-section *::after {
  box-sizing: border-box;
}

.vec-ba-container {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 24px;
}

/* HEADER */

.vec-ba-header {
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 65px;
  align-items: end;
  margin-bottom: 45px;
}

.vec-ba-eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;
  color: var(--vec-blue);
  margin-bottom: 18px;
}

.vec-ba-eyebrow span {
  width: 35px;
  height: 3px;
  background: var(--vec-blue);
}

.vec-ba-header h2 {
  font-size: clamp(30px, 3.5vw, 48px);
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -1px;
  color: var(--vec-navy);
  margin: 0;
}

.vec-ba-header h2 span {
  display: block;
  color: var(--vec-blue);
}

.vec-ba-header-right p {
  font-size: 14px;
  line-height: 1.95;
  color: var(--vec-muted);
  margin: 0 0 6px;
}

/* MAIN CARD */

.vec-ba-project {
  background: #fff;
  padding: 12px;
  border-radius: 22px;
  box-shadow: 0 20px 60px rgba(6,29,59,.08);
  border: 1px solid #e8edf4;
}

/* COMPARISON SLIDER */

.vec-ba-comparison {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 8.5;
  overflow: hidden;
  border-radius: 15px;
  isolation: isolate;
  --vec-position: 50%;
  background: #dfe5ed;
  user-select: none;
}

.vec-ba-after,
.vec-ba-before {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  max-width: none;
}

.vec-ba-before-wrap {
  position: absolute;
  inset: 0;
  z-index: 2;
  clip-path: inset(0 calc(100% - var(--vec-position)) 0 0);
}

.vec-ba-before {
  width: 100%;
  height: 100%;
}

/* LABELS */

.vec-ba-label {
  position: absolute;
  top: 25px;
  z-index: 5;
  padding: 10px 19px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1.5px;
  color: #fff;
  pointer-events: none;
}

.vec-ba-label-before {
  left: 25px;
  background: rgba(6,29,59,.92);
}

.vec-ba-label-after {
  right: 25px;
  background: rgba(18,76,145,.95);
}

/* DIVIDER */

.vec-ba-divider {
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--vec-position);
  width: 3px;
  background: #fff;
  z-index: 4;
  transform: translateX(-50%);
  pointer-events: none;
  box-shadow: 0 0 10px rgba(0,0,0,.18);
}

.vec-ba-handle {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 62px;
  height: 62px;
  background: var(--vec-navy);
  color: #fff;
  border: 4px solid #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: 13px;
  box-shadow: 0 8px 25px rgba(0,0,0,.25);
}

/* RANGE CONTROL */

.vec-ba-range {
  position: absolute;
  inset: 0;
  z-index: 6;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  cursor: ew-resize;
  -webkit-appearance: none;
  appearance: none;
}

.vec-ba-range:focus-visible {
  opacity: .12;
  outline: 4px solid var(--vec-blue);
  outline-offset: -4px;
}

/* PROJECT INFO */

.vec-ba-project-info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  padding: 30px 24px 20px;
}

.vec-ba-project-copy {
  max-width: 680px;
}

.vec-ba-project-tag {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--vec-blue);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  margin-bottom: 12px;
}

.vec-ba-project-copy h3 {
  font-size: 25px;
  font-weight: 800;
  color: var(--vec-navy);
  margin: 0 0 9px;
}

.vec-ba-project-copy p {
  font-size: 13px;
  line-height: 1.8;
  color: var(--vec-muted);
  margin: 0;
}

.vec-ba-project-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  flex-shrink: 0;
  padding: 16px 22px;
  background: var(--vec-navy);
  color: #fff !important;
  text-decoration: none !important;
  border-radius: 7px;
  font-size: 12px;
  font-weight: 700;
  transition: all .3s ease;
}

.vec-ba-project-btn:hover {
  background: var(--vec-blue);
  transform: translateY(-3px);
}

/* BOTTOM CTA */

.vec-ba-bottom {
  margin-top: 28px;
  padding: 23px 28px;
  background: var(--vec-navy);
  border-radius: 13px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.vec-ba-bottom-text {
  display: flex;
  align-items: center;
  gap: 17px;
}

.vec-ba-bottom-icon {
  width: 50px;
  height: 50px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(255,255,255,.12);
  color: #fff;
  font-size: 22px;
}

.vec-ba-bottom-text strong {
  display: block;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 5px;
}

.vec-ba-bottom-text p {
  font-size: 12px;
  color: #cbd7e8;
  margin: 0;
}

.vec-ba-bottom > a {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #fff !important;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none !important;
  white-space: nowrap;
}

.vec-ba-bottom > a:hover {
  color: #b6d8ff !important;
}

.vec-ba-project-btn:focus-visible,
.vec-ba-bottom a:focus-visible {
  outline: 3px solid #75b7ff;
  outline-offset: 4px;
}

/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 991px) {
  .vec-ba-section {
    padding: 75px 0;
  }

  .vec-ba-header {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .vec-ba-header h2 {
    font-size: 36px;
  }

  .vec-ba-comparison {
    aspect-ratio: 16 / 10;
  }
}

@media (max-width: 767px) {
  .vec-ba-project-info {
    flex-direction: column;
    align-items: flex-start;
  }

  .vec-ba-bottom {
    flex-direction: column;
    align-items: flex-start;
  }

  .vec-ba-comparison {
    aspect-ratio: 4 / 3;
  }
}

@media (max-width: 575px) {
  .vec-ba-section {
    padding: 55px 0;
  }

  .vec-ba-container {
    padding: 0 16px;
  }

  .vec-ba-header h2 {
    font-size: 29px;
  }

  .vec-ba-header-right p {
    font-size: 13px;
  }

  .vec-ba-project {
    padding: 6px;
    border-radius: 14px;
  }

  .vec-ba-comparison {
    aspect-ratio: 4 / 4.2;
    border-radius: 10px;
  }

  .vec-ba-label {
    top: 12px;
    padding: 7px 10px;
    font-size: 10px;
  }

  .vec-ba-label-before {
    left: 12px;
  }

  .vec-ba-label-after {
    right: 12px;
  }

  .vec-ba-handle {
    width: 48px;
    height: 48px;
    font-size: 11px;
  }

  .vec-ba-project-info {
    padding: 22px 14px;
  }

  .vec-ba-project-copy h3 {
    font-size: 21px;
  }

  .vec-ba-project-btn {
    width: 100%;
  }

  .vec-ba-bottom {
    padding: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .vec-ba-section * {
    transition: none !important;
  }
}

/* ========================================
   VEC NEW BUILDS CONTENT PANEL
======================================== */

.vec-info-section {
  --vec-navy: #061d3b;
  --vec-blue: #124c91;
  --vec-silver: #d8dee7;
  --vec-text: #5e6b7c;

  width: 100%;
  padding: 90px 0;
  background: #ffffff;
  font-family: "Poppins", Arial, sans-serif;
}

.vec-info-section *,
.vec-info-section *::before,
.vec-info-section *::after {
  box-sizing: border-box;
}

.vec-info-container {
  width: 100%;
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 24px;
}

.vec-info-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(300px, 0.85fr);
  gap: 65px;
  align-items: start;
}

/* ========================================
   MAIN CONTENT
======================================== */

.vec-info-main {
  min-width: 0;
}

.vec-info-eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--vec-blue);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.8px;
  margin-bottom: 20px;
}

.vec-info-eyebrow-line {
  width: 34px;
  height: 3px;
  background: var(--vec-blue);
  border-radius: 5px;
}

.vec-info-main h2 {
  font-size: clamp(30px, 3.3vw, 44px);
  line-height: 1.22;
  font-weight: 800;
  letter-spacing: -1.1px;
  color: var(--vec-navy);
  margin: 0 0 25px;
}

.vec-info-main h2 span {
  display: block;
  color: var(--vec-blue);
}

.vec-info-main > p,
.vec-info-subsection p {
  font-size: 14px;
  line-height: 2;
  color: var(--vec-text);
  margin: 0 0 18px;
}

.vec-info-main > p strong {
  color: var(--vec-navy);
  font-weight: 700;
}

.vec-info-main .vec-info-intro {
  font-size: 17px;
  font-weight: 500;
  line-height: 1.8;
  color: #273c55;
  margin-bottom: 22px;
}

/* ========================================
   HIGHLIGHT PANEL
======================================== */

.vec-info-highlight {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  padding: 28px 30px;
  background: #f0f5fc;
  border-left: 4px solid var(--vec-blue);
  border-radius: 0 14px 14px 0;
  margin: 32px 0;
}

.vec-info-highlight-icon {
  width: 50px;
  height: 50px;
  flex: 0 0 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--vec-blue);
  color: #fff;
  border-radius: 12px;
  font-size: 22px;
}

.vec-info-highlight-content h3 {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
  color: var(--vec-navy);
  margin: 0 0 10px;
}

.vec-info-highlight-content p {
  font-size: 13px;
  line-height: 1.9;
  color: var(--vec-text);
  margin: 0;
}

/* ========================================
   SUBSECTION
======================================== */

.vec-info-subsection {
  margin-top: 38px;
}

.vec-info-subsection h3 {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 23px;
  line-height: 1.4;
  font-weight: 800;
  color: var(--vec-navy);
  margin: 0 0 20px;
}

.vec-info-heading-icon {
  color: var(--vec-blue);
  font-size: 24px;
}

/* ========================================
   CHECKLIST
======================================== */

.vec-info-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 24px;
  padding: 28px;
  background: #f8fafc;
  border: 1px solid #e7ecf3;
  border-radius: 14px;
  margin-top: 30px;
}

.vec-info-check {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  color: #34465b;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.6;
}

.vec-info-check i {
  color: var(--vec-blue);
  font-size: 16px;
  margin-top: 2px;
}

/* ========================================
   SIDEBAR
======================================== */

.vec-info-sidebar {
  min-width: 0;
}

.vec-info-sidebar-card {
  background: var(--vec-navy);
  border-radius: 18px;
  padding: 35px 28px;
  box-shadow: 0 18px 45px rgba(6,29,59,.16);
}

.vec-info-sidebar-top {
  padding-bottom: 25px;
  border-bottom: 1px solid rgba(255,255,255,.16);
}

.vec-info-sidebar-icon {
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,.11);
  color: #fff;
  font-size: 26px;
  border-radius: 14px;
  margin-bottom: 24px;
}

.vec-info-sidebar-label {
  display: block;
  color: #a8c8ee;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.3px;
  line-height: 1.7;
  margin-bottom: 12px;
}

.vec-info-sidebar-top h3 {
  font-size: 28px;
  line-height: 1.3;
  color: #fff;
  font-weight: 800;
  margin: 0 0 15px;
}

.vec-info-sidebar-top p {
  color: #c4d2e3;
  font-size: 13px;
  line-height: 1.9;
  margin: 0;
}

/* CONTACT DETAILS */

.vec-info-sidebar-contact {
  padding: 25px 0;
}

.vec-info-contact-item {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 23px;
  color: #fff;
  text-decoration: none !important;
}

.vec-info-contact-item:last-child {
  margin-bottom: 0;
}

.vec-info-contact-item > span {
  width: 43px;
  height: 43px;
  flex: 0 0 43px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(255,255,255,.1);
  color: #fff;
  font-size: 17px;
}

.vec-info-contact-item > div {
  min-width: 0;
}

.vec-info-contact-item small {
  display: block;
  font-size: 10px;
  color: #9fb8d6;
  letter-spacing: 1px;
  margin-bottom: 5px;
}

.vec-info-contact-item strong {
  display: block;
  font-size: 13px;
  color: #fff;
  font-weight: 600;
  overflow-wrap: anywhere;
}

/* SIDEBAR BUTTON */

.vec-info-sidebar-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 17px 14px;
  background: #fff;
  color: var(--vec-navy) !important;
  text-decoration: none !important;
  font-size: 12px;
  font-weight: 700;
  border-radius: 8px;
  transition: all .3s ease;
}

.vec-info-sidebar-btn:hover {
  background: #dceaff;
  transform: translateY(-3px);
}

/* ========================================
   ADDITIONAL NOTE CARD
======================================== */

.vec-info-note-card {
  margin-top: 25px;
  padding: 30px;
  border: 1px solid #e2e9f2;
  border-radius: 15px;
  background: linear-gradient(145deg, #f7faff, #fff);
}

.vec-info-note-icon {
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #e8f1fc;
  color: var(--vec-blue);
  font-size: 22px;
  border-radius: 12px;
  margin-bottom: 20px;
}

.vec-info-note-card h3 {
  font-size: 19px;
  line-height: 1.4;
  font-weight: 800;
  color: var(--vec-navy);
  margin: 0 0 12px;
}

.vec-info-note-card p {
  font-size: 13px;
  line-height: 1.9;
  color: var(--vec-text);
  margin: 0 0 20px;
}

.vec-info-note-card a {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--vec-blue);
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
}

.vec-info-note-card a:hover {
  color: var(--vec-navy);
}

.vec-info-section a:focus-visible {
  outline: 3px solid #4385d4;
  outline-offset: 4px;
}

/* ========================================
   RESPONSIVE
======================================== */

@media (max-width: 1100px) {
  .vec-info-layout {
    gap: 35px;
    grid-template-columns: minmax(0, 1.5fr) minmax(280px, 1fr);
  }
}

@media (max-width: 991px) {
  .vec-info-section {
    padding: 70px 0;
  }

  .vec-info-layout {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .vec-info-sidebar {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    align-items: start;
  }

  .vec-info-note-card {
    margin-top: 0;
  }
}

@media (max-width: 767px) {
  .vec-info-sidebar {
    grid-template-columns: 1fr;
  }

  .vec-info-main h2 {
    font-size: 34px;
  }
}

@media (max-width: 575px) {
  .vec-info-section {
    padding: 55px 0;
  }

  .vec-info-container {
    padding: 0 18px;
  }

  .vec-info-main h2 {
    font-size: 29px;
  }

  .vec-info-main .vec-info-intro {
    font-size: 15px;
  }

  .vec-info-main > p,
  .vec-info-subsection p {
    font-size: 13px;
  }

  .vec-info-highlight {
    flex-direction: column;
    padding: 23px;
  }

  .vec-info-subsection h3 {
    font-size: 20px;
  }

  .vec-info-checklist {
    grid-template-columns: 1fr;
    padding: 22px;
  }

  .vec-info-sidebar-card {
    padding: 28px 22px;
  }

  .vec-info-sidebar-top h3 {
    font-size: 25px;
  }
}

/* =====================================
   VEC NEW BUILDS FAQ SECTION
===================================== */

.vec-faq-section {
  --vec-navy: #061d3b;
  --vec-blue: #124c91;
  --vec-silver: #d8dee7;
  --vec-muted: #627086;

  width: 100%;
  padding: 100px 0;
  background: #f6f8fc;
  font-family: "Poppins", Arial, sans-serif;
}

.vec-faq-section *,
.vec-faq-section *::before,
.vec-faq-section *::after {
  box-sizing: border-box;
}

.vec-faq-container {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 24px;
}

/* =====================================
   SECTION HEADING
===================================== */

.vec-faq-heading {
  max-width: 760px;
  margin: 0 auto 55px;
  text-align: center;
}

.vec-faq-subtitle {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  color: var(--vec-blue);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;
  margin-bottom: 18px;
}

.vec-faq-line {
  width: 32px;
  height: 3px;
  background: var(--vec-blue);
}

.vec-faq-heading h2 {
  font-size: clamp(32px, 3.6vw, 46px);
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: -1.2px;
  color: var(--vec-navy);
  margin: 0 0 20px;
}

.vec-faq-heading h2 span {
  color: var(--vec-blue);
}

.vec-faq-heading p {
  font-size: 14px;
  line-height: 1.9;
  color: var(--vec-muted);
  margin: 0;
}

/* =====================================
   TWO COLUMN LAYOUT
===================================== */

.vec-faq-layout {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.35fr);
  gap: 35px;
  align-items: start;
}

/* =====================================
   LEFT CONTACT PANEL
===================================== */

.vec-faq-sidebar {
  background: var(--vec-navy);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 20px 45px rgba(6,29,59,.12);
}

.vec-faq-sidebar-content {
  padding: 38px 32px;
}

.vec-faq-icon-box {
  width: 65px;
  height: 65px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 15px;
  color: #fff;
  font-size: 27px;
  margin-bottom: 28px;
}

.vec-faq-sidebar-tag {
  display: block;
  color: #a9c8ed;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  line-height: 1.6;
  margin-bottom: 14px;
}

.vec-faq-sidebar h3 {
  color: #fff;
  font-size: 28px;
  font-weight: 800;
  line-height: 1.3;
  margin: 0 0 18px;
}

.vec-faq-sidebar-content > p {
  color: #c1d0e1;
  font-size: 13px;
  line-height: 1.95;
  margin: 0 0 28px;
}

/* CONTACT ROWS */

.vec-faq-contact-details {
  border-top: 1px solid rgba(255,255,255,.15);
  padding-top: 25px;
  margin-bottom: 28px;
}

.vec-faq-contact-row {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 22px;
  text-decoration: none !important;
}

.vec-faq-contact-row:last-child {
  margin-bottom: 0;
}

.vec-faq-contact-icon {
  width: 45px;
  height: 45px;
  flex: 0 0 45px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,.1);
  color: #fff;
  border-radius: 10px;
  font-size: 18px;
}

.vec-faq-contact-row > span:last-child {
  min-width: 0;
}

.vec-faq-contact-row small {
  display: block;
  color: #9fb8d6;
  font-size: 10px;
  letter-spacing: 1px;
  margin-bottom: 5px;
}

.vec-faq-contact-row strong {
  display: block;
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  overflow-wrap: anywhere;
}

/* CONTACT BUTTON */

.vec-faq-contact-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  width: 100%;
  padding: 17px 15px;
  background: #fff;
  color: var(--vec-navy) !important;
  text-decoration: none !important;
  font-size: 13px;
  font-weight: 700;
  border-radius: 8px;
  transition: all .3s ease;
}

.vec-faq-contact-btn:hover {
  background: #dceaff;
  transform: translateY(-3px);
}

.vec-faq-sidebar-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: #0d315c;
  padding: 20px;
  color: #e0eaf5;
  font-size: 12px;
  font-weight: 500;
}

/* =====================================
   FAQ ACCORDION
===================================== */

.vec-faq-accordion {
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-width: 0;
}

.vec-faq-item {
  background: #fff;
  border: 1px solid #e4eaf2;
  border-radius: 12px;
  overflow: hidden;
  transition: border-color .3s ease,
              box-shadow .3s ease;
}

.vec-faq-item:hover {
  border-color: #c2d3e8;
}

.vec-faq-item[open] {
  border-color: #b9d0ed;
  box-shadow: 0 10px 30px rgba(6,29,59,.06);
}

/* QUESTION */

.vec-faq-item summary {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 23px 25px;
  cursor: pointer;
  list-style: none;
  user-select: none;
}

.vec-faq-item summary::-webkit-details-marker {
  display: none;
}

.vec-faq-number {
  color: #8aa6c9;
  font-size: 12px;
  font-weight: 800;
  flex: 0 0 25px;
}

.vec-faq-question {
  flex: 1;
  min-width: 0;
  color: var(--vec-navy);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.6;
}

.vec-faq-toggle {
  width: 35px;
  height: 35px;
  flex: 0 0 35px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #edf3fa;
  color: var(--vec-blue);
  border-radius: 8px;
  font-size: 13px;
  transition: all .3s ease;
}

.vec-faq-item[open] .vec-faq-toggle {
  background: var(--vec-blue);
  color: #fff;
  transform: rotate(45deg);
}

.vec-faq-item[open] .vec-faq-question {
  color: var(--vec-blue);
}

/* ANSWER */

.vec-faq-answer {
  padding: 0 25px 24px 68px;
}

.vec-faq-answer p {
  color: var(--vec-muted);
  font-size: 13px;
  line-height: 1.95;
  margin: 0;
}

.vec-faq-item summary:focus-visible,
.vec-faq-section a:focus-visible {
  outline: 3px solid #4385d4;
  outline-offset: 3px;
}

/* =====================================
   RESPONSIVE
===================================== */

@media (max-width: 991px) {
  .vec-faq-section {
    padding: 75px 0;
  }

  .vec-faq-layout {
    grid-template-columns: 1fr;
  }

  .vec-faq-sidebar {
    max-width: 100%;
  }

  .vec-faq-heading {
    margin-bottom: 40px;
  }
}

@media (max-width: 575px) {
  .vec-faq-section {
    padding: 55px 0;
  }

  .vec-faq-container {
    padding: 0 16px;
  }

  .vec-faq-heading h2 {
    font-size: 30px;
  }

  .vec-faq-heading p {
    font-size: 13px;
  }

  .vec-faq-sidebar-content {
    padding: 30px 23px;
  }

  .vec-faq-sidebar h3 {
    font-size: 25px;
  }

  .vec-faq-item summary {
    gap: 11px;
    padding: 18px 15px;
  }

  .vec-faq-number {
    flex-basis: 22px;
    font-size: 11px;
  }

  .vec-faq-question {
    font-size: 13px;
  }

  .vec-faq-toggle {
    width: 30px;
    height: 30px;
    flex-basis: 30px;
  }

  .vec-faq-answer {
    padding: 0 17px 20px 48px;
  }

  .vec-faq-answer p {
    font-size: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .vec-faq-section * {
    transition: none !important;
  }
}

/* ==========================================
   VEC RENOVATIONS INTRODUCTION
   Navy Blue / Royal Blue / Silver Theme
========================================== */

.vec-reno-intro {
  --vec-navy: #061e40;
  --vec-dark: #03152d;
  --vec-blue: #124b91;
  --vec-bright: #2471c4;
  --vec-silver: #c3ceda;
  --vec-text: #566477;
  padding: 100px 0;
  font-family: "Poppins", sans-serif;
  overflow: hidden;
  display: inline-block;
  width: 100%;
}

.vec-reno-intro *,
.vec-reno-intro *::before,
.vec-reno-intro *::after {
  box-sizing: border-box;
}

.vec-reno-container {
  width: 100%;
  max-width: 1320px;
  padding: 0 24px;
  margin: 0 auto;
}

.vec-reno-grid {
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  align-items: center;
  gap: 85px;
}

/* ==========================================
   IMAGE COMPOSITION
========================================== */

.vec-reno-visual {
  position: relative;
  padding: 0 48px 65px 0;
  isolation: isolate;
}

.vec-reno-image-main {
  width: 100%;
  height: 610px;
  border-radius: 18px 100px 18px 18px;
  overflow: hidden;
  position: relative;
  z-index: 2;
  box-shadow: 0 22px 60px rgba(4, 27, 58, 0.12);
}

.vec-reno-image-main img,
.vec-reno-image-small img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.6s ease;
}

.vec-reno-image-main:hover img,
.vec-reno-image-small:hover img {
  transform: scale(1.055);
}

.vec-reno-image-small {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 46%;
  height: 245px;
  border: 7px solid #ffffff;
  border-radius: 18px;
  overflow: hidden;
  z-index: 4;
  box-shadow: 0 15px 40px rgba(0,0,0,.14);
}

.vec-reno-image-badge {
  position: absolute;
  top: 45px;
  left: -22px;
  z-index: 5;
  background: var(--vec-navy);
  color: #fff;
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 18px 23px;
  border-radius: 10px;
  box-shadow: 0 14px 35px rgba(6,30,64,.22);
}

.vec-reno-image-badge > i {
  color: #9cc9fa;
  font-size: 27px;
}

.vec-reno-image-badge strong {
  display: block;
  font-size: 13px;
  font-weight: 700;
}

.vec-reno-image-badge span {
  display: block;
  font-size: 11px;
  opacity: .78;
  margin-top: 3px;
}

.vec-reno-decor {
  position: absolute;
  width: 220px;
  height: 220px;
  right: 8px;
  top: -26px;
  border: 2px solid var(--vec-silver);
  border-radius: 18px 110px 18px 18px;
  z-index: 0;
}

/* ==========================================
   CONTENT
========================================== */

.vec-reno-content {
  position: relative;
}

.vec-reno-eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--vec-blue);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 20px;
}

.vec-reno-line {
  display: block;
  width: 36px;
  height: 3px;
  background: var(--vec-bright);
  border-radius: 4px;
  flex-shrink: 0;
}

.vec-reno-content h2 {
  color: var(--vec-dark);
  font-size: clamp(30px, 3.1vw, 46px);
  font-weight: 800;
  line-height: 1.22;
  letter-spacing: -1.5px;
  margin: 0 0 24px;
}

.vec-reno-content h2 span {
  color: var(--vec-blue);
}

.vec-reno-lead {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.85;
  color: #263e5a;
  margin: 0 0 18px;
}

.vec-reno-description {
  color: var(--vec-text);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.95;
  margin: 0 0 16px;
}

/* ==========================================
   FEATURE GRID
========================================== */

.vec-reno-features {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px 24px;
  padding: 26px 0;
  margin: 15px 0 22px;
  border-top: 1px solid #e1e8f0;
  border-bottom: 1px solid #e1e8f0;
}

.vec-reno-feature {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.vec-reno-feature-icon {
  width: 43px;
  height: 43px;
  min-width: 43px;
  background: #e8f0fa;
  color: var(--vec-blue);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 17px;
  transition: all .3s ease;
}

.vec-reno-feature:hover .vec-reno-feature-icon {
  background: var(--vec-navy);
  color: #fff;
  transform: translateY(-3px);
}

.vec-reno-feature h3 {
  color: var(--vec-dark);
  font-size: 13px;
  font-weight: 700;
  margin: 0 0 5px;
  line-height: 1.4;
}

.vec-reno-feature p {
  color: var(--vec-text);
  font-size: 11px;
  line-height: 1.65;
  margin: 0;
}

/* ==========================================
   BUTTONS
========================================== */

.vec-reno-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 15px;
}

.vec-reno-btn-primary,
.vec-reno-btn-secondary {
  min-height: 53px;
  padding: 14px 21px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  border-radius: 7px;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  transition: all .3s ease;
  line-height: 1.5;
}

.vec-reno-btn-primary {
  background: linear-gradient(135deg, #092c5c, #1659a6);
  color: #ffffff;
  border: 1px solid #092c5c;
  box-shadow: 0 8px 22px rgba(18,75,145,.15);
}

.vec-reno-btn-primary:hover {
  background: #03152d;
  color: #fff;
  transform: translateY(-3px);
  box-shadow: 0 14px 30px rgba(6,30,64,.23);
}

.vec-reno-btn-secondary {
  border: 1px solid #c6d3e2;
  color: var(--vec-navy);
  background: #fff;
}

.vec-reno-btn-secondary:hover {
  border-color: var(--vec-blue);
  color: var(--vec-blue);
  background: #edf4fc;
}

.vec-reno-location {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: 22px;
  color: #67758a;
  font-size: 12px;
}

.vec-reno-location i {
  color: var(--vec-blue);
}

/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width: 1199px) {
  .vec-reno-grid {
    gap: 45px;
  }

  .vec-reno-image-main {
    height: 540px;
  }

  .vec-reno-content h2 {
    font-size: 36px;
  }
}

@media (max-width: 991px) {
  .vec-reno-intro {
    padding: 75px 0;
  }

  .vec-reno-grid {
    grid-template-columns: 1fr;
    gap: 55px;
  }

  .vec-reno-visual {
    max-width: 650px;
    margin: 0 auto;
    width: 100%;
  }

  .vec-reno-content {
    max-width: 760px;
    margin: 0 auto;
  }

  .vec-reno-image-main {
    height: 500px;
  }
}

@media (max-width: 575px) {
  .vec-reno-intro {
    padding: 55px 0;
  }

  .vec-reno-container {
    padding: 0 18px;
  }

  .vec-reno-grid {
    gap: 35px;
  }

  .vec-reno-visual {
    padding: 0 22px 40px 0;
  }

  .vec-reno-image-main {
    height: 360px;
    border-radius: 12px 55px 12px 12px;
  }

  .vec-reno-image-small {
    width: 49%;
    height: 150px;
    border-width: 4px;
    border-radius: 10px;
  }

  .vec-reno-image-badge {
    top: 20px;
    left: -8px;
    padding: 11px 12px;
    gap: 8px;
  }

  .vec-reno-image-badge > i {
    font-size: 19px;
  }

  .vec-reno-image-badge strong {
    font-size: 10px;
  }

  .vec-reno-image-badge span {
    font-size: 9px;
  }

  .vec-reno-decor {
    width: 120px;
    height: 120px;
  }

  .vec-reno-eyebrow {
    font-size: 9px;
    letter-spacing: 1.1px;
  }

  .vec-reno-content h2 {
    font-size: 30px;
    letter-spacing: -.7px;
  }

  .vec-reno-lead {
    font-size: 14px;
  }

  .vec-reno-description {
    font-size: 13px;
  }

  .vec-reno-features {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .vec-reno-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .vec-reno-btn-primary,
  .vec-reno-btn-secondary {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .vec-reno-intro *,
  .vec-reno-intro *::before,
  .vec-reno-intro *::after {
    transition: none !important;
  }
}

/* ==========================================
   VEC RENOVATIONS TRUST SECTION
========================================== */

.vec-trust-section {
  --vec-navy: #061e40;
  --vec-blue: #124b91;
  --vec-silver: #c3ceda;
  --vec-text: #586779;
  padding: 95px 0;
  font-family: "Poppins", sans-serif;
}

.vec-trust-section *,
.vec-trust-section *::before,
.vec-trust-section *::after {
  box-sizing: border-box;
}

.vec-trust-container {
  max-width: 1320px;
  padding: 0 24px;
  margin: auto;
}

/* HEADING */

.vec-trust-header {
  max-width: 780px;
  margin: 0 auto 48px;
  text-align: center;
}

.vec-trust-subtitle {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--vec-blue);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
  margin-bottom: 18px;
}

.vec-trust-subtitle span {
  width: 28px;
  height: 2px;
  background: var(--vec-blue);
}

.vec-trust-header h2 {
  font-size: clamp(30px, 3.4vw, 44px);
  font-weight: 800;
  line-height: 1.25;
  color: var(--vec-navy);
  margin: 0 0 20px;
  letter-spacing: -1px;
}

.vec-trust-header h2 span {
  color: var(--vec-blue);
}

.vec-trust-header p {
  font-size: 15px;
  line-height: 1.9;
  color: var(--vec-text);
  margin: 0;
}

/* CARDS */

.vec-trust-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
}

.vec-trust-card {
  position: relative;
  padding: 34px 25px;
  background: #fff;
  border: 1px solid #e5ebf2;
  border-radius: 15px;
  overflow: hidden;
  transition: transform .3s ease,
              box-shadow .3s ease,
              border-color .3s ease;
}

.vec-trust-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: linear-gradient(
    90deg, #061e40, #2879c8
  );
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .3s ease;
}

.vec-trust-card:hover {
  transform: translateY(-7px);
  border-color: #cbdcf0;
  box-shadow: 0 20px 45px rgba(6,30,64,.09);
}

.vec-trust-card:hover::before {
  transform: scaleX(1);
}

.vec-trust-icon {
  width: 65px;
  height: 65px;
  border-radius: 13px;
  background: #eaf2fc;
  color: var(--vec-blue);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 25px;
  margin-bottom: 28px;
  transition: .3s ease;
}

.vec-trust-card:hover .vec-trust-icon {
  background: var(--vec-navy);
  color: white;
}

.vec-trust-number {
  position: absolute;
  right: 22px;
  top: 28px;
  color: #e5ebf2;
  font-size: 42px;
  font-weight: 800;
  line-height: 1;
}

.vec-trust-card h3 {
  font-size: 17px;
  font-weight: 700;
  color: var(--vec-navy);
  line-height: 1.45;
  margin: 0 0 15px;
}

.vec-trust-card p {
  color: var(--vec-text);
  font-size: 13px;
  line-height: 1.9;
  margin: 0;
}

/* BOTTOM CTA PANEL */

.vec-trust-bottom {
  margin-top: 42px;
  padding: 42px 48px;
  border-radius: 16px;
  background:
    radial-gradient(
      circle at 95% 10%,
      rgba(54,123,199,.3),
      transparent 40%
    ),
    linear-gradient(110deg, #061e40, #123d72);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
}

.vec-trust-bottom-content {
  max-width: 680px;
}

.vec-trust-small-label {
  display: block;
  color: #a9cdf7;
  font-size: 11px;
  letter-spacing: 2px;
  font-weight: 700;
  margin-bottom: 12px;
}

.vec-trust-bottom h3 {
  color: #fff;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.35;
  margin: 0 0 14px;
}

.vec-trust-bottom p {
  color: #d3dfed;
  font-size: 13px;
  line-height: 1.85;
  margin: 0;
}

.vec-trust-bottom-action {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
}

.vec-trust-btn {
  background: #fff;
  color: #061e40;
  padding: 17px 24px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  transition: .3s ease;
}

.vec-trust-btn:hover {
  background: #dceafb;
  color: #061e40;
  transform: translateY(-3px);
}

.vec-trust-email {
  color: #dceafb;
  font-size: 12px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 9px;
}

.vec-trust-email:hover {
  color: #fff;
  text-decoration: underline;
}

/* RESPONSIVE */

@media (max-width: 1100px) {
  .vec-trust-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 767px) {
  .vec-trust-section {
    padding: 65px 0;
  }

  .vec-trust-header {
    margin-bottom: 35px;
  }

  .vec-trust-header h2 {
    font-size: 32px;
  }

  .vec-trust-bottom {
    flex-direction: column;
    align-items: flex-start;
    padding: 32px 25px;
    gap: 25px;
  }

  .vec-trust-bottom h3 {
    font-size: 24px;
  }

  .vec-trust-bottom-action {
    align-items: flex-start;
  }
}

@media (max-width: 575px) {
  .vec-trust-container {
    padding: 0 18px;
  }

  .vec-trust-grid {
    grid-template-columns: 1fr;
    gap: 15px;
  }

  .vec-trust-card {
    padding: 28px 23px;
  }

  .vec-trust-header h2 {
    font-size: 29px;
  }

  .vec-trust-header p {
    font-size: 13px;
  }

  .vec-trust-btn {
    width: 100%;
    padding: 16px 18px;
  }

  .vec-trust-bottom-action {
    width: 100%;
  }

  .vec-trust-email {
    overflow-wrap: anywhere;
  }
}

@media (prefers-reduced-motion: reduce) {
  .vec-trust-section *,
  .vec-trust-section *::before,
  .vec-trust-section *::after {
    transition: none !important;
  }
}

/* =========================================
   VEC CONTENT INFORMATION PANEL
========================================= */

.vec-content-panel {
  --vec-navy: #061e40;
  --vec-blue: #124b91;
  --vec-light-blue: #eaf2fc;
  --vec-text: #596779;
  padding: 90px 0;
  font-family: "Poppins", sans-serif;
}

.vec-content-panel *,
.vec-content-panel *::before,
.vec-content-panel *::after {
  box-sizing: border-box;
}

.vec-content-container {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 20px;
}

/* MAIN PANEL */

.vec-content-wrapper {
  background: #ffffff;
  border: 1px solid #e4ebf3;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 18px 55px rgba(6,30,64,.06);
}

/* HEADING */

.vec-content-heading {
  padding: 55px 65px 35px;
  border-bottom: 1px solid #e8edf4;
}

.vec-content-label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: var(--vec-light-blue);
  color: var(--vec-blue);
  padding: 9px 15px;
  border-radius: 5px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.3px;
  margin-bottom: 22px;
}

.vec-content-heading h2 {
  color: var(--vec-navy);
  font-size: clamp(28px, 3vw, 40px);
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: -1px;
  margin: 0 0 20px;
}

.vec-content-heading h2 span {
  display: block;
  color: var(--vec-blue);
}

.vec-content-intro {
  color: #435671;
  font-size: 16px;
  line-height: 1.9;
  max-width: 850px;
  margin: 0;
}

/* CONTENT BODY */

.vec-content-body {
  padding: 45px 65px 55px;
}

.vec-content-body h3 {
  color: var(--vec-navy);
  font-size: 23px;
  font-weight: 700;
  line-height: 1.4;
  margin: 35px 0 18px;
  position: relative;
  padding-left: 18px;
}

.vec-content-body h3:first-child {
  margin-top: 0;
}

.vec-content-body h3::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 4px;
  height: 26px;
  background: var(--vec-blue);
  border-radius: 5px;
}

.vec-content-body > p {
  color: var(--vec-text);
  font-size: 14px;
  line-height: 2;
  margin: 0 0 18px;
}

.vec-content-body strong {
  color: var(--vec-navy);
  font-weight: 600;
}

/* HIGHLIGHT BOX */

.vec-content-highlight {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  padding: 28px 30px;
  background: linear-gradient(
    120deg, #edf4fc, #f7faff
  );
  border-left: 4px solid var(--vec-blue);
  border-radius: 0 10px 10px 0;
  margin: 35px 0;
}

.vec-content-highlight-icon {
  width: 52px;
  height: 52px;
  min-width: 52px;
  background: var(--vec-navy);
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  font-size: 21px;
}

.vec-content-highlight h4 {
  color: var(--vec-navy);
  font-size: 17px;
  font-weight: 700;
  margin: 0 0 10px;
}

.vec-content-highlight p {
  color: var(--vec-text);
  font-size: 13px;
  line-height: 1.9;
  margin: 0;
}

/* INFORMATION GRID */

.vec-content-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  margin: 28px 0 40px;
}

.vec-content-list-item {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  background: #f7f9fc;
  border: 1px solid #e7edf5;
  padding: 22px;
  border-radius: 10px;
  transition: .3s ease;
}

.vec-content-list-item:hover {
  background: #edf4fc;
  border-color: #c7d9ed;
  transform: translateY(-3px);
}

.vec-content-list-item > i {
  color: var(--vec-blue);
  font-size: 19px;
  margin-top: 3px;
}

.vec-content-list-item h4 {
  font-size: 14px;
  font-weight: 700;
  color: var(--vec-navy);
  margin: 0 0 8px;
}

.vec-content-list-item p {
  font-size: 12px;
  line-height: 1.8;
  color: var(--vec-text);
  margin: 0;
}

/* FOOTER CTA */

.vec-content-footer {
  background: linear-gradient(
    110deg, #061e40, #164b87
  );
  padding: 35px 65px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
}

.vec-content-footer span {
  display: block;
  color: #a8c8ef;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  margin-bottom: 10px;
}

.vec-content-footer h3 {
  color: #ffffff;
  font-size: 23px;
  font-weight: 700;
  line-height: 1.4;
  margin: 0 0 8px;
}

.vec-content-footer p {
  color: #d0deef;
  font-size: 12px;
  line-height: 1.7;
  margin: 0;
}

.vec-content-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  background: #ffffff;
  color: #061e40;
  padding: 16px 23px;
  border-radius: 7px;
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
  transition: .3s ease;
}

.vec-content-btn:hover {
  background: #e4effc;
  color: #061e40;
  transform: translateY(-3px);
}

/* RESPONSIVE */

@media (max-width: 991px) {
  .vec-content-heading {
    padding: 40px 35px 30px;
  }

  .vec-content-body {
    padding: 35px;
  }

  .vec-content-footer {
    padding: 35px;
  }
}

@media (max-width: 767px) {
  .vec-content-panel {
    padding: 60px 0;
  }

  .vec-content-list {
    grid-template-columns: 1fr;
  }

  .vec-content-footer {
    flex-direction: column;
    align-items: flex-start;
  }

  .vec-content-heading h2 {
    font-size: 30px;
  }
}

@media (max-width: 575px) {
  .vec-content-container {
    padding: 0 15px;
  }

  .vec-content-heading {
    padding: 30px 22px;
  }

  .vec-content-body {
    padding: 30px 22px;
  }

  .vec-content-heading h2 {
    font-size: 27px;
  }

  .vec-content-intro {
    font-size: 14px;
  }

  .vec-content-body h3 {
    font-size: 19px;
  }

  .vec-content-body > p {
    font-size: 13px;
  }

  .vec-content-highlight {
    padding: 20px;
    flex-direction: column;
  }

  .vec-content-footer {
    padding: 30px 22px;
  }

  .vec-content-footer h3 {
    font-size: 20px;
  }

  .vec-content-btn {
    width: 100%;
    white-space: normal;
  }
}

@media (prefers-reduced-motion: reduce) {
  .vec-content-list-item,
  .vec-content-btn {
    transition: none;
  }
}

/* =========================================
   VEC EXTENSIONS INTRODUCTION
========================================= */

.vec-ext-section {
  --vec-navy: #061b3b;
  --vec-blue: #0d376a;
  --vec-royal: #155ca8;
  --vec-silver: #c5cfda;
  --vec-text: #526174;
  --vec-light: #f3f6fa;
  padding: 105px 0 115px;
  background:
    radial-gradient(circle at 0% 0%,
      rgba(21,92,168,.06), transparent 35%),
    #fff;
  position: relative;
  overflow: hidden;
  font-family: "Poppins", sans-serif;
  display: inline-block;
  width: 100%;
}

.vec-ext-section *,
.vec-ext-section *::before,
.vec-ext-section *::after {
  box-sizing: border-box;
}

.vec-ext-container {
  max-width: 1320px;
  margin: auto;
  padding: 0 25px;
}

.vec-ext-grid {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 85px;
  align-items: center;
}

/* LEFT CONTENT */

.vec-ext-content {
  position: relative;
  z-index: 2;
}

.vec-ext-eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--vec-royal);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2.2px;
  margin-bottom: 28px;
}

.vec-ext-line {
  width: 36px;
  height: 2px;
  background: var(--vec-royal);
}

.vec-ext-mini-title {
  color: #718096;
  font-size: 12px;
  letter-spacing: 1.5px;
  font-weight: 600;
  margin-bottom: 15px;
}

.vec-ext-content h1 {
  font-family: "Outfit", sans-serif;
  font-size: clamp(38px, 4.2vw, 65px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: -1.8px;
  color: var(--vec-navy);
  margin: 0 0 28px;
}

.vec-ext-content h1 span {
  display: block;
  color: var(--vec-royal);
}

.vec-ext-lead {
  font-size: 17px;
  line-height: 1.85;
  font-weight: 500;
  color: #233d5d;
  margin-bottom: 17px;
}

.vec-ext-description {
  color: var(--vec-text);
  font-size: 14px;
  line-height: 1.95;
  margin-bottom: 32px;
}

/* FEATURES */

.vec-ext-features {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-bottom: 35px;
}

.vec-ext-feature {
  background: var(--vec-light);
  padding: 19px 13px;
  border-radius: 12px;
  border: 1px solid #e5ebf2;
  transition: .3s ease;
}

.vec-ext-feature:hover {
  background: #fff;
  border-color: var(--vec-royal);
  transform: translateY(-5px);
  box-shadow: 0 12px 30px rgba(6,27,59,.08);
}

.vec-ext-feature-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  background: #e2ebf7;
  color: var(--vec-royal);
  border-radius: 10px;
  margin-bottom: 14px;
  font-size: 18px;
}

.vec-ext-feature strong {
  display: block;
  font-size: 12px;
  color: var(--vec-navy);
  margin-bottom: 5px;
  line-height: 1.5;
}

.vec-ext-feature small {
  display: block;
  color: #718096;
  font-size: 10px;
  line-height: 1.6;
}

/* BUTTONS */

.vec-ext-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  align-items: center;
}

.vec-ext-btn-primary,
.vec-ext-btn-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  padding: 17px 24px;
  border-radius: 7px;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  transition: .3s ease;
}

.vec-ext-btn-primary {
  color: #fff;
  background: linear-gradient(
    135deg,
    #155ca8,
    #061b3b
  );
  box-shadow: 0 10px 24px rgba(13,55,106,.18);
}

.vec-ext-btn-primary:hover {
  background: var(--vec-navy);
  transform: translateY(-3px);
  color: #fff;
}

.vec-ext-btn-secondary {
  color: var(--vec-navy);
  border: 1px solid #cbd5e1;
  background: #fff;
}

.vec-ext-btn-secondary:hover {
  color: #fff;
  background: var(--vec-navy);
  border-color: var(--vec-navy);
}

.vec-ext-location {
  margin-top: 24px;
  font-size: 12px;
  color: #718096;
}

.vec-ext-location i {
  color: var(--vec-royal);
  margin-right: 8px;
}

/* =========================================
   RIGHT IMAGE AREA
========================================= */

.vec-ext-visual {
  position: relative;
  padding: 22px 22px 35px 0;
}

.vec-ext-outline {
  position: absolute;
  top: 0;
  right: 0;
  width: 78%;
  height: 92%;
  border: 2px solid #c8d7e9;
  border-radius: 14px;
  z-index: 0;
}

.vec-ext-image-wrap {
  height: 630px;
  position: relative;
  overflow: hidden;
  border-radius: 13px;
  z-index: 1;
  box-shadow: 0 25px 55px rgba(6,27,59,.14);
}

.vec-ext-image-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .8s ease;
}

.vec-ext-image-wrap:hover img {
  transform: scale(1.06);
}

.vec-ext-image-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to top,
    rgba(3,17,39,.85),
    rgba(3,17,39,.1) 55%,
    transparent
  );
}

.vec-ext-image-caption {
  position: absolute;
  bottom: 55px;
  left: 38px;
  color: #fff;
  z-index: 2;
}

.vec-ext-image-caption span {
  display: block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 2px;
  color: #c7dcf7;
  margin-bottom: 12px;
}

.vec-ext-image-caption h2 {
  font-family: "Outfit", sans-serif;
  font-size: 35px;
  font-weight: 700;
  line-height: 1.15;
  margin: 0;
  color: #fff;
}

/* FLOATING CARD */

.vec-ext-floating-card {
  position: absolute;
  bottom: 0;
  left: -55px;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 15px;
  background: #fff;
  padding: 19px 23px;
  border-radius: 11px;
  box-shadow: 0 15px 45px rgba(6,27,59,.15);
  border-left: 4px solid var(--vec-royal);
}

.vec-ext-floating-icon {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  background: #e8f0fa;
  color: var(--vec-royal);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 21px;
}

.vec-ext-floating-card strong {
  display: block;
  color: var(--vec-navy);
  font-size: 14px;
  margin-bottom: 5px;
}

.vec-ext-floating-card span {
  display: block;
  font-size: 11px;
  color: #64748b;
}

.vec-ext-side-label {
  position: absolute;
  right: -26px;
  top: 50%;
  writing-mode: vertical-rl;
  letter-spacing: 3px;
  font-size: 10px;
  color: #8fa5bf;
  font-weight: 700;
}

/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 1199px) {
  .vec-ext-grid {
    gap: 45px;
  }

  .vec-ext-image-wrap {
    height: 570px;
  }

  .vec-ext-floating-card {
    left: -25px;
  }
}

@media (max-width: 991px) {
  .vec-ext-section {
    padding: 70px 0;
  }

  .vec-ext-grid {
    grid-template-columns: 1fr;
    gap: 55px;
  }

  .vec-ext-content {
    max-width: 760px;
  }

  .vec-ext-image-wrap {
    height: 540px;
  }

  .vec-ext-floating-card {
    left: 25px;
  }

  .vec-ext-side-label {
    right: -10px;
  }
}

@media (max-width: 575px) {
  .vec-ext-section {
    padding: 55px 0 65px;
  }

  .vec-ext-container {
    padding: 0 18px;
  }

  .vec-ext-content h1 {
    font-size: 37px;
    letter-spacing: -1px;
  }

  .vec-ext-lead {
    font-size: 15px;
  }

  .vec-ext-description {
    font-size: 13px;
  }

  .vec-ext-features {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .vec-ext-feature {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 13px;
  }

  .vec-ext-feature-icon {
    flex-shrink: 0;
    margin: 0;
  }

  .vec-ext-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .vec-ext-btn-primary,
  .vec-ext-btn-secondary {
    width: 100%;
  }

  .vec-ext-visual {
    padding: 10px 10px 35px 0;
  }

  .vec-ext-image-wrap {
    height: 420px;
  }

  .vec-ext-image-caption {
    bottom: 85px;
    left: 22px;
  }

  .vec-ext-image-caption h2 {
    font-size: 27px;
  }

  .vec-ext-floating-card {
    left: 12px;
    right: 20px;
    bottom: 0;
    padding: 15px;
  }

  .vec-ext-side-label {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .vec-ext-section *,
  .vec-ext-section *::before,
  .vec-ext-section *::after {
    transition: none !important;
  }
}

/* =====================================
   VEC EXTENSION CONTENT PANEL
===================================== */

.vec-extension-info {
  --vec-navy: #061b3b;
  --vec-blue: #155ca8;
  --vec-text: #526174;
  --vec-border: #e3eaf2;
  padding: 90px 0;
  /* background: #f6f8fb; */
  font-family: "Poppins", sans-serif;
}

.vec-extension-info *,
.vec-extension-info *::before,
.vec-extension-info *::after {
  box-sizing: border-box;
}

.vec-extension-info-container {
  max-width: 1320px;
  margin: auto;
  padding: 0 24px;
}

/* HEADING */

.vec-extension-info-heading {
  max-width: 850px;
  margin-bottom: 50px;
}

.vec-extension-info-label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--vec-blue);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;
  margin-bottom: 20px;
}

.vec-extension-info-heading h2 {
  font-family: "Outfit", sans-serif;
  font-size: clamp(32px, 3.5vw, 48px);
  font-weight: 800;
  line-height: 1.18;
  letter-spacing: -1px;
  color: var(--vec-navy);
  margin: 0 0 20px;
}

.vec-extension-info-heading h2 span {
  color: var(--vec-blue);
}

.vec-extension-info-heading p {
  font-size: 15px;
  line-height: 1.9;
  color: var(--vec-text);
  margin: 0;
}

/* LAYOUT */

.vec-extension-info-layout {
  display: grid;
  grid-template-columns: 360px minmax(0, 1fr);
  gap: 28px;
  align-items: start;
}

/* SIDEBAR */

.vec-extension-info-sidebar {
  position: sticky;
  top: 30px;
}

.vec-extension-info-sidebar-inner {
  background: linear-gradient(
    150deg,
    #103e77 0%,
    #061b3b 75%
  );
  border-radius: 16px;
  padding: 36px 30px;
  color: #fff;
  position: relative;
  overflow: hidden;
}

.vec-extension-info-sidebar-inner::before {
  content: "";
  position: absolute;
  width: 230px;
  height: 230px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 50%;
  right: -120px;
  top: -100px;
}

.vec-extension-info-small {
  display: block;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.8px;
  color: #a8c9f1;
  margin-bottom: 17px;
}

.vec-extension-info-sidebar h3 {
  font-family: "Outfit", sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.25;
  margin: 0 0 18px;
  color: #fff;
}

.vec-extension-info-sidebar p {
  color: #c5d5e9;
  font-size: 13px;
  line-height: 1.9;
  margin: 0;
}

.vec-extension-info-divider {
  height: 1px;
  background: rgba(255,255,255,.18);
  margin: 28px 0;
}

.vec-extension-info-sidebar-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 18px;
  color: #e6eef9;
  font-size: 12px;
  line-height: 1.6;
}

.vec-extension-info-sidebar-item i {
  color: #88baf5;
  margin-top: 3px;
}

.vec-extension-info-sidebar-btn {
  margin-top: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  background: #fff;
  color: var(--vec-navy);
  padding: 16px 20px;
  border-radius: 7px;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  transition: .3s ease;
}

.vec-extension-info-sidebar-btn:hover {
  background: #dceaff;
  color: var(--vec-navy);
  transform: translateY(-3px);
}

.vec-extension-info-sidebar-bottom {
  display: flex;
  gap: 10px;
  align-items: center;
  margin-top: 25px;
  font-size: 12px;
  color: #b9cce3;
}

/* CONTENT PANELS */

.vec-extension-info-panels {
  display: flex;
  flex-direction: column;
  gap: 22px;
  min-width: 0;
}

.vec-extension-info-card {
  background: #fff;
  border: 1px solid var(--vec-border);
  border-radius: 15px;
  padding: 34px 38px;
  position: relative;
  overflow: hidden;
  transition: .3s ease;
}

.vec-extension-info-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 0;
  background: var(--vec-blue);
  transition: height .4s ease;
}

.vec-extension-info-card:hover {
  border-color: #c7d8ec;
  box-shadow: 0 18px 45px rgba(6,27,59,.07);
  transform: translateY(-3px);
}

.vec-extension-info-card:hover::before {
  height: 100%;
}

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

.vec-extension-info-number {
  font-family: "Outfit", sans-serif;
  font-size: 42px;
  line-height: 1;
  font-weight: 800;
  color: #e2eaf4;
}

.vec-extension-info-icon {
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #eaf2fb;
  color: var(--vec-blue);
  border-radius: 12px;
  font-size: 20px;
}

.vec-extension-info-card h3 {
  font-family: "Outfit", sans-serif;
  color: var(--vec-navy);
  font-size: 25px;
  line-height: 1.35;
  font-weight: 700;
  margin: 0 0 17px;
}

.vec-extension-info-card p {
  color: var(--vec-text);
  font-size: 13px;
  line-height: 1.95;
  margin: 0 0 15px;
}

.vec-extension-info-note {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 15px 17px;
  background: #f0f5fb;
  border-radius: 8px;
  margin-top: 22px;
  color: #24486f;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.7;
}

.vec-extension-info-note i {
  color: var(--vec-blue);
  margin-top: 3px;
}

/* CONTACT STRIP */

.vec-extension-info-contact {
  background: #e7eef7;
  border: 1px solid #d5e2f1;
  border-radius: 14px;
  padding: 27px 30px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}

.vec-extension-info-contact span {
  font-size: 10px;
  letter-spacing: 1.5px;
  color: var(--vec-blue);
  font-weight: 700;
}

.vec-extension-info-contact h3 {
  font-family: "Outfit", sans-serif;
  font-size: 23px;
  font-weight: 700;
  color: var(--vec-navy);
  margin: 8px 0;
}

.vec-extension-info-contact p {
  font-size: 12px;
  color: var(--vec-text);
  line-height: 1.7;
  margin: 0;
}

.vec-extension-info-contact a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  white-space: nowrap;
  background: var(--vec-navy);
  color: #fff;
  padding: 15px 20px;
  border-radius: 7px;
  text-decoration: none;
  font-size: 13px;
  font-weight: 600;
  transition: .3s;
}

.vec-extension-info-contact a:hover {
  background: var(--vec-blue);
  color: #fff;
}

/* RESPONSIVE */

@media (max-width: 991px) {
  .vec-extension-info {
    padding: 65px 0;
  }

  .vec-extension-info-layout {
    grid-template-columns: 1fr;
  }

  .vec-extension-info-sidebar {
    position: static;
  }

  .vec-extension-info-sidebar-inner {
    padding: 30px;
  }
}

@media (max-width: 575px) {
  .vec-extension-info {
    padding: 50px 0;
  }

  .vec-extension-info-container {
    padding: 0 17px;
  }

  .vec-extension-info-heading {
    margin-bottom: 30px;
  }

  .vec-extension-info-heading h2 {
    font-size: 30px;
  }

  .vec-extension-info-sidebar-inner {
    padding: 27px 23px;
  }

  .vec-extension-info-card {
    padding: 25px 21px;
  }

  .vec-extension-info-card h3 {
    font-size: 22px;
  }

  .vec-extension-info-number {
    font-size: 35px;
  }

  .vec-extension-info-contact {
    flex-direction: column;
    align-items: stretch;
    padding: 25px 22px;
  }

  .vec-extension-info-contact a {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .vec-extension-info *,
  .vec-extension-info *::before,
  .vec-extension-info *::after {
    transition: none !important;
  }
}

/* ========================================
   VEC MODERN PORTFOLIO SECTION
======================================== */

.vec-portfolio-section {
  --vec-navy: #102d43;
  --vec-dark: #0a2234;
  --vec-gold: #d4a34e;
  --vec-text: #526170;
  --vec-white: #ffffff;
  width: 100%;
  padding: 70px 0;
  background: #f7f9fa;
  font-family: "Poppins", Arial, sans-serif;
  display: inline-block;
  width: 100%;
}

.vec-portfolio-section *,
.vec-portfolio-section *::before,
.vec-portfolio-section *::after {
  box-sizing: border-box;
}

.vec-portfolio-container {
  max-width: 1320px;
  margin: auto;
  padding: 0 24px;
}

/* SECTION HEADING */

.vec-portfolio-header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 35px;
  margin-bottom: 40px;
}

.vec-portfolio-heading {
  max-width: 780px;
}

.vec-portfolio-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--vec-gold);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;
  margin-bottom: 18px;
}

.vec-portfolio-line {
  width: 35px;
  height: 2px;
  background: var(--vec-gold);
}

.vec-portfolio-heading h2 {
  font-size: clamp(32px, 4vw, 52px);
  font-weight: 800;
  line-height: 1.18;
  letter-spacing: -1.5px;
  color: var(--vec-navy);
  margin: 0 0 20px;
}

.vec-portfolio-heading h2 span {
  color: var(--vec-gold);
}

.vec-portfolio-heading p {
  font-size: 15px;
  line-height: 1.9;
  color: var(--vec-text);
  margin: 0;
}

.vec-portfolio-top-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--vec-gold);
  color: var(--vec-navy);
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  transition: .3s ease;
}

.vec-portfolio-top-link:hover {
  color: var(--vec-gold);
}

/* FILTER BUTTONS */

.vec-portfolio-filter {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 32px;
}

.vec-portfolio-filter-btn {
  padding: 13px 24px;
  border: 1px solid #e1e6e9;
  border-radius: 8px;
  background: #ffffff;
  color: #4a5866;
  font-size: 13px;
  font-family: inherit;
  font-weight: 600;
  cursor: pointer;
  transition: all .3s ease;
}

.vec-portfolio-filter-btn:hover,
.vec-portfolio-filter-btn.active {
  background: var(--vec-navy);
  color: #ffffff;
  border-color: var(--vec-navy);
}

.vec-portfolio-filter-btn:focus-visible,
.vec-portfolio-arrow:focus-visible,
.vec-portfolio-cta-btn:focus-visible {
  outline: 3px solid var(--vec-gold);
  outline-offset: 3px;
}

/* PROJECT GRID */

.vec-portfolio-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-flow: row dense;
  gap: 22px;
}

.vec-portfolio-card {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border-radius: 14px;
  background: var(--vec-navy);
}

.vec-portfolio-featured {
  grid-column: span 2;
}

.vec-portfolio-image {
  position: relative;
  width: 100%;
  height: 340px;
  overflow: hidden;
}

.vec-portfolio-featured .vec-portfolio-image {
  height: 340px;
}

.vec-portfolio-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(5, 20, 32, .02) 15%,
    rgba(5, 20, 32, .25) 48%,
    rgba(5, 20, 32, .93) 100%
  );
  z-index: 1;
  transition: background .3s ease;
}

.vec-portfolio-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform .7s cubic-bezier(.2,.7,.2,1);
}

.vec-portfolio-card:hover img {
  transform: scale(1.075);
}

/* CATEGORY BADGE */

.vec-portfolio-tag {
  position: absolute;
  top: 22px;
  left: 22px;
  z-index: 2;
  padding: 10px 15px;
  border-radius: 5px;
  background: rgba(255,255,255,.96);
  color: var(--vec-navy);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1px;
}

/* IMAGE CONTENT OVERLAY */

.vec-portfolio-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 2;
  padding: 30px;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 15px;
}

.vec-portfolio-details {
  min-width: 0;
}

.vec-portfolio-details > span {
  display: block;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  color: var(--vec-gold);
  margin-bottom: 9px;
}

.vec-portfolio-details h3 {
  color: #ffffff;
  font-size: 20px;
  line-height: 1.4;
  font-weight: 700;
  margin: 0 0 7px;
}

.vec-portfolio-featured .vec-portfolio-details h3 {
  font-size: 25px;
}

.vec-portfolio-details p {
  color: rgba(255,255,255,.75);
  font-size: 12px;
  line-height: 1.7;
  margin: 0;
}

.vec-portfolio-arrow {
  width: 46px;
  height: 46px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 50%;
  color: #ffffff;
  text-decoration: none;
  font-size: 15px;
  transition: .3s ease;
}

.vec-portfolio-card:hover .vec-portfolio-arrow {
  background: var(--vec-gold);
  color: var(--vec-dark);
  border-color: var(--vec-gold);
  transform: rotate(45deg);
}

.vec-portfolio-card[hidden] {
  display: none !important;
}

/* BOTTOM CTA */

.vec-portfolio-cta {
  margin-top: 50px;
  padding: 35px 40px;
  border-radius: 15px;
  background: var(--vec-navy);
  display: flex;
  align-items: center;
  gap: 25px;
}

.vec-portfolio-cta-icon {
  width: 75px;
  height: 75px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(212,163,78,.4);
  border-radius: 12px;
  background: rgba(212,163,78,.1);
  color: var(--vec-gold);
  font-size: 30px;
}

.vec-portfolio-cta-content {
  flex: 1;
}

.vec-portfolio-cta-content span {
  color: var(--vec-gold);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
}

.vec-portfolio-cta-content h3 {
  margin: 7px 0;
  font-size: 25px;
  line-height: 1.3;
  color: #ffffff;
  font-weight: 700;
}

.vec-portfolio-cta-content p {
  color: rgba(255,255,255,.7);
  font-size: 13px;
  line-height: 1.7;
  margin: 0;
}

.vec-portfolio-cta-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 17px 22px;
  border-radius: 7px;
  background: var(--vec-gold);
  color: var(--vec-dark);
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
  transition: .3s ease;
}

.vec-portfolio-cta-btn:hover {
  background: #ffffff;
  color: var(--vec-navy);
  transform: translateY(-3px);
}

/* TABLET */

@media (max-width: 991px) {
  .vec-portfolio-section {
    padding: 70px 0;
  }

  .vec-portfolio-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .vec-portfolio-featured {
    grid-column: span 2;
  }

  .vec-portfolio-header {
    align-items: start;
    flex-direction: column;
  }

  .vec-portfolio-cta {
    flex-wrap: wrap;
  }

  .vec-portfolio-cta-btn {
    margin-left: 100px;
  }
}

/* MOBILE */

@media (max-width: 600px) {
  .vec-portfolio-section {
    padding: 55px 0;
  }

  .vec-portfolio-container {
    padding: 0 16px;
  }

  .vec-portfolio-heading h2 {
    font-size: 32px;
    letter-spacing: -.7px;
  }

  .vec-portfolio-heading p {
    font-size: 14px;
  }

  .vec-portfolio-filter {
    gap: 8px;
  }

  .vec-portfolio-filter-btn {
    padding: 11px 14px;
    font-size: 12px;
  }

  .vec-portfolio-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .vec-portfolio-featured {
    grid-column: span 1;
  }

  .vec-portfolio-image,
  .vec-portfolio-featured .vec-portfolio-image {
    height: 340px;
  }

  .vec-portfolio-overlay {
    padding: 22px;
  }

  .vec-portfolio-details h3,
  .vec-portfolio-featured .vec-portfolio-details h3 {
    font-size: 19px;
  }

  .vec-portfolio-arrow {
    width: 40px;
    height: 40px;
  }

  .vec-portfolio-cta {
    margin-top: 35px;
    padding: 28px 22px;
    gap: 18px;
  }

  .vec-portfolio-cta-icon {
    width: 60px;
    height: 60px;
    font-size: 24px;
  }

  .vec-portfolio-cta-content {
    flex-basis: 100%;
  }

  .vec-portfolio-cta-content h3 {
    font-size: 22px;
  }

  .vec-portfolio-cta-btn {
    width: 100%;
    margin-left: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .vec-portfolio-section *,
  .vec-portfolio-section *::before,
  .vec-portfolio-section *::after {
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
  }
}

/*------------responsive-----------------*/

@media only screen and (min-width: 766px) {
	

}


/* Note: Design for a width of 768px */
@media only screen and (min-width: 768px) and (max-width: 992px) {
		.container{
		width:757px;
}
.center_contanier{
	width: 100%; margin:0 auto;
}
.smallcenter_contanier{
	width: 100%; margin:0 auto;
}
.small_net_center_contanier{
	width: 100%; margin:0 auto;
}
.center_big_contanier{
	width: 100%; margin:0 auto;
}
.center_smallbig_contanier{
	width: 100%; margin:0 auto;
}
.container-fluid {
	width:100%;
}










}




@media only screen and (min-width: 992px) and (max-width: 1024px)  {
		.container{
		width:990px;
	}
.center_contanier{
	width: 100%; margin:0 auto;
}
.smallcenter_contanier{
	width: 100%; margin:0 auto;
}
.small_net_center_contanier{
	width: 100%; margin:0 auto;
}
.center_big_contanier{
	width: 100%; margin:0 auto;
}
.center_smallbig_contanier{
	width: 100%; margin:0 auto;
}
.container-fluid {
	width:100%;
}





	
	
}


@media only screen and (min-width: 1024px) and (max-width: 1200px) {
.center_contanier{
	width: 100%; margin:0 auto;
}
.smallcenter_contanier{
	width: 100%; margin:0 auto;
}
.small_net_center_contanier{
	width: 100%; margin:0 auto;
}
.center_big_contanier{
	width: 100%; margin:0 auto;
}
.center_smallbig_contanier{
	width: 100%; margin:0 auto;
}
.container-fluid {
	width:100%;
}









	
	
	
}
@media only screen and (min-width: 1200px) and (max-width: 1366px) {
.center_contanier{
	width: 100%; margin:0 auto;
}
.smallcenter_contanier{
	width: 100%; margin:0 auto;
}
.small_net_center_contanier{
	width: 100%; margin:0 auto;
}
.center_big_contanier{
	width: 100%; margin:0 auto;
}
.center_smallbig_contanier{
	width: 100%; margin:0 auto;
}
.container-fluid {
	width:100%;
}















	
	
	
}

/* Note: Design for a width of 320px */

@media only screen and (min-width: 300px) and (max-width: 767px) {
.center_contanier{
	width: 100%; margin:0 auto;
}
.smallcenter_contanier{
	width: 100%; margin:0 auto;
}
.small_net_center_contanier{
	width: 100%; margin:0 auto;
}
.center_big_contanier{
	width: 100%; margin:0 auto;
}
.center_smallbig_contanier{
	width: 100%; margin:0 auto;
}
.container-fluid {
	width:100%;
}




























	
}

/* Note: Design for a width of 480px */

@media only screen and (min-width: 480px) and (max-width: 767px) {

	.container{
		width:470px;
	}
.container-fluid {
	width:100%;
}
	
	
	
	
	
}

@media only screen and (min-width: 300px) and (max-width: 479px) {
.center_contanier{
	width: 100%; margin:0 auto;
}
.smallcenter_contanier{
	width: 100%; margin:0 auto;
}
.small_net_center_contanier{
	width: 100%; margin:0 auto;
}
.center_big_contanier{
	width: 100%; margin:0 auto;
}
.center_smallbig_contanier{
	width: 100%; margin:0 auto;
}
.container-fluid {
	width:100%;
}


}




















