/* =========================================================
   MALATI IT SOLUTIONS
   HOME PAGE — PREMIUM VISUAL SYSTEM
   File: assets/css/home.css
========================================================= */


/* =========================================================
   GLOBAL HOME PAGE VARIABLES
========================================================= */

:root {
    --malati-green: #94c045;
    --malati-green-light: #a8cf5a;
    --malati-green-dark: #789f32;

    --malati-dark: #172019;
    --malati-dark-2: #202820;
    --malati-text: #3c4133;
    --malati-muted: #6f756b;

    --malati-light: #f7f9f3;
    --malati-white: #ffffff;

    --malati-border: rgba(148, 192, 69, 0.18);

    --malati-shadow:
        0 20px 55px rgba(32, 40, 32, 0.09);

    --malati-radius: 20px;
}


/* =========================================================
   BASIC RESET FOR HOME PAGE
========================================================= */

.malati-home-hero *,
.malati-intro-section *,
.malati-ecosystem-section *,
.malati-solutions-section *,
.malati-services-section *,
.malati-transformation-section *,
.malati-why-section *,
.malati-purpose-section *,
.malati-final-cta * {
    box-sizing: border-box;
}


/* =========================================================
   HERO
========================================================= */

.malati-home-hero {
    position: relative;
    min-height: 760px;

    display: flex;
    align-items: center;

    padding: 150px 0 100px;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 78% 45%,
            rgba(148, 192, 69, 0.13),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            #ffffff 0%,
            #f8faf5 55%,
            #eef4e6 100%
        );
}


/* Decorative glow */

.malati-hero-glow {
    position: absolute;

    width: 450px;
    height: 450px;

    border-radius: 50%;

    filter: blur(90px);

    pointer-events: none;
}


.malati-hero-glow-one {
    top: -180px;
    right: -120px;

    background: rgba(148, 192, 69, 0.18);
}


.malati-hero-glow-two {
    bottom: -250px;
    left: -150px;

    background: rgba(148, 192, 69, 0.08);
}


/* Eyebrow */

.malati-hero-eyebrow {
    display: flex;
    align-items: center;

    gap: 10px;

    margin-bottom: 24px;

    color: var(--malati-green-dark);

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 2.2px;
}


.malati-hero-eyebrow span {
    width: 35px;
    height: 2px;

    display: inline-block;

    background: var(--malati-green);
}


/* Hero heading */

.malati-home-hero h1 {
    margin: 0;

    max-width: 760px;

    color: var(--malati-dark);

    font-family: "Poppins", sans-serif;

    font-size: clamp(42px, 5vw, 70px);

    font-weight: 700;

    line-height: 1.08;

    letter-spacing: -2px;
}


.malati-home-hero h1 strong {
    display: block;

    color: var(--malati-green);

    font-weight: 700;
}


/* Hero paragraph */

.malati-hero-lead {
    max-width: 680px;

    margin: 28px 0 34px;

    color: #ffffff;

    font-size: 17px;

    line-height: 1.8;
}


/* =========================================================
   HERO BUTTONS
========================================================= */

.malati-hero-buttons {
    display: flex;

    flex-wrap: wrap;

    align-items: center;

    gap: 14px;
}


.malati-btn-primary,
.malati-btn-secondary {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 10px;

    min-height: 52px;

    padding: 0 25px;

    border-radius: 50px;

    font-size: 14px;
    font-weight: 600;

    text-decoration: none;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        background 0.3s ease;
}


.malati-btn-primary {
    color: #fff;

    background: var(--malati-green);

    box-shadow:
        0 12px 30px rgba(148, 192, 69, 0.25);
}


.malati-btn-primary:hover {
    color: #fff;

    background: var(--malati-green-dark);

    transform: translateY(-3px);

    box-shadow:
        0 18px 35px rgba(148, 192, 69, 0.32);
}


.malati-btn-secondary {
    color: var(--malati-dark);

    border: 1px solid rgba(60, 65, 51, 0.14);

    background: rgba(255, 255, 255, 0.7);
}


.malati-btn-secondary:hover {
    color: var(--malati-green-dark);

    border-color: rgba(148, 192, 69, 0.45);

    transform: translateY(-3px);

    box-shadow: var(--malati-shadow);
}


/* =========================================================
   HERO TRUST STRIP
========================================================= */

.malati-hero-trust {
    display: flex;

    flex-wrap: wrap;

    gap: 0;

    margin-top: 48px;
}


.malati-hero-trust > div {
    padding: 0 22px;

    border-left: 1px solid rgba(60, 65, 51, 0.14);
}


.malati-hero-trust > div:first-child {
    padding-left: 0;

    border-left: 0;
}


.malati-hero-trust strong {
    display: block;

    color: #ffffff;

    font-size: 14px;
    font-weight: 700;
}


.malati-hero-trust span {
    display: block;

    margin-top: 3px;

    color: var(--malati-muted);

    font-size: 11px;

    letter-spacing: 0.5px;
}


/* =========================================================
   HERO VISUAL
========================================================= */

.malati-hero-visual {
    position: relative;

    width: min(100%, 520px);

    height: 520px;

    margin: 0 auto;
}


.malati-orbit-ring {
    position: absolute;

    top: 50%;
    left: 50%;

    border-radius: 50%;

    border: 1px solid rgba(148, 192, 69, 0.22);

    transform: translate(-50%, -50%);
}


.malati-orbit-ring-one {
    width: 340px;
    height: 340px;

    animation: malatiOrbitSpin 18s linear infinite;
}


.malati-orbit-ring-two {
    width: 450px;
    height: 450px;

    border-style: dashed;

    animation: malatiOrbitSpinReverse 28s linear infinite;
}


@keyframes malatiOrbitSpin {

    from {
        transform: translate(-50%, -50%) rotate(0deg);
    }

    to {
        transform: translate(-50%, -50%) rotate(360deg);
    }

}


@keyframes malatiOrbitSpinReverse {

    from {
        transform: translate(-50%, -50%) rotate(360deg);
    }

    to {
        transform: translate(-50%, -50%) rotate(0deg);
    }

}


/* Core */

.malati-hero-core {
    position: absolute;

    top: 50%;
    left: 50%;

    width: 210px;
    height: 210px;

    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    transform: translate(-50%, -50%);

    border-radius: 50%;

    background: rgba(255, 255, 255, 0.9);

    border: 1px solid rgba(148, 192, 69, 0.2);

    box-shadow:
        0 30px 80px rgba(38, 52, 35, 0.13),
        inset 0 0 0 10px rgba(148, 192, 69, 0.035);

    backdrop-filter: blur(10px);

    z-index: 4;
}


