

    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    body {
        font-family: 'Inter', sans-serif;
        background: #fff;
    }

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

    .factory-header {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 9999;
        padding: 18px 0;
        transition: all .4s ease;
    }

    .factory-header.scrolled {
        background: rgba(255,255,255,.96);
        backdrop-filter: blur(15px);
        box-shadow: 0 8px 30px rgba(0,0,0,.08);
        padding: 10px 0;
    }

    .factory-navbar {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

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

    .factory-logo {
        display: flex;
        align-items: center;
        text-decoration: none;
        gap: 12px;
    }

    .factory-logo-icon {
        width: 48px;
        height: 48px;
        background: #ff9b2d;
        color: #111;
        border-radius: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 25px;
        font-weight: 800;
        box-shadow: 0 8px 20px rgba(232,165,0,.25);
    }

    .factory-logo-text {
        line-height: 1.1;
    }

    .factory-logo-text strong {
        display: block;
        color: #111;
        font-size: 20px;
        font-weight: 800;
        letter-spacing: -.5px;
    }

    .factory-logo-text span {
        font-size: 10px;
        color: #777;
        letter-spacing: 2px;
        font-weight: 600;
    }

    /* =========================
       DESKTOP MENU
    ========================= */

    .factory-menu {
        display: flex;
        align-items: center;
        gap: 4px;
        list-style: none;
        margin: 0;
        padding: 0;
    }

    .factory-menu > li {
        position: relative;
    }

    .factory-menu > li > a {
        position: relative;
        display: flex;
        align-items: center;
        gap: 5px;
        padding: 13px 14px;
        color: #222;
        text-decoration: none;
        font-size: 13px;
        font-weight: 600;
        transition: all .3s ease;
    }

    .factory-menu > li > a::after {
        content: "";
        position: absolute;
        left: 14px;
        right: 14px;
        bottom: 5px;
        height: 2px;
        background: #ff9b2d;
        transform: scaleX(0);
        transform-origin: center;
        transition: transform .3s ease;
    }

    .factory-menu > li > a:hover {
        color: #d18f00;
    }

    .factory-menu > li > a:hover::after {
        transform: scaleX(1);
    }

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

    .factory-dropdown {
        position: absolute;
        top: calc(100% + 15px);
        left: 0;
        min-width: 230px;
        background: #fff;
        border-radius: 15px;
        padding: 10px;
        box-shadow: 0 20px 50px rgba(0,0,0,.12);

        opacity: 0;
        visibility: hidden;
        transform: translateY(12px);
        transition: all .3s ease;
    }

    .factory-menu li:hover .factory-dropdown {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }

    .factory-dropdown a {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 12px 14px;
        border-radius: 9px;
        color: #333;
        text-decoration: none;
        font-size: 13px;
        font-weight: 500;
        transition: all .25s ease;
    }

    .factory-dropdown a:hover {
        background: #fff7df;
        color: #d18f00;
        padding-left: 18px;
    }

    /* =========================
       CTA
    ========================= */

    .factory-quote-btn {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 13px 19px;
        border-radius: 10px;
        background: #111;
        color: #fff;
        text-decoration: none;
        font-size: 12px;
        font-weight: 700;
        transition: all .3s ease;
    }

    .factory-quote-btn:hover {
        background: #ff9b2d;
        color: #111;
        transform: translateY(-2px);
        box-shadow: 0 8px 20px rgba(232,165,0,.25);
    }

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

    .factory-mobile-btn {
        width: 46px;
        height: 46px;
        border: 0;
        border-radius: 12px;
        background: #111;
        color: #fff;
        font-size: 22px;
        display: none;
        align-items: center;
        justify-content: center;
    }

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

    .factory-offcanvas {
        width: min(90%, 390px) !important;
        border: 0 !important;
        background: #111 !important;
    }

    .factory-mobile-header {
        padding: 22px 20px;
        border-bottom: 1px solid rgba(255,255,255,.08);
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .factory-mobile-logo {
        color: #fff;
        font-size: 18px;
        font-weight: 800;
        text-decoration: none;
    }

    .factory-close {
        width: 42px;
        height: 42px;
        border: 1px solid rgba(255,255,255,.12);
        border-radius: 10px;
        background: rgba(255,255,255,.05);
        color: #fff;
        font-size: 20px;
    }

    .factory-mobile-body {
        padding: 20px;
    }

    .factory-mobile-menu {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .factory-mobile-menu li {
        margin-bottom: 8px;
    }

    .factory-mobile-menu a {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 15px 15px;
        border-radius: 12px;
        color: #ddd;
        text-decoration: none;
        font-size: 15px;
        font-weight: 600;
        transition: all .3s ease;
    }

    .factory-mobile-menu a:hover {
        background: rgba(232,165,0,.1);
        color: #ff9b2d;
        padding-left: 20px;
    }

    .factory-mobile-menu a .menu-left {
        display: flex;
        align-items: center;
        gap: 13px;
    }

    .factory-mobile-menu a .menu-icon {
        width: 36px;
        height: 36px;
        border-radius: 9px;
        background: rgba(255,255,255,.06);
        display: flex;
        align-items: center;
        justify-content: center;
        color: #ff9b2d;
    }

    /* Mobile dropdown */

    .factory-mobile-submenu {
        display: none;
        padding: 5px 0 5px 48px;
    }

    .factory-mobile-submenu a {
        padding: 11px 12px;
        font-size: 13px;
        color: #aaa;
    }

    .factory-mobile-submenu.show {
        display: block;
        animation: menuSlide .3s ease;
    }

    @keyframes menuSlide {
        from {
            opacity: 0;
            transform: translateY(-5px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    .factory-mobile-cta {
        margin-top: 25px;
        padding-top: 20px;
        border-top: 1px solid rgba(255,255,255,.08);
    }

    .factory-mobile-cta a {
        width: 100%;
        justify-content: center;
        background: #ff9b2d;
        color: #111;
        padding: 15px;
        border-radius: 12px;
    }

    /* =========================
       DEMO HERO
    ========================= */

    .factory-demo-hero {
        min-height: 100vh;
        background:
            linear-gradient(120deg, rgba(0,0,0,.9), rgba(0,0,0,.55)),
            url('img/factory-banner.jpg') center/cover;
        display: flex;
        align-items: center;
        padding-top: 100px;
    }

    .factory-demo-content {
        color: #fff;
        max-width: 750px;
    }

    .factory-demo-content small {
        color: #ff9b2d;
        font-weight: 700;
        letter-spacing: 3px;
    }

    .factory-demo-content h1 {
        font-size: clamp(42px, 6vw, 78px);
        font-weight: 800;
        line-height: 1;
        margin: 20px 0;
    }

    .factory-demo-content p {
        color: #ddd;
        font-size: 17px;
        line-height: 1.8;
        max-width: 650px;
    }

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

    @media(max-width: 1199px) {

        .factory-menu > li > a {
            padding-left: 9px;
            padding-right: 9px;
            font-size: 12px;
        }

        .factory-quote-btn {
            padding: 12px 14px;
        }

    }

    @media(max-width: 991px) {

        .factory-menu,
        .factory-desktop-cta {
            display: none;
        }

        .factory-mobile-btn {
            display: flex;
        }

        .factory-header {
            padding: 12px 0;
        }

        .factory-demo-hero {
            min-height: 100svh;
        }

    }

    @media(max-width: 575px) {

        .factory-logo-icon {
            width: 42px;
            height: 42px;
            font-size: 21px;
        }

        .factory-logo-text strong {
            font-size: 17px;
        }

        .factory-logo-text span {
            font-size: 8px;
        }

        .factory-mobile-btn {
            width: 42px;
            height: 42px;
        }

        .factory-offcanvas {
            width: 88% !important;
        }

    }




    /* =========================
   HERO
========================= */

.factory-hero {

    position: relative;

    min-height: 100vh;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 75% 50%,
            rgba(232,165,0,.12),
            transparent 30%
        ),
        #080909;

    color: #fff;

}


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

.factory-hero-grid {

    position: absolute;

    inset: 0;

    opacity: .15;

    background-image:

        linear-gradient(
            rgba(255,255,255,.08) 1px,
            transparent 1px
        ),

        linear-gradient(
            90deg,
            rgba(255,255,255,.08) 1px,
            transparent 1px
        );

    background-size: 70px 70px;

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

    animation: gridMove 15s linear infinite;

}


@keyframes gridMove {

    from {
        background-position: 0 0;
    }

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

}


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

.factory-glow {

    position: absolute;

    width: 450px;

    height: 450px;

    border-radius: 50%;

    filter: blur(100px);

    pointer-events: none;

}


.glow-one {

    background: rgba(232,165,0,.10);

    right: 10%;

    top: 20%;

    animation: glowMove 7s ease-in-out infinite alternate;

}


.glow-two {

    background: rgba(0,110,255,.07);

    left: 5%;

    bottom: 5%;

}


@keyframes glowMove {

    from {
        transform: translate(0,0);
    }

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

}


/* =========================
   PARTICLES
========================= */

.factory-particles span {

    position: absolute;

    width: 4px;

    height: 4px;

    border-radius: 50%;

    background: #ff9b2d;

    opacity: .5;

    animation: particleFloat 8s infinite linear;

}


.factory-particles span:nth-child(1) {
    left: 10%;
    top: 20%;
}

.factory-particles span:nth-child(2) {
    left: 25%;
    top: 70%;
    animation-delay: 2s;
}

.factory-particles span:nth-child(3) {
    left: 45%;
    top: 30%;
    animation-delay: 4s;
}

.factory-particles span:nth-child(4) {
    left: 60%;
    top: 80%;
    animation-delay: 1s;
}

.factory-particles span:nth-child(5) {
    left: 80%;
    top: 25%;
    animation-delay: 3s;
}

.factory-particles span:nth-child(6) {
    left: 90%;
    top: 60%;
    animation-delay: 5s;
}

.factory-particles span:nth-child(7) {
    left: 35%;
    top: 90%;
    animation-delay: 2s;
}

.factory-particles span:nth-child(8) {
    left: 70%;
    top: 10%;
    animation-delay: 4s;
}


@keyframes particleFloat {

    0% {
        transform: translateY(30px);
        opacity: 0;
    }

    30% {
        opacity: .6;
    }

    70% {
        opacity: .4;
    }

    100% {
        transform: translateY(-150px);
        opacity: 0;
    }

}


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

.factory-hero-content {

    position: relative;

    z-index: 3;

    padding: 80px 0;

}


.factory-hero-tag {

    display: flex;

    align-items: center;

    gap: 12px;

    color: #ff9b2d;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 3px;

    margin-bottom: 25px;

}


.tag-line {

    width: 40px;

    height: 1px;

    background: #ff9b2d;

}


.tag-dot {

    width: 5px;

    height: 5px;

    border-radius: 50%;

    background: #ff9b2d;

}


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

.factory-hero-content h1 {

    font-size: clamp(
        48px,
        6vw,
        82px
    );

    line-height: .98;

    letter-spacing: -4px;

    font-weight: 800;

    margin-bottom: 28px;

}


.factory-hero-content h1 span {

    color: #ff9b2d;

    display: inline-block;

}


.factory-hero-content h1 strong {

    position: relative;

    color: transparent;

    -webkit-text-stroke: 1px rgba(255,255,255,.65);

}


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

.factory-hero-content p {

    max-width: 600px;

    color: #aaa;

    font-size: 16px;

    line-height: 1.8;

    margin-bottom: 35px;

}


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

.factory-hero-buttons {

    display: flex;

    align-items: center;

    gap: 15px;

    flex-wrap: wrap;

}


.factory-primary-btn {

    display: inline-flex;

    align-items: center;

    gap: 18px;

    padding: 6px 7px 6px 22px;

    background: #ff9b2d;

    color: #111;

    text-decoration: none;

    border-radius: 8px;

    font-size: 13px;

    font-weight: 700;

    transition: .35s ease;

}


.factory-primary-btn span {

    width: 42px;

    height: 42px;

    background: #111;

    color: #fff;

    border-radius: 6px;

    display: flex;

    align-items: center;

    justify-content: center;

    transition: .35s ease;

}


.factory-primary-btn:hover {

    transform: translateY(-4px);

    box-shadow:
        0 15px 35px rgba(232,165,0,.2);

}


.factory-primary-btn:hover span {

    transform: rotate(45deg);

}


.factory-secondary-btn {

    color: #fff;

    text-decoration: none;

    font-size: 13px;

    font-weight: 600;

    display: flex;

    align-items: center;

    gap: 9px;

    padding: 12px;

}


.factory-secondary-btn i {

    color: #ff9b2d;

    font-size: 21px;

}


/* =========================
   STATS
========================= */

.factory-hero-stats {

    display: flex;

    align-items: center;

    gap: 25px;

    margin-top: 55px;

}


.hero-stat {

    display: flex;

    flex-direction: column;

}


.hero-stat strong {

    font-size: 26px;

    font-weight: 800;

    color: #fff;

}


.hero-stat small {

    color: #777;

    font-size: 10px;

    text-transform: uppercase;

    letter-spacing: 1px;

    margin-top: 4px;

}


.hero-stat-line {

    height: 35px;

    width: 1px;

    background: rgba(255,255,255,.15);

}


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

.factory-hero-visual {

    position: relative;

    height: 650px;

    display: flex;

    align-items: center;

    justify-content: center;

}


.factory-main-image {

    position: relative;

    width: 85%;

    height: 500px;

    overflow: hidden;

    border-radius: 5px;

    transform: perspective(1000px)
               rotateY(-6deg);

    box-shadow:
        0 30px 80px rgba(0,0,0,.6);

}


.factory-main-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    filter: grayscale(15%);

    transition: transform 1s ease;

}


.factory-main-image:hover img {

    transform: scale(1.08);

}


.factory-image-overlay {

    position: absolute;

    width: 85%;

    height: 500px;

    border: 1px solid rgba(232,165,0,.4);

    transform:
        translate(25px,25px)
        perspective(1000px)
        rotateY(-6deg);

    pointer-events: none;

}


/* =========================
   ROTATING CIRCLE
========================= */

.factory-rotating-circle {

    position: absolute;

    width: 150px;

    height: 150px;

    right: 2%;

    top: 15%;

    animation: rotateCircle 18s linear infinite;

}


.factory-rotating-circle svg {

    width: 100%;

    height: 100%;

}


.factory-rotating-circle text {

    fill: #ff9b2d;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 3px;

}


@keyframes rotateCircle {

    to {
        transform: rotate(360deg);
    }

}


/* =========================
   FLOATING CARDS
========================= */

.factory-floating-card {

    position: absolute;

    z-index: 5;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 14px 18px;

    background: rgba(20,20,20,.9);

    backdrop-filter: blur(15px);

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

    border-radius: 10px;

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

}


.card-one {

    left: 0;

    bottom: 18%;

    animation: floatingCard 4s ease-in-out infinite;

}


.card-two {

    right: 0;

    bottom: 7%;

    animation: floatingCard 5s ease-in-out infinite reverse;

}


.floating-icon {

    width: 40px;

    height: 40px;

    border-radius: 8px;

    background: rgba(232,165,0,.12);

    color: #ff9b2d;

    display: flex;

    align-items: center;

    justify-content: center;

}


.factory-floating-card strong {

    display: block;

    font-size: 12px;

}


.factory-floating-card span {

    display: block;

    font-size: 9px;

    color: #777;

    margin-top: 3px;

}


@keyframes floatingCard {

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

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

}


/* =========================
   SIDE LABEL
========================= */

.factory-side-label {

    position: absolute;

    right: -35px;

    top: 40%;

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 5px;

    color: #777;

}


.factory-side-label span {

    font-size: 8px;

    letter-spacing: 2px;

}


.factory-side-label strong {

    color: #ff9b2d;

    font-size: 18px;

}


/* =========================
   FRAME
========================= */

.factory-frame {

    position: absolute;

    width: 55px;

    height: 55px;

    border-color: #ff9b2d;

    border-style: solid;

}


.frame-top {

    top: 50px;

    left: 25px;

    border-width: 2px 0 0 2px;

}


.frame-bottom {

    bottom: 50px;

    right: 25px;

    border-width: 0 2px 2px 0;

}


/* =========================
   SCROLL
========================= */

.factory-scroll {

    position: absolute;

    bottom: 25px;

    left: 50%;

    transform: translateX(-50%);

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 8px;

    z-index: 4;

}


.factory-scroll span {

    font-size: 8px;

    letter-spacing: 3px;

    color: #777;

}


.scroll-line {

    width: 1px;

    height: 45px;

    background: rgba(255,255,255,.15);

    position: relative;

    overflow: hidden;

}


.scroll-line span {

    position: absolute;

    width: 100%;

    height: 15px;

    background: #ff9b2d;

    top: -15px;

    animation: scrollDown 2s infinite;

}


@keyframes scrollDown {

    to {
        top: 100%;
    }

}


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

@media(max-width: 991px) {

    .factory-hero-content {

        padding-top: 110px;

        padding-bottom: 30px;

    }


    .factory-hero-content h1 {

        letter-spacing: -2px;

    }


    .factory-hero-visual {

        height: 500px;

        margin-top: 10px;

    }


    .factory-main-image,
    .factory-image-overlay {

        height: 360px;

        width: 90%;

    }


    .factory-rotating-circle {

        width: 100px;

        height: 100px;

        right: 0;

        top: 5%;

    }


    .card-one {

        left: 0;

        bottom: 15%;

    }


    .card-two {

        right: 0;

        bottom: 5%;

    }


    .factory-side-label {

        display: none;

    }

}


@media(max-width: 575px) {

    .factory-hero-content {

        padding-top: 100px;

    }


    .factory-hero-content h1 {

        font-size: 45px;

        line-height: 1;

    }


    .factory-hero-content p {

        font-size: 14px;

    }


    .factory-hero-buttons {

        flex-direction: column;

        align-items: flex-start;

    }


    .factory-hero-stats {

        gap: 14px;

        margin-top: 35px;

    }


    .hero-stat strong {

        font-size: 20px;

    }


    .hero-stat small {

        font-size: 8px;

    }


    .factory-hero-visual {

        height: 420px;

    }


    .factory-main-image,
    .factory-image-overlay {

        height: 300px;

        width: 94%;

    }


    .factory-floating-card {

        padding: 9px 12px;

    }


    .floating-icon {

        width: 32px;

        height: 32px;

    }


    .factory-floating-card strong {

        font-size: 10px;

    }


    .factory-floating-card span {

        font-size: 8px;

    }


    .factory-rotating-circle {

        width: 80px;

        height: 80px;

    }


    .factory-scroll {

        display: none;

    }

}









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

.factory-about {

    position: relative;

    padding: 140px 0 120px;

    background: #f5f5f2;

    overflow: hidden;

    color: #111;

}


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

.about-bg-grid {

    position: absolute;

    inset: 0;

    opacity: .35;

    background-image:

        linear-gradient(
            rgba(0,0,0,.035) 1px,
            transparent 1px
        ),

        linear-gradient(
            90deg,
            rgba(0,0,0,.035) 1px,
            transparent 1px
        );

    background-size: 70px 70px;

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

}


/* ===================================
   ORBITS
=================================== */

.about-orbit {

    position: absolute;

    border: 1px solid rgba(232,165,0,.15);

    border-radius: 50%;

    pointer-events: none;

}


.orbit-1 {

    width: 600px;

    height: 600px;

    right: -300px;

    top: 100px;

    animation: aboutOrbit 20s linear infinite;

}


.orbit-2 {

    width: 400px;

    height: 400px;

    left: -250px;

    bottom: 50px;

    animation: aboutOrbit 15s linear infinite reverse;

}


@keyframes aboutOrbit {

    to {
        transform: rotate(360deg);
    }

}


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

.about-heading-row {

    position: relative;

    z-index: 2;

    margin-bottom: 90px;

}


.about-section-tag {

    display: flex;

    align-items: center;

    gap: 12px;

    color: #a87300;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 3px;

    margin-bottom: 20px;

}


.about-section-tag span {

    width: 45px;

    height: 2px;

    background: #ff9b2d;

}


.about-section-tag small {

    color: #999;

    font-size: 10px;

    margin-left: 10px;

}


.about-main-title {

    font-size: clamp(
        45px,
        5vw,
        72px
    );

    line-height: 1;

    letter-spacing: -3px;

    font-weight: 800;

    margin: 0;

}


.about-main-title span {

    color: #999;

}


.about-intro {

    font-size: 16px;

    line-height: 1.9;

    color: #666;

    margin: 0;

    max-width: 470px;

}


/* ===================================
   MAIN ROW
=================================== */

.about-main-row {

    position: relative;

    z-index: 2;

}


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

.about-image-wrap {

    position: relative;

    height: 600px;

}


.about-image {

    position: absolute;

    left: 25px;

    top: 0;

    width: 85%;

    height: 530px;

    overflow: hidden;

    border-radius: 4px;

    box-shadow:
        0 35px 70px rgba(0,0,0,.15);

}


.about-image::after {

    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            135deg,
            rgba(0,0,0,.05),
            rgba(0,0,0,.45)
        );

}


.about-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition:
        transform 1.5s cubic-bezier(.2,.8,.2,1);

}


.about-image-wrap:hover
.about-image img {

    transform: scale(1.1);

}


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

.about-image-number {

    position: absolute;

    left: 0;

    top: 40px;

    z-index: 3;

    display: flex;

    align-items: center;

    gap: 10px;

}


.about-image-number span {

    font-size: 50px;

    font-weight: 800;

    color: #111;

    line-height: 1;

}


.about-image-number div {

    width: 40px;

    height: 1px;

    background: #ff9b2d;

}


.about-image-number small {

    font-size: 8px;

    line-height: 1.4;

    letter-spacing: 1px;

    color: #777;

}


/* ===================================
   EXPERIENCE CARD
=================================== */

.about-experience-card {

    position: absolute;

    right: 0;

    bottom: 35px;

    z-index: 5;

    display: flex;

    align-items: center;

    gap: 14px;

    padding: 18px 25px;

    background: #111;

    color: #fff;

    border-left: 4px solid #ff9b2d;

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

    animation:
        aboutFloat 4s ease-in-out infinite;

}


@keyframes aboutFloat {

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

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

}


.experience-icon {

    width: 42px;

    height: 42px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: rgba(232,165,0,.12);

    color: #ff9b2d;

    border-radius: 8px;

}


.about-experience-card strong {

    display: block;

    font-size: 25px;

    line-height: 1;

}


.about-experience-card > div:last-child > span {

    display: block;

    color: #888;

    font-size: 9px;

    text-transform: uppercase;

    letter-spacing: 1px;

    margin-top: 5px;

}


/* ===================================
   CORNERS
=================================== */

.about-corner {

    position: absolute;

    width: 60px;

    height: 60px;

    border-color: #ff9b2d;

    border-style: solid;

}


.corner-1 {

    top: -20px;

    right: 50px;

    border-width: 2px 2px 0 0;

}


.corner-2 {

    bottom: 20px;

    left: 0;

    border-width: 0 0 2px 2px;

}


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

.about-content {

    padding-left: 40px;

}


.about-mini-heading {

    display: flex;

    align-items: center;

    gap: 15px;

    color: #999;

    font-size: 10px;

    letter-spacing: 3px;

    font-weight: 800;

    margin-bottom: 20px;

}


.about-mini-heading div {

    width: 50px;

    height: 1px;

    background: #ddd;

}


.about-content h3 {

    font-size: 42px;

    line-height: 1.1;

    letter-spacing: -2px;

    font-weight: 800;

    margin-bottom: 25px;

}


.about-content h3 span {

    color: #e0a000;

}


.about-content > p {

    color: #666;

    font-size: 14px;

    line-height: 1.9;

    max-width: 570px;

}


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

.about-features {

    margin-top: 35px;

    border-top: 1px solid #ddd;

}


.about-feature {

    display: flex;

    gap: 20px;

    padding: 17px 0;

    border-bottom: 1px solid #ddd;

    transition: .35s ease;

}


.about-feature:hover {

    padding-left: 10px;

}


.feature-number {

    color: #e0a000;

    font-size: 10px;

    font-weight: 800;

    padding-top: 4px;

}


.about-feature strong {

    display: block;

    font-size: 13px;

    margin-bottom: 5px;

}


.about-feature p {

    margin: 0;

    color: #888;

    font-size: 11px;

}


/* ===================================
   READ BUTTON
=================================== */

.about-read-btn {

    display: inline-flex;

    align-items: center;

    gap: 20px;

    color: #111;

    text-decoration: none;

    font-size: 12px;

    font-weight: 800;

    margin-top: 30px;

}


.about-read-btn span {

    width: 43px;

    height: 43px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: #111;

    color: #fff;

    border-radius: 50%;

    transition: .35s ease;

}


.about-read-btn:hover span {

    background: #ff9b2d;

    color: #111;

    transform: rotate(45deg);

}


/* ===================================
   STATS
=================================== */

.about-stats {

    position: relative;

    z-index: 2;

    display: grid;

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

    margin-top: 110px;

    border-top: 1px solid #d7d7d2;

    border-bottom: 1px solid #d7d7d2;

}


.about-stat-item {

    display: flex;

    align-items: center;

    gap: 20px;

    padding: 35px 25px;

    border-right: 1px solid #d7d7d2;

}


.about-stat-item:last-child {

    border-right: 0;

}


.stat-big {

    font-size: 48px;

    line-height: 1;

    font-weight: 800;

    letter-spacing: -3px;

}


.stat-big sup {

    font-size: 18px;

    color: #e0a000;

}


.stat-text strong {

    display: block;

    font-size: 12px;

}


.stat-text span {

    display: block;

    color: #888;

    font-size: 9px;

    line-height: 1.4;

    margin-top: 5px;

}


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

.about-bottom-strip {

    position: relative;

    z-index: 2;

    margin-top: 70px;

    padding: 25px 30px;

    display: flex;

    align-items: center;

    gap: 25px;

    background: #111;

    color: #fff;

    overflow: hidden;

}


.about-bottom-strip::before {

    content: "";

    position: absolute;

    left: -100px;

    top: 0;

    width: 100px;

    height: 100%;

    background: linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,.1),
        transparent
    );

    animation: stripShine 4s infinite;

}


