/* =========================================================
   Padhaion — Header, Top Bar, Navigation, Hero, Marquee, About
   Base styles (mobile-safe defaults + fluid scaling)
   ========================================================= */

:root {
    /* Color tokens */
    --navy: #143E14;
    --navy-deep: #0f570f;
    --navy-soft: #143E14;
    --orange: #ffc700;
    --orange-dark: #ffc700;
    --bg-wash: #f1f6fb;
    --bg-wash-2: #eaf1f9;
    --charcoal: #202b38;
    --charcoal-soft: #44484c;
    --border: #e3eaf2;
    --white: #ffffff;

    /* Reusable text tones (grayscale, derived once — use everywhere) */
    --text-muted: #414750;
    --text-soft: #8b95a3;
    --text-dark: #2b3444;

    /* Reusable radius scale */
    --radius-sm: 10px;
    --radius-md: 16px;
    --radius-lg: 24px;

    /* Reusable shadow scale */
    --shadow-sm: 0 8px 20px rgba(242, 121, 12, 0.25);
    --shadow-md: 0 16px 36px rgba(11, 24, 51, 0.14);

    /* Type */
    --font-main: "Poppins", -apple-system, BlinkMacSystemFont, sans-serif;

    /* Layout */
    --topbar-h: 38px;
    --header-h: 82px;
    --header-h-scrolled: 66px;
    --container-max: 1240px;
    --gutter: clamp(16px, 3.2vw, 24px);
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    overflow-x: clip;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
    overflow-x: clip;
    font-family: var(--font-main);
    color: var(--charcoal);
    background: var(--white);
    -webkit-font-smoothing: antialiased;
}

img,
svg {
    max-width: 100%;
}

img {
    display: block;
    height: auto;
}

a {
    text-decoration: none;
    color: inherit;
}

button {
    font-family: inherit;
}

/* Long strings (emails, URLs) never blow out a narrow viewport */
p,
a,
span,
li,
h1,
h2,
h3 {
    overflow-wrap: break-word;
}

.container-xl {
    width: 100%;
    max-width: var(--container-max);
    margin: 0 auto;
    padding-inline: var(--gutter);
    padding-left: max(var(--gutter), env(safe-area-inset-left));
    padding-right: max(var(--gutter), env(safe-area-inset-right));
}

/* Skip link for accessibility */
.skip-link {
    position: absolute;
    left: -999px;
    top: 0;
    background: var(--orange);
    color: var(--white);
    padding: 10px 18px;
    z-index: 2000;
    border-radius: 0 0 6px 0;
    font-weight: 600;
}

.skip-link:focus {
    left: 0;
}

:focus-visible {
    outline: 2px solid var(--orange);
    outline-offset: 2px;
}

/* =========================================================
   TOP INFORMATION BAR
   ========================================================= */
.topbar {
    background: var(--navy-deep);
    color: #cfe0f2;
    font-size: clamp(11.5px, 1.6vw, 13px);
    min-height: var(--topbar-h);
    display: flex;
    align-items: center;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.topbar .container-xl {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
}

.topbar-left {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 400;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

.topbar-left i {
    color: var(--orange);
    font-size: 14px;
    flex-shrink: 0;
}

.topbar-left .short-label {
    display: none;
}

.topbar-right {
    display: flex;
    align-items: center;
    gap: 10px;
    white-space: nowrap;
    flex-shrink: 0;
}

.topbar-right .item {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #cfe0f2;
    transition: color 0.2s ease;
}

.topbar-right .item i {
    color: var(--orange);
    font-size: 13px;
    flex-shrink: 0;
}

.topbar-right a.item:hover {
    color: var(--white);
}

.topbar-right .item.phone {
    font-weight: 600;
    color: #ffd9ae;
}

.topbar-sep {
    color: rgba(255, 255, 255, 0.25);
}

/* =========================================================
   MAIN STICKY HEADER
   ========================================================= */
.site-header {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
    background: #ffffff;
    border-bottom: 1px solid var(--border);
    transition:
        box-shadow 0.25s ease,
        background-color 0.25s ease;
}

.site-header.is-scrolled {
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 6px 24px rgba(7, 27, 51, 0.10);
}

.header-inner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: var(--header-h);
    gap: clamp(12px, 2vw, 24px);
    min-width: 0;
    transition: height 0.25s ease;
}

.site-header.is-scrolled .header-inner {
    height: var(--header-h-scrolled);
}

/* Logo */
.brand {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 0 0 auto;
    min-width: 0;
}

.brand-mark {
    display: block;
    width: auto;
    height: clamp(45px, 4.4vw, 70px);
    max-width: 60vw;
    object-fit: contain;
    transition: height 0.25s ease;
}

.site-header.is-scrolled .brand-mark {
    height: clamp(28px, 3.6vw, 38px);
}

/* =========================================================
   DESKTOP NAV
   ========================================================= */
.main-nav {
    display: flex;
    align-items: center;
    flex: 1 1 auto;
    justify-content: center;
    min-width: 0;
}

.main-nav>ul {
    display: flex;
    align-items: center;
    gap: 2px;
    list-style: none;
    margin: 0;
    padding: 0;
    flex-wrap: nowrap;
}

.main-nav .nav-item {
    position: relative;
}

.main-nav .nav-link {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 10px clamp(7px, 0.9vw, 14px);
    font-size: clamp(13px, 1.05vw, 14.5px);
    font-weight: 500;
    color: var(--navy);
    border-radius: 6px;
    position: relative;
    white-space: nowrap;
}

.main-nav .nav-link::after {
    content: "";
    position: absolute;
    left: clamp(7px, 0.9vw, 14px);
    right: clamp(7px, 0.9vw, 14px);
    bottom: 4px;
    height: 2px;
    background: var(--orange);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.25s ease;
}

.main-nav .nav-link:hover,
.main-nav .nav-item.active .nav-link {
    color: var(--orange);
}

.main-nav .nav-link:hover::after,
.main-nav .nav-item.active .nav-link::after {
    transform: scaleX(1);
}

.main-nav .nav-link .bi-chevron-down {
    font-size: 10px;
    transition: transform 0.2s ease;
}

.nav-item:hover .nav-link .bi-chevron-down {
    transform: rotate(180deg);
}

/* --- Dropdown --- */
.nav-dropdown {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    min-width: 210px;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 10px;
    box-shadow: 0 16px 36px rgba(11, 37, 69, 0.12);
    padding: 8px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(6px);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
    list-style: none;
    margin: 0;
    z-index: 50;
}

/* Wide menus near the right edge open leftwards so they never clip */
.nav-dropdown.nav-dropdown-end {
    left: auto;
    right: 0;
}

.nav-item:hover .nav-dropdown,
.nav-item:focus-within .nav-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.nav-dropdown li a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 12px;
    font-size: 13.5px;
    font-weight: 500;
    color: var(--charcoal);
    border-radius: 6px;
    white-space: nowrap;
}

.nav-dropdown li a i {
    color: var(--orange);
    font-size: 13px;
    width: 14px;
    flex-shrink: 0;
}

.nav-dropdown li a:hover {
    background: var(--bg-wash);
    color: var(--navy);
}

/* --- Header CTAs --- */
.header-ctas {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}

.btn-padhaion {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: clamp(13.5px, 1vw, 14px);
    font-weight: 600;
    padding: 10px clamp(14px, 1.6vw, 20px);
    border-radius: 8px;
    border: 1.5px solid transparent;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease;
    white-space: nowrap;
    cursor: pointer;
    min-height: 42px;
}

.btn-outline-navy {
    background: var(--white);
    border-color: var(--navy);
    color: var(--navy);
}

.btn-outline-navy:hover {
    background: var(--navy);
    color: var(--white);
}

.btn-orange {
    background: var(--orange);
    color: #443c3c;
    box-shadow: 0 2px 0 rgba(0, 0, 0, 0.04);
}

.btn-orange:hover {
    background: var(--orange-dark);
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(242, 121, 12, 0.28);
}

.btn-orange:active {
    transform: translateY(0);
}

/* --- Mobile toggle --- */
.nav-toggle {
    display: none;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 8px;
    border: 1.5px solid var(--border);
    background: var(--white);
    color: var(--navy);
    font-size: 20px;
    flex-shrink: 0;
    -webkit-tap-highlight-color: transparent;
}

.nav-toggle:hover {
    border-color: var(--navy);
}

/* =========================================================
   MOBILE OFF-CANVAS NAV
   ========================================================= */
.mobile-panel {
    position: fixed;
    inset: 0;
    z-index: 1200;
    visibility: hidden;
}

.mobile-panel.is-open {
    visibility: visible;
}

.mobile-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(7, 27, 51, 0.5);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.mobile-panel.is-open .mobile-backdrop {
    opacity: 1;
}

.mobile-drawer {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: min(86%, 340px);
    background: var(--white);
    transform: translateX(100%);
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
    box-shadow: -12px 0 30px rgba(0, 0, 0, 0.15);
    padding-right: env(safe-area-inset-right);
    overscroll-behavior: contain;
}

.mobile-panel.is-open .mobile-drawer {
    transform: translateX(0);
}

.mobile-drawer-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 18px;
    border-bottom: 1px solid var(--border);
    flex-shrink: 0;
}

.mobile-drawer-logo {
    height: 30px;
    width: auto;
    object-fit: contain;
}

.mobile-close {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    border: 1.5px solid var(--border);
    background: var(--white);
    color: var(--navy);
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.mobile-nav-list {
    list-style: none;
    margin: 0;
    padding: 8px 14px 20px;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    flex: 1 1 auto;
    min-height: 0;
}

.mobile-nav-item {
    border-bottom: 1px solid var(--border);
}

.mobile-nav-list .mobile-nav-item:last-child {
    border-bottom: none;
}

/* Base link style, shared by plain <a> items */
.mobile-nav-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 8px;
    min-height: 48px;
    font-size: 15.5px;
    font-weight: 500;
    color: var(--navy);
    border-radius: 8px;
    transition: background 0.2s ease, color 0.2s ease;
}

.mobile-nav-link:hover,
.mobile-nav-link:active {
    background: var(--bg-wash);
}

/* Reset so the accordion <button> looks identical to the <a> links */
button.mobile-nav-link {
    width: 100%;
    background: transparent;
    border: none;
    text-align: left;
    cursor: pointer;
    font-family: inherit;
    -webkit-tap-highlight-color: transparent;
}

.mobile-nav-link i {
    font-size: 12px;
    transition: transform 0.25s ease, color 0.2s ease;
    color: var(--charcoal-soft);
    flex-shrink: 0;
}