.malati-core-logo {
    width: 125px;

    margin-bottom: 8px;
}


.malati-core-logo img {
    width: 100%;

    height: auto;

    display: block;
}


.malati-hero-core span {
    color: var(--malati-green-dark);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 2px;
}


/* =========================================================
   FLOATING TECHNOLOGY LABELS
========================================================= */

.malati-floating-tech {
    position: absolute;

    z-index: 5;

    display: flex;

    align-items: center;

    gap: 8px;

    padding: 10px 15px;

    border-radius: 50px;

    color: var(--malati-dark);

    background: rgba(255, 255, 255, 0.92);

    border: 1px solid rgba(148, 192, 69, 0.18);

    box-shadow:
        0 15px 35px rgba(32, 40, 32, 0.09);

    backdrop-filter: blur(10px);

    font-size: 11px;
    font-weight: 600;

    animation: malatiFloat 4s ease-in-out infinite;
}


.malati-tech-dot {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: var(--malati-green);
}


.tech-microsoft {
    top: 13%;

    left: 3%;

    animation-delay: 0s;
}


.tech-adobe {
    top: 17%;

    right: 4%;

    animation-delay: 0.8s;
}


.tech-security {
    bottom: 23%;

    left: 1%;

    animation-delay: 1.5s;
}


.tech-cloud {
    bottom: 10%;

    right: 10%;

    animation-delay: 2.2s;
}


.tech-digital {
    top: 48%;

    right: -2%;

    animation-delay: 2.8s;
}


@keyframes malatiFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-9px);
    }

}


/* =========================================================
   SECTION COMMON
========================================================= */

.malati-intro-section,
.malati-ecosystem-section,
.malati-solutions-section,
.malati-services-section,
.malati-transformation-section,
.malati-why-section,
.malati-purpose-section {
    position: relative;

    padding: 110px 0;
}


.malati-section-label {
    margin-bottom: 15px;

    color: var(--malati-green-dark);

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 2.5px;
}


.malati-section-heading {
    max-width: 800px;

    margin: 0 auto 60px;
}


.malati-section-heading h2,
.malati-intro-section h2,
.malati-transformation-section h2,
.malati-purpose-card h2 {
    color: var(--malati-dark);

    font-family: "Poppins", sans-serif;

    font-size: clamp(32px, 4vw, 48px);

    font-weight: 600;

    line-height: 1.18;

    letter-spacing: -1px;
}


.malati-section-heading h2 span,
.malati-intro-section h2 span,
.malati-transformation-section h2 span,
.malati-purpose-card h2 span {
    color: var(--malati-green);
}


.malati-section-heading p {
    max-width: 700px;

    margin: 20px auto 0;

    color: var(--malati-muted);

    line-height: 1.8;
}


/* =========================================================
   INTRO
========================================================= */

.malati-intro-section {
    background: #fff;
}


.malati-intro-section h2 {
    margin-bottom: 0;
}


.malati-intro-text {
    margin-bottom: 18px;

    color: var(--malati-muted);

    font-size: 16px;

    line-height: 1.85;
}


.malati-intro-text:last-child {
    margin-bottom: 0;
}


/* =========================================================
   TECHNOLOGY ECOSYSTEM
========================================================= */

.malati-ecosystem-section {
    overflow: hidden;

    background: var(--malati-light);
}


.malati-ecosystem-section h2 {
    margin-bottom: 22px;

    color: var(--malati-dark);

    font-family: "Poppins", sans-serif;

    font-size: clamp(32px, 4vw, 47px);

    font-weight: 600;

    line-height: 1.15;
}


.malati-ecosystem-section h2 span {
    color: var(--malati-green);
}


.malati-ecosystem-section p {
    max-width: 500px;

    color: var(--malati-muted);

    line-height: 1.8;
}


.malati-text-link {
    display: inline-flex;

    align-items: center;

    gap: 9px;

    margin-top: 16px;

    color: var(--malati-green-dark);

    font-size: 13px;
    font-weight: 700;

    text-decoration: none;

    transition: gap 0.25s ease;
}


.malati-text-link:hover {
    color: var(--malati-green);

    gap: 14px;
}


/* =========================================================
   LOGO CAROUSEL
========================================================= */

.eduLogoCarousel {
    position: relative;

    width: 100%;

    overflow: hidden;

    padding: 35px 0;
}


.eduLogoCarousel::before,
.eduLogoCarousel::after {
    content: "";

    position: absolute;

    top: 0;
    bottom: 0;

    width: 90px;

    z-index: 4;

    pointer-events: none;
}


.eduLogoCarousel::before {
    left: 0;

    background:
        linear-gradient(
            90deg,
            var(--malati-light),
            transparent
        );
}


.eduLogoCarousel::after {
    right: 0;

    background:
        linear-gradient(
            270deg,
            var(--malati-light),
            transparent
        );
}


.eduLogoTrack {
    display: flex;

    align-items: center;

    width: max-content;

    gap: 20px;

    animation:
        malatiLogoSlide 38s linear infinite;
}


.eduLogoCarousel:hover .eduLogoTrack {
    animation-play-state: paused;
}


.eduBrandCard {
    width: 155px;
    height: 105px;

    flex: 0 0 155px;

    display: flex;

    align-items: center;
    justify-content: center;

    padding: 20px;

    background: #fff;

    border: 1px solid rgba(148, 192, 69, 0.14);

    border-radius: 17px;

    box-shadow:
        0 12px 35px rgba(31, 42, 27, 0.07);

    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease,
        border-color 0.35s ease;
}


.eduBrandCard:hover {
    transform: translateY(-8px) scale(1.035);

    border-color: rgba(148, 192, 69, 0.4);

    box-shadow:
        0 22px 45px rgba(31, 42, 27, 0.13);
}


.eduBrandCard img {
    display: block;

    max-width: 100%;
    max-height: 60px;

    width: auto;
    height: auto;

    object-fit: contain;
}


@keyframes malatiLogoSlide {

    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }

}


/* =========================================================
   SOLUTION CARDS
========================================================= */

.malati-solutions-section {
    background: #fff;
}


.malati-solution-card {
    position: relative;

    height: 100%;

    min-height: 350px;

    padding: 35px 32px;

    overflow: hidden;

    background: #fff;

    border: 1px solid rgba(60, 65, 51, 0.08);

    border-radius: var(--malati-radius);

    box-shadow:
        0 10px 35px rgba(32, 40, 32, 0.045);

    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease,
        border-color 0.4s ease;
}


.malati-solution-card::before {
    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 4px;

    background: var(--malati-green);

    transform: scaleX(0);

    transform-origin: left;

    transition: transform 0.4s ease;
}


