* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
:root {
  --primary: #018149;
  --secondary: #001064;
  --light: #f6f7f8;
  --dark: #010a35;
  --white: #ffffff;
  --border: #e8ecef;
}
/* =========================================================
   PCB HEADER — MAIN
========================================================= */

.main-header {
    width: 100%;
    background: var(--white);
    border-bottom: 1px solid rgba(1, 10, 53, 0.07);
    position: sticky;
    top: 0;
    left: 0;
    z-index: 9999;
    transition: all 0.3s ease;
}

.header-container {
    width: min(1400px, 94%);
    min-height: 82px;
    margin: 0 auto;

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

    gap: 22px;
    position: relative;
}


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

.header-logo {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    text-decoration: none;
}

.header-logo img {
    width: auto;
    height: 58px;
    max-width: 175px;
    object-fit: contain;

    transition:
        transform 0.3s ease,
        filter 0.3s ease;
}

.header-logo:hover img {
    transform: scale(1.04);
}


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

.main-navigation {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 3px;

    margin-left: auto;
    margin-right: auto;
}

.nav-link {
    position: relative;

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

    min-height: 44px;
    padding: 0 17px;

    border: 0;
    outline: none;
    background: transparent;

    color: var(--dark);

    font-size: 15px;
    font-weight: 600;

    text-decoration: none;
    white-space: nowrap;

    cursor: pointer;

    transition:
        color 0.3s ease,
        background 0.3s ease;
}


/* Bottom Active Line */

.nav-link::after {
    content: "";

    position: absolute;

    left: 14px;
    right: 14px;
    bottom: 3px;

    height: 3px;

    border-radius: 50px;

    background: var(--primary);

    transform: scaleX(0);
    transform-origin: center;

    transition: transform 0.3s ease;
}

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

.nav-link:hover::after,
.nav-link.active::after {
    transform: scaleX(1);
}

.nav-link.active {
    color: var(--primary);
}


/* =========================================================
   SERVICES DROPDOWN WRAPPER
========================================================= */

.nav-dropdown {
    position: relative;
    flex-shrink: 0;
}

.dropdown-toggle {
    gap: 8px;
}

.dropdown-toggle i {
    font-size: 10px;

    transition:
        transform 0.3s ease,
        color 0.3s ease;
}


/* Desktop arrow */

.nav-dropdown:hover .dropdown-toggle i {
    transform: rotate(180deg);
}


/* =========================================================
   DESKTOP DROPDOWN
========================================================= */

.services-dropdown-menu {
    position: absolute;

    top: calc(100% + 12px);
    left: 50%;

    width: 330px;
    max-width: calc(100vw - 30px);

    padding: 10px;

    background: var(--white);

    border: 1px solid var(--border);
    border-radius: 16px;

    box-shadow:
        0 20px 50px rgba(1, 10, 53, 0.14);

    opacity: 0;
    visibility: hidden;

    transform:
        translate(-50%, 12px);

    transition:
        opacity 0.25s ease,
        visibility 0.25s ease,
        transform 0.25s ease;

    z-index: 10001;
}


/* Desktop hover */

.nav-dropdown:hover .services-dropdown-menu {
    opacity: 1;
    visibility: visible;

    transform:
        translate(-50%, 0);
}


/* Dropdown Pointer */

.services-dropdown-menu::before {
    content: "";

    position: absolute;

    top: -7px;
    left: 50%;

    width: 14px;
    height: 14px;

    background: var(--white);

    border-left: 1px solid var(--border);
    border-top: 1px solid var(--border);

    transform:
        translateX(-50%)
        rotate(45deg);
}


/* =========================================================
   DROPDOWN ITEMS
========================================================= */

.services-dropdown-menu a {
    display: flex;
    align-items: center;

    gap: 13px;

    min-height: 48px;

    padding: 9px 12px;

    border-radius: 10px;

    color: var(--dark);

    text-decoration: none;

    font-size: 14px;
    font-weight: 500;

    transition:
        background 0.25s ease,
        color 0.25s ease,
        transform 0.25s ease;
}

.services-dropdown-menu a i {
    width: 31px;
    height: 31px;

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

    flex-shrink: 0;

    border-radius: 8px;

    background: rgba(1, 129, 73, 0.09);

    color: var(--primary);

    font-size: 13px;

    transition:
        all 0.25s ease;
}

.services-dropdown-menu a:hover {
    background: rgba(1, 129, 73, 0.07);

    color: var(--primary);

    transform: translateX(4px);
}

.services-dropdown-menu a:hover i {
    background: var(--primary);
    color: var(--white);

    transform:
        scale(1.05)
        rotate(-5deg);
}


/* =========================================================
   HEADER ACTIONS
========================================================= */

.header-actions {
    display: flex;
    align-items: center;

    gap: 9px;

    flex-shrink: 0;
}