@keyframes stripShine {

    from {
        left: -100px;
    }

    to {
        left: 110%;
    }

}


.strip-icon {

    width: 55px;

    height: 55px;

    flex-shrink: 0;

    border-radius: 50%;

    border: 1px solid rgba(232,165,0,.4);

    display: flex;

    align-items: center;

    justify-content: center;

    color: #ff9b2d;

    font-size: 22px;

}


.strip-content {

    flex-grow: 1;

}


.strip-content small {

    display: block;

    color: #777;

    font-size: 8px;

    letter-spacing: 3px;

    margin-bottom: 5px;

}


.strip-content strong {

    font-size: 15px;

    font-weight: 600;

}


.strip-arrow {

    width: 50px;

    height: 50px;

    border: 1px solid rgba(255,255,255,.15);

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #ff9b2d;

}


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

@media(max-width:991px) {

    .factory-about {

        padding: 90px 0;

    }


    .about-heading-row {

        margin-bottom: 60px;

    }


    .about-intro {

        margin-top: 25px;

    }


    .about-image-wrap {

        margin-bottom: 60px;

    }


    .about-content {

        padding-left: 0;

    }


    .about-stats {

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

    }


    .about-stat-item:nth-child(2) {

        border-right: 0;

    }


    .about-stat-item:nth-child(1),
    .about-stat-item:nth-child(2) {

        border-bottom: 1px solid #d7d7d2;

    }

}