.malati-solution-card:hover {
    transform: translateY(-10px);

    border-color: rgba(148, 192, 69, 0.25);

    box-shadow:
        0 25px 60px rgba(32, 40, 32, 0.12);
}


.malati-solution-card:hover::before {
    transform: scaleX(1);
}


.malati-solution-featured {
    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f4f8ed
        );
}


.malati-solution-icon {
    width: 58px;
    height: 58px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 25px;

    border-radius: 16px;

    color: var(--malati-green-dark);

    background: rgba(148, 192, 69, 0.1);

    font-size: 25px;

    transition:
        transform 0.35s ease,
        background 0.35s ease;
}


.malati-solution-card:hover .malati-solution-icon {
    transform: rotate(-5deg) scale(1.08);

    background: rgba(148, 192, 69, 0.17);
}


.malati-solution-tag {
    margin-bottom: 9px;

    color: var(--malati-green-dark);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 1.7px;
}


.malati-solution-card h3 {
    margin-bottom: 15px;

    color: var(--malati-dark);

    font-family: "Poppins", sans-serif;

    font-size: 22px;
    font-weight: 600;
}


.malati-solution-card p {
    margin-bottom: 22px;

    color: var(--malati-muted);

    font-size: 14px;

    line-height: 1.75;
}


.malati-solution-card a {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    color: var(--malati-green-dark);

    font-size: 12px;
    font-weight: 700;

    text-decoration: none;

    transition: gap 0.25s ease;
}


.malati-solution-card a:hover {
    color: var(--malati-green);

    gap: 13px;
}


/* =========================================================
   SERVICES
========================================================= */

.malati-services-section {
    background: var(--malati-dark);
}


.malati-services-section .malati-section-label {
    color: var(--malati-green-light);
}


.malati-services-section h2 {
    margin-bottom: 0;

    color: #fff;

    font-family: "Poppins", sans-serif;

    font-size: clamp(32px, 4vw, 47px);

    line-height: 1.15;
}


.malati-services-section h2 span {
    color: var(--malati-green);
}


.malati-services-section .row > .col-lg-5 p {
    margin: 0;

    color: rgba(255, 255, 255, 0.65);

    line-height: 1.8;
}


.malati-service-card {
    position: relative;

    height: 100%;

    min-height: 250px;

    padding: 35px;

    overflow: hidden;

    border: 1px solid rgba(255, 255, 255, 0.08);

    border-radius: 18px;

    background: rgba(255, 255, 255, 0.035);

    transition:
        transform 0.35s ease,
        background 0.35s ease,
        border-color 0.35s ease;
}


.malati-service-card:hover {
    transform: translateY(-8px);

    background: rgba(148, 192, 69, 0.08);

    border-color: rgba(148, 192, 69, 0.25);
}


.malati-service-card > i {
    display: block;

    margin-bottom: 22px;

    color: var(--malati-green);

    font-size: 30px;
}


.malati-service-card h3 {
    margin-bottom: 13px;

    color: #fff;

    font-family: "Poppins", sans-serif;

    font-size: 20px;
}


.malati-service-card p {
    margin: 0;

    color: rgba(255, 255, 255, 0.58);

    font-size: 13px;

    line-height: 1.75;
}


.malati-service-number {
    position: absolute;

    top: 20px;
    right: 25px;

    color: rgba(148, 192, 69, 0.2);

    font-size: 30px;

    font-weight: 700;
}


/* =========================================================
   TRANSFORMATION
========================================================= */

.malati-transformation-section {
    background: #f8faf5;

    overflow: hidden;
}


.malati-transformation-section h2 {
    margin-bottom: 24px;
}


.malati-transformation-section > .container > .row > .col-lg-6:last-child p {
    color: var(--malati-muted);

    line-height: 1.8;
}


/* Visual */

.malati-transformation-visual {
    position: relative;

    width: 470px;
    height: 470px;

    max-width: 100%;

    margin: auto;
}


.malati-transformation-visual::before {
    content: "";

    position: absolute;

    top: 50%;
    left: 50%;

    width: 300px;
    height: 300px;

    border-radius: 50%;

    border: 1px dashed rgba(148, 192, 69, 0.3);

    transform: translate(-50%, -50%);

    animation: malatiOrbitSpin 20s linear infinite;
}


.malati-transform-center {
    position: absolute;

    top: 50%;
    left: 50%;

    width: 175px;
    height: 175px;

    display: flex;

    align-items: center;
    justify-content: center;

    flex-direction: column;

    padding: 20px;

    border-radius: 50%;

    text-align: center;

    color: #fff;

    background: var(--malati-dark);

    box-shadow:
        0 25px 55px rgba(32, 40, 32, 0.2);

    transform: translate(-50%, -50%);
}


.malati-transform-center span {
    font-size: 12px;

    opacity: 0.7;
}


.malati-transform-center strong {
    max-width: 115px;

    margin-top: 5px;

    color: var(--malati-green);

    font-family: "Poppins", sans-serif;

    font-size: 18px;

    line-height: 1.25;
}


.malati-transform-panel {
    position: absolute;

    width: 125px;
    height: 75px;

    display: flex;

    align-items: center;

    gap: 10px;

    padding: 15px;

    border-radius: 15px;

    background: #fff;

    box-shadow:
        0 18px 40px rgba(32, 40, 32, 0.09);

    color: var(--malati-dark);

    font-size: 12px;
    font-weight: 600;

    animation: malatiFloat 5s ease-in-out infinite;
}


.malati-transform-panel i {
    color: var(--malati-green);

    font-size: 21px;
}


.panel-one {
    top: 5%;
    left: 8%;
}


.panel-two {
    top: 11%;
    right: 4%;

    animation-delay: 1s;
}


.panel-three {
    bottom: 11%;
    left: 3%;

    animation-delay: 2s;
}


.panel-four {
    bottom: 5%;
    right: 7%;

    animation-delay: 3s;
}


/* =========================================================
   CHECK LIST
========================================================= */

.malati-check-list {
    margin-top: 25px;
}


.malati-check-list > div {
    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 12px;

    color: var(--malati-text);

    font-size: 13px;
    font-weight: 500;
}


.malati-check-list i {
    color: var(--malati-green);

    font-size: 16px;
}


/* =========================================================
   WHY MALATI
========================================================= */

.malati-why-section {
    background: #fff;
}


.malati-why-card {
    height: 100%;

    padding: 30px;

    border-radius: 18px;

    border: 1px solid rgba(60, 65, 51, 0.07);

    background: #fff;

    text-align: center;

    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;
}


