/* =========================
   GLOBAL RESET & BASE
========================= */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Inter', sans-serif;
    color: #031621;
    background-color: #F7F7F7;
    line-height: 1.6;
}

.container {
    width: 90%;
    max-width: 1200px;
    margin: auto;
}

section {
    padding: 80px 0;
}

h1, h2 {
    font-weight: 700;
}

h1 {
    font-size: 48px;
    line-height: 1.2;
}

h2 {
    font-size: 34px;
    margin-bottom: 20px;
}

p {
    font-size: 16px;
    color: #444;
}

ul {
    list-style: none;
}


/* =========================
   HEADER / NAVBAR
========================= */
.site-header {
    position: sticky;
    top: 0;
    width: 100%;
    background-color: #F7F7F7;
    z-index: 999;
    border-bottom: 1px solid #EDECED;
}

.header-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 80px;
}

.logo img {
    height: 42px;
}

/* NAV */
.main-nav ul {
    display: flex;
    gap: 30px;
}

.main-nav a {
    text-decoration: none;
    font-weight: 600;
    color: #031621;
    position: relative;
}

.main-nav a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 0;
    height: 2px;
    background-color: #EC6502;
    transition: width 0.3s ease;
}

.main-nav a:hover::after {
    width: 100%;
}

/* CTA */
.header-cta .btn {
    padding: 10px 22px;
}

/* MOBILE MENU */
.menu-toggle {
    display: none;
    flex-direction: column;
    gap: 5px;
    cursor: pointer;
}

.menu-toggle span {
    width: 26px;
    height: 3px;
    background-color: #031621;
}

/* =========================
   RESPONSIVE
========================= */
@media (max-width: 768px) {

    .main-nav {
        position: absolute;
        top: 80px;
        left: 0;
        width: 100%;
        background-color: #F7F7F7;
        display: none;
        padding: 20px 0;
        border-bottom: 1px solid #EDECED;
    }

    .main-nav ul {
        flex-direction: column;
        align-items: center;
        gap: 20px;
    }

    .header-cta {
        display: none;
    }

    .menu-toggle {
        display: flex;
    }

    .main-nav.active {
        display: block;
    }
}


/* =========================
   BUTTONS
========================= */
.btn {
    display: inline-block;
    padding: 14px 28px;
    font-weight: 600;
    border-radius: 6px;
    text-decoration: none;
    transition: 0.3s ease;
}

.btn.primary {
    background-color: #EC6502;
    color: #fff;
}

.btn.primary:hover {
    opacity: 0.9;
}

.btn.secondary {
    border: 2px solid #EC6502;
    color: #EC6502;
    background-color: transparent;
}

.btn.secondary:hover {
    background-color: #EC6502;
    color: #fff;
}



/* =========================
   HERO – LAYERED CANVAS
========================= */
.hero-layered {
    position: relative;
    background-color: #FFEDDF;
    padding: 120px 0 120px;
    overflow: hidden;
}

/* Decorative Shapes */
.hero-layered::before {
    content: "";
    position: absolute;
    top: 260px;
    left: 80px;
    width: 300px;
    height: 300px;
    background-color: rgb(236 101 2 / 4%);
    border-radius: 50%;
    z-index: 0;
}

.hero-layered::after {
    content: "";
    position: absolute;
    top: 420px;
    left: 180px;
    width: 180px;
    height: 180px;
    border: 2px solid rgba(236, 101, 2, 0.15);
    border-radius: 50%;
    z-index: 0;
}

.hero-bg-shape {
    position: absolute;
    top: -180px;
    right: -180px;
    width: 460px;
    height: 460px;
    background-color: rgb(236 101 2 / 6%);
    border-radius: 50%;
    z-index: 0;
}

.hero-bg-shape::after {
    content: "";
    position: absolute;
    bottom: -240px;
    left: -240px;
    width: 340px;
    height: 340px;
    border: 2px solid rgba(236, 101, 2, 0.15);
    border-radius: 50%;
}

/* =========================
   CONTENT WRAPPER
========================= */
.hero-inner {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 80px;
    align-items: center;
}

/* EYEBROW */
.hero-eyebrow {
    display: inline-block;
    margin-bottom: 14px;
}

.hero-eyebrow h1 {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.6px;
    text-transform: uppercase;
    color: #EC6502;
    background: rgba(236, 101, 2, 0.12);
    padding: 6px 14px;
    border-radius: 50px;
    display: inline-block;
}

/* TITLE */
.hero-title {
    font-size: 62px;
    line-height: 1.05;
    margin-bottom: 28px;
    color: #031621;
    font-weight: 700;
}

.hero-title span {
    color: #EC6502;
}

/* TEXT */
.hero-lead {
    font-size: 18px;
    font-weight: 600;
    max-width: 680px;
}

.hero-subtext {
    font-size: 16px;
    margin-top: 14px;
    max-width: 680px;
    color: #444;
}

/* CTA */
.hero-actions {
    margin-top: 42px;
    display: flex;
    gap: 22px;
    flex-wrap: wrap;
}

/* =========================
   FEATURE CARDS
========================= */
.hero-right {
    display: flex;
    flex-direction: column;
    gap: 26px;
}

.hero-feature {
    position: relative;
    background-color: #FFFFFF;
    padding: 36px 32px 34px;
    border-radius: 18px;
    box-shadow: 0 20px 40px rgba(3, 22, 33, 0.08);
    transition: 0.3s ease;
}

.hero-feature::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 6px;
    width: 100%;
    background-color: #EC6502;
    border-radius: 18px 18px 0 0;
}

.hero-feature:nth-child(2) {
    margin-left: 40px;
    background-color: #F7F7F7;
}

.hero-feature:nth-child(3) {
    margin-left: 80px;
    background-color: #EDECED;
}

.hero-feature h4 {
    font-size: 20px;
    margin-bottom: 10px;
    color: #031621;
}

.hero-feature p {
    font-size: 15px;
    font-weight: 500;
    color: #555;
}