@media(max-width:575px) {

    .factory-about {

        padding: 75px 0;

    }


    .about-main-title {

        font-size: 43px;

        letter-spacing: -2px;

    }


    .about-image-wrap {

        height: 430px;

    }


    .about-image {

        width: 92%;

        height: 360px;

        left: 10px;

    }


    .about-experience-card {

        right: 0;

        bottom: 25px;

        padding: 13px 15px;

    }


    .about-content h3 {

        font-size: 34px;

    }


    .about-stats {

        grid-template-columns: 1fr;

    }


    .about-stat-item {

        border-right: 0 !important;

        border-bottom: 1px solid #d7d7d2;

    }


    .about-stat-item:last-child {

        border-bottom: 0;

    }


    .stat-big {

        font-size: 42px;

    }


    .about-bottom-strip {

        padding: 20px;

        gap: 15px;

    }


    .strip-content strong {

        font-size: 12px;

    }


    .strip-arrow {

        display: none;

    }

}




/* =========================================
   PRODUCTS SECTION
========================================= */

.factory-products {

    position: relative;

    padding: 140px 0 130px;

    background: #090a0a;

    color: #fff;

    overflow: hidden;

}


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

.products-grid-bg {

    position: absolute;

    inset: 0;

    opacity: .13;

    background-image:

        linear-gradient(
            rgba(255,255,255,.08) 1px,
            transparent 1px
        ),

        linear-gradient(
            90deg,
            rgba(255,255,255,.08) 1px,
            transparent 1px
        );

    background-size: 80px 80px;

    animation:
        productGridMove 20s linear infinite;

}