/* Highlight the toggle row itself while its submenu is open */
.mobile-nav-item.open>button.mobile-nav-link {
    background: rgba(242, 121, 12, 0.08);
    color: var(--orange);
}

.mobile-nav-item.open>button.mobile-nav-link i {
    transform: rotate(180deg);
    color: var(--orange);
}

/* Submenu — smooth height animation instead of an abrupt show/hide */
.mobile-sub-wrap {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.28s ease;
}

.mobile-nav-item.open .mobile-sub-wrap {
    grid-template-rows: 1fr;
}

.mobile-sub {
    list-style: none;
    margin: 2px 0 10px 10px;
    padding: 0 0 0 14px;
    overflow: hidden;
    min-height: 0;
    border-left: 2px solid var(--border);
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.mobile-sub li a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 12px;
    min-height: 44px;
    font-size: 14px;
    color: var(--charcoal-soft);
    font-weight: 500;
    border-radius: 7px;
    transition: background 0.2s ease, color 0.2s ease;
}

.mobile-sub li a:hover,
.mobile-sub li a:active {
    background: var(--bg-wash);
    color: var(--navy);
}

.mobile-sub li a i {
    color: var(--orange);
    font-size: 13px;
    width: 15px;
    text-align: center;
    flex-shrink: 0;
}

.mobile-drawer-foot {
    padding: 14px 18px calc(20px + env(safe-area-inset-bottom));
    border-top: 1px solid var(--border);
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex-shrink: 0;
    background: var(--white);
}

.mobile-drawer-foot .btn-padhaion {
    width: 100%;
}

.mobile-call {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 15px;
    font-weight: 700;
    color: var(--navy);
    background: var(--bg-wash);
    border-radius: 8px;
    padding: 11px 14px;
    min-height: 44px;
}

.mobile-call i {
    color: var(--orange);
}

/* =========================================================
   HERO SECTION
   ========================================================= */
.hero {
    position: relative;
    background: linear-gradient(180deg, var(--bg-wash) 0%, var(--white) 100%);
    overflow: hidden;
    min-height: 640px;
    display: flex;
    align-items: center;
}

.hero-pattern {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle, rgba(11, 37, 69, 0.08) 1px, transparent 1px);
    background-size: 26px 26px;
    mask-image: linear-gradient(180deg, black, transparent 75%);
    -webkit-mask-image: linear-gradient(180deg, black, transparent 75%);
    pointer-events: none;
}

.hero-inner {
    position: relative;
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    align-items: center;
    gap: clamp(28px, 4vw, 48px);
    padding: clamp(40px, 6vw, 72px) 0;
    width: 100%;
    min-width: 0;
}

.hero-content {
    min-width: 0;
}

.hero-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: clamp(11px, 1.5vw, 12.5px);
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--orange);
    background: rgb(15 87 15);
    border: 1px solid rgba(242, 121, 12, 0.25);
    padding: 7px 14px;
    border-radius: 20px;
    margin-bottom: clamp(14px, 2.4vw, 22px);
}

.hero-eyebrow i {
    font-size: 13px;
}

.hero-heading {
    font-size: clamp(28px, 5.2vw, 50px);
    font-weight: 500;
    line-height: 1.14;
    color: var(--navy);
    letter-spacing: -0.02em;
    margin: 0 0 clamp(14px, 2.2vw, 20px);
}

.hero-heading .accent {
    color: var(--orange);
    position: relative;
}

.hero-para {
    font-size: clamp(13px, 1.6vw, 15px);
    line-height: 1.7;
    color: var(--charcoal-soft);
    max-width: 560px;
    margin: 0 0 clamp(22px, 3.4vw, 32px);
    font-weight: 400;
}

.hero-ctas {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: clamp(24px, 3.6vw, 34px);
    flex-wrap: wrap;
}

.hero-ctas .btn-padhaion {
    padding: 13px clamp(18px, 2.2vw, 26px);
    font-size: clamp(14px, 1.2vw, 15px);
    min-height: 48px;
}

.hero-trust {
    display: flex;
    align-items: center;
    gap: clamp(12px, 2.2vw, 22px);
    flex-wrap: wrap;
    margin-bottom: clamp(18px, 2.6vw, 26px);
}

.hero-trust .trust-item {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: clamp(12.5px, 1.2vw, 13.5px);
    font-weight: 600;
    color: var(--navy);
}

.hero-trust .trust-item i {
    color: var(--orange);
    font-size: 15px;
    background: rgba(242, 121, 12, 0.1);
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.hero-brandline {
    font-size: clamp(12px, 1.2vw, 13.5px);
    font-weight: 600;
    color: var(--navy-soft);
    padding-top: 18px;
    border-top: 1px solid var(--border);
    max-width: 480px;
    letter-spacing: 0.01em;
    margin-bottom: 0;
}

/* --- Hero visual --- */
.hero-visual {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
}

.hero-visual-card {
    position: relative;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 18px;
    box-shadow: 0 24px 60px rgba(11, 37, 69, 0.14);
    padding: clamp(14px, 2vw, 22px);
    width: 100%;
    max-width: 550px;
}

.hero-visual-card svg {
    width: 100%;
    height: auto;
    display: block;
}

.floating-chip {
    position: absolute;
    display: flex;
    align-items: center;
    gap: 7px;
    background: var(--white);
    border: 1px solid var(--border);
    box-shadow: 0 10px 24px rgba(11, 37, 69, 0.12);
    border-radius: 10px;
    padding: 9px 13px;
    font-size: 12.5px;
    font-weight: 600;
    color: var(--navy);
    white-space: nowrap;
}

.floating-chip i {
    color: var(--orange);
    font-size: 14px;
}

.chip-1 {
    top: -6%;
    left: -8%;
}

.chip-2 {
    bottom: 10%;
    left: -10%;
}

.chip-3 {
    top: 14%;
    right: -9%;
}

.chip-4 {
    bottom: -6%;
    right: 6%;
}

/* =========================================================
   UTILITIES
   ========================================================= */
.visually-hidden {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Lock background scroll while the drawer is open (iOS-safe) */
body.nav-open {
    overflow: hidden;
    touch-action: none;
}

@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
        scroll-behavior: auto !important;
    }
}


/* =========================================================
   MARQUEE STRIP — Padhaion (Single Row, Premium)
   ========================================================= */

.mq {
    position: relative;
    background: var(--navy-deep);
    padding: clamp(5px, 1.6vw, 6px) 0;
    overflow: hidden;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.mq-row {
    position: relative;
    overflow: hidden;
    width: 100%;
    mask-image: linear-gradient(90deg, transparent, black 8%, black 92%, transparent);
    -webkit-mask-image: linear-gradient(90deg, transparent, black 8%, black 92%, transparent);
}

.mq-track {
    display: flex;
    width: max-content;
    animation: mq-scroll 20s linear infinite;
    will-change: transform;
}

@keyframes mq-scroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

.mq-row:hover .mq-track,
.mq-row:focus-within .mq-track,
.mq-track:active {
    animation-play-state: paused;
}

/* ---------- Lists & items ---------- */
.mq-list {
    display: flex;
    align-items: center;
    gap: clamp(18px, 2.5vw, 32px);
    list-style: none;
    margin: 0;
    padding: 0 clamp(10px, 1.4vw, 16px);
    flex-shrink: 0;
}

.mq-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: clamp(10px, 1.15vw, 12px);
    font-weight: 500;
    color: #e6eefa;
    white-space: nowrap;
    letter-spacing: 0.01em;
    transition: color 0.25s ease, transform 0.25s ease;
    cursor: default;
}

/* Icon badge — circular glow background */
.mq-item i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: clamp(24px, 2.2vw, 28px);
    height: clamp(24px, 2.2vw, 28px);
    border-radius: 50%;
    background: radial-gradient(circle, rgb(248, 243, 239), rgba(255, 253, 250, 0.959));
    color: var(--orange);
    font-size: clamp(12px, 1.15vw, 14px);
    flex-shrink: 0;
    transition: transform 0.3s ease, background 0.3s ease;
}

.mq-item:hover {
    color: var(--white);
    transform: translateY(-1px);
}

.mq-item:hover i {
    transform: scale(1.2) rotate(-6deg);
    background: radial-gradient(circle, rgba(242, 121, 12, 0.4), rgba(242, 121, 12, 0.1));
}

/* Gradient dot separator */
.mq-item::after {
    content: "";
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--orange), #ffb347);
    margin-left: clamp(18px, 2.5vw, 32px);
    flex-shrink: 0;
    box-shadow: 0 0 6px rgba(242, 121, 12, 0.6);
}

/* =========================================================
   STATS SECTION — Padhaion
   Prefix: .stats-
   ========================================================= */

.stats {
    background: var(--white);
    padding: clamp(40px, 8vw, 60px) 0;
    border-top: 1px solid var(--border);
}

.stats-container {
    max-width: var(--container-max);
    margin: 0 auto;
    padding-inline: var(--gutter);
    text-align: center;
}

.stats-title {
    font-size: clamp(25px, 3vw, 35px);
    font-weight: 600;
    color: var(--navy-deep);
    letter-spacing: -0.01em;
    margin: 0 0 18px;
}

.stats-sub {
    font-size: 14.5px;
    line-height: 1.75;
    color: var(--text-muted);
    max-width: 850px;
    margin: 0 auto clamp(40px, 6vw, 64px);
}

/* ---------- Stats grid ---------- */
.stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: clamp(20px, 3.5vw, 36px);
    max-width: 980px;
    margin: 0 auto;
}

.stats-item h3 {
    display: inline-flex;
    align-items: baseline;
    margin: 0 0 8px;
    line-height: 1;
}

.stats-num {
    font-size: clamp(25px, 4vw, 35px);
    font-weight: 700;
    color: var(--navy-deep);
    letter-spacing: -0.02em;
}

.stats-plus {
    font-size: clamp(25px, 4vw, 35px);
    font-weight: 700;
    color: var(--orange);
    letter-spacing: -0.02em;
}

.stats-label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: var(--text-dark);
}

/* ---------- Divider lines between stats (desktop only) ---------- */
.stats-item {
    position: relative;
}

.stats-item:not(:last-child)::after {
    content: "";
    position: absolute;
    right: calc(clamp(24px, 4vw, 40px) / -2);
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 44px;
    background: var(--border);
}


/* =========================================================
   ABOUT SECTION — Padhaion (Reusable)
   Prefix: .about5-
   ========================================================= */

.about5 {
    background: var(--white);
    padding: clamp(20px, 5vw, 50px) 0;
}