.header-action {
    position: relative;

    display: flex;
    align-items: center;

    gap: 9px;

    min-height: 52px;

    padding: 5px 13px 5px 6px;

    border: 1px solid var(--border);
    border-radius: 50px;

    background: var(--white);

    color: var(--dark);

    text-decoration: none;

    overflow: hidden;

    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.header-action:hover {
    transform: translateY(-2px);

    box-shadow:
        0 9px 25px rgba(1, 10, 53, 0.10);
}


/* =========================================================
   ACTION ICON
========================================================= */

.action-icon {
    position: relative;
    z-index: 2;

    width: 40px;
    height: 40px;

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

    flex-shrink: 0;

    border-radius: 50%;

    color: var(--white);

    font-size: 15px;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.header-action:hover .action-icon {
    transform:
        rotate(-8deg)
        scale(1.06);
}

.call-action .action-icon {
    background: var(--secondary);
}

.whatsapp-action .action-icon {
    background: var(--primary);
}


/* =========================================================
   ACTION TEXT
========================================================= */

.action-text {
    display: flex;
    flex-direction: column;

    line-height: 1.15;

    padding-right: 3px;
}

.action-text small {
    color: #7b8495;

    font-size: 10px;
    font-weight: 500;

    margin-bottom: 3px;
}

.action-text strong {
    color: var(--dark);

    font-size: 12px;
    font-weight: 700;

    white-space: nowrap;
}

.whatsapp-action:hover .action-text strong {
    color: var(--primary);
}

.call-action:hover .action-text strong {
    color: var(--secondary);
}


/* =========================================================
   WHATSAPP WAVES
========================================================= */

.whatsapp-wave {
    position: absolute;

    left: 6px;
    top: 5px;

    width: 40px;
    height: 40px;

    border-radius: 50%;

    border: 1px solid rgba(1, 129, 73, 0.35);

    pointer-events: none;

    animation:
        whatsappWave 2.8s
        infinite
        ease-out;
}

.wave-two {
    animation-delay: 1.4s;
}

@keyframes whatsappWave {

    0% {
        transform: scale(0.85);
        opacity: 0.65;
    }

    70% {
        transform: scale(1.7);
        opacity: 0;
    }

    100% {
        transform: scale(1.7);
        opacity: 0;
    }
}


/* =========================================================
   MOBILE MENU BUTTON
========================================================= */

.mobile-menu-btn {
    width: 45px;
    height: 45px;

    display: none;

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

    flex-direction: column;

    gap: 5px;

    padding: 0;

    border: 1px solid var(--border);
    border-radius: 12px;

    background: var(--white);

    cursor: pointer;

    flex-shrink: 0;

    transition:
        background 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.mobile-menu-btn span {
    width: 20px;
    height: 2px;

    border-radius: 10px;

    background: var(--dark);

    transition:
        transform 0.3s ease,
        opacity 0.3s ease,
        background 0.3s ease;
}


/* Hamburger Hover */

.mobile-menu-btn:hover {
    background: var(--primary);
    border-color: var(--primary);

    box-shadow:
        0 7px 18px rgba(1, 129, 73, 0.20);
}

.mobile-menu-btn:hover span {
    background: var(--white);
}


/* Hamburger → X */

.mobile-menu-btn.is-active span:nth-child(1) {
    transform:
        translateY(7px)
        rotate(45deg);
}

.mobile-menu-btn.is-active span:nth-child(2) {
    opacity: 0;
    transform: scaleX(0);
}

.mobile-menu-btn.is-active span:nth-child(3) {
    transform:
        translateY(-7px)
        rotate(-45deg);
}


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

@media (max-width: 1150px) {

    .header-container {
        width: 94%;
        gap: 12px;
    }

    .header-logo img {
        max-width: 145px;
    }

    .nav-link {
        padding: 0 11px;
        font-size: 14px;
    }

    .header-action {
        padding-right: 7px;
    }

    .action-text {
        display: none;
    }

    .action-icon {
        width: 42px;
        height: 42px;
    }

    .whatsapp-wave {
        left: 5px;
    }
}


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

@media (max-width: 850px) {

    body {
        overflow-x: hidden;
    }

    .main-header {
        position: sticky;
        top: 0;
    }

    .header-container {
        width: 92%;
        min-height: 72px;

        gap: 12px;
    }


    /* Logo */

    .header-logo img {
        height: 50px;
        max-width: 145px;
    }


    /* Mobile Button */

    .mobile-menu-btn {
        display: flex;

        margin-left: auto;
    }


    /* Hide actions */

    .header-actions {
        display: none;
    }


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

    .main-navigation {

        position: absolute;

        top: calc(100% + 8px);

        left: 0;
        right: 0;

        width: 100%;

        display: flex;

        flex-direction: column;

        align-items: stretch;

        gap: 3px;

        padding: 9px;

        background: var(--white);

        border: 1px solid var(--border);

        border-radius: 16px;

        box-shadow:
            0 18px 45px rgba(1, 10, 53, 0.14);

        opacity: 0;
        visibility: hidden;

        transform:
            translateY(-12px)
            scale(0.98);

        transform-origin: top center;

        pointer-events: none;

        transition:
            opacity 0.25s ease,
            visibility 0.25s ease,
            transform 0.25s ease;

        max-height:
            calc(100vh - 90px);

        overflow-y: auto;

        overscroll-behavior: contain;
    }


    /* Open */

    .main-navigation.show {

        opacity: 1;
        visibility: visible;

        transform:
            translateY(0)
            scale(1);

        pointer-events: auto;
    }


    /* =====================================================
       MOBILE NAV LINKS
    ===================================================== */

    .nav-link {

        width: 100%;

        min-height: 48px;

        justify-content: space-between;

        padding: 0 15px;

        border-radius: 10px;

        font-size: 14px;
    }

    .nav-link::after {
        display: none;
    }

    .nav-link:hover,
    .nav-link.active {

        background:
            rgba(1, 129, 73, 0.08);

        color: var(--primary);
    }


    /* =====================================================
       MOBILE SERVICES DROPDOWN
    ===================================================== */

    .nav-dropdown {
        width: 100%;
    }

    .dropdown-toggle {
        width: 100%;

        justify-content: space-between;
    }

    .dropdown-toggle i {
        font-size: 10px;

        transition:
            transform 0.3s ease;
    }


    /*
       IMPORTANT:
       Desktop hover dropdown disabled on mobile.
    */

    .nav-dropdown:hover .services-dropdown-menu {
        opacity: 0;
        visibility: hidden;

        transform: none;
    }


    /* Closed */

    .services-dropdown-menu {

        position: static;

        width: 100%;
        max-width: none;

        margin-top: 3px;

        padding: 5px;

        border: 0;

        border-radius: 10px;

        background:
            #f7faf9;

        box-shadow: none;

        opacity: 0;
        visibility: hidden;

        display: none;

        transform: none;

        max-height: 0;

        overflow: hidden;

        transition:
            max-height 0.35s ease,
            opacity 0.25s ease,
            visibility 0.25s ease;
    }


    /* Open */

    .nav-dropdown.open .services-dropdown-menu {

        display: block;

        max-height: 500px;

        opacity: 1;
        visibility: visible;

        overflow-y: auto;
    }


    /* Arrow */

    .nav-dropdown.open .dropdown-toggle i {

        transform:
            rotate(180deg);

        color: var(--primary);
    }


    /* Disable pointer */

    .services-dropdown-menu::before {
        display: none;
    }


    /* Dropdown items */

    .services-dropdown-menu a {

        min-height: 43px;

        padding: 8px 10px;

        gap: 10px;

        border-radius: 8px;

        font-size: 13px;
    }

    .services-dropdown-menu a i {

        width: 28px;
        height: 28px;

        font-size: 12px;
    }

    .services-dropdown-menu a:hover {

        transform: none;

        background:
            rgba(1, 129, 73, 0.08);
    }
}


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

@media (max-width: 480px) {

    .header-container {

        width: 92%;

        min-height: 68px;

        gap: 8px;
    }

    .header-logo img {

        max-width: 125px;

        height: 45px;
    }

    .mobile-menu-btn {

        width: 42px;
        height: 42px;

        border-radius: 11px;
    }

    .main-navigation {

        top: calc(100% + 6px);

        border-radius: 14px;

        padding: 7px;
    }

    .nav-link {

        min-height: 46px;

        padding: 0 13px;

        font-size: 13px;
    }

    .services-dropdown-menu a {

        min-height: 41px;

        font-size: 12px;
    }
}


/* =========================================================
   VERY SMALL DEVICES
========================================================= */

@media (max-width: 360px) {

    .header-container {
        width: 94%;
    }

    .header-logo img {
        max-width: 112px;
        height: 42px;
    }

    .mobile-menu-btn {
        width: 40px;
        height: 40px;
    }

    .main-navigation {
        max-height: calc(100vh - 82px);
    }
}
/* =========================================================
   MOBILE HEADER ACTIONS
========================================================= */

.mobile-header-actions {
    display: none;
}


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

@media (max-width: 850px) {

    .mobile-header-actions {
        display: flex;

        flex-direction: column;

        gap: 8px;

        margin-top: 8px;

        padding-top: 10px;

        border-top: 1px solid var(--border);
    }


    /* =====================================================
       MOBILE ACTION BUTTON
    ===================================================== */

    .mobile-header-action {
        position: relative;

        display: flex;
        align-items: center;

        width: 100%;

        min-height: 58px;

        padding: 7px 12px 7px 7px;

        border-radius: 13px;

        text-decoration: none;

        overflow: hidden;

        transition:
            transform 0.3s ease,
            box-shadow 0.3s ease,
            background 0.3s ease;
    }


    /* =====================================================
       CALL
    ===================================================== */

    .mobile-call-action {
        background:
            rgba(0, 16, 100, 0.055);

        border: 1px solid rgba(0, 16, 100, 0.10);
    }


    .mobile-call-action:hover {
        background:
            rgba(0, 16, 100, 0.09);

        transform: translateY(-2px);

        box-shadow:
            0 7px 18px rgba(0, 16, 100, 0.10);
    }


    /* =====================================================
       WHATSAPP
    ===================================================== */

    .mobile-whatsapp-action {
        background:
            rgba(1, 129, 73, 0.055);

        border: 1px solid rgba(1, 129, 73, 0.12);
    }


    .mobile-whatsapp-action:hover {
        background:
            rgba(1, 129, 73, 0.10);

        transform: translateY(-2px);

        box-shadow:
            0 7px 18px rgba(1, 129, 73, 0.12);
    }


    /* =====================================================
       ACTION ICON
    ===================================================== */

    .mobile-action-icon {

        width: 42px;
        height: 42px;

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

        flex-shrink: 0;

        border-radius: 11px;

        color: var(--white);

        font-size: 15px;

        transition:
            transform 0.3s ease;
    }


    .mobile-call-action .mobile-action-icon {
        background: var(--secondary);
    }


    .mobile-whatsapp-action .mobile-action-icon {
        background: var(--primary);
    }


    .mobile-header-action:hover .mobile-action-icon {
        transform:
            scale(1.06)
            rotate(-5deg);
    }


    /* =====================================================
       ACTION CONTENT
    ===================================================== */

    .mobile-action-content {

        display: flex;

        flex-direction: column;

        margin-left: 11px;

        line-height: 1.15;
    }


    .mobile-action-content small {

        color: #7b8495;

        font-size: 10px;

        font-weight: 500;

        margin-bottom: 4px;
    }


    .mobile-action-content strong {

        color: var(--dark);

        font-size: 13px;

        font-weight: 700;
    }


    .mobile-call-action:hover
    .mobile-action-content strong {
        color: var(--secondary);
    }


    .mobile-whatsapp-action:hover
    .mobile-action-content strong {
        color: var(--primary);
    }


    /* =====================================================
       RIGHT ARROW
    ===================================================== */

    .mobile-action-arrow {

        margin-left: auto;

        padding-right: 5px;

        color: #8b93a2;

        font-size: 11px;

        transition:
            transform 0.3s ease,
            color 0.3s ease;
    }


    .mobile-header-action:hover
    .mobile-action-arrow {

        transform: translateX(4px);

        color: var(--primary);
    }

}
/* ========================================================= PCB HERO SLIDER ========================================================= */
.pcb-hero {
  width: 100%;
  height: 600px;
  position: relative;
  overflow: hidden;
  background: #010a35;
}
/* ========================================================= SLIDER ========================================================= */
.pcb-slider {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}
/* ========================================================= SLIDE ========================================================= */
.pcb-slide {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  z-index: 1;
  transition:
    opacity 0.8s ease,
    visibility 0.8s ease;
}
.pcb-slide.active {
  opacity: 1;
  visibility: visible;
  z-index: 2;
}
/* ========================================================= BACKGROUND IMAGE ========================================================= */
.pcb-slide-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  transform: scale(1.05);
  transition: transform 5s ease;
}
.pcb-slide.active .pcb-slide-bg {
  transform: scale(1);
}
/* ========================================================= DARK OVERLAY ========================================================= */
.pcb-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    90deg,
    rgba(1, 10, 53, 0.94) 0%,
    rgba(1, 10, 53, 0.78) 34%,
    rgba(1, 10, 53, 0.42) 65%,
    rgba(1, 10, 53, 0.15) 100%
  );
}
/* subtle green glow */
.pcb-overlay::after {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  left: 38%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: rgba(1, 129, 73, 0.1);
  filter: blur(70px);
  pointer-events: none;
}
/* ========================================================= CONTAINER ========================================================= */
.pcb-hero-container {
  position: relative;
  z-index: 3;
  width: min(1350px, 92%);
  height: 100%;
  margin: auto;
  display: flex;
  align-items: center;
}
/* ========================================================= CONTENT ========================================================= */
.pcb-hero-content {
  width: min(680px, 100%);
  padding-top: 10px;
  color: #ffffff;
}
/* ========================================================= BADGE ========================================================= */
.pcb-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 8px 15px;
  margin-bottom: 18px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 50px;
  background: rgba(255, 255, 255, 0.09);
  backdrop-filter: blur(8px);
  color: #ffffff;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.3px;
  animation: pcbBadgeIn 0.8s ease both;
}
.pcb-hero-badge i {
  color: #58d59a;
}
@keyframes pcbBadgeIn {
  from {
    opacity: 0;
    transform: translateY(15px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* ========================================================= HEADING ========================================================= */
.pcb-hero-content h1 {
  max-width: 700px;
  margin: 0 0 20px;
  color: #ffffff;
  font-size: clamp(38px, 4.2vw, 64px);
  line-height: 1.08;
  font-weight: 800;
  letter-spacing: -1.5px;
  animation: pcbHeadingIn 0.8s 0.12s ease both;
}
@keyframes pcbHeadingIn {
  from {
    opacity: 0;
    transform: translateX(-35px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
/* ========================================================= DESCRIPTION ========================================================= */
.pcb-hero-content p {
  max-width: 620px;
  margin: 0 0 28px;
  color: rgba(255, 255, 255, 0.84);
  font-size: 17px;
  line-height: 1.75;
  font-weight: 400;
  animation: pcbTextIn 0.8s 0.22s ease both;
}
@keyframes pcbTextIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* ========================================================= BUTTONS ========================================================= */
.pcb-hero-buttons {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  animation: pcbButtonsIn 0.8s 0.32s ease both;
}
@keyframes pcbButtonsIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.pcb-btn {
  min-height: 52px;
  padding: 0 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  border-radius: 50px;
  text-decoration: none;
  font-size: 14px;
  font-weight: 700;
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    background 0.3s ease,
    color 0.3s ease;
}
.pcb-btn:hover {
  transform: translateY(-3px);
}
/* Primary */
.pcb-btn-primary {
  color: #ffffff;
  background: #018149;
  border: 1px solid #018149;
  box-shadow: 0 10px 25px rgba(1, 129, 73, 0.25);
}
.pcb-btn-primary:hover {
  color: #ffffff;
  background: #016b3d;
  box-shadow: 0 14px 30px rgba(1, 129, 73, 0.35);
}
.pcb-btn-primary i {
  transition: transform 0.3s ease;
}
.pcb-btn-primary:hover i {
  transform: translateX(4px);
}
/* Outline */
.pcb-btn-outline {
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.38);
  background: rgba(255, 255, 255, 0.07);
  backdrop-filter: blur(8px);
}
.pcb-btn-outline:hover {
  color: #001064;
  background: #ffffff;
  border-color: #ffffff;
}
/* ========================================================= SLIDER ARROWS ========================================================= */
.pcb-slider-control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 50%;
  background: rgba(1, 10, 53, 0.45);
  backdrop-filter: blur(8px);
  color: #ffffff;
  font-size: 14px;
  cursor: pointer;
  transition:
    background 0.3s ease,
    border-color 0.3s ease,
    transform 0.3s ease;
}
.pcb-slider-control:hover {
  background: #018149;
  border-color: #018149;
  transform: translateY(-50%) scale(1.08);
}
.pcb-prev {
  left: 25px;
}
.pcb-next {
  right: 25px;
}
/* ========================================================= DOTS ========================================================= */
.pcb-slider-dots {
  position: absolute;
  z-index: 10;
  left: 50%;
  bottom: 25px;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 7px;
}
.pcb-dot {
  width: 9px;
  height: 9px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.45);
  cursor: pointer;
  transition:
    width 0.3s ease,
    background 0.3s ease;
}
.pcb-dot.active {
  width: 28px;
  border-radius: 20px;
  background: #018149;
}
/* ========================================================= TABLET ========================================================= */
@media (max-width: 992px) {
  .pcb-hero {
    height: 600px;
  }
  .pcb-hero-container {
    width: 88%;
  }
  .pcb-hero-content {
    width: 70%;
  }
  .pcb-hero-content h1 {
    font-size: clamp(36px, 5vw, 52px);
  }
  .pcb-hero-content p {
    font-size: 16px;
  }
  .pcb-slider-control {
    width: 44px;
    height: 44px;
  }
  .pcb-prev {
    left: 15px;
  }
  .pcb-next {
    right: 15px;
  }
}
/* ========================================================= MOBILE ========================================================= */
@media (max-width: 767px) {
  .pcb-hero {
    height: 600px;
  }
  .pcb-slide-bg {
    background-position: center;
  }
  .pcb-overlay {
    background: linear-gradient(
      90deg,
      rgba(1, 10, 53, 0.93),
      rgba(1, 10, 53, 0.72)
    );
  }
  .pcb-hero-container {
    width: 88%;
    align-items: center;
  }
  .pcb-hero-content {
    width: 100%;
    padding: 0 35px 20px 0;
  }
  .pcb-hero-badge {
    font-size: 11px;
    padding: 7px 12px;
    margin-bottom: 14px;
  }
  .pcb-hero-content h1 {
    font-size: 34px;
    line-height: 1.14;
    letter-spacing: -0.8px;
    margin-bottom: 15px;
  }
  .pcb-hero-content p {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 22px;
    max-width: 520px;
  }
  .pcb-btn {
    min-height: 46px;
    padding: 0 17px;
    font-size: 12px;
  }
  .pcb-slider-control {
    width: 38px;
    height: 38px;
    font-size: 12px;
  }
  .pcb-prev {
    left: 10px;
  }
  .pcb-next {
    right: 10px;
  }
  .pcb-slider-dots {
    bottom: 17px;
  }
}
/* ========================================================= SMALL MOBILE ========================================================= */
@media (max-width: 480px) {
  .pcb-hero {
    height: 600px;
  }
  .pcb-hero-container {
    width: 90%;
  }
  .pcb-hero-content {
    padding-right: 25px;
  }
  .pcb-hero-content h1 {
    font-size: 29px;
  }
  .pcb-hero-content p {
    font-size: 13px;
    line-height: 1.55;
  }
  .pcb-hero-buttons {
    gap: 8px;
  }
  .pcb-btn {
    min-height: 43px;
    padding: 0 14px;
    font-size: 11px;
  }
  .pcb-slider-control {
    width: 34px;
    height: 34px;
  }
  .pcb-prev {
    left: 7px;
  }
  .pcb-next {
    right: 7px;
  }
}
/* ========================================================= PCB ABOUT SECTION ========================================================= */
.pcb-about-section {
  position: relative;
  width: 100%;
  padding: 100px 0;
  overflow: hidden;
  background: #ffffff;
  display: flex;
  justify-content: center;
}
/* ========================================================= BACKGROUND DECORATION ========================================================= */
.pcb-about-section::before {
  content: "";
  position: absolute;
  width: 450px;
  height: 450px;
  right: -180px;
  top: -180px;
  border-radius: 50%;
  background: rgba(1, 129, 73, 0.045);
  pointer-events: none;
}
.pcb-about-section::after {
  content: "";
  position: absolute;
  width: 300px;
  height: 300px;
  left: -150px;
  bottom: -150px;
  border-radius: 50%;
  background: rgba(0, 16, 100, 0.035);
  pointer-events: none;
}
/* ========================================================= CONTAINER ========================================================= */
.pcb-about-container {
  position: relative;
  z-index: 2;
  width: min(1350px, 92%);
  margin: auto;
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  gap: 75px;
  align-items: center;
}
/* ========================================================= SECTION TAG ========================================================= */
.pcb-section-tag {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 8px 15px;
  margin-bottom: 18px;
  border-radius: 50px;
  background: rgba(1, 129, 73, 0.08);
  border: 1px solid rgba(1, 129, 73, 0.14);
  color: #018149;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
}
.pcb-section-tag i {
  font-size: 13px;
}
/* ========================================================= HEADING ========================================================= */
.pcb-about-content h2 {
  max-width: 650px;
  margin: 0 0 20px;
  color: #010a35;
  font-size: clamp(38px, 4vw, 56px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -1.5px;
}
.pcb-about-content h2 span {
  position: relative;
  color: #018149;
  display: inline;
}
/* underline */
.pcb-about-content h2 span::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 65px;
  height: 4px;
  border-radius: 10px;
  background: #018149;
}
/* ========================================================= INTRO ========================================================= */
.pcb-about-intro {
  max-width: 620px;
  margin: 0 0 28px;
  color: #4e5870;
  font-size: 17px;
  line-height: 1.75;
}
/* ========================================================= FEATURES ========================================================= */
.pcb-about-features {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
  margin-bottom: 25px;
}
.pcb-about-feature {
  display: flex;
  gap: 13px;
  padding: 17px;
  border: 1px solid #e7ebef;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 8px 25px rgba(1, 10, 53, 0.04);
  transition:
    transform 0.3s ease,
    border-color 0.3s ease,
    box-shadow 0.3s ease;
}
.pcb-about-feature:hover {
  transform: translateY(-5px);
  border-color: rgba(1, 129, 73, 0.35);
  box-shadow: 0 15px 35px rgba(1, 129, 73, 0.1);
}
/* ========================================================= FEATURE ICON ========================================================= */
.pcb-feature-icon {
  flex: 0 0 46px;
  width: 46px;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: rgba(1, 129, 73, 0.1);
  color: #018149;
  font-size: 17px;
  transition:
    background 0.3s ease,
    color 0.3s ease,
    transform 0.3s ease;
}
.pcb-about-feature:hover .pcb-feature-icon {
  background: #018149;
  color: #ffffff;
  transform: rotate(-5deg);
}
.pcb-about-feature h4 {
  margin: 0 0 5px;
  color: #010a35;
  font-size: 15px;
  font-weight: 700;
}
.pcb-about-feature p {
  margin: 0;
  color: #70798b;
  font-size: 12px;
  line-height: 1.55;
}
/* ========================================================= DESCRIPTION ========================================================= */
.pcb-about-description {
  max-width: 640px;
  margin: 0 0 25px;
  color: #626c7d;
  font-size: 14px;
  line-height: 1.8;
}
/* ========================================================= CONTACT ========================================================= */
.pcb-about-contact {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  padding-top: 22px;
  margin-bottom: 25px;
  border-top: 1px solid #e8ebef;
}
.pcb-contact-item {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 230px;
  text-decoration: none;
  color: inherit;
}
.pcb-contact-icon {
  width: 43px;
  height: 43px;
  flex: 0 0 43px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #ffffff;
  background: #018149;
  box-shadow: 0 7px 18px rgba(1, 129, 73, 0.2);
  transition:
    transform 0.3s ease,
    background 0.3s ease;
}
.pcb-contact-item:hover .pcb-contact-icon {
  transform: scale(1.08);
  background: #001064;
}
.pcb-contact-item span {
  display: block;
  margin-bottom: 2px;
  color: #7a8290;
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.pcb-contact-item strong {
  display: block;
  color: #010a35;
  font-size: 13px;
  font-weight: 700;
  word-break: break-word;
}
/* ========================================================= BUTTON ========================================================= */
.pcb-about-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  min-height: 50px;
  padding: 0 23px;
  border-radius: 50px;
  background: #018149;
  color: #ffffff;
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
  box-shadow: 0 10px 25px rgba(1, 129, 73, 0.2);
  transition:
    transform 0.3s ease,
    background 0.3s ease,
    box-shadow 0.3s ease;
}
.pcb-about-btn:hover {
  color: #ffffff;
  background: #001064;
  transform: translateY(-3px);
  box-shadow: 0 15px 30px rgba(0, 16, 100, 0.18);
}
.pcb-about-btn i {
  transition: transform 0.3s ease;
}
.pcb-about-btn:hover i {
  transform: translateX(4px);
}
/* ========================================================= IMAGE GALLERY ========================================================= */
.pcb-about-gallery {
  position: relative;
  width: 100%;
  min-height: 560px;
}
/* ========================================================= MAIN IMAGE ========================================================= */
.pcb-gallery-main {
  position: absolute;
  width: 65%;
  height: 390px;
  top: 55px;
  right: 8%;
  overflow: hidden;
  border-radius: 24px;
  background: #e9edf0;
  box-shadow: 0 25px 60px rgba(1, 10, 53, 0.16);
  z-index: 3;
}
.pcb-gallery-main::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(1, 129, 73, 0.12), transparent 50%);
  pointer-events: none;
}
.pcb-gallery-main img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.pcb-gallery-main:hover img {
  transform: scale(1.06);
}
/* ========================================================= IMAGE BADGE ========================================================= */
.pcb-image-badge {
  position: absolute;
  left: 20px;
  bottom: 20px;
  z-index: 5;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px 15px;
  border-radius: 13px;
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(10px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
}
.pcb-image-badge i {
  color: #018149;
  font-size: 22px;
}
.pcb-image-badge strong {
  display: block;
  color: #010a35;
  font-size: 12px;
}
.pcb-image-badge span {
  display: block;
  margin-top: 2px;
  color: #7a8290;
  font-size: 10px;
}
/* ========================================================= SMALL IMAGES ========================================================= */
.pcb-gallery-small {
  position: absolute;
  overflow: hidden;
  border-radius: 18px;
  background: #ffffff;
  border: 7px solid #ffffff;
  box-shadow: 0 15px 40px rgba(1, 10, 53, 0.13);
  z-index: 4;
}
.pcb-gallery-small img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.pcb-gallery-small:hover img {
  transform: scale(1.08);
}
/* Image 1 */
.pcb-gallery-one {
  width: 190px;
  height: 145px;
  top: 0;
  left: 0;
}
/* Image 2 */
.pcb-gallery-two {
  width: 175px;
  height: 135px;
  left: 4%;
  bottom: 40px;
}
/* Image 3 */
.pcb-gallery-three {
  width: 170px;
  height: 130px;
  right: 0;
  bottom: 0;
}
/* ========================================================= DECORATIVE PATTERN ========================================================= */
.pcb-gallery-pattern {
  position: absolute;
  width: 170px;
  height: 170px;
  right: 0;
  top: 15px;
  z-index: 1;
  background-image: radial-gradient(#018149 1.5px, transparent 1.5px);
  background-size: 13px 13px;
  opacity: 0.25;
}
/* ========================================================= RESPONSIVE — TABLET ========================================================= */
@media (max-width: 1100px) {
  .pcb-about-container {
    gap: 45px;
  }
  .pcb-about-gallery {
    min-height: 500px;
  }
  .pcb-gallery-main {
    width: 67%;
    height: 350px;
  }
  .pcb-gallery-one {
    width: 155px;
    height: 120px;
  }
  .pcb-gallery-two {
    width: 150px;
    height: 115px;
  }
  .pcb-gallery-three {
    width: 145px;
    height: 110px;
  }
}
/* ========================================================= RESPONSIVE — TABLET / MOBILE ========================================================= */
@media (max-width: 850px) {
  .pcb-about-section {
    padding: 75px 0;
  }
  .pcb-about-container {
    grid-template-columns: 1fr;
    gap: 60px;
  }
  .pcb-about-content h2 {
    font-size: 43px;
  }
  .pcb-about-gallery {
    width: 90%;
    margin: auto;
    min-height: 500px;
  }
}
/* ========================================================= RESPONSIVE — MOBILE ========================================================= */
@media (max-width: 600px) {
  .pcb-about-section {
    padding: 60px 0;
  }
  .pcb-about-container {
    width: 90%;
    gap: 45px;
  }
  .pcb-section-tag {
    font-size: 10px;
    padding: 7px 12px;
  }
  .pcb-about-content h2 {
    font-size: 34px;
    line-height: 1.15;
    letter-spacing: -0.8px;
  }
  .pcb-about-intro {
    font-size: 14px;
    line-height: 1.7;
  }
  .pcb-about-features {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .pcb-about-feature {
    padding: 14px;
  }
  .pcb-about-description {
    font-size: 13px;
    line-height: 1.7;
  }
  .pcb-about-contact {
    flex-direction: column;
    gap: 15px;
  }
  .pcb-contact-item {
    min-width: 0;
    width: 100%;
    padding-bottom: 10px;
  }
  .pcb-about-gallery {
    width: 100%;
    min-height: 430px;
  }
  .pcb-gallery-main {
    width: 72%;
    height: 300px;
    right: 4%;
    top: 45px;
    border-radius: 18px;
  }
  .pcb-gallery-one {
    width: 125px;
    height: 100px;
    top: 0;
    left: 0;
    border-width: 5px;
    border-radius: 14px;
  }
  .pcb-gallery-two {
    width: 125px;
    height: 95px;
    left: 0;
    bottom: 20px;
    border-width: 5px;
    border-radius: 14px;
  }
  .pcb-gallery-three {
    width: 120px;
    height: 90px;
    right: 0;
    bottom: 0;
    border-width: 5px;
    border-radius: 14px;
  }
  .pcb-image-badge {
    left: 12px;
    bottom: 12px;
    padding: 8px 10px;
  }
  .pcb-image-badge i {
    font-size: 18px;
  }
  .pcb-image-badge strong {
    font-size: 10px;
  }
  .pcb-image-badge span {
    font-size: 8px;
  }
  .pcb-gallery-pattern {
    width: 110px;
    height: 110px;
    opacity: 0.18;
  }
}
/* ========================================================= VERY SMALL MOBILE ========================================================= */
@media (max-width: 400px) {
  .pcb-about-content h2 {
    font-size: 30px;
  }
  .pcb-gallery-main {
    height: 270px;
  }
  .pcb-about-gallery {
    min-height: 390px;
  }
  .pcb-gallery-one {
    width: 105px;
    height: 85px;
  }
  .pcb-gallery-two {
    width: 105px;
    height: 82px;
  }
  .pcb-gallery-three {
    width: 100px;
    height: 78px;
  }
}
/* ========================================================= PCB STATS / FACTS SECTION ========================================================= */
.pcb-stats-section {
  position: relative;
  width: 100%;
  min-height: 480px;
  padding: 90px 0;
  overflow: hidden;
  isolation: isolate;
  background: #010a35;
}
/* ========================================================= BACKGROUND IMAGE ========================================================= */
.pcb-stats-bg {
  position: absolute;
  inset: 0;
  z-index: -3;
  background-image: url("../img/ban1.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transform: scale(1.03);
}
/* ========================================================= DARK OVERLAY ========================================================= */
.pcb-stats-overlay {
  position: absolute;
  inset: 0;
  z-index: -2;
  background: linear-gradient(
    90deg,
    rgba(1, 10, 53, 0.96) 0%,
    rgba(1, 10, 53, 0.88) 45%,
    rgba(0, 16, 100, 0.78) 100%
  );
}
/* ========================================================= GREEN LIGHT EFFECT ========================================================= */
.pcb-stats-section::before {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  top: -210px;
  right: -120px;
  border-radius: 50%;
  background: rgba(1, 129, 73, 0.18);
  filter: blur(10px);
  z-index: -1;
  pointer-events: none;
}
.pcb-stats-section::after {
  content: "";
  position: absolute;
  width: 300px;
  height: 300px;
  bottom: -170px;
  left: -100px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.08);
  z-index: -1;
  pointer-events: none;
}
/* ========================================================= CONTAINER ========================================================= */
.pcb-stats-container {
  position: relative;
  z-index: 3;
  width: min(1350px, 92%);
  margin: auto;
}
/* ========================================================= HEADING ========================================================= */
.pcb-stats-heading {
  max-width: 720px;
  margin: 0 auto 50px;
  text-align: center;
}
.pcb-stats-heading > span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 15px;
  margin-bottom: 15px;
  border-radius: 50px;
  color: #55d59a;
  background: rgba(1, 129, 73, 0.15);
  border: 1px solid rgba(85, 213, 154, 0.18);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.pcb-stats-heading > span i {
  font-size: 12px;
}
.pcb-stats-heading h2 {
  margin: 0 0 15px;
  color: #ffffff;
  font-size: clamp(32px, 4vw, 48px);
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -1px;
}
.pcb-stats-heading h2 strong {
  display: inline;
  color: #55d59a;
  font-weight: 800;
}
.pcb-stats-heading p {
  max-width: 620px;
  margin: auto;
  color: rgba(255, 255, 255, 0.68);
  font-size: 14px;
  line-height: 1.7;
}
/* ========================================================= STATS GRID ========================================================= */
.pcb-stats-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}
/* ========================================================= STAT CARD ========================================================= */
.pcb-stat-card {
  position: relative;
  min-height: 235px;
  padding: 30px 23px;
  overflow: hidden;
  text-align: center;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.075);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 15px 45px rgba(0, 0, 0, 0.12);
  transition:
    transform 0.35s ease,
    border-color 0.35s ease,
    background 0.35s ease,
    box-shadow 0.35s ease;
}
/* top green line */
.pcb-stat-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 0;
  height: 3px;
  transform: translateX(-50%);
  border-radius: 0 0 10px 10px;
  background: #018149;
  transition: width 0.4s ease;
}
/* glow */
.pcb-stat-card::after {
  content: "";
  position: absolute;
  width: 100px;
  height: 100px;
  right: -55px;
  bottom: -55px;
  border-radius: 50%;
  background: rgba(1, 129, 73, 0.16);
  transition: transform 0.4s ease;
}
.pcb-stat-card:hover {
  transform: translateY(-9px);
  border-color: rgba(85, 213, 154, 0.38);
  background: rgba(255, 255, 255, 0.105);
  box-shadow: 0 22px 55px rgba(0, 0, 0, 0.22);
}
.pcb-stat-card:hover::before {
  width: 70%;
}
.pcb-stat-card:hover::after {
  transform: scale(1.5);
}
/* ========================================================= ICON ========================================================= */
.pcb-stat-icon {
  width: 55px;
  height: 55px;
  margin: 0 auto 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 15px;
  color: #55d59a;
  background: rgba(1, 129, 73, 0.16);
  border: 1px solid rgba(85, 213, 154, 0.18);
  font-size: 19px;
  transition:
    transform 0.35s ease,
    background 0.35s ease,
    color 0.35s ease;
}
.pcb-stat-card:hover .pcb-stat-icon {
  transform: translateY(-3px) rotate(-5deg);
  color: #ffffff;
  background: #018149;
}
/* ========================================================= NUMBER ========================================================= */
.pcb-stat-number {
  display: flex;
  justify-content: center;
  align-items: baseline;
  margin-bottom: 4px;
  line-height: 1;
}
.pcb-counter {
  color: #ffffff;
  font-size: 45px;
  font-weight: 800;
  letter-spacing: -1px;
}
.pcb-stat-number b {
  margin-left: 3px;
  color: #55d59a;
  font-size: 22px;
  font-weight: 800;
}
/* ========================================================= CARD TITLE ========================================================= */
.pcb-stat-card h3 {
  margin: 9px 0 8px;
  color: #ffffff;
  font-size: 15px;
  font-weight: 700;
}
/* ========================================================= CARD DESCRIPTION ========================================================= */
.pcb-stat-card p {
  max-width: 220px;
  margin: auto;
  color: rgba(255, 255, 255, 0.57);
  font-size: 11px;
  line-height: 1.6;
}
/* ========================================================= TABLET ========================================================= */
@media (max-width: 1000px) {
  .pcb-stats-section {
    padding: 75px 0;
  }
  .pcb-stats-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: 760px;
    margin: auto;
  }
  .pcb-stat-card {
    min-height: 220px;
  }
}
/* ========================================================= MOBILE ========================================================= */
@media (max-width: 600px) {
  .pcb-stats-section {
    padding: 65px 0;
  }
  .pcb-stats-container {
    width: 90%;
  }
  .pcb-stats-heading {
    margin-bottom: 35px;
  }
  .pcb-stats-heading h2 {
    font-size: 31px;
    letter-spacing: -0.5px;
  }
  .pcb-stats-heading p {
    font-size: 13px;
    line-height: 1.65;
  }
  .pcb-stats-grid {
    grid-template-columns: 1fr;
    gap: 13px;
    max-width: 430px;
  }
  .pcb-stat-card {
    min-height: auto;
    padding: 25px 20px;
  }
  .pcb-stat-icon {
    width: 50px;
    height: 50px;
    margin-bottom: 14px;
  }
  .pcb-counter {
    font-size: 39px;
  }
  .pcb-stat-card h3 {
    font-size: 14px;
  }
  .pcb-stat-card p {
    font-size: 11px;
  }
}
/* ========================================================= SMALL MOBILE ========================================================= */
@media (max-width: 380px) {
  .pcb-stats-heading h2 {
    font-size: 28px;
  }
  .pcb-stat-card {
    padding: 22px 16px;
  }
  .pcb-counter {
    font-size: 35px;
  }
}
/* ========================================================= WHY CHOOSE US SECTION ========================================================= */
.pcb-why-section {
  position: relative;
  width: 100%;
  padding: 110px 0;
  overflow: hidden;
  background: linear-gradient(180deg, #ffffff 0%, #f7faf9 100%);
  isolation: isolate;
}
/* ========================================================= ANIMATED GRID BACKGROUND ========================================================= */
.pcb-why-grid {
  position: absolute;
  inset: 0;
  z-index: -3;
  opacity: 0.45;
  background-image:
    linear-gradient(rgba(1, 129, 73, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(1, 129, 73, 0.045) 1px, transparent 1px);
  background-size: 55px 55px;
  animation: pcbGridMove 18s linear infinite;
}
@keyframes pcbGridMove {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 55px 55px;
  }
}
/* ========================================================= BACKGROUND ORBS ========================================================= */
.pcb-why-orb {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  z-index: -2;
  filter: blur(2px);
}
.pcb-why-orb-one {
  width: 380px;
  height: 380px;
  right: -180px;
  top: -100px;
  background: rgba(1, 129, 73, 0.07);
  animation: pcbOrbFloat 7s ease-in-out infinite;
}
.pcb-why-orb-two {
  width: 280px;
  height: 280px;
  left: -140px;
  bottom: -120px;
  background: rgba(0, 16, 100, 0.055);
  animation: pcbOrbFloat 9s ease-in-out infinite reverse;
}
@keyframes pcbOrbFloat {
  0%,
  100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(20px, -20px);
  }
}
/* ========================================================= MAIN CONTAINER ========================================================= */
.pcb-why-container {
  width: min(1320px, 92%);
  margin: auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr);
  gap: 85px;
  align-items: center;
}
/* ========================================================= LABEL ========================================================= */
.pcb-section-label {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 18px;
  color: #018149;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}
.pcb-section-label i {
  font-size: 14px;
}
.pcb-label-line {
  width: 35px;
  height: 2px;
  border-radius: 10px;
  background: #018149;
}
/* ========================================================= MAIN HEADING ========================================================= */
.pcb-why-title {
  max-width: 650px;
  margin: 0 0 20px;
  color: #010a35;
  font-size: clamp(34px, 4vw, 52px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: -1.5px;
}
.pcb-why-title span {
  display: block;
  color: #018149;
}
/* ========================================================= INTRO ========================================================= */
.pcb-why-intro {
  max-width: 650px;
  margin: 0 0 38px;
  color: #5c6474;
  font-size: 15px;
  line-height: 1.8;
}
/* ========================================================= FEATURE CARD ========================================================= */
.pcb-feature-card {
  position: relative;
  display: flex;
  align-items: center;
  gap: 18px;
  width: 100%;
  margin-bottom: 16px;
  padding: 20px 22px;
  overflow: hidden;
  border: 1px solid #e7ecea;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 8px 30px rgba(1, 10, 53, 0.045);
  transition:
    transform 0.35s ease,
    box-shadow 0.35s ease,
    border-color 0.35s ease;
}
.pcb-feature-card:last-child {
  margin-bottom: 0;
}
/* Green animated line */
.pcb-feature-card::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 3px;
  background: #018149;
  transform: scaleY(0);
  transform-origin: center;
  transition: transform 0.4s ease;
}
/* Background glow */
.pcb-feature-card::after {
  content: "";
  position: absolute;
  width: 140px;
  height: 140px;
  right: -80px;
  bottom: -90px;
  border-radius: 50%;
  background: rgba(1, 129, 73, 0.07);
  transition: transform 0.5s ease;
}
.pcb-feature-card:hover {
  transform: translateX(8px);
  border-color: rgba(1, 129, 73, 0.25);
  box-shadow: 0 18px 45px rgba(1, 10, 53, 0.09);
}
.pcb-feature-card:hover::before {
  transform: scaleY(1);
}
.pcb-feature-card:hover::after {
  transform: scale(2);
}
/* ========================================================= FEATURE NUMBER ========================================================= */
.pcb-feature-number {
  position: absolute;
  top: 10px;
  right: 17px;
  color: rgba(1, 10, 53, 0.055);
  font-size: 30px;
  font-weight: 900;
  line-height: 1;
}
/* ========================================================= FEATURE ICON ========================================================= */
.pcb-feature-icon {
  position: relative;
  flex-shrink: 0;
  width: 68px;
  height: 68px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  background: linear-gradient(145deg, #018149, #006b3d);
  box-shadow: 0 10px 25px rgba(1, 129, 73, 0.22);
  transition: transform 0.35s ease;
}
.pcb-feature-icon img {
  position: relative;
  z-index: 3;
  width: 34px;
  height: 34px;
  object-fit: contain;
  transition: transform 0.4s ease;
}
/* ========================================================= ICON RING ========================================================= */
.pcb-icon-ring {
  position: absolute;
  inset: -6px;
  border: 1px dashed rgba(1, 129, 73, 0.35);
  border-radius: 22px;
  opacity: 0;
  transform: scale(0.7);
  transition:
    opacity 0.35s ease,
    transform 0.45s ease;
  animation: pcbRingRotate 7s linear infinite;
}
@keyframes pcbRingRotate {
  to {
    transform: rotate(360deg);
  }
}
.pcb-feature-card:hover .pcb-feature-icon {
  transform: translateY(-4px) rotate(-3deg);
}
.pcb-feature-card:hover .pcb-feature-icon img {
  transform: scale(1.1);
}
.pcb-feature-card:hover .pcb-icon-ring {
  opacity: 1;
  transform: scale(1);
}
/* ========================================================= FEATURE CONTENT ========================================================= */
.pcb-feature-content {
  position: relative;
  z-index: 2;
  flex: 1;
}
.pcb-feature-content h3 {
  margin: 0 0 6px;
  color: #010a35;
  font-size: 17px;
  font-weight: 800;
  transition: color 0.3s ease;
}
.pcb-feature-card:hover .pcb-feature-content h3 {
  color: #018149;
}
.pcb-feature-content p {
  max-width: 600px;
  margin: 0;
  color: #6c7481;
  font-size: 12px;
  line-height: 1.65;
}
/* ========================================================= ARROW ========================================================= */
.pcb-feature-arrow {
  flex-shrink: 0;
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #018149;
  background: #f0f7f4;
  font-size: 11px;
  opacity: 0;
  transform: translateX(-10px);
  transition: all 0.35s ease;
}
.pcb-feature-card:hover .pcb-feature-arrow {
  opacity: 1;
  transform: translateX(0);
}
/* ========================================================= RIGHT IMAGE AREA ========================================================= */
.pcb-why-visual {
  position: relative;
  min-height: 580px;
  display: flex;
  align-items: center;
  justify-content: center;
}
/* ========================================================= MAIN IMAGE ========================================================= */
.pcb-main-image {
  position: relative;
  width: 88%;
  height: 500px;
  overflow: hidden;
  border-radius: 30px;
  background: #010a35;
  box-shadow: 0 30px 70px rgba(1, 10, 53, 0.18);
  transform: translateY(0);
  transition:
    transform 0.5s ease,
    box-shadow 0.5s ease;
}
.pcb-main-image:hover {
  transform: translateY(-8px);
  box-shadow: 0 40px 90px rgba(1, 10, 53, 0.24);
}
.pcb-main-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.8s ease;
}
.pcb-main-image:hover img {
  transform: scale(1.07);
}
/* ========================================================= IMAGE OVERLAY ========================================================= */
.pcb-image-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    transparent 45%,
    rgba(1, 10, 53, 0.72) 100%
  );
  pointer-events: none;
}
/* ========================================================= IMAGE BORDER ========================================================= */
.pcb-main-image::before {
  content: "";
  position: absolute;
  inset: 12px;
  z-index: 4;
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 22px;
  pointer-events: none;
  transition: border-color 0.4s ease;
}
.pcb-main-image:hover::before {
  border-color: rgba(85, 213, 154, 0.65);
}
/* ========================================================= FLOATING PCB BADGE ========================================================= */
.pcb-repair-badge {
  position: absolute;
  left: 25px;
  bottom: 25px;
  z-index: 5;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 17px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(10px);
  animation: pcbBadgeFloat 4s ease-in-out infinite;
}
@keyframes pcbBadgeFloat {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-8px);
  }
}
.pcb-badge-icon {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 11px;
  color: #ffffff;
  background: #018149;
  font-size: 15px;
}
.pcb-repair-badge strong {
  display: block;
  color: #010a35;
  font-size: 12px;
  font-weight: 800;
}
.pcb-repair-badge small {
  display: block;
  margin-top: 2px;
  color: #6b7280;
  font-size: 10px;
}
/* ========================================================= QUALITY BADGE ========================================================= */
.pcb-expert-badge {
  position: absolute;
  right: 20px;
  top: 25px;
  z-index: 5;
  width: 100px;
  height: 100px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-radius: 50%;
  color: #ffffff;
  background: rgba(1, 10, 53, 0.86);
  border: 1px solid rgba(85, 213, 154, 0.5);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.22);
  backdrop-filter: blur(8px);
  animation: pcbQualityFloat 5s ease-in-out infinite;
}
@keyframes pcbQualityFloat {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(7px);
  }
}
.pcb-expert-badge strong {
  color: #55d59a;
  font-size: 22px;
  line-height: 1;
  font-weight: 900;
}
.pcb-expert-badge span {
  margin-top: 5px;
  color: rgba(255, 255, 255, 0.75);
  font-size: 9px;
  line-height: 1.3;
  text-transform: uppercase;
  letter-spacing: 0.7px;
}
/* ========================================================= IMAGE DECORATION ========================================================= */
.pcb-image-decoration {
  position: absolute;
  border: 2px solid #018149;
  border-radius: 25px;
  opacity: 0.65;
}
.pcb-decoration-top {
  width: 180px;
  height: 180px;
  top: 25px;
  right: 0;
  z-index: -1;
  animation: pcbDecorationFloat 6s ease-in-out infinite;
}
.pcb-decoration-bottom {
  width: 150px;
  height: 150px;
  bottom: 25px;
  left: 0;
  z-index: -1;
  border-color: #001064;
  animation: pcbDecorationFloat 7s ease-in-out infinite reverse;
}
@keyframes pcbDecorationFloat {
  0%,
  100% {
    transform: translate(0, 0) rotate(0deg);
  }
  50% {
    transform: translate(7px, -8px) rotate(3deg);
  }
}
/* ========================================================= PCB DECORATIVE NODES ========================================================= */
.pcb-node {
  position: absolute;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #018149;
  box-shadow:
    0 0 0 5px rgba(1, 129, 73, 0.1),
    0 0 20px rgba(1, 129, 73, 0.35);
  animation: pcbNodePulse 2.5s ease-in-out infinite;
}
@keyframes pcbNodePulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.6;
  }
  50% {
    transform: scale(1.5);
    opacity: 1;
  }
}
.pcb-node-one {
  top: 18%;
  left: 2%;
}
.pcb-node-two {
  right: 3%;
  top: 45%;
  animation-delay: 0.7s;
}
.pcb-node-three {
  bottom: 18%;
  left: 8%;
  animation-delay: 1.2s;
}
/* ========================================================= TABLET ========================================================= */
@media (max-width: 1050px) {
  .pcb-why-container {
    gap: 45px;
  }
  .pcb-why-title {
    font-size: 40px;
  }
  .pcb-main-image {
    width: 92%;
    height: 470px;
  }
}
/* ========================================================= TABLET / MOBILE ========================================================= */
@media (max-width: 800px) {
  .pcb-why-section {
    padding: 75px 0;
  }
  .pcb-why-container {
    grid-template-columns: 1fr;
    gap: 55px;
  }
  .pcb-why-content {
    max-width: 700px;
    margin: auto;
  }
  .pcb-why-title {
    font-size: 38px;
  }
  .pcb-why-visual {
    min-height: 480px;
    width: 100%;
    max-width: 650px;
    margin: auto;
  }
  .pcb-main-image {
    width: 90%;
    height: 450px;
  }
}
/* ========================================================= MOBILE ========================================================= */
@media (max-width: 600px) {
  .pcb-why-section {
    padding: 60px 0;
  }
  .pcb-why-container {
    width: 90%;
    gap: 45px;
  }
  .pcb-section-label {
    font-size: 10px;
    letter-spacing: 1.2px;
  }
  .pcb-why-title {
    font-size: 32px;
    line-height: 1.15;
    letter-spacing: -0.7px;
  }
  .pcb-why-intro {
    margin-bottom: 28px;
    font-size: 13px;
    line-height: 1.7;
  }
  .pcb-feature-card {
    align-items: flex-start;
    gap: 13px;
    padding: 18px 15px;
    border-radius: 15px;
  }
  .pcb-feature-card:hover {
    transform: translateY(-4px);
  }
  .pcb-feature-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
  }
  .pcb-feature-icon img {
    width: 27px;
    height: 27px;
  }
  .pcb-feature-content {
    padding-right: 18px;
  }
  .pcb-feature-content h3 {
    font-size: 14px;
    line-height: 1.35;
  }
  .pcb-feature-content p {
    font-size: 11px;
    line-height: 1.6;
  }
  .pcb-feature-arrow {
    display: none;
  }
  .pcb-feature-number {
    font-size: 23px;
    top: 8px;
    right: 10px;
  }
  .pcb-why-visual {
    min-height: 390px;
  }
  .pcb-main-image {
    width: 94%;
    height: 360px;
    border-radius: 22px;
  }
  .pcb-main-image::before {
    inset: 8px;
    border-radius: 16px;
  }
  .pcb-repair-badge {
    left: 15px;
    bottom: 15px;
    padding: 9px 12px;
  }
  .pcb-badge-icon {
    width: 34px;
    height: 34px;
    font-size: 12px;
  }
  .pcb-repair-badge strong {
    font-size: 10px;
  }
  .pcb-repair-badge small {
    font-size: 8px;
  }
  .pcb-expert-badge {
    width: 78px;
    height: 78px;
    top: 15px;
    right: 10px;
  }
  .pcb-expert-badge strong {
    font-size: 17px;
  }
  .pcb-expert-badge span {
    font-size: 7px;
  }
  .pcb-decoration-top {
    width: 110px;
    height: 110px;
    top: 8px;
    right: 0;
  }
  .pcb-decoration-bottom {
    width: 100px;
    height: 100px;
    bottom: 10px;
    left: 0;
  }
  .pcb-node {
    display: none;
  }
}
/* ========================================================= VERY SMALL MOBILE ========================================================= */
@media (max-width: 380px) {
  .pcb-why-title {
    font-size: 28px;
  }
  .pcb-feature-card {
    padding: 15px 12px;
  }
  .pcb-feature-icon {
    width: 47px;
    height: 47px;
  }
  .pcb-feature-content h3 {
    font-size: 13px;
  }
  .pcb-feature-content p {
    font-size: 10px;
  }
  .pcb-main-image {
    height: 330px;
  }
}
/* ===================================================== PCB SERVICES SECTION ===================================================== */
.pcb-services-section {
  position: relative;
  width: 100%;
  padding: 110px 0 100px;
  background: #f8fafb;
  overflow: hidden;
  isolation: isolate;
}
/* ----------------------------------------------------- BACKGROUND DECORATION ----------------------------------------------------- */
.pcb-services-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  overflow: hidden;
}
.pcb-services-overview .container {
  max-width: 1500px;
  margin: auto;
  padding: 30px;
}
.pcb-glow {
  position: absolute;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  filter: blur(90px);
  opacity: 0.1;
}
.pcb-glow-one {
  background: #018149;
  top: -180px;
  left: -150px;
  animation: serviceGlowOne 8s ease-in-out infinite alternate;
}
.pcb-glow-two {
  background: #001064;
  bottom: -200px;
  right: -150px;
  animation: serviceGlowTwo 9s ease-in-out infinite alternate;
}
@keyframes serviceGlowOne {
  from {
    transform: translate(0, 0);
  }
  to {
    transform: translate(80px, 60px);
  }
}
@keyframes serviceGlowTwo {
  from {
    transform: translate(0, 0);
  }
  to {
    transform: translate(-70px, -50px);
  }
}
/* Grid lines */
.pcb-grid-line {
  position: absolute;
  background: rgba(1, 129, 73, 0.07);
}
.line-one {
  width: 1px;
  height: 100%;
  left: 12%;
}
.line-two {
  width: 100%;
  height: 1px;
  top: 45%;
}
/* Floating dots */
.pcb-floating-dot {
  position: absolute;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #018149;
  box-shadow: 0 0 0 6px rgba(1, 129, 73, 0.08);
  animation: floatingDot 4s ease-in-out infinite;
}
.dot-one {
  top: 18%;
  left: 7%;
}
.dot-two {
  top: 72%;
  right: 9%;
  animation-delay: 1s;
}
.dot-three {
  top: 36%;
  right: 4%;
  animation-delay: 2s;
}
@keyframes floatingDot {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-18px);
  }
}
/* ----------------------------------------------------- MAIN CONTAINER ----------------------------------------------------- */
.pcb-services-container {
  width: min(1340px, calc(100% - 40px));
  margin: auto;
  position: relative;
}
/* ----------------------------------------------------- HEADING ----------------------------------------------------- */
.pcb-services-heading {
  max-width: 760px;
  margin: 0 auto 60px;
  text-align: center;
}
.pcb-section-tag {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 8px 17px;
  border: 1px solid rgba(1, 129, 73, 0.18);
  border-radius: 50px;
  color: #018149;
  background: rgba(1, 129, 73, 0.05);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1.8px;
  margin-bottom: 18px;
}
.tag-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #018149;
  box-shadow: 0 0 0 5px rgba(1, 129, 73, 0.1);
  animation: tagPulse 1.8s infinite;
}
@keyframes tagPulse {
  0%,
  100% {
    box-shadow: 0 0 0 4px rgba(1, 129, 73, 0.1);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(1, 129, 73, 0.02);
  }
}
.pcb-services-heading h2 {
  margin: 0;
  color: #010a35;
  font-size: clamp(32px, 4vw, 48px);
  line-height: 1.15;
  font-weight: 800;
}
.pcb-services-heading h2 span {
  color: #018149;
}
.pcb-services-heading p {
  max-width: 650px;
  margin: 20px auto 0;
  color: #667085;
  font-size: 16px;
  line-height: 1.8;
}
.heading-line {
  width: 80px;
  height: 3px;
  margin: 25px auto 0;
  background: #001064;
  border-radius: 20px;
  position: relative;
}
.heading-line span {
  position: absolute;
  width: 30px;
  height: 3px;
  background: #018149;
  left: 0;
  top: 0;
  animation: headingLine 2s ease-in-out infinite;
}
@keyframes headingLine {
  0%,
  100% {
    left: 0;
  }
  50% {
    left: 50px;
  }
}
/* ----------------------------------------------------- SERVICES GRID ----------------------------------------------------- */
.pcb-services-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}
/* ----------------------------------------------------- SERVICE CARD ----------------------------------------------------- */
.pcb-service-card {
  position: relative;
  display: block;
  text-decoration: none;
  background: #fff;
  border: 1px solid #e8edf0;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 12px 35px rgba(1, 10, 53, 0.06);
  transition:
    transform 0.45s ease,
    box-shadow 0.45s ease,
    border-color 0.45s ease;
}
.pcb-service-card::before {
  content: "";
  position: absolute;
  width: 0;
  height: 3px;
  left: 0;
  top: 0;
  background: linear-gradient(90deg, #018149, #001064);
  z-index: 5;
  transition: width 0.5s ease;
}
.pcb-service-card:hover {
  transform: translateY(-12px);
  border-color: rgba(1, 129, 73, 0.25);
  box-shadow: 0 25px 55px rgba(1, 10, 53, 0.14);
}
.pcb-service-card:hover::before {
  width: 100%;
}
/* ----------------------------------------------------- IMAGE ----------------------------------------------------- */
.service-image {
  position: relative;
  height: 235px;
  overflow: hidden;
}
.service-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.7s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.pcb-service-card:hover .service-image img {
  transform: scale(1.1);
}
.image-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to bottom,
    transparent 45%,
    rgba(1, 10, 53, 0.72)
  );
  opacity: 0.8;
}
/* Number */
.service-number {
  position: absolute;
  top: 16px;
  right: 16px;
  min-width: 43px;
  height: 43px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #fff;
  background: rgba(1, 10, 53, 0.8);
  backdrop-filter: blur(8px);
  font-size: 13px;
  font-weight: 800;
  border: 1px solid rgba(255, 255, 255, 0.2);
  transition: 0.4s ease;
}
.pcb-service-card:hover .service-number {
  background: #018149;
  transform: rotate(360deg);
}
/* ----------------------------------------------------- SERVICE CONTENT ----------------------------------------------------- */
.service-content {
  display: flex;
  gap: 18px;
  padding: 25px 22px 24px;
  position: relative;
}
/* Icon */
.service-icon {
  flex-shrink: 0;
  width: 58px;
  height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: #018149;
  box-shadow: 0 10px 25px rgba(1, 129, 73, 0.22);
  transition:
    transform 0.45s ease,
    border-radius 0.45s ease,
    background 0.45s ease;
}
.service-icon img {
  width: 30px;
  height: 30px;
  object-fit: contain;
  transition: transform 0.45s ease;
}
.pcb-service-card:hover .service-icon {
  transform: translateY(-7px) rotate(-5deg);
  border-radius: 50%;
  background: #001064;
}
.pcb-service-card:hover .service-icon img {
  transform: rotate(10deg) scale(1.1);
}
/* Text */
.service-info {
  min-width: 0;
}
.service-info h3 {
  margin: 2px 0 8px;
  color: #010a35;
  font-size: 18px;
  line-height: 1.35;
  font-weight: 800;
  transition: color 0.3s ease;
}
.pcb-service-card:hover .service-info h3 {
  color: #018149;
}
.service-info p {
  margin: 0;
  color: #667085;
  font-size: 13px;
  line-height: 1.7;
}
/* Link */
.service-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 13px;
  color: #018149;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.6px;
}
.service-link i {
  font-size: 11px;
  transition: transform 0.35s ease;
}
.pcb-service-card:hover .service-link i {
  transform: translateX(6px);
}
/* ----------------------------------------------------- CTA ----------------------------------------------------- */
.pcb-services-cta {
  margin-top: 55px;
  padding: 25px 30px;
  border-radius: 18px;
  background: linear-gradient(110deg, #010a35, #001064);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 20px 45px rgba(1, 10, 53, 0.16);
}
.pcb-services-cta::before {
  content: "";
  position: absolute;
  width: 230px;
  height: 230px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.1);
  right: 20%;
  top: -120px;
  animation: ctaCircle 6s linear infinite;
}
@keyframes ctaCircle {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.cta-small {
  display: block;
  color: #61d5a4;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.5px;
  margin-bottom: 5px;
}
.cta-content h3 {
  margin: 0;
  color: #fff;
  font-size: 22px;
  font-weight: 800;
}
.cta-button {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 14px 22px;
  border-radius: 50px;
  background: #018149;
  color: #fff;
  text-decoration: none;
  font-size: 13px;
  font-weight: 800;
  white-space: nowrap;
  transition: 0.35s ease;
}
.cta-button:hover {
  background: #fff;
  color: #018149;
  transform: translateY(-3px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}
.cta-button i {
  transition: transform 0.3s ease;
}
.cta-button:hover i {
  transform: translateX(5px);
}
/* ===================================================== RESPONSIVE ===================================================== */
@media (max-width: 1000px) {
  .pcb-services-section {
    padding: 85px 0;
  }
  .pcb-services-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 680px) {
  .pcb-services-section {
    padding: 65px 0;
  }
  .pcb-services-container {
    width: min(100% - 28px, 560px);
  }
  .pcb-services-heading {
    margin-bottom: 40px;
  }
  .pcb-services-heading h2 {
    font-size: 31px;
  }
  .pcb-services-heading p {
    font-size: 14px;
    line-height: 1.7;
  }
  .pcb-services-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .service-image {
    height: 220px;
  }
  .service-content {
    padding: 20px;
  }
  .pcb-services-cta {
    margin-top: 35px;
    padding: 24px 20px;
    flex-direction: column;
    align-items: flex-start;
  }
  .cta-content h3 {
    font-size: 20px;
  }
  .cta-button {
    width: 100%;
    justify-content: center;
  }
}
@media (max-width: 400px) {
  .service-content {
    gap: 13px;
    padding: 18px 16px;
  }
  .service-icon {
    width: 50px;
    height: 50px;
    border-radius: 12px;
  }
  .service-icon img {
    width: 25px;
    height: 25px;
  }
  .service-info h3 {
    font-size: 16px;
  }
  .service-info p {
    font-size: 12px;
  }
}
/* 
/* ========================================================= PCB QUOTE / CONTACT SECTION Premium Dark Circuit Design ========================================================= */
/* ========================================================= PCB QUOTE / CONTACT SECTION Premium Dark Circuit Design ========================================================= */
.pcb-quote-section {
  --primary: #018149;
  --secondary: #001064;
  --dark: #010a35;
  --dark-2: #020d25;
  --light: #f6f7f8;
  position: relative;
  width: 100%;
  padding: 110px 20px;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(circle at 8% 20%, rgba(1, 129, 73, 0.16), transparent 28%),
    radial-gradient(circle at 92% 80%, rgba(0, 16, 100, 0.3), transparent 32%),
    linear-gradient(135deg, #010a35 0%, #02091f 48%, #00152b 100%);
}
/* ========================================================= BACKGROUND GRID ========================================================= */
.pcb-quote-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -5;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px);
  background-size: 55px 55px;
  mask-image: linear-gradient(
    to bottom,
    transparent,
    black 12%,
    black 88%,
    transparent
  );
  pointer-events: none;
}
/* ========================================================= BACKGROUND DOT PATTERN ========================================================= */
.pcb-quote-section::after {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  right: -120px;
  top: 50px;
  background-image: radial-gradient(
    rgba(1, 129, 73, 0.35) 1.5px,
    transparent 1.5px
  );
  background-size: 22px 22px;
  opacity: 0.35;
  z-index: -4;
  animation: quoteDotMove 18s linear infinite;
}
@keyframes quoteDotMove {
  from {
    transform: translate(0, 0);
  }
  to {
    transform: translate(-80px, 80px);
  }
}
/* ========================================================= BACKGROUND DECORATION ========================================================= */
.pcb-quote-bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  z-index: -2;
}
/* Glowing circles */
.quote-glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
  pointer-events: none;
}
.quote-glow-one {
  width: 320px;
  height: 320px;
  left: -170px;
  top: 12%;
  background: radial-gradient(circle, rgba(1, 129, 73, 0.25), transparent 70%);
  animation: glowFloatOne 8s ease-in-out infinite;
}
.quote-glow-two {
  width: 400px;
  height: 400px;
  right: -200px;
  bottom: -100px;
  background: radial-gradient(circle, rgba(0, 16, 100, 0.35), transparent 70%);
  animation: glowFloatTwo 10s ease-in-out infinite;
}
@keyframes glowFloatOne {
  0%,
  100% {
    transform: translate(0, 0) scale(1);
  }
  50% {
    transform: translate(40px, 30px) scale(1.12);
  }
}
@keyframes glowFloatTwo {
  0%,
  100% {
    transform: translate(0, 0) scale(1);
  }
  50% {
    transform: translate(-35px, -30px) scale(1.1);
  }
}
/* ========================================================= FLOATING DOTS ========================================================= */
.quote-dot {
  position: absolute;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--primary);
  box-shadow:
    0 0 10px rgba(1, 129, 73, 0.8),
    0 0 25px rgba(1, 129, 73, 0.35);
  animation: floatingDot 5s ease-in-out infinite;
}
.quote-dot-one {
  left: 12%;
  top: 18%;
}
.quote-dot-two {
  left: 48%;
  bottom: 14%;
  animation-delay: 1.5s;
}
.quote-dot-three {
  right: 12%;
  top: 28%;
  animation-delay: 3s;
}
@keyframes floatingDot {
  0%,
  100% {
    transform: translateY(0);
    opacity: 0.45;
  }
  50% {
    transform: translateY(-25px);
    opacity: 1;
  }
}
/* ========================================================= CIRCUIT LINES ========================================================= */
.quote-circuit {
  position: absolute;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(1, 129, 73, 0.7),
    transparent
  );
  opacity: 0.5;
}
.circuit-one {
  width: 420px;
  left: -80px;
  top: 28%;
  transform: rotate(-18deg);
  animation: circuitMoveOne 7s ease-in-out infinite;
}
.circuit-two {
  width: 500px;
  right: -130px;
  bottom: 22%;
  transform: rotate(17deg);
  animation: circuitMoveTwo 8s ease-in-out infinite;
}
@keyframes circuitMoveOne {
  0%,
  100% {
    transform: translateX(0) rotate(-18deg);
    opacity: 0.25;
  }
  50% {
    transform: translateX(100px) rotate(-18deg);
    opacity: 0.7;
  }
}
@keyframes circuitMoveTwo {
  0%,
  100% {
    transform: translateX(0) rotate(17deg);
    opacity: 0.25;
  }
  50% {
    transform: translateX(-100px) rotate(17deg);
    opacity: 0.7;
  }
}
/* ========================================================= CONTAINER ========================================================= */
.pcb-quote-container {
  position: relative;
  width: 100%;
  max-width: 1250px;
  margin: 0 auto;
}
/* ========================================================= MAIN WRAPPER ========================================================= */
.pcb-quote-wrapper {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.035);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow:
    0 30px 80px rgba(0, 0, 0, 0.35),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
  overflow: hidden;
}
/* ========================================================= LEFT CONTENT ========================================================= */
.pcb-quote-content {
  position: relative;
  padding: 70px 65px;
  background: linear-gradient(
    135deg,
    rgba(1, 129, 73, 0.08),
    rgba(0, 16, 100, 0.1)
  );
}
.quote-content-inner {
  position: relative;
  z-index: 2;
}
/* ========================================================= TAG ========================================================= */
.quote-tag {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 9px 16px;
  border: 1px solid rgba(1, 129, 73, 0.35);
  border-radius: 50px;
  color: #72d8aa;
  background: rgba(1, 129, 73, 0.08);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.8px;
  margin-bottom: 22px;
}
.quote-tag span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--primary);
  box-shadow:
    0 0 0 5px rgba(1, 129, 73, 0.1),
    0 0 15px rgba(1, 129, 73, 0.8);
  animation: tagPulse 2s infinite;
}
@keyframes tagPulse {
  0%,
  100% {
    box-shadow:
      0 0 0 4px rgba(1, 129, 73, 0.1),
      0 0 12px rgba(1, 129, 73, 0.5);
  }
  50% {
    box-shadow:
      0 0 0 8px rgba(1, 129, 73, 0.04),
      0 0 22px rgba(1, 129, 73, 0.9);
  }
}
/* ========================================================= HEADING ========================================================= */
.pcb-quote-content h2 {
  margin: 0 0 22px;
  color: #fff;
  font-size: clamp(38px, 4vw, 58px);
  line-height: 1.08;
  font-weight: 800;
  letter-spacing: -1.5px;
}
.pcb-quote-content h2 strong {
  display: inline-block;
  color: var(--primary);
  position: relative;
}
.pcb-quote-content h2 strong::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -7px;
  width: 70%;
  height: 3px;
  border-radius: 10px;
  background: linear-gradient(90deg, var(--primary), transparent);
}
/* ========================================================= INTRO ========================================================= */
.quote-intro {
  max-width: 570px;
  color: rgba(255, 255, 255, 0.68);
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 35px;
}
/* ========================================================= SERVICES ========================================================= */
.quote-services {
  display: flex;
  flex-direction: column;
  gap: 13px;
  margin-bottom: 35px;
}
.quote-service-item {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 12px 15px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.025);
  transition:
    transform 0.35s ease,
    border-color 0.35s ease,
    background 0.35s ease;
}
.quote-service-item:hover {
  transform: translateX(8px);
  border-color: rgba(1, 129, 73, 0.4);
  background: rgba(1, 129, 73, 0.07);
}
.quote-service-icon {
  flex-shrink: 0;
  width: 45px;
  height: 45px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  color: #fff;
  background: linear-gradient(135deg, var(--primary), #00633a);
  box-shadow: 0 8px 20px rgba(1, 129, 73, 0.22);
}
.quote-service-icon i {
  font-size: 17px;
}
.quote-service-item strong {
  display: block;
  color: #fff;
  font-size: 14px;
  margin-bottom: 3px;
}
.quote-service-item small {
  color: rgba(255, 255, 255, 0.48);
  font-size: 12px;
}
/* ========================================================= CALL BOX ========================================================= */
.quote-call-box {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  max-width: 430px;
  padding: 15px 18px;
  border-radius: 16px;
  text-decoration: none;
  border: 1px solid rgba(1, 129, 73, 0.25);
  background: rgba(1, 129, 73, 0.07);
  transition: all 0.35s ease;
  overflow: hidden;
}
.quote-call-box::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.08),
    transparent
  );
  transition: left 0.7s ease;
}
.quote-call-box:hover::before {
  left: 100%;
}
.quote-call-box:hover {
  transform: translateY(-4px);
  border-color: rgba(1, 129, 73, 0.7);
  box-shadow: 0 12px 30px rgba(1, 129, 73, 0.15);
}
.quote-call-icon {
  width: 45px;
  height: 45px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #fff;
  background: var(--primary);
  animation: phonePulse 2.2s infinite;
}
@keyframes phonePulse {
  0%,
  100% {
    box-shadow: 0 0 0 0 rgba(1, 129, 73, 0.45);
  }
  50% {
    box-shadow: 0 0 0 9px rgba(1, 129, 73, 0);
  }
}
.quote-call-text small {
  display: block;
  color: rgba(255, 255, 255, 0.48);
  font-size: 11px;
  margin-bottom: 3px;
}
.quote-call-text strong {
  color: #fff;
  font-size: 16px;
}
.quote-call-arrow {
  margin-left: auto;
  color: #67d29f;
  transition: transform 0.3s ease;
}
.quote-call-box:hover .quote-call-arrow {
  transform: translateX(6px);
}
/* ========================================================= FORM AREA ========================================================= */
.pcb-quote-form-area {
  position: relative;
  padding: 45px;
  background: linear-gradient(
    145deg,
    rgba(255, 255, 255, 0.06),
    rgba(255, 255, 255, 0.025)
  );
}
/* ========================================================= FORM CARD ========================================================= */
.quote-form-card {
  position: relative;
  height: 100%;
  padding: 38px;
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.25);
  overflow: hidden;
}
.quote-form-card::before {
  content: "";
  position: absolute;
  width: 160px;
  height: 160px;
  right: -80px;
  top: -80px;
  border-radius: 50%;
  background: rgba(1, 129, 73, 0.08);
}
/* ========================================================= FORM HEADING ========================================================= */
.form-heading {
  position: relative;
  margin-bottom: 25px;
}
.form-small-tag {
  display: inline-block;
  color: var(--primary);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.7px;
  margin-bottom: 8px;
}
.form-heading h3 {
  margin: 0 0 8px;
  color: var(--dark);
  font-size: 30px;
  font-weight: 800;
}
.form-heading h3 span {
  color: var(--primary);
}
.form-heading p {
  margin: 0;
  color: #687080;
  font-size: 14px;
  line-height: 1.6;
}
/* ========================================================= FORM FIELDS ========================================================= */
.pcb-quote-form {
  position: relative;
  z-index: 2;
}
.quote-field {
  display: flex;
  align-items: center;
  min-height: 68px;
  margin-bottom: 14px;
  border: 1px solid #e4e7eb;
  border-radius: 13px;
  background: #fff;
  transition:
    border-color 0.3s ease,
    box-shadow 0.3s ease,
    transform 0.3s ease;
}
.quote-field:focus-within {
  border-color: var(--primary);
  box-shadow: 0 0 0 4px rgba(1, 129, 73, 0.08);
  transform: translateY(-2px);
}
.field-icon {
  width: 55px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--primary);
  font-size: 15px;
}
.field-content {
  flex: 1;
  padding: 10px 14px 8px 0;
}
.field-content label {
  display: block;
  color: #69717e;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  margin-bottom: 3px;
}
.field-content input,
.field-content select,
.field-content textarea {
  width: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  color: #182033;
  font-size: 14px;
  font-family: inherit;
}
.field-content input::placeholder,
.field-content textarea::placeholder {
  color: #a6acb5;
}
.field-content select {
  cursor: pointer;
}
.quote-message-field {
  align-items: flex-start;
}
.quote-message-field .field-icon {
  padding-top: 20px;
}
.field-content textarea {
  min-height: 90px;
  resize: vertical;
  line-height: 1.5;
}
/* ========================================================= SUBMIT BUTTON ========================================================= */
.quote-submit-btn {
  position: relative;
  width: 100%;
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  border: 0;
  border-radius: 13px;
  color: #fff;
  background: linear-gradient(135deg, #018149, #00643a);
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  overflow: hidden;
  box-shadow: 0 12px 25px rgba(1, 129, 73, 0.25);
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}
.quote-submit-btn::before {
  content: "";
  position: absolute;
  width: 80px;
  height: 180%;
  left: -100px;
  top: -40%;
  transform: rotate(25deg);
  background: rgba(255, 255, 255, 0.18);
  transition: left 0.6s ease;
}
.quote-submit-btn:hover::before {
  left: 110%;
}
.quote-submit-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 17px 35px rgba(1, 129, 73, 0.32);
}
.quote-submit-btn i {
  transition: transform 0.3s ease;
}
.quote-submit-btn:hover i {
  transform: translateX(5px);
}
/* ========================================================= FORM NOTE ========================================================= */
.form-note {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin: 15px 0 0;
  color: #8a909a;
  font-size: 11px;
  line-height: 1.5;
  text-align: center;
}
.form-note i {
  color: var(--primary);
}
/* ========================================================= RESPONSIVE — TABLET ========================================================= */
@media (max-width: 1100px) {
  .pcb-quote-content {
    padding: 55px 40px;
  }
  .pcb-quote-form-area {
    padding: 30px;
  }
  .quote-form-card {
    padding: 30px;
  }
  .pcb-quote-content h2 {
    font-size: 42px;
  }
}
/* ========================================================= RESPONSIVE — MOBILE ========================================================= */
@media (max-width: 850px) {
  .pcb-quote-section {
    padding: 75px 15px;
  }
  .pcb-quote-wrapper {
    grid-template-columns: 1fr;
    border-radius: 22px;
  }
  .pcb-quote-content {
    padding: 50px 25px;
  }
  .pcb-quote-content h2 {
    font-size: 38px;
  }
  .quote-intro {
    font-size: 14px;
  }
  .pcb-quote-form-area {
    padding: 20px;
  }
  .quote-form-card {
    padding: 25px 20px;
  }
  .form-heading h3 {
    font-size: 26px;
  }
}
/* ========================================================= RESPONSIVE — SMALL MOBILE ========================================================= */
@media (max-width: 480px) {
  .pcb-quote-section {
    padding: 55px 10px;
  }
  .pcb-quote-content {
    padding: 40px 18px;
  }
  .pcb-quote-content h2 {
    font-size: 32px;
    letter-spacing: -0.8px;
  }
  .quote-tag {
    font-size: 10px;
    padding: 8px 12px;
  }
  .quote-service-item {
    padding: 10px;
  }
  .quote-service-icon {
    width: 40px;
    height: 40px;
  }
  .quote-service-item strong {
    font-size: 13px;
  }
  .quote-service-item small {
    font-size: 11px;
  }
  .quote-call-text strong {
    font-size: 14px;
  }
  .pcb-quote-form-area {
    padding: 12px;
  }
  .quote-form-card {
    padding: 22px 15px;
    border-radius: 17px;
  }
  .form-heading h3 {
    font-size: 24px;
  }
  .quote-field {
    min-height: 63px;
  }
  .field-icon {
    width: 48px;
  }
  .field-content {
    padding-right: 10px;
  }
  .quote-dot-three,
  .quote-dot-two {
    display: none;
  }
}
/* ========================================================= ACCESSIBILITY ========================================================= */
@media (prefers-reduced-motion: reduce) {
  .pcb-quote-section *,
  .pcb-quote-section *::before,
  .pcb-quote-section *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
/* ===================================================== PCB TEAM SECTION===================================================== */
.pcb-team-section {
  position: relative;
  overflow: hidden;
  padding: 110px 20px;
  background:
    radial-gradient(circle at 10% 20%, rgba(1, 129, 73, 0.07), transparent 30%),
    radial-gradient(circle at 90% 80%, rgba(0, 16, 100, 0.08), transparent 32%),
    #f8fafb;
}
/* Container */
.pcb-team-container {
  position: relative;
  z-index: 2;
  max-width: 1240px;
  margin: auto;
}
/* ===================================================== BACKGROUND DECORATION ===================================================== */
.pcb-team-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.team-bg-glow {
  position: absolute;
  width: 380px;
  height: 380px;
  border-radius: 50%;
  filter: blur(80px);
  opacity: 0.18;
}
.team-glow-one {
  top: 5%;
  left: -180px;
  background: #018149;
  animation: teamGlowMove 8s ease-in-out infinite alternate;
}
.team-glow-two {
  right: -180px;
  bottom: 5%;
  background: #001064;
  animation: teamGlowMove 10s ease-in-out infinite alternate-reverse;
}
@keyframes teamGlowMove {
  0% {
    transform: translateY(0) scale(1);
  }
  100% {
    transform: translateY(50px) scale(1.15);
  }
}
/* Floating Dots */
.team-floating-dot {
  position: absolute;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #018149;
  box-shadow: 0 0 15px rgba(1, 129, 73, 0.7);
  animation: floatingTeamDot 5s ease-in-out infinite;
}
.team-dot-one {
  top: 15%;
  left: 8%;
}
.team-dot-two {
  top: 42%;
  right: 7%;
  animation-delay: 1s;
}
.team-dot-three {
  bottom: 18%;
  left: 12%;
  animation-delay: 2s;
}
.team-dot-four {
  bottom: 30%;
  right: 15%;
  animation-delay: 3s;
}
@keyframes floatingTeamDot {
  0%,
  100% {
    transform: translateY(0);
    opacity: 0.4;
  }
  50% {
    transform: translateY(-25px);
    opacity: 1;
  }
}
/* ===================================================== HEADING ===================================================== */
.pcb-team-heading {
  max-width: 720px;
  margin: 0 auto 60px;
  text-align: center;
}
.pcb-team-tag {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 8px 17px;
  border: 1px solid rgba(1, 129, 73, 0.2);
  border-radius: 50px;
  background: rgba(1, 129, 73, 0.06);
  color: #018149;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1.8px;
}
.pcb-team-tag span {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #018149;
  box-shadow: 0 0 10px rgba(1, 129, 73, 0.8);
  animation: tagPulse 1.8s infinite;
}
@keyframes tagPulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(1.5);
    opacity: 0.5;
  }
}
.pcb-team-heading h2 {
  margin: 20px 0 18px;
  color: #001064;
  font-size: clamp(32px, 4vw, 50px);
  line-height: 1.15;
  font-weight: 800;
}
.pcb-team-heading h2 strong {
  display: block;
  color: #018149;
}
.pcb-team-heading p {
  max-width: 650px;
  margin: auto;
  color: #657080;
  font-size: 16px;
  line-height: 1.8;
}
.pcb-team-heading-line {
  width: 100px;
  height: 3px;
  margin: 25px auto 0;
  overflow: hidden;
  border-radius: 10px;
  background: rgba(1, 129, 73, 0.15);
}
.pcb-team-heading-line i {
  display: block;
  width: 45px;
  height: 100%;
  background: #018149;
  border-radius: inherit;
  animation: headingLine 2.5s linear infinite;
}
@keyframes headingLine {
  0% {
    transform: translateX(-50px);
  }
  100% {
    transform: translateX(110px);
  }
}
/* ===================================================== TEAM GRID ===================================================== */
.pcb-team-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 26px;
}
/* ===================================================== TEAM CARD ===================================================== */
.pcb-team-card {
  position: relative;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid rgba(0, 16, 100, 0.08);
  border-radius: 22px;
  box-shadow: 0 15px 40px rgba(0, 16, 100, 0.08);
  transition:
    transform 0.45s ease,
    box-shadow 0.45s ease,
    border-color 0.45s ease;
}
.pcb-team-card::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, #018149, #001064, #018149);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.5s ease;
}
.pcb-team-card:hover {
  transform: translateY(-12px);
  border-color: rgba(1, 129, 73, 0.35);
  box-shadow:
    0 25px 60px rgba(0, 16, 100, 0.14),
    0 8px 25px rgba(1, 129, 73, 0.08);
}
.pcb-team-card:hover::before {
  transform: scaleX(1);
}
/* ===================================================== IMAGE ===================================================== */
.team-card-image {
  position: relative;
  height: 300px;
  overflow: hidden;
  background: #edf2f3;
}
.team-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 0.7s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.pcb-team-card:hover .team-card-image img {
  transform: scale(1.08);
}
/* Image Overlay */
.team-image-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to top,
    rgba(0, 16, 100, 0.75),
    rgba(0, 16, 100, 0.05) 65%
  );
  opacity: 0.65;
  transition: opacity 0.4s ease;
}
.pcb-team-card:hover .team-image-overlay {
  opacity: 0.85;
}
/* Number */
.team-number {
  position: absolute;
  z-index: 3;
  top: 15px;
  right: 15px;
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.95);
  color: #001064;
  font-size: 12px;
  font-weight: 800;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
  transition: 0.4s ease;
}
.pcb-team-card:hover .team-number {
  background: #018149;
  color: #ffffff;
  transform: rotate(360deg);
}
/* ===================================================== SOCIAL ICONS ===================================================== */
.team-social {
  position: absolute;
  z-index: 5;
  left: 18px;
  bottom: 18px;
  display: flex;
  gap: 8px;
  transform: translateY(20px);
  opacity: 0;
  transition: 0.4s ease;
}
.pcb-team-card:hover .team-social {
  transform: translateY(0);
  opacity: 1;
}
.team-social a {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #ffffff;
  background: rgba(255, 255, 255, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.35);
  backdrop-filter: blur(8px);
  text-decoration: none;
  transition: 0.3s ease;
}
.team-social a:hover {
  background: #018149;
  border-color: #018149;
  transform: translateY(-4px);
}
/* ===================================================== CONTENT ===================================================== */
.team-card-content {
  padding: 23px 22px 25px;
}
.team-card-content h3 {
  margin: 0 0 7px;
  color: #001064;
  font-size: 20px;
  font-weight: 800;
  transition: color 0.3s ease;
}
.pcb-team-card:hover .team-card-content h3 {
  color: #018149;
}
.team-role {
  display: block;
  color: #018149;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.6px;
  text-transform: uppercase;
}
.team-card-line {
  width: 40px;
  height: 2px;
  margin: 14px 0;
  border-radius: 10px;
  background: #018149;
  transition: width 0.4s ease;
}
.pcb-team-card:hover .team-card-line {
  width: 75px;
}
.team-card-content p {
  margin: 0;
  color: #75808e;
  font-size: 13px;
  line-height: 1.7;
}
/* ===================================================== BOTTOM CTA ===================================================== */
.pcb-team-bottom {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  margin-top: 55px;
  padding: 28px 35px;
  border-radius: 20px;
  background:
    radial-gradient(circle at 8% 20%, rgba(1, 129, 73, 0.16), transparent 28%),
    radial-gradient(circle at 92% 80%, rgba(0, 16, 100, 0.3), transparent 32%),
    linear-gradient(135deg, #020e49 0%, #0a163d 48%, #021d3b 100%);
  box-shadow: 0 20px 45px rgba(0, 16, 100, 0.15);
}
.pcb-team-bottom::after {
  content: "";
  position: absolute;
  width: 250px;
  height: 250px;
  right: -80px;
  top: -120px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.12);
}
.pcb-team-bottom span {
  color: #71d8aa;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.5px;
}
.pcb-team-bottom h3 {
  margin: 6px 0 0;
  color: #ffffff;
  font-size: 25px;
  font-weight: 800;
}
.pcb-team-bottom a {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 14px 22px;
  border-radius: 50px;
  background: #018149;
  color: #ffffff;
  text-decoration: none;
  font-size: 13px;
  font-weight: 800;
  box-shadow: 0 10px 25px rgba(1, 129, 73, 0.3);
  transition: 0.35s ease;
}
.pcb-team-bottom a:hover {
  background: #ffffff;
  color: #001064;
  transform: translateX(5px);
}
/* ===================================================== SCROLL REVEAL ===================================================== */
.reveal-team {
  opacity: 0;
  transform: translateY(40px);
  transition:
    opacity 0.7s ease,
    transform 0.7s ease;
}
.reveal-team.team-visible {
  opacity: 1;
  transform: translateY(0);
}
.reveal-team:nth-child(1) {
  transition-delay: 0.05s;
}
.reveal-team:nth-child(2) {
  transition-delay: 0.1s;
}
.reveal-team:nth-child(3) {
  transition-delay: 0.15s;
}
.reveal-team:nth-child(4) {
  transition-delay: 0.2s;
}
.reveal-team:nth-child(5) {
  transition-delay: 0.25s;
}
.reveal-team:nth-child(6) {
  transition-delay: 0.3s;
}
.reveal-team:nth-child(7) {
  transition-delay: 0.35s;
}
.reveal-team:nth-child(8) {
  transition-delay: 0.4s;
}
/* ===================================================== TABLET ===================================================== */
@media (max-width: 1050px) {
  .pcb-team-section {
    padding: 90px 20px;
  }
  .pcb-team-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .team-card-image {
    height: 280px;
  }
}
/* ===================================================== TABLET / SMALL LAPTOP ===================================================== */
@media (max-width: 800px) {
  .pcb-team-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
  .team-card-image {
    height: 300px;
  }
  .pcb-team-bottom {
    align-items: flex-start;
    flex-direction: column;
  }
}
/* ===================================================== MOBILE ===================================================== */
@media (max-width: 560px) {
  .pcb-team-section {
    padding: 70px 15px;
  }
  .pcb-team-heading {
    margin-bottom: 40px;
  }
  .pcb-team-heading h2 {
    font-size: 31px;
  }
  .pcb-team-heading p {
    font-size: 14px;
    line-height: 1.7;
  }
  .pcb-team-grid {
    grid-template-columns: 1fr;
    gap: 22px;
  }
  .team-card-image {
    height: 330px;
  }
  .team-card-content {
    padding: 22px;
  }
  .pcb-team-bottom {
    padding: 25px 22px;
    margin-top: 40px;
  }
  .pcb-team-bottom h3 {
    font-size: 21px;
    line-height: 1.4;
  }
  .pcb-team-bottom a {
    width: 100%;
    justify-content: center;
  }
}
/* ===================================================== SMALL MOBILE ===================================================== */
@media (max-width: 380px) {
  .team-card-image {
    height: 290px;
  }
  .pcb-team-heading h2 {
    font-size: 27px;
  }
}
/* ===================================================== TESTIMONIAL SECTION ===================================================== */
.pcb-testimonial-section {
  position: relative;
  width: 100%;
  padding: 110px 20px;
  overflow: hidden;
  background: #010a35;
  isolation: isolate;
}
/* ----------------------------------------------------- BACKGROUND ----------------------------------------------------- */
.testimonial-bg {
  position: absolute;
  inset: 0;
  z-index: -3;
  background: linear-gradient(
    135deg,
    rgba(1, 10, 53, 0.98),
    rgba(0, 45, 55, 0.94),
    rgba(1, 10, 53, 0.98)
  );
}
/* Same dark/green feel as quote section */
.testimonial-overlay {
  position: absolute;
  inset: 0;
  z-index: -2;
  background:
    radial-gradient(circle at 15% 50%, rgba(1, 129, 73, 0.22), transparent 35%),
    radial-gradient(circle at 85% 30%, rgba(1, 129, 73, 0.18), transparent 32%),
    linear-gradient(
      90deg,
      rgba(1, 10, 53, 0.65),
      rgba(0, 35, 45, 0.3),
      rgba(1, 10, 53, 0.7)
    );
}
/* ----------------------------------------------------- PCB CIRCUIT LINES ----------------------------------------------------- */
.testimonial-circuit {
  position: absolute;
  z-index: -1;
  opacity: 0.35;
  pointer-events: none;
}
.testimonial-circuit::before,
.testimonial-circuit::after {
  content: "";
  position: absolute;
  display: block;
}
/* Circuit 1 */
.circuit-1 {
  width: 280px;
  height: 180px;
  left: -50px;
  top: 100px;
  border-top: 1px solid rgba(1, 129, 73, 0.55);
  border-right: 1px solid rgba(1, 129, 73, 0.55);
  border-radius: 0 80px 0 0;
}
.circuit-1::after {
  width: 8px;
  height: 8px;
  background: #018149;
  border-radius: 50%;
  right: -4px;
  top: -4px;
  box-shadow:
    0 0 10px #018149,
    0 0 25px rgba(1, 129, 73, 0.7);
}
/* Circuit 2 */
.circuit-2 {
  width: 350px;
  height: 230px;
  right: -80px;
  bottom: 70px;
  border-left: 1px solid rgba(1, 129, 73, 0.45);
  border-bottom: 1px solid rgba(1, 129, 73, 0.45);
  border-radius: 0 0 0 100px;
}
.circuit-2::after {
  width: 7px;
  height: 7px;
  background: #018149;
  border-radius: 50%;
  left: -4px;
  bottom: -4px;
  box-shadow:
    0 0 12px #018149,
    0 0 30px rgba(1, 129, 73, 0.8);
}
/* Circuit 3 */
.circuit-3 {
  width: 150px;
  height: 150px;
  right: 18%;
  top: 20px;
  border: 1px dashed rgba(255, 255, 255, 0.12);
  border-radius: 50%;
  animation: circuitRotate 18s linear infinite;
}
@keyframes circuitRotate {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(360deg);
  }
}
/* ----------------------------------------------------- GLOW ----------------------------------------------------- */
.testimonial-glow {
  position: absolute;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: rgba(1, 129, 73, 0.18);
  filter: blur(70px);
  z-index: -1;
  pointer-events: none;
}
.glow-1 {
  left: -100px;
  top: 20%;
  animation: glowMove 7s ease-in-out infinite alternate;
}
.glow-2 {
  right: -100px;
  bottom: 10%;
  animation: glowMove 8s ease-in-out infinite alternate-reverse;
}
@keyframes glowMove {
  from {
    transform: translateY(-25px);
  }
  to {
    transform: translateY(30px);
  }
}
/* ----------------------------------------------------- FLOATING DOTS ----------------------------------------------------- */
.testimonial-dot {
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #018149;
  box-shadow:
    0 0 10px #018149,
    0 0 25px rgba(1, 129, 73, 0.8);
  animation: floatingDot 5s ease-in-out infinite;
}
.dot-1 {
  left: 12%;
  top: 18%;
}
.dot-2 {
  left: 27%;
  bottom: 15%;
  animation-delay: 1s;
}
.dot-3 {
  right: 15%;
  top: 24%;
  animation-delay: 2s;
}
.dot-4 {
  right: 28%;
  bottom: 17%;
  animation-delay: 3s;
}
@keyframes floatingDot {
  0%,
  100% {
    transform: translateY(0);
    opacity: 0.45;
  }
  50% {
    transform: translateY(-20px);
    opacity: 1;
  }
}
/* ----------------------------------------------------- CONTAINER ----------------------------------------------------- */
.pcb-testimonial-container {
  position: relative;
  max-width: 1400px;
  margin: auto;
  z-index: 2;
}
/* ----------------------------------------------------- HEADING ----------------------------------------------------- */
.pcb-testimonial-heading {
  max-width: 700px;
  margin: 0 auto 65px;
  text-align: center;
}
.testimonial-tag {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 18px;
  border: 1px solid rgba(1, 129, 73, 0.45);
  border-radius: 50px;
  color: #018149;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 2px;
  background: rgba(1, 129, 73, 0.08);
}
.tag-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #018149;
  box-shadow: 0 0 12px #018149;
  animation: tagPulse 1.8s infinite;
}
@keyframes tagPulse {
  0%,
  100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.5);
  }
}
.pcb-testimonial-heading h2 {
  margin: 20px 0 15px;
  color: #fff;
  font-size: clamp(32px, 4vw, 52px);
  line-height: 1.15;
  font-weight: 800;
}
.pcb-testimonial-heading h2 span {
  color: #018149;
}
.pcb-testimonial-heading p {
  max-width: 650px;
  margin: auto;
  color: rgba(255, 255, 255, 0.68);
  font-size: 16px;
  line-height: 1.8;
}
.testimonial-heading-line {
  width: 100px;
  height: 2px;
  margin: 25px auto 0;
  background: rgba(255, 255, 255, 0.12);
  overflow: hidden;
}
.testimonial-heading-line span {
  display: block;
  width: 45%;
  height: 100%;
  background: #018149;
  animation: headingLine 2.5s linear infinite;
}
@keyframes headingLine {
  from {
    transform: translateX(-120%);
  }
  to {
    transform: translateX(250%);
  }
}
/* ----------------------------------------------------- MAIN LAYOUT ----------------------------------------------------- */
.testimonial-main-layout {
  display: grid;
  grid-template-columns: 210px minmax(400px, 700px) 210px;
  justify-content: center;
  align-items: center;
  gap: 35px;
}
/* ----------------------------------------------------- SIDE IMAGES ----------------------------------------------------- */
.testimonial-side {
  position: relative;
  height: 480px;
}
.testimonial-image {
  position: absolute;
  width: 105px;
  height: 125px;
  padding: 5px;
  border-radius: 15px;
  background: linear-gradient(
    135deg,
    rgba(1, 129, 73, 0.8),
    rgba(255, 255, 255, 0.15)
  );
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.35);
  transition:
    transform 0.5s ease,
    box-shadow 0.5s ease;
}
.testimonial-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  border-radius: 11px;
}
.testimonial-image:hover {
  transform: scale(1.08) translateY(-8px);
  box-shadow: 0 20px 50px rgba(1, 129, 73, 0.35);
}
/* Left positions */
.image-one {
  top: 15px;
  left: 20px;
  transform: rotate(-8deg);
}
.image-two {
  top: 180px;
  right: 5px;
  transform: rotate(7deg);
}
.image-three {
  bottom: 15px;
  left: 30px;
  transform: rotate(-5deg);
}
/* Right positions */
.image-four {
  top: 15px;
  right: 20px;
  transform: rotate(8deg);
}
.image-five {
  top: 180px;
  left: 5px;
  transform: rotate(-7deg);
}
.image-six {
  bottom: 15px;
  right: 30px;
  transform: rotate(5deg);
}
/* Floating animation */
.image-one,
.image-four {
  animation: imageFloat 5s ease-in-out infinite;
}
.image-two,
.image-five {
  animation: imageFloat 6s ease-in-out infinite 1s;
}
.image-three,
.image-six {
  animation: imageFloat 5.5s ease-in-out infinite 2s;
}
@keyframes imageFloat {
  0%,
  100% {
    margin-top: 0;
  }
  50% {
    margin-top: -12px;
  }
}
/* ----------------------------------------------------- CENTER TESTIMONIAL CARD ----------------------------------------------------- */
.testimonial-content-box {
  position: relative;
  min-height: 480px;
  padding: 55px 55px 40px;
  text-align: center;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 28px;
  background: linear-gradient(
    145deg,
    rgba(255, 255, 255, 0.1),
    rgba(255, 255, 255, 0.035)
  );
  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.35);
  overflow: hidden;
}
/* Green animated border */
.testimonial-content-box::before {
  content: "";
  position: absolute;
  inset: 0;
  padding: 1px;
  border-radius: inherit;
  background: linear-gradient(
    120deg,
    transparent,
    rgba(1, 129, 73, 0.8),
    transparent,
    rgba(1, 129, 73, 0.5),
    transparent
  );
  background-size: 250% 250%;
  animation: borderMove 6s linear infinite;
  pointer-events: none;
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}
@keyframes borderMove {
  from {
    background-position: 0% 50%;
  }
  to {
    background-position: 250% 50%;
  }
}
/* ----------------------------------------------------- QUOTE ICON ----------------------------------------------------- */
.quote-decoration {
  position: absolute;
  top: 25px;
  right: 35px;
  font-size: 45px;
  color: #018149;
  transform: rotate(-8deg);
  transition:
    transform 0.7s ease,
    color 0.5s ease;
}
.quote-decoration {
}
.quote-decoration:hover {
  color: #018149;
  transform: rotate(180deg);
}
/* ----------------------------------------------------- SLIDER ----------------------------------------------------- */
.testimonial-slider {
  position: relative;
  min-height: 330px;
}
.testimonial-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  transform: translateY(20px) scale(0.98);
  transition:
    opacity 0.5s ease,
    transform 0.5s ease,
    visibility 0.5s ease;
}
.testimonial-slide.active {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
}
/* Client image */
.client-image {
  width: 90px;
  height: 90px;
  margin: 0 auto 15px;
  padding: 4px;
  border-radius: 50%;
  background: linear-gradient(135deg, #018149, rgba(255, 255, 255, 0.2));
  box-shadow:
    0 0 0 7px rgba(1, 129, 73, 0.08),
    0 0 35px rgba(1, 129, 73, 0.25);
}
.client-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
/* Rating */
.rating {
  color: #ffffff;
  font-size: 17px;
  letter-spacing: 4px;
  margin-bottom: 20px;
}
/* Text */
.testimonial-slide p {
  max-width: 590px;
  margin: 0 auto 22px;
  color: rgba(255, 255, 255, 0.78);
  font-size: 17px;
  line-height: 1.8;
}
.testimonial-slide h3 {
  margin: 0 0 5px;
  color: #fff;
  font-size: 21px;
}
.testimonial-slide > span {
  color: #018149;
  font-size: 14px;
  font-weight: 600;
}
/* ----------------------------------------------------- CONTROLS ----------------------------------------------------- */
.testimonial-controls {
  position: relative;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 25px;
  margin-top: 25px;
}
.testimonial-prev,
.testimonial-next {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(1, 129, 73, 0.5);
  border-radius: 50%;
  background: rgba(1, 129, 73, 0.08);
  color: #fff;
  cursor: pointer;
  transition: all 0.35s ease;
}
.testimonial-prev:hover,
.testimonial-next:hover {
  background: #018149;
  color: #fff;
  transform: translateY(-4px);
  box-shadow: 0 10px 25px rgba(1, 129, 73, 0.35);
}
/* Dots */
.testimonial-dots {
  display: flex;
  gap: 8px;
}
.testimonial-dots button {
  width: 9px;
  height: 9px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.25);
  cursor: pointer;
  transition: all 0.3s ease;
}
.testimonial-dots button.active {
  width: 28px;
  border-radius: 10px;
  background: #018149;
  box-shadow: 0 0 12px rgba(1, 129, 73, 0.7);
}
/* ===================================================== RESPONSIVE ===================================================== */
@media (max-width: 1100px) {
  .testimonial-main-layout {
    grid-template-columns: 150px minmax(400px, 1fr) 150px;
    gap: 20px;
  }
  .testimonial-image {
    width: 85px;
    height: 105px;
  }
  .testimonial-content-box {
    padding: 45px 35px 35px;
  }
}
@media (max-width: 900px) {
  .pcb-testimonial-section {
    padding: 80px 20px;
  }
  .testimonial-side {
    display: none;
  }
  .testimonial-main-layout {
    display: block;
    max-width: 720px;
    margin: auto;
  }
  .testimonial-content-box {
    min-height: 470px;
  }
}
@media (max-width: 600px) {
  .pcb-testimonial-section {
    padding: 65px 15px;
  }
  .pcb-testimonial-heading {
    margin-bottom: 40px;
  }
  .pcb-testimonial-heading h2 {
    font-size: 31px;
  }
  .pcb-testimonial-heading p {
    font-size: 14px;
    line-height: 1.7;
  }
  .testimonial-content-box {
    min-height: 510px;
    padding: 40px 20px 30px;
    border-radius: 22px;
  }
  .testimonial-slider {
    min-height: 370px;
  }
  .testimonial-slide p {
    font-size: 15px;
    line-height: 1.75;
  }
  .client-image {
    width: 78px;
    height: 78px;
  }
  .rating {
    font-size: 14px;
    letter-spacing: 3px;
  }
  .testimonial-controls {
    margin-top: 15px;
    gap: 18px;
  }
  .testimonial-prev,
  .testimonial-next {
    width: 43px;
    height: 43px;
  }
  .testimonial-circuit {
    opacity: 0.2;
  }
}
@media (max-width: 380px) {
  .testimonial-content-box {
    padding-left: 15px;
    padding-right: 15px;
  }
  .pcb-testimonial-heading h2 {
    font-size: 27px;
  }
  .testimonial-slide p {
    font-size: 14px;
  }
}
/* ===================================================== PCB FAQ SECTION ===================================================== */
.pcb-faq-section {
  position: relative;
  width: 100%;
  padding: 110px 20px;
  overflow: hidden;
  isolation: isolate;
  background: #f6f7f8;
}
/* ===================================================== BACKGROUND DECORATION ===================================================== */
.faq-bg-decoration {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
  z-index: -1;
}
.faq-glow {
  position: absolute;
  width: 320px;
  height: 320px;
  border-radius: 50%;
  filter: blur(90px);
  opacity: 0.12;
}
.faq-glow-1 {
  background: #018149;
  left: -150px;
  top: 5%;
  animation: faqGlowMove 8s ease-in-out infinite;
}
.faq-glow-2 {
  background: #001064;
  right: -150px;
  bottom: 5%;
  animation: faqGlowMove 9s ease-in-out infinite reverse;
}
@keyframes faqGlowMove {
  0%,
  100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(40px, -30px);
  }
}
/* PCB ORBITS */
.faq-orbit {
  position: absolute;
  border: 1px dashed rgba(1, 129, 73, 0.18);
  border-radius: 50%;
}
.faq-orbit-1 {
  width: 420px;
  height: 420px;
  left: -220px;
  top: 35%;
  animation: orbitRotate 20s linear infinite;
}
.faq-orbit-2 {
  width: 500px;
  height: 500px;
  right: -280px;
  top: 15%;
  animation: orbitRotate 25s linear infinite reverse;
}
@keyframes orbitRotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/* FLOATING NODES */
.faq-node {
  position: absolute;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #018149;
  box-shadow: 0 0 15px rgba(1, 129, 73, 0.6);
}
.faq-node-1 {
  top: 15%;
  left: 8%;
  animation: nodeFloat 4s infinite ease-in-out;
}
.faq-node-2 {
  top: 30%;
  right: 8%;
  animation: nodeFloat 5s infinite ease-in-out 1s;
}
.faq-node-3 {
  bottom: 18%;
  left: 12%;
  animation: nodeFloat 4.5s infinite ease-in-out 0.5s;
}
.faq-node-4 {
  bottom: 10%;
  right: 14%;
  animation: nodeFloat 5.5s infinite ease-in-out 1.5s;
}
@keyframes nodeFloat {
  0%,
  100% {
    transform: translateY(0);
    opacity: 0.5;
  }
  50% {
    transform: translateY(-20px);
    opacity: 1;
  }
}
/* ===================================================== CONTAINER ===================================================== */
.pcb-faq-container {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}
/* ===================================================== HEADING ===================================================== */
.pcb-faq-heading {
  max-width: 700px;
  margin: 0 auto 55px;
  text-align: center;
}
.faq-tag {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 8px 16px;
  border: 1px solid rgba(1, 129, 73, 0.25);
  border-radius: 50px;
  color: #018149;
  background: rgba(1, 129, 73, 0.06);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 2px;
}
.faq-tag-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #018149;
  box-shadow: 0 0 12px rgba(1, 129, 73, 0.7);
  animation: faqTagPulse 1.8s infinite;
}
@keyframes faqTagPulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(0.55);
    opacity: 0.45;
  }
}
.pcb-faq-heading h2 {
  margin: 20px 0 15px;
  color: #010a35;
  font-size: clamp(34px, 5vw, 54px);
  line-height: 1.1;
  font-weight: 800;
}
.pcb-faq-heading h2 span {
  color: #018149;
}
.pcb-faq-heading p {
  max-width: 650px;
  margin: auto;
  color: #687080;
  font-size: 16px;
  line-height: 1.8;
}
.faq-heading-line {
  width: 90px;
  height: 3px;
  margin: 25px auto 0;
  background: rgba(1, 10, 53, 0.1);
  border-radius: 10px;
  overflow: hidden;
}
.faq-heading-line span {
  display: block;
  width: 40px;
  height: 100%;
  margin: auto;
  background: #018149;
  animation: faqLineMove 2s ease-in-out infinite;
}
@keyframes faqLineMove {
  0%,
  100% {
    transform: translateX(-25px);
  }
  50% {
    transform: translateX(25px);
  }
}
/* ===================================================== FAQ LIST ===================================================== */
.pcb-faq-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
/* FAQ CARD */
.pcb-faq-item {
  position: relative;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(1, 10, 53, 0.08);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 8px 25px rgba(1, 10, 53, 0.045);
  transition:
    transform 0.35s ease,
    border-color 0.35s ease,
    box-shadow 0.35s ease;
}
.pcb-faq-item:hover {
  transform: translateY(-3px);
  border-color: rgba(1, 129, 73, 0.28);
  box-shadow: 0 15px 35px rgba(1, 10, 53, 0.08);
}
/* ACTIVE CARD */
.pcb-faq-item.active {
  border-color: rgba(1, 129, 73, 0.35);
  box-shadow: 0 15px 35px rgba(1, 129, 73, 0.08);
}
/* ===================================================== QUESTION ===================================================== */
.pcb-faq-question {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 20px 22px;
  border: none;
  outline: none;
  background: transparent;
  color: #010a35;
  text-align: left;
  cursor: pointer;
}
/* NUMBER */
.faq-number {
  flex: 0 0 auto;
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  color: #018149;
  background: rgba(1, 129, 73, 0.08);
  font-size: 12px;
  font-weight: 800;
}
/* QUESTION TEXT */
.faq-question-text {
  flex: 1;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
}
/* PLUS ICON */
.faq-icon {
  flex: 0 0 auto;
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #018149;
  background: rgba(1, 129, 73, 0.08);
  transition: all 0.35s ease;
}
.faq-icon i {
  font-size: 13px;
  transition: transform 0.35s ease;
}
/* ACTIVE ICON */
.pcb-faq-item.active .faq-icon {
  color: #ffffff;
  background: #018149;
}
.pcb-faq-item.active .faq-icon i {
  transform: rotate(45deg);
}
/* ===================================================== ANSWER ===================================================== */
.pcb-faq-answer {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.4s ease;
}
.pcb-faq-answer p {
  overflow: hidden;
  margin: 0;
  padding: 0 78px;
  color: #687080;
  font-size: 14px;
  line-height: 1.8;
  transition: padding 0.4s ease;
}
.pcb-faq-item.active .pcb-faq-answer {
  grid-template-rows: 1fr;
}
.pcb-faq-item.active .pcb-faq-answer p {
  padding-bottom: 22px;
}
/* ===================================================== HIDDEN FAQ ===================================================== */
.faq-hidden {
  display: none;
}
.pcb-faq-list.show-all .faq-hidden {
  display: block;
  animation: faqReveal 0.5s ease both;
}
@keyframes faqReveal {
  from {
    opacity: 0;
    transform: translateY(15px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* ===================================================== VIEW MORE BUTTON ===================================================== */
.faq-view-more-wrap {
  text-align: center;
  margin-top: 30px;
}
.faq-view-more {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 13px 24px;
  border: 1px solid rgba(1, 129, 73, 0.3);
  border-radius: 50px;
  color: #018149;
  background: #ffffff;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.35s ease;
  box-shadow: 0 8px 20px rgba(1, 10, 53, 0.06);
}
.faq-view-more i {
  transition: transform 0.35s ease;
}
.faq-view-more:hover {
  color: #ffffff;
  background: #018149;
  border-color: #018149;
  transform: translateY(-3px);
  box-shadow: 0 12px 25px rgba(1, 129, 73, 0.22);
}
.faq-view-more.active i {
  transform: rotate(180deg);
}
/* ===================================================== BOTTOM CTA ===================================================== */
.faq-bottom-cta {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
  margin-top: 65px;
  padding: 28px 32px;
  border-radius: 20px;
  background: linear-gradient(135deg, #010a35, #001064);
  overflow: hidden;
  box-shadow: 0 20px 45px rgba(1, 10, 53, 0.18);
}
.faq-bottom-cta::before {
  content: "";
  position: absolute;
  width: 180px;
  height: 180px;
  right: 20%;
  top: -100px;
  border-radius: 50%;
  background: #018149;
  filter: blur(80px);
  opacity: 0.2;
}
.faq-bottom-cta > div {
  position: relative;
}
.faq-bottom-cta span {
  color: #35c982;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.5px;
}
.faq-bottom-cta h3 {
  margin: 6px 0 0;
  color: #ffffff;
  font-size: 22px;
}
/* CTA BUTTON */
.faq-cta-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
  padding: 13px 22px;
  color: #ffffff;
  background: #018149;
  border-radius: 50px;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  transition: all 0.35s ease;
}
.faq-cta-button i {
  transition: transform 0.35s ease;
}
.faq-cta-button:hover {
  color: #ffffff;
  background: #016c3d;
  transform: translateY(-3px);
  box-shadow: 0 10px 25px rgba(1, 129, 73, 0.35);
}
.faq-cta-button:hover i {
  transform: translateX(5px);
}
/* ===================================================== RESPONSIVE ===================================================== */
@media (max-width: 768px) {
  .pcb-faq-section {
    padding: 80px 15px;
  }
  .pcb-faq-heading {
    margin-bottom: 40px;
  }
  .pcb-faq-heading h2 {
    font-size: 36px;
  }
  .pcb-faq-heading p {
    font-size: 14px;
  }
  .pcb-faq-question {
    padding: 17px 16px;
    gap: 11px;
  }
  .faq-number {
    width: 34px;
    height: 34px;
    font-size: 10px;
  }
  .faq-question-text {
    font-size: 14px;
  }
  .faq-icon {
    width: 34px;
    height: 34px;
  }
  .pcb-faq-answer p {
    padding: 0 61px;
    font-size: 13.5px;
  }
  .pcb-faq-item.active .pcb-faq-answer p {
    padding-bottom: 18px;
  }
  .faq-bottom-cta {
    flex-direction: column;
    align-items: flex-start;
    padding: 25px;
  }
}
@media (max-width: 480px) {
  .pcb-faq-section {
    padding: 65px 12px;
  }
  .pcb-faq-heading h2 {
    font-size: 30px;
  }
  .faq-tag {
    font-size: 10px;
    letter-spacing: 1.5px;
  }
  .pcb-faq-question {
    padding: 15px 13px;
  }
  .faq-number {
    width: 30px;
    height: 30px;
    border-radius: 8px;
  }
  .faq-icon {
    width: 30px;
    height: 30px;
  }
  .faq-question-text {
    font-size: 13px;
  }
  .pcb-faq-answer p {
    padding-left: 54px;
    padding-right: 18px;
    font-size: 13px;
  }
  .faq-bottom-cta {
    padding: 22px;
  }
  .faq-bottom-cta h3 {
    font-size: 19px;
  }
  .faq-cta-button {
    width: 100%;
    justify-content: center;
  }
}
/* ===================================================== PCB PREMIUM FOOTER ===================================================== */
.pcb-footer {
  --footer-primary: #018149;
  --footer-secondary: #001064;
  --footer-dark: #010a35;
  position: relative;
  overflow: hidden;
  color: #d9e5e2;
  background:
    radial-gradient(circle at 8% 20%, rgba(1, 129, 73, 0.16), transparent 28%),
    radial-gradient(circle at 92% 80%, rgba(0, 16, 100, 0.3), transparent 32%),
    linear-gradient(135deg, #010a35 0%, #02091f 48%, #00152b 100%);
}
/* PCB GRID */
.pcb-footer::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(1, 129, 73, 0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(1, 129, 73, 0.055) 1px, transparent 1px);
  background-size: 55px 55px;
  opacity: 0.7;
  pointer-events: none;
}
/* DARK OVERLAY */
.pcb-footer::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    90deg,
    rgba(1, 129, 73, 0.04),
    transparent 35%,
    rgba(0, 16, 100, 0.12)
  );
  pointer-events: none;
}
/* ===================================================== BACKGROUND EFFECTS ===================================================== */
.footer-bg-effects {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}
/* GLOW */
.footer-glow {
  position: absolute;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  filter: blur(80px);
  opacity: 0.15;
}
.footer-glow-1 {
  background: #018149;
  left: -120px;
  top: 80px;
  animation: footerGlowMove 8s ease-in-out infinite alternate;
}
.footer-glow-2 {
  background: #001064;
  right: -100px;
  top: 20%;
  animation: footerGlowMove 10s ease-in-out infinite alternate-reverse;
}
.footer-glow-3 {
  background: #018149;
  right: 35%;
  bottom: -180px;
  opacity: 0.08;
}
/* FLOATING DOTS */
.footer-dot {
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #20d991;
  box-shadow: 0 0 15px #018149;
  animation: footerFloat 6s ease-in-out infinite;
}
.footer-dot-1 {
  left: 10%;
  top: 20%;
}
.footer-dot-2 {
  left: 45%;
  top: 65%;
  animation-delay: 1s;
}
.footer-dot-3 {
  right: 12%;
  top: 30%;
  animation-delay: 2s;
}
.footer-dot-4 {
  right: 40%;
  bottom: 15%;
  animation-delay: 3s;
}
/* CIRCUIT LINES */
.circuit-line {
  position: absolute;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(1, 129, 73, 0.6),
    transparent
  );
  opacity: 0.45;
}
.circuit-line-1 {
  width: 320px;
  top: 24%;
  left: -100px;
  transform: rotate(25deg);
  animation: circuitMove 7s linear infinite;
}
.circuit-line-2 {
  width: 280px;
  right: -80px;
  top: 45%;
  transform: rotate(-25deg);
  animation: circuitMove 9s linear infinite reverse;
}
.circuit-line-3 {
  width: 220px;
  left: 35%;
  bottom: 20%;
  transform: rotate(-15deg);
}
.circuit-line-4 {
  width: 180px;
  right: 20%;
  top: 18%;
  transform: rotate(20deg);
}
/* ===================================================== MAIN CONTAINER ===================================================== */
.pcb-footer-container {
  position: relative;
  z-index: 2;
  width: min(1200px, calc(100% - 40px));
  margin: auto;
  padding: 80px 0 45px;
}
/* ===================================================== TOP ===================================================== */
.footer-top {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 70px;
  padding-bottom: 55px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.09);
}
/* LOGO */
.footer-logo {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  color: #fff;
  text-decoration: none;
  font-size: 26px;
  font-weight: 800;
  letter-spacing: -0.5px;
}
.footer-logo strong {
  display: block;
  color: #20d991;
}
.logo-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  background: linear-gradient(
    135deg,
    rgba(1, 129, 73, 0.25),
    rgba(0, 16, 100, 0.5)
  );
  border: 1px solid rgba(32, 217, 145, 0.25);
  box-shadow: 0 10px 35px rgba(1, 129, 73, 0.18);
}
.logo-icon img {
  width: 42px;
  height: 42px;
  object-fit: contain;
}
/* COMPANY TEXT */
.footer-company > p {
  max-width: 620px;
  margin: 25px 0;
  color: #aab8c7;
  line-height: 1.8;
  font-size: 15px;
}
/* BADGES */
.footer-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.footer-badges span {
  padding: 9px 13px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.035);
  color: #b9c8d4;
  font-size: 12px;
  transition: 0.35s ease;
}
.footer-badges span i {
  color: #20d991;
  margin-right: 6px;
}
.footer-badges span:hover {
  transform: translateY(-4px);
  border-color: rgba(32, 217, 145, 0.4);
  background: rgba(1, 129, 73, 0.12);
}
/* ===================================================== NEWSLETTER ===================================================== */
.footer-title > span,
.social-label {
  color: #20d991;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 2px;
}
.footer-title h3 {
  margin: 9px 0 15px;
  color: #fff;
  font-size: 25px;
}
.footer-newsletter > p {
  color: #9eafbd;
  line-height: 1.7;
  font-size: 14px;
}
.newsletter-box {
  position: relative;
  margin-top: 22px;
}
.newsletter-box input {
  width: 100%;
  height: 58px;
  padding: 0 70px 0 20px;
  color: #fff;
  background: rgba(255, 255, 255, 0.055);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 14px;
  outline: none;
  transition: 0.3s ease;
}
.newsletter-box input::placeholder {
  color: #7e8d9b;
}
.newsletter-box input:focus {
  border-color: #018149;
  box-shadow: 0 0 0 4px rgba(1, 129, 73, 0.08);
}
.newsletter-box button {
  position: absolute;
  right: 7px;
  top: 7px;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 11px;
  color: #fff;
  background: #018149;
  cursor: pointer;
  transition: 0.35s ease;
}
.newsletter-box button:hover {
  transform: translateY(-2px) rotate(8deg);
  background: #20a96f;
  box-shadow: 0 8px 25px rgba(1, 129, 73, 0.3);
}
.footer-newsletter small {
  display: block;
  margin-top: 12px;
  color: #718090;
}
.footer-newsletter small i {
  color: #20d991;
  margin-right: 5px;
}
/* ===================================================== LINKS AREA ===================================================== */
.footer-links-area {
  display: grid;
  grid-template-columns: 0.9fr 0.8fr 1.3fr;
  gap: 60px;
  padding: 55px 0;
}
/* HEADING */
.footer-heading {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 22px;
}
.footer-heading span {
  width: 4px;
  height: 24px;
  border-radius: 10px;
  background: #018149;
  box-shadow: 0 0 12px rgba(1, 129, 73, 0.7);
}
.footer-heading h4 {
  margin: 0;
  color: #fff;
  font-size: 19px;
}
/* FOOTER LINKS */
.footer-column > a {
  position: relative;
  display: block;
  width: fit-content;
  margin-bottom: 13px;
  color: #9eacb9;
  text-decoration: none;
  font-size: 16px;
  transition: 0.3s ease;
}
.footer-column > a i {
  color: #018149;
  font-size: 9px;
  margin-right: 9px;
  transition: 0.3s ease;
}
.footer-column > a:hover {
  color: #fff;
  transform: translateX(6px);
}
.footer-column > a:hover i {
  color: #20d991;
}
/* ===================================================== CONTACT RIGHT ===================================================== */
.footer-contact {
  justify-self: end;
  width: 100%;
  max-width: 390px;
}
.footer-contact .footer-heading h4 {
  font-size: 21px;
}
.contact-item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 13px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.055);
}
.contact-icon {
  flex-shrink: 0;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  color: #20d991;
  background: rgba(1, 129, 73, 0.1);
  border: 1px solid rgba(32, 217, 145, 0.12);
  transition: 0.35s ease;
}
.contact-item:hover .contact-icon {
  transform: rotate(-8deg) scale(1.08);
  background: #018149;
  color: #fff;
}
.contact-item small {
  display: block;
  margin-bottom: 4px;
  color: #607080;
  font-size: 9px;
  letter-spacing: 1.5px;
  font-weight: 800;
}
.contact-item p,
.contact-item a {
  margin: 0;
  color: #aab7c4;
  font-size: 15px;
  line-height: 1.65;
  text-decoration: none;
}
.contact-item a:hover {
  color: #20d991;
}
/* ===================================================== SOCIAL AREA ===================================================== */
.footer-social-area {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
  padding-top: 30px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.footer-social {
  display: flex;
  gap: 9px;
  margin-top: 12px;
}
.footer-social a {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  color: #a8b5c1;
  background: rgba(255, 255, 255, 0.045);
  border: 1px solid rgba(255, 255, 255, 0.08);
  text-decoration: none;
  transition: 0.35s ease;
}
.footer-social a:hover {
  color: #fff;
  background: #018149;
  border-color: #018149;
  transform: translateY(-5px) rotate(-5deg);
  box-shadow: 0 10px 25px rgba(1, 129, 73, 0.25);
}
/* CTA */
.footer-cta {
  display: flex;
  align-items: center;
  gap: 22px;
  padding: 15px 18px;
  border-radius: 15px;
  color: #fff;
  text-decoration: none;
  background: linear-gradient(
    135deg,
    rgba(1, 129, 73, 0.16),
    rgba(0, 16, 100, 0.3)
  );
  border: 1px solid rgba(32, 217, 145, 0.15);
  transition: 0.35s ease;
}
.footer-cta span {
  color: #a8b6c2;
  font-size: 12px;
}
.footer-cta strong {
  display: block;
  color: #fff;
  font-size: 15px;
  margin-top: 3px;
}
.footer-cta > i {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #018149;
  color: #fff;
  transition: 0.35s ease;
}
.footer-cta:hover {
  transform: translateY(-4px);
  border-color: rgba(32, 217, 145, 0.4);
}
.footer-cta:hover > i {
  transform: translateX(5px);
}
/* ===================================================== COPYRIGHT ===================================================== */
.footer-bottom {
  position: relative;
  z-index: 3;
  background: rgba(0, 0, 0, 0.25);
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}
.footer-bottom-inner {
  width: min(1200px, calc(100% - 40px));
  min-height: 72px;
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.footer-bottom p {
  margin: 0;
  color: #6f7d8a;
  font-size: 12px;
}
.footer-bottom a {
  color: #20d991;
  text-decoration: none;
}
.footer-bottom a:hover {
  color: #fff;
}
/* ===================================================== BACK TO TOP ===================================================== */
.pcb-back-top {
  position: fixed;
  right: 25px;
  bottom: 25px;
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  z-index: 999;
  border-radius: 50%;
  color: #fff;
  background: #018149;
  text-decoration: none;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
  transition: 0.35s ease;
}
.pcb-back-top:hover {
  color: #fff;
  transform: translateY(-5px);
  background: #20a96f;
}
/* ===================================================== ANIMATIONS ===================================================== */
@keyframes footerFloat {
  0%,
  100% {
    transform: translateY(0) scale(1);
    opacity: 0.5;
  }
  50% {
    transform: translateY(-35px) scale(1.5);
    opacity: 1;
  }
}
@keyframes footerGlowMove {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(70px, -30px);
  }
}
@keyframes circuitMove {
  0% {
    transform: translateX(-50px) rotate(25deg);
    opacity: 0;
  }
  30% {
    opacity: 0.5;
  }
  70% {
    opacity: 0.5;
  }
  100% {
    transform: translateX(100px) rotate(25deg);
    opacity: 0;
  }
}
/* ===================================================== RESPONSIVE ===================================================== */
@media (max-width: 992px) {
  .pcb-footer-container {
    padding-top: 65px;
  }
  .footer-top {
    grid-template-columns: 1fr;
    gap: 45px;
  }
  .footer-links-area {
    grid-template-columns: 1fr 1fr;
    gap: 45px;
  }
  .footer-contact {
    justify-self: start;
  }
}
@media (max-width: 700px) {
  .pcb-footer-container {
    width: min(100% - 30px, 560px);
    padding: 55px 0 35px;
  }
  .footer-links-area {
    grid-template-columns: 1fr;
    gap: 35px;
  }
  .footer-company > p {
    font-size: 14px;
  }
  .footer-logo {
    font-size: 22px;
  }
  .footer-social-area {
    align-items: flex-start;
    flex-direction: column;
  }
  .footer-cta {
    width: 100%;
    justify-content: space-between;
  }
  .footer-bottom-inner {
    width: calc(100% - 30px);
    padding: 18px 0;
    flex-direction: column;
    text-align: center;
  }
}
@media (max-width: 430px) {
  .footer-badges span {
    font-size: 11px;
    padding: 8px 10px;
  }
  .newsletter-box input {
    height: 54px;
  }
  .newsletter-box button {
    width: 40px;
    height: 40px;
  }
  .footer-social a {
    width: 39px;
    height: 39px;
  }
  .pcb-back-top {
    right: 15px;
    bottom: 15px;
    width: 44px;
    height: 44px;
  }
}
.pcb-back-top {
  opacity: 0;
  visibility: hidden;
  transform: translateY(15px);
}
.pcb-back-top.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* =================================================================================================================aboutus css======================================================================================================================================== */

/* =====================================================
   ABOUT US HERO SECTION
===================================================== */

.about-hero-section {
  position: relative;
  width: 100%;
  min-height: 390px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;

  background: linear-gradient(135deg, #07121d 0%, #0b1d2d 45%, #07131f 100%);

  isolation: isolate;
}

/* =====================================================
   BACKGROUND
===================================================== */

.about-hero-bg {
  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      circle at 18% 50%,
      rgba(37, 150, 243, 0.16),
      transparent 30%
    ),
    radial-gradient(circle at 82% 30%, rgba(0, 188, 212, 0.1), transparent 28%);

  z-index: -5;
}

.about-hero-overlay {
  position: absolute;
  inset: 0;

  background: linear-gradient(
    90deg,
    rgba(4, 13, 22, 0.95),
    rgba(6, 20, 32, 0.78),
    rgba(4, 13, 22, 0.95)
  );

  z-index: -4;
}

/* =====================================================
   ANIMATED GRID
===================================================== */

.about-hero-grid {
  position: absolute;
  inset: 0;

  background-image:
    linear-gradient(rgba(65, 145, 190, 0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(65, 145, 190, 0.055) 1px, transparent 1px);

  background-size: 55px 55px;

  opacity: 0.65;

  animation: aboutGridMove 18s linear infinite;

  z-index: -3;
}

@keyframes aboutGridMove {
  0% {
    background-position: 0 0;
  }

  100% {
    background-position: 55px 55px;
  }
}

/* =====================================================
   GLOW
===================================================== */

.about-glow {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(8px);
}

.about-glow-one {
  width: 280px;
  height: 280px;

  left: -120px;
  top: 50%;

  transform: translateY(-50%);

  background: rgba(30, 136, 229, 0.12);

  animation: heroGlowOne 6s ease-in-out infinite;
}

.about-glow-two {
  width: 230px;
  height: 230px;

  right: -100px;
  top: -80px;

  background: rgba(0, 188, 212, 0.1);

  animation: heroGlowTwo 7s ease-in-out infinite;
}

@keyframes heroGlowOne {
  0%,
  100% {
    transform: translateY(-50%) scale(1);
    opacity: 0.7;
  }

  50% {
    transform: translateY(-50%) scale(1.25);
    opacity: 1;
  }
}

@keyframes heroGlowTwo {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.5;
  }

  50% {
    transform: scale(1.3);
    opacity: 0.9;
  }
}

/* =====================================================
   PCB CIRCUIT LINES
===================================================== */

.about-circuit {
  position: absolute;
  height: 1px;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(60, 170, 230, 0.65),
    transparent
  );

  opacity: 0.65;

  pointer-events: none;
}