@keyframes productGridMove {

    from {
        background-position: 0 0;
    }

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

}


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

.products-glow {

    position: absolute;

    width: 500px;

    height: 500px;

    border-radius: 50%;

    filter: blur(130px);

    pointer-events: none;

}


.products-glow-1 {

    background: rgba(232,165,0,.07);

    top: 10%;

    right: -200px;

}


.products-glow-2 {

    background: rgba(0,110,255,.05);

    bottom: -250px;

    left: -200px;

}


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

.products-heading {

    position: relative;

    z-index: 2;

    margin-bottom: 75px;

}


.products-tag {

    display: flex;

    align-items: center;

    gap: 12px;

    color: #ff9b2d;

    font-size: 10px;

    font-weight: 800;

    letter-spacing: 3px;

    margin-bottom: 20px;

}


.products-tag > span {

    width: 45px;

    height: 2px;

    background: #ff9b2d;

}


.products-tag small {

    color: #666;

    margin-left: 8px;

}


.products-heading h2 {

    font-size: clamp(
        48px,
        6vw,
        76px
    );

    line-height: .95;

    letter-spacing: -4px;

    font-weight: 800;

    margin: 0;

}


.products-heading h2 span {

    color: #ff9b2d;

}


.products-intro {

    color: #888;

    font-size: 14px;

    line-height: 1.9;

    max-width: 470px;

    margin: 0 0 5px auto;

}


/* =========================================
   SHOWCASE
========================================= */

.products-showcase {

    position: relative;

    z-index: 3;

    display: grid;

    grid-template-columns: 280px 1fr;

    gap: 55px;

}


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

.products-sidebar {

    position: sticky;

    top: 120px;

    height: fit-content;

}


.products-sidebar-title {

    display: flex;

    align-items: center;

    justify-content: space-between;

    padding-bottom: 18px;

    margin-bottom: 5px;

    border-bottom: 1px solid rgba(255,255,255,.1);

    color: #666;

    font-size: 9px;

    font-weight: 800;

    letter-spacing: 2px;

}


.products-sidebar-title i {

    color: #ff9b2d;

}


/* =========================================
   CATEGORY
========================================= */

.product-category {

    width: 100%;

    border: 0;

    border-bottom: 1px solid rgba(255,255,255,.07);

    background: transparent;

    color: #777;

    padding: 20px 8px;

    display: grid;

    grid-template-columns: 30px 1fr 20px;

    align-items: center;

    gap: 10px;

    text-align: left;

    transition: .4s ease;

}


.product-category:hover {

    color: #fff;

    padding-left: 15px;

}


.product-category.active {

    color: #fff;

}


.category-number {

    font-size: 9px;

    color: #555;

}


.product-category.active
.category-number {

    color: #ff9b2d;

}


.category-name {

    font-size: 12px;

    font-weight: 600;

}


.product-category i {

    font-size: 13px;

    opacity: 0;

    transform: translateX(-8px);

    transition: .3s ease;

}


.product-category:hover i,
.product-category.active i {

    opacity: 1;

    transform: translateX(0);

    color: #ff9b2d;

}


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

.products-sidebar-bottom {

    margin-top: 50px;

    display: flex;

    align-items: center;

    gap: 13px;

    padding: 15px;

    background: rgba(255,255,255,.035);

    border: 1px solid rgba(255,255,255,.07);

}


.sidebar-gear {

    width: 40px;

    height: 40px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: rgba(232,165,0,.1);

    color: #ff9b2d;

}


.products-sidebar-bottom small {

    display: block;

    color: #555;

    font-size: 7px;

    letter-spacing: 2px;

}


.products-sidebar-bottom strong {

    font-size: 11px;

    letter-spacing: 1px;

}


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

.products-content {

    min-width: 0;

}


.product-showcase-card {

    display: none;

    position: relative;

    animation:
        productReveal .8s cubic-bezier(.2,.8,.2,1);

}


.product-showcase-card.active {

    display: block;

}


@keyframes productReveal {

    from {

        opacity: 0;

        transform:
            translateY(25px)
            scale(.98);

    }

    to {

        opacity: 1;

        transform:
            translateY(0)
            scale(1);

    }

}


/* =========================================
   NUMBER
========================================= */

.product-card-number {

    position: absolute;

    z-index: 6;

    top: 22px;

    left: 22px;

    font-size: 42px;

    line-height: 1;

    font-weight: 800;

    letter-spacing: -2px;

}


.product-card-number span {

    color: rgba(255,255,255,.4);

    font-size: 10px;

    letter-spacing: 1px;

}


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

.product-image {

    position: relative;

    height: 520px;

    overflow: hidden;

    background: #171818;

}


.product-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition:
        transform 1.2s cubic-bezier(.2,.8,.2,1);

}


.product-showcase-card:hover
.product-image img {

    transform: scale(1.08);

}