/* =========================================================
   TABLET OPTIMIZATION (577px – 991px)
========================================================= */
@media (max-width: 991px) {

    .hero-layered {
        padding: 100px 0;
    }

    .hero-inner {
        grid-template-columns: 1fr;
        gap: 60px;
    }

    .hero-title {
        font-size: 48px;
        line-height: 1.15;
    }

    .hero-lead {
        font-size: 17px;
    }

    .hero-subtext {
        font-size: 15px;
    }

    .hero-right {
        margin-top: 20px;
    }

    .hero-feature:nth-child(2),
    .hero-feature:nth-child(3) {
        margin-left: 0;
    }

    .hero-layered::before,
    .hero-layered::after {
        display: none;
    }

    .hero-bg-shape {
        width: 320px;
        height: 320px;
        top: -120px;
        right: -120px;
    }
}

/* =========================================================
   MOBILE OPTIMIZATION (≤576px)
========================================================= */
@media (max-width: 576px) {

    .hero-layered {
        padding: 80px 0 70px;
    }

    .hero-inner {
        gap: 40px;
    }

    .hero-title {
        font-size: 34px;
        line-height: 1.2;
        margin-bottom: 20px;
    }

    .hero-lead {
        font-size: 15px;
        font-weight: 600;
    }

    .hero-subtext {
        font-size: 14px;
    }

    .hero-actions {
        flex-direction: column;
        gap: 16px;
    }

    .hero-actions .btn {
        width: 100%;
        text-align: center;
    }

    .hero-feature {
        padding: 26px 22px;
    }

    .hero-feature h4 {
        font-size: 18px;
    }

    .hero-feature p {
        font-size: 14px;
    }

    .hero-bg-shape {
        display: none;
    }
}



/* =========================
   SOLUTION – CAPABILITY STACK WITH IMAGE
========================= */

.solution {
    background-color: #f7f7f7;
    padding: 120px 0;
}

.solution-inner {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 90px;
    align-items: flex-start;
}

/* LEFT */
.solution-left h2 {
    font-size: 40px;
    font-weight: 800;
    line-height: 1.15;
    color: #031621;
    margin-bottom: 26px;
}

.solution-lead {
    font-size: 18px;
    font-weight: 600;
    color: #333;
    margin-bottom: 14px;
    max-width: 620px;
}

.solution-subtext {
    font-size: 16px;
    line-height: 1.7;
    color: #555;
    max-width: 620px;
}

/* IMAGE BELOW LEFT CONTENT */
.solution-left-image {
    margin-top: 40px;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(3, 22, 33, 0.08);
}

.solution-left-image img {
    width: 100%;
    height: auto;
    display: block;
}

/* RIGHT STACK */
.solution-right {
    display: flex;
    flex-direction: column;
    gap: 36px;
    position: relative;
}

/* Vertical guide line */
.solution-right::before {
    content: "";
    position: absolute;
    left: 26px;
    top: 0;
    bottom: 0;
    width: 2px;
    background-color: rgba(236, 101, 2, 0.2);
}

/* Item */
.solution-item {
    display: flex;
    gap: 26px;
    align-items: flex-start;
}

/* Step circle */
.solution-step {
    flex-shrink: 0;
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background-color: #FFEDDF;
    color: #EC6502;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
}

/* Text */
.solution-item h4 {
    font-size: 20px;
    font-weight: 700;
    color: #031621;
    margin-bottom: 6px;
}

.solution-item p {
    font-size: 15.5px;
    color: #555;
    line-height: 1.6;
}

/* =====================================================
   TABLET OPTIMIZATION (577px – 991px)
===================================================== */
@media (max-width: 991px) {

    .solution {
        padding: 90px 0;
    }

    .solution-inner {
        grid-template-columns: 1fr;
        gap: 60px;
    }

    .solution-left h2 {
        font-size: 34px;
    }

    .solution-lead {
        font-size: 17px;
    }

    .solution-subtext {
        font-size: 15px;
    }

    .solution-left-image {
        margin-top: 30px;
    }

    /* Remove desktop vertical line */
    .solution-right::before {
        display: none;
    }

    .solution-right {
        gap: 28px;
    }

    .solution-item {
        gap: 20px;
    }

    .solution-step {
        width: 48px;
        height: 48px;
        font-size: 15px;
    }
}

/* =====================================================
   MOBILE OPTIMIZATION (≤576px)
===================================================== */
@media (max-width: 576px) {

    .solution {
        padding: 70px 0;
    }

    .solution-inner {
        gap: 40px;
    }

    .solution-left h2 {
        font-size: 28px;
        line-height: 1.2;
    }

    .solution-lead {
        font-size: 15px;
        font-weight: 600;
    }

    .solution-subtext {
        font-size: 14px;
        line-height: 1.6;
    }

    .solution-left-image {
        margin-top: 24px;
        border-radius: 12px;
    }

    .solution-right {
        gap: 22px;
    }

    .solution-item {
        gap: 16px;
    }

    .solution-step {
        width: 42px;
        height: 42px;
        font-size: 14px;
    }

    .solution-item p {
        font-size: 14px;
        line-height: 1.5;
    }
}



/* ===============================
   ENTERPRISE PROCESS GRID DESIGN
================================= */

.methodology-enterprise {
    background: linear-gradient(to bottom, #f8fbff, #ffffff);
    padding: 140px 0;
}

.enterprise-header {
    text-align: center;
    max-width: 800px;
    margin: 0 auto 100px;
}

.enterprise-tag {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #ec6502;
    display: inline-block;
    margin-bottom: 15px;
}

.enterprise-header h2 {
    font-size: 40px;
    font-weight: 800;
    color: #031621;
    line-height: 1.3;
}

/* PROCESS GRID */
.enterprise-process {
    position: relative;
}

/* ROWS */
.process-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}

.process-row.bottom {
    margin-top: 80px;
}

/* CARD */
.process-card {
    background: #ffffff;
    padding: 45px 35px;
    border-radius: 20px;
    position: relative;
    box-shadow: 0 25px 60px rgba(0,0,0,0.05);
    transition: 0.4s ease;
    border-top: 4px solid #ec6502;
}

.process-card:hover {
    transform: translateY(-12px);
    box-shadow: 0 30px 70px rgba(0,0,0,0.08);
}