.about-circuit::after {
  content: "";

  position: absolute;

  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #48b9ed;

  box-shadow:
    0 0 8px rgba(72, 185, 237, 0.9),
    0 0 18px rgba(72, 185, 237, 0.55);

  top: 50%;

  transform: translateY(-50%);

  animation: circuitPulse 2.5s ease-in-out infinite;
}

.circuit-one {
  width: 260px;
  left: -50px;
  top: 28%;
  transform: rotate(10deg);
}

.circuit-one::after {
  right: 0;
}

.circuit-two {
  width: 330px;
  right: -80px;
  top: 35%;
  transform: rotate(-8deg);
}

.circuit-two::after {
  left: 0;
}

.circuit-three {
  width: 220px;
  left: 5%;
  bottom: 18%;
  transform: rotate(-7deg);
}

.circuit-three::after {
  right: 0;
}

.circuit-four {
  width: 280px;
  right: 3%;
  bottom: 17%;
  transform: rotate(8deg);
}

.circuit-four::after {
  left: 0;
}

@keyframes circuitPulse {
  0%,
  100% {
    opacity: 0.35;
    transform: translateY(-50%) scale(0.8);
  }

  50% {
    opacity: 1;
    transform: translateY(-50%) scale(1.2);
  }
}

/* =====================================================
   FLOATING DOTS
===================================================== */