.about5-container {
    max-width: var(--container-max);
    margin: 0 auto;
    padding-inline: var(--gutter);
    display: grid;
    grid-template-columns: 1fr 0.85fr;
    gap: clamp(40px, 6vw, 90px);
    align-items: center;
}

/* ---------- Left content ---------- */
.about5-tag {
    display: inline-block;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: #0f570f;
    background: rgb(255 199 0);
    padding: 6px 14px;
    border-radius: 999px;
    margin-bottom: 18px;
}

.about5-title {
    font-size: clamp(25px, 3.4vw, 35px);
    font-weight: 600;
    line-height: 1.3;
    color: var(--navy-deep);
    letter-spacing: -0.01em;
    margin-bottom: 18px;
}

.about5-text {
    font-size: 15px;
    line-height: 1.8;
    color: var(--text-muted);
    max-width: 600px;
    margin-bottom: 28px;
}

/* ---------- Checklist ---------- */
.about5-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-bottom: 34px;
}

.about5-list-item {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 14.5px;
    font-weight: 600;
    color: var(--text-dark);
}

.about5-list-item i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: var(--navy-deep);
    color: var(--white);
    font-size: 12px;
    flex-shrink: 0;
}

/* ---------- Button ---------- */
.about5-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--orange);
    color: #504538;
    font-weight: 700;
    font-size: 14px;
    padding: 13px 28px;
    border-radius: var(--radius-sm);
    text-decoration: none;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    box-shadow: var(--shadow-sm);
}

.about5-btn i {
    transition: transform 0.25s ease;
}

.about5-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 26px rgba(242, 121, 12, 0.32);
}

.about5-btn:hover i {
    transform: translateX(4px);
}

@media (hover: none) {
    .about5-btn:hover {
        transform: none;
        box-shadow: var(--shadow-sm);
    }
}

/* ---------- Right visual ---------- */
.about5-visual {
    position: relative;
}

.about5-img {
    border-radius: var(--radius-lg);
    overflow: hidden;
    background: var(--bg-wash);
}

.about5-img img {
    width: 100%;
    height: clamp(360px, 38vw, 520px);
    object-fit: cover;
    display: block;
}

/* Floating card */
.about5-float-card {
    position: absolute;
    left: -28px;
    bottom: 28px;
    background: var(--white);
    border-radius: var(--radius-md);
    padding: 14px 20px;
    display: flex;
    align-items: center;
    gap: 12px;
    box-shadow: var(--shadow-md);
    max-width: 240px;
}

.about5-float-icon {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: var(--navy-deep);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.about5-float-icon i {
    color: var(--orange);
    font-size: 19px;
}

.about5-float-card h4 {
    font-size: 14.5px;
    font-weight: 800;
    color: var(--navy-deep);
    margin: 0 0 2px;
}

.about5-float-card span {
    font-size: 11.5px;
    font-weight: 600;
    color: var(--text-soft);
}

/* =========================================================
   SERVICES SECTION — Padhaion
   Prefix: .services5-
   ========================================================= */

.services5 {
    position: relative;
    background: var(--bg-wash);
    padding: clamp(55px, 7vw, 90px) 0;
    overflow: hidden;
}

.services5-container {
    width: 100%;
    max-width: var(--container-max);
    margin: 0 auto;
    padding-inline: var(--gutter);
}

/* ---------- Heading ---------- */

.services5-heading {
    max-width: 760px;
    margin: 0 auto clamp(35px, 5vw, 55px);
    text-align: center;
}

.services5-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 15px;
    margin-bottom: 16px;

    background: rgba(242, 121, 12, 0.10);
    border: 1px solid rgba(242, 121, 12, 0.22);
    border-radius: 999px;

    color: var(--orange);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.services5-title {
    margin: 0 0 14px;

    color: var(--navy-deep);
    font-size: clamp(25px, 3vw, 35px);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.services5-title span {
    color: var(--orange);
}

.services5-subtitle {
    max-width: 650px;
    margin: 0 auto;

    color: var(--text-muted);
    font-size: clamp(13.5px, 1.4vw, 15px);
    line-height: 1.75;
}

/* ---------- Services Grid ---------- */

.services5-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(16px, 2vw, 24px);
}

/* ---------- Service Card ---------- */

.service5-card {
    position: relative;

    display: flex;
    flex-direction: column;

    min-width: 0;
    min-height: 245px;

    padding: clamp(20px, 2.2vw, 28px);

    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);

    box-shadow: 0 8px 24px rgba(11, 37, 69, 0.05);

    color: inherit;
    overflow: hidden;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease;
}

.service5-card::before {
    content: "";

    position: absolute;
    left: 0;
    top: 0;

    width: 100%;
    height: 3px;

    background: #0f570f;

    transform: scaleX(0);
    transform-origin: left;

    transition: transform 0.25s ease;
}

.service5-card:hover {
    transform: translateY(-6px);
    border-color: rgba(242, 121, 12, 0.25);
    box-shadow: 0 18px 40px rgba(11, 37, 69, 0.12);
}

.service5-card:hover::before {
    transform: scaleX(1);
}

/* ---------- Icon ---------- */

.service5-icon {
    width: 48px;
    height: 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 20px;

    background: rgba(242, 121, 12, 0.10);
    color: var(--orange);

    border-radius: 12px;

    font-size: 20px;

    transition:
        background 0.25s ease,
        color 0.25s ease,
        transform 0.25s ease;
}

.service5-card:hover .service5-icon {
    background: var(--orange);
    color: var(--white);
    transform: translateY(-2px);
}

/* ---------- Content ---------- */

.service5-content {
    min-width: 0;
    padding-right: 18px;
}

.service5-small {
    display: block;

    margin-bottom: 5px;

    color: var(--orange);
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: 0.08em;
}

.service5-content h3 {
    margin: 0 0 9px;

    color: var(--navy-deep);
    font-size: clamp(17px, 1.5vw, 20px);
    font-weight: 600;
    line-height: 1.3;
}

.service5-content p {
    margin: 0;

    color: var(--text-muted);
    font-size: 13px;
    line-height: 1.65;
}

/* ---------- Arrow ---------- */

.service5-arrow {
    position: absolute;
    right: 20px;
    bottom: 15px;
    width: 108px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: var(--navy-deep);
    color: var(--white);
    font-size: 13px;
    transition: background 0.25s ease, transform 0.25s ease;
}

.service5-card:hover .service5-arrow {
    background: var(--orange);
    transform: translate(2px, -2px);
    font-weight: 500;
    color: #000;
}

/* ---------- Tablet ---------- */

@media (max-width: 1100px) {
    .services5-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .service5-card {
        min-height: 225px;
    }
}

/* ---------- Mobile ---------- */

@media (max-width: 600px) {
    .services5 {
        padding: 48px 0;
    }

    .services5-heading {
        margin-bottom: 30px;
    }

    .services5-title {
        font-size: clamp(25px, 7vw, 32px);
    }

    .services5-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .service5-card {
        min-height: auto;
        padding: 20px 20px 50px 20px;
    }

    .service5-icon {
        width: 44px;
        height: 44px;
        margin-bottom: 15px;
    }

    .service5-content h3 {
        font-size: 18px;
    }

    .service5-content p {
        font-size: 13px;
        padding-right: 25px;
    }

    .service5-arrow {
        right: 18px;
        bottom: 10px;
    }
}

/* ---------- Touch Devices ---------- */

@media (hover: none) {
    .service5-card:hover {
        transform: none;
        box-shadow: 0 8px 24px rgba(11, 37, 69, 0.05);
    }

    .service5-card:hover::before {
        transform: scaleX(0);
    }

    .service5-card:hover .service5-icon {
        background: rgba(242, 121, 12, 0.10);
        color: var(--orange);
        transform: none;
    }

    .service5-card:hover .service5-arrow {
        background: var(--navy-deep);
        transform: none;
    }
}

/* ---------- Reduced Motion ---------- */

@media (prefers-reduced-motion: reduce) {

    .service5-card,
    .service5-card::before,
    .service5-icon,
    .service5-arrow {
        transition: none;
    }
}

/* =========================================================
   WHY CHOOSE PADHAION
   Prefix: .why5-
   ========================================================= */

.why5 {
    position: relative;
    background: var(--white);
    padding: clamp(55px, 7vw, 90px) 0;
    overflow: hidden;
}

.why5-container {
    width: 100%;
    max-width: var(--container-max);
    margin: 0 auto;
    padding-inline: var(--gutter);

    display: grid;
    grid-template-columns: 1fr 0.9fr;
    align-items: center;
    gap: clamp(40px, 6vw, 85px);
}

/* =========================================================
   LEFT CONTENT
   ========================================================= */

.why5-content {
    min-width: 0;
}

.why5-tag {
    display: inline-flex;
    align-items: center;

    padding: 7px 15px;
    margin-bottom: 17px;

    background: rgba(242, 121, 12, 0.10);
    border: 1px solid rgba(242, 121, 12, 0.22);
    border-radius: 999px;

    color: var(--orange);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.why5-title {
    max-width: 570px;
    margin: 0 0 17px;
    color: var(--navy-deep);
    font-size: clamp(25px, 4vw, 35px);
    font-weight: 600;
    line-height: 1.18;
    letter-spacing: -0.025em;
}

.why5-title span {
    color: var(--orange);
}

.why5-text {
    max-width: 600px;

    margin: 0 0 30px;

    color: var(--text-muted);
    font-size: 15px;
    line-height: 1.8;
}

/* =========================================================
   FEATURES
   ========================================================= */

.why5-features {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px 24px;
    margin-bottom: 30px;
}

.why5-feature {
    display: flex;
    align-items: flex-start;
    gap: 12px;

    min-width: 0;
}

.why5-icon {
    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;

    background: var(--navy-deep);
    color: var(--orange);

    border-radius: 10px;

    font-size: 17px;
}

.why5-feature h3 {
    margin: 1px 0 5px;

    color: var(--navy-deep);
    font-size: 14.5px;
    font-weight: 700;
    line-height: 1.3;
}

.why5-feature p {
    margin: 0;

    color: var(--text-muted);
    font-size: 12.5px;
    line-height: 1.6;
}

/* =========================================================
   BUTTON
   ========================================================= */

.why5-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    min-height: 46px;
    padding: 12px 23px;

    background: var(--orange);
    color: #3c3737;

    border-radius: var(--radius-sm);

    font-size: 14px;
    font-weight: 700;

    box-shadow: var(--shadow-sm);

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        background 0.25s ease;
}

.why5-btn i {
    transition: transform 0.25s ease;
}