.malati-why-card:hover {
    transform: translateY(-8px);

    box-shadow:
        0 20px 50px rgba(32, 40, 32, 0.1);
}


.malati-why-card i {
    display: inline-flex;

    width: 58px;
    height: 58px;

    align-items: center;
    justify-content: center;

    margin-bottom: 20px;

    border-radius: 50%;

    color: var(--malati-green-dark);

    background: rgba(148, 192, 69, 0.1);

    font-size: 23px;
}


.malati-why-card h3 {
    margin-bottom: 12px;

    color: var(--malati-dark);

    font-family: "Poppins", sans-serif;

    font-size: 18px;
}


.malati-why-card p {
    margin: 0;

    color: var(--malati-muted);

    font-size: 13px;

    line-height: 1.75;
}


/* =========================================================
   PURPOSE / VISION / MISSION
========================================================= */

.malati-purpose-section {
    background: var(--malati-light);
}


.malati-purpose-card {
    position: relative;

    height: 100%;

    padding: 50px 45px;

    border-radius: 22px;

    background: #fff;

    border: 1px solid rgba(148, 192, 69, 0.1);

    box-shadow:
        0 15px 45px rgba(32, 40, 32, 0.06);

    overflow: hidden;
}


.malati-purpose-card::after {
    content: "";

    position: absolute;

    right: -70px;
    bottom: -90px;

    width: 220px;
    height: 220px;

    border-radius: 50%;

    background: rgba(148, 192, 69, 0.06);
}


.malati-purpose-icon {
    width: 58px;
    height: 58px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 28px;

    border-radius: 16px;

    color: var(--malati-green-dark);

    background: rgba(148, 192, 69, 0.11);

    font-size: 25px;
}


.malati-purpose-card h2 {
    margin-bottom: 20px;

    font-size: 31px;
}


.malati-purpose-card p {
    position: relative;

    z-index: 2;

    margin: 0;

    color: var(--malati-muted);

    font-size: 14px;

    line-height: 1.85;
}


/* =========================================================
   FINAL CTA
========================================================= */

.malati-final-cta {
    position: relative;

    padding: 95px 0;

    overflow: hidden;

    background: var(--malati-dark);
}


.malati-cta-glow {
    position: absolute;

    width: 500px;
    height: 500px;

    top: -250px;
    right: -100px;

    border-radius: 50%;

    background: rgba(148, 192, 69, 0.12);

    filter: blur(70px);
}


.malati-final-cta .malati-section-label {
    color: var(--malati-green);
}


.malati-final-cta h2 {
    max-width: 850px;

    margin-bottom: 20px;

    color: #fff;

    font-family: "Poppins", sans-serif;

    font-size: clamp(35px, 4vw, 53px);

    line-height: 1.12;
}


.malati-final-cta h2 span {
    color: var(--malati-green);
}


.malati-final-cta p {
    max-width: 760px;

    margin: 0;

    color: rgba(255, 255, 255, 0.62);

    line-height: 1.8;
}


.malati-cta-button {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 11px;

    min-height: 55px;

    padding: 0 28px;

    border-radius: 50px;

    color: #fff;

    background: var(--malati-green);

    font-size: 13px;
    font-weight: 700;

    text-decoration: none;

    box-shadow:
        0 15px 35px rgba(148, 192, 69, 0.2);

    transition:
        transform 0.3s ease,
        background 0.3s ease;
}


.malati-cta-button:hover {
    color: #fff;

    background: var(--malati-green-dark);

    transform: translateY(-4px);
}


/* =========================================================
   MOBILE NAVIGATION
   HOME PAGE OVERRIDE
========================================================= */
/* =========================================================
   MOBILE / TABLET HERO
   Keep the complete desktop composition, but stack it
   cleanly on smaller screens.
========================================================= */