.about-floating-dot {
  position: absolute;

  width: 5px;
  height: 5px;

  border-radius: 50%;

  background: #4db9eb;

  box-shadow:
    0 0 8px rgba(77, 185, 235, 0.9),
    0 0 20px rgba(77, 185, 235, 0.45);

  animation: floatingDot 5s ease-in-out infinite;

  pointer-events: none;
}

.dot-one {
  left: 12%;
  top: 25%;
}

.dot-two {
  left: 25%;
  bottom: 18%;
  animation-delay: 1s;
}

.dot-three {
  right: 15%;
  top: 22%;
  animation-delay: 2s;
}

.dot-four {
  right: 25%;
  bottom: 20%;
  animation-delay: 1.5s;
}

.dot-five {
  left: 50%;
  top: 15%;
  animation-delay: 2.5s;
}

@keyframes floatingDot {
  0%,
  100% {
    transform: translateY(0) scale(1);
    opacity: 0.45;
  }

  50% {
    transform: translateY(-15px) scale(1.4);
    opacity: 1;
  }
}

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

.about-hero-content {
  position: relative;

  max-width: 850px;

  margin: 0 auto;

  padding: 65px 20px 60px;

  text-align: center;

  z-index: 5;
}

/* =====================================================
   TAG
===================================================== */

.about-hero-tag {
  display: inline-flex;

  align-items: center;
  gap: 10px;

  padding: 8px 16px;

  margin-bottom: 18px;

  border: 1px solid rgba(70, 175, 225, 0.28);

  border-radius: 30px;

  background: rgba(255, 255, 255, 0.035);

  color: #65c5ef;

  font-size: 12px;
  font-weight: 700;

  letter-spacing: 1.8px;

  backdrop-filter: blur(8px);

  box-shadow: 0 0 20px rgba(40, 150, 210, 0.06);
}

.hero-tag-dot {
  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #46b7eb;

  box-shadow: 0 0 7px rgba(70, 183, 235, 0.9);

  animation: tagDotPulse 1.8s infinite;
}

@keyframes tagDotPulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.6;
  }

  50% {
    transform: scale(1.5);
    opacity: 1;
  }
}

/* =====================================================
   TITLE
===================================================== */

.about-hero-title {
  margin: 0 auto 18px;

  color: #ffffff;

  font-size: clamp(34px, 5vw, 58px);

  line-height: 1.12;

  font-weight: 700;

  letter-spacing: -1px;

  text-shadow: 0 5px 25px rgba(0, 0, 0, 0.35);
}

.about-hero-title span {
  display: inline-block;

  background: linear-gradient(90deg, #35aee8, #6ed4ff, #329fd5);

  -webkit-background-clip: text;
  background-clip: text;

  -webkit-text-fill-color: transparent;

  background-size: 200% auto;

  animation: titleGradient 5s linear infinite;
}

@keyframes titleGradient {
  0% {
    background-position: 0% center;
  }

  100% {
    background-position: 200% center;
  }
}

/* =====================================================
   DESCRIPTION
===================================================== */

.about-hero-description {
  max-width: 720px;

  margin: 0 auto 24px;

  color: rgba(235, 245, 250, 0.75);

  font-size: 16px;

  line-height: 1.75;

  font-weight: 400;
}

/* =====================================================
   BREADCRUMB
===================================================== */

.about-breadcrumb {
  display: inline-flex;

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

  gap: 12px;

  padding: 10px 18px;

  border-radius: 8px;

  background: rgba(255, 255, 255, 0.045);

  border: 1px solid rgba(255, 255, 255, 0.08);

  backdrop-filter: blur(8px);

  font-size: 14px;
}

.about-breadcrumb a {
  color: #67c8f1;

  text-decoration: none;

  transition: 0.3s ease;
}

.about-breadcrumb a:hover {
  color: #ffffff;
}

.about-breadcrumb a i {
  margin-right: 6px;
}

.about-breadcrumb > span {
  color: rgba(255, 255, 255, 0.35);

  font-size: 10px;
}

.about-breadcrumb strong {
  color: rgba(255, 255, 255, 0.8);

  font-weight: 500;
}

/* =====================================================
   BOTTOM ACCENT LINE
===================================================== */

.about-hero-line {
  width: 100px;

  height: 2px;

  margin: 24px auto 0;

  overflow: hidden;

  background: rgba(70, 180, 230, 0.12);
}

.about-hero-line span {
  display: block;

  width: 45px;
  height: 100%;

  background: #4bb8ea;

  box-shadow: 0 0 10px rgba(75, 184, 234, 0.8);

  animation: heroLineMove 2.5s ease-in-out infinite;
}

@keyframes heroLineMove {
  0% {
    transform: translateX(-50px);
  }

  50% {
    transform: translateX(105px);
  }

  100% {
    transform: translateX(-50px);
  }
}

/* =====================================================
   BOTTOM CIRCUIT
===================================================== */

.about-bottom-circuit {
  position: absolute;

  left: 50%;

  bottom: 0;

  transform: translateX(-50%);

  width: 260px;
  height: 25px;

  display: flex;

  justify-content: center;

  align-items: flex-end;

  gap: 14px;

  opacity: 0.35;
}

.about-bottom-circuit span {
  display: block;

  width: 45px;
  height: 1px;

  background: #3eaedc;

  position: relative;
}

.about-bottom-circuit span::after {
  content: "";

  position: absolute;

  width: 5px;
  height: 5px;

  right: -2px;
  top: 50%;

  transform: translateY(-50%);

  border-radius: 50%;

  background: #49b8e8;

  box-shadow: 0 0 8px rgba(73, 184, 232, 0.8);
}

.about-bottom-circuit span:nth-child(2) {
  width: 75px;
}

.about-bottom-circuit span:nth-child(3) {
  width: 35px;
}

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

@media (max-width: 991px) {
  .about-hero-section {
    min-height: 360px;
  }

  .about-hero-content {
    padding: 58px 20px 52px;
  }

  .about-hero-title {
    font-size: 44px;
  }

  .about-hero-description {
    max-width: 650px;
    font-size: 15px;
  }

  .about-circuit {
    opacity: 0.4;
  }
}

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

@media (max-width: 767px) {
  .about-hero-section {
    min-height: 350px;
  }

  .about-hero-content {
    padding: 52px 15px 48px;
  }

  .about-hero-tag {
    font-size: 10px;
    letter-spacing: 1.2px;

    padding: 7px 13px;

    margin-bottom: 15px;
  }

  .about-hero-title {
    font-size: 34px;

    line-height: 1.2;

    letter-spacing: -0.5px;

    margin-bottom: 15px;
  }

  .about-hero-description {
    font-size: 14px;

    line-height: 1.65;

    margin-bottom: 20px;
  }

  .about-breadcrumb {
    font-size: 13px;

    padding: 9px 14px;

    gap: 9px;
  }

  .about-glow-one {
    width: 180px;
    height: 180px;

    left: -100px;
  }

  .about-glow-two {
    width: 170px;
    height: 170px;

    right: -90px;
  }

  .about-circuit {
    opacity: 0.25;
  }

  .circuit-one {
    width: 150px;
    left: -70px;
  }

  .circuit-two {
    width: 170px;
    right: -80px;
  }

  .circuit-three,
  .circuit-four {
    display: none;
  }

  .about-hero-grid {
    background-size: 40px 40px;
  }
}

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

@media (max-width: 480px) {
  .about-hero-section {
    min-height: 335px;
  }

  .about-hero-content {
    padding: 48px 14px 44px;
  }

  .about-hero-title {
    font-size: 29px;
  }

  .about-hero-description {
    font-size: 13.5px;
    line-height: 1.6;
  }

  .about-hero-tag {
    font-size: 9px;
    letter-spacing: 1px;
  }

  .about-breadcrumb {
    font-size: 12px;
  }

  .about-bottom-circuit {
    width: 180px;
  }

  .about-bottom-circuit span {
    width: 30px;
  }

  .about-bottom-circuit span:nth-child(2) {
    width: 50px;
  }

  .about-bottom-circuit span:nth-child(3) {
    width: 25px;
  }
}

/* =====================================================
   PCB ABOUT SECTION
===================================================== */

.pcb-about-section-two {
  position: relative;
  overflow: hidden;
  padding: 100px 0;
  background: #f7faff;
  z-index: 1;
}

.pcb-about-section-two .container {
  display: flex;
  justify-content: center;
}
/* =========================================
   BACKGROUND
========================================= */

.pcb-about-bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  z-index: -1;
}