.why5-btn:hover {
    background: var(--orange-dark);
    transform: translateY(-2px);
    box-shadow: 0 12px 26px rgba(242, 121, 12, 0.30);
}

.why5-btn:hover i {
    transform: translateX(4px);
}

/* =========================================================
   RIGHT VISUAL
   ========================================================= */

.why5-visual {
    position: relative;
    min-width: 0;
    padding: 15px 20px 30px 10px;
}

.why5-image {
    position: relative;

    overflow: hidden;

    background: var(--bg-wash);

    border-radius: var(--radius-lg);

    box-shadow: 0 20px 50px rgba(11, 37, 69, 0.12);
}

.why5-image::after {
    content: "";

    position: absolute;
    inset: 0;

    background:
        linear-gradient(180deg,
            transparent 65%,
            rgba(7, 27, 51, 0.12));

    pointer-events: none;
}

.why5-image img {
    width: 100%;
    height: clamp(250px, 40vw, 320px);
    object-fit: cover;
    display: block;

    transition: transform 0.5s ease;
}

.why5-visual:hover .why5-image img {
    transform: scale(1.025);
}

/* =========================================================
   FLOATING CARD
   ========================================================= */

.why5-card {
    position: absolute;
    left: -5px;
    bottom: 0;

    display: flex;
    align-items: center;
    gap: 12px;

    max-width: 270px;

    padding: 14px 18px;

    background: var(--white);

    border: 1px solid var(--border);
    border-radius: var(--radius-md);

    box-shadow: var(--shadow-md);
}

.why5-card-icon {
    width: 44px;
    height: 44px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;

    background: var(--navy-deep);
    color: var(--orange);

    border-radius: 12px;

    font-size: 19px;
}

.why5-card strong {
    display: block;

    margin-bottom: 3px;

    color: var(--navy-deep);
    font-size: 13.5px;
    font-weight: 800;
}

.why5-card span {
    display: block;

    color: var(--text-soft);
    font-size: 11px;
    font-weight: 600;
}

/* =========================================================
   SMALL BADGE
   ========================================================= */

.why5-badge {
    position: absolute;
    top: 0;
    right: 0;

    display: flex;
    align-items: center;
    gap: 7px;

    padding: 9px 13px;

    background: var(--navy-deep);
    color: var(--white);

    border-radius: 9px;

    font-size: 11.5px;
    font-weight: 600;

    box-shadow: 0 10px 25px rgba(7, 27, 51, 0.18);
}