@media (max-width: 991px) {

    /* -----------------------------------------------------
       HERO
    ----------------------------------------------------- */

    .malati-home-hero {
        min-height: auto;
        height: auto;

        padding-top: 125px;
        padding-bottom: 75px;

        overflow: hidden;
    }


    /* Make sure the hero content starts BELOW the header */

    .malati-home-hero .container {
        position: relative;
        z-index: 5;
    }


    /* -----------------------------------------------------
       HERO TEXT
    ----------------------------------------------------- */

    .malati-hero-eyebrow {
        display: flex;

        margin-top: 5px;
        margin-bottom: 20px;

        font-size: 10px;

        letter-spacing: 1.8px;
    }


    .malati-hero-eyebrow span {
        width: 28px;
    }


    .malati-home-hero h1 {
        display: block;

        max-width: 100%;

        margin: 0;

        font-size: 43px;

        line-height: 1.1;

        letter-spacing: -1px;

        visibility: visible;
    }


    .malati-home-hero h1 strong {
        display: inline;
    }


    .malati-hero-lead {
        display: block;

        max-width: 100%;

        margin-top: 22px;
        margin-bottom: 28px;

        font-size: 15px;

        line-height: 1.75;
    }


    /* -----------------------------------------------------
       BUTTONS
    ----------------------------------------------------- */

    .malati-hero-buttons {
        display: flex;

        flex-direction: row;

        flex-wrap: wrap;

        align-items: center;

        gap: 10px;
    }


    .malati-btn-primary,
    .malati-btn-secondary {
        width: auto;

        min-height: 48px;

        padding: 0 20px;

        font-size: 12px;
    }


    /* -----------------------------------------------------
       TRUST STRIP
    ----------------------------------------------------- */

    .malati-hero-trust {
        display: flex;

        flex-wrap: wrap;

        gap: 0;

        margin-top: 35px;
    }


    .malati-hero-trust > div {
        padding: 5px 15px;
    }


    .malati-hero-trust > div:first-child {
        padding-left: 0;

        border-left: 0;
    }


    /* -----------------------------------------------------
       HERO VISUAL
       This is the important part.
    ----------------------------------------------------- */

    .malati-hero-visual {
        position: relative;

        width: 100%;

        max-width: 480px;

        height: 430px;

        margin: 55px auto 0;

        overflow: visible;
    }


    /*
       Keep the rings proportional and centred.
    */

    .malati-orbit-ring-one {
        width: 290px;
        height: 290px;
    }


    .malati-orbit-ring-two {
        width: 390px;
        height: 390px;
    }


    /*
       Logo in the centre.
    */

    .malati-hero-core {
        width: 175px;
        height: 175px;

        z-index: 10;
    }


    .malati-core-logo {
        width: 105px;

        margin-bottom: 7px;
    }


    .malati-hero-core span {
        font-size: 8px;

        letter-spacing: 1.6px;
    }


    /* -----------------------------------------------------
       FLOATING TECHNOLOGY LABELS
    ----------------------------------------------------- */

    .malati-floating-tech {
        z-index: 15;

        padding: 9px 13px;

        font-size: 9px;

        white-space: nowrap;
    }


    .tech-microsoft {
        top: 8%;

        left: 4%;
    }


    .tech-adobe {
        top: 8%;

        right: 4%;
    }


    .tech-security {
        bottom: 17%;

        left: 2%;
    }


    .tech-cloud {
        bottom: 8%;

        right: 4%;
    }


    .tech-digital {
        top: 45%;

        right: -1%;
    }


    /* -----------------------------------------------------
       OTHER SECTIONS
    ----------------------------------------------------- */

    .malati-intro-section,
    .malati-ecosystem-section,
    .malati-solutions-section,
    .malati-services-section,
    .malati-transformation-section,
    .malati-why-section,
    .malati-purpose-section {
        padding: 80px 0;
    }


    .malati-ecosystem-section .col-lg-7 {
        margin-top: 45px;
    }


    .malati-purpose-card {
        margin-bottom: 25px;
    }


    .malati-final-cta {
        padding: 75px 0;
    }


    .malati-final-cta .text-lg-right {
        margin-top: 30px;

        text-align: left !important;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    /* -----------------------------------------------------
       HERO
    ----------------------------------------------------- */

    .malati-home-hero {
        padding-top: 115px;
        padding-bottom: 55px;
    }


    /* -----------------------------------------------------
       TEXT
    ----------------------------------------------------- */

    .malati-hero-eyebrow {
        margin-bottom: 17px;

        font-size: 9px;

        letter-spacing: 1.4px;
    }


    .malati-home-hero h1 {
        font-size: 38px;

        line-height: 1.12;

        letter-spacing: -0.8px;
    }


    .malati-hero-lead {
        margin-top: 19px;

        font-size: 14px;

        line-height: 1.7;
    }


    /* -----------------------------------------------------
       BUTTONS
    ----------------------------------------------------- */

    .malati-hero-buttons {
        flex-direction: column;

        align-items: stretch;

        width: 100%;
    }


    .malati-btn-primary,
    .malati-btn-secondary {
        width: 100%;
    }


    /* -----------------------------------------------------
       TRUST
    ----------------------------------------------------- */

    .malati-hero-trust {
        display: grid;

        grid-template-columns: 1fr 1fr;

        margin-top: 30px;
    }


    .malati-hero-trust > div {
        min-height: 48px;

        padding: 8px 12px;

        border-left: 1px solid rgba(60, 65, 51, 0.12);
    }


    .malati-hero-trust > div:nth-child(odd) {
        padding-left: 0;

        border-left: 0;
    }


    /* -----------------------------------------------------
       ORBIT
    ----------------------------------------------------- */

    .malati-hero-visual {
        width: 100%;

        height: 375px;

        max-width: 430px;

        margin-top: 45px;
    }


    /*
       The entire orbit stays visible.
       It is intentionally smaller than the desktop version.
    */

    .malati-orbit-ring-one {
        width: 245px;
        height: 245px;
    }


    .malati-orbit-ring-two {
        width: 330px;
        height: 330px;
    }


    .malati-hero-core {
        width: 150px;
        height: 150px;
    }


    .malati-core-logo {
        width: 90px;
    }


    .malati-hero-core span {
        font-size: 7px;

        letter-spacing: 1.4px;
    }


    /* -----------------------------------------------------
       FLOATING LABELS
    ----------------------------------------------------- */

    .malati-floating-tech {
        padding: 7px 10px;

        font-size: 8px;
    }


    .tech-microsoft {
        top: 7%;

        left: 1%;
    }


    .tech-adobe {
        top: 7%;

        right: 1%;
    }


    .tech-digital {
        top: 45%;

        right: -1%;
    }


    .tech-security {
        bottom: 15%;

        left: 0;
    }


    .tech-cloud {
        right: 1%;

        bottom: 7%;
    }


    /* -----------------------------------------------------
       SECTIONS
    ----------------------------------------------------- */

    .malati-section-heading {
        margin-bottom: 40px;
    }


    .malati-section-heading h2,
    .malati-intro-section h2,
    .malati-transformation-section h2 {
        font-size: 31px;
    }


    .malati-solution-card {
        min-height: auto;

        padding: 28px;
    }


    .malati-service-card {
        min-height: auto;

        padding: 28px;
    }


    .malati-purpose-card {
        padding: 35px 28px;
    }


    .malati-purpose-card h2 {
        font-size: 27px;
    }


    .malati-transformation-visual {
        height: 360px;
    }


    .malati-transform-panel {
        width: 110px;

        font-size: 10px;
    }


    .malati-transform-center {
        width: 140px;
        height: 140px;
    }


    .malati-transform-center strong {
        font-size: 15px;
    }
}


/* =========================================================
   SMALL PHONES
========================================================= */

@media (max-width: 480px) {

    .malati-home-hero {
        padding-top: 105px;

        padding-bottom: 45px;
    }


    .malati-hero-eyebrow {
        font-size: 8px;

        letter-spacing: 1.1px;
    }


    .malati-hero-eyebrow span {
        width: 22px;
    }


    .malati-home-hero h1 {
        font-size: 33px;

        line-height: 1.13;
    }


    .malati-hero-lead {
        font-size: 13px;
    }


    .malati-hero-visual {
        height: 325px;

        margin-top: 38px;
    }


    /*
       Final compact orbit.
    */

    .malati-orbit-ring-one {
        width: 210px;
        height: 210px;
    }


    .malati-orbit-ring-two {
        width: 285px;
        height: 285px;
    }


    .malati-hero-core {
        width: 128px;
        height: 128px;
    }


    .malati-core-logo {
        width: 78px;
    }


    .malati-hero-core span {
        font-size: 6px;

        letter-spacing: 1px;
    }


    .malati-floating-tech {
        padding: 6px 8px;

        font-size: 7px;
    }


    .tech-microsoft {
        top: 6%;

        left: 0;
    }


    .tech-adobe {
        top: 6%;

        right: 0;
    }


    .tech-digital {
        top: 44%;

        right: -2%;
    }


    .tech-security {
        bottom: 14%;

        left: -1%;
    }


    .tech-cloud {
        bottom: 6%;

        right: 0;
    }


    .malati-hero-trust {
        grid-template-columns: 1fr;
    }


    .malati-hero-trust > div,
    .malati-hero-trust > div:nth-child(odd) {
        padding: 9px 0;

        border-left: 0;

        border-bottom: 1px solid rgba(60, 65, 51, 0.1);
    }


    .malati-final-cta h2 {
        font-size: 34px;
    }
}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .malati-orbit-ring-one,
    .malati-orbit-ring-two,
    .malati-floating-tech,
    .malati-transformation-visual::before,
    .eduLogoTrack {
        animation: none !important;
    }


    .malati-solution-card,
    .malati-service-card,
    .malati-why-card,
    .malati-btn-primary,
    .malati-btn-secondary,
    .malati-cta-button {
        transition: none !important;
    }
}

