.product-image-overlay {

    position: absolute;

    inset: 0;

    background:

        linear-gradient(
            180deg,
            rgba(0,0,0,.5),
            transparent 35%,
            rgba(0,0,0,.8)
        );

    pointer-events: none;

}


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

.product-image::after {

    content: "";

    position: absolute;

    top: 0;

    left: -100%;

    width: 40%;

    height: 100%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.12),
            transparent
        );

    transform: skewX(-20deg);

    transition: none;

}


.product-showcase-card:hover
.product-image::after {

    left: 150%;

    transition:
        left 1.2s ease;

}


/* =========================================
   TECH CIRCLE
========================================= */

.product-tech-circle {

    position: absolute;

    width: 115px;

    height: 115px;

    right: 30px;

    top: 30px;

    border: 1px dashed rgba(232,165,0,.55);

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    animation:
        techRotate 12s linear infinite;

}


.tech-circle-inner {

    width: 55px;

    height: 55px;

    border-radius: 50%;

    background: rgba(0,0,0,.55);

    backdrop-filter: blur(8px);

    display: flex;

    align-items: center;

    justify-content: center;

    color: #ff9b2d;

    font-size: 20px;

}


@keyframes techRotate {

    to {
        transform: rotate(360deg);
    }

}


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

.product-floating-badge {

    position: absolute;

    left: 25px;

    bottom: 25px;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 13px 17px;

    background: rgba(10,10,10,.82);

    backdrop-filter: blur(12px);

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

}


.product-floating-badge > i {

    width: 36px;

    height: 36px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: rgba(232,165,0,.1);

    color: #ff9b2d;

}


.product-floating-badge strong {

    display: block;

    font-size: 9px;

    letter-spacing: 1px;

}


.product-floating-badge span {

    display: block;

    color: #777;

    font-size: 8px;

    margin-top: 3px;

}


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

.product-card-content {

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 30px;

    padding: 30px 5px 0;

}


.product-card-content small {

    color: #ff9b2d;

    font-size: 8px;

    font-weight: 800;

    letter-spacing: 2px;

}


.product-card-content h3 {

    font-size: 36px;

    letter-spacing: -1.5px;

    font-weight: 800;

    margin: 8px 0 10px;

}


.product-card-content p {

    color: #777;

    font-size: 12px;

    line-height: 1.7;

    max-width: 560px;

    margin: 0;

}


/* =========================================
   VIEW BUTTON
========================================= */

.product-view-btn {

    flex-shrink: 0;

    width: 62px;

    height: 62px;

    border: 1px solid rgba(255,255,255,.15);

    border-radius: 50%;

    color: #fff;

    text-decoration: none;

    display: flex;

    align-items: center;

    justify-content: center;

    position: relative;

    transition: .4s ease;

}


.product-view-btn span {

    position: absolute;

    right: 75px;

    white-space: nowrap;

    font-size: 8px;

    letter-spacing: 2px;

    color: #777;

    opacity: 0;

    transform: translateX(10px);

    transition: .3s ease;

}


.product-view-btn:hover {

    background: #ff9b2d;

    border-color: #ff9b2d;

    color: #111;

    transform: rotate(45deg);

}


.product-view-btn:hover span {

    opacity: 1;

    transform: translateX(0);

}


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

.products-bottom {

    position: relative;

    z-index: 3;

    margin-top: 75px;

    padding-top: 25px;

    border-top: 1px solid rgba(255,255,255,.1);

    display: flex;

    align-items: center;

    justify-content: space-between;

}


.products-bottom-left {

    display: flex;

    align-items: center;

    gap: 12px;

    color: #555;

    font-size: 8px;

    letter-spacing: 2px;

    font-weight: 700;

}


.bottom-line {

    width: 35px;

    height: 1px;

    background: #ff9b2d;

}


.products-all-btn {

    display: flex;

    align-items: center;

    gap: 15px;

    color: #fff;

    text-decoration: none;

    font-size: 11px;

    font-weight: 700;

    transition: .3s ease;

}


.products-all-btn i {

    width: 35px;

    height: 35px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: #ff9b2d;

    color: #111;

    border-radius: 50%;

    transition: .3s ease;

}


.products-all-btn:hover {

    color: #ff9b2d;

}


.products-all-btn:hover i {

    transform: rotate(45deg);

}


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

@media(max-width:991px) {

    .factory-products {

        padding: 90px 0;

    }


    .products-showcase {

        grid-template-columns: 1fr;

        gap: 30px;

    }


    .products-sidebar {

        position: relative;

        top: auto;

    }


    .product-category-list {

        display: flex;

        overflow-x: auto;

        gap: 8px;

        padding-bottom: 8px;

        scrollbar-width: none;

    }


    .product-category-list::-webkit-scrollbar {

        display: none;

    }


    .product-category {

        min-width: 190px;

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

        padding: 13px;

        grid-template-columns:
            25px 1fr 15px;

    }


    .products-sidebar-bottom {

        display: none;

    }


    .products-intro {

        margin: 25px 0 0;

    }

}


@media(max-width:575px) {

    .factory-products {

        padding: 75px 0;

    }


    .products-heading {

        margin-bottom: 45px;

    }


    .products-heading h2 {

        font-size: 45px;

        letter-spacing: -2px;

    }


    .product-image {

        height: 390px;

    }


    .product-card-number {

        font-size: 32px;

    }


    .product-tech-circle {

        width: 85px;

        height: 85px;

        right: 15px;

        top: 15px;

    }


    .product-floating-badge {

        left: 15px;

        bottom: 15px;

    }


    .product-card-content {

        display: block;

        padding-top: 25px;

    }


    .product-card-content h3 {

        font-size: 30px;

    }


    .product-card-content p {

        font-size: 11px;

    }


    .product-view-btn {

        margin-top: 20px;

    }


    .product-view-btn span {

        display: none;

    }


    .products-bottom {

        display: block;

    }


    .products-all-btn {

        margin-top: 20px;

    }

}





/* =====================================================
   TESTIMONIAL SECTION
===================================================== */

.mf-testimonial-section{
    position:relative;
    overflow:hidden;
    background:#f5f5f2;
    color:#101111;
    padding:115px 0 95px;
}


/* Background Grid */