.why5-badge i {
    color: var(--orange);
    font-size: 14px;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 950px) {

    .why5-container {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .why5-content {
        max-width: 760px;
        margin: 0 auto;
        text-align: center;
    }

    .why5-title,
    .why5-text {
        margin-left: auto;
        margin-right: auto;
    }

    .why5-features {
        text-align: left;
    }

    .why5-btn {
        margin-top: 2px;
    }

    .why5-visual {
        width: min(100%, 600px);
        margin: 0 auto;
    }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .why5 {
        padding: 48px 0;
    }

    .why5-container {
        gap: 38px;
    }

    .why5-title {
        font-size: clamp(27px, 8vw, 34px);
    }

    .why5-text {
        font-size: 14px;
        line-height: 1.7;
        margin-bottom: 25px;
    }

    .why5-features {
        grid-template-columns: 1fr;
        gap: 15px;
        margin-bottom: 27px;
    }

    .why5-feature {
        text-align: left;
    }

    .why5-visual {
        padding: 12px 10px 45px 8px;
    }

    .why5-image img {
        height: 360px;
    }

    .why5-card {
        left: 0;
        bottom: 5px;
        max-width: 250px;
        padding: 12px 14px;
    }

    .why5-card-icon {
        width: 40px;
        height: 40px;
        font-size: 17px;
    }

    .why5-badge {
        right: 0;
        font-size: 10.5px;
        padding: 8px 10px;
    }
}

/* =========================================================
   TOUCH DEVICES
   ========================================================= */

@media (hover: none) {

    .why5-btn:hover {
        transform: none;
        box-shadow: var(--shadow-sm);
    }

    .why5-visual:hover .why5-image img {
        transform: none;
    }
}

/* =========================================================
   STUDENT TESTIMONIALS — Padhaion
   Prefix: .testi5-
   ========================================================= */

.testi5 {
    position: relative;
    background: var(--bg-wash);
    padding: clamp(55px, 7vw, 90px) 0;
    overflow: hidden;
}

.testi5-container {
    width: 100%;
    max-width: var(--container-max);
    margin: 0 auto;
    padding-inline: var(--gutter);
}

/* ---------- Heading ---------- */

.testi5-heading {
    max-width: 760px;
    margin: 0 auto clamp(35px, 5vw, 50px);
    text-align: center;
}

.testi5-tag {
    display: inline-flex;
    padding: 7px 15px;
    margin-bottom: 16px;

    background: rgba(242, 121, 12, 0.10);
    border: 1px solid rgba(242, 121, 12, 0.22);
    border-radius: 999px;

    color: var(--orange);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.testi5-title {
    margin: 0 0 14px;
    color: var(--navy-deep);
    font-size: clamp(25px, 3vw, 35px);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.testi5-title span {
    display: block;
    color: var(--orange);
}

.testi5-subtitle {
    max-width: 650px;
    margin: 0 auto;

    color: var(--text-muted);
    font-size: 14px;
    line-height: 1.75;
}

/* =========================================================
   SLIDER
   ========================================================= */

.testi5-slider {
    position: relative;

    display: flex;
    align-items: center;
    gap: 18px;
}

.testi5-track-wrap {
    width: 100%;
    overflow: hidden;
    padding: 8px 2px 18px;
}

.testi5-track {
    display: flex;
    gap: 20px;

    width: max-content;

    transition: transform 0.45s ease;
    will-change: transform;
}

/* =========================================================
   TESTIMONIAL CARD
   ========================================================= */

.testi5-card {
    position: relative;

    width: calc((var(--container-max) - 80px) / 3);

    min-width: 0;
    min-height: 270px;

    padding: 24px;

    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);

    box-shadow: 0 8px 25px rgba(11, 37, 69, 0.06);

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.testi5-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 18px 40px rgba(11, 37, 69, 0.11);
}

/* ---------- Person ---------- */

.testi5-top {
    display: flex;
    align-items: center;
    gap: 12px;
}

.testi5-avatar {
    width: 46px;
    height: 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;

    background: var(--navy-deep);
    color: var(--orange);

    border-radius: 50%;

    font-size: 16px;
    font-weight: 700;
}

.testi5-person {
    min-width: 0;
}

.testi5-person h3 {
    margin: 0 0 3px;

    color: var(--navy-deep);
    font-size: 14px;
    font-weight: 700;
}

.testi5-person span {
    color: var(--text-soft);
    font-size: 11.5px;
    font-weight: 500;
}

.testi5-quote {
    margin-left: auto;

    color: rgba(242, 121, 12, 0.18);
    font-size: 32px;
    line-height: 1;
}

/* ---------- Stars ---------- */

.testi5-stars {
    display: flex;
    gap: 3px;

    margin: 20px 0 14px;

    color: var(--orange);
    font-size: 12px;
}

/* ---------- Review ---------- */

.testi5-text {
    margin: 0;

    color: var(--text-muted);
    font-size: 13.5px;
    line-height: 1.8;
}

/* =========================================================
   ARROWS
   ========================================================= */

.testi5-arrow {
    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;

    border: 1px solid var(--border);
    border-radius: 50%;

    background: var(--white);
    color: var(--navy-deep);

    font-size: 15px;

    cursor: pointer;

    box-shadow: 0 5px 15px rgba(11, 37, 69, 0.07);

    transition:
        background 0.25s ease,
        color 0.25s ease,
        transform 0.25s ease;
}

.testi5-arrow:hover {
    background: var(--orange);
    color: var(--white);
    border-color: var(--orange);
    transform: translateY(-2px);
}

/* =========================================================
   DOTS
   ========================================================= */

.testi5-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;

    margin-top: 10px;
}

.testi5-dots button {
    width: 7px;
    height: 7px;

    padding: 0;
    border: 0;
    border-radius: 50%;

    background: #c8d1dc;

    cursor: pointer;

    transition:
        width 0.25s ease,
        background 0.25s ease;
}

.testi5-dots button.active {
    width: 22px;
    border-radius: 10px;
    background: var(--orange);
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1100px) {

    .testi5-card {
        width: calc((100vw - 120px) / 2);
    }
}

@media (max-width: 950px) {

    .testi5-slider {
        gap: 10px;
    }

    .testi5-card {
        width: calc((100vw - 105px) / 2);
    }

    .testi5-arrow {
        width: 38px;
        height: 38px;
    }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .testi5 {
        padding: 48px 0;
    }

    .testi5-heading {
        margin-bottom: 28px;
    }

    .testi5-title {
        font-size: clamp(25px, 7vw, 32px);
    }

    .testi5-title span {
        display: inline;
    }

    .testi5-subtitle {
        font-size: 13.5px;
    }

    .testi5-slider {
        gap: 7px;
    }

    .testi5-track-wrap {
        padding-inline: 0;
    }

    .testi5-track {
        gap: 12px;
    }

    .testi5-card {
        width: calc(100vw - 76px);
        min-height: 250px;
        padding: 20px;
    }

    .testi5-arrow {
        width: 34px;
        height: 34px;

        font-size: 13px;
    }

    .testi5-text {
        font-size: 13px;
    }
}

/* =========================================================
   TOUCH DEVICES
   ========================================================= */

@media (hover: none) {

    .testi5-card:hover {
        transform: none;
        box-shadow: 0 8px 25px rgba(11, 37, 69, 0.06);
    }

    .testi5-arrow:hover {
        transform: none;
        background: var(--white);
        color: var(--navy-deep);
        border-color: var(--border);
    }
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .testi5-track,
    .testi5-card,
    .testi5-arrow,
    .testi5-dots button {
        transition: none;
    }
}


/* ===== LEARNING PROCESS — Padhaion Prefix: .process5- ===== */
.process5 {
    position: relative;
    background: var(--white);
    padding: clamp(55px, 7vw, 90px) 0;
    overflow: hidden;
}

.process5-container {
    width: 100%;
    max-width: var(--container-max);
    margin: 0 auto;
    padding-inline: var(--gutter);
}

/* ========================================================= HEADING ========================================================= */
.process5-heading {
    max-width: 760px;
    margin: 0 auto clamp(40px, 5vw, 58px);
    text-align: center;
}

.process5-tag {
    display: inline-flex;
    align-items: center;
    padding: 7px 15px;
    margin-bottom: 16px;
    background: rgba(242, 121, 12, 0.10);
    border: 1px solid rgba(242, 121, 12, 0.22);
    border-radius: 999px;
    color: var(--orange);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.process5-title {
    margin: 0 0 14px;
    color: var(--navy-deep);
    font-size: clamp(25px, 3vw, 35px);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.process5-title span {
    color: var(--orange);
}

.process5-subtitle {
    max-width: 650px;
    margin: 0 auto;
    color: var(--text-muted);
    font-size: 14px;
    line-height: 1.75;
}

/* ========================================================= PROCESS LIST ========================================================= */
.process5-list {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
    align-items: start;
    max-width: 1120px;
    margin: 0 auto;
}

/* ========================================================= PROCESS ITEM ========================================================= */
.process5-item {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    text-align: center;
}

/* ---------- Number ---------- */
.process5-number {
    position: absolute;
    top: -13px;
    right: 14%;
    color: rgba(7, 27, 51, 0.07);
    font-size: 42px;
    font-weight: 800;
    line-height: 1;
    pointer-events: none;
}

/* ---------- Icon ---------- */
.process5-icon {
    position: relative;
    z-index: 2;
    width: 68px;
    height: 68px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 22px;
    background: var(--navy-deep);
    color: var(--orange);
    border: 5px solid var(--white);
    border-radius: 50%;
    box-shadow: 0 0 0 1px var(--border), 0 10px 25px rgba(7, 27, 51, 0.10);
    font-size: 23px;
    transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

.process5-item:hover .process5-icon {
    background: var(--orange);
    color: var(--white);
    transform: translateY(-4px);
}

/* ---------- Content ---------- */
.process5-content {
    max-width: 210px;
}

.process5-content h3 {
    margin: 0 0 8px;
    color: var(--navy-deep);
    font-size: 18px;
    font-weight: 700;
}

.process5-content p {
    margin: 0;
    color: var(--text-muted);
    font-size: 12.5px;
    line-height: 1.7;
}

/* ========================================================= CONNECTOR ========================================================= */
.process5-line {
    width: clamp(35px, 5vw, 75px);
    height: 2px;
    margin-top: 34px;
    background: repeating-linear-gradient(90deg, var(--orange) 0, var(--orange) 7px, transparent 7px, transparent 13px);
    opacity: 0.55;
}

/* ========================================================= BOTTOM HIGHLIGHT ========================================================= */
.process5-bottom {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    max-width: max-content;
    margin: 48px auto 0;
    padding: 11px 18px;
    background: var(--bg-wash);
    border: 1px solid var(--border);
    border-radius: 999px;
    color: var(--navy-deep);
    font-size: 12.5px;
    font-weight: 600;
}

.process5-bottom i {
    color: var(--orange);
    font-size: 15px;
}

/* ========================================================= TABLET ========================================================= */
@media (max-width: 950px) {
    .process5-list {
        grid-template-columns: repeat(2, 1fr);
        gap: 45px 25px;
    }

    .process5-line {
        display: none;
    }

    .process5-item {
        padding: 0 10px;
    }

    .process5-content {
        max-width: 270px;
    }

    .process5-number {
        right: 22%;
    }
}

/* ========================================================= MOBILE ========================================================= */
@media (max-width: 600px) {
    .process5 {
        padding: 48px 0;
    }

    .process5-heading {
        margin-bottom: 38px;
    }

    .process5-title {
        font-size: clamp(25px, 7vw, 32px);
    }

    .process5-subtitle {
        font-size: 13.5px;
    }

    .process5-list {
        grid-template-columns: 1fr;
        gap: 0;
        max-width: 430px;
        margin: 0 auto;
    }

    .process5-item {
        display: grid;
        grid-template-columns: 60px 1fr;
        column-gap: 16px;
        padding: 0 0 35px;
        text-align: left;
    }

    .process5-item:last-child {
        padding-bottom: 0;
    }

    .process5-number {
        top: -4px;
        right: auto;
        left: 5px;
        font-size: 32px;
    }

    .process5-icon {
        width: 58px;
        height: 58px;
        margin: 0;
        grid-row: span 2;
        font-size: 19px;
    }

    .process5-content {
        max-width: none;
        padding-top: 2px;
    }

    .process5-content h3 {
        font-size: 17px;
        margin-bottom: 5px;
    }

    .process5-content p {
        font-size: 12.5px;
    }

    /* Vertical connecting line */
    .process5-item:not(:last-child)::after {
        content: "";
        position: absolute;
        left: 29px;
        top: 58px;
        bottom: 0;
        width: 2px;
        background: repeating-linear-gradient(180deg, var(--orange) 0, var(--orange) 7px, transparent 7px, transparent 13px);
        opacity: 0.5;
    }

    .process5-bottom {
        max-width: 100%;
        margin-top: 38px;
        padding: 10px 14px;
        text-align: center;
        border-radius: 10px;
        font-size: 11.5px;
        line-height: 1.5;
    }
}

/* ========================================================= TOUCH DEVICES ========================================================= */
@media (hover: none) {
    .process5-item:hover .process5-icon {
        background: var(--navy-deep);
        color: var(--orange);
        transform: none;
    }
}

/* ========================================================= REDUCED MOTION ========================================================= */
@media (prefers-reduced-motion: reduce) {
    .process5-icon {
        transition: none;
    }
}


/* =========================================================
   CTA SECTION — Padhaion
   Prefix: .cta5-
   ========================================================= */

.cta5 {
    position: relative;
    overflow: hidden;

    background:
        linear-gradient(135deg,
            var(--navy-deep) 0%,
            var(--navy) 100%);

    padding: clamp(55px, 7vw, 85px) 0;
}

/* Decorative background */

.cta5::before {
    content: "";

    position: absolute;
    width: 420px;
    height: 420px;

    top: -220px;
    right: -100px;

    border-radius: 50%;

    background: rgba(242, 121, 12, 0.10);
}

.cta5::after {
    content: "";

    position: absolute;
    width: 280px;
    height: 280px;

    bottom: -180px;
    left: -80px;

    border-radius: 50%;

    background: rgba(255, 255, 255, 0.04);
}

.cta5-container {
    position: relative;
    z-index: 2;

    width: 100%;
    max-width: var(--container-max);

    margin: 0 auto;

    padding-inline: var(--gutter);

    display: grid;
    grid-template-columns: 1fr 0.55fr;

    align-items: center;

    gap: clamp(30px, 6vw, 80px);
}

/* =========================================================
   CONTENT
   ========================================================= */

.cta5-content {
    max-width: 700px;
}

.cta5-tag {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    margin-bottom: 16px;
    padding: 7px 14px;

    background: rgba(242, 121, 12, 0.13);
    border: 1px solid rgba(242, 121, 12, 0.28);

    border-radius: 999px;

    color: #ffad63;

    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.cta5-tag i {
    font-size: 13px;
}

.cta5-title {
    margin: 0 0 16px;

    color: var(--white);

    font-size: clamp(25px, 3vw, 35px);
    font-weight: 600;
    line-height: 1.16;

    letter-spacing: -0.025em;
}

.cta5-title span {
    color: var(--orange);
}

.cta5-text {
    max-width: 600px;

    margin: 0 0 28px;

    color: #cbd8e8;

    font-size: clamp(13.5px, 1.5vw, 15px);
    line-height: 1.75;
}

/* =========================================================
   BUTTONS
   ========================================================= */

.cta5-actions {
    display: flex;
    align-items: center;
    gap: 12px;

    flex-wrap: wrap;
}

.cta5-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    min-height: 48px;

    padding: 12px 22px;

    border-radius: var(--radius-sm);

    font-size: 14px;
    font-weight: 700;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        background 0.25s ease,
        color 0.25s ease;
}

.cta5-btn-primary {
    background: var(--orange);
    color: var(--white);

    box-shadow: 0 10px 25px rgba(242, 121, 12, 0.25);
}

.cta5-btn-primary:hover {
    background: var(--orange-dark);
    color: var(--white);

    transform: translateY(-2px);

    box-shadow:
        0 14px 30px rgba(242, 121, 12, 0.35);
}

.cta5-btn-outline {
    background: transparent;
    color: var(--white);

    border: 1px solid rgba(255, 255, 255, 0.30);
}

.cta5-btn-outline:hover {
    background: var(--white);
    color: var(--navy-deep);

    transform: translateY(-2px);
}

/* =========================================================
   VISUAL
   ========================================================= */

.cta5-visual {
    position: relative;

    min-height: 230px;

    display: flex;
    align-items: center;
    justify-content: center;
}

.cta5-icon {
    position: relative;
    z-index: 3;

    width: 130px;
    height: 130px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: var(--white);

    color: var(--orange);

    font-size: 48px;

    box-shadow:
        0 20px 50px rgba(0, 0, 0, 0.22),
        0 0 0 12px rgba(255, 255, 255, 0.06);
}

/* Decorative circles */

.cta5-circle {
    position: absolute;

    border: 1px solid rgba(255, 255, 255, 0.10);

    border-radius: 50%;
}

.cta5-circle-one {
    width: 210px;
    height: 210px;
}

.cta5-circle-two {
    width: 290px;
    height: 290px;
}

/* =========================================================
   FLOATING BADGES
   ========================================================= */

.cta5-float {
    position: absolute;
    z-index: 4;

    display: flex;
    align-items: center;
    gap: 7px;

    padding: 9px 13px;

    background: var(--white);

    border-radius: 9px;

    color: var(--navy-deep);

    font-size: 11.5px;
    font-weight: 700;

    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.18);

    white-space: nowrap;
}

.cta5-float i {
    color: var(--orange);
    font-size: 14px;
}

.cta5-float-one {
    top: 25px;
    left: 2%;
}

.cta5-float-two {
    bottom: 25px;
    right: 2%;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 850px) {

    .cta5-container {
        grid-template-columns: 1fr;

        text-align: center;
    }

    .cta5-content {
        max-width: 700px;
        margin: 0 auto;
    }

    .cta5-text {
        margin-left: auto;
        margin-right: auto;
    }

    .cta5-actions {
        justify-content: center;
    }

    .cta5-visual {
        min-height: 210px;
    }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .cta5 {
        padding: 48px 0;
    }

    .cta5-title {
        font-size: clamp(27px, 8vw, 34px);
    }

    .cta5-text {
        font-size: 13px;
        line-height: 1.7;
    }

    .cta5-actions {
        flex-direction: column;
        width: 100%;
    }

    .cta5-btn {
        width: 100%;
    }

    .cta5-visual {
        min-height: 190px;
    }

    .cta5-icon {
        width: 105px;
        height: 105px;

        font-size: 38px;
    }

    .cta5-circle-one {
        width: 170px;
        height: 170px;
    }

    .cta5-circle-two {
        width: 225px;
        height: 225px;
    }

    .cta5-float-one {
        top: 10px;
        left: 0;
    }

    .cta5-float-two {
        bottom: 10px;
        right: 0;
    }
}

/* =========================================================
   TOUCH DEVICES
   ========================================================= */

@media (hover: none) {

    .cta5-btn-primary:hover,
    .cta5-btn-outline:hover {
        transform: none;
    }
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .cta5-btn {
        transition: none;
    }
}


/* =========================================================
   BLOG SECTION — Padhaion
   Prefix: .blog5-
   ========================================================= */

.blog5 {
    position: relative;
    background: var(--white);
    padding: clamp(60px, 7vw, 95px) 0;
    overflow: hidden;
}

.blog5-container {
    width: 100%;
    max-width: var(--container-max);
    margin: 0 auto;
    padding-inline: var(--gutter);
}


/* ---------- Section Heading ---------- */

.blog5-heading {
    max-width: 760px;
    margin: 0 auto clamp(35px, 5vw, 55px);
    text-align: center;
}

.blog5-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;

    padding: 7px 15px;
    margin-bottom: 16px;

    background: rgba(242, 121, 12, 0.10);
    border: 1px solid rgba(242, 121, 12, 0.22);
    border-radius: 999px;

    color: var(--orange);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.blog5-tag i {
    font-size: 14px;
}

.blog5-title {
    margin: 0 0 14px;

    color: var(--navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.blog5-title span {
    color: var(--orange);
}

.blog5-subtitle {
    max-width: 680px;
    margin: 0 auto;

    color: var(--text-muted);
    font-size: clamp(13px, 1.5vw, 15px);
    line-height: 1.75;
}


/* ---------- Blog Grid ---------- */

.blog5-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(20px, 2.5vw, 30px);
}


/* ---------- Blog Card ---------- */

.blog5-card {
    position: relative;

    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);

    overflow: hidden;

    box-shadow: 0 8px 25px rgba(11, 37, 69, 0.06);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}

.blog5-card:hover {
    transform: translateY(-7px);

    border-color: rgba(242, 121, 12, 0.25);

    box-shadow:
        0 20px 45px rgba(11, 37, 69, 0.13);
}


/* ---------- Blog Image ---------- */

.blog5-image-link {
    display: block;
    position: relative;

    overflow: hidden;
    background: var(--bg-wash);
}

.blog5-image-link::after {
    content: "";

    position: absolute;
    inset: 0;

    background: linear-gradient(180deg,
            transparent 55%,
            rgba(6, 23, 51, 0.12));

    pointer-events: none;
}

.blog5-image-link img {
    width: 100%;
    height: 225px;

    object-fit: cover;
    display: block;

    transition: transform 0.5s ease;
}

.blog5-card:hover .blog5-image-link img {
    transform: scale(1.05);
}


/* ---------- Blog Content ---------- */

.blog5-content {
    padding: clamp(20px, 2.2vw, 26px);
}


/* ---------- Meta ---------- */

.blog5-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;

    margin-bottom: 13px;

    color: var(--text-soft);
    font-size: 11.5px;
    font-weight: 600;
}

.blog5-meta span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.blog5-meta span:first-child {
    color: var(--orange);
}

.blog5-meta i {
    font-size: 12px;
}


/* ---------- Card Title ---------- */

.blog5-card-title {
    margin: 0 0 11px;

    color: var(--navy);
    font-size: clamp(17px, 1.6vw, 20px);
    font-weight: 700;
    line-height: 1.4;

    transition: color 0.2s ease;
}

.blog5-card:hover .blog5-card-title {
    color: var(--orange);
}


/* ---------- Card Description ---------- */

.blog5-excerpt {
    margin: 0 0 18px;

    color: var(--text-muted);
    font-size: 13px;
    line-height: 1.7;

    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}


/* ---------- Read Article ---------- */

.blog5-read {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    color: var(--navy);
    font-size: 13px;
    font-weight: 700;

    transition:
        color 0.2s ease,
        gap 0.2s ease;
}

.blog5-read i {
    color: var(--orange);
    font-size: 14px;

    transition: transform 0.2s ease;
}

.blog5-read:hover {
    color: var(--orange);
}

.blog5-read:hover i {
    transform: translateX(4px);
}


/* ---------- View All ---------- */

.blog5-action {
    display: flex;
    justify-content: center;

    margin-top: clamp(32px, 4vw, 45px);
}

.blog5-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    min-height: 46px;
    padding: 11px 22px;

    background: var(--navy);
    color: var(--white);

    border: 1px solid var(--navy);
    border-radius: 8px;

    font-size: 13.5px;
    font-weight: 600;

    transition:
        transform 0.2s ease,
        background 0.2s ease,
        box-shadow 0.2s ease;
}

.blog5-btn i {
    font-size: 15px;
    transition: transform 0.2s ease;
}

.blog5-btn:hover {
    background: var(--orange);
    border-color: var(--orange);

    color: var(--white);

    transform: translateY(-2px);

    box-shadow: 0 10px 22px rgba(242, 121, 12, 0.25);
}

.blog5-btn:hover i {
    transform: translateX(4px);
}


/* =========================================================
   BLOG RESPONSIVE
   ========================================================= */

@media (max-width: 991.98px) {

    .blog5 {
        padding: 60px 0;
    }

    .blog5-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .blog5-image-link img {
        height: 220px;
    }

}


@media (max-width: 767.98px) {

    .blog5 {
        padding: 55px 0;
    }

    .blog5-heading {
        margin-bottom: 32px;
    }

    .blog5-title {
        font-size: 30px;
    }

    .blog5-subtitle {
        font-size: 13px;
        line-height: 1.7;
    }

    .blog5-grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .blog5-image-link img {
        height: 230px;
    }

    .blog5-content {
        padding: 20px;
    }

}


@media (max-width: 480px) {

    .blog5 {
        padding: 48px 0;
    }

    .blog5-title {
        font-size: 27px;
    }

    .blog5-tag {
        font-size: 11px;
        padding: 6px 13px;
    }

    .blog5-image-link img {
        height: 210px;
    }

    .blog5-meta {
        font-size: 10.5px;
    }

    .blog5-card-title {
        font-size: 17px;
    }

    .blog5-excerpt {
        font-size: 12.5px;
    }

}

/* =========================================================
   FOOTER SECTION — Padhaion
   Prefix: .footer5-
   ========================================================= */

.footer5 {
    position: relative;
    background: var(--navy-deep);
    color: rgba(255, 255, 255, 0.75);
}


/* =========================================================
   FOOTER MAIN
   ========================================================= */

.footer5-main {
    padding: clamp(55px, 7vw, 85px) 0 50px;
}

.footer5-main .container {
    max-width: var(--container-max);
}


/* =========================================================
   BRAND
   ========================================================= */

.footer5-logo {
    display: inline-block;

    margin-bottom: 18px;

    color: var(--white);
    font-size: 30px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.04em;
}

.footer5-logo span {
    color: var(--orange);
}

.footer5-description {
    max-width: 390px;
    margin: 0 0 22px;
    color: rgb(255, 255, 255);
    font-size: 15px;
    line-height: 1.8;
}


/* =========================================================
   SOCIAL LINKS
   ========================================================= */

.footer5-social {
    display: flex;
    align-items: center;
    gap: 9px;
}

.footer5-social a {
    width: 38px;
    height: 38px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 9px;

    color: rgba(255, 255, 255, 0.75);
    font-size: 15px;

    transition:
        background 0.25s ease,
        border-color 0.25s ease,
        color 0.25s ease,
        transform 0.25s ease;
}

.footer5-social a:hover {
    background: var(--orange);
    border-color: var(--orange);
    color: var(--white);

    transform: translateY(-3px);
}


/* =========================================================
   FOOTER COLUMNS
   ========================================================= */

.footer5-column h3 {
    margin: 3px 0 21px;
    color: var(--white);
    font-size: 18px;
    font-weight: 600;
}

.footer5-column ul {
    padding: 0;
    margin: 0;

    list-style: none;
}

.footer5-column li {
    margin-bottom: 11px;
}

.footer5-column li:last-child {
    margin-bottom: 0;
}

.footer5-column li a {
    display: inline-block;

    color: rgb(255, 255, 255);
    font-size: 14.5px;
    line-height: 1.5;

    transition:
        color 0.2s ease,
        transform 0.2s ease;
}

.footer5-column li a:hover {
    color: var(--orange);
    transform: translateX(4px);
}


/* =========================================================
   CONTACT
   ========================================================= */

.footer5-contact-text {
    max-width: 310px;
    margin: -3px 0 18px;
    color: rgb(255, 255, 255);
    font-size: 15px;
    line-height: 1.7;
}

.footer5-contact-item {
    display: flex;
    align-items: center;
    gap: 12px;

    margin-bottom: 13px;

    color: rgb(255, 255, 255);
    font-size: 12px;

    transition: color 0.2s ease;
}

.footer5-contact-item:last-child {
    margin-bottom: 0;
}

.footer5-contact-item:hover {
    color: var(--orange);
}

.footer5-contact-icon {
    width: 38px;
    height: 38px;

    flex: 0 0 38px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    background: rgba(242, 121, 12, 0.10);
    border: 1px solid rgba(242, 121, 12, 0.18);
    border-radius: 9px;

    color: var(--orange);
    font-size: 15px;
}

.footer5-contact-item span:last-child {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.footer5-contact-item small {
    color: rgb(251 139 4);
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}


/* =========================================================
   FOOTER BOTTOM
   ========================================================= */

.footer5-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.09);
}