/* =========================================================
   MALATI HOME — FINAL MOBILE HERO FIX
   Keeps the complete hero visible below the fixed header
========================================================= */

@media (max-width: 991px) {

    /* -----------------------------------------------------
       FIX FIXED HEADER OVERLAPPING THE HERO
    ----------------------------------------------------- */

    #hero.malati-home-hero {
        position: relative !important;

        /* Give the hero enough room below the fixed header */
        padding-top: 145px !important;
        padding-bottom: 70px !important;

        min-height: auto !important;
        height: auto !important;

        overflow: hidden !important;
    }


    /* -----------------------------------------------------
       KEEP HERO CONTENT ABOVE DECORATIVE ELEMENTS
    ----------------------------------------------------- */

    #hero.malati-home-hero .container {
        position: relative !important;
        z-index: 20 !important;
    }


    #hero.malati-home-hero .row {
        position: relative !important;
        z-index: 20 !important;
    }


    /* -----------------------------------------------------
       HERO TEXT
    ----------------------------------------------------- */

    #hero.malati-home-hero .malati-hero-eyebrow {
        position: relative !important;
        z-index: 25 !important;

        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;

        margin-top: 0 !important;
        margin-bottom: 18px !important;

        font-size: 10px !important;
        line-height: 1.4 !important;
        letter-spacing: 1.5px !important;
    }


    #hero.malati-home-hero h1 {
        position: relative !important;
        z-index: 25 !important;

        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;

        font-size: 40px !important;
        line-height: 1.10 !important;
        letter-spacing: -1px !important;
    }


    #hero.malati-home-hero h1 strong {
        display: inline !important;
        visibility: visible !important;
        opacity: 1 !important;
    }


    #hero.malati-home-hero .malati-hero-lead {
        position: relative !important;
        z-index: 25 !important;

        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 20px 0 27px !important;

        font-size: 14px !important;
        line-height: 1.7 !important;
    }


    /* -----------------------------------------------------
       BUTTONS
    ----------------------------------------------------- */

    #hero.malati-home-hero .malati-hero-buttons {
        position: relative !important;
        z-index: 25 !important;

        display: flex !important;

        flex-direction: column !important;

        width: 100% !important;

        gap: 10px !important;
    }


    #hero.malati-home-hero .malati-btn-primary,
    #hero.malati-home-hero .malati-btn-secondary {

        width: 100% !important;

        min-height: 48px !important;

        padding: 0 20px !important;

        font-size: 12px !important;
    }


    /* -----------------------------------------------------
       TRUST STRIP
    ----------------------------------------------------- */

    #hero.malati-home-hero .malati-hero-trust {
        position: relative !important;
        z-index: 25 !important;

        display: grid !important;

        grid-template-columns: 1fr 1fr !important;

        width: 100% !important;

        margin-top: 30px !important;
    }


    #hero.malati-home-hero .malati-hero-trust > div {
        min-height: 48px !important;

        padding: 8px 12px !important;

        border-left: 1px solid rgba(60, 65, 51, 0.12) !important;
    }


    #hero.malati-home-hero .malati-hero-trust > div:nth-child(odd) {
        padding-left: 0 !important;

        border-left: 0 !important;
    }


    /* -----------------------------------------------------
       HERO VISUAL
       Put the complete orbit directly underneath the text.
    ----------------------------------------------------- */

    #hero.malati-home-hero .malati-hero-visual {
        position: relative !important;

        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;

        width: 100% !important;
        max-width: 420px !important;

        height: 360px !important;

        margin: 42px auto 0 !important;

        overflow: visible !important;

        z-index: 10 !important;
    }


    /* -----------------------------------------------------
       ORBIT RINGS
    ----------------------------------------------------- */

    #hero.malati-home-hero .malati-orbit-ring-one {
        width: 250px !important;
        height: 250px !important;

        z-index: 1 !important;
    }


    #hero.malati-home-hero .malati-orbit-ring-two {
        width: 330px !important;
        height: 330px !important;

        z-index: 1 !important;
    }


    /* -----------------------------------------------------
       CENTRAL MALATI LOGO
    ----------------------------------------------------- */

    #hero.malati-home-hero .malati-hero-core {
        width: 145px !important;
        height: 145px !important;

        z-index: 10 !important;
    }


    #hero.malati-home-hero .malati-core-logo {
        width: 88px !important;

        margin-bottom: 6px !important;
    }


    #hero.malati-home-hero .malati-hero-core span {
        font-size: 7px !important;

        letter-spacing: 1.3px !important;
    }


    /* -----------------------------------------------------
       TECHNOLOGY LABELS
       Keep ALL FIVE inside the visual.
    ----------------------------------------------------- */

    #hero.malati-home-hero .malati-floating-tech {
        position: absolute !important;

        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;

        z-index: 15 !important;

        white-space: nowrap !important;

        padding: 7px 10px !important;

        font-size: 8px !important;

        line-height: 1 !important;
    }


    /* Microsoft — upper left */
    #hero.malati-home-hero .tech-microsoft {
        top: 7% !important;
        left: 3% !important;
        right: auto !important;
        bottom: auto !important;
    }


    /* Adobe — upper right */
    #hero.malati-home-hero .tech-adobe {
        top: 7% !important;
        right: 3% !important;
        left: auto !important;
        bottom: auto !important;
    }


    /* Digital — middle right */
    #hero.malati-home-hero .tech-digital {
        top: 44% !important;
        right: 0 !important;
        left: auto !important;
        bottom: auto !important;
    }


    /* Cybersecurity — lower left */
    #hero.malati-home-hero .tech-security {
        bottom: 13% !important;
        left: 2% !important;
        right: auto !important;
        top: auto !important;
    }


    /* Cloud — lower right */
    #hero.malati-home-hero .tech-cloud {
        bottom: 5% !important;
        right: 4% !important;
        left: auto !important;
        top: auto !important;
    }


    /* -----------------------------------------------------
       DECORATIVE GLOWS
       Keep them behind everything.
    ----------------------------------------------------- */

    #hero.malati-home-hero .malati-hero-glow {
        z-index: 0 !important;

        pointer-events: none !important;
    }
}