.mf-testimonial-grid{
    position:absolute;
    inset:0;

    background-image:
        linear-gradient(
            rgba(0,0,0,.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(0,0,0,.035) 1px,
            transparent 1px
        );

    background-size:70px 70px;

    animation:mfTestGrid 20s linear infinite;

    pointer-events:none;
}

@keyframes mfTestGrid{

    from{
        background-position:0 0;
    }

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

}


/* Floating Orbs */

.mf-testimonial-orb{
    position:absolute;
    border-radius:50%;
    filter:blur(80px);
    pointer-events:none;
}

.mf-testimonial-orb-1{
    width:350px;
    height:350px;
    background:rgba(232,165,0,.08);
    top:-180px;
    right:-100px;
}

.mf-testimonial-orb-2{
    width:280px;
    height:280px;
    background:rgba(0,0,0,.04);
    bottom:-100px;
    left:-100px;
}


/* Tag */

.mf-testimonial-tag{
    display:flex;
    align-items:center;
    gap:12px;

    color:#b77d00;

    font-size:11px;
    font-weight:800;

    letter-spacing:4px;

    margin-bottom:20px;
}

.mf-testimonial-tag span{
    width:38px;
    height:2px;
    background:#ff9b2d;
}


/* Heading */

.mf-testimonial-title{
    margin:0;

    font-size:
        clamp(38px,5vw,68px);

    line-height:1.02;

    letter-spacing:-2.5px;

    font-weight:300;
}

.mf-testimonial-title strong{
    font-weight:750;
    color:#b77d00;
}


/* Intro */

.mf-testimonial-intro{
    max-width:480px;
    margin-left:auto;

    color:#666;

    font-size:15px;
    line-height:1.9;

    margin-bottom:5px;
}


/* Main Wrapper */

.mf-testimonial-wrapper{
    position:relative;

    display:grid;

    grid-template-columns:
        32% 68%;

    margin-top:65px;

    background:#101111;

    min-height:430px;

    overflow:hidden;

    box-shadow:
        0 30px 70px rgba(0,0,0,.15);
}


/* Left Side */

.mf-testimonial-side{
    position:relative;

    padding:55px 45px;

    background:#151717;

    border-right:
        1px solid rgba(255,255,255,.08);

    overflow:hidden;
}

.mf-quote-symbol{
    position:absolute;

    right:25px;
    top:0;

    font-family:Georgia,serif;

    font-size:170px;

    line-height:1;

    color:rgba(232,165,0,.06);
}

.mf-testimonial-side-title{
    position:relative;
    z-index:2;

    font-size:32px;
    line-height:1.1;

    font-weight:600;

    color:#fff;

    margin-top:35px;
}

.mf-testimonial-side-title span{
    color:#ff9b2d;
}

.mf-testimonial-side-line{
    width:55px;
    height:2px;

    background:#ff9b2d;

    margin:30px 0;
}

.mf-testimonial-side p{
    position:relative;
    z-index:2;

    color:#777;

    font-size:13px;

    line-height:1.8;

    max-width:280px;
}


/* Rating */

.mf-testimonial-rating{
    position:absolute;

    left:45px;
    bottom:40px;
}

.mf-stars{
    color:#ff9b2d;
    letter-spacing:3px;
    font-size:14px;
    margin-bottom:8px;
}

.mf-testimonial-rating span{
    color:#777;
    font-size:10px;
}


/* Slider */

.mf-testimonial-slider{
    position:relative;
    overflow:hidden;
    min-width:0;
}

.mf-testimonial-track{
    position:relative;
    width:100%;
    height:100%;
}

.mf-testimonial-item{
    display:none;

    min-height:430px;

    padding:60px 65px 45px;

    color:#fff;

    animation:mfTestimonialIn .7s ease;
}

.mf-testimonial-item.active{
    display:block;
}

@keyframes mfTestimonialIn{

    0%{
        opacity:0;
        transform:
            translateX(50px)
            scale(.97);
    }

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

}


/* Top */

.mf-testimonial-top{
    display:flex;
    align-items:center;
    justify-content:space-between;

    margin-bottom:45px;
}

.mf-testimonial-number{
    color:#666;

    font-size:10px;

    letter-spacing:3px;
}

.mf-testimonial-stars{
    color:#ff9b2d;

    letter-spacing:5px;

    font-size:13px;
}


/* Quote */

.mf-testimonial-quote{
    max-width:850px;

    font-size:
        clamp(22px,2.4vw,34px);

    line-height:1.5;

    font-weight:300;

    color:#f2f2f2;

    letter-spacing:-.5px;
}


/* Author */

.mf-testimonial-author{
    display:flex;

    align-items:center;

    gap:15px;

    margin-top:45px;
}

.mf-author-image{
    width:52px;
    height:52px;

    border-radius:50%;

    overflow:hidden;

    border:
        2px solid #ff9b2d;

    padding:2px;
}

.mf-author-image img{
    width:100%;
    height:100%;

    object-fit:cover;

    border-radius:50%;
}

.mf-author-info strong{
    display:block;

    color:#fff;

    font-size:14px;

    margin-bottom:4px;
}

.mf-author-info span{
    color:#777;

    font-size:11px;
}


/* Controls */

.mf-testimonial-controls{
    position:absolute;

    left:65px;
    right:65px;
    bottom:28px;

    display:flex;

    align-items:center;

    justify-content:space-between;
}

.mf-testimonial-progress{
    width:180px;
    height:2px;

    background:#2d2f2f;

    overflow:hidden;
}

.mf-testimonial-progress span{
    display:block;

    width:25%;
    height:100%;

    background:#ff9b2d;

    transition:
        width .5s ease;
}

.mf-testimonial-buttons{
    display:flex;
    gap:8px;
}

.mf-testimonial-buttons button{
    width:42px;
    height:42px;

    border:
        1px solid rgba(255,255,255,.15);

    background:transparent;

    color:#fff;

    display:flex;

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

    transition:.35s;
}

.mf-testimonial-buttons button:hover{
    background:#ff9b2d;
    color:#111;
    border-color:#ff9b2d;

    transform:translateY(-3px);
}


/* Bottom Stats */

.mf-testimonial-stats{
    display:flex;

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

    margin-top:65px;

    padding-top:35px;

    border-top:
        1px solid rgba(0,0,0,.1);
}

.mf-test-stat{
    display:flex;
    align-items:baseline;
    flex-wrap:wrap;
}

.mf-test-stat strong{
    font-size:42px;
    line-height:1;

    font-weight:700;

    letter-spacing:-2px;
}

.mf-test-stat > span{
    color:#b77d00;
    font-size:20px;
    font-weight:700;
    margin-left:3px;
}

.mf-test-stat small{
    display:block;
    width:100%;

    margin-top:8px;

    color:#777;

    font-size:10px;

    text-transform:uppercase;

    letter-spacing:1.5px;
}

.mf-test-stat-line{
    height:40px;
    width:1px;

    background:rgba(0,0,0,.12);
}


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

@media(max-width:991px){

    .mf-testimonial-wrapper{
        grid-template-columns:1fr;
    }

    .mf-testimonial-side{
        min-height:260px;
        border-right:0;
        border-bottom:
            1px solid rgba(255,255,255,.08);
    }

    .mf-testimonial-side-title{
        margin-top:10px;
    }

    .mf-testimonial-rating{
        position:static;
        margin-top:25px;
    }

    .mf-testimonial-side p{
        display:none;
    }

    .mf-testimonial-item{
        padding:45px 35px 100px;
        min-height:400px;
    }

    .mf-testimonial-controls{
        left:35px;
        right:35px;
    }

}


@media(max-width:767px){

    .mf-testimonial-section{
        padding:75px 0 65px;
    }

    .mf-testimonial-title{
        font-size:40px;
    }

    .mf-testimonial-intro{
        margin:
            25px 0 0;
    }

    .mf-testimonial-wrapper{
        margin-top:45px;
    }

    .mf-testimonial-side{
        padding:35px 25px;
        min-height:230px;
    }

    .mf-testimonial-side-title{
        font-size:27px;
    }

    .mf-testimonial-item{
        padding:
            35px 25px 100px;

        min-height:440px;
    }

    .mf-testimonial-top{
        margin-bottom:30px;
    }

    .mf-testimonial-quote{
        font-size:22px;
        line-height:1.5;
    }

    .mf-testimonial-author{
        margin-top:35px;
    }

    .mf-testimonial-controls{
        left:25px;
        right:25px;
        bottom:25px;
    }

    .mf-testimonial-progress{
        width:100px;
    }

    .mf-testimonial-stats{
        display:grid;

        grid-template-columns:
            1fr 1fr;

        gap:30px;

        margin-top:45px;
    }

    .mf-test-stat-line{
        display:none;
    }

    .mf-test-stat strong{
        font-size:35px;
    }

}






/* ================= CLIENT SECTION ================= */

.mf-client-section{
    position:relative;
    overflow:hidden;
    background:#080909;
    padding:110px 0 90px;
    color:#fff;
}

/* Grid Background */

.mf-client-grid{
    position:absolute;
    inset:0;
    opacity:.08;
    background-image:
        linear-gradient(rgba(255,255,255,.15) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.15) 1px, transparent 1px);
    background-size:70px 70px;
    animation:mfGridMove 18s linear infinite;
}

@keyframes mfGridMove{
    from{
        background-position:0 0;
    }
    to{
        background-position:70px 70px;
    }
}


/* Glow */

.mf-client-glow{
    position:absolute;
    width:450px;
    height:450px;
    border-radius:50%;
    filter:blur(100px);
    pointer-events:none;
}

.mf-client-glow-1{
    background:rgba(232,165,0,.10);
    top:-200px;
    left:-150px;
}

.mf-client-glow-2{
    background:rgba(232,165,0,.07);
    bottom:-250px;
    right:-150px;
}


/* Tag */

.mf-client-tag{
    display:flex;
    align-items:center;
    gap:12px;
    color:#ff9b2d;
    font-size:12px;
    font-weight:700;
    letter-spacing:4px;
    margin-bottom:20px;
}

.mf-client-tag span{
    width:35px;
    height:2px;
    background:#ff9b2d;
    display:inline-block;
}


/* Heading */

.mf-client-title{
    font-size:clamp(38px,5vw,68px);
    line-height:1.02;
    font-weight:300;
    margin:0;
    letter-spacing:-2px;
}

.mf-client-title strong{
    font-weight:700;
    color:#ff9b2d;
}


/* Intro */

.mf-client-intro{
    max-width:500px;
    margin-left:auto;
    color:#999;
    font-size:15px;
    line-height:1.9;
    margin-bottom:5px;
}


/* Slider */

.mf-client-slider{
    position:relative;
    overflow:hidden;
    width:100%;
    margin-top:65px;
    
    mask-image:linear-gradient(
        to right,
        transparent,
        black 5%,
        black 95%,
        transparent
    );
    
    -webkit-mask-image:linear-gradient(
        to right,
        transparent,
        black 5%,
        black 95%,
        transparent
    );
}