.footer5-bottom-inner {
    min-height: 68px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;
}

.footer5-bottom p {
    margin: 0;

    color: rgb(255, 255, 255);
    font-size: 12px;
}

.footer5-bottom p strong {
    color: rgba(255, 255, 255, 0.72);
    font-weight: 600;
}

.footer5-bottom-links {
    display: flex;
    align-items: center;
    gap: 12px;
}

.footer5-bottom-links a {
    color: rgb(255, 255, 255);
    font-size: 12px;

    transition: color 0.2s ease;
}

.footer5-bottom-links a:hover {
    color: var(--orange);
}

.footer5-bottom-links span {
    width: 3px;
    height: 3px;

    border-radius: 50%;
    background: rgba(255, 255, 255, 0.25);
}


/* =========================================================
   FOOTER RESPONSIVE
   ========================================================= */

@media (max-width: 991.98px) {

    .footer5-main {
        padding: 60px 0 45px;
    }

    .footer5-description {
        max-width: 100%;
    }

    .footer5-contact-text {
        max-width: 100%;
    }

    .footer5-bottom-inner {
        min-height: 64px;
    }

}


@media (max-width: 767.98px) {

    .footer5-main {
        padding: 50px 0 35px;
    }

    .footer5-brand {
        margin-bottom: 12px;
    }

    .footer5-logo {
        font-size: 27px;
    }

    .footer5-column h3 {
        margin-bottom: 17px;
    }

    .footer5-bottom-inner {
        padding: 18px 0;

        flex-direction: column;
        justify-content: center;

        text-align: center;

        gap: 10px;
    }

}