/* =========================================================
   SMALL PHONES
========================================================= */

@media (max-width: 480px) {

    #hero.malati-home-hero {
        padding-top: 130px !important;
        padding-bottom: 55px !important;
    }


    /* Eyebrow */
    #hero.malati-home-hero .malati-hero-eyebrow {
        margin-bottom: 16px !important;

        font-size: 8px !important;

        letter-spacing: 1.15px !important;
    }


    #hero.malati-home-hero .malati-hero-eyebrow span {
        width: 22px !important;
    }


    /* Heading */
    #hero.malati-home-hero h1 {
        font-size: 34px !important;

        line-height: 1.12 !important;

        letter-spacing: -0.7px !important;
    }


    /* Paragraph */
    #hero.malati-home-hero .malati-hero-lead {
        font-size: 13px !important;

        line-height: 1.7 !important;

        margin-top: 18px !important;
    }


    /* Orbit */
    #hero.malati-home-hero .malati-hero-visual {
        width: 100% !important;

        max-width: 350px !important;

        height: 315px !important;

        margin-top: 35px !important;
    }


    #hero.malati-home-hero .malati-orbit-ring-one {
        width: 210px !important;
        height: 210px !important;
    }


    #hero.malati-home-hero .malati-orbit-ring-two {
        width: 280px !important;
        height: 280px !important;
    }


    #hero.malati-home-hero .malati-hero-core {
        width: 125px !important;
        height: 125px !important;
    }


    #hero.malati-home-hero .malati-core-logo {
        width: 76px !important;
    }


    #hero.malati-home-hero .malati-hero-core span {
        font-size: 6px !important;

        letter-spacing: 1px !important;
    }


    /* Technology labels */
    #hero.malati-home-hero .malati-floating-tech {
        padding: 6px 8px !important;

        font-size: 7px !important;
    }


    #hero.malati-home-hero .tech-microsoft {
        top: 6% !important;
        left: 0 !important;
    }


    #hero.malati-home-hero .tech-adobe {
        top: 6% !important;
        right: 0 !important;
    }


    #hero.malati-home-hero .tech-digital {
        top: 43% !important;
        right: -1px !important;
    }


    #hero.malati-home-hero .tech-security {
        bottom: 13% !important;
        left: 0 !important;
    }


    #hero.malati-home-hero .tech-cloud {
        bottom: 5% !important;
        right: 1% !important;
    }
}






/* the orbit from about page */

/* =========================================================
   MALATI TECHNOLOGY ECOSYSTEM ORBIT
========================================================= */

.home-tech-orbit-section {
    position: relative;
    width: 100%;
    padding: 130px 6%;
    background: #07100c;
    color: #ffffff;
    overflow: hidden;
}


/* Subtle background atmosphere */

.home-tech-orbit-section::before {
    content: "";
    position: absolute;
    width: 700px;
    height: 700px;
    right: -250px;
    top: 50%;
    transform: translateY(-50%);
    background: radial-gradient(
        circle,
        rgba(148, 192, 69, 0.12) 0%,
        rgba(148, 192, 69, 0.04) 35%,
        transparent 70%
    );
    pointer-events: none;
}


/* MAIN CONTAINER */

.home-tech-orbit-container {
    position: relative;
    max-width: 1350px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    align-items: center;

    gap: 70px;
}


/* =========================================================
   LEFT INFORMATION
========================================================= */

.home-orbit-information {
    position: relative;
    z-index: 5;

    max-width: 510px;
}


.home-orbit-counter {
    display: flex;
    align-items: center;
    gap: 8px;

    font-size: 15px;
    letter-spacing: 2px;
    font-weight: 600;

    color: #94c045;
}


.home-orbit-slash {
    color: rgba(255,255,255,0.35);
}


.home-orbit-line {
    width: 55px;
    height: 2px;

    margin: 22px 0 28px;

    background: #94c045;
}


.home-orbit-label {
    font-size: 12px;
    letter-spacing: 3px;
    text-transform: uppercase;

    color: rgba(255,255,255,0.55);

    margin-bottom: 15px;
}


.home-orbit-information h2 {
    margin: 0 0 22px;

    font-size: clamp(38px, 4vw, 62px);
    line-height: 1.05;

    font-weight: 600;
    letter-spacing: -1.5px;

    color: #ffffff;

    transition:
        opacity 0.3s ease,
        transform 0.3s ease;
}


.home-orbit-information p {
    max-width: 490px;

    margin: 0 0 30px;

    font-size: 17px;
    line-height: 1.8;

    color: rgba(255,255,255,0.68);

    transition:
        opacity 0.3s ease,
        transform 0.3s ease;
}


/* LINK */

.home-orbit-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;

    color: #94c045;

    font-size: 15px;
    font-weight: 600;

    text-decoration: none;

    transition: gap 0.3s ease;
}


.home-orbit-link span {
    font-size: 22px;
}


.home-orbit-link:hover {
    gap: 18px;
}


/* PROGRESS */

.home-orbit-progress {
    width: 180px;
    height: 2px;

    margin-top: 38px;

    background: rgba(255,255,255,0.15);

    overflow: hidden;
}


.home-orbit-progress span {
    display: block;

    width: 12.5%;
    height: 100%;

    background: #94c045;

    transition: width 0.5s ease;
}


/* =========================================================
   ORBIT AREA
========================================================= */

.home-orbit-area {
    position: relative;

    display: flex;
    justify-content: center;
    align-items: center;

    min-height: 650px;
}


.home-orbit {
    position: relative;

    width: min(620px, 48vw);
    aspect-ratio: 1 / 1;

    display: flex;
    align-items: center;
    justify-content: center;
}


/* =========================================================
   GLOW
========================================================= */

.home-orbit-glow {
    position: absolute;

    width: 52%;
    height: 52%;

    border-radius: 50%;

    background: radial-gradient(
        circle,
        rgba(148,192,69,0.17),
        rgba(148,192,69,0.05) 40%,
        transparent 72%
    );

    filter: blur(20px);

    pointer-events: none;
}


/* =========================================================
   ORBIT RINGS
========================================================= */

.home-orbit-ring {
    position: absolute;

    left: 50%;
    top: 50%;

    transform: translate(-50%, -50%);

    border-radius: 50%;

    pointer-events: none;
}


.home-ring-one {
    width: 72%;
    height: 72%;

    border: 1px solid rgba(148,192,69,0.35);
}


.home-ring-two {
    width: 84%;
    height: 84%;

    border: 1px solid rgba(148,192,69,0.17);
}