.pcb-about-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(22, 92, 150, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(22, 92, 150, 0.035) 1px, transparent 1px);
  background-size: 55px 55px;
  animation: aboutGridMove 18s linear infinite;
}

@keyframes aboutGridMove {
  from {
    background-position:
      0 0,
      0 0;
  }

  to {
    background-position:
      55px 55px,
      55px 55px;
  }
}

/* Glows */

.about-glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(70px);
  opacity: 0.28;
}

.about-glow-1 {
  width: 280px;
  height: 280px;
  background: #4b8fc8;
  top: 5%;
  left: -120px;
  animation: aboutGlowOne 7s ease-in-out infinite alternate;
}

.about-glow-2 {
  width: 320px;
  height: 320px;
  background: #173e63;
  right: -140px;
  bottom: -100px;
  animation: aboutGlowTwo 8s ease-in-out infinite alternate;
}

@keyframes aboutGlowOne {
  from {
    transform: translate(0, 0);
  }

  to {
    transform: translate(60px, 40px);
  }
}

@keyframes aboutGlowTwo {
  from {
    transform: translate(0, 0);
  }

  to {
    transform: translate(-50px, -40px);
  }
}

/* =========================================
   DECORATIVE LINES
========================================= */

.about-line {
  position: absolute;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(38, 107, 164, 0.45),
    transparent
  );
}

.about-line-1 {
  width: 300px;
  top: 18%;
  left: -80px;
  transform: rotate(-25deg);
  animation: aboutLineMove 5s ease-in-out infinite;
}

.about-line-2 {
  width: 240px;
  right: -60px;
  top: 35%;
  transform: rotate(25deg);
  animation: aboutLineMove 6s ease-in-out infinite reverse;
}

.about-line-3 {
  width: 280px;
  bottom: 15%;
  left: 10%;
  transform: rotate(8deg);
  opacity: 0.4;
}

@keyframes aboutLineMove {
  0%,
  100% {
    opacity: 0.25;
    transform: translateX(0) rotate(-25deg);
  }

  50% {
    opacity: 0.8;
    transform: translateX(30px) rotate(-25deg);
  }
}

/* Floating dots */

.about-dot {
  position: absolute;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #3f78a6;
  box-shadow: 0 0 15px rgba(63, 120, 166, 0.7);
  animation: aboutDotFloat 5s ease-in-out infinite;
}

.about-dot-1 {
  top: 20%;
  left: 8%;
}

.about-dot-2 {
  top: 70%;
  left: 4%;
  animation-delay: 1s;
}

.about-dot-3 {
  top: 30%;
  right: 8%;
  animation-delay: 2s;
}

.about-dot-4 {
  bottom: 12%;
  right: 14%;
  animation-delay: 3s;
}

@keyframes aboutDotFloat {
  0%,
  100% {
    transform: translateY(0);
    opacity: 0.4;
  }

  50% {
    transform: translateY(-18px);
    opacity: 1;
  }
}

/* =========================================
   MAIN WRAPPER
========================================= */

.pcb-about-wrapper {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}

/* =========================================
   LEFT CONTENT
========================================= */

.pcb-about-content {
  position: relative;
  z-index: 2;
}

.pcb-about-tag {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 15px;
  margin-bottom: 20px;

  color: #315f84;
  background: rgba(49, 95, 132, 0.08);

  border: 1px solid rgba(49, 95, 132, 0.18);
  border-radius: 30px;

  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1.5px;
}

.about-tag-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #315f84;
  box-shadow: 0 0 12px rgba(49, 95, 132, 0.7);
  animation: tagPulse 2s infinite;
}

@keyframes tagPulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.7;
  }

  50% {
    transform: scale(1.5);
    opacity: 1;
  }
}

.pcb-about-content h2 {
  margin: 0 0 25px;
  color: #172b3f;
  font-size: clamp(32px, 4vw, 50px);
  line-height: 1.15;
  font-weight: 700;
}

.pcb-about-content h2 span {
  display: inline;
  color: #376b94;
}

.pcb-about-description {
  color: #647487;
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 16px;
}

.pcb-about-description.small-text {
  font-size: 15px;
}

/* =========================================
   FEATURES
========================================= */

.pcb-about-features {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;
  margin: 30px 0;
}

.pcb-about-feature {
  display: flex;
  gap: 13px;
  align-items: flex-start;
  padding: 18px;

  background: rgba(255, 255, 255, 0.75);
  border: 1px solid rgba(40, 90, 130, 0.09);
  border-radius: 12px;

  box-shadow: 0 10px 30px rgba(24, 55, 82, 0.05);

  transition: all 0.35s ease;
}

.pcb-about-feature:hover {
  transform: translateY(-6px);
  border-color: rgba(55, 107, 148, 0.3);
  box-shadow: 0 15px 35px rgba(24, 55, 82, 0.1);
}

.feature-icon {
  width: 48px;
  height: 48px;
  min-width: 48px;

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

  border-radius: 10px;
  background: rgba(55, 107, 148, 0.08);
}

.feature-icon img {
  width: 32px;
}

.pcb-about-feature h4 {
  margin: 0 0 5px;
  color: #263b4d;
  font-size: 15px;
}

.pcb-about-feature p {
  margin: 0;
  color: #7a8997;
  font-size: 13px;
  line-height: 1.5;
}

/* =========================================
   CONTACT BOXES
========================================= */

.pcb-about-contact {
  display: flex;
  gap: 18px;
  padding-top: 25px;
  border-top: 1px solid rgba(40, 80, 110, 0.12);
}

.about-contact-box {
  display: flex;
  align-items: center;
  gap: 12px;

  color: inherit;
  text-decoration: none;

  transition: 0.3s ease;
}

.about-contact-box:hover {
  transform: translateY(-4px);
}

.contact-icon {
  width: 46px;
  height: 46px;
  min-width: 46px;

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

  border-radius: 50%;
  background: linear-gradient(135deg, #315f84, #4e88b0);
  color: #fff;

  box-shadow: 0 8px 20px rgba(49, 95, 132, 0.25);
}

.about-contact-box small {
  display: block;
  margin-bottom: 3px;
  color: #8997a4;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
}

.about-contact-box strong {
  display: block;
  color: #263b4d;
  font-size: 14px;
}

/* =========================================
   RIGHT VISUAL
========================================= */

.pcb-about-visual {
  position: relative;
  min-height: 540px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.about-visual-glow {
  position: absolute;
  width: 330px;
  height: 330px;

  background: rgba(55, 107, 148, 0.15);
  filter: blur(50px);
  border-radius: 50%;

  animation: visualGlow 5s ease-in-out infinite alternate;
}

@keyframes visualGlow {
  from {
    transform: scale(0.9);
    opacity: 0.5;
  }

  to {
    transform: scale(1.1);
    opacity: 0.9;
  }
}

/* =========================================
   IMAGE GRID
========================================= */

.about-image-grid {
  position: relative;
  width: 470px;
  height: 500px;
}

.about-image-card {
  position: absolute;
  overflow: hidden;

  border: 5px solid rgba(255, 255, 255, 0.9);
  border-radius: 18px;

  background: #fff;

  box-shadow:
    0 20px 50px rgba(23, 52, 77, 0.16),
    0 0 0 1px rgba(45, 94, 132, 0.08);

  transition:
    transform 0.5s ease,
    box-shadow 0.5s ease,
    z-index 0.3s ease;
}

.about-image-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;

  transition: transform 0.7s ease;
}

.about-image-card:hover {
  z-index: 10;
  box-shadow:
    0 25px 60px rgba(25, 62, 91, 0.25),
    0 0 30px rgba(55, 107, 148, 0.18);
}

.about-image-card:hover img {
  transform: scale(1.08);
}

/* Image positions */

.about-img-1 {
  width: 205px;
  height: 190px;
  top: 35px;
  left: 5px;
  transform: rotate(-5deg);
}

.about-img-2 {
  width: 245px;
  height: 225px;
  top: 0;
  right: 0;
  transform: rotate(4deg);
}

.about-img-3 {
  width: 175px;
  height: 165px;
  bottom: 20px;
  left: 35px;
  transform: rotate(4deg);
}

.about-img-4 {
  width: 225px;
  height: 210px;
  bottom: 0;
  right: 5px;
  transform: rotate(-5deg);
}

/* Hover positions */

.about-img-1:hover {
  transform: rotate(0deg) translateY(-8px);
}

.about-img-2:hover {
  transform: rotate(0deg) translateY(-8px);
}

.about-img-3:hover {
  transform: rotate(0deg) translateY(-8px);
}

.about-img-4:hover {
  transform: rotate(0deg) translateY(-8px);
}

/* Number */

.image-number {
  position: absolute;
  top: 10px;
  right: 10px;

  width: 32px;
  height: 32px;

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

  border-radius: 50%;

  background: rgba(23, 55, 80, 0.82);
  color: #fff;

  font-size: 11px;
  font-weight: 700;
}

/* =========================================
   PCB CIRCUIT DECORATION
========================================= */

.about-circuit {
  position: absolute;
  z-index: 0;
  border: 1px dashed rgba(55, 107, 148, 0.35);
  border-radius: 50%;
}

.about-circuit-1 {
  width: 520px;
  height: 520px;
  animation: circuitRotate 25s linear infinite;
}

.about-circuit-2 {
  width: 430px;
  height: 430px;
  border-style: dotted;
  animation: circuitRotate 18s linear infinite reverse;
}

.about-circuit-3 {
  width: 610px;
  height: 610px;
  opacity: 0.3;
  animation: circuitRotate 35s linear infinite;
}

@keyframes circuitRotate {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

/* =========================================
   FLOATING BADGE
========================================= */

.about-floating-badge {
  position: absolute;
  right: -10px;
  bottom: 40px;

  display: flex;
  align-items: center;
  gap: 12px;

  padding: 14px 20px;

  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(55, 107, 148, 0.15);
  border-radius: 12px;

  box-shadow: 0 15px 40px rgba(22, 55, 80, 0.15);

  z-index: 15;

  animation: badgeFloat 4s ease-in-out infinite;
}

.badge-icon {
  width: 42px;
  height: 42px;

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

  border-radius: 10px;

  background: linear-gradient(135deg, #315f84, #4e88b0);
  color: #fff;
}

.about-floating-badge strong,
.about-floating-badge span {
  display: block;
}

.about-floating-badge strong {
  color: #263b4d;
  font-size: 13px;
}

.about-floating-badge span {
  color: #7c8a96;
  font-size: 11px;
  margin-top: 3px;
}

@keyframes badgeFloat {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-10px);
  }
}

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

@media (max-width: 1199px) {
  .pcb-about-wrapper {
    gap: 45px;
  }

  .about-image-grid {
    transform: scale(0.9);
  }

  .about-floating-badge {
    right: 0;
  }
}

@media (max-width: 991px) {
  .pcb-about-section-two {
    padding: 75px 30px;
  }

  .pcb-about-wrapper {
    grid-template-columns: 1fr;
    gap: 100px;
  }

  .pcb-about-content {
    max-width: 750px;
    margin: auto;
    text-align: center;
  }

  .pcb-about-features {
    text-align: left;
  }

  .pcb-about-contact {
    justify-content: center;
    text-align: left;
  }

  .pcb-about-visual {
    min-height: 520px;
  }
}

@media (max-width: 767px) {
  .pcb-about-section-two {
    padding: 60px 25px;
  }

  .pcb-about-content h2 {
    font-size: 34px;
  }

  .pcb-about-description {
    font-size: 14px;
    line-height: 1.7;
  }

  .pcb-about-features {
    grid-template-columns: 1fr;
  }

  .pcb-about-contact {
    flex-direction: column;
    align-items: flex-start;
    max-width: 360px;
    margin: auto;
  }

  .pcb-about-visual {
    min-height: 440px;
  }

  .about-image-grid {
    width: 390px;
    height: 420px;
    transform: scale(0.82);
  }

  .about-circuit-1 {
    width: 430px;
    height: 430px;
  }

  .about-circuit-2 {
    width: 360px;
    height: 360px;
  }

  .about-circuit-3 {
    width: 500px;
    height: 500px;
  }

  .about-floating-badge {
    right: 5px;
    bottom: 5px;
  }
}

@media (max-width: 480px) {
  .pcb-about-section-two {
    padding: 50px 20px;
  }

  .pcb-about-tag {
    font-size: 10px;
    letter-spacing: 1px;
  }

  .pcb-about-content h2 {
    font-size: 29px;
  }

  .pcb-about-description {
    font-size: 13px;
  }

  .pcb-about-feature {
    padding: 14px;
  }

  .feature-icon {
    width: 42px;
    height: 42px;
    min-width: 42px;
  }

  .feature-icon img {
    width: 27px;
  }

  .pcb-about-feature h4 {
    font-size: 14px;
  }

  .pcb-about-feature p {
    font-size: 12px;
  }

  .pcb-about-visual {
    min-height: 350px;
  }

  .about-image-grid {
    width: 340px;
    height: 350px;
    transform: scale(0.72);
  }

  .about-img-1 {
    width: 175px;
    height: 160px;
  }

  .about-img-2 {
    width: 205px;
    height: 185px;
  }

  .about-img-3 {
    width: 150px;
    height: 140px;
  }

  .about-img-4 {
    width: 190px;
    height: 175px;
  }

  .about-floating-badge {
    padding: 10px 13px;
  }

  .badge-icon {
    width: 35px;
    height: 35px;
  }

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

  .about-floating-badge span {
    font-size: 9px;
  }
}

/* =====================================================
   PCB FACTS / STATS SECTION
===================================================== */
/* =========================================================
   PCB FACTS / ACHIEVEMENTS SECTION
   ========================================================= */

.pcb-facts-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 110px 0;
  background: #07111d;
  color: #fff;
  display: flex;
  justify-content: center;
}

.inner-container {
  max-width: 1400px;
  padding: 25px;
}
/* =========================================================
   BACKGROUND
   ========================================================= */

.pcb-facts-bg {
  position: absolute;
  inset: 0;
  z-index: -5;

  background:
    linear-gradient(
      135deg,
      rgba(7, 17, 29, 0.96),
      rgba(12, 31, 49, 0.94),
      rgba(6, 18, 31, 0.98)
    ),
    url("../img/ban1.png") center / cover no-repeat;
}

/* Dark + Blue Overlay */
.pcb-facts-overlay {
  position: absolute;
  inset: 0;
  z-index: -4;

  background:
    radial-gradient(
      circle at 15% 30%,
      rgba(65, 98, 127, 0.25),
      transparent 32%
    ),
    radial-gradient(
      circle at 85% 70%,
      rgba(0, 153, 255, 0.14),
      transparent 30%
    ),
    linear-gradient(
      90deg,
      rgba(4, 12, 21, 0.94),
      rgba(8, 25, 40, 0.82),
      rgba(4, 12, 21, 0.94)
    );
}

/* =========================================================
   PCB GRID OVERLAY
   ========================================================= */

.pcb-facts-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -3;
  pointer-events: none;

  background-image:
    linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px);

  background-size: 45px 45px;

  mask-image: linear-gradient(
    to bottom,
    transparent,
    #000 15%,
    #000 85%,
    transparent
  );

  animation: pcbGridMove 18s linear infinite;
}

@keyframes pcbGridMove {
  from {
    background-position: 0 0;
  }

  to {
    background-position: 45px 45px;
  }
}

/* =========================================================
   OUTER GLOW
   ========================================================= */

.facts-glow {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(10px);
  z-index: -2;
}

/* Left Glow */

.facts-glow-1 {
  width: 330px;
  height: 330px;

  left: -170px;
  top: 20%;

  background: radial-gradient(circle, rgba(65, 98, 127, 0.3), transparent 70%);

  animation: factsGlowLeft 7s ease-in-out infinite alternate;
}

/* Right Glow */

.facts-glow-2 {
  width: 380px;
  height: 380px;

  right: -190px;
  bottom: 5%;

  background: radial-gradient(circle, rgba(0, 153, 255, 0.2), transparent 70%);

  animation: factsGlowRight 8s ease-in-out infinite alternate;
}

@keyframes factsGlowLeft {
  0% {
    transform: translate(0, 0) scale(0.9);
    opacity: 0.5;
  }

  100% {
    transform: translate(90px, 50px) scale(1.15);
    opacity: 1;
  }
}

@keyframes factsGlowRight {
  0% {
    transform: translate(0, 0) scale(1);
    opacity: 0.4;
  }

  100% {
    transform: translate(-80px, -50px) scale(1.2);
    opacity: 1;
  }
}

/* =========================================================
   OUTER PCB LINES
   ========================================================= */

.facts-line {
  position: absolute;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(65, 98, 127, 0.8),
    rgba(65, 98, 127, 0.2),
    transparent
  );

  opacity: 0.7;
  pointer-events: none;
  z-index: -1;
}

/* Left horizontal */

.facts-line-1 {
  width: 260px;
  left: 0;
  top: 28%;

  animation: lineMoveOne 6s ease-in-out infinite alternate;
}

/* Right horizontal */

.facts-line-2 {
  width: 320px;
  right: 0;
  top: 64%;

  animation: lineMoveTwo 7s ease-in-out infinite alternate;
}

/* Bottom line */

.facts-line-3 {
  width: 420px;
  left: 12%;
  bottom: 12%;

  opacity: 0.35;

  animation: linePulse 5s ease-in-out infinite;
}

@keyframes lineMoveOne {
  from {
    transform: translateX(-30px);
    opacity: 0.2;
  }

  to {
    transform: translateX(80px);
    opacity: 0.8;
  }
}

@keyframes lineMoveTwo {
  from {
    transform: translateX(30px);
    opacity: 0.2;
  }

  to {
    transform: translateX(-100px);
    opacity: 0.8;
  }
}

@keyframes linePulse {
  0%,
  100% {
    opacity: 0.2;
  }

  50% {
    opacity: 0.7;
  }
}

/* =========================================================
   OUTER PCB DOTS
   ========================================================= */

.facts-dot {
  position: absolute;
  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #018149;

  box-shadow:
    0 0 0 5px rgba(65, 98, 127, 0.08),
    0 0 18px rgba(65, 98, 127, 0.8);

  z-index: 0;

  animation: factsDotPulse 2.5s ease-in-out infinite;
}

/* Dot positions */

.facts-dot-1 {
  top: 22%;
  left: 8%;
}

.facts-dot-2 {
  top: 38%;
  right: 7%;
  animation-delay: 0.6s;
}

.facts-dot-3 {
  bottom: 24%;
  left: 5%;
  animation-delay: 1.2s;
}

.facts-dot-4 {
  bottom: 15%;
  right: 11%;
  animation-delay: 1.8s;
}

@keyframes factsDotPulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.5;
  }

  50% {
    transform: scale(1.8);
    opacity: 1;
  }
}

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

.pcb-facts-heading {
  position: relative;
  max-width: 700px;
  margin: 0 auto 55px;
  text-align: center;
  z-index: 2;
}

.facts-tag {
  display: inline-flex;
  align-items: center;
  gap: 10px;

  padding: 8px 18px;

  border: 1px solid rgba(65, 98, 127, 0.45);
  border-radius: 30px;

  color: #8fb2cf;

  background: rgba(65, 98, 127, 0.08);

  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;

  margin-bottom: 18px;

  box-shadow: 0 0 25px rgba(65, 98, 127, 0.08);
}

.facts-tag span {
  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #018149;

  box-shadow: 0 0 10px rgba(65, 98, 127, 0.9);

  animation: tagPulse 1.8s infinite;
}

@keyframes tagPulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.6;
  }

  50% {
    transform: scale(1.5);
    opacity: 1;
  }
}

.pcb-facts-heading h2 {
  margin: 0 0 18px;

  color: #fff;

  font-size: clamp(32px, 4vw, 52px);
  line-height: 1.15;
  font-weight: 700;
}

.pcb-facts-heading h2 span {
  color: #6f9aba;

  background: linear-gradient(90deg, #018149, #9fc4df, #018149);

  background-size: 200% auto;

  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;

  animation: headingShine 5s linear infinite;
}

@keyframes headingShine {
  to {
    background-position: 200% center;
  }
}

.pcb-facts-heading p {
  max-width: 620px;
  margin: auto;

  color: rgba(255, 255, 255, 0.65);

  font-size: 15px;
  line-height: 1.8;
}

/* =========================================================
   FACTS GRID
   ========================================================= */

.pcb-facts-grid {
  position: relative;

  display: grid;
  grid-template-columns: repeat(4, 1fr);

  gap: 22px;

  z-index: 2;
}

/* =========================================================
   FACT CARD
   ========================================================= */

.pcb-fact-card {
  position: relative;

  padding: 30px 25px;

  min-height: 285px;

  overflow: hidden;

  border: 1px solid rgba(120, 160, 190, 0.16);
  border-radius: 18px;

  background: linear-gradient(
    145deg,
    rgba(255, 255, 255, 0.075),
    rgba(255, 255, 255, 0.025)
  );

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);

  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.22);

  transition:
    transform 0.45s ease,
    border-color 0.45s ease,
    box-shadow 0.45s ease;
}

/* Card PCB grid */

.pcb-fact-card::before {
  content: "";

  position: absolute;
  inset: 0;

  background-image:
    linear-gradient(rgba(65, 98, 127, 0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(65, 98, 127, 0.08) 1px, transparent 1px);

  background-size: 28px 28px;

  opacity: 0;

  transition: opacity 0.5s ease;
}

/* Moving shine */

.pcb-fact-card::after {
  content: "";

  position: absolute;

  width: 180px;
  height: 180px;

  right: -100px;
  bottom: -100px;

  border-radius: 50%;

  background: rgba(65, 98, 127, 0.15);

  filter: blur(20px);

  transition: 0.5s ease;
}

.pcb-fact-card:hover {
  transform: translateY(-10px);

  border-color: rgba(111, 154, 186, 0.55);

  box-shadow:
    0 25px 60px rgba(0, 0, 0, 0.35),
    0 0 30px rgba(65, 98, 127, 0.12);
}

.pcb-fact-card:hover::before {
  opacity: 1;
}

.pcb-fact-card:hover::after {
  width: 260px;
  height: 260px;

  right: -130px;
  bottom: -130px;
}

/* =========================================================
   CARD TOP
   ========================================================= */

.fact-card-top {
  position: relative;

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

  margin-bottom: 25px;
}

.fact-icon {
  width: 54px;
  height: 54px;

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

  border-radius: 14px;

  color: #9fc4df;

  border: 1px solid rgba(111, 154, 186, 0.25);

  background: rgba(65, 98, 127, 0.12);

  font-size: 20px;

  transition: 0.4s ease;
}

.pcb-fact-card:hover .fact-icon {
  transform: rotate(-5deg) scale(1.1);

  background: rgba(65, 98, 127, 0.22);

  box-shadow: 0 0 25px rgba(65, 98, 127, 0.25);
}

.fact-number-small {
  font-size: 12px;

  color: rgba(255, 255, 255, 0.3);

  letter-spacing: 2px;

  font-weight: 700;
}

/* =========================================================
   NUMBERS
   ========================================================= */

.pcb-fact-card h3 {
  position: relative;

  margin: 0 0 5px;

  font-size: 45px;
  line-height: 1;

  font-weight: 700;

  color: #fff;
}

.pcb-fact-card h3 b {
  color: #018149;

  font-size: 25px;
}

.pcb-fact-card h4 {
  position: relative;

  margin: 10px 0 12px;

  font-size: 18px;

  color: #fff;

  font-weight: 600;
}

.pcb-fact-card p {
  position: relative;

  margin: 0;

  color: rgba(255, 255, 255, 0.55);

  font-size: 13px;

  line-height: 1.7;
}

/* =========================================================
   PROGRESS LINE
   ========================================================= */

.fact-progress {
  position: absolute;

  left: 25px;
  right: 25px;
  bottom: 20px;

  height: 2px;

  overflow: hidden;

  background: rgba(255, 255, 255, 0.08);
}

.fact-progress span {
  display: block;

  width: 35%;
  height: 100%;

  background: linear-gradient(90deg, transparent, #018149, #9fc4df);

  animation: progressMove 3s ease-in-out infinite;
}

@keyframes progressMove {
  0% {
    transform: translateX(-130%);
  }

  100% {
    transform: translateX(320%);
  }
}

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

@media (max-width: 1199px) {
  .pcb-facts-section {
    padding: 90px 0;
  }

  .pcb-facts-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 767px) {
  .pcb-facts-section {
    padding: 70px 0;
  }

  .pcb-facts-heading {
    margin-bottom: 35px;
    padding: 0 15px;
  }

  .pcb-facts-heading h2 {
    font-size: 32px;
  }

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

  .pcb-facts-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .pcb-fact-card {
    min-height: 260px;
    padding: 25px 22px;
  }

  .pcb-fact-card h3 {
    font-size: 40px;
  }

  .facts-line-1,
  .facts-line-2,
  .facts-line-3 {
    width: 180px;
  }
}

@media (max-width: 480px) {
  .pcb-facts-section {
    padding: 60px 0;
  }

  .facts-tag {
    font-size: 10px;
    letter-spacing: 1.5px;
    padding: 7px 14px;
  }

  .pcb-facts-heading h2 {
    font-size: 28px;
  }

  .pcb-fact-card {
    border-radius: 15px;
  }

  .fact-icon {
    width: 48px;
    height: 48px;
  }

  .pcb-fact-card h3 {
    font-size: 36px;
  }
}

/* =========================================================
   FOUNDER & CEO SECTION
========================================================= */

.pcb-founder-section {
  position: relative;
  padding: 100px 0;
  background: #f7fafc;
  overflow: hidden;
  isolation: isolate;
}

/* =========================================================
   BACKGROUND GRID
========================================================= */

.founder-bg-grid {
  position: absolute;
  inset: 0;
  z-index: -3;

  background-image:
    linear-gradient(rgba(45, 111, 145, 0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(45, 111, 145, 0.055) 1px, transparent 1px);

  background-size: 55px 55px;

  mask-image: linear-gradient(
    to bottom,
    transparent,
    black 15%,
    black 85%,
    transparent
  );

  animation: founderGrid 20s linear infinite;
}

@keyframes founderGrid {
  from {
    background-position: 0 0;
  }

  to {
    background-position: 55px 55px;
  }
}

/* =========================================================
   GLOW
========================================================= */

.founder-glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(80px);
  z-index: -2;
  pointer-events: none;
}

.founder-glow-1 {
  width: 300px;
  height: 300px;

  left: -120px;
  top: 20%;

  background: rgba(40, 145, 190, 0.1);

  animation: glowFloat1 7s ease-in-out infinite alternate;
}

.founder-glow-2 {
  width: 280px;
  height: 280px;

  right: -100px;
  bottom: 10%;

  background: rgba(65, 98, 127, 0.1);

  animation: glowFloat2 8s ease-in-out infinite alternate;
}

@keyframes glowFloat1 {
  from {
    transform: translate(0, 0);
  }

  to {
    transform: translate(80px, 25px);
  }
}

@keyframes glowFloat2 {
  from {
    transform: translate(0, 0);
  }

  to {
    transform: translate(-70px, -30px);
  }
}

/* =========================================================
   OUTSIDE PCB LINES
========================================================= */

.founder-line {
  position: absolute;
  height: 1px;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(47, 139, 182, 0.55),
    transparent
  );

  opacity: 0.7;
}

.founder-line::after {
  content: "";
  position: absolute;

  width: 7px;
  height: 7px;

  top: -3px;

  border-radius: 50%;

  background: #3f9ac3;

  box-shadow:
    0 0 8px rgba(63, 154, 195, 0.8),
    0 0 20px rgba(63, 154, 195, 0.35);
}

.founder-line-1 {
  width: 260px;
  left: -40px;
  top: 25%;
  transform: rotate(17deg);

  animation: pcbLine1 5s ease-in-out infinite;
}

.founder-line-1::after {
  right: 20%;
}

.founder-line-2 {
  width: 300px;
  right: -70px;
  top: 48%;
  transform: rotate(-16deg);

  animation: pcbLine2 6s ease-in-out infinite;
}

.founder-line-2::after {
  left: 20%;
}

.founder-line-3 {
  width: 220px;
  left: 5%;
  bottom: 15%;
  transform: rotate(-12deg);

  animation: pcbLine3 7s ease-in-out infinite;
}

.founder-line-3::after {
  right: 15%;
}

@keyframes pcbLine1 {
  0%,
  100% {
    transform: translateX(0) rotate(17deg);
    opacity: 0.3;
  }

  50% {
    transform: translateX(30px) rotate(17deg);
    opacity: 0.9;
  }
}

@keyframes pcbLine2 {
  0%,
  100% {
    transform: translateX(0) rotate(-16deg);
    opacity: 0.3;
  }

  50% {
    transform: translateX(-30px) rotate(-16deg);
    opacity: 0.9;
  }
}

@keyframes pcbLine3 {
  0%,
  100% {
    transform: translateX(0) rotate(-12deg);
  }

  50% {
    transform: translateX(25px) rotate(-12deg);
  }
}

/* =========================================================
   NODES
========================================================= */

.founder-node {
  position: absolute;

  width: 6px;
  height: 6px;

  border-radius: 50%;

  background: #419cc6;

  box-shadow:
    0 0 8px #419cc6,
    0 0 20px rgba(65, 156, 198, 0.5);

  animation: nodePulse 2.5s ease-in-out infinite;
}

.founder-node-1 {
  top: 17%;
  left: 12%;
}

.founder-node-2 {
  top: 70%;
  left: 7%;
  animation-delay: 0.5s;
}

.founder-node-3 {
  top: 20%;
  right: 12%;
  animation-delay: 1s;
}

.founder-node-4 {
  bottom: 14%;
  right: 8%;
  animation-delay: 1.5s;
}

@keyframes nodePulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.35;
  }

  50% {
    transform: scale(2);
    opacity: 1;
  }
}

/* =========================================================
   1400PX CONTAINER
========================================================= */

.founder-container {
  width: 100%;
  max-width: 1400px;

  margin: 0 auto;
  padding-left: 30px;
  padding-right: 30px;
}

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

.founder-heading {
  max-width: 720px;
  margin: 0 auto 60px;
  text-align: center;
}

.founder-tag {
  display: inline-flex;
  align-items: center;
  gap: 9px;

  padding: 8px 17px;

  color: #3185aa;

  font-size: 12px;
  font-weight: 700;

  letter-spacing: 2px;

  border: 1px solid rgba(49, 133, 170, 0.25);
  border-radius: 30px;

  background: rgba(49, 133, 170, 0.05);
}

.founder-tag span {
  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #3c9ac4;

  box-shadow: 0 0 10px rgba(60, 154, 196, 0.7);

  animation: nodePulse 2s infinite;
}

.founder-heading h2 {
  margin: 18px 0 15px;

  color: #172b38;

  font-size: clamp(34px, 4vw, 52px);

  line-height: 1.15;
  font-weight: 700;
}

.founder-heading h2 span {
  color: #3188ae;
}

.founder-heading p {
  margin: 0 auto;

  max-width: 650px;

  color: #6d7d87;

  font-size: 16px;
  line-height: 1.8;
}

/* =========================================================
   MAIN CARD
========================================================= */

.founder-card {
  position: relative;

  display: grid;

  grid-template-columns: 0.85fr 1.15fr;

  align-items: center;

  gap: 80px;

  padding: 65px;

  background: rgba(255, 255, 255, 0.92);

  border: 1px solid rgba(48, 125, 160, 0.15);

  border-radius: 28px;

  box-shadow:
    0 25px 70px rgba(28, 65, 82, 0.1),
    0 5px 20px rgba(28, 65, 82, 0.05);

  backdrop-filter: blur(12px);
}

/* animated top border */

.founder-card::before {
  content: "";

  position: absolute;

  left: 12%;
  right: 12%;
  top: -1px;

  height: 2px;

  background: linear-gradient(
    90deg,
    transparent,
    #43a5ce,
    #8ad4ef,
    #43a5ce,
    transparent
  );

  background-size: 200% 100%;

  animation: borderFlow 5s linear infinite;
}

@keyframes borderFlow {
  from {
    background-position: 200% 0;
  }

  to {
    background-position: -200% 0;
  }
}

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

.founder-image-area {
  display: flex;
  justify-content: center;
}

.founder-image-frame {
  position: relative;

  width: min(100%, 390px);
}

.founder-image {
  position: relative;

  overflow: hidden;

  border-radius: 22px;

  border: 1px solid rgba(52, 142, 181, 0.25);

  background: #edf4f7;

  box-shadow: 0 20px 45px rgba(26, 70, 88, 0.15);
}

.founder-image::after {
  content: "";

  position: absolute;
  inset: 0;

  background: linear-gradient(135deg, rgba(55, 158, 202, 0.1), transparent 50%);

  pointer-events: none;
}

.founder-image img {
  display: block;

  width: 100%;

  transition: transform 0.7s ease;
}

.founder-image-frame:hover .founder-image img {
  transform: scale(1.04);
}

/* Corners */

.image-corner {
  position: absolute;

  width: 65px;
  height: 65px;

  z-index: 2;
}

.image-corner-top {
  left: -12px;
  top: -12px;

  border-top: 2px solid #3b9bc4;
  border-left: 2px solid #3b9bc4;
}

.image-corner-bottom {
  right: -12px;
  bottom: -12px;

  border-right: 2px solid #3b9bc4;
  border-bottom: 2px solid #3b9bc4;
}

/* =========================================================
   FLOATING BADGE
========================================================= */

.founder-badge {
  position: absolute;

  right: -35px;
  bottom: 35px;

  display: flex;
  align-items: center;
  gap: 12px;

  padding: 14px 18px;

  background: #fff;

  border: 1px solid rgba(54, 139, 177, 0.18);

  border-radius: 12px;

  box-shadow: 0 15px 35px rgba(25, 70, 88, 0.14);

  animation: badgeFloat 4s ease-in-out infinite;
}

.founder-badge i {
  color: #3294bd;
  font-size: 20px;
}

.founder-badge strong,
.founder-badge span {
  display: block;
}

.founder-badge strong {
  color: #233c49;
  font-size: 13px;
}

.founder-badge span {
  color: #7c8e98;
  font-size: 11px;
  margin-top: 3px;
}

@keyframes badgeFloat {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-9px);
  }
}

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

.founder-role {
  display: inline-flex;
  align-items: center;
  gap: 8px;

  color: #338bad;

  font-size: 12px;
  font-weight: 700;

  letter-spacing: 2px;
}

.founder-role i {
  font-size: 7px;

  animation: nodePulse 2s infinite;
}

.founder-content h3 {
  margin: 13px 0 4px;

  color: #1b303c;

  font-size: clamp(38px, 4vw, 54px);

  font-weight: 700;
}

.founder-content h3 span {
  color: #338bad;
}

.founder-content h4 {
  margin: 0;

  color: #71818a;

  font-size: 17px;

  font-weight: 500;
}

.founder-divider {
  width: 120px;
  height: 2px;

  margin: 22px 0;

  overflow: hidden;

  background: rgba(51, 139, 173, 0.13);
}

.founder-divider span {
  display: block;

  width: 45%;
  height: 100%;

  background: #348eaf;

  box-shadow: 0 0 10px rgba(52, 142, 175, 0.7);

  animation: dividerMove 2.5s ease-in-out infinite;
}