@media (max-width: 480px) {

    .footer5-main {
        padding: 45px 0 30px;
    }

    .footer5-description {
        font-size: 12.5px;
    }

    .footer5-social a {
        width: 36px;
        height: 36px;
    }

    .footer5-column li a {
        font-size: 12px;
    }

    .footer5-contact-item {
        font-size: 11.5px;
    }

    .footer5-bottom-links {
        gap: 9px;
    }

    .footer5-bottom-links a,
    .footer5-bottom p {
        font-size: 10.5px;
    }

}




/* =========================================================
   CONTACT SECTION — Padhaion
========================================================= */

.contact5 {
    position: relative;
    padding: 100px 0;
    background: #f8fafc;
    overflow: hidden;
}

/* Soft Background Decoration */
.contact5::before {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    background: rgba(242, 121, 12, 0.08);
    border-radius: 50%;
    top: -180px;
    left: -180px;
    filter: blur(10px);
}

.contact5::after {
    content: "";
    position: absolute;
    width: 350px;
    height: 350px;
    background: rgba(7, 27, 51, 0.06);
    border-radius: 50%;
    bottom: -160px;
    right: -120px;
}

/* =========================================================
   SECTION HEADING
========================================================= */

.contact5-heading {
    position: relative;
    z-index: 2;
    max-width: 750px;
    margin: 0 auto 55px;
}

.contact5-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 17px;
    margin-bottom: 16px;
    border-radius: 50px;
    background: rgba(242, 121, 12, 0.10);
    color: #0f570f;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.4px;
}

.contact5-tag i {
    font-size: 15px;
}

.contact5-title {
    margin: 0 0 15px;
    color: #0f570f;
    font-size: 44px;
    line-height: 1.15;
    font-weight: 600;
}

.contact5-title span {
    color: #0f570f;
}

.contact5-subtitle {
    max-width: 650px;
    margin: 0 auto;
    color: #64748b;
    font-size: 16px;
    line-height: 1.8;
}


/* =========================================================
   CONTACT INFORMATION CARD
========================================================= */

.contact5-info {
    position: relative;
    z-index: 2;
    height: 100%;
    padding: 42px 38px;
    border-radius: 24px;
    background: #071b33;
    color: #fff;
    overflow: hidden;
    box-shadow: 0 20px 50px rgba(7, 27, 51, 0.15);
}

/* Card Glow */
.contact5-info::before {
    content: "";
    position: absolute;
    width: 240px;
    height: 240px;
    border-radius: 50%;
    background: rgba(242, 121, 12, 0.15);
    top: -100px;
    right: -100px;
}

.contact5-info::after {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.08);
    bottom: -80px;
    left: -70px;
}

.contact5-info>* {
    position: relative;
    z-index: 2;
}


/* Mini Tag */

.contact5-mini-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #ffc700;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.contact5-mini-tag i {
    font-size: 16px;
}

.contact5-info-header h3 {
    margin: 18px 0 14px;
    color: #fff;
    font-size: 31px;
    line-height: 1.25;
    font-weight: 600;
}

.contact5-info-header h3 span {
    color: #0f570f;
}

.contact5-info-header p {
    margin: 0 0 35px;
    color: rgba(255, 255, 255, 0.70);
    font-size: 15px;
    line-height: 1.8;
}


/* =========================================================
   CONTACT INFO ITEMS
========================================================= */

.contact5-info-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 18px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.10);
}

.contact5-icon {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: rgb(255 199 0);
    color: #0f570f;
    font-size: 19px;
    transition: all 0.3s ease;
}

.contact5-info-item:hover .contact5-icon {
    background: #0f570f;
    color: #fff;
    transform: translateY(-3px);
}

.contact5-info-item span {
    display: block;
    margin-bottom: 4px;
    color: rgba(255, 255, 255, 0.55);
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.7px;
}

.contact5-info-item a,
.contact5-info-item strong {
    display: block;
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
}

.contact5-info-item a:hover {
    color: #0f570f;
}

.contact5-info-item small {
    display: block;
    margin-top: 3px;
    color: rgba(255, 255, 255, 0.55);
    font-size: 12px;
}


/* =========================================================
   SOCIAL LINKS
========================================================= */

.contact5-social {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-top: 25px;
    padding-top: 25px;
    border-top: 1px solid rgba(255, 255, 255, 0.10);
}

.contact5-social>span {
    color: rgba(255, 255, 255, 0.65);
    font-size: 13px;
    font-weight: 600;
}

.contact5-social-links {
    display: flex;
    gap: 9px;
}

.contact5-social-links a {
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    font-size: 15px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.contact5-social-links a:hover {
    background: #0f570f;
    color: #fff;
    transform: translateY(-4px);
}


/* =========================================================
   CONTACT FORM BOX
========================================================= */

.contact5-form-box {
    position: relative;
    z-index: 2;
    height: 100%;
    padding: 42px 40px;
    border-radius: 24px;
    background: #fff;
    border: 1px solid #e8edf3;
    box-shadow: 0 20px 50px rgba(7, 27, 51, 0.08);
}

.contact5-form-heading {
    margin-bottom: 28px;
}

.contact5-form-heading h3 {
    margin: 0 0 8px;
    color: #071b33;
    font-size: 27px;
    font-weight: 600;
}

.contact5-form-heading p {
    margin: 0;
    color: #718096;
    font-size: 14px;
    line-height: 1.7;
}


/* =========================================================
   FORM LABELS
========================================================= */

.contact5-form label {
    display: block;
    margin-bottom: 8px;
    color: #071b33;
    font-size: 13px;
    font-weight: 700;
}


/* =========================================================
   INPUTS
========================================================= */

.contact5-input,
.contact5-textarea {
    position: relative;
}

.contact5-input i,
.contact5-textarea i {
    position: absolute;
    top: 50%;
    left: 17px;
    z-index: 2;
    color: #94a3b8;
    font-size: 16px;
    transform: translateY(-50%);
    transition: all 0.3s ease;
}

.contact5-textarea i {
    top: 20px;
    transform: none;
}

.contact5-input input,
.contact5-input select,
.contact5-textarea textarea {
    width: 100%;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    background: #f8fafc;
    color: #071b33;
    font-size: 14px;
    outline: none;
    transition: all 0.3s ease;
}

.contact5-input input,
.contact5-input select {
    height: 52px;
    padding: 0 16px 0 45px;
}

.contact5-textarea textarea {
    min-height: 130px;
    padding: 15px 16px 15px 45px;
    resize: vertical;
    line-height: 1.6;
}

.contact5-input input::placeholder,
.contact5-textarea textarea::placeholder {
    color: #a0aec0;
}


/* Focus */

.contact5-input input:focus,
.contact5-input select:focus,
.contact5-textarea textarea:focus {
    border-color: #0f570f;
    background: #fff;
    box-shadow: 0 0 0 4px rgba(242, 121, 12, 0.10);
}

.contact5-input:focus-within i,
.contact5-textarea:focus-within i {
    color: #0f570f;
}


/* =========================================================
   SUBMIT BUTTON
========================================================= */

.contact5-submit {
    width: 100%;
    min-height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 5px;
    padding: 14px 24px;
    border: 0;
    border-radius: 12px;
    background: #0f570f;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 10px 25px rgba(242, 121, 12, 0.22);
    transition: all 0.3s ease;
}

.contact5-submit i {
    transition: transform 0.3s ease;
}

.contact5-submit:hover {
    background: #071b33;
    transform: translateY(-2px);
    box-shadow: 0 14px 30px rgba(7, 27, 51, 0.18);
}

.contact5-submit:hover i {
    transform: translateX(5px);
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 991px) {

    .contact5 {
        padding: 80px 0;
    }

    .contact5-title {
        font-size: 38px;
    }

    .contact5-info {
        padding: 35px 30px;
    }

    .contact5-form-box {
        padding: 35px 30px;
    }
}

@media (max-width: 767px) {

    .contact5 {
        padding: 65px 0;
    }

    .contact5-heading {
        margin-bottom: 40px;
    }

    .contact5-title {
        font-size: 32px;
    }

    .contact5-subtitle {
        font-size: 14px;
    }

    .contact5-info {
        padding: 30px 24px;
        border-radius: 18px;
    }

    .contact5-form-box {
        padding: 30px 22px;
        border-radius: 18px;
    }

    .contact5-info-header h3 {
        font-size: 26px;
    }

    .contact5-social {
        align-items: flex-start;
        flex-direction: column;
    }

    .contact5-social-links {
        width: 100%;
    }

    .contact5-social-links a {
        flex: 1;
    }
}

@media (max-width: 480px) {

    .contact5-title {
        font-size: 28px;
    }

    .contact5-info-item {
        gap: 12px;
    }

    .contact5-icon {
        flex-basis: 43px;
        width: 43px;
        height: 43px;
    }

    .contact5-info-item a,
    .contact5-info-item strong {
        font-size: 14px;
    }

    .contact5-form-heading h3 {
        font-size: 23px;
    }
}



/* =========================================================
   BREADCRUMB SECTION — Scrap Vehicle Solution
   Prefix: .breadcrumb5-
   ========================================================= */

.breadcrumb5 {
    position: relative;
    background: linear-gradient(135deg, var(--navy-deep) 0%, var(--navy) 100%);
    padding: clamp(50px, 8vw, 80px) 0 clamp(38px, 6vw, 60px);
    overflow: hidden;
}

.breadcrumb5-pattern {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle, rgba(255, 255, 255, 0.08) 1px, transparent 1px);
    background-size: 24px 24px;
    mask-image: linear-gradient(180deg, black, transparent 80%);
    -webkit-mask-image: linear-gradient(180deg, black, transparent 80%);
    pointer-events: none;
}