.mf-client-track{
    display:flex;
    width:max-content;
    animation:mfClientScroll 28s linear infinite;
}

.mf-client-slider:hover .mf-client-track{
    animation-play-state:paused;
}

@keyframes mfClientScroll{
    from{
        transform:translateX(0);
    }
    to{
        transform:translateX(-50%);
    }
}


/* Client Card */

.mf-client-card{
    position:relative;
    width:250px;
    height:150px;
    margin-right:25px;
    background:#111313;
    border:1px solid rgba(255,255,255,.08);
    display:flex;
    justify-content:center;
    align-items:center;
    overflow:hidden;
    transition:.45s ease;
}

.mf-client-card::before{
    content:"";
    position:absolute;
    width:120px;
    height:120px;
    border-radius:50%;
    background:rgba(232,165,0,.06);
    filter:blur(20px);
    transition:.5s;
}

.mf-client-card:hover{
    border-color:rgba(232,165,0,.55);
    transform:translateY(-10px);
    box-shadow:
        0 20px 50px rgba(0,0,0,.45),
        0 0 30px rgba(232,165,0,.08);
}

.mf-client-card:hover::before{
    transform:scale(1.8);
    background:rgba(232,165,0,.12);
}


/* Logo */

.mf-client-card img{
    position:relative;
    z-index:2;
    max-width:145px;
    max-height:70px;
    width:auto;
    height:auto;
    object-fit:contain;
    filter:grayscale(1);
    opacity:.65;
    transition:.45s ease;
}

.mf-client-card:hover img{
    filter:grayscale(0);
    opacity:1;
    transform:scale(1.08);
}


/* Number */

.mf-client-number{
    position:absolute;
    top:12px;
    left:14px;
    font-size:9px;
    letter-spacing:2px;
    color:#555;
}


/* Bottom line */

.mf-client-line{
    position:absolute;
    bottom:0;
    left:0;
    width:0;
    height:2px;
    background:#ff9b2d;
    transition:.5s ease;
}

.mf-client-card:hover .mf-client-line{
    width:100%;
}


/* Bottom Trust */

.mf-client-bottom{
    margin-top:70px;
    padding-top:35px;
    border-top:1px solid rgba(255,255,255,.08);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
}

.mf-client-trust{
    display:flex;
    align-items:center;
    gap:15px;
}

.mf-trust-icon{
    width:48px;
    height:48px;
    border:1px solid rgba(232,165,0,.3);
    color:#ff9b2d;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:20px;
}

.mf-client-trust strong{
    display:block;
    font-size:13px;
    font-weight:600;
    margin-bottom:4px;
}

.mf-client-trust small{
    display:block;
    color:#666;
    font-size:11px;
}

.mf-client-divider{
    width:1px;
    height:40px;
    background:rgba(255,255,255,.1);
}


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

@media(max-width:767px){

    .mf-client-section{
        padding:75px 0 60px;
    }

    .mf-client-title{
        font-size:40px;
        letter-spacing:-1.5px;
    }

    .mf-client-intro{
        margin:25px 0 0;
        font-size:14px;
    }

    .mf-client-slider{
        margin-top:45px;
    }

    .mf-client-card{
        width:210px;
        height:130px;
        margin-right:15px;
    }

    .mf-client-card img{
        max-width:120px;
        max-height:60px;
    }

    .mf-client-bottom{
        margin-top:50px;
        flex-direction:column;
        align-items:flex-start;
        gap:22px;
    }

    .mf-client-divider{
        display:none;
    }

}




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

.mf-footer{
    position:relative;
    overflow:hidden;

    background:#080909;

    color:#fff;

    padding:
        0 0 30px;

    border-top:
        1px solid rgba(232,165,0,.15);
}


/* Background Glow */

.mf-footer-glow{
    position:absolute;

    width:700px;
    height:700px;

    border-radius:50%;

    top:-450px;
    left:50%;

    transform:translateX(-50%);

    background:
        rgba(232,165,0,.08);

    filter:blur(100px);

    pointer-events:none;
}


/* =====================================================
   CTA
===================================================== */

.mf-footer-cta{

    position:relative;

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:40px;

    padding:
        75px 0 70px;

    border-bottom:
        1px solid rgba(255,255,255,.08);

}


.mf-footer-mini-title{

    display:flex;

    align-items:center;

    gap:12px;

    color:#ff9b2d;

    font-size:10px;

    font-weight:800;

    letter-spacing:4px;

    margin-bottom:18px;

}


.mf-footer-mini-title span{

    width:35px;

    height:2px;

    background:#ff9b2d;

}


.mf-footer-cta h2{

    margin:0;

    font-size:
        clamp(42px,5vw,70px);

    line-height:1;

    font-weight:300;

    letter-spacing:-2px;

}


.mf-footer-cta h2 strong{

    color:#ff9b2d;

    font-weight:700;

}


.mf-footer-cta p{

    max-width:600px;

    color:#777;

    font-size:14px;

    line-height:1.8;

    margin:
        25px 0 0;

}


/* CTA Button */

.mf-footer-quote-btn{

    position:relative;

    display:flex;

    align-items:center;

    gap:25px;

    min-width:190px;

    height:65px;

    padding:0 12px 0 25px;

    background:#ff9b2d;

    color:#111;

    text-decoration:none;

    font-size:12px;

    font-weight:800;

    letter-spacing:1px;

    overflow:hidden;

    transition:.4s;

}


.mf-footer-quote-btn::before{

    content:"";

    position:absolute;

    width:0;
    height:100%;

    left:0;
    top:0;

    background:#fff;

    transition:.45s;

}


.mf-footer-quote-btn span,
.mf-footer-quote-btn i{

    position:relative;

    z-index:2;

}


.mf-footer-quote-btn i{

    margin-left:auto;

    width:42px;
    height:42px;

    display:flex;

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

    background:#111;

    color:#fff;

    font-size:17px;

    transition:.4s;

}


.mf-footer-quote-btn:hover{

    color:#111;

    transform:
        translateY(-5px);

    box-shadow:
        0 15px 40px rgba(232,165,0,.2);

}


.mf-footer-quote-btn:hover::before{
    width:100%;
}


.mf-footer-quote-btn:hover i{

    background:#ff9b2d;

    color:#111;

}


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

.mf-footer-main{

    display:grid;

    grid-template-columns:
        1.6fr
        1fr
        1.3fr
        1.3fr;

    gap:60px;

    padding:
        70px 0 60px;

}


/* Logo */

.mf-footer-logo{

    display:flex;

    align-items:center;

    gap:13px;

    text-decoration:none;

    color:#fff;

}


.mf-footer-logo strong{

    display:block;

    font-size:18px;

    letter-spacing:2px;

}


.mf-footer-logo small{

    display:block;

    margin-top:4px;

    color:#666;

    font-size:7px;

    letter-spacing:2px;

}


/* Logo Mark */

.mf-logo-mark{

    position:relative;

    width:40px;
    height:40px;

    border:
        2px solid #ff9b2d;

    display:flex;

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

    transform:
        rotate(45deg);

}


.mf-logo-mark span{

    position:absolute;

    width:18px;
    height:2px;

    background:#ff9b2d;

}


.mf-logo-mark span:nth-child(1){
    transform:rotate(90deg);
}

.mf-logo-mark span:nth-child(2){
    transform:rotate(0);
}

.mf-logo-mark span:nth-child(3){
    width:8px;
    transform:rotate(45deg);
}


/* About */

.mf-footer-about{

    max-width:300px;

    color:#666;

    font-size:12px;

    line-height:1.9;

    margin:
        28px 0 25px;

}


/* Social */

.mf-footer-social{

    display:flex;

    gap:8px;

}


.mf-footer-social a{

    width:38px;
    height:38px;

    display:flex;

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

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

    color:#777;

    text-decoration:none;

    transition:.35s;

}


.mf-footer-social a:hover{

    color:#111;

    background:#ff9b2d;

    border-color:#ff9b2d;

    transform:
        translateY(-4px);

}


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

.mf-footer-column h4{

    position:relative;

    font-size:12px;

    text-transform:uppercase;

    letter-spacing:2px;

    margin:
        5px 0 25px;

    color:#fff;

}


.mf-footer-column h4::after{

    content:"";

    display:block;

    width:28px;

    height:2px;

    background:#ff9b2d;

    margin-top:10px;

}


.mf-footer-column ul{

    padding:0;
    margin:0;

    list-style:none;

}


.mf-footer-column li{

    margin-bottom:13px;

}


.mf-footer-column li a{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:10px;

    color:#666;

    text-decoration:none;

    font-size:12px;

    transition:.3s;

}