@keyframes dividerMove {
  0% {
    transform: translateX(-120%);
  }

  50% {
    transform: translateX(220%);
  }

  100% {
    transform: translateX(-120%);
  }
}

.founder-content p {
  color: #687a84;

  font-size: 15px;

  line-height: 1.85;

  margin-bottom: 14px;
}

.founder-content .founder-intro {
  color: #405762;

  font-size: 16px;
}

/* =========================================================
   EXPERTISE
========================================================= */

.founder-expertise {
  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 13px;

  margin-top: 27px;
}

.expertise-box {
  display: flex;
  align-items: center;

  gap: 12px;

  padding: 14px;

  border: 1px solid rgba(49, 133, 170, 0.13);

  border-radius: 11px;

  background: #f8fbfc;

  transition: 0.35s ease;
}

.expertise-box:hover {
  transform: translateY(-4px);

  background: #fff;

  border-color: rgba(49, 133, 170, 0.35);

  box-shadow: 0 10px 25px rgba(30, 80, 100, 0.08);
}

.expertise-icon {
  width: 42px;
  height: 42px;

  flex-shrink: 0;

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

  border-radius: 9px;

  color: #358fad;

  background: rgba(53, 143, 173, 0.08);

  border: 1px solid rgba(53, 143, 173, 0.14);
}

.expertise-box strong,
.expertise-box small {
  display: block;
}

.expertise-box strong {
  color: #29424e;
  font-size: 13px;
}

.expertise-box small {
  margin-top: 3px;

  color: #82929b;

  font-size: 11px;
}

/* =========================================================
   BOTTOM
========================================================= */

.founder-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;

  margin-top: 28px;
  padding-top: 20px;

  border-top: 1px solid rgba(30, 70, 85, 0.08);
}

.founder-signature strong,
.founder-signature span {
  display: block;
}

.founder-signature strong {
  color: #29424e;
  font-size: 18px;
}

.founder-signature span {
  margin-top: 3px;

  color: #84949c;

  font-size: 12px;
}

.founder-status {
  display: flex;
  align-items: center;
  gap: 8px;

  color: #71848d;

  font-size: 10px;

  text-transform: uppercase;
  letter-spacing: 1px;
}

.founder-status span {
  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #35a66b;

  box-shadow: 0 0 12px rgba(53, 166, 107, 0.7);

  animation: statusPulse 2s infinite;
}

@keyframes statusPulse {
  0%,
  100% {
    box-shadow: 0 0 5px rgba(53, 166, 107, 0.4);
  }

  50% {
    box-shadow: 0 0 17px rgba(53, 166, 107, 0.9);
  }
}

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

@media (max-width: 1199px) {
  .founder-card {
    gap: 50px;
    padding: 50px;
  }
}

@media (max-width: 991px) {
  .pcb-founder-section {
    padding: 80px 0;
  }

  .founder-card {
    grid-template-columns: 1fr;
    gap: 50px;
    padding: 45px;
  }

  .founder-image-frame {
    max-width: 360px;
  }

  .founder-content {
    text-align: left;
  }
}

@media (max-width: 767px) {
  .pcb-founder-section {
    padding: 65px 0;
  }

  .founder-container {
    padding-left: 18px;
    padding-right: 18px;
  }

  .founder-heading {
    margin-bottom: 40px;
  }

  .founder-heading h2 {
    font-size: 34px;
  }

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

  .founder-card {
    gap: 35px;
    padding: 28px 22px;
    border-radius: 20px;
  }

  .founder-image-frame {
    max-width: 310px;
  }

  .founder-badge {
    right: -8px;
    bottom: 20px;
  }

  .founder-content h3 {
    font-size: 37px;
  }

  .founder-content h4 {
    font-size: 15px;
  }

  .founder-content p {
    font-size: 14px;
    line-height: 1.75;
  }

  .founder-expertise {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 480px) {
  .pcb-founder-section {
    padding: 55px 0;
  }

  .founder-container {
    padding-left: 14px;
    padding-right: 14px;
  }

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

  .founder-tag {
    font-size: 10px;
    letter-spacing: 1.5px;
  }

  .founder-card {
    padding: 20px 16px;
  }

  .founder-image-frame {
    max-width: 270px;
  }

  .founder-badge {
    padding: 10px 12px;
    right: -5px;
  }

  .founder-badge i {
    font-size: 16px;
  }

  .founder-badge strong {
    font-size: 11px;
  }

  .founder-content h3 {
    font-size: 31px;
  }

  .founder-content h4 {
    font-size: 14px;
  }

  .founder-bottom {
    align-items: flex-start;
    flex-direction: column;
    gap: 14px;
  }

  .founder-status {
    font-size: 9px;
  }

  .founder-line {
    opacity: 0.35;
  }
}

/* ========================================_________________________===========++++++++Contsct us css ==== */
/* =========================================================
   CONTACT / INNER PAGE HERO
   ========================================================= */

.inner-page-hero {
  position: relative;
  width: 100%;
  min-height: 330px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  isolation: isolate;
  background: #07131f;
}

/* ---------------------------------------------------------
   BACKGROUND IMAGE / GRADIENT
   --------------------------------------------------------- */

.inner-hero-bg {
  position: absolute;
  inset: 0;
  z-index: -5;

  background:
    radial-gradient(
      circle at 20% 50%,
      rgba(0, 174, 255, 0.18),
      transparent 32%
    ),
    radial-gradient(
      circle at 80% 40%,
      rgba(0, 110, 255, 0.14),
      transparent 32%
    ),
    linear-gradient(135deg, #06111c 0%, #0a1d2d 45%, #071521 100%);
}

/* ---------------------------------------------------------
   PCB GRID OVERLAY
   --------------------------------------------------------- */

.inner-hero-overlay {
  position: absolute;
  inset: 0;
  z-index: -4;

  background-image:
    linear-gradient(rgba(65, 180, 255, 0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(65, 180, 255, 0.055) 1px, transparent 1px);

  background-size: 55px 55px;

  mask-image: linear-gradient(
    to bottom,
    transparent,
    black 20%,
    black 80%,
    transparent
  );

  animation: heroGridMove 18s linear infinite;
}

@keyframes heroGridMove {
  0% {
    background-position: 0 0;
  }

  100% {
    background-position: 55px 55px;
  }
}

/* ---------------------------------------------------------
   CONTENT
   --------------------------------------------------------- */

.inner-page-hero .container {
  position: relative;
  z-index: 10;
  max-width: 1400px;
}

.inner-hero-content {
  max-width: 850px;
  margin: 0 auto;
  padding: 45px 20px;
  text-align: center;
}

/* ---------------------------------------------------------
   TAG
   --------------------------------------------------------- */

.inner-hero-tag {
  display: inline-flex;
  align-items: center;
  gap: 9px;

  padding: 8px 17px;

  margin-bottom: 17px;

  border: 1px solid rgba(53, 184, 255, 0.35);
  border-radius: 30px;

  background: rgba(12, 47, 70, 0.55);

  color: #45c5ff;

  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;

  box-shadow: 0 0 20px rgba(0, 174, 255, 0.08);

  backdrop-filter: blur(8px);
}

.inner-hero-tag i {
  font-size: 13px;
}

/* ---------------------------------------------------------
   HEADING
   --------------------------------------------------------- */

.inner-hero-content h1 {
  margin: 0;

  color: #ffffff;

  font-size: clamp(42px, 5vw, 68px);
  font-weight: 800;
  line-height: 1.1;

  letter-spacing: -1px;

  text-shadow: 0 5px 30px rgba(0, 0, 0, 0.35);
}

.inner-hero-content h1 span {
  color: #35b9ff;

  text-shadow: 0 0 25px rgba(53, 185, 255, 0.35);
}

/* ---------------------------------------------------------
   DESCRIPTION
   --------------------------------------------------------- */

.inner-hero-content p {
  max-width: 720px;

  margin: 17px auto 0;

  color: rgba(235, 245, 252, 0.72);

  font-size: 15px;
  line-height: 1.8;
}

/* ---------------------------------------------------------
   HEADING LINE
   --------------------------------------------------------- */

.inner-hero-line {
  width: 100px;
  height: 3px;

  margin: 22px auto 18px;

  position: relative;

  overflow: hidden;

  background: rgba(53, 185, 255, 0.12);

  border-radius: 20px;
}

.inner-hero-line span {
  position: absolute;

  top: 0;
  left: -40px;

  width: 40px;
  height: 100%;

  background: #35b9ff;

  box-shadow:
    0 0 12px #35b9ff,
    0 0 25px rgba(53, 185, 255, 0.7);

  animation: heroLineMove 2.4s linear infinite;
}

@keyframes heroLineMove {
  0% {
    left: -40px;
  }

  100% {
    left: 100%;
  }
}

/* ---------------------------------------------------------
   BREADCRUMB
   --------------------------------------------------------- */

.inner-page-hero .breadcrumb {
  margin: 0;
  padding: 0;
}

.inner-page-hero .breadcrumb-item {
  font-size: 14px;
  font-weight: 500;
}

.inner-page-hero .breadcrumb-item a {
  color: rgba(255, 255, 255, 0.65);
  text-decoration: none;

  transition: 0.3s ease;
}

.inner-page-hero .breadcrumb-item a:hover {
  color: #35b9ff;
}

.inner-page-hero .breadcrumb-item.active {
  color: #35b9ff;
}

.inner-page-hero .breadcrumb-item + .breadcrumb-item::before {
  color: rgba(255, 255, 255, 0.3);
}

/* ---------------------------------------------------------
   GLOW EFFECTS
   --------------------------------------------------------- */

.hero-glow {
  position: absolute;

  width: 280px;
  height: 280px;

  border-radius: 50%;

  filter: blur(80px);

  opacity: 0.18;

  z-index: -2;

  pointer-events: none;
}

.hero-glow-left {
  left: -130px;
  top: 20%;

  background: #009dff;

  animation: glowFloat 7s ease-in-out infinite;
}

.hero-glow-right {
  right: -130px;
  bottom: 0;

  background: #0066ff;

  animation: glowFloat 9s ease-in-out infinite reverse;
}

@keyframes glowFloat {
  0%,
  100% {
    transform: translateY(0) scale(1);
  }

  50% {
    transform: translateY(-30px) scale(1.12);
  }
}

/* ---------------------------------------------------------
   PCB CIRCUIT LINES
   --------------------------------------------------------- */

.hero-circuit {
  position: absolute;

  height: 1px;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(53, 185, 255, 0.55),
    transparent
  );

  opacity: 0.55;

  z-index: -1;

  pointer-events: none;
}

.circuit-1 {
  width: 280px;
  left: -60px;
  top: 25%;

  transform: rotate(-18deg);

  animation: circuitMove 5s ease-in-out infinite;
}

.circuit-2 {
  width: 220px;
  right: -50px;
  top: 32%;

  transform: rotate(20deg);

  animation: circuitMove 6s ease-in-out infinite reverse;
}

.circuit-3 {
  width: 180px;
  left: 7%;
  bottom: 17%;

  transform: rotate(12deg);

  opacity: 0.35;
}

.circuit-4 {
  width: 240px;
  right: 7%;
  bottom: 20%;

  transform: rotate(-12deg);

  opacity: 0.35;
}

@keyframes circuitMove {
  0%,
  100% {
    opacity: 0.25;
    transform: translateX(0) rotate(-18deg);
  }

  50% {
    opacity: 0.8;
    transform: translateX(25px) rotate(-18deg);
  }
}

/* ---------------------------------------------------------
   ANIMATED DOTS
   --------------------------------------------------------- */

.hero-dot {
  position: absolute;

  width: 5px;
  height: 5px;

  border-radius: 50%;

  background: #35b9ff;

  box-shadow:
    0 0 8px #35b9ff,
    0 0 20px rgba(53, 185, 255, 0.6);

  z-index: -1;

  animation: dotPulse 2.5s ease-in-out infinite;
}

.hero-dot-1 {
  left: 13%;
  top: 24%;
}

.hero-dot-2 {
  left: 22%;
  bottom: 23%;

  animation-delay: 0.7s;
}

.hero-dot-3 {
  right: 15%;
  top: 27%;

  animation-delay: 1.2s;
}

.hero-dot-4 {
  right: 25%;
  bottom: 18%;

  animation-delay: 1.8s;
}

@keyframes dotPulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.45;
  }

  50% {
    transform: scale(2.2);
    opacity: 1;
  }
}

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

@media (max-width: 991px) {
  .inner-page-hero {
    min-height: 310px;
  }

  .inner-hero-content {
    padding: 40px 20px;
  }

  .inner-hero-content h1 {
    font-size: 48px;
  }

  .inner-hero-content p {
    font-size: 14px;
    max-width: 650px;
  }
}

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

@media (max-width: 767px) {
  .inner-page-hero {
    min-height: 290px;
  }

  .inner-hero-content {
    padding: 35px 15px;
  }

  .inner-hero-tag {
    font-size: 10px;
    letter-spacing: 1.5px;
    padding: 7px 13px;
  }

  .inner-hero-content h1 {
    font-size: 40px;
    letter-spacing: -0.5px;
  }

  .inner-hero-content p {
    margin-top: 14px;
    font-size: 13px;
    line-height: 1.7;
  }

  .inner-hero-line {
    margin-top: 18px;
    margin-bottom: 15px;
  }

  .inner-page-hero .breadcrumb-item {
    font-size: 13px;
  }

  .hero-circuit {
    opacity: 0.3;
  }

  .hero-glow {
    width: 180px;
    height: 180px;
    filter: blur(60px);
  }

  .hero-dot-1 {
    left: 8%;
  }

  .hero-dot-2 {
    left: 15%;
  }

  .hero-dot-3 {
    right: 8%;
  }

  .hero-dot-4 {
    right: 15%;
  }
}

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

@media (max-width: 480px) {
  .inner-page-hero {
    min-height: 270px;
  }

  .inner-hero-content {
    padding: 30px 12px;
  }

  .inner-hero-content h1 {
    font-size: 34px;
  }

  .inner-hero-content p {
    font-size: 12.5px;
    line-height: 1.65;
  }

  .inner-hero-tag {
    margin-bottom: 13px;
  }

  .inner-hero-line {
    width: 80px;
  }
}

/* =====================================================
   PCB REPAIR PROCESS
===================================================== */

.psx-repair-process {
  position: relative;
  overflow: hidden;
  padding: 105px 0 110px;
  background: #f7f9fc;
  isolation: isolate;
}

/* -----------------------------------------------------
   Background
----------------------------------------------------- */

.psx-process-bg {
  position: absolute;
  inset: 0;
  z-index: -3;

  background:
    linear-gradient(rgba(65, 98, 127, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(65, 98, 127, 0.045) 1px, transparent 1px);

  background-size: 55px 55px;

  animation: psxGridMove 18s linear infinite;
}

.psx-process-bg::before {
  content: "";
  position: absolute;
  width: 650px;
  height: 650px;

  top: -280px;
  left: -220px;

  border-radius: 50%;

  background: rgba(65, 98, 127, 0.08);

  filter: blur(80px);

  animation: psxGlowFloat 7s ease-in-out infinite;
}

.psx-process-bg::after {
  content: "";
  position: absolute;
  width: 550px;
  height: 550px;

  right: -180px;
  bottom: -260px;

  border-radius: 50%;

  background: rgba(0, 170, 180, 0.055);

  filter: blur(90px);

  animation: psxGlowFloat 9s ease-in-out infinite reverse;
}

/* -----------------------------------------------------
   Container
----------------------------------------------------- */

.psx-process-container {
  width: min(1400px, calc(100% - 40px));
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

/* -----------------------------------------------------
   Heading
----------------------------------------------------- */

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

.psx-process-tag {
  display: inline-flex;
  align-items: center;
  gap: 9px;

  padding: 8px 16px;

  border: 1px solid rgba(65, 98, 127, 0.18);
  border-radius: 30px;

  background: rgba(255, 255, 255, 0.72);

  color: #018149;

  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1.7px;

  box-shadow: 0 8px 25px rgba(25, 45, 65, 0.05);
}

.psx-process-tag i {
  font-size: 13px;

  animation: psxChipPulse 2s ease-in-out infinite;
}

.psx-process-heading h2 {
  margin: 20px 0 16px;

  color: #172330;

  font-size: clamp(32px, 4vw, 52px);
  line-height: 1.12;
  font-weight: 800;
}

.psx-process-heading h2 span {
  color: #018149;
  position: relative;
}

.psx-process-heading h2 span::after {
  content: "";

  position: absolute;
  left: 0;
  bottom: -7px;

  width: 55%;
  height: 3px;

  background: #018149;

  border-radius: 20px;

  animation: psxUnderline 3s ease-in-out infinite;
}

.psx-process-heading p {
  max-width: 680px;
  margin: 0 auto;

  color: #697887;

  font-size: 16px;
  line-height: 1.8;
}

/* -----------------------------------------------------
   Cards Grid
----------------------------------------------------- */

.psx-process-grid {
  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 24px;

  position: relative;
}

/* Connecting line */

.psx-process-grid::before {
  content: "";

  position: absolute;

  top: 52px;
  left: 10%;
  right: 10%;

  height: 1px;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(65, 98, 127, 0.25),
    rgba(65, 98, 127, 0.25),
    transparent
  );

  z-index: -1;
}

/* -----------------------------------------------------
   Process Card
----------------------------------------------------- */

.psx-process-card {
  position: relative;

  min-height: 360px;

  padding: 34px 28px 30px;

  background: rgba(255, 255, 255, 0.88);

  border: 1px solid rgba(65, 98, 127, 0.12);

  border-radius: 22px;

  box-shadow: 0 18px 50px rgba(27, 48, 67, 0.07);

  overflow: hidden;

  transition:
    transform 0.45s ease,
    box-shadow 0.45s ease,
    border-color 0.45s ease;
}

.psx-process-card::before {
  content: "";

  position: absolute;

  width: 170px;
  height: 170px;

  top: -90px;
  right: -80px;

  border-radius: 50%;

  background: rgba(65, 98, 127, 0.06);

  transition: 0.5s ease;
}

.psx-process-card::after {
  content: "";

  position: absolute;

  left: -100%;
  bottom: 0;

  width: 100%;
  height: 3px;

  background: linear-gradient(90deg, transparent, #018149, transparent);

  transition: 0.6s ease;
}

.psx-process-card:hover {
  transform: translateY(-12px);

  border-color: rgba(65, 98, 127, 0.3);

  box-shadow: 0 25px 60px rgba(27, 48, 67, 0.13);
}

.psx-process-card:hover::before {
  transform: scale(1.8);
  background: rgba(65, 98, 127, 0.09);
}

.psx-process-card:hover::after {
  left: 100%;
}

/* -----------------------------------------------------
   Number
----------------------------------------------------- */

.psx-card-number {
  position: absolute;

  top: 20px;
  right: 22px;

  color: rgba(65, 98, 127, 0.13);

  font-size: 42px;
  line-height: 1;
  font-weight: 900;
}

/* -----------------------------------------------------
   Icon
----------------------------------------------------- */

.psx-process-icon {
  position: relative;

  width: 68px;
  height: 68px;

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

  margin-bottom: 28px;

  border-radius: 18px;

  background: linear-gradient(135deg, #018149, #29465f);

  color: #fff;

  font-size: 25px;

  box-shadow: 0 12px 28px rgba(65, 98, 127, 0.25);

  transition: 0.4s ease;
}

.psx-process-icon::before {
  content: "";

  position: absolute;
  inset: -7px;

  border: 1px dashed rgba(65, 98, 127, 0.35);

  border-radius: 22px;

  animation: psxIconRotate 8s linear infinite;
}

.psx-process-card:hover .psx-process-icon {
  transform: rotate(-6deg) scale(1.08);
}

/* -----------------------------------------------------
   Card Content
----------------------------------------------------- */

.psx-card-content {
  position: relative;
  z-index: 2;
}

.psx-card-content > span {
  display: block;

  margin-bottom: 7px;

  color: #8a98a5;

  font-size: 11px;
  font-weight: 800;

  letter-spacing: 1.5px;
}

.psx-card-content h3 {
  margin-bottom: 14px;

  color: #1b2b39;

  font-size: 22px;
  font-weight: 750;
}

.psx-card-content p {
  margin: 0;

  color: #71808d;

  font-size: 14px;
  line-height: 1.75;
}

/* -----------------------------------------------------
   Bottom Animated Line
----------------------------------------------------- */

.psx-card-line {
  position: absolute;

  left: 28px;
  bottom: 25px;

  width: 45px;
  height: 2px;

  background: #018149;

  transition: 0.4s ease;
}

.psx-process-card:hover .psx-card-line {
  width: 90px;
}

/* -----------------------------------------------------
   Bottom CTA
----------------------------------------------------- */

.psx-process-bottom {
  position: relative;

  display: flex;
  align-items: center;
  gap: 22px;

  margin-top: 38px;
  padding: 25px 28px;

  background: rgba(255, 255, 255, 0.82);

  border: 1px solid rgba(65, 98, 127, 0.12);

  border-radius: 18px;

  box-shadow: 0 15px 45px rgba(25, 45, 65, 0.06);
}

.psx-bottom-icon {
  flex: 0 0 54px;

  width: 54px;
  height: 54px;

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

  border-radius: 15px;

  background: #018149;
  color: #fff;

  font-size: 20px;

  animation: psxShieldPulse 2.5s ease-in-out infinite;
}

.psx-bottom-text {
  flex: 1;
}

.psx-bottom-text strong {
  display: block;

  margin-bottom: 5px;

  color: #20313f;

  font-size: 17px;
}

.psx-bottom-text p {
  margin: 0;

  color: #71808d;

  font-size: 13px;
}

.psx-bottom-btn {
  display: inline-flex;
  align-items: center;
  gap: 12px;

  padding: 13px 20px;

  border-radius: 10px;

  background: #018149;
  color: #fff;

  font-size: 13px;
  font-weight: 700;

  text-decoration: none;

  transition: 0.35s ease;
}

.psx-bottom-btn i {
  transition: 0.35s ease;
}

.psx-bottom-btn:hover {
  background: #29465f;
  color: #fff;

  transform: translateY(-3px);
}

.psx-bottom-btn:hover i {
  transform: translateX(5px);
}

/* -----------------------------------------------------
   Decorative Circuit Lines
----------------------------------------------------- */

.psx-circuit-line {
  position: absolute;

  height: 1px;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(65, 98, 127, 0.22),
    transparent
  );

  z-index: -1;
}

.psx-line-1 {
  width: 280px;
  top: 20%;
  left: -80px;

  transform: rotate(25deg);

  animation: psxLineMove 6s ease-in-out infinite;
}

.psx-line-2 {
  width: 360px;
  top: 67%;
  right: -100px;

  transform: rotate(-22deg);

  animation: psxLineMove 7s ease-in-out infinite reverse;
}

.psx-line-3 {
  width: 200px;
  top: 38%;
  right: -50px;

  transform: rotate(18deg);

  opacity: 0.5;
}

.psx-line-4 {
  width: 230px;
  bottom: 13%;
  left: -70px;

  transform: rotate(-15deg);

  opacity: 0.5;
}

/* -----------------------------------------------------
   Nodes
----------------------------------------------------- */

.psx-node {
  position: absolute;

  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #018149;

  box-shadow:
    0 0 0 5px rgba(65, 98, 127, 0.08),
    0 0 18px rgba(65, 98, 127, 0.3);

  animation: psxNodePulse 2.5s ease-in-out infinite;

  z-index: -1;
}

.psx-node-1 {
  top: 18%;
  left: 8%;
}

.psx-node-2 {
  top: 42%;
  right: 6%;
  animation-delay: 0.7s;
}

.psx-node-3 {
  bottom: 18%;
  left: 14%;
  animation-delay: 1.2s;
}

.psx-node-4 {
  bottom: 12%;
  right: 13%;
  animation-delay: 1.8s;
}

/* -----------------------------------------------------
   Orbits
----------------------------------------------------- */

.psx-orbit {
  position: absolute;

  border: 1px dashed rgba(65, 98, 127, 0.1);

  border-radius: 50%;

  z-index: -2;

  animation: psxOrbitSpin 25s linear infinite;
}

.psx-orbit-1 {
  width: 400px;
  height: 400px;

  top: -180px;
  right: -150px;
}

.psx-orbit-2 {
  width: 300px;
  height: 300px;

  bottom: -160px;
  left: -100px;

  animation-direction: reverse;
}

/* =====================================================
   ANIMATIONS
===================================================== */

@keyframes psxGridMove {
  0% {
    background-position:
      0 0,
      0 0;
  }

  100% {
    background-position:
      55px 55px,
      55px 55px;
  }
}

@keyframes psxGlowFloat {
  0%,
  100% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(35px, 25px);
  }
}

@keyframes psxChipPulse {
  0%,
  100% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.18);
  }
}

@keyframes psxUnderline {
  0%,
  100% {
    width: 35%;
  }

  50% {
    width: 75%;
  }
}

@keyframes psxIconRotate {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

@keyframes psxShieldPulse {
  0%,
  100% {
    transform: scale(1);
    box-shadow: 0 0 0 rgba(65, 98, 127, 0);
  }

  50% {
    transform: scale(1.06);
    box-shadow: 0 0 25px rgba(65, 98, 127, 0.22);
  }
}

@keyframes psxNodePulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.5;
  }

  50% {
    transform: scale(1.8);
    opacity: 1;
  }
}

@keyframes psxLineMove {
  0%,
  100% {
    opacity: 0.25;
    transform: translateX(0) rotate(25deg);
  }

  50% {
    opacity: 0.8;
    transform: translateX(35px) rotate(25deg);
  }
}

@keyframes psxOrbitSpin {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

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

@media (max-width: 1199px) {
  .psx-process-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .psx-process-grid::before {
    display: none;
  }
}

@media (max-width: 767px) {
  .psx-repair-process {
    padding: 75px 0 80px;
  }

  .psx-process-container {
    width: min(100% - 28px, 600px);
  }

  .psx-process-heading {
    margin-bottom: 42px;
  }

  .psx-process-heading h2 {
    font-size: 32px;
  }

  .psx-process-heading p {
    font-size: 14px;
    line-height: 1.7;
  }

  .psx-process-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .psx-process-card {
    min-height: 300px;
    padding: 28px 24px;
  }

  .psx-process-bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    padding: 22px;
  }

  .psx-bottom-btn {
    width: 100%;
    justify-content: center;
  }

  .psx-line-1,
  .psx-line-2,
  .psx-line-3,
  .psx-line-4 {
    opacity: 0.4;
  }
}

@media (max-width: 480px) {
  .psx-process-heading h2 {
    font-size: 28px;
  }

  .psx-process-tag {
    font-size: 10px;
    letter-spacing: 1.2px;
  }

  .psx-process-card {
    border-radius: 18px;
  }

  .psx-process-icon {
    width: 60px;
    height: 60px;
    font-size: 21px;
  }

  .psx-card-content h3 {
    font-size: 20px;
  }

  .psx-bottom-text strong {
    font-size: 15px;
  }
}

/* =========================================================
   PCB LOCATION / GOOGLE MAP SECTION
========================================================= */

.pcb-location-section {
  position: relative;
  width: 100%;
  padding: 100px 20px;
  background: #f6f9fc;
  overflow: hidden;
  isolation: isolate;
}

/* =========================================================
   BACKGROUND DECORATION
========================================================= */

.pcb-location-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  overflow: hidden;
}

/* Glow */

.location-glow {
  position: absolute;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  filter: blur(80px);
  opacity: 0.18;
  animation: locationGlow 7s ease-in-out infinite alternate;
}

.location-glow-one {
  top: -100px;
  left: -80px;
  background: #018149;
}

.location-glow-two {
  right: -100px;
  bottom: -100px;
  background: #00a878;
  animation-delay: 2s;
}

@keyframes locationGlow {
  0% {
    transform: scale(1);
    opacity: 0.12;
  }

  100% {
    transform: scale(1.3);
    opacity: 0.22;
  }
}

/* =========================================================
   PCB DOTS
========================================================= */

.location-dot {
  position: absolute;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #018149;
  box-shadow:
    0 0 0 5px rgba(65, 98, 127, 0.08),
    0 0 18px rgba(65, 98, 127, 0.35);

  animation: locationDotPulse 3s ease-in-out infinite;
}

.location-dot-one {
  top: 18%;
  left: 7%;
}

.location-dot-two {
  top: 72%;
  left: 12%;
  animation-delay: 1s;
}

.location-dot-three {
  top: 25%;
  right: 8%;
  animation-delay: 1.7s;
}

@keyframes locationDotPulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.45;
  }

  50% {
    transform: scale(1.8);
    opacity: 1;
  }
}

/* =========================================================
   CIRCUIT LINES
========================================================= */

.location-line {
  position: absolute;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(65, 98, 127, 0.28),
    rgba(65, 98, 127, 0.08),
    transparent
  );

  transform-origin: left center;
  animation: locationLineMove 6s ease-in-out infinite;
}

.location-line-one {
  width: 260px;
  top: 28%;
  left: -30px;
  transform: rotate(28deg);
}

.location-line-two {
  width: 320px;
  right: -60px;
  bottom: 22%;
  transform: rotate(-30deg);
  animation-delay: 2s;
}

@keyframes locationLineMove {
  0%,
  100% {
    opacity: 0.25;
    transform: translateX(0) rotate(28deg);
  }

  50% {
    opacity: 0.75;
    transform: translateX(35px) rotate(28deg);
  }
}

/* =========================================================
   MAIN CONTAINER
========================================================= */

.pcb-location-container {
  position: relative;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
}

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

.pcb-location-heading {
  max-width: 720px;
  margin: 0 auto 55px;
  text-align: center;
}

.location-tag {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;

  padding: 8px 18px;

  border: 1px solid rgba(65, 98, 127, 0.18);
  border-radius: 50px;

  background: rgba(255, 255, 255, 0.75);

  color: #018149;

  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;

  box-shadow: 0 8px 25px rgba(25, 55, 80, 0.06);
}

.location-tag span {
  width: 7px;
  height: 7px;
  background: #00a878;
  border-radius: 50%;

  box-shadow: 0 0 12px rgba(0, 168, 120, 0.6);

  animation: locationTagPulse 2s infinite;
}

@keyframes locationTagPulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.7;
  }

  50% {
    transform: scale(1.6);
    opacity: 1;
  }
}

.pcb-location-heading h2 {
  margin: 20px 0 15px;

  color: #172b3a;

  font-size: clamp(34px, 4vw, 52px);
  font-weight: 700;
  line-height: 1.15;
}

.pcb-location-heading h2 span {
  color: #018149;
}

.pcb-location-heading p {
  max-width: 650px;
  margin: 0 auto;

  color: #687886;

  font-size: 16px;
  line-height: 1.8;
}

/* =========================================================
   MAIN WRAPPER
========================================================= */

.pcb-location-wrapper {
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: 35px;
  align-items: stretch;
}

/* =========================================================
   LEFT INFORMATION CARD
========================================================= */

.pcb-location-info {
  position: relative;

  background: #ffffff;

  border: 1px solid rgba(65, 98, 127, 0.12);

  border-radius: 22px;

  box-shadow: 0 20px 55px rgba(24, 48, 67, 0.08);

  overflow: hidden;
}

.pcb-location-info::before {
  content: "";
  position: absolute;

  top: 0;
  left: 0;

  width: 100%;
  height: 4px;

  background: linear-gradient(90deg, #018149, #00a878, #018149);

  background-size: 200% 100%;

  animation: locationBorderFlow 4s linear infinite;
}

@keyframes locationBorderFlow {
  0% {
    background-position: 0% 50%;
  }

  100% {
    background-position: 200% 50%;
  }
}

.location-info-inner {
  height: 100%;
  padding: 45px;
}

.location-small-tag {
  display: inline-block;

  margin-bottom: 15px;

  color: #018149;

  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.8px;
}

.location-info-inner h3 {
  margin-bottom: 15px;

  color: #172b3a;

  font-size: 30px;
  font-weight: 700;
  line-height: 1.25;
}

.location-info-inner h3 strong {
  display: block;
  color: #018149;
}

.location-description {
  margin-bottom: 30px;

  color: #6d7c87;

  font-size: 15px;
  line-height: 1.8;
}

/* =========================================================
   CONTACT ITEMS
========================================================= */

.location-contact-item {
  position: relative;

  display: flex;
  align-items: flex-start;

  gap: 15px;

  padding: 18px 0;

  border-bottom: 1px solid rgba(65, 98, 127, 0.09);
}

.location-contact-item:last-of-type {
  border-bottom: none;
}

.location-contact-icon {
  flex: 0 0 48px;

  width: 48px;
  height: 48px;

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

  border-radius: 14px;

  background: rgba(65, 98, 127, 0.08);

  color: #018149;

  font-size: 17px;

  transition: all 0.35s ease;
}

.location-contact-item:hover .location-contact-icon {
  background: #018149;
  color: #ffffff;

  transform: translateY(-3px) rotate(-5deg);

  box-shadow: 0 10px 25px rgba(65, 98, 127, 0.25);
}

.location-contact-item small {
  display: block;

  margin-bottom: 4px;

  color: #8a969f;

  font-size: 11px;
  font-weight: 600;

  text-transform: uppercase;
  letter-spacing: 1px;
}

.location-contact-item strong {
  display: block;

  margin-bottom: 3px;

  color: #273b49;

  font-size: 15px;
}

.location-contact-item p {
  margin: 0;

  color: #71808b;

  font-size: 14px;
  line-height: 1.6;
}

.location-contact-item a {
  color: #018149;

  font-size: 15px;
  font-weight: 600;

  text-decoration: none;

  transition: color 0.3s ease;
}

.location-contact-item a:hover {
  color: #00a878;
}

/* =========================================================
   DIRECTIONS BUTTON
========================================================= */

.location-direction-btn {
  position: relative;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;

  margin-top: 25px;

  padding: 13px 22px;

  border-radius: 10px;

  background: #018149;

  color: #ffffff;

  font-size: 14px;
  font-weight: 600;

  text-decoration: none;

  overflow: hidden;

  transition: all 0.35s ease;
}

.location-direction-btn::before {
  content: "";

  position: absolute;

  top: 0;
  left: -120%;

  width: 70%;
  height: 100%;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.25),
    transparent
  );

  transform: skewX(-25deg);

  transition: left 0.6s ease;
}

.location-direction-btn:hover::before {
  left: 130%;
}

.location-direction-btn:hover {
  color: #ffffff;

  background: #344f68;

  transform: translateY(-3px);

  box-shadow: 0 12px 25px rgba(65, 98, 127, 0.25);
}

.location-direction-btn i {
  transition: transform 0.3s ease;
}

.location-direction-btn:hover i {
  transform: translateX(4px);
}

/* =========================================================
   MAP CARD
========================================================= */

.pcb-location-map {
  min-height: 550px;
}

.location-map-card {
  position: relative;

  height: 100%;

  padding: 12px;

  background: #ffffff;

  border: 1px solid rgba(65, 98, 127, 0.12);

  border-radius: 22px;

  box-shadow: 0 20px 55px rgba(24, 48, 67, 0.1);

  overflow: hidden;
}

.location-map-card::before {
  content: "";

  position: absolute;

  inset: 0;

  border: 1px solid transparent;
  border-radius: 22px;

  pointer-events: none;
}

/* =========================================================
   MAP TOP BAR
========================================================= */

.location-map-top {
  display: flex;
  align-items: center;
  justify-content: space-between;

  padding: 12px 14px 15px;
}

.location-map-top > span:first-child {
  display: flex;
  align-items: center;
  gap: 8px;

  color: #273b49;

  font-size: 14px;
  font-weight: 600;
}