.home-ring-three {
    width: 96%;
    height: 96%;

    border: 1px solid rgba(148,192,69,0.08);
}


/* =========================================================
   MOVING ORBIT BALL
========================================================= */

.home-orbit-ball-wrapper {
    position: absolute;

    left: 50%;
    top: 50%;

    width: 100%;
    height: 100%;

    transform: translate(-50%, -50%);

    animation: homeOrbitRotation 12s linear infinite;

    z-index: 8;

    pointer-events: none;
}


/*
   This is the actual moving ball.
   It starts at the top of the orbit and travels
   around the complete circle.
*/

.home-orbit-ball {
    position: absolute;

    left: 50%;
    top: 2%;

    width: 13px;
    height: 13px;

    transform: translateX(-50%);

    border-radius: 50%;

    background: #94c045;

    box-shadow:
        0 0 8px #94c045,
        0 0 20px rgba(148,192,69,0.8),
        0 0 40px rgba(148,192,69,0.35);
}


/* Small halo around moving ball */

.home-orbit-ball::before {
    content: "";

    position: absolute;

    left: 50%;
    top: 50%;

    width: 32px;
    height: 32px;

    transform: translate(-50%, -50%);

    border-radius: 50%;

    border: 1px solid rgba(148,192,69,0.35);

    animation: homeOrbitPulse 1.8s ease-in-out infinite;
}


/* BALL MOVEMENT */

@keyframes homeOrbitRotation {

    from {
        transform:
            translate(-50%, -50%)
            rotate(0deg);
    }

    to {
        transform:
            translate(-50%, -50%)
            rotate(360deg);
    }

}


/* PULSE */

@keyframes homeOrbitPulse {

    0% {
        opacity: 0.8;
        transform: translate(-50%, -50%) scale(0.7);
    }

    70% {
        opacity: 0;
        transform: translate(-50%, -50%) scale(1.5);
    }

    100% {
        opacity: 0;
        transform: translate(-50%, -50%) scale(1.5);
    }

}


/* =========================================================
   CENTRE
========================================================= */

.home-orbit-center {
    position: absolute;

    left: 50%;
    top: 50%;

    transform: translate(-50%, -50%);

    width: 190px;
    height: 190px;

    border-radius: 50%;

    display: flex;
    flex-direction: column;

    align-items: center;
    justify-content: center;

    background:
        radial-gradient(
            circle at center,
            rgba(25,45,28,0.98),
            rgba(7,16,12,0.98)
        );

    border: 1px solid rgba(148,192,69,0.22);

    box-shadow:
        0 0 60px rgba(148,192,69,0.08),
        inset 0 0 35px rgba(148,192,69,0.04);

    z-index: 4;
}


.home-center-logo img {
    width: 75px;
    height: auto;

    object-fit: contain;

    margin-bottom: 10px;
}


.home-orbit-center span {
    font-size: 9px;

    letter-spacing: 3px;

    color: rgba(255,255,255,0.5);
}


.home-orbit-center strong {
    margin-top: 3px;

    font-size: 12px;

    letter-spacing: 2px;

    color: #94c045;
}


/* =========================================================
   ORBIT NODES
========================================================= */

.home-orbit-node {
    position: absolute;

    left: var(--x);
    top: var(--y);

    transform: translate(-50%, -50%);

    border: 0;
    background: transparent;

    padding: 0;

    color: rgba(255,255,255,0.45);

    cursor: pointer;

    display: flex;
    flex-direction: column;
    align-items: center;

    z-index: 10;

    transition:
        color 0.3s ease,
        transform 0.3s ease;
}


.home-orbit-node:hover {
    color: #ffffff;

    transform:
        translate(-50%, -50%)
        scale(1.08);
}


.home-node-number {
    display: block;

    font-size: 10px;

    letter-spacing: 2px;

    margin-bottom: 5px;

    color: rgba(148,192,69,0.6);
}


.home-node-name {
    font-size: 13px;

    font-weight: 500;

    white-space: nowrap;
}


/* ACTIVE NODE */

.home-orbit-node.active {
    color: #ffffff;
}


.home-orbit-node.active .home-node-number {
    color: #94c045;
}


.home-orbit-node.active::before {
    content: "";

    position: absolute;

    width: 9px;
    height: 9px;

    border-radius: 50%;

    background: #94c045;

    box-shadow:
        0 0 10px #94c045,
        0 0 22px rgba(148,192,69,0.7);

    top: -18px;

}


/* =========================================================
   INFORMATION TRANSITION
========================================================= */

.home-orbit-information.changing h2,
.home-orbit-information.changing p {
    opacity: 0;
    transform: translateY(8px);
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1100px) {

    .home-tech-orbit-container {
        grid-template-columns: 1fr 1fr;
        gap: 30px;
    }

    .home-orbit {
        width: min(560px, 50vw);
    }

    .home-orbit-center {
        width: 160px;
        height: 160px;
    }

    .home-node-name {
        font-size: 11px;
    }

}


/* =========================================================
   TABLET / MOBILE
========================================================= */

@media (max-width: 800px) {

    .home-tech-orbit-section {
        padding: 90px 20px;
    }

    .home-tech-orbit-container {
        display: flex;
        flex-direction: column;

        gap: 45px;
    }


    /* INFORMATION FIRST */

    .home-orbit-information {
        width: 100%;
        max-width: 650px;

        text-align: center;

        margin: 0 auto;
    }


    .home-orbit-line {
        margin-left: auto;
        margin-right: auto;
    }


    .home-orbit-information p {
        margin-left: auto;
        margin-right: auto;
    }


    .home-orbit-progress {
        margin-left: auto;
        margin-right: auto;
    }


    /* ORBIT BELOW */

    .home-orbit-area {
        width: 100%;

        min-height: auto;

        padding: 20px 0 40px;
    }


    .home-orbit {
        width: min(600px, 90vw);
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 500px) {

    .home-tech-orbit-section {
        padding: 70px 15px;
    }


    .home-orbit-information h2 {
        font-size: 35px;
    }


    .home-orbit-information p {
        font-size: 15px;
        line-height: 1.7;
    }


    .home-orbit {
        width: 94vw;
    }


    .home-orbit-center {
        width: 125px;
        height: 125px;
    }


    .home-center-logo img {
        width: 55px;
    }


    .home-orbit-center span {
        font-size: 7px;
        letter-spacing: 2px;
    }


    .home-orbit-center strong {
        font-size: 9px;
    }


    .home-node-name {
        font-size: 9px;
    }


    .home-node-number {
        font-size: 8px;
    }


    .home-orbit-ball {
        width: 10px;
        height: 10px;
    }

}