.mf-footer-column li a i{

    opacity:0;

    color:#ff9b2d;

    transform:
        translateX(-5px);

    transition:.3s;

}


.mf-footer-column li a:hover{

    color:#ff9b2d;

    padding-left:5px;

}


.mf-footer-column li a:hover i{

    opacity:1;

    transform:
        translateX(0);

}


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

.mf-contact-item{

    display:flex;

    gap:13px;

    margin-bottom:22px;

}


.mf-contact-icon{

    flex-shrink:0;

    width:38px;
    height:38px;

    display:flex;

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

    border:
        1px solid rgba(232,165,0,.2);

    color:#ff9b2d;

}


.mf-contact-item small{

    display:block;

    color:#555;

    font-size:9px;

    text-transform:uppercase;

    letter-spacing:1.5px;

    margin-bottom:4px;

}


.mf-contact-item p{

    margin:0;

    color:#777;

    font-size:11px;

    line-height:1.6;

}


.mf-contact-item a{

    color:#aaa;

    text-decoration:none;

    font-size:11px;

    transition:.3s;

}


.mf-contact-item a:hover{

    color:#ff9b2d;

}


/* =====================================================
   NEWSLETTER
===================================================== */

.mf-footer-newsletter{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:40px;

    padding:
        35px 0;

    border-top:
        1px solid rgba(255,255,255,.08);

    border-bottom:
        1px solid rgba(255,255,255,.08);

}


.mf-newsletter-title{

    font-size:16px;

    font-weight:600;

    color:#fff;

}


.mf-footer-newsletter p{

    color:#666;

    font-size:11px;

    margin:
        7px 0 0;

}


.mf-newsletter-form{

    display:flex;

    gap:8px;

    min-width:480px;

}


.mf-newsletter-input{

    display:flex;

    align-items:center;

    gap:10px;

    flex:1;

    height:48px;

    padding:0 15px;

    background:#111313;

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

}


.mf-newsletter-input i{

    color:#ff9b2d;

}


.mf-newsletter-input input{

    width:100%;

    background:transparent;

    border:0;

    outline:0;

    color:#fff;

    font-size:12px;

}


.mf-newsletter-input input::placeholder{
    color:#555;
}


.mf-newsletter-form button{

    border:0;

    background:#ff9b2d;

    color:#111;

    padding:
        0 20px;

    height:48px;

    font-size:11px;

    font-weight:700;

    display:flex;

    align-items:center;

    gap:15px;

    transition:.3s;

}


.mf-newsletter-form button:hover{

    background:#fff;

}


.mf-newsletter-form button i{

    font-size:15px;

}


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

.mf-footer-bottom{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:25px;

    padding-top:28px;

    color:#444;

    font-size:10px;

}


.mf-footer-bottom-links{

    display:flex;

    gap:25px;

}


.mf-footer-bottom-links a{

    color:#555;

    text-decoration:none;

    transition:.3s;

}


.mf-footer-bottom-links a:hover{
    color:#ff9b2d;
}


/* Back Top */

.mf-back-top{

    width:42px;
    height:42px;

    display:flex;

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

    background:#111313;

    color:#ff9b2d;

    border:
        1px solid rgba(232,165,0,.2);

    text-decoration:none;

    transition:.35s;

}


.mf-back-top:hover{

    background:#ff9b2d;

    color:#111;

    transform:
        translateY(-5px);

}


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

@media(max-width:991px){

    .mf-footer-main{

        grid-template-columns:
            1.5fr 1fr 1fr;

        gap:45px;

    }

    .mf-footer-company{
        grid-column:span 3;
    }

    .mf-footer-newsletter{

        align-items:flex-start;
        flex-direction:column;

    }

    .mf-newsletter-form{

        width:100%;
        min-width:0;

    }

}


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

@media(max-width:767px){

    .mf-footer-cta{

        flex-direction:column;
        align-items:flex-start;

        padding:
            60px 0;

    }


    .mf-footer-cta h2{

        font-size:42px;

    }


    .mf-footer-cta p{

        font-size:13px;

    }


    .mf-footer-cta-action{

        width:100%;

    }


    .mf-footer-quote-btn{

        width:100%;

    }


    .mf-footer-main{

        grid-template-columns:1fr;

        gap:42px;

        padding:
            55px 0 45px;

    }


    .mf-footer-company{

        grid-column:auto;

    }


    .mf-footer-about{

        max-width:100%;

    }


    .mf-footer-newsletter{

        padding:
            30px 0;

    }


    .mf-newsletter-form{

        flex-direction:column;

        width:100%;

    }


    .mf-newsletter-form button{

        justify-content:center;

    }


    .mf-footer-bottom{

        flex-direction:column;

        align-items:flex-start;

        gap:20px;

    }


    .mf-footer-bottom-links{

        flex-wrap:wrap;

        gap:12px 20px;

    }


    .mf-back-top{

        position:absolute;

        right:20px;

        margin-top:-55px;

    }

}






/* =====================================================
   INNER PAGE HEADER
===================================================== */

.mf-inner-header{

    position:relative;

    min-height:330px;

    display:flex;

    align-items:center;

    overflow:hidden;

    background:#080909;

    color:#fff;

    padding:
        100px 0 45px;

}


/* Grid */

.mf-inner-grid{

    position:absolute;

    inset:0;

    opacity:.08;

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

    background-size:65px 65px;

    animation:
        mfInnerGridMove 18s linear infinite;

}


@keyframes mfInnerGridMove{

    from{
        background-position:0 0;
    }

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

}


/* Glow */

.mf-inner-glow{

    position:absolute;

    width:450px;
    height:450px;

    border-radius:50%;

    right:-150px;
    top:-200px;

    background:
        rgba(232,165,0,.12);

    filter:blur(100px);

}


/* Content */

.mf-inner-content{

    position:relative;

    padding-left:35px;

}


/* Gold Side Line */

.mf-inner-content::before{

    content:"";

    position:absolute;

    left:0;
    top:8px;

    width:2px;
    height:115px;

    background:
        linear-gradient(
            to bottom,
            #ff9b2d,
            transparent
        );

}


/* Breadcrumb */

.mf-inner-breadcrumb{

    display:flex;

    align-items:center;

    gap:10px;

    margin-bottom:22px;

    font-size:10px;

    text-transform:uppercase;

    letter-spacing:2px;

}


.mf-inner-breadcrumb a{

    color:#777;

    text-decoration:none;

    transition:.3s;

}


.mf-inner-breadcrumb a:hover{

    color:#ff9b2d;

}


.mf-inner-breadcrumb i{

    color:#ff9b2d;

    font-size:8px;

}


.mf-inner-breadcrumb span{

    color:#aaa;

}


/* Page Number */

.mf-inner-number{

    position:absolute;

    right:0;

    top:-20px;

    font-size:
        clamp(90px,12vw,170px);

    line-height:1;

    font-weight:800;

    color:rgba(255,255,255,.025);

    letter-spacing:-10px;

    user-select:none;

}


/* Heading */

.mf-inner-content h1{

    position:relative;

    z-index:2;

    margin:0;

    font-size:
        clamp(42px,6vw,72px);

    line-height:1;

    font-weight:300;

    letter-spacing:-2px;

}


.mf-inner-content h1 strong{

    color:#ff9b2d;

    font-weight:700;

}


/* Description */

.mf-inner-content p{

    position:relative;

    z-index:2;

    max-width:560px;

    margin:
        20px 0 0;

    color:#777;

    font-size:13px;

    line-height:1.8;

}


/* Bottom */

.mf-inner-bottom{

    display:flex;

    align-items:center;

    gap:15px;

    margin-top:45px;

    padding-top:20px;

    border-top:
        1px solid rgba(255,255,255,.08);

}


.mf-inner-bottom span{

    width:45px;

    height:2px;

    background:#ff9b2d;

}


.mf-inner-bottom small{

    color:#555;

    font-size:8px;

    letter-spacing:3px;

}


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

@media(max-width:767px){

    .mf-inner-header{

        min-height:300px;

        padding:
            95px 0 35px;

    }


    .mf-inner-content{

        padding-left:25px;

    }


    .mf-inner-content::before{

        height:95px;

    }


    .mf-inner-content h1{

        font-size:43px;

    }


    .mf-inner-content p{

        font-size:12px;

        max-width:90%;

    }


    .mf-inner-number{

        right:5px;

        top:-10px;

        font-size:100px;

    }


    .mf-inner-bottom{

        margin-top:35px;

    }


    .mf-inner-bottom small{

        font-size:7px;

        letter-spacing:2px;

    }

}