.location-map-top > span:first-child i {
  color: #018149;
}

.map-status {
  display: flex;
  align-items: center;
  gap: 7px;

  padding: 6px 12px;

  border-radius: 30px;

  background: rgba(0, 168, 120, 0.08);

  color: #00a878;

  font-size: 12px;
  font-weight: 600;
}

.map-status i {
  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #00a878;

  box-shadow: 0 0 10px rgba(0, 168, 120, 0.5);

  animation: mapStatusPulse 2s infinite;
}

@keyframes mapStatusPulse {
  0%,
  100% {
    opacity: 0.5;
    transform: scale(1);
  }

  50% {
    opacity: 1;
    transform: scale(1.4);
  }
}

/* =========================================================
   GOOGLE MAP FRAME
========================================================= */

.location-map-frame {
  position: relative;

  width: 100%;
  height: 430px;

  border-radius: 15px;

  overflow: hidden;

  background: #edf2f5;
}

.location-map-frame iframe {
  display: block;

  width: 100%;
  height: 100%;

  border: 0;

  filter: saturate(0.9) contrast(0.96);

  transition: filter 0.4s ease;
}

.location-map-frame:hover iframe {
  filter: saturate(1) contrast(1);
}

/* =========================================================
   MAP BOTTOM
========================================================= */

.location-map-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 15px;

  padding: 15px 8px 3px;
}

.location-map-bottom > div {
  display: flex;
  align-items: center;
  gap: 8px;

  color: #687883;

  font-size: 12px;
}

.location-map-bottom > div i {
  color: #00a878;
}

.location-map-bottom a {
  display: inline-flex;
  align-items: center;
  gap: 7px;

  color: #018149;

  font-size: 12px;
  font-weight: 700;

  text-decoration: none;

  white-space: nowrap;

  transition: all 0.3s ease;
}

.location-map-bottom a:hover {
  color: #00a878;
}

.location-map-bottom a i {
  transition: transform 0.3s ease;
}

.location-map-bottom a:hover i {
  transform: translateX(4px);
}

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

@media (max-width: 991px) {
  .pcb-location-section {
    padding: 80px 20px;
  }

  .pcb-location-wrapper {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .pcb-location-info {
    width: 100%;
  }

  .pcb-location-map {
    min-height: 520px;
  }

  .location-map-frame {
    height: 430px;
  }

  .location-info-inner {
    padding: 40px;
  }
}

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

@media (max-width: 767px) {
  .pcb-location-section {
    padding: 65px 15px;
  }

  .pcb-location-heading {
    margin-bottom: 40px;
  }

  .pcb-location-heading h2 {
    font-size: 34px;
  }

  .pcb-location-heading p {
    font-size: 14px;
    line-height: 1.7;
  }

  .location-tag {
    padding: 7px 14px;

    font-size: 10px;
    letter-spacing: 1.5px;
  }

  .location-info-inner {
    padding: 30px 22px;
  }

  .location-info-inner h3 {
    font-size: 26px;
  }

  .location-description {
    font-size: 14px;
  }

  .location-contact-item {
    gap: 12px;
  }

  .location-contact-icon {
    flex: 0 0 43px;

    width: 43px;
    height: 43px;

    border-radius: 12px;
  }

  .pcb-location-map {
    min-height: auto;
  }

  .location-map-card {
    padding: 8px;

    border-radius: 17px;
  }

  .location-map-top {
    padding: 10px 8px 13px;
  }

  .location-map-top > span:first-child {
    font-size: 12px;
  }

  .map-status {
    padding: 5px 9px;
    font-size: 10px;
  }

  .location-map-frame {
    height: 350px;
    border-radius: 12px;
  }

  .location-map-bottom {
    flex-direction: column;
    align-items: flex-start;

    padding: 13px 7px 5px;
  }

  .location-map-bottom a {
    padding-bottom: 4px;
  }

  .location-line-one {
    width: 170px;
  }

  .location-line-two {
    width: 180px;
  }
}

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

@media (max-width: 480px) {
  .pcb-location-section {
    padding: 55px 12px;
  }

  .pcb-location-heading h2 {
    font-size: 29px;
  }

  .pcb-location-heading p {
    font-size: 13px;
  }

  .location-info-inner {
    padding: 25px 18px;
  }

  .location-info-inner h3 {
    font-size: 23px;
  }

  .location-contact-item p,
  .location-contact-item a,
  .location-contact-item strong {
    font-size: 13px;
  }

  .location-direction-btn {
    width: 100%;
  }

  .location-map-frame {
    height: 300px;
  }

  .location-map-bottom > div {
    font-size: 11px;
    line-height: 1.5;
  }
}

/*======================++++++++++++++++++++++++++++++++++=================== service page css */

/* =====================================================
   PCB SERVICES OVERVIEW
===================================================== */

.pcb-services-overview {
  position: relative;
  padding: 110px 0;
  background: #f7faff;
  overflow: hidden;
  isolation: isolate;
}

/* Container */

.pcb-services-overview .container {
  position: relative;
  z-index: 5;
  max-width: 1400px;
}

/* =====================================================
   BACKGROUND
===================================================== */

.pcb-services-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  overflow: hidden;
}

.services-bg-grid {
  position: absolute;
  inset: 0;

  background-image:
    linear-gradient(rgba(65, 98, 127, 0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(65, 98, 127, 0.055) 1px, transparent 1px);

  background-size: 55px 55px;

  mask-image: linear-gradient(
    to bottom,
    transparent,
    #000 15%,
    #000 85%,
    transparent
  );

  animation: servicesGridMove 20s linear infinite;
}

@keyframes servicesGridMove {
  from {
    background-position: 0 0;
  }

  to {
    background-position: 55px 55px;
  }
}

/* Glows */

.services-glow {
  position: absolute;
  width: 320px;
  height: 320px;

  border-radius: 50%;

  background: rgba(65, 98, 127, 0.1);

  filter: blur(70px);

  animation: servicesGlowFloat 7s ease-in-out infinite;
}

.services-glow-1 {
  top: 5%;
  left: -120px;
}

.services-glow-2 {
  right: -120px;
  bottom: 5%;
  animation-delay: -3s;
}

@keyframes servicesGlowFloat {
  0%,
  100% {
    transform: translateY(0) scale(1);
  }

  50% {
    transform: translateY(-25px) scale(1.08);
  }
}

/* Dots */

.services-dot {
  position: absolute;

  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #018149;

  box-shadow:
    0 0 0 6px rgba(65, 98, 127, 0.08),
    0 0 20px rgba(65, 98, 127, 0.35);

  animation: serviceDotPulse 3s ease-in-out infinite;
}

.services-dot-1 {
  top: 18%;
  left: 8%;
}

.services-dot-2 {
  top: 50%;
  right: 6%;
  animation-delay: 1s;
}

.services-dot-3 {
  bottom: 12%;
  left: 14%;
  animation-delay: 2s;
}

@keyframes serviceDotPulse {
  0%,
  100% {
    opacity: 0.45;
    transform: scale(0.8);
  }

  50% {
    opacity: 1;
    transform: scale(1.25);
  }
}

/* Decorative Lines */

.services-line {
  position: absolute;

  height: 1px;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(65, 98, 127, 0.35),
    transparent
  );

  animation: servicesLineMove 5s ease-in-out infinite;
}

.services-line-1 {
  width: 220px;
  top: 22%;
  left: -40px;
  transform: rotate(35deg);
}

.services-line-2 {
  width: 260px;
  right: -50px;
  bottom: 20%;
  transform: rotate(-35deg);
  animation-delay: 2s;
}

@keyframes servicesLineMove {
  0%,
  100% {
    opacity: 0.2;
    transform: translateX(0) rotate(35deg);
  }

  50% {
    opacity: 0.7;
    transform: translateX(30px) rotate(35deg);
  }
}

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

.pcb-services-heading {
  max-width: 760px;
  margin: 0 auto 65px;
  text-align: center;
}

.services-tag {
  display: inline-flex;
  align-items: center;
  gap: 9px;

  margin-bottom: 16px;

  font-size: 12px;
  font-weight: 800;
  letter-spacing: 2px;

  color: #018149;
}

.services-tag > span {
  width: 28px;
  height: 2px;

  background: #018149;

  position: relative;
}

.services-tag > span::after {
  content: "";

  position: absolute;

  width: 6px;
  height: 6px;

  top: 50%;
  right: -2px;

  border-radius: 50%;

  background: #018149;

  transform: translateY(-50%);
}

.pcb-services-heading h2 {
  margin: 0;

  color: #172534;

  font-size: clamp(34px, 4vw, 52px);
  line-height: 1.15;
  font-weight: 800;
}

.pcb-services-heading h2 strong {
  display: block;

  color: #018149;

  font-weight: 800;
}

.pcb-services-heading p {
  max-width: 680px;

  margin: 20px auto 0;

  color: #687786;

  font-size: 16px;
  line-height: 1.8;
}

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

.pcb-services-grid-one {
  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 24px;
}

/* =====================================================
   SERVICE CARD
===================================================== */

.pcb-service-card {
  position: relative;

  padding: 32px 28px 28px;

  min-height: 390px;

  background: rgba(255, 255, 255, 0.88);

  border: 1px solid rgba(65, 98, 127, 0.12);

  border-radius: 18px;

  box-shadow: 0 12px 35px rgba(30, 55, 75, 0.07);

  overflow: hidden;

  transition:
    transform 0.45s cubic-bezier(0.2, 0.8, 0.2, 1),
    box-shadow 0.45s ease,
    border-color 0.45s ease;
}

/* Top animated line */

.pcb-service-card::before {
  content: "";

  position: absolute;

  top: 0;
  left: -100%;

  width: 100%;
  height: 3px;

  background: linear-gradient(90deg, transparent, #018149, transparent);

  transition: left 0.6s ease;
}

/* Glow */

.pcb-service-card::after {
  content: "";

  position: absolute;

  width: 160px;
  height: 160px;

  right: -90px;
  bottom: -90px;

  border-radius: 50%;

  background: rgba(65, 98, 127, 0.08);

  transition:
    transform 0.5s ease,
    background 0.5s ease;
}

.pcb-service-card:hover {
  transform: translateY(-10px);

  border-color: rgba(65, 98, 127, 0.35);

  box-shadow: 0 25px 55px rgba(30, 55, 75, 0.14);
}

.pcb-service-card:hover::before {
  left: 100%;
}

.pcb-service-card:hover::after {
  transform: scale(2);
}

/* Number */

.service-card-number {
  position: absolute;

  top: 22px;
  right: 24px;

  font-size: 12px;
  font-weight: 800;

  letter-spacing: 1px;

  color: rgba(65, 98, 127, 0.35);
}

/* Icon */

.service-icon-box {
  width: 64px;
  height: 64px;

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

  margin-bottom: 25px;

  border-radius: 15px;

  color: #fff;

  background: linear-gradient(135deg, #018149, #263f56);

  box-shadow: 0 10px 25px rgba(65, 98, 127, 0.25);

  transition:
    transform 0.45s ease,
    border-radius 0.45s ease;
}

.service-icon-box i {
  font-size: 23px;
}

.pcb-service-card:hover .service-icon-box {
  transform: rotate(-6deg) scale(1.08);

  border-radius: 50%;
}

/* Card Content */

.pcb-service-card h3 {
  margin-bottom: 12px;

  color: #1b2a38;

  font-size: 20px;
  font-weight: 750;
}

.pcb-service-card > p {
  margin-bottom: 18px;

  color: #71808d;

  font-size: 14px;
  line-height: 1.7;
}

/* List */

.service-card-list {
  display: flex;
  flex-direction: column;

  gap: 8px;

  margin-bottom: 22px;
}

.service-card-list span {
  display: flex;
  align-items: center;

  gap: 8px;

  color: #566674;

  font-size: 12px;
  font-weight: 600;
}

.service-card-list i {
  color: #018149;

  font-size: 10px;
}

/* Link */

.service-card-link {
  position: absolute;

  left: 28px;
  bottom: 25px;

  display: inline-flex;
  align-items: center;

  gap: 9px;

  color: #018149;

  font-size: 13px;
  font-weight: 800;

  text-decoration: none;

  transition: gap 0.35s ease;
}

.service-card-link i {
  font-size: 11px;

  transition: transform 0.35s ease;
}

.service-card-link:hover {
  gap: 13px;
}

.service-card-link:hover i {
  transform: translateX(4px);
}

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

@media (max-width: 1199px) {
  .pcb-services-overview {
    padding: 90px 0;
  }

  .pcb-services-grid-one {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 991px) {
  .pcb-services-overview {
    padding: 80px 0;
  }

  .pcb-services-heading {
    margin-bottom: 50px;
  }

  .pcb-services-grid-one {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 767px) {
  .pcb-services-overview {
    padding: 65px 0;
  }

  .pcb-services-heading {
    margin-bottom: 40px;
    padding: 0 10px;
  }

  .pcb-services-heading h2 {
    font-size: 32px;
  }

  .pcb-services-heading p {
    font-size: 14px;
    line-height: 1.7;
  }

  .pcb-services-grid-one {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .pcb-service-card {
    min-height: 370px;
    padding: 28px 24px;
  }

  .service-card-link {
    left: 24px;
    bottom: 23px;
  }
}

@media (max-width: 480px) {
  .pcb-services-overview {
    padding: 55px 0;
  }

  .pcb-services-heading h2 {
    font-size: 28px;
  }

  .services-tag {
    font-size: 10px;
    letter-spacing: 1.5px;
  }

  .pcb-service-card {
    min-height: 360px;
    padding: 25px 21px;
    border-radius: 15px;
  }

  .service-icon-box {
    width: 58px;
    height: 58px;
  }

  .pcb-service-card h3 {
    font-size: 18px;
  }
}

/* =====================================================
   SERVICES PAGE HERO
===================================================== */

.services-page-hero {
  position: relative;
  width: 100%;
  min-height: 390px;

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

  overflow: hidden;
  isolation: isolate;

  background: linear-gradient(135deg, #07121d 0%, #0b1d2d 45%, #07131f 100%);
}

/* =====================================================
   BACKGROUND GLOW
===================================================== */

.services-page-hero-bg {
  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      circle at 18% 50%,
      rgba(37, 150, 243, 0.16),
      transparent 30%
    ),
    radial-gradient(circle at 82% 30%, rgba(0, 188, 212, 0.1), transparent 28%);

  z-index: -5;
}

.services-page-hero-overlay {
  position: absolute;
  inset: 0;

  background: linear-gradient(
    90deg,
    rgba(4, 13, 22, 0.95),
    rgba(6, 20, 32, 0.78),
    rgba(4, 13, 22, 0.95)
  );

  z-index: -4;
}

/* =====================================================
   ANIMATED GRID
===================================================== */

.services-page-hero-grid {
  position: absolute;
  inset: 0;

  background-image:
    linear-gradient(rgba(65, 145, 190, 0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(65, 145, 190, 0.055) 1px, transparent 1px);

  background-size: 55px 55px;

  opacity: 0.65;

  animation: servicesHeroGridMove 18s linear infinite;

  z-index: -3;
}

@keyframes servicesHeroGridMove {
  0% {
    background-position: 0 0;
  }

  100% {
    background-position: 55px 55px;
  }
}

/* =====================================================
   HERO CONTENT
===================================================== */

.services-page-hero-container {
  position: relative;
  z-index: 5;

  width: 100%;
  max-width: 1400px;

  margin: 0 auto;

  padding: 75px 30px;
}

.services-page-hero-content {
  max-width: 900px;

  margin: 0 auto;

  text-align: center;
}

/* =====================================================
   HERO TAG
===================================================== */

.services-page-hero-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;

  margin-bottom: 22px;

  padding: 9px 18px;

  border: 1px solid rgba(37, 150, 243, 0.35);

  border-radius: 50px;

  background: rgba(37, 150, 243, 0.07);

  color: #62b7ff;

  font-size: 12px;
  font-weight: 700;

  letter-spacing: 1.8px;

  backdrop-filter: blur(8px);

  box-shadow: 0 0 25px rgba(37, 150, 243, 0.08);

  animation: servicesTagFloat 3s ease-in-out infinite;
}

.services-page-hero-tag span {
  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #2fa7ff;

  box-shadow: 0 0 10px #2fa7ff;

  animation: servicesTagPulse 1.8s ease-in-out infinite;
}

@keyframes servicesTagFloat {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-4px);
  }
}

@keyframes servicesTagPulse {
  0%,
  100% {
    opacity: 0.5;
    transform: scale(0.8);
  }

  50% {
    opacity: 1;
    transform: scale(1.25);
  }
}

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

.services-page-hero-content h1 {
  margin: 0;

  color: #ffffff;

  font-size: clamp(42px, 5vw, 68px);

  line-height: 1.08;

  font-weight: 800;

  letter-spacing: -1.5px;

  text-shadow: 0 8px 30px rgba(0, 0, 0, 0.35);
}

.services-page-hero-content h1 strong {
  display: block;

  margin-top: 6px;

  font-weight: 800;

  background: linear-gradient(90deg, #43a9ff, #55d8e8, #43a9ff);

  background-size: 200% auto;

  -webkit-background-clip: text;
  background-clip: text;

  -webkit-text-fill-color: transparent;

  animation: servicesHeroTextFlow 4s linear infinite;
}

@keyframes servicesHeroTextFlow {
  0% {
    background-position: 0% center;
  }

  100% {
    background-position: 200% center;
  }
}

/* =====================================================
   HERO DESCRIPTION
===================================================== */

.services-page-hero-content > p {
  max-width: 720px;

  margin: 22px auto 0;

  color: rgba(220, 235, 245, 0.78);

  font-size: 16px;

  line-height: 1.8;

  font-weight: 400;
}

/* =====================================================
   BREADCRUMB
===================================================== */

.services-page-breadcrumb {
  display: flex;
  align-items: center;
  justify-content: center;

  gap: 12px;

  margin-top: 28px;
}

.services-page-breadcrumb a,
.services-page-breadcrumb strong {
  display: inline-flex;
  align-items: center;
  gap: 7px;

  font-size: 14px;

  text-decoration: none;
}

.services-page-breadcrumb a {
  color: #8fcfff;

  transition:
    color 0.3s ease,
    transform 0.3s ease;
}

.services-page-breadcrumb a:hover {
  color: #ffffff;

  transform: translateY(-2px);
}

.services-page-breadcrumb strong {
  color: #ffffff;

  font-weight: 600;
}

.services-page-breadcrumb > span {
  color: rgba(255, 255, 255, 0.35);

  font-size: 10px;
}

/* =====================================================
   DECORATIVE GLOW
===================================================== */

.services-hero-glow {
  position: absolute;

  width: 280px;
  height: 280px;

  border-radius: 50%;

  filter: blur(80px);

  opacity: 0.12;

  pointer-events: none;

  z-index: -2;
}

.services-hero-glow-one {
  left: -100px;
  top: 80px;

  background: #2196f3;

  animation: servicesGlowMoveOne 8s ease-in-out infinite;
}

.services-hero-glow-two {
  right: -100px;
  bottom: -100px;

  background: #00bcd4;

  animation: servicesGlowMoveTwo 10s ease-in-out infinite;
}

@keyframes servicesGlowMoveOne {
  0%,
  100% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(50px, -30px);
  }
}

@keyframes servicesGlowMoveTwo {
  0%,
  100% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(-50px, -40px);
  }
}

/* =====================================================
   CIRCUIT LINES
===================================================== */

.services-hero-line {
  position: absolute;

  height: 1px;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(55, 170, 235, 0.45),
    transparent
  );

  opacity: 0.6;

  pointer-events: none;

  z-index: -1;
}

.services-hero-line-one {
  width: 280px;

  left: -60px;
  top: 35%;

  transform: rotate(-18deg);

  animation: servicesLineMoveOne 6s ease-in-out infinite;
}

.services-hero-line-two {
  width: 330px;

  right: -90px;
  bottom: 28%;

  transform: rotate(18deg);

  animation: servicesLineMoveTwo 7s ease-in-out infinite;
}

@keyframes servicesLineMoveOne {
  0%,
  100% {
    opacity: 0.25;
    transform: translateX(0) rotate(-18deg);
  }

  50% {
    opacity: 0.8;
    transform: translateX(35px) rotate(-18deg);
  }
}

@keyframes servicesLineMoveTwo {
  0%,
  100% {
    opacity: 0.25;
    transform: translateX(0) rotate(18deg);
  }

  50% {
    opacity: 0.8;
    transform: translateX(-35px) rotate(18deg);
  }
}

/* =====================================================
   DECORATIVE DOTS
===================================================== */

.services-hero-dot {
  position: absolute;

  width: 6px;
  height: 6px;

  border-radius: 50%;

  background: #39aaf5;

  box-shadow: 0 0 12px rgba(57, 170, 245, 0.9);

  pointer-events: none;

  z-index: -1;
}

.services-hero-dot-one {
  top: 22%;
  left: 13%;

  animation: servicesDotFloat 4s ease-in-out infinite;
}

.services-hero-dot-two {
  right: 15%;
  top: 35%;

  animation: servicesDotFloat 5s ease-in-out infinite 1s;
}

.services-hero-dot-three {
  bottom: 18%;
  left: 24%;

  animation: servicesDotFloat 4.5s ease-in-out infinite 0.5s;
}

@keyframes servicesDotFloat {
  0%,
  100% {
    transform: translateY(0) scale(1);

    opacity: 0.45;
  }

  50% {
    transform: translateY(-15px) scale(1.4);

    opacity: 1;
  }
}

/* =====================================================
   BOTTOM GLOW
===================================================== */

.services-hero-bottom-glow {
  position: absolute;

  left: 50%;
  bottom: -100px;

  width: 70%;
  height: 150px;

  transform: translateX(-50%);

  background: radial-gradient(
    ellipse,
    rgba(38, 150, 243, 0.15),
    transparent 70%
  );

  filter: blur(20px);

  pointer-events: none;
}

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

@media (max-width: 991px) {
  .services-page-hero {
    min-height: 360px;
  }

  .services-page-hero-container {
    padding: 65px 25px;
  }

  .services-page-hero-content h1 {
    font-size: clamp(38px, 7vw, 55px);
  }

  .services-page-hero-content > p {
    font-size: 15px;
  }
}

@media (max-width: 767px) {
  .services-page-hero {
    min-height: 340px;
  }

  .services-page-hero-container {
    padding: 60px 20px;
  }

  .services-page-hero-tag {
    font-size: 10px;

    letter-spacing: 1.2px;

    padding: 8px 13px;
  }

  .services-page-hero-content h1 {
    font-size: 36px;

    letter-spacing: -0.8px;
  }

  .services-page-hero-content h1 strong {
    margin-top: 4px;
  }

  .services-page-hero-content > p {
    font-size: 14px;

    line-height: 1.7;

    margin-top: 17px;
  }

  .services-page-breadcrumb {
    margin-top: 22px;

    gap: 9px;
  }

  .services-page-breadcrumb a,
  .services-page-breadcrumb strong {
    font-size: 13px;
  }

  .services-hero-line,
  .services-hero-dot {
    display: none;
  }
}

@media (max-width: 480px) {
  .services-page-hero {
    min-height: 325px;
  }

  .services-page-hero-container {
    padding: 55px 16px;
  }

  .services-page-hero-tag {
    max-width: 95%;

    font-size: 9px;

    letter-spacing: 0.9px;

    white-space: nowrap;
  }

  .services-page-hero-content h1 {
    font-size: 31px;

    line-height: 1.15;
  }

  .services-page-hero-content > p {
    font-size: 13px;

    line-height: 1.65;
  }

  .services-page-breadcrumb {
    margin-top: 19px;
  }
}

/* =====================================================
   PCB REPAIR JOURNEY
===================================================== */

.pcb-repair-journey {
  position: relative;
  padding: 110px 0 100px;
  background: #ffffff;
  overflow: hidden;
  isolation: isolate;
}

/* =====================================================
   BACKGROUND
===================================================== */

.journey-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: -1;
}

.journey-grid {
  position: absolute;
  inset: 0;

  background-image:
    linear-gradient(rgba(1, 129, 73, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(1, 129, 73, 0.035) 1px, transparent 1px);

  background-size: 55px 55px;

  animation: journeyGridMove 22s linear infinite;
}

@keyframes journeyGridMove {
  0% {
    background-position: 0 0;
  }

  100% {
    background-position: 55px 55px;
  }
}

/* =====================================================
   GLOW
===================================================== */

.journey-glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.journey-glow-left {
  width: 320px;
  height: 320px;
  left: -180px;
  top: 25%;
  background: rgba(1, 129, 73, 0.08);
  animation: journeyGlowMove 8s ease-in-out infinite;
}

.journey-glow-right {
  width: 360px;
  height: 360px;
  right: -200px;
  bottom: 5%;
  background: rgba(0, 16, 100, 0.07);
  animation: journeyGlowMove 10s ease-in-out infinite reverse;
}

@keyframes journeyGlowMove {
  0%,
  100% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(30px, -25px);
  }
}

/* =====================================================
   FLOATING PARTICLES
===================================================== */

.journey-particle {
  position: absolute;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #018149;
  box-shadow: 0 0 15px rgba(1, 129, 73, 0.5);
  animation: journeyParticleFloat 4s ease-in-out infinite;
}

.journey-particle-1 {
  left: 8%;
  top: 20%;
}

.journey-particle-2 {
  left: 28%;
  bottom: 15%;
  animation-delay: 1s;
}

.journey-particle-3 {
  right: 18%;
  top: 17%;
  animation-delay: 2s;
}

.journey-particle-4 {
  right: 8%;
  bottom: 25%;
  animation-delay: 3s;
}

@keyframes journeyParticleFloat {
  0%,
  100% {
    transform: translateY(0);
    opacity: 0.35;
  }

  50% {
    transform: translateY(-18px);
    opacity: 1;
  }
}

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

.journey-heading {
  max-width: 760px;
  margin: 0 auto 85px;
  text-align: center;
}

.journey-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;

  padding: 8px 16px;
  margin-bottom: 18px;

  border: 1px solid rgba(1, 129, 73, 0.18);
  border-radius: 30px;

  background: rgba(1, 129, 73, 0.05);

  color: #018149;

  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.6px;
}

.journey-eyebrow i {
  font-size: 13px;
}

.journey-heading h2 {
  margin: 0 0 18px;

  color: #010a35;

  font-size: clamp(35px, 4vw, 54px);
  line-height: 1.12;
  font-weight: 800;
}

.journey-heading h2 span {
  display: block;
  color: #018149;
}

.journey-heading p {
  max-width: 680px;
  margin: auto;

  color: #687386;

  font-size: 15px;
  line-height: 1.8;
}

/* =====================================================
   TIMELINE
===================================================== */

.journey-timeline {
  position: relative;

  display: grid;
  grid-template-columns: repeat(5, 1fr);

  min-height: 410px;

  max-width: 1250px;
  margin: 0 auto;
}

/* =====================================================
   MAIN LINE
===================================================== */

.journey-line {
  position: absolute;

  top: 50%;
  left: 4%;
  right: 4%;

  height: 4px;

  transform: translateY(-50%);

  z-index: 1;
}

.journey-line-base {
  position: absolute;
  inset: 0;

  border-radius: 10px;

  background: #e5ece9;
}

.journey-line-progress {
  position: absolute;
  inset: 0;

  width: 100%;

  border-radius: 10px;

  background: linear-gradient(90deg, #018149, #001064, #018149);

  background-size: 200% 100%;

  animation: journeyLineFlow 4s linear infinite;
}

@keyframes journeyLineFlow {
  0% {
    background-position: 0 0;
  }

  100% {
    background-position: 200% 0;
  }
}

/* =====================================================
   ENERGY PULSE
===================================================== */

.journey-energy {
  position: absolute;

  top: 50%;
  left: 0;

  width: 70px;
  height: 4px;

  transform: translateY(-50%);

  background: linear-gradient(90deg, transparent, #ffffff, transparent);

  filter: blur(1px);

  animation: journeyEnergyMove 3s linear infinite;
}

@keyframes journeyEnergyMove {
  0% {
    left: -80px;
    opacity: 0;
  }

  15% {
    opacity: 1;
  }

  85% {
    opacity: 1;
  }

  100% {
    left: 100%;
    opacity: 0;
  }
}

/* =====================================================
   STEP
===================================================== */

.journey-step {
  position: relative;

  display: flex;
  flex-direction: column;

  align-items: center;

  z-index: 3;
}

/* TOP */

.journey-step-top {
  justify-content: flex-start;
  padding-bottom: 205px;
}

/* BOTTOM */

.journey-step-bottom {
  justify-content: flex-end;
  padding-top: 205px;
}

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

.journey-step-content {
  width: 185px;

  text-align: center;

  transition: 0.4s ease;
}

.journey-step:hover .journey-step-content {
  transform: translateY(-7px);
}

.journey-step-bottom:hover .journey-step-content {
  transform: translateY(7px);
}

.journey-step-label {
  display: block;

  margin-bottom: 10px;

  color: #018149;

  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.5px;
}

/* =====================================================
   ICON
===================================================== */

.journey-icon {
  width: 64px;
  height: 64px;

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

  margin: 0 auto 15px;

  border-radius: 50%;

  background: #ffffff;

  border: 2px solid #018149;

  color: #018149;

  font-size: 22px;

  box-shadow:
    0 0 0 7px rgba(1, 129, 73, 0.06),
    0 10px 25px rgba(1, 10, 53, 0.1);

  transition: 0.4s ease;
}

.journey-step:hover .journey-icon {
  background: #018149;
  color: #ffffff;

  transform: scale(1.12) rotate(8deg);

  box-shadow:
    0 0 0 10px rgba(1, 129, 73, 0.08),
    0 0 30px rgba(1, 129, 73, 0.25);
}

/* =====================================================
   TEXT
===================================================== */

.journey-step-content h3 {
  margin: 0 0 8px;

  color: #010a35;

  font-size: 18px;
  font-weight: 800;
}

.journey-step-content p {
  margin: 0;

  color: #718092;

  font-size: 12px;
  line-height: 1.65;
}

/* =====================================================
   NODE
===================================================== */

.journey-node {
  position: absolute;

  left: 50%;

  width: 25px;
  height: 25px;

  transform: translateX(-50%);

  border-radius: 50%;

  background: #ffffff;

  border: 3px solid #018149;

  box-shadow: 0 0 0 6px rgba(1, 129, 73, 0.08);

  transition: 0.4s ease;

  z-index: 5;
}

/* TOP NODE */

.journey-step-top .journey-node {
  bottom: 50%;

  margin-bottom: -12px;
}

/* BOTTOM NODE */

.journey-step-bottom .journey-node {
  top: 50%;

  margin-top: -12px;
}

/* NODE INNER */

.journey-node span {
  position: absolute;

  width: 7px;
  height: 7px;

  top: 50%;
  left: 50%;

  transform: translate(-50%, -50%);

  border-radius: 50%;

  background: #018149;

  animation: journeyNodePulse 1.8s ease-in-out infinite;
}

@keyframes journeyNodePulse {
  0%,
  100% {
    transform: translate(-50%, -50%) scale(1);
    box-shadow: 0 0 0 rgba(1, 129, 73, 0);
  }

  50% {
    transform: translate(-50%, -50%) scale(1.5);
    box-shadow: 0 0 12px rgba(1, 129, 73, 0.55);
  }
}

.journey-step:hover .journey-node {
  transform: translateX(-50%) scale(1.25);
  background: #018149;
}

.journey-step:hover .journey-node span {
  background: #ffffff;
}

/* =====================================================
   BOTTOM MESSAGE
===================================================== */

.journey-bottom {
  display: flex;
  align-items: center;

  max-width: 850px;

  margin: 70px auto 0;
  padding: 20px 25px;

  gap: 18px;

  border-left: 4px solid #018149;

  background: #f6f7f8;

  box-shadow: 0 12px 35px rgba(1, 10, 53, 0.06);
}

.journey-bottom-icon {
  width: 48px;
  height: 48px;

  flex: 0 0 48px;

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

  border-radius: 12px;

  background: #018149;
  color: #ffffff;

  font-size: 19px;
}

.journey-bottom strong {
  display: block;

  margin-bottom: 4px;

  color: #010a35;

  font-size: 15px;
}

.journey-bottom p {
  margin: 0;

  color: #697586;

  font-size: 13px;
}

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

@media (max-width: 991px) {
  .pcb-repair-journey {
    padding: 85px 0;
  }

  .journey-heading {
    margin-bottom: 60px;
  }

  .journey-timeline {
    grid-template-columns: repeat(3, 1fr);
    min-height: auto;
    gap: 50px 20px;
  }

  .journey-line {
    display: none;
  }

  .journey-step-top,
  .journey-step-bottom {
    padding: 0;
    justify-content: flex-start;
  }

  .journey-node {
    display: none;
  }

  .journey-step-content {
    width: 100%;
    max-width: 220px;
  }

  .journey-step-bottom:hover .journey-step-content,
  .journey-step:hover .journey-step-content {
    transform: translateY(-7px);
  }
}

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

@media (max-width: 767px) {
  .pcb-repair-journey {
    padding: 70px 0;
  }

  .journey-heading {
    margin-bottom: 45px;
  }

  .journey-heading h2 {
    font-size: 34px;
  }

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

  .journey-timeline {
    grid-template-columns: 1fr;
    gap: 35px;
  }

  .journey-step-content {
    max-width: 300px;
  }

  .journey-icon {
    width: 60px;
    height: 60px;
  }

  .journey-bottom {
    align-items: flex-start;
    padding: 18px;
    margin-top: 45px;
  }
}

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

@media (max-width: 480px) {
  .pcb-repair-journey {
    padding: 55px 0;
  }

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

  .journey-eyebrow {
    font-size: 9px;
  }

  .journey-step-content h3 {
    font-size: 17px;
  }

  .journey-step-content p {
    font-size: 12px;
  }

  .journey-bottom {
    gap: 12px;
  }

  .journey-bottom-icon {
    width: 43px;
    height: 43px;
    flex-basis: 43px;
    font-size: 16px;
  }

  .journey-bottom strong {
    font-size: 14px;
  }

  .journey-bottom p {
    font-size: 12px;
  }
}

/* =====================================================
   FINAL SERVICE CTA
===================================================== */

.service-final-cta {
  position: relative;
  width: 100%;
  padding: 110px 0;
  overflow: hidden;

  background: #f6f7f8;

  isolation: isolate;
}

/* =====================================================
   BACKGROUND
===================================================== */

.service-final-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: -1;
}

/* Animated Grid */

.final-grid {
  position: absolute;
  inset: 0;

  background-image:
    linear-gradient(rgba(1, 129, 73, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(1, 129, 73, 0.045) 1px, transparent 1px);

  background-size: 55px 55px;

  animation: finalGridMove 20s linear infinite;
}

@keyframes finalGridMove {
  0% {
    background-position: 0 0;
  }

  100% {
    background-position: 55px 55px;
  }
}

/* =====================================================
   GLOW
===================================================== */

.final-glow {
  position: absolute;

  width: 420px;
  height: 420px;

  border-radius: 50%;

  filter: blur(90px);

  opacity: 0.12;

  animation: finalGlowMove 7s ease-in-out infinite alternate;
}

.final-glow-one {
  top: -180px;
  left: -100px;
  background: #018149;
}

.final-glow-two {
  right: -160px;
  bottom: -180px;
  background: #001064;
  animation-delay: 2s;
}

@keyframes finalGlowMove {
  from {
    transform: translate(0, 0) scale(1);
  }

  to {
    transform: translate(40px, 30px) scale(1.15);
  }
}

/* =====================================================
   CIRCUIT DECORATION
===================================================== */

.final-circuit {
  position: absolute;

  height: 1px;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(1, 129, 73, 0.35),
    transparent
  );

  transform-origin: left center;

  animation: circuitMove 5s ease-in-out infinite;
}

.final-circuit-one {
  width: 420px;
  top: 25%;
  left: -80px;
  transform: rotate(18deg);
}

.final-circuit-two {
  width: 500px;
  right: -100px;
  bottom: 25%;
  transform: rotate(-20deg);
  animation-delay: 2s;
}

@keyframes circuitMove {
  0%,
  100% {
    opacity: 0.25;
    transform: scaleX(0.7) rotate(18deg);
  }

  50% {
    opacity: 0.8;
    transform: scaleX(1) rotate(18deg);
  }
}

/* =====================================================
   CIRCUIT NODES
===================================================== */

.final-node {
  position: absolute;

  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #018149;

  box-shadow:
    0 0 0 5px rgba(1, 129, 73, 0.08),
    0 0 20px rgba(1, 129, 73, 0.45);

  animation: finalNodePulse 2.5s ease-in-out infinite;
}

.final-node-one {
  top: 18%;
  left: 15%;
}

.final-node-two {
  top: 70%;
  left: 7%;
  animation-delay: 0.6s;
}

.final-node-three {
  top: 25%;
  right: 12%;
  animation-delay: 1s;
}

.final-node-four {
  bottom: 15%;
  right: 18%;
  animation-delay: 1.5s;
}

@keyframes finalNodePulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.4;
  }

  50% {
    transform: scale(1.8);
    opacity: 1;
  }
}