.breadcrumb5-inner {
    position: relative;
    z-index: 2;
    text-align: center;
}

.breadcrumb5-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: clamp(11px, 1.5vw, 12.5px);
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--orange);
    background: rgba(242, 121, 12, 0.13);
    border: 1px solid rgba(242, 121, 12, 0.28);
    padding: 7px 16px;
    border-radius: 999px;
    margin-bottom: 16px;
}

.breadcrumb5-tag i {
    font-size: 13px;
}

.breadcrumb5-title {
    margin: 0 0 18px;
    color: var(--white);
    font-size: clamp(28px, 4.5vw, 44px);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.breadcrumb5-nav {
    display: flex;
    justify-content: center;
}

.breadcrumb5-list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.breadcrumb5-item {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: clamp(13px, 1.4vw, 14.5px);
    font-weight: 500;
    color: #cfe0f2;
}

.breadcrumb5-item a {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #cfe0f2;
    transition: color 0.2s ease;
}

.breadcrumb5-item a i {
    color: var(--orange);
    font-size: 13px;
}

.breadcrumb5-item a:hover {
    color: var(--orange);
}

.breadcrumb5-item.active {
    color: var(--orange);
    font-weight: 600;
}

.breadcrumb5-sep {
    display: flex;
    align-items: center;
    color: rgba(255, 255, 255, 0.35);
    font-size: 11px;
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
    .breadcrumb5 {
        padding: 40px 0 30px;
    }

    .breadcrumb5-title {
        font-size: clamp(24px, 8vw, 30px);
    }

    .breadcrumb5-item,
    .breadcrumb5-item a {
        font-size: 13px;
    }
}


/* =========================================================
   GALLERY SECTION — Scrap Vehicle Solution
   Prefix: .gallery5-
   ========================================================= */

.gallery5 {
    position: relative;
    background: var(--bg-wash);
    padding: clamp(55px, 7vw, 90px) 0;
}

.gallery5-container {
    width: 100%;
    max-width: var(--container-max);
    margin: 0 auto;
    padding-inline: var(--gutter);
}

/* ---------- Heading ---------- */

.gallery5-heading {
    max-width: 760px;
    margin: 0 auto clamp(35px, 5vw, 55px);
    text-align: center;
}

.gallery5-tag {
    display: inline-flex;
    align-items: center;
    padding: 7px 15px;
    margin-bottom: 16px;

    background: rgba(242, 121, 12, 0.10);
    border: 1px solid rgba(242, 121, 12, 0.22);
    border-radius: 999px;

    color: var(--orange);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.gallery5-title {
    margin: 0 0 14px;
    color: var(--navy-deep);
    font-size: clamp(25px, 3vw, 35px);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.gallery5-title span {
    color: var(--orange);
}

.gallery5-subtitle {
    max-width: 650px;
    margin: 0 auto;
    color: var(--text-muted);
    font-size: clamp(13.5px, 1.4vw, 15px);
    line-height: 1.75;
}

/* ---------- Grid (bento-style layout) ---------- */

.gallery5-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: 160px;
    gap: clamp(12px, 1.6vw, 18px);
}

.gallery5-item.item-1 {
    grid-column: span 2;
    grid-row: span 2;
}

.gallery5-item.item-2 {
    grid-column: span 2;
    grid-row: span 1;
}

.gallery5-item.item-3 {
    grid-column: span 1;
    grid-row: span 1;
}

.gallery5-item.item-4 {
    grid-column: span 1;
    grid-row: span 2;
}

.gallery5-item.item-5 {
    grid-column: span 2;
    grid-row: span 1;
}

.gallery5-item.item-6 {
    grid-column: span 1;
    grid-row: span 1;
}

/* ---------- Item ---------- */

.gallery5-item {
    position: relative;
    display: block;

    overflow: hidden;
    border-radius: var(--radius-md);

    background: var(--bg-wash-2);
    border: 1px solid var(--border);

    box-shadow: 0 8px 24px rgba(11, 37, 69, 0.06);

    transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.gallery5-item img {
    width: 100%;
    height: 100%;

    object-fit: cover;
    display: block;

    transition: transform 0.5s ease, filter 0.4s ease;
}

.gallery5-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 40px rgba(11, 37, 69, 0.14);
}

.gallery5-item:hover img {
    transform: scale(1.08);
    filter: brightness(0.75);
}

/* ---------- Overlay ---------- */

.gallery5-overlay {
    position: absolute;
    inset: 0;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;

    background: linear-gradient(180deg, rgba(7, 27, 51, 0) 40%, rgba(7, 27, 51, 0.55) 100%);

    opacity: 0;
    transition: opacity 0.35s ease;

    color: var(--white);
    text-align: center;
    padding: 14px;
}

.gallery5-overlay i {
    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: var(--orange);
    border-radius: 50%;

    font-size: 17px;
    color: var(--white);

    transform: scale(0.7);
    transition: transform 0.35s ease;
}

.gallery5-overlay strong {
    font-size: 13.5px;
    font-weight: 700;
    letter-spacing: 0.01em;
    transform: translateY(6px);
    opacity: 0;
    transition: transform 0.35s ease 0.05s, opacity 0.35s ease 0.05s;
}

.gallery5-item:hover .gallery5-overlay {
    opacity: 1;
}

.gallery5-item:hover .gallery5-overlay i {
    transform: scale(1);
}

.gallery5-item:hover .gallery5-overlay strong {
    transform: translateY(0);
    opacity: 1;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 950px) {

    .gallery5-grid {
        grid-template-columns: repeat(2, 1fr);
        grid-auto-rows: 190px;
    }

    .gallery5-item.item-1,
    .gallery5-item.item-2,
    .gallery5-item.item-3,
    .gallery5-item.item-4,
    .gallery5-item.item-5,
    .gallery5-item.item-6 {
        grid-column: span 1;
        grid-row: span 1;
    }

    .gallery5-item.item-1 {
        grid-column: span 2;
        grid-row: span 1;
    }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .gallery5 {
        padding: 48px 0;
    }

    .gallery5-heading {
        margin-bottom: 30px;
    }

    .gallery5-title {
        font-size: clamp(25px, 7vw, 32px);
    }

    .gallery5-grid {
        grid-template-columns: 1fr;
        grid-auto-rows: 220px;
        gap: 14px;
    }

    .gallery5-item.item-1,
    .gallery5-item.item-2,
    .gallery5-item.item-3,
    .gallery5-item.item-4,
    .gallery5-item.item-5,
    .gallery5-item.item-6 {
        grid-column: span 1;
        grid-row: span 1;
    }

    .gallery5-overlay {
        opacity: 1;
        background: linear-gradient(180deg, rgba(7, 27, 51, 0) 55%, rgba(7, 27, 51, 0.6) 100%);
    }

    .gallery5-overlay i {
        transform: scale(1);
    }

    .gallery5-overlay strong {
        transform: translateY(0);
        opacity: 1;
    }
}

/* =========================================================
   TOUCH DEVICES
   ========================================================= */

@media (hover: none) {

    .gallery5-item:hover {
        transform: none;
        box-shadow: 0 8px 24px rgba(11, 37, 69, 0.06);
    }

    .gallery5-item:hover img {
        transform: none;
        filter: none;
    }
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .gallery5-item,
    .gallery5-item img,
    .gallery5-overlay,
    .gallery5-overlay i,
    .gallery5-overlay strong {
        transition: none;
    }
}


/* =========================================================
   BLOG EMPTY STATE — Scrap Vehicle Solution
   Prefix: .blog5-empty-
   ========================================================= */

.blog5-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;

    max-width: 480px;
    margin: 0 auto;
    padding: clamp(40px, 6vw, 60px) clamp(24px, 4vw, 40px);

    background: var(--bg-wash);
    border: 1px dashed var(--border);
    border-radius: var(--radius-lg);
}

.blog5-empty-icon {
    width: 78px;
    height: 78px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 22px;

    background: rgba(242, 121, 12, 0.10);
    border: 1px solid rgba(242, 121, 12, 0.22);
    border-radius: 50%;

    color: var(--orange);
    font-size: 32px;
}

.blog5-empty-title {
    margin: 0 0 12px;

    color: var(--navy-deep);
    font-size: clamp(19px, 2.2vw, 23px);
    font-weight: 700;
}

.blog5-empty-text {
    margin: 0 0 26px;

    color: var(--text-muted);
    font-size: 14px;
    line-height: 1.75;
    max-width: 360px;
}

.blog5-empty-btn {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    min-height: 46px;
    padding: 12px 24px;

    background: var(--orange);
    color: var(--white);

    border-radius: var(--radius-sm);

    font-size: 13.5px;
    font-weight: 700;

    box-shadow: var(--shadow-sm);

    transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
}

.blog5-empty-btn i {
    font-size: 14px;
    transition: transform 0.25s ease;
}

.blog5-empty-btn:hover {
    background: var(--orange-dark);
    transform: translateY(-2px);
    box-shadow: 0 12px 26px rgba(242, 121, 12, 0.30);
}

.blog5-empty-btn:hover i {
    transform: translateX(-4px);
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .blog5-empty {
        padding: 40px 20px;
        border-radius: var(--radius-md);
    }

    .blog5-empty-icon {
        width: 66px;
        height: 66px;
        font-size: 27px;
    }

    .blog5-empty-title {
        font-size: 19px;
    }

    .blog5-empty-text {
        font-size: 13px;
    }
}

/* =========================================================
   TOUCH DEVICES
   ========================================================= */

@media (hover: none) {

    .blog5-empty-btn:hover {
        transform: none;
        box-shadow: var(--shadow-sm);
    }
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .blog5-empty-btn,
    .blog5-empty-btn i {
        transition: none;
    }
}



.floating-btn {
    position: fixed;
    bottom: 25px;
    width: 55px;
    height: 55px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 26px;
    text-decoration: none;
    z-index: 9999;
    box-shadow: 0 4px 12px rgba(0,0,0,0.25);
    transition: 0.3s ease;
}

.floating-btn:hover {
    transform: scale(1.1);
    color: #fff;
}

/* Left - WhatsApp */
.whatsapp-btn {
    left: 25px;
    background: #25D366;
}

/* Right - Call */
.call-btn {
    right: 25px;
    background: #007bff;
}

@media (max-width: 575px) {
    .floating-btn {
        width: 50px;
        height: 50px;
        font-size: 23px;
        bottom: 18px;
    }

    .whatsapp-btn {
        left: 15px;
    }

    .call-btn {
        right: 15px;
    }
}