/* NUMBER */
.process-number {
    font-size: 60px;
    font-weight: 800;
    color: rgba(236,101,2,0.08);
    position: absolute;
    top: 20px;
    right: 25px;
}

/* TEXT */
.process-card h4 {
    font-size: 20px;
    font-weight: 700;
    color: #031621;
    margin-bottom: 12px;
}

.process-card p {
    font-size: 15px;
    color: #6f6f6f;
    line-height: 1.7;
}

/* HIGHLIGHT FINAL */
.process-card.highlight {
    background: linear-gradient(135deg, #ec6502, #ff914d);
    border-top: none;
}

.process-card.highlight h4,
.process-card.highlight p {
    color: #ffffff;
}

.process-card.highlight .process-number {
    color: rgba(255,255,255,0.15);
}

/* DIVIDER ARROW */
.process-divider {
    text-align: center;
    margin-top: 70px;
    position: relative;
}

.process-divider span {
    display: inline-block;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #ec6502;
    position: relative;
}

.process-divider span::after {
    content: "";
    position: absolute;
    top: 20px;
    left: 22px;
    width: 16px;
    height: 16px;
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    transform: rotate(45deg);
}

/* =====================================================
   TABLET OPTIMIZATION (577px – 991px)
===================================================== */
@media (max-width: 991px) {

    .methodology-enterprise {
        padding: 100px 0;
    }

    .enterprise-header {
        margin-bottom: 70px;
        padding: 0 10px;
    }

    .enterprise-header h2 {
        font-size: 32px;
        line-height: 1.35;
    }

    .process-row {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .process-row.bottom {
        margin-top: 30px;
    }

    .process-card {
        padding: 38px 30px;
        border-radius: 18px;
    }

    .process-number {
        font-size: 48px;
        top: 18px;
        right: 22px;
    }

    .process-card h4 {
        font-size: 18px;
    }

    .process-card p {
        font-size: 14.5px;
        line-height: 1.6;
    }

    .process-divider {
        display: none;
    }
}

/* =====================================================
   MOBILE OPTIMIZATION (≤576px)
===================================================== */
@media (max-width: 576px) {

    .methodology-enterprise {
        padding: 70px 0;
    }

    .enterprise-header {
        margin-bottom: 50px;
    }

    .enterprise-tag {
        font-size: 11px;
        letter-spacing: 1.5px;
    }

    .enterprise-header h2 {
        font-size: 26px;
        line-height: 1.4;
    }

    .process-row {
        gap: 22px;
    }

    .process-card {
        padding: 28px 22px;
        border-radius: 16px;
    }

    .process-number {
        font-size: 38px;
        top: 15px;
        right: 18px;
    }

    .process-card h4 {
        font-size: 16px;
        margin-bottom: 8px;
    }

    .process-card p {
        font-size: 14px;
        line-height: 1.5;
    }

    /* Reduce highlight intensity slightly on mobile for readability */
    .process-card.highlight {
        background: linear-gradient(135deg, #ec6502, #ff8a3c);
    }
}



/* ===============================
   ENTERPRISE VIDEO TESTIMONIALS
================================= */

.enterprise-testimonials {
    background: linear-gradient(135deg, #020b12 0%, #020b12 100%);
    padding: 140px 0;
    color: #ffffff;
}

.testimonial-wrapper {
    display: grid;
    grid-template-columns: 1fr 1.3fr;
    gap: 80px;
    align-items: center;
}

/* LEFT SIDE */
.testimonial-intro {
    max-width: 500px;
}

.testimonial-tag {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #ec6502;
    display: inline-block;
    margin-bottom: 18px;
}

.testimonial-intro h2 {
    font-size: 40px;
    font-weight: 800;
    margin-bottom: 20px;
}

.testimonial-intro p {
    font-size: 16px;
    line-height: 1.7;
    color: #c7d1d6;
    margin-bottom: 40px;
}

/* STATS */
.testimonial-stats {
    display: flex;
    gap: 40px;
}

.testimonial-stats h3 {
    font-size: 34px;
    color: #ec6502;
    margin-bottom: 5px;
}

.testimonial-stats span {
    font-size: 14px;
    color: #b0bec5;
}

/* RIGHT SIDE VIDEO GRID */
.testimonial-videos {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

.video-card {
    position: relative;
    padding-top: 56.25%; /* 16:9 ratio */
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 25px 60px rgba(0,0,0,0.3);
    transition: 0.4s ease;
}

.video-card:hover {
    transform: translateY(-10px);
}

.video-card iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

/* =========================
   RESPONSIVE: TABLET & MOBILE
========================= */
@media (max-width: 992px) {
    .enterprise-testimonials {
        padding: 80px 20px;
    }

    .testimonial-wrapper {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .testimonial-intro {
        text-align: center;
        margin: auto;
        max-width: 100%;
    }

    .testimonial-intro h2 {
        font-size: 32px;
    }

    .testimonial-intro p {
        font-size: 15px;
    }

    .testimonial-stats {
        flex-direction: column;
        gap: 20px;
        align-items: center;
        justify-content: center;
    }

    .testimonial-stats h3 {
        font-size: 28px;
    }

    .testimonial-stats span {
        font-size: 13px;
    }

    .testimonial-videos {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .video-card {
        border-radius: 14px;
        box-shadow: 0 15px 40px rgba(0,0,0,0.25);
    }
}

@media (max-width: 576px) {
    .testimonial-intro h2 {
        font-size: 26px;
    }

    .testimonial-intro p {
        font-size: 14px;
    }

    .testimonial-stats h3 {
        font-size: 24px;
    }

    .testimonial-stats span {
        font-size: 12px;
    }

    .video-card {
        padding-top: 60%; /* slightly taller for mobile */
    }
}


/* ===============================
   VERTICAL REVIEW SLIDER
================================= */

.testimonial-reviews {
    width: 100%;
    position: relative;
}

.review-viewport {
    height: 420px; /* enough for 2 cards */
    overflow: hidden;
    position: relative;
}

.review-track {
    display: flex;
    flex-direction: column;
    transition: transform 0.8s ease;
}

/* Individual Card */
.review-card {
    background: #0d1b24;
    padding: 30px;
    border-radius: 18px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.35);
    margin-bottom: 25px;
}

/* Profile */
.review-profile {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
}

.review-profile img {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    border: 3px solid #ec6502;
    object-fit: cover;
}

.review-profile h4 {
    font-size: 16px;
    margin-bottom: 4px;
    color: #ffffff;
}

.review-profile span {
    font-size: 13px;
    color: #b0bec5;
}

.review-card p {
    font-size: 14px;
    color: #c7d1d6;
    line-height: 1.6;
}

/* Responsive */
@media (max-width: 992px) {
    .review-viewport {
        height: 380px;
    }
}

@media (max-width: 576px) {
    .review-viewport {
        height: 360px;
    }
}



/* =========================================
   EXEC BENEFITS – MATRIX (IMAGE RIGHT)
   MOBILE & TABLET OPTIMIZATION
========================================= */

.exec-benefits {
    padding: 80px 20px;
    background: #ffffff;
}

.exec-inner {
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 100px;
    align-items: start;
}

/* ORDER SWITCH */
.exec-left {
    order: 2;   /* Image right on desktop */
}

.exec-right {
    order: 1;   /* Content left on desktop */
}

/* LEFT CONTENT SIDE */
.exec-right h2 {
    font-size: 40px;
    font-weight: 800;
    color: #031621;
    margin-bottom: 18px;
}

.exec-sub {
    font-size: 17px;
    color: #555;
    margin-bottom: 15px;
}

/* RIGHT IMAGE SIDE */
.exec-image {
    border-radius: 24px;
    overflow: hidden;
}

.exec-image img {
    width: 120%;
    display: block;
}

/* MATRIX DESIGN */
.exec-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    border-top: 1px solid #e5e5e5;
    border-left: 1px solid #e5e5e5;
    gap: 0; /* remove default gaps for mobile later */
}

.exec-card {
    padding: 50px 40px;
    border-right: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
    position: relative;
    transition: all 0.3s ease;
}

/* Number */
.exec-card span {
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: #ec6502;
    margin-bottom: 18px;
    letter-spacing: 1px;
}

/* Text */
.exec-card p {
    font-size: 17px;
    font-weight: 600;
    color: #031621;
    line-height: 1.7;
    max-width: 300px;
}

/* Hover */
.exec-card:hover {
    background: #fafafa;
}

/* Odd last item span 2 on desktop */
.exec-card:last-child:nth-child(odd) {
    grid-column: span 2;
}

/* =========================
   RESPONSIVE: TABLET & MOBILE
========================= */
@media (max-width: 992px) {
    .exec-inner {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    /* Reset order on mobile */
    .exec-left,
    .exec-right {
        order: unset;
    }

    .exec-left {
        display: flex;
        justify-content: center;
    }

    .exec-image img {
        width: 100%;
        max-width: 400px;
    }

    .exec-right h2 {
        font-size: 28px;
        text-align: center;
    }

    .exec-sub {
        font-size: 15px;
        text-align: center;
        margin-bottom: 25px;
    }

    /* Grid: stack cards in single column */
    .exec-grid {
        grid-template-columns: 1fr;
        border-top: none;
        border-left: none;
    }

    .exec-card {
        padding: 30px 20px;
        border-right: none;
        border-bottom: 1px solid #e5e5e5;
        max-width: 100%;
        margin: 0 auto;
        text-align: center;
    }

    .exec-card p {
        max-width: 100%;
        font-size: 15px;
    }

    .exec-card:last-child:nth-child(odd) {
        grid-column: auto;
    }
}

@media (max-width: 576px) {
    .exec-benefits {
        padding: 50px 15px;
    }

    .exec-right h2 {
        font-size: 24px;
    }

    .exec-sub {
        font-size: 14px;
    }

    .exec-card {
        padding: 20px 15px;
    }

    .exec-card span {
        font-size: 13px;
    }

    .exec-card p {
        font-size: 14px;
    }

    .exec-image img {
        max-width: 100%;
    }
}




/* =========================
   SOCIAL PROOF – TRUST SIGNALS
========================= */

.social-proof {
    background: radial-gradient(circle at top, #ffffff, #f2f4f6);
    padding: 140px 0;
}

/* Header */
.proof-header {
    text-align: center;
    max-width: 720px;
    margin: 0 auto 80px;
}

.proof-header h2 {
    font-size: 44px;
    font-weight: 900;
    color: #031621;
    margin-bottom: 14px;
}

.proof-header p {
    font-size: 18px;
    color: #555;
}

/* Grid */
.proof-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    max-width: 1100px;
    margin: 0 auto;
}

/* Item */
.proof-item {
    background: #ffffff;
    border-radius: 26px;
    padding: 46px 40px;
    position: relative;
    box-shadow:
        0 20px 50px rgba(0,0,0,0.08),
        inset 0 0 0 1px rgba(0,0,0,0.04);
    transition: all 0.3s ease;
}

/* Accent highlight */
.proof-item.highlight {
    transform: translateY(-24px);
    box-shadow:
        0 30px 80px rgba(236,101,2,0.25),
        inset 0 0 0 2px rgba(236,101,2,0.25);
}

/* Label */
.proof-label {
    display: block;
    font-size: 12px;
    letter-spacing: 0.25em;
    font-weight: 700;
    color: #EC6502;
    margin-bottom: 18px;
}

/* Value */
.proof-item strong {
    display: block;
    font-size: 34px;
    font-weight: 900;
    color: #031621;
    margin-bottom: 12px;
}

/* Subtext */
.proof-item em {
    font-style: normal;
    font-size: 15px;
    color: #555;
    line-height: 1.6;
}

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

/* -------- Tablet (992px and below) -------- */
@media (max-width: 992px) {

    .social-proof {
        padding: 110px 20px;
    }

    .proof-header {
        margin-bottom: 60px;
        padding: 0 10px;
    }

    .proof-header h2 {
        font-size: 34px;
        line-height: 1.3;
    }

    .proof-header p {
        font-size: 16px;
    }

    .proof-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .proof-item {
        padding: 40px 34px;
        border-radius: 22px;
    }

    .proof-item.highlight {
        transform: none;
    }

    .proof-item strong {
        font-size: 30px;
    }

    .proof-label {
        font-size: 11px;
        letter-spacing: 0.18em;
    }

    .proof-item em {
        font-size: 14px;
    }
}

/* -------- Mobile (576px and below) -------- */
@media (max-width: 576px) {

    .social-proof {
        padding: 90px 18px;
    }

    .proof-header {
        margin-bottom: 45px;
    }

    .proof-header h2 {
        font-size: 26px;
        line-height: 1.35;
    }

    .proof-header p {
        font-size: 15px;
    }

    .proof-grid {
        gap: 22px;
    }

    .proof-item {
        padding: 30px 22px;
        border-radius: 18px;
        box-shadow:
            0 12px 30px rgba(0,0,0,0.06),
            inset 0 0 0 1px rgba(0,0,0,0.04);
    }

    .proof-item strong {
        font-size: 24px;
        margin-bottom: 10px;
    }

    .proof-label {
        font-size: 10px;
        letter-spacing: 0.15em;
        margin-bottom: 14px;
    }

    .proof-item em {
        font-size: 13px;
        line-height: 1.5;
    }
}

/* -------- Extra Small Devices (400px and below) -------- */
@media (max-width: 400px) {

    .proof-header h2 {
        font-size: 22px;
    }

    .proof-item {
        padding: 24px 18px;
    }

    .proof-item strong {
        font-size: 22px;
    }

}





/* =========================
   VALUE SECTION – STAGGERED PREMIUM
========================= */
.value-section {
    background-color: #fdf0e7;
    padding: 140px 0;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.value-section h2 {
    text-align: center;
    font-size: 42px;
    font-weight: 800;
    color: #031621;
    margin-bottom: 16px;
    position: relative;
    z-index: 2;
}

.value-intro {
    text-align: center;
    font-size: 17px;
    font-weight: 600;
    color: #444;
    max-width: 750px;
    margin: 0 auto 60px auto;
    position: relative;
    z-index: 2;
}

.value-cards {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 60px 40px;
    position: relative;
    z-index: 2;
}

/* =========================
   STAGGERED EFFECT
========================= */
.value-card:nth-child(odd) {
    transform: translateY(0);
}

.value-card:nth-child(even) {
    transform: translateY(40px);
}

/* =========================
   CARD DESIGN
========================= */
.value-card {
    background: #ffffff;
    border-radius: 20px;
    padding: 30px 28px;
    display: flex;
    align-items: center;
    gap: 20px;
    box-shadow: 0 25px 50px rgba(3, 22, 33, 0.08);
    transition: all 0.35s ease;
    position: relative;
}

.value-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 35px 65px rgba(3, 22, 33, 0.15);
}

/* =========================
   ICON DESIGN
========================= */
.value-icon {
    width: 60px;
    height: 60px;
    background-color: #EC6502;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 8px 20px rgba(236, 101, 2, 0.25);
    transition: all 0.3s ease;
}

.value-icon svg {
    width: 28px;
    height: 28px;
    stroke: #ffffff;
    transition: transform 0.3s ease;
}

/* Icon hover animation */
.value-card:hover .value-icon {
    transform: scale(1.08);
    box-shadow: 0 12px 28px rgba(236, 101, 2, 0.35);
}

.value-card:hover .value-icon svg {
    transform: rotate(6deg);
}

/* =========================
   TEXT STYLE
========================= */
.value-card p {
    font-size: 16px;
    font-weight: 600;
    color: #031621;
    margin: 0;
    line-height: 1.6;
}

/* =========================
   BACKGROUND CIRCLES
========================= */
.value-bg-circle {
    position: absolute;
    border-radius: 50%;
    z-index: 0;
    opacity: 0.25;
}

.value-bg-circle.circle1 {
    width: 360px;
    height: 360px;
    background-color: #EC6502;
    top: -120px;
    left: -100px;
}

.value-bg-circle.circle2 {
    width: 240px;
    height: 240px;
    background-color: #C5C5C5;
    bottom: -100px;
    right: -80px;
}

/* =========================
   RESPONSIVE: MOBILE & TABLET
========================= */
@media (max-width: 1100px) {
    .value-cards {
        gap: 45px 30px;
    }
}

@media (max-width: 900px) {
    .value-section {
        padding: 100px 20px;
    }

    .value-cards {
        grid-template-columns: 1fr; /* stack all cards */
        gap: 30px;
    }

    /* Remove staggered effect on small screens */
    .value-card:nth-child(even),
    .value-card:nth-child(odd) {
        transform: translateY(0);
    }

    /* Adjust background circles */
    .value-bg-circle.circle1 {
        top: -60px;
        left: -40px;
        width: 250px;
        height: 250px;
    }

    .value-bg-circle.circle2 {
        bottom: -50px;
        right: -30px;
        width: 180px;
        height: 180px;
    }
}

@media (max-width: 600px) {
    .value-section h2 {
        font-size: 27px;
    }

    .value-intro {
        font-size: 15px;
        margin-bottom: 40px;
    }

    .value-card {
        padding: 22px 20px;
        flex-direction: row;
        gap: 15px;
    }

    .value-icon {
        width: 50px;
        height: 50px;
    }

    .value-icon svg {
        width: 22px;
        height: 22px;
    }

    .value-card p {
        font-size: 14px;
    }
}

/* =========================
   AUDIENCE SECTION – PREMIUM
========================= */
.audience {
    background-color: #ffffff;
    padding: 120px 0;
    position: relative;
    overflow: hidden;
}

.audience-inner {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 60px;
    align-items: flex-start;
    max-width: 1200px;
    margin: 0 auto;
}

/* LEFT IMAGE */
.audience-left {
    display: flex;
    justify-content: center;
    align-items: center;
}

.audience-image {
    max-width: 100%;
    border-radius: 20px;
    box-shadow: 0 25px 50px rgba(3,22,33,0.08);
}

/* RIGHT CONTENT */
.audience-right h2 {
    font-size: 40px;
    font-weight: 800;
    color: #031621;
    margin-bottom: 16px;
}

.audience-right .audience-intro {
    font-size: 17px;
    font-weight: 600;
    color: #444;
    line-height: 1.6;
    margin-bottom: 40px;
}

/* CARDS GRID */
.audience-cards {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
}

.audience-card {
    display: flex;
    align-items: center;
    gap: 20px;
    background-color: #FFEDDF;
    padding: 25px 20px;
    border-radius: 18px;
    box-shadow: 0 20px 40px rgba(3,22,33,0.08);
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.audience-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 40px 70px rgba(3,22,33,0.15);
}

.audience-icon {
    width: 60px;
    height: 60px;
    background-color: #EC6502;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.audience-icon img {
    width: 28px;
    height: 28px;
}

.audience-card p {
    font-size: 16px;
    font-weight: 600;
    color: #031621;
    margin: 0;
    line-height: 1.4;
}

/* NOTE */
.audience-note {
    text-align: center;
    margin-top: 50px;
    font-size: 16px;
    font-weight: 600;
    color: #031621;
}

/* BACKGROUND CIRCLES */
.audience-circle {
    position: absolute;
    border-radius: 50%;
    opacity: 0.05;
    z-index: 0;
}

.circle-left {
    width: 300px;
    height: 300px;
    top: -100px;
    left: -150px;
    background-color: #EC6502;
}

.circle-right {
    width: 400px;
    height: 400px;
    bottom: -150px;
    right: -200px;
    background-color: #031621;
}

/* RESPONSIVE */
@media (max-width: 900px) {
    .audience-inner {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .audience-cards {
        grid-template-columns: 1fr;
    }

    .audience-image {
        max-width: 70%;
        margin: 0 auto;
    }
}



/* =========================
   DIFFERENTIATOR – MODE SWITCH
========================= */

.difference {
    background: #020b12;
    padding: 160px 0;
    color: #ffffff;
}

/* Wrapper */
.mode-wrapper {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: stretch;
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto 90px;
}

/* Panels */
.mode-left,
.mode-right {
    background: linear-gradient(180deg, #0b1f2b, #06141d);
    border-radius: 28px;
    padding: 50px 40px;
    position: relative;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.05);
}

/* Right emphasis */
.mode-right {
    background: linear-gradient(180deg, #ffffff, #f2f2f2);
    color: #031621;
}

/* Labels */
.mode-label {
    font-size: 12px;
    letter-spacing: 0.2em;
    opacity: 0.6;
    margin-bottom: 18px;
}

.mode-label.active {
    color: #EC6502;
    opacity: 1;
}

/* Titles */
.mode-left h3,
.mode-right h3 {
    font-size: 28px;
    font-weight: 800;
    margin-bottom: 28px;
}

/* Lists */
.mode-left ul,
.mode-right ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.mode-left li,
.mode-right li {
    font-size: 16px;
    padding: 16px 0;
    border-bottom: 1px dashed rgba(255,255,255,0.15);
}

.mode-right li {
    border-bottom: 1px dashed rgba(3,22,33,0.15);
}

/* Switch */
.mode-switch {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
}

.switch-line {
    width: 4px;
    height: 120px;
    background: linear-gradient(180deg, #EC6502, transparent);
}

.mode-switch span {
    font-size: 12px;
    letter-spacing: 0.3em;
    color: #EC6502;
}

/* Statement */
.mode-statement {
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
}

.mode-statement h2 {
    font-size: 44px;
    font-weight: 900;
    margin-bottom: 20px;
}

.mode-statement p {
    font-size: 18px;
    color: #cfd8dc;
    line-height: 1.8;
}

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

@media (max-width: 992px) {
    .mode-wrapper {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .mode-switch {
        display: none;
    }

    .mode-statement h2 {
        font-size: 32px;
    }
}

@media (max-width: 576px) {
    .difference {
        padding: 120px 0;
    }

    .mode-left,
    .mode-right {
        padding: 36px 26px;
    }

    .mode-statement h2 {
        font-size: 26px;
    }
}



/* =========================
   ADVANCED CTA SECTION
========================= */

.cta-advanced {
    background: linear-gradient(135deg, #ec6502 0%, #ff7a1a 100%);
    padding: 90px 0;
    position: relative;
    overflow: hidden;
}

/* subtle abstract shapes */
.cta-advanced::before,
.cta-advanced::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.08);
}

.cta-advanced::before {
    width: 320px;
    height: 320px;
    top: -120px;
    left: -120px;
}

.cta-advanced::after {
    width: 260px;
    height: 260px;
    bottom: -100px;
    right: -100px;
}

.cta-wrapper {
    display: grid;
    grid-template-columns: 1.3fr 1fr;
    gap: 50px;
    align-items: center;
    position: relative;
    z-index: 1;
}

/* LEFT CONTENT */
.cta-content {
    color: #fff;
}

.cta-tag {
    display: inline-block;
    background: rgba(255, 255, 255, 0.15);
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 18px;
}

.cta-content h2 {
    font-size: 42px;
    line-height: 1.2;
    margin-bottom: 16px;
}

.cta-content p {
    font-size: 18px;
    max-width: 520px;
    opacity: 0.95;
    color: #ffffff;
}

/* RIGHT ACTION BOX */
.cta-action-box {
    background: rgba(255, 255, 255, 0.12);
    backdrop-filter: blur(10px);
    border-radius: 24px;
    padding: 36px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
}

/* Buttons */
.cta-action-box .btn {
    text-align: center;
    padding: 16px 24px;
    border-radius: 14px;
    font-weight: 700;
    transition: all 0.3s ease;
}

.cta-action-box .btn.primary {
    background: #fff;
    color: #ec6502;
}

.cta-action-box .btn.primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.2);
}

.cta-action-box .btn.ghost {
    border: 2px solid #fff;
    color: #fff;
    background: transparent;
}

.cta-action-box .btn.ghost:hover {
    background: #fff;
    color: #ec6502;
}

/* Urgency note */
.cta-note {
    margin-top: 10px;
    font-size: 14px;
    font-weight: 600;
    text-align: center;
    opacity: 0.9;
}

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

/* -------- Tablet (992px and below) -------- */
@media (max-width: 992px) {

    .cta-advanced {
        padding: 80px 20px;
    }

    .cta-wrapper {
        grid-template-columns: 1fr;
        text-align: center;
        gap: 40px;
    }

    .cta-content h2 {
        font-size: 34px;
        line-height: 1.3;
    }

    .cta-content p {
        font-size: 16px;
        margin: 0 auto;
    }

    .cta-tag {
        font-size: 13px;
        padding: 7px 14px;
    }

    .cta-action-box {
        padding: 30px;
        border-radius: 20px;
    }

    .cta-action-box .btn {
        padding: 15px 20px;
        font-size: 15px;
    }

    .cta-note {
        font-size: 13px;
    }

    /* Reduce background shapes impact */
    .cta-advanced::before {
        width: 220px;
        height: 220px;
        top: -100px;
        left: -100px;
    }

    .cta-advanced::after {
        width: 180px;
        height: 180px;
        bottom: -80px;
        right: -80px;
    }
}

/* -------- Mobile (576px and below) -------- */
@media (max-width: 576px) {

    .cta-advanced {
        padding: 65px 18px;
    }

    .cta-wrapper {
        gap: 30px;
    }

    .cta-content h2 {
        font-size: 26px;
        line-height: 1.35;
    }

    .cta-content p {
        font-size: 15px;
    }

    .cta-tag {
        font-size: 12px;
        padding: 6px 12px;
        margin-bottom: 14px;
    }

    .cta-action-box {
        padding: 24px 20px;
        border-radius: 18px;
        gap: 14px;
        box-shadow: 0 12px 28px rgba(0,0,0,0.12);
    }

    .cta-action-box .btn {
        padding: 14px 18px;
        font-size: 14px;
        border-radius: 12px;
    }

    .cta-note {
        font-size: 12px;
        line-height: 1.5;
    }

    /* Further soften decorative shapes */
    .cta-advanced::before,
    .cta-advanced::after {
        opacity: 0.05;
    }
}

/* -------- Extra Small Devices (400px and below) -------- */
@media (max-width: 400px) {

    .cta-content h2 {
        font-size: 22px;
    }

    .cta-action-box {
        padding: 20px 16px;
    }

    .cta-action-box .btn {
        font-size: 13px;
        padding: 12px 16px;
    }

}


/* =========================
   LEAD MAGNET – IMAGE LEFT
========================= */

.lead-image {
    background: #ffffff;
    padding: 100px 0;
}

/* WRAPPER */
.lead-image-wrap {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 70px;
    align-items: center;
}

/* IMAGE */
.lead-visual img {
    width: 100%;
    border-radius: 18px;
    box-shadow: 0 30px 70px rgba(0,0,0,0.12);
}

/* CONTENT */
.lead-content h2 {
    font-size: 40px;
    font-weight: 800;
    color: #031621;
    margin-bottom: 12px;
}

.lead-sub {
    font-size: 18px;
    color: #555;
    max-width: 520px;
    margin-bottom: 40px;
}

/* OPTIONS */
.lead-options {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* OPTION CARD */
.lead-option {
    background: #ffffff;
    border: 1px solid #eaeaea;
    padding: 28px 30px;
    text-decoration: none;
    transition: all 0.3s ease;
    color: #031621;
}

.lead-option h4 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 6px;
}

.lead-option p {
    font-size: 15px;
    color: #555;
    margin-bottom: 10px;
}

.lead-option span {
    font-size: 14px;
    font-weight: 700;
    color: #EC6502;
}

/* HIGHLIGHT OPTION */
.lead-option.highlight {
    border-color: #EC6502;
    background: #fff7f1;
}

/* HOVER */
.lead-option:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 45px rgba(0,0,0,0.08);
}

/* RESPONSIVE */
@media (max-width: 900px) {
    .lead-image-wrap {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .lead-content h2 {
        font-size: 32px;
    }
}


/* =========================
   FOOTER
========================= */
.footer {
    background-color: #031621;
    color: #fff;
    padding: 30px 0;
    text-align: center;
}

.footer p {
    color: #fff;
    font-size: 14px;
}

/* =========================
   RESPONSIVE
========================= */
@media (max-width: 768px) {
    h1 {
        font-size: 36px;
    }

    h2 {
        font-size: 28px;
    }

    section {
        padding: 60px 0;
    }

    .hero-points {
        flex-direction: column;
        gap: 12px;
    }
}










:root {
  --primary: #ec6502;
  --dark: #031621;
  --gray: #6f6f6f;
  --bg: #f6f7fb;
}

/* ==============================
   TRAINING COURSES – SYLLABUS
=============================== */

/* General Section */
.training-courses {
  padding: 80px 20px;
  background: #f9f9f9;
}

.container-modern {
  max-width: 1200px;
  margin: auto;
}

/* Header */
.header-modern {
  text-align: center;
  margin-bottom: 50px;
}

.header-modern h2 {
  font-size: 34px;
  color: #1a1a1a;
  margin-bottom: 12px;
}

.header-modern p {
  color: #555;
  font-size: 16px;
  line-height: 1.5;
}

/* Wrapper */
.wrapper-modern {
  display: flex;
  gap: 30px;
}

/* Module Cards */
.modules-modern {
  width: 28%;
  max-height: 600px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.module-card {
  background: #fff;
  padding: 16px 20px;
  border-radius: 12px;
  box-shadow: 0 6px 20px rgba(0,0,0,0.05);
  cursor: pointer;
  font-weight: 500;
  transition: all 0.3s;
}

.module-card:hover,
.module-card.active {
  background: #ec6502;
  color: #fff;
}

/* Content Card */
.modules-content-modern {
  width: 72%;
}

.content-box-modern {
  display: none;
}

.content-box-modern.active {
  display: block;
}

.card-inner {
  background: #fff;
  border-radius: 16px;
  padding: 30px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.06);
  max-height: 600px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  overflow-y: auto;
}

/* Title */
.card-inner h3 {
  font-size: 26px;
  color: #1a1a1a;
  border-bottom: 2px solid #ec6502;
  padding-bottom: 10px;
  margin-bottom: 10px;
}

/* Skills & Tools Sections */
.content-section {
  border-bottom: 1px solid #eee;
  padding-bottom: 15px;
}

.content-section h4 {
  font-size: 18px;
  color: #ec6502;
  margin-bottom: 8px;
}

/* Skills - 2 columns with tick icon */
.content-section.skills ul {
  max-height: 150px;
  overflow-y: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 20px;
  list-style: none;
  padding-left: 0;
}

.content-section.skills ul li {
  font-size: 15px;
  color: #444;
  position: relative;
  padding-left: 22px;
}

.content-section.skills ul li::before {
  content: "✔";
  position: absolute;
  left: 0;
  color: #ec6502;
  font-size: 14px;
  top: 2px;
}

/* Scrollbar for Skills */
.content-section.skills ul::-webkit-scrollbar {
  width: 6px;
}

.content-section.skills ul::-webkit-scrollbar-thumb {
  background-color: #ec6502;
  border-radius: 3px;
}

/* Tools Row */
.tools-row {
  display: flex;
  gap: 15px;
  flex-wrap: nowrap;
  overflow-x: auto;
  padding: 5px 0;
}

.tools-row img {
  height: 40px;
  width: auto;
  border-radius: 6px;
  transition: transform 0.3s;
}

.tools-row img:hover {
  transform: scale(1.1);
}

/* Enroll Button */
.enroll-center {
  text-align: center;
  margin-top: 30px;
}

.enroll-btn {
  display: inline-block;
  padding: 14px 30px;
  background: #ec6502;
  color: #fff;
  font-weight: 600;
  border-radius: 8px;
  text-decoration: none;
  transition: 0.3s;
}

.enroll-btn:hover {
  background: #d35400;
}

/* =============================
   TABLET (577px – 992px)
============================== */
@media (max-width: 992px) {

  .wrapper-modern {
    flex-direction: column;
    gap: 25px;
  }

  .modules-modern,
  .modules-content-modern {
    width: 100%;
    max-height: none;
  }

  .card-inner {
    max-height: none;
    padding: 25px;
  }

  .tools-row {
    justify-content: flex-start;
  }

  .content-section.skills ul {
    grid-template-columns: 1fr; /* single column on tablet */
  }

  .header-modern h2 {
    font-size: 30px;
  }

  .header-modern p {
    font-size: 15px;
  }
}

/* =============================
   MOBILE (≤576px)
============================== */
@media (max-width: 576px) {

  .training-courses {
    padding: 50px 15px;
  }

  .header-modern h2 {
    font-size: 24px;
    margin-bottom: 10px;
  }

  .header-modern p {
    font-size: 14px;
  }

  /* Module cards stacked with full width */
  .modules-modern {
    width: 100%;
    max-height: none;
    flex-direction: row;
    overflow-x: auto;
    gap: 12px;
    padding-bottom: 10px;
  }

  .module-card {
    min-width: 150px;
    flex: 0 0 auto;
    padding: 14px 18px;
    font-size: 14px;
    text-align: center;
  }

  /* Content */
  .modules-content-modern {
    width: 100%;
  }

  .card-inner {
    padding: 20px;
    gap: 15px;
  }

  .card-inner h3 {
    font-size: 22px;
  }

  /* Skills list single column */
  .content-section.skills ul {
    grid-template-columns: 1fr;
    max-height: none;
  }

  .content-section.skills ul li {
    font-size: 14px;
    padding-left: 20px;
  }

  .content-section h4 {
    font-size: 16px;
  }

  /* Tools row scrollable */
  .tools-row {
    gap: 12px;
    padding: 5px 0;
  }

  .tools-row img {
    height: 36px;
  }

  .enroll-btn {
    width: 100%;
    text-align: center;
    padding: 12px 0;
    font-size: 15px;
  }
}









/* =========================
   POPUP FORM
========================= */

.popup-overlay {
    position: fixed;
    inset: 0;
    background: rgba(3, 22, 33, 0.65);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s ease;
}

.popup-overlay.active {
    opacity: 1;
    visibility: visible;
}

.popup-box {
    background: #ffffff;
    width: 100%;
    max-width: 420px;
    padding: 40px 35px;
    border-radius: 18px;
    position: relative;
    transform: translateY(30px) scale(0.95);
    transition: all 0.4s ease;
}

.popup-overlay.active .popup-box {
    transform: translateY(0) scale(1);
}

/* CLOSE BUTTON */
.popup-close {
    position: absolute;
    top: 14px;
    right: 16px;
    background: none;
    border: none;
    font-size: 26px;
    cursor: pointer;
    color: #666;
}

/* TEXT */
.popup-title {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 6px;
    color: #031621;
}

.popup-sub {
    font-size: 14px;
    color: #555;
    margin-bottom: 25px;
}

/* FORM */
.popup-box form {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.popup-box input,
.popup-box select,
.popup-box textarea {
    width: 100%;
    padding: 12px 14px;
    border-radius: 10px;
    border: 1px solid #ddd;
    font-family: inherit;
    font-size: 14px;
}

.popup-box input:focus,
.popup-box select:focus,
.popup-box textarea:focus {
    outline: none;
    border-color: #EC6502;
}

/* BUTTON */
.popup-box .btn.full {
    width: 100%;
    padding: 14px;
    font-size: 15px;
}

/* MOBILE */
@media (max-width: 480px) {
    .popup-box {
        margin: 20px;
        padding: 30px 25px;
    }
}
/* Floating Call Button */
.floating-call {
  position: fixed;
  bottom: 30px;
  right: 30px;
  background: #ec6502; /* Primary brand color */
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 8px 20px rgba(0,0,0,0.25);
  z-index: 9999;
  cursor: pointer;
  animation: pulse 2s infinite;
  transition: transform 0.3s, box-shadow 0.3s;
}

.floating-call img {
  width: 28px;
  height: 28px;
}

.floating-call:hover {
  transform: scale(1.2);
  box-shadow: 0 12px 24px rgba(0,0,0,0.35);
}

/* Pulse Animation */
@keyframes pulse {
  0% {
    transform: scale(1);
    box-shadow: 0 8px 20px rgba(236,101,2,0.5);
  }
  50% {
    transform: scale(1.1);
    box-shadow: 0 12px 24px rgba(236,101,2,0.7);
  }
  100% {
    transform: scale(1);
    box-shadow: 0 8px 20px rgba(236,101,2,0.5);
  }
}