/* =====================================================
   MAIN INNER
===================================================== */

.service-final-inner {
  position: relative;

  max-width: 1400px;
  margin: 0 auto;

  min-height: 520px;

  display: grid;
  grid-template-columns: 1.15fr 0.85fr;

  align-items: center;

  gap: 70px;

  padding: 70px 75px;

  background: rgba(255, 255, 255, 0.78);

  border: 1px solid rgba(1, 129, 73, 0.12);

  border-radius: 28px;

  box-shadow: 0 25px 70px rgba(1, 10, 53, 0.08);

  overflow: hidden;
}

/* Top animated border */

.service-final-inner::before {
  content: "";

  position: absolute;

  top: 0;
  left: 0;

  width: 100%;
  height: 3px;

  background: linear-gradient(
    90deg,
    transparent,
    #018149,
    #001064,
    #018149,
    transparent
  );

  background-size: 250% 100%;

  animation: finalBorderFlow 5s linear infinite;
}

@keyframes finalBorderFlow {
  0% {
    background-position: 250% 0;
  }

  100% {
    background-position: -250% 0;
  }
}

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

.service-final-content {
  position: relative;
  z-index: 2;
}

.service-final-tag {
  display: inline-flex;

  align-items: center;
  gap: 9px;

  margin-bottom: 20px;

  font-size: 13px;
  font-weight: 800;

  letter-spacing: 2px;

  color: #018149;
}

.service-final-tag span {
  width: 28px;
  height: 2px;

  background: #018149;

  position: relative;
}

.service-final-tag span::after {
  content: "";

  position: absolute;

  left: 0;
  top: -3px;

  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #018149;

  animation: finalTagDot 2s ease-in-out infinite;
}

@keyframes finalTagDot {
  0%,
  100% {
    transform: translateX(0);
  }

  50% {
    transform: translateX(21px);
  }
}

/* Heading */

.service-final-content h2 {
  margin: 0 0 22px;

  max-width: 700px;

  font-size: clamp(38px, 4vw, 62px);

  line-height: 1.08;

  font-weight: 800;

  color: #010a35;
}

.service-final-content h2 strong {
  display: block;

  color: #018149;

  font-weight: 800;
}

/* Paragraph */

.service-final-content > p {
  max-width: 680px;

  margin-bottom: 28px;

  color: #5d6573;

  font-size: 16px;

  line-height: 1.8;
}

/* =====================================================
   POINTS
===================================================== */

.service-final-points {
  display: flex;
  flex-wrap: wrap;

  gap: 14px 28px;

  margin-bottom: 35px;
}

.service-final-points div {
  display: flex;
  align-items: center;

  gap: 9px;

  font-size: 14px;
  font-weight: 700;

  color: #010a35;
}

.service-final-points i {
  color: #018149;

  font-size: 17px;
}

/* =====================================================
   ACTIONS
===================================================== */

.service-final-actions {
  display: flex;
  align-items: center;

  gap: 20px;

  flex-wrap: wrap;
}

.service-final-btn {
  position: relative;

  display: inline-flex;

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

  gap: 18px;

  padding: 16px 25px;

  color: #ffffff;

  background: #018149;

  border-radius: 10px;

  font-size: 15px;
  font-weight: 700;

  text-decoration: none;

  overflow: hidden;

  transition:
    transform 0.35s ease,
    box-shadow 0.35s ease;
}

.service-final-btn::before {
  content: "";

  position: absolute;

  top: 0;
  left: -120%;

  width: 80%;
  height: 100%;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.3),
    transparent
  );

  transform: skewX(-25deg);

  transition: left 0.6s ease;
}

.service-final-btn:hover::before {
  left: 140%;
}

.service-final-btn:hover {
  color: #ffffff;

  transform: translateY(-4px);

  box-shadow: 0 14px 30px rgba(1, 129, 73, 0.25);
}

.service-final-btn i {
  transition: transform 0.3s ease;
}

.service-final-btn:hover i {
  transform: translateX(6px);
}

/* Phone */

.service-final-phone {
  display: flex;

  align-items: center;

  gap: 12px;

  color: #010a35;

  text-decoration: none;
}

.service-final-phone > i {
  width: 48px;
  height: 48px;

  display: flex;

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

  border-radius: 50%;

  color: #018149;

  background: rgba(1, 129, 73, 0.09);

  transition: 0.3s ease;
}

.service-final-phone:hover > i {
  color: #ffffff;

  background: #018149;

  transform: rotate(12deg);
}

.service-final-phone span {
  display: flex;

  flex-direction: column;

  gap: 2px;
}

.service-final-phone small {
  font-size: 11px;

  color: #747b87;
}

.service-final-phone strong {
  font-size: 16px;

  color: #010a35;
}

/* =====================================================
   RIGHT VISUAL
===================================================== */

.service-final-visual {
  position: relative;

  min-height: 390px;

  display: flex;

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

  flex-direction: column;
}

/* Main Circle */

.final-tech-circle {
  position: relative;

  width: 280px;
  height: 280px;

  display: flex;

  align-items: center;
  justify-content: center;
}

/* Rings */

.final-ring {
  position: absolute;

  border-radius: 50%;

  border: 1px dashed rgba(1, 129, 73, 0.35);
}

.final-ring-one {
  width: 280px;
  height: 280px;

  animation: finalRotate 18s linear infinite;
}

.final-ring-two {
  width: 220px;
  height: 220px;

  border-color: rgba(0, 16, 100, 0.3);

  animation: finalRotateReverse 12s linear infinite;
}

@keyframes finalRotate {
  to {
    transform: rotate(360deg);
  }
}

@keyframes finalRotateReverse {
  to {
    transform: rotate(-360deg);
  }
}

/* Chip */

.final-chip {
  position: relative;

  width: 125px;
  height: 125px;

  display: flex;

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

  border-radius: 18px;

  background: linear-gradient(145deg, #010a35, #001064);

  color: #ffffff;

  box-shadow: 0 20px 50px rgba(0, 16, 100, 0.25);

  animation: chipFloat 4s ease-in-out infinite;
}

.final-chip i {
  font-size: 48px;

  color: #018149;

  filter: drop-shadow(0 0 15px rgba(1, 129, 73, 0.5));
}

@keyframes chipFloat {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-12px);
  }
}

/* Chip Lines */

.chip-line {
  position: absolute;

  width: 20px;
  height: 2px;

  background: #018149;
}

.chip-line-one {
  left: -20px;
  top: 30px;
}

.chip-line-two {
  right: -20px;
  top: 70px;
}

.chip-line-three {
  left: 30px;
  bottom: -20px;

  width: 2px;
  height: 20px;
}

.chip-line-four {
  right: 30px;
  top: -20px;

  width: 2px;
  height: 20px;
}

/* =====================================================
   PULSE DOTS
===================================================== */

.chip-pulse {
  position: absolute;

  width: 9px;
  height: 9px;

  border-radius: 50%;

  background: #018149;

  box-shadow: 0 0 0 0 rgba(1, 129, 73, 0.5);

  animation: chipPulse 2s infinite;
}

.pulse-one {
  top: 15px;
  right: 35px;
}

.pulse-two {
  bottom: 25px;
  left: 20px;

  animation-delay: 0.6s;
}

.pulse-three {
  right: 5px;
  bottom: 80px;

  animation-delay: 1.1s;
}

@keyframes chipPulse {
  0% {
    box-shadow: 0 0 0 0 rgba(1, 129, 73, 0.5);
  }

  70% {
    box-shadow: 0 0 0 14px rgba(1, 129, 73, 0);
  }

  100% {
    box-shadow: 0 0 0 0 rgba(1, 129, 73, 0);
  }
}

/* Visual Text */

.final-visual-text {
  margin-top: 15px;

  text-align: center;
}

.final-visual-text span {
  display: block;

  font-size: 12px;

  letter-spacing: 4px;

  color: #018149;

  font-weight: 700;
}

.final-visual-text strong {
  display: block;

  font-size: 25px;

  letter-spacing: 4px;

  color: #010a35;
}

.final-visual-text small {
  display: block;

  margin-top: 3px;

  font-size: 10px;

  letter-spacing: 3px;

  color: #777f8b;
}

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

@media (max-width: 1199px) {
  .service-final-inner {
    padding: 60px 45px;

    gap: 40px;
  }

  .final-tech-circle {
    width: 250px;
    height: 250px;
  }

  .final-ring-one {
    width: 250px;
    height: 250px;
  }

  .final-ring-two {
    width: 195px;
    height: 195px;
  }
}

@media (max-width: 991px) {
  .service-final-cta {
    padding: 80px 0;
  }

  .service-final-inner {
    grid-template-columns: 1fr;

    text-align: center;

    padding: 55px 35px;
  }

  .service-final-content > p {
    margin-left: auto;
    margin-right: auto;
  }

  .service-final-points {
    justify-content: center;
  }

  .service-final-actions {
    justify-content: center;
  }

  .service-final-visual {
    min-height: 350px;
  }
}

@media (max-width: 767px) {
  .service-final-cta {
    padding: 60px 0;
  }

  .service-final-inner {
    margin: 0 12px;

    padding: 45px 22px;

    border-radius: 20px;
  }

  .service-final-content h2 {
    font-size: 36px;
  }

  .service-final-content > p {
    font-size: 15px;
    line-height: 1.7;
  }

  .service-final-points {
    flex-direction: column;

    align-items: center;

    gap: 10px;
  }

  .service-final-actions {
    flex-direction: column;

    width: 100%;
  }

  .service-final-btn {
    width: 100%;
  }

  .service-final-phone {
    justify-content: center;
  }

  .final-tech-circle {
    width: 220px;
    height: 220px;
  }

  .final-ring-one {
    width: 220px;
    height: 220px;
  }

  .final-ring-two {
    width: 175px;
    height: 175px;
  }

  .final-chip {
    width: 105px;
    height: 105px;
  }

  .final-chip i {
    font-size: 40px;
  }
}

@media (max-width: 480px) {
  .service-final-inner {
    padding: 40px 18px;
  }

  .service-final-content h2 {
    font-size: 31px;
  }

  .service-final-tag {
    font-size: 11px;
    letter-spacing: 1.5px;
  }

  .final-tech-circle {
    width: 190px;
    height: 190px;
  }

  .final-ring-one {
    width: 190px;
    height: 190px;
  }

  .final-ring-two {
    width: 150px;
    height: 150px;
  }

  .final-chip {
    width: 90px;
    height: 90px;
  }

  .final-chip i {
    font-size: 34px;
  }

  .final-visual-text strong {
    font-size: 21px;
  }
}


/* privacy */
/* =========================================================
   PSX PRIVACY POLICY PAGE
========================================================= */

.psx-privacy-hero {
    position: relative;
    min-height: 390px;
    display: flex;
    align-items: center;
    display:flex;
    justify-content:center;
    overflow: hidden;
    isolation: isolate;

    background:
        linear-gradient(
            135deg,
            #07121d 0%,
            #0b1d2d 45%,
            #07131f 100%
        );
}


/* Background */

.psx-privacy-hero-bg {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(
            circle at 15% 50%,
            rgba(1, 129, 73, 0.20),
            transparent 30%
        ),
        radial-gradient(
            circle at 85% 25%,
            rgba(0, 16, 100, 0.28),
            transparent 30%
        );
    z-index: -5;
}


.psx-privacy-grid {
    position: absolute;
    inset: 0;

    background-image:
        linear-gradient(
            rgba(1, 129, 73, 0.055) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(1, 129, 73, 0.055) 1px,
            transparent 1px
        );

    background-size: 55px 55px;

    opacity: .65;

    animation: psxPrivacyGridMove 18s linear infinite;

    z-index: -4;
}


@keyframes psxPrivacyGridMove {

    from {
        background-position: 0 0;
    }

    to {
        background-position: 55px 55px;
    }

}


/* Glow */

.psx-privacy-glow {
    position: absolute;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    filter: blur(60px);
    pointer-events: none;
    z-index: -3;
}

.psx-privacy-glow-one {
    left: -100px;
    top: 40px;
    background: rgba(1, 129, 73, .15);
    animation: psxPrivacyGlow 5s ease-in-out infinite alternate;
}

.psx-privacy-glow-two {
    right: -100px;
    bottom: -100px;
    background: rgba(0, 16, 100, .20);
    animation: psxPrivacyGlow 6s ease-in-out infinite alternate-reverse;
}


@keyframes psxPrivacyGlow {

    from {
        transform: scale(.85);
        opacity: .45;
    }

    to {
        transform: scale(1.15);
        opacity: .85;
    }

}


/* Circuit decoration */

.psx-privacy-circuit {
    position: absolute;
    width: 130px;
    height: 130px;
    border: 1px solid rgba(1, 129, 73, .22);
    opacity: .7;
}

.psx-circuit-one {
    right: 8%;
    top: 18%;
    transform: rotate(45deg);
    animation: psxCircuitFloat 7s ease-in-out infinite;
}

.psx-circuit-two {
    left: 7%;
    bottom: 15%;
    width: 90px;
    height: 90px;
    border-radius: 50%;
    animation: psxCircuitFloat 6s ease-in-out infinite reverse;
}


@keyframes psxCircuitFloat {

    0%,
    100% {
        transform: translateY(0) rotate(45deg);
    }

    50% {
        transform: translateY(-15px) rotate(65deg);
    }

}


/* Hero Content */

.psx-privacy-hero-content {
    position: relative;
    max-width: 850px;
    margin: auto;
    padding: 65px 20px;
    text-align: center;
}


.psx-privacy-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;

    color: #55d6a0;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}


.psx-privacy-tag span {
    width: 28px;
    height: 2px;
    background: var(--primary);
    border-radius: 20px;
}


.psx-privacy-hero h1 {
    margin: 0 0 18px;
    color: #fff;
    font-size: clamp(42px, 6vw, 68px);
    font-weight: 800;
    line-height: 1.05;
}


.psx-privacy-hero h1 strong {
    color: #55d6a0;
}


.psx-privacy-hero-content > p {
    max-width: 700px;
    margin: auto;
    color: rgba(255,255,255,.72);
    font-size: 16px;
    line-height: 1.8;
}


.psx-privacy-breadcrumb {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    margin-top: 25px;
    font-size: 13px;
}


.psx-privacy-breadcrumb a {
    color: #55d6a0;
    text-decoration: none;
}


.psx-privacy-breadcrumb i {
    color: rgba(255,255,255,.35);
    font-size: 10px;
}


.psx-privacy-breadcrumb span {
    color: rgba(255,255,255,.65);
}


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

.psx-privacy-content-section {
    position: relative;
    padding: 90px 0;
    background: var(--light);
}


.psx-privacy-layout {
    width: min(1400px, 94%);
    margin: auto;

    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 55px;
    align-items: start;
}


.psx-privacy-main {
    background: var(--white);
    padding: 45px;
    border: 1px solid var(--border);
    border-radius: 24px;
    box-shadow: 0 20px 55px rgba(1, 10, 53, .06);
}


.psx-content-label {
    display: inline-block;
    margin-bottom: 12px;
    color: var(--primary);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.5px;
}


.psx-privacy-intro h2 {
    margin-bottom: 20px;
    color: var(--dark);
    font-size: 38px;
    font-weight: 800;
}


.psx-privacy-intro h2 strong {
    color: var(--primary);
}


.psx-privacy-intro p,
.psx-policy-text p {
    color: #687386;
    font-size: 15px;
    line-height: 1.85;
}


/* Policy blocks */

.psx-policy-block {
    position: relative;

    display: grid;
    grid-template-columns: 58px 1fr;
    gap: 22px;

    padding: 32px 0;

    border-bottom: 1px solid var(--border);

    transition: transform .3s ease;
}


.psx-policy-block:hover {
    transform: translateX(5px);
}


.psx-policy-number {
    width: 48px;
    height: 48px;

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

    border-radius: 14px;

    background: rgba(1,129,73,.09);
    color: var(--primary);

    font-size: 13px;
    font-weight: 800;

    transition: all .35s ease;
}


.psx-policy-block:hover .psx-policy-number {
    background: var(--primary);
    color: #fff;
    transform: rotate(-5deg) scale(1.08);
    box-shadow: 0 10px 25px rgba(1,129,73,.2);
}


.psx-policy-text h3 {
    margin-bottom: 12px;
    color: var(--dark);
    font-size: 23px;
    font-weight: 750;
}


.psx-policy-text ul {
    margin: 18px 0 0;
    padding: 0;
    list-style: none;
}


.psx-policy-text li {
    display: flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 10px;

    color: #596477;
    font-size: 14px;
}


.psx-policy-text li i {
    color: var(--primary);
    font-size: 11px;
}


/* Final note */

.psx-privacy-note {
    display: flex;
    align-items: flex-start;
    gap: 20px;

    margin-top: 35px;
    padding: 25px;

    border-radius: 18px;

    background:
        linear-gradient(
            135deg,
            rgba(1,129,73,.07),
            rgba(0,16,100,.04)
        );

    border: 1px solid rgba(1,129,73,.12);
}


.psx-note-icon {
    width: 52px;
    height: 52px;

    flex-shrink: 0;

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

    border-radius: 14px;

    background: var(--primary);
    color: #fff;

    font-size: 20px;
}


.psx-privacy-note h3 {
    margin-bottom: 7px;
    color: var(--dark);
    font-size: 19px;
}


.psx-privacy-note p {
    margin-bottom: 10px;
    color: #697386;
    font-size: 14px;
}


.psx-privacy-note a {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    color: var(--primary);
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
}


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

.psx-privacy-sidebar {
    position: sticky;
    top: 110px;
}


.psx-sidebar-card {
    position: relative;
    overflow: hidden;

    padding: 32px;

    border-radius: 22px;

    background:
        linear-gradient(
            145deg,
            var(--dark),
            #071a45
        );

    box-shadow: 0 20px 45px rgba(1,10,53,.14);
}


.psx-sidebar-card::after {
    content: "";
    position: absolute;

    width: 170px;
    height: 170px;

    right: -70px;
    top: -70px;

    border-radius: 50%;

    border: 1px solid rgba(1,129,73,.3);
    box-shadow:
        0 0 0 25px rgba(1,129,73,.04),
        0 0 0 50px rgba(1,129,73,.025);

    animation: psxSidebarPulse 4s infinite ease-in-out;
}


@keyframes psxSidebarPulse {

    0%,
    100% {
        transform: scale(.9);
        opacity: .5;
    }

    50% {
        transform: scale(1.08);
        opacity: 1;
    }

}


.psx-sidebar-icon {
    width: 58px;
    height: 58px;

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

    margin-bottom: 22px;

    border-radius: 16px;

    background: var(--primary);
    color: #fff;

    font-size: 22px;
}


.psx-sidebar-card > span,
.psx-sidebar-contact > span {
    color: #55d6a0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
}


.psx-sidebar-card h3 {
    margin: 12px 0;
    color: #fff;
    font-size: 26px;
    line-height: 1.25;
}


.psx-sidebar-card h3 strong {
    color: #55d6a0;
}


.psx-sidebar-card p {
    color: rgba(255,255,255,.65);
    font-size: 14px;
    line-height: 1.8;
}


/* Contact card */

.psx-sidebar-contact {
    margin-top: 18px;
    padding: 28px;

    background: #fff;
    border: 1px solid var(--border);
    border-radius: 20px;

    box-shadow: 0 15px 35px rgba(1,10,53,.06);
}


.psx-sidebar-contact h4 {
    margin: 8px 0 20px;
    color: var(--dark);
    font-size: 20px;
}


.psx-sidebar-contact a {
    display: flex;
    align-items: center;
    gap: 12px;

    margin-top: 12px;
    padding: 12px 14px;

    border-radius: 10px;

    background: #f7f9fa;

    color: var(--dark);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;

    transition: all .3s ease;
}


.psx-sidebar-contact a i {
    color: var(--primary);
    width: 20px;
    text-align: center;
}


.psx-sidebar-contact a:hover {
    color: #fff;
    background: var(--primary);
    transform: translateX(4px);
}


.psx-sidebar-contact a:hover i {
    color: #fff;
}


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

@media (max-width: 991px) {

    .psx-privacy-layout {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .psx-privacy-sidebar {
        position: static;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }

    .psx-sidebar-contact {
        margin-top: 0;
    }

}


@media (max-width: 767px) {

    .psx-privacy-hero {
        min-height: 350px;
    }

    .psx-privacy-hero-content {
        padding: 55px 15px;
    }

    .psx-privacy-hero h1 {
        font-size: 43px;
    }

    .psx-privacy-hero-content > p {
        font-size: 14px;
    }

    .psx-privacy-content-section {
        padding: 55px 0;
    }

    .psx-privacy-main {
        padding: 28px 20px;
        border-radius: 18px;
    }

    .psx-privacy-intro h2 {
        font-size: 29px;
    }

    .psx-policy-block {
        grid-template-columns: 45px 1fr;
        gap: 14px;
        padding: 25px 0;
    }

    .psx-policy-number {
        width: 42px;
        height: 42px;
    }

    .psx-policy-text h3 {
        font-size: 19px;
    }

    .psx-privacy-note {
        flex-direction: column;
    }

    .psx-privacy-sidebar {
        grid-template-columns: 1fr;
    }

}


@media (max-width: 480px) {

    .psx-privacy-layout {
        width: 92%;
    }

    .psx-privacy-hero h1 {
        font-size: 38px;
    }

    .psx-privacy-breadcrumb {
        font-size: 12px;
    }

    .psx-privacy-main {
        padding: 24px 17px;
    }

    .psx-policy-block {
        grid-template-columns: 1fr;
    }

    .psx-policy-number {
        width: 42px;
    }

}


/* ========================================================================================terms and conditon= */

/* =========================================================
   PSX TERMS & CONDITIONS PAGE
========================================================= */

.psx-terms-hero {
    position: relative;
    width: 100%;
    min-height: 390px;

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

    overflow: hidden;
    isolation: isolate;

    background:
        linear-gradient(
            135deg,
            #07121d 0%,
            #0b1d2d 45%,
            #07131f 100%
        );
}


/* =========================================================
   HERO BACKGROUND
========================================================= */

.psx-terms-hero-bg {
    position: absolute;
    inset: 0;

    background:
        radial-gradient(
            circle at 15% 50%,
            rgba(1,129,73,.18),
            transparent 30%
        ),
        radial-gradient(
            circle at 85% 25%,
            rgba(0,16,100,.22),
            transparent 30%
        );

    z-index: -5;
}


.psx-terms-grid {
    position: absolute;
    inset: 0;

    background-image:
        linear-gradient(
            rgba(1,129,73,.055) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(1,129,73,.055) 1px,
            transparent 1px
        );

    background-size: 55px 55px;

    opacity: .65;

    animation:
        psxTermsGridMove
        18s
        linear
        infinite;

    z-index: -4;
}


@keyframes psxTermsGridMove {

    0% {
        background-position: 0 0;
    }

    100% {
        background-position: 55px 55px;
    }

}


/* =========================================================
   HERO GLOW
========================================================= */

.psx-terms-glow {
    position: absolute;

    width: 280px;
    height: 280px;

    border-radius: 50%;

    filter: blur(65px);

    pointer-events: none;

    z-index: -3;
}


.psx-terms-glow-one {
    left: -100px;
    top: 30px;

    background: rgba(1,129,73,.15);

    animation:
        psxTermsGlow
        5s
        ease-in-out
        infinite alternate;
}


.psx-terms-glow-two {
    right: -100px;
    bottom: -120px;

    background: rgba(0,16,100,.22);

    animation:
        psxTermsGlow
        6s
        ease-in-out
        infinite alternate-reverse;
}


@keyframes psxTermsGlow {

    from {
        transform: scale(.85);
        opacity: .4;
    }

    to {
        transform: scale(1.15);
        opacity: .85;
    }

}


/* =========================================================
   CIRCUIT DECORATION
========================================================= */

.psx-terms-circuit {
    position: absolute;

    border: 1px solid rgba(1,129,73,.25);

    pointer-events: none;
}


.psx-terms-circuit-one {
    width: 125px;
    height: 125px;

    right: 8%;
    top: 18%;

    transform: rotate(45deg);

    animation:
        psxTermsCircuitFloat
        7s
        ease-in-out
        infinite;
}


.psx-terms-circuit-two {
    width: 85px;
    height: 85px;

    left: 7%;
    bottom: 15%;

    border-radius: 50%;

    animation:
        psxTermsCircuitFloatTwo
        6s
        ease-in-out
        infinite;
}


@keyframes psxTermsCircuitFloat {

    0%,
    100% {
        transform:
            translateY(0)
            rotate(45deg);
    }

    50% {
        transform:
            translateY(-15px)
            rotate(65deg);
    }

}


@keyframes psxTermsCircuitFloatTwo {

    0%,
    100% {
        transform: translateY(0) scale(.95);
    }

    50% {
        transform: translateY(-14px) scale(1.08);
    }

}


/* =========================================================
   HERO CONTENT
========================================================= */

.psx-terms-hero-content {
    max-width: 850px;

    margin: auto;

    padding:
        65px
        20px;

    text-align: center;
}


.psx-terms-tag {
    display: inline-flex;

    align-items: center;
    gap: 9px;

    margin-bottom: 18px;

    color: #55d6a0;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 2px;
}


.psx-terms-tag span {
    width: 28px;
    height: 2px;

    background: var(--primary);

    border-radius: 50px;
}


.psx-terms-hero h1 {
    margin: 0 0 18px;

    color: #fff;

    font-size:
        clamp(
            42px,
            6vw,
            68px
        );

    font-weight: 800;

    line-height: 1.05;
}


.psx-terms-hero h1 strong {
    color: #55d6a0;
}


.psx-terms-hero-content > p {
    max-width: 720px;

    margin: auto;

    color:
        rgba(
            255,
            255,
            255,
            .72
        );

    font-size: 16px;

    line-height: 1.8;
}


.psx-terms-breadcrumb {
    display: flex;

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

    gap: 12px;

    margin-top: 25px;

    font-size: 13px;
}


.psx-terms-breadcrumb a {
    color: #55d6a0;

    text-decoration: none;
}


.psx-terms-breadcrumb i {
    color: rgba(255,255,255,.35);

    font-size: 10px;
}


.psx-terms-breadcrumb span {
    color: rgba(255,255,255,.65);
}


/* =========================================================
   CONTENT SECTION
========================================================= */

.psx-terms-content-section {
    position: relative;

    padding: 90px 0;

    background: var(--light);
}


.psx-terms-layout {
    width: min(1400px, 94%);

    margin: auto;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        340px;

    gap: 55px;

    align-items: start;
}


/* =========================================================
   MAIN CONTENT
========================================================= */

.psx-terms-main {
    background: var(--white);

    padding: 45px;

    border:
        1px solid
        var(--border);

    border-radius: 24px;

    box-shadow:
        0 20px 55px
        rgba(1,10,53,.06);
}


.psx-terms-label {
    display: inline-block;

    margin-bottom: 12px;

    color: var(--primary);

    font-size: 12px;
    font-weight: 800;

    letter-spacing: 1.5px;
}


.psx-terms-intro h2 {
    margin-bottom: 20px;

    color: var(--dark);

    font-size: 38px;
    font-weight: 800;
}


.psx-terms-intro h2 strong {
    color: var(--primary);
}


.psx-terms-intro p,
.psx-terms-text p {
    color: #687386;

    font-size: 15px;

    line-height: 1.85;
}


/* =========================================================
   TERMS BLOCK
========================================================= */

.psx-terms-block {
    display: grid;

    grid-template-columns: 58px 1fr;

    gap: 22px;

    padding: 32px 0;

    border-bottom:
        1px solid
        var(--border);

    transition:
        transform .3s ease;
}


.psx-terms-block:hover {
    transform: translateX(5px);
}


.psx-terms-number {
    width: 48px;
    height: 48px;

    display: flex;

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

    border-radius: 14px;

    background:
        rgba(
            1,
            129,
            73,
            .09
        );

    color: var(--primary);

    font-size: 13px;
    font-weight: 800;

    transition:
        all .35s ease;
}


.psx-terms-block:hover
.psx-terms-number {
    background: var(--primary);

    color: #fff;

    transform:
        rotate(-5deg)
        scale(1.08);

    box-shadow:
        0 10px 25px
        rgba(1,129,73,.2);
}


.psx-terms-text h3 {
    margin-bottom: 12px;

    color: var(--dark);

    font-size: 23px;
    font-weight: 750;
}


.psx-terms-text ul {
    margin: 18px 0 0;

    padding: 0;

    list-style: none;
}


.psx-terms-text li {
    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 10px;

    color: #596477;

    font-size: 14px;
}


.psx-terms-text li i {
    color: var(--primary);

    font-size: 11px;
}


/* =========================================================
   FINAL NOTE
========================================================= */

.psx-terms-final-note {
    display: flex;

    align-items: flex-start;

    gap: 20px;

    margin-top: 35px;

    padding: 25px;

    border-radius: 18px;

    background:
        linear-gradient(
            135deg,
            rgba(1,129,73,.07),
            rgba(0,16,100,.04)
        );

    border:
        1px solid
        rgba(1,129,73,.12);
}


.psx-terms-final-icon {
    width: 52px;
    height: 52px;

    flex-shrink: 0;

    display: flex;

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

    border-radius: 14px;

    background: var(--primary);

    color: #fff;

    font-size: 20px;
}


.psx-terms-final-note h3 {
    margin-bottom: 7px;

    color: var(--dark);

    font-size: 19px;
}


.psx-terms-final-note p {
    margin-bottom: 10px;

    color: #697386;

    font-size: 14px;
}


.psx-terms-final-note a {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    color: var(--primary);

    font-size: 14px;

    font-weight: 700;

    text-decoration: none;

    transition:
        gap .3s ease;
}


.psx-terms-final-note a:hover {
    gap: 13px;
}


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

.psx-terms-sidebar {
    position: sticky;

    top: 110px;
}


.psx-terms-sidebar-card {
    position: relative;

    overflow: hidden;

    padding: 32px;

    border-radius: 22px;

    background:
        linear-gradient(
            145deg,
            var(--dark),
            #071a45
        );

    box-shadow:
        0 20px 45px
        rgba(1,10,53,.14);
}


.psx-terms-sidebar-card::after {
    content: "";

    position: absolute;

    width: 170px;
    height: 170px;

    right: -70px;
    top: -70px;

    border-radius: 50%;

    border:
        1px solid
        rgba(1,129,73,.3);

    box-shadow:
        0 0 0 25px
        rgba(1,129,73,.04),

        0 0 0 50px
        rgba(1,129,73,.025);

    animation:
        psxTermsSidebarPulse
        4s
        infinite
        ease-in-out;
}


@keyframes psxTermsSidebarPulse {

    0%,
    100% {
        transform: scale(.9);
        opacity: .5;
    }

    50% {
        transform: scale(1.08);
        opacity: 1;
    }

}


.psx-terms-sidebar-icon {
    width: 58px;
    height: 58px;

    display: flex;

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

    margin-bottom: 22px;

    border-radius: 16px;

    background: var(--primary);

    color: #fff;

    font-size: 22px;
}


.psx-terms-sidebar-card > span,
.psx-terms-contact-card > span {
    color: #55d6a0;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 1.5px;
}


.psx-terms-sidebar-card h3 {
    margin: 12px 0;

    color: #fff;

    font-size: 26px;

    line-height: 1.25;
}


.psx-terms-sidebar-card h3 strong {
    color: #55d6a0;
}


.psx-terms-sidebar-card p {
    color:
        rgba(
            255,
            255,
            255,
            .65
        );

    font-size: 14px;

    line-height: 1.8;
}


/* =========================================================
   CONTACT SIDEBAR
========================================================= */

.psx-terms-contact-card {
    margin-top: 18px;

    padding: 28px;

    background: #fff;

    border:
        1px solid
        var(--border);

    border-radius: 20px;

    box-shadow:
        0 15px 35px
        rgba(1,10,53,.06);
}


.psx-terms-contact-card h4 {
    margin: 8px 0 20px;

    color: var(--dark);

    font-size: 20px;
}


.psx-terms-contact-card a {
    display: flex;

    align-items: center;

    gap: 12px;

    margin-top: 12px;

    padding: 12px 14px;

    border-radius: 10px;

    background: #f7f9fa;

    color: var(--dark);

    font-size: 13px;

    font-weight: 600;

    text-decoration: none;

    transition:
        all .3s ease;
}


.psx-terms-contact-card a i {
    width: 20px;

    color: var(--primary);

    text-align: center;
}


.psx-terms-contact-card a:hover {
    color: #fff;

    background: var(--primary);

    transform: translateX(4px);
}


.psx-terms-contact-card a:hover i {
    color: #fff;
}


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

@media (max-width: 991px) {

    .psx-terms-layout {
        grid-template-columns: 1fr;

        gap: 30px;
    }


    .psx-terms-sidebar {
        position: static;

        display: grid;

        grid-template-columns:
            1fr 1fr;

        gap: 20px;
    }


    .psx-terms-contact-card {
        margin-top: 0;
    }

}


@media (max-width: 767px) {

    .psx-terms-hero {
        min-height: 350px;
    }


    .psx-terms-hero-content {
        padding: 55px 15px;
    }


    .psx-terms-hero h1 {
        font-size: 43px;
    }


    .psx-terms-hero-content > p {
        font-size: 14px;
    }


    .psx-terms-content-section {
        padding: 55px 0;
    }


    .psx-terms-main {
        padding: 28px 20px;

        border-radius: 18px;
    }


    .psx-terms-intro h2 {
        font-size: 29px;
    }


    .psx-terms-block {
        grid-template-columns:
            45px 1fr;

        gap: 14px;

        padding: 25px 0;
    }


    .psx-terms-number {
        width: 42px;
        height: 42px;
    }


    .psx-terms-text h3 {
        font-size: 19px;
    }


    .psx-terms-final-note {
        flex-direction: column;
    }


    .psx-terms-sidebar {
        grid-template-columns: 1fr;
    }

}


@media (max-width: 480px) {

    .psx-terms-layout {
        width: 92%;
    }


    .psx-terms-hero h1 {
        font-size: 38px;
    }


    .psx-terms-breadcrumb {
        font-size: 12px;
    }


    .psx-terms-main {
        padding: 24px 17px;
    }


    .psx-terms-block {
        grid-template-columns: 1fr;
    }


    .psx-terms-number {
        width: 42px;
    }

}