/*
Theme Name: SJM
Theme URI: https://example.com/sjm
Author: SJM Team
Description: E-learning platform landing page theme converted from Figma design.
Version: 1.1.0
License: GNU General Public License v2 or later
Text Domain: sjm
*/

:root {
  --sjm-primary: #11606d;
  --sjm-primary-dark: #0e7490;
  --sjm-primary-deep: #1A8A9A;
   --sjm-primary-light: #E1F5F7;
  --sjm-gray-500: #646464;
  --sjm-gray-600: #404040;
  --sjm-gray-700: #292D32;
  --sjm-gray-800: #151515;
  --sjm-gray-900: #000009;
  --sjm-dark: #0f172a;
  --sjm-footer: #134e4a;
  --sjm-orange: #f97316;
  --sjm-green: #22c55e;
  --sjm-yellow-bg: #fffbeb;
  --sjm-cream-bg: #fefce8;
  --sjm-blue-bg: #f0f9ff;
  --sjm-text: #000009;
  --sjm-muted: #535353; 
  --sjm-border: #e2e8f0;
  --sjm-card-shadow: 0 8px 32px rgba(15, 23, 42, 0.08);
  --sjm-radius: 12px;
  --sjm-radius-lg: 25px;
  --sjm-container: 1440px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
 font-family: "Plus Jakarta Sans", sans-serif;
  color: var(--sjm-text);
  background: #fff;
  overflow-x: hidden;
  line-height: 1.6;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Google Sans Flex", "Plus Jakarta Sans", sans-serif;
    color: var(--sjm-text);
    letter-spacing: -0.02em;
}
 h2{
    font-size:48px;
    font-weight:600;
    line-height:1.1;
}

p{
    font-size:16px;
    line-height:1.7;
    color: #646464;

}

img {
  max-width: 100%;
  height: auto;
}

.container-sjm {
  width: min(100% - 2rem, var(--sjm-container));
  margin-inline: auto;
}

.section-block {
  padding: 5rem 0;
}

.section-block--sm {
  padding: 3.5rem 0;
}

.section-heading {
  font-size: clamp(1.75rem, 3.5vw, 2.375rem);
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 1rem;
}

.section-heading--center {
  text-align: center;
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

.section-desc {
  color: var(--sjm-muted);
  font-size: 1rem;
  max-width: 560px;
}

.section-desc--center {
  text-align: center;
  margin: 0 auto 3rem;
}

/* Buttons */
.btn-sjm {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.7rem 1.75rem;
    font-weight: 600;
    font-size: 0.9375rem;
    border-radius: 10px;
    border: none;
    transition: background 0.2s, color 0.2s, box-shadow 0.2s;
    text-decoration: none;
    border-radius: 9999px;
}

.btn-sjm-primary {
  background: var(--sjm-primary-deep);
  color: #fff;
  box-shadow: 0px 4px 20px 0px rgba(17, 96, 109, 0.3);
}

.btn-sjm-primary:hover {
  background: var(--sjm-dark);
  color: #fff;
}

.btn-sjm-outline {
  background: transparent;
  color: #0B0707;
  border: 1px solid #3b3b3b1F;
}

.btn-sjm-outline:hover {
  background: var(--sjm-primary-deep);
  color: #fff;
}

.btn-sjm-white {
  background: #fff;
  color: var(--sjm-primary-deep);
}

.btn-sjm-white:hover {
  background: #f0fdfa;
  color: var(--sjm-primary-deep);
}
p,
.hero-desc,
.section-desc,
li,
small{
    font-family: "Plus Jakarta Sans", sans-serif;
}
/* Header */
.site-header {
  background: #fff;
  padding: 1rem 0;
  border-bottom: 1px solid var(--sjm-border);
}

.site-header .navbar {
  padding: 0;
}

.site-header .navbar-brand {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-size: 1.375rem;
  color: var(--sjm-text);
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.site-header .brand-icon {
  width: 32px;
  height: 32px;
  background: linear-gradient(135deg, var(--sjm-primary), var(--sjm-primary-deep));
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 0.75rem;
  font-weight: 700;
}

.site-header .nav-link {
  color: var(--sjm-muted);
  font-weight: 500;
  font-size: 0.9375rem;
  padding: 0.5rem 1rem !important;
}

.site-header .nav-link:hover,
.site-header .nav-link.active {
  color: var(--sjm-primary);
}
section {
  padding: 70px 0;
}
/* Hero */
.hero-section {
  padding: 4rem 0 5rem;
  background: #fff;
}

.hero-section h1 {
  font-size: clamp(2rem, 4.5vw, 3rem);
  line-height: 1.15;
  margin-bottom: 1.25rem;
}

.hero-section .hero-desc {
  color: var(--sjm-gray-600);
  font-size: 18pm;
  margin-bottom: 2rem;
  max-width: 480px;
}

.hero-visual-wrap {
  position: relative;
  display: flex;
  justify-content: center;
  padding: 1rem;
}
.div-blur {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 100px;
    background: linear-gradient( 180deg, rgba(247, 246, 244, 0) 0%, #ffffff 100%);
    z-index: 9;
}
/* Phone mockup */
.phone-device {
  position: relative;
  width: 260px;
  z-index: 2;
}

.phone-device__shell {
  background: #1e293b;
  border-radius: 32px;
  padding: 10px;
  box-shadow: var(--sjm-card-shadow);
}

.phone-device__screen {
  background: #fff;
  border-radius: 26px;
  overflow: hidden;
  min-height: 480px;
}

.phone-status {
  display: flex;
  justify-content: space-between;
  padding: 0.625rem 1rem 0;
  font-size: 0.65rem;
  font-weight: 600;
  color: var(--sjm-text);
}

.phone-app-header {
  padding: 0.75rem 1rem;
}

.phone-app-header h4 {
  font-size: 0.875rem;
  margin: 0 0 0.5rem;
}

.phone-search {
  background: #f1f5f9;
  border-radius: 8px;
  padding: 0.5rem 0.75rem;
  font-size: 0.7rem;
  color: var(--sjm-muted);
}

.phone-filters {
  display: flex;
  gap: 0.375rem;
  padding: 0.75rem 1rem;
  overflow-x: auto;
}

.phone-filters span {
  flex-shrink: 0;
  font-size: 0.625rem;
  padding: 0.25rem 0.625rem;
  border-radius: 50px;
  background: #f1f5f9;
  color: var(--sjm-muted);
}

.phone-filters span.active {
  background: var(--sjm-primary);
  color: #fff;
}

.phone-course-card {
  margin: 0 1rem 0.75rem;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--sjm-border);
}

.phone-course-card__img {
  height: 100px;
  background: linear-gradient(135deg, #67e8f9, #11606d);
  position: relative;
}

.phone-course-card__img::after {
  content: "Ã¢â€“Â¶";
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 1.25rem;
}

.phone-course-card__body {
  padding: 0.625rem;
}

.phone-course-card__body strong {
  display: block;
  font-size: 0.7rem;
  margin-bottom: 0.25rem;
}

.phone-course-card__body small {
  color: var(--sjm-muted);
  font-size: 0.625rem;
}

.phone-section-label {
  padding: 0.5rem 1rem;
  font-size: 0.7rem;
  font-weight: 600;
}

/* Floating UI cards */
.float-card {
  position: absolute;
  background: #fff;
  border-radius: var(--sjm-radius);
  box-shadow: var(--sjm-card-shadow);
  padding: 1rem;
  z-index: 3;
}

.float-card__title {
  font-size: 0.75rem;
  font-weight: 600;
  margin-bottom: 0.75rem;
  color: var(--sjm-text);
}

.float-card small {
  color: var(--sjm-muted);
  font-size: 0.65rem;
}

/* Platform features - yellow section */
.section-yellow {
  background: var(--sjm-yellow-bg);
}

.features-grid-wrap {
  position: relative;
  max-width: 900px;
  margin: 0 auto;
}

.feature-card-white {
  background: #fff;
  border-radius: var(--sjm-radius-lg);
  padding: 1.25rem;
  box-shadow: var(--sjm-card-shadow);
  height: 100%;
}

.feature-card-white__icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: #ecfeff;
  color: var(--sjm-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.125rem;
  margin-bottom: 0.875rem;
}

.feature-card-white h3 {
  font-size: 0.9375rem;
  margin-bottom: 0.375rem;
}

.feature-card-white p {
  font-size: 0.8125rem;
  color: var(--sjm-muted);
  margin: 0;
}

.features-phone-center {
  display: flex;
  justify-content: center;
  padding: 2rem 0;
}

.features-phone-center .phone-device {
  width: 220px;
}

.features-phone-center .phone-device__screen {
  min-height: 400px;
}

/* Teaching section */
.section-cream {
  background: var(--sjm-cream-bg);
}

.teaching-list {
  list-style: none;
  padding: 0;
  margin: 2rem 0 0;
}

.teaching-list li {
  display: flex;
  gap: 1rem;
  margin-bottom: 1.75rem;
}

.teaching-list__icon {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: #ecfeff;
  color: var(--sjm-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.125rem;
}

.teaching-list h4 {
  font-size: 1rem;
  margin-bottom: 0.25rem;
}

.teaching-list p {
  font-size: 0.875rem;
  color: var(--sjm-muted);
  margin: 0;
}

.teaching-cards-stack {
  position: relative;
  min-height: 380px;
}

.stack-card {
  position: absolute;
  background: #fff;
  border-radius: var(--sjm-radius-lg);
  box-shadow: var(--sjm-card-shadow);
  padding: 1.25rem;
  width: 240px;
}

.stack-card--1 { top: 0; right: 10%; }
.stack-card--2 { top: 35%; left: 0; }
.stack-card--3 { bottom: 0; right: 0; }

.stack-card h5 {
  font-size: 0.8125rem;
  margin-bottom: 0.75rem;
}

.stack-card .mini-bar {
  height: 6px;
  background: #e2e8f0;
  border-radius: 3px;
  margin-bottom: 6px;
}

.stack-card .mini-bar.fill {
  background: var(--sjm-primary);
  width: 70%;
}
.teaching-image-wrap{
    position:relative;
    min-height:520px;
}

/* Shared */

.teaching-card{
    position:absolute;
}

.teaching-card img{
    display:block;
    width:100%;
    height:auto;
}

/* Study Materials */

.materials-card{
    width:360px;
    top: 40px;
    left: 0;
    transform: rotate(
11deg);
    z-index:3;
}

/* Todo */

.todo-card{
    width:250px;
    top:130px;
    right: 0px;
    transform:rotate(4deg);
    z-index:2;
}

/* Progress */

.progress-card{
    width:340px;
    bottom: 62px;
    left:20px;
    z-index:4;
    transform: rotate(
3deg);
}
/* Ultimate platform section */
.platform-showcase {
  text-align: center;
  padding: 5rem 0;
}

.platform-showcase__visual {
  position: relative;
  max-width: 800px;
  margin: 3rem auto 0;
  min-height: 520px;
}

.platform-showcase .float-card--revenue { top: 5%; left: 0; width: 180px; }
.platform-showcase .float-card--account { top: 8%; right: 0; width: 200px; }
.platform-showcase .float-card--features { bottom: 15%; left: 2%; width: 190px; }
.platform-showcase .float-card--stats { bottom: 10%; right: 0; width: 170px; }

.mini-chart {
  display: flex;
  align-items: flex-end;
  gap: 4px;
  height: 48px;
  margin-top: 0.5rem;
}

.mini-chart span {
  flex: 1;
  background: #e2e8f0;
  border-radius: 3px 3px 0 0;
}

.mini-chart span.highlight {
  background: var(--sjm-orange);
}

.mini-chart span.teal {
  background: var(--sjm-primary);
}

.feature-pills {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.5rem;
  margin-top: 0.5rem;
}

.feature-pills span {
  font-size: 0.65rem;
  color: var(--sjm-muted);
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.feature-pills span::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--sjm-primary);
}

.account-amount {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--sjm-text);
}

/* ==========================
   PERFORMANCE SECTION
========================== */

.section-blue-light {
    background: #F9F9F9;
    padding: 150px 0;
}

.section-blue-light .row {
    align-items: center;
}

/* LEFT SIDE */

.stat-row{
    display:flex;
    justify-content:space-between;
    align-items:center;

    background:#fff;
    border-radius:20px;

    padding:10px 15px;

    margin-bottom:16px;

    box-shadow:0 8px 24px rgba(0,0,0,.04);
}

.stat-row:last-child{
    margin-bottom:0;
}

.stat-row__content{
    flex:1;
    min-width:0;
}

.stat-row__label{
    display:block;

    font-size:15px;
    font-weight:500;
    color:#8B8B95;

    line-height:1.4;

    margin-bottom:8px;
}

.stat-row__value{
    font-size:22px;
    font-weight:700;

    color:#1D1D1F;

    line-height:1.2;

    margin-bottom:14px;
}

.stat-row__bar{
    width:150px;
    height:6px;

    background:#D8EEF3;

    border-radius:999px;

    overflow:hidden;
}

.stat-row__bar-fill{

    width:0;

    height:100%;

    background:#1698A8;

    border-radius:999px;
}

.stat-row__badge{

    min-width:92px;

    height:35px;

    margin-left:28px;

    padding:0 20px;

    border-radius:999px;

    background:#DDF3F7;

    color:#13889A;

    font-size:15px;

    font-weight:700;

    display:flex;
    align-items:center;
    justify-content:center;

    flex-shrink:0;
}
.platform-card img {
    border-radius: 25px;
}
@media (max-width:576px){

    .stat-row{

        padding:18px;

    }

    .stat-row__badge{

        min-width:76px;
        height:34px;

        font-size:16px;

        margin-left:18px;
    }

    .stat-row__bar{

        width:120px;
    }

}
/* RIGHT SIDE */

.section-heading {
    font-size: 40px;
    line-height: 47.8px;
    font-weight: 700;
    /* letter-spacing: -1px; */
    color: #151515;
    margin-bottom: 24px;
    max-width: 580px;
}

.section-desc {
    /* max-width: 520px; */
    font-size: 16px;
    line-height: 1.7;
    color: var(--sjm-gray-600);
    margin-bottom: 32px;
}

/* LIST */

.performance-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.performance-list li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 18px;
    color: #6b6b75;
    font-size: 16px;
    line-height: 1.6;
}

.performance-list strong {
    color: #2c2c34;
    font-weight: 700;
}

.icon-check {
    width: 20px;
    height: 20px;
    border: 1.5px solid #177d91;
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #177d91;
    font-size: 11px;
    font-weight: 700;

    flex-shrink: 0;
    margin-top: 4px;
}

/* MOBILE */

@media (max-width: 991px) {

    .col-lg-6:last-child {
        padding-left: 12px;
    }

    .section-heading {
        font-size: 40px;
    }

    .section-desc {
        font-size: 16px;
    }
}

/* ===================================
   GO LIVE IN 4 STEPS
=================================== */

.steps-section {
    background: #FFF8E8;
    padding: 100px 0;
    overflow: hidden;
}

.steps-section .section-heading {
    text-align: center;
    font-size: 40px;
    line-height: 1.1;
    font-weight: 600;
    margin-bottom: 20px;
}

.steps-section .section-desc {
    max-width: 497px;
    margin: 0 auto;
    text-align: center;
    font-size: 16px;
    line-height: 27.2px;
    color: #404040;
}

/* line across steps */

.steps-section .row {
    position: relative;
}

.steps-section .row::before {
    content: "";
    position: absolute;
    top: 55px;
    left: 12%;
    right: 12%;
    height: 1px;
    background: #8fa4a8;
    z-index: 1;
}

/* step card */

.step-item {
    text-align: center;
    position: relative;
    z-index: 2;
}

/* number circle */

.step-item__num {
    width: 60px;
    height: 60px;
    margin: 0 auto 24px;

    background: #e1a22f;
    color: #fff;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 30px;
    font-weight: 600;

    border: 6px solid #f6dfad;
}

/* heading */

.step-item h3 {
    font-size: 18px;
    line-height: 1.3;
    font-weight: 700;
    color: #222;
    margin-bottom: 14px;
}

/* description */

.step-item p {
    font-size: 14px;
    line-height: 1.8;
    color: #666;
    max-width: 270px;
    margin: 0 auto;
}

/* mobile */

@media (max-width: 991px) {

    .steps-section {
        padding: 70px 0;
    }

    .steps-section .section-heading {
        font-size: 40px;
    }

    .steps-section .section-desc {
        font-size: 16px;
        margin-bottom: 50px;
    }

    .steps-section .row::before {
        display: none;
    }

    .step-item {
        margin-bottom: 30px;
    }
}

/* Stats / brands */
.stat-grid{
	display:flex;
	gap:40px;
	margin-top:40px;
	flex-wrap:wrap;
}

.stat-box strong {
    display: block;
    font-size: 40px;
    font-weight: 700;
    line-height: 1;
    color: var(--sjm-primary-deep);
    margin-bottom: 8px;
}

.stat-box span{
	font-size:16px;
	color:var(--sjm-muted);
}
.academy-dashboard{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.dashboard-card{

    background:#fff;

    border-radius:24px;

    padding:15px 20px;

    box-shadow:0 10px 30px rgba(0,0,0,.05);

}

.dashboard-label{

    display:block;

    font-size:14px;

    color:#8B8B95;

    margin-bottom:8px;

}

.dashboard-domain{

    font-size:22px;

    font-weight:700;

    color:#1D1D1F;

    margin-bottom:18px;

}

.domain-progress{

    display:flex;

    gap:12px;

}

.domain-progress span{

    width:110px;

    height:6px;

    background:#D8EEF3;

    border-radius:50px;

}

.domain-progress span.active{

    background:#1798A8;

}



.dashboard-card-revenue{

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.dashboard-value{

    font-size:22px;

    font-weight:700;

}

.dashboard-badge{

width:92px;

height: 35px;

background:#DDF3F7;

color:#16879A;

border-radius:999px;

display:flex;

justify-content:center;

align-items:center;

font-weight:700;

font-size: 14px;
}



.payment-tags{

    display:flex;

    gap:10px;

    flex-wrap:wrap;

}

.payment-tags span{

border:1px solid #D6D6D6;

border-radius:12px;

padding:6px 18px;

font-size: 14px;

color:#17879A;

font-weight:500;

background:#fff;

line-height: 14px;
}



.branch-users{

    display:flex;

    align-items:center;

}

.branch-users img{

    width:40px;

    height:40px;

    border-radius:50%;

    border:2px solid #fff;

    margin-right:-12px;

    object-fit:cover;

}

.branch-count{

margin-left:22px;

color:#7E7E87;

font-size: 14px;
}

/* Pricing */
.section-pricing {
  background: #E1F5F7;
  display: none;
}
.pricing-card {
  background: #fff;
  border-radius: var(--sjm-radius-lg);
  padding: 2rem;
  height: 100%;
  border: 1px solid var(--sjm-border);
  transition: box-shadow 0.2s;
}
.pricing-card .text-muted-sub {
    font-size: 14px;
    color: #575757;
}
.pricing-card:hover {
  box-shadow: var(--sjm-card-shadow);
}

.pricing-card--featured {
  background: var(--sjm-footer);
  color: #fff;
  border-color: var(--sjm-footer);
  position: relative;
}

.pricing-card--featured h5,
.pricing-card--featured .pricing-price {
  color: #fff;
}

.pricing-card--featured .text-muted-sub {
  color: rgba(255, 255, 255, 0.75) !important;
}

.pricing-card--featured .pricing-features li {
  color: #fff;
}

.pricing-badge {
  display: inline-block;
  background: var(--sjm-primary);
  color: #fff;
  font-size: 0.6875rem;
  font-weight: 600;
  padding: 0.25rem 0.75rem;
  border-radius: 50px;
  margin-bottom: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.pricing-card--featured .pricing-badge {
  background: rgba(255, 255, 255, 0.2);
      position: absolute;
    right: 25px;
}

.pricing-price {
  font-size: 48px;
  font-weight: 600;
  margin: 0.75rem 0 .25rem;
}

.pricing-price small {
  font-size: 0.9375rem;
  font-weight: 400;
  opacity: 0.7;
}

.pricing-features {
  list-style: none;
  padding: 0;
  margin: 1.5rem 0 0;
}

.pricing-features li {
  padding: 0.4375rem 0;
  font-size: 13px;
  color: #0B0707;
  display: flex;
  gap: 0.5rem;
}

.pricing-features li::before {
  content: "\F26B";
  color: #0B0707;
  font-weight: 500;
  font-family: "bootstrap-icons";
  font-size: 15px;
}

.pricing-card--featured .pricing-features li::before {
  color: #fff;
}
/* Pricing Toggle */

.pricing-toggle-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin: 2rem 0 3rem;
}

.pricing-toggle-wrap span {
    font-size: 14px;
}

.pricing-save {
    background: #dff0d8;
    color: #2e7d32;
    padding: 5px 12px;
    border-radius: 50px;
    font-size: 12px !important;
    font-weight: 600;
}

.pricing-switch {
    position: relative;
    width: 50px;
    height: 28px;
}

.pricing-switch input {
    display: none;
}

.pricing-slider {
    position: absolute;
    inset: 0;
    background: #111827;
    border-radius: 999px;
    cursor: pointer;
}

.pricing-slider::before {
    content: "";
    position: absolute;
    width: 20px;
    height: 20px;
    left: 4px;
    top: 4px;
    background: #fff;
    border-radius: 50%;
    transition: all .3s ease;
}

.pricing-switch input:checked + .pricing-slider::before {
    transform: translateX(22px);
}
.pricing-card{
    transition: transform .35s ease, box-shadow .35s ease;
}

.pricing-card:hover{
    transform: translateY(-12px);
    box-shadow:0 18px 40px rgba(0,0,0,.12);
}

.pricing-card--featured:hover{
    transform: translateY(-14px) scale(1.03);
}
@media (max-width: 767px) {
    .pricing-toggle-wrap {
        flex-wrap: wrap;
        gap: 10px;
    }
}
/* FAQ */
.faq-section {
    background: #fff;
}

.faq-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 22px 30px;
}

.faq-section .accordion-item {
    border: 1px solid #e8e8e8;
    border-radius: 18px;
    overflow: hidden;
    background: #fff;
    box-shadow: none;
}

.faq-section .accordion-button {
    background: #fff !important;
    box-shadow: none !important;
    color: #222;
    font-size: 18px;
    font-weight: 500;
    padding: 20px 32px;
    border-radius: 18px;
}

.faq-section .accordion-button:not(.collapsed) {
    color: #222;
}

.faq-section .accordion-button::after {
    background-image: none !important;
    content: "+";
    width: auto;
    height: auto;
    font-size: 40px;
    font-weight: 300;
    line-height: 1;
    transform: none !important;
    color: #222;
}

.faq-section .accordion-button:not(.collapsed)::after {
    content: "-";
}

.faq-section .accordion-body {
    padding: 0 32px 24px;
    font-size: 16px;
    color: #666;
    line-height: 1.7;
}

.faq-section .section-heading {
    text-align: center;
    margin-bottom: 15px;
}

.faq-section .section-desc {
    text-align: center;
    margin-bottom: 60px;
}
.faq-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 22px 30px;
    align-items: start;
}

.faq-grid .accordion-item {
    align-self: start;
}
.accordion-button::after{
    transition:transform .35s ease;
}

.accordion-button:not(.collapsed)::after{
    transform:rotate(180deg);
}
/* Mobile */

@media (max-width: 991px) {

    .faq-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .faq-section .accordion-button {
        font-size: 18px;
        padding: 20px 24px;
    }

    .faq-section .accordion-button::after {
        font-size: 32px;
    }

    .faq-section .accordion-body {
        padding: 0 24px 20px;
    }
}
/* CTA Section */
.section-cta{
    padding:40px 0 0;
    background:#fff;
}

.section-cta .cta-card{
    background:#FBF3DF;
    border-radius:24px 24px 0 0;
    overflow:hidden;
    padding: 120px 70px;
    /* min-height:640px; */
    position:relative;
}

.section-cta .row{
    /* min-height:640px; */
}

.cta-content{
    max-width:520px;
}

.cta-content h2{
    font-size:56px;
    line-height:1.02;
    font-weight: 500;
    color:#171717;
    margin-bottom:15px;
    letter-spacing:-4px;
}

.cta-content p {
    color:#555;
    max-width:480px;
    margin-bottom:30px;
}

.cta-buttons{
    display:flex;
    gap:18px;
    flex-wrap:wrap;
}

.btn-dark{
    background:#171717;
    color:#fff;
    border-radius:999px;
    padding:18px 36px;
}

.btn-dark:hover{
    color:#fff;
}

.btn-outline-dark{
    border:1px solid #171717;
    background:transparent;
    color:#171717;
    border-radius:999px;
    padding:18px 36px;
}

.cta-phone{
    display:flex;
    justify-content:center;
    align-items:flex-end;
    height:100%;
    margin-bottom: -120px;
}

.cta-phone .phone-device{
    transform:scale(1.15);
    transform-origin:bottom center;
    margin-bottom:-80px;
}

.section-cta .phone-device__shell{
    box-shadow:none;
}

/* Common transition */
.cta-buttons .btn-sjm{
    transition: all .3s ease;
}

/* Primary button */
.btn-dark:hover{
    background:#2b2b2b;
    color:#fff;
    transform:translateY(-2px);
    box-shadow:0 10px 24px rgba(0,0,0,.18);
}

/* Secondary button */
.btn-outline-dark:hover{
    background:#171717;
    border-color:#171717;
    color:#fff;
    transform:translateY(-2px);
    box-shadow:0 10px 24px rgba(0,0,0,.12);
}

/* Click effect */
.cta-buttons .btn-sjm:active{
    transform:translateY(0);
    box-shadow:none;
}

/* Keyboard accessibility */
.cta-buttons .btn-sjm:focus-visible{
    outline:2px solid #171717;
    outline-offset:3px;
}
.cta-buttons a{
    transition:.35s ease;
}

.cta-buttons a:hover{
    transform:translateY(-4px);
}
/* Footer */
.site-footer{

    background:#082C31;
    color:#fff;

    padding:90px 0 40px;
}

.footer-top{

    padding-bottom:70px;
}

.footer-logo{

    display:inline-block;
    margin-bottom:34px;
}

.footer-logo img{
    height:32px;
    width:auto;
}

.footer-desc{

max-width:310px;

/* font-size:18px; */

line-height:1.8;

color:rgba(255,255,255,.85);

margin-bottom:40px;
}

.site-footer h5{

color:#fff;

font-size: 15px;

font-weight: 700;

margin-bottom:32px;
}

.site-footer ul{

    list-style:none;

    margin:0;

    padding:0;
}

.site-footer li{
    margin-bottom:19px;
}

.site-footer a{

    color:rgba(255,255,255,.85);

    text-decoration:none;

    transition:.3s;
}

.site-footer ul a{

font-size: 15px;

font-weight: 500;
}

.site-footer a:hover{

    color:#fff;
}

.footer-social{

    display:flex;

    gap:14px;
}

.footer-social a{

    width:44px;

    height:44px;

    border:1px solid rgba(255,255,255,.7);

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:none;

    color:#fff;

    transition:.3s;
}

.footer-social a:hover{

    background:#fff;

    color:#082C31;
}

.footer-bottom{

border-top:1px solid rgba(255,255,255,.12);

padding-top:34px;

display:flex;

justify-content:space-between;

align-items:center;

color:rgba(255,255,255,.45);

font-size: 14px;
}
@media(max-width:991px){

.site-footer{

padding:70px 0 30px;
}

.footer-top{

padding-bottom:50px;
}

.footer-bottom{

flex-direction:column;

align-items:flex-start;

gap:15px;
}

.site-footer h5{

margin-top:10px;
}

}

/* Responsive */
@media (max-width: 991.98px) {
  .float-card,
  .stack-card {
    position: relative;
    width: 100% !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    margin-bottom: 1rem;
  }

  .platform-showcase__visual,
  .teaching-cards-stack {
    min-height: auto;
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }

  .pricing-card--featured {
    transform: none;
  }

  .stat-grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
}

@media (max-width: 767.98px) {
  .section-block {
    padding: 3rem 0;
  }

  .hero-section {
    text-align: center;
    padding: 2.5rem 0 3rem;
  }

  .hero-section .hero-desc {
    margin-inline: auto;
  }

  .teaching-list li {
    flex-direction: column;
    text-align: center;
  }

  .teaching-list__icon {
    margin-inline: auto;
  }
}
/* .................................................................... */
/* HERO IMPROVEMENT */

/* .hero-section{
    padding:90px 0 120px;
} */

.hero-badge{
    display:inline-flex;
    align-items:center;
    padding:10px 18px;
    border-radius:50px;
    background:#ecfeff;
    color:#11606d;
    font-size:14px;
    font-weight:600;
    margin-bottom:24px;
}

.hero-section h1{
    font-family: "Google Sans Flex", "Plus Jakarta Sans", sans-serif;
    font-weight: 600;
    font-size: 68px;
    line-height: 80px;
    letter-spacing: -1.5px;
}

.hero-highlight{
    color:#11606d;
}

.hero-desc{
    font-size:18px;
    line-height:28.9px;
    max-width:540px;
    margin-bottom:32px;
}

.hero-actions{
    display:flex;
    gap:16px;
    margin-bottom:40px;
}

.hero-users{
    display:flex;
    align-items:center;
    gap:16px;
}

.hero-avatars{
    display:flex;
}

.hero-avatars span{
    width:36px;
    height:36px;
    border-radius:50%;
    margin-left:-10px;
}

.hero-avatars span:first-child{
    margin-left:0;
}

.hero-users-text{
    color:var(--sjm-gray-600);
}
.bi-arrow-right-short {
    font-size: 20px;
}
@media(max-width:991px){

    .hero-section h1{
        font-size:42px;
    }

    .hero-actions{
        flex-direction:column;
    }

}
/* ===== FIGMA HEADER OVERRIDE ===== */

.site-header{
    background:transparent;
    border-bottom:none;
    padding:0;
}

.site-header .navbar{
    background:#fff;
    padding:20px 32px;
}

.site-header .navbar-brand{
    font-size:34px;
    font-weight:800;
    color:#081326;
}

.site-header .brand-icon{
    width:42px;
    height:42px;
    border-radius:12px;
}

.site-header .navbar-collapse{
    display:flex !important;
    align-items:center;
    justify-content:space-between;
    flex-grow:1;
}

.site-header .navbar-nav{
    /* gap:20px; */
    border: 1px solid rgba(229, 231, 235, 1);
    border-radius: 9999px;
    padding: 5px;
}

.site-header .nav-link{
     font-family: "Inter", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 19.6px;
    letter-spacing: 0;
}

.site-header .nav-link:hover{
    color:#11606d;
}

.site-header .btn-sjm-primary{
    padding:14px 28px;
    border: 1px solid rgba(17, 96, 109, 1);
    background:#11606d;
    font-size:15px;
    font-weight:600;
    box-shadow: 0px 4px 20px 0px rgba(17, 96, 109, 0.3);
    width: 139;
    border-radius: 999px;
    font-family: Plus Jakarta Sans;
    font-weight: 700;
    font-style: Bold;
    font-size: 13px;
}
.header-actions{
    display:flex;
    align-items:center;
    gap:12px;
}

.header-signin{
    padding:14px 24px;
    border-radius:12px;
    background: rgba(225, 245, 247, 1);
    color:#000009;
    font-weight:600;
    text-decoration:none;
    border-radius: 999px;
    font-family: Plus Jakarta Sans;
    font-weight: 700;
    font-style: Bold;
    font-size: 13px;
}

.header-signin:hover{
    color:#0f172a;
}

/* ====================================
   OFFCANVAS HEADER
==================================== */

.header-logo{
    max-height:36px;
}

.header-actions{
    display:flex;
    align-items:center;
    gap:12px;
}

.header-signin{
    text-decoration:none;
    color:#111827;
    font-weight:500;
}

.navbar-toggler{
    border:none;
    box-shadow:none !important;
}

.navbar-toggler:focus{
    box-shadow:none !important;
}

/* DESKTOP */

@media(min-width:992px){

    .offcanvas{
        position:static !important;
        transform:none !important;
        visibility:visible !important;
        background:transparent !important;
        width:auto !important;
        border:none !important;
    }

    .offcanvas-header{
        display:none;
    }

    .offcanvas-body{
        display:flex;
        align-items:center;
        width:100%;
        padding:0;
    }

    .navbar-nav{
        margin-left:auto;
        margin-right:auto;
        gap:12px;
    }

}

/* MOBILE */

@media(max-width:991.98px){

    .offcanvas{
        width:320px;
    }

    .offcanvas-body{
        display:flex;
        flex-direction:column;
        align-items:flex-start;
    }

    .navbar-nav{
        width:100%;
        margin-bottom:24px;
    }

    .navbar-nav .nav-item{
        width:100%;
    }

    .navbar-nav .nav-link{
        padding:12px 0;
    }

    .header-actions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .header-signin,
    .btn-sjm-primary{
        text-align:center;
    }
    .site-header .navbar-nav {
      border: 0;
    }
}

/* ====================================
   HERO FLOATING STAT CARDS
==================================== */

.hero-visual-wrap{
    position:relative;
}
.hero-visual-wrap img {
    z-index: 1;
}
/* Shared Card */

.hero-stat-card{
    position: absolute;
    background: #ffffff;
    border-radius: 14px;
    padding: 12px 16px;
    box-shadow: 0 20px 60px rgba(17, 24, 39, .08);
    z-index: 5;
}

/* Top Right Card */

.hero-stat-top{
    top:70px;
    right:-70px;
    animation:floatUpDown 4s ease-in-out infinite;
}

/* Bottom Left Card */

.hero-stat-bottom{
    bottom:130px;
    left: 50px;
    animation:floatCardBottom 6s ease-in-out infinite;
    animation-delay:2s;
}
/* ==========================
   FLOATING ANIMATION
========================== */

@keyframes floatUpDown {
    0%{
        transform:translateY(0);
    }
    50%{
        transform:translateY(-12px);
    }
    100%{
        transform:translateY(0);
    }
}
@keyframes floatCardBottom {

    0%{
        transform:translateY(0);
    }

    /* Move up */
    28%{
        transform:translateY(-25px);
    }

    /* Tiny pause at top */
    35%{
        transform:translateY(-25px);
    }
    50%{
        transform:translateY(-50px);
    }
    /* Come halfway down */
    65%{
        transform:translateY(-25px);
    }

    /* Tiny pause in middle */
    72%{
        transform:translateY(-25px);
    }

    /* Return */
    100%{
        transform:translateY(0);
    }
}
/* Small Label */

.hero-stat-label{
    display:block;
    font-family:'Plus Jakarta Sans',sans-serif;
    font-weight:500;
    font-size:11px;
    line-height:20px;
    color:#646464;
    margin-bottom:8px;
}

/* 12,480 */

.hero-stat-number{
    margin:0;
    font-weight: 700;
    font-size: 20px;
    line-height: 1;
    color: #DD9D34;
}

/* 90% */

.hero-stat-percent{
    margin: 0;
    font-weight: 800;
    font-size: 20px;
    line-height: 1;
    letter-spacing: -1px;
    color: #151515;
}

/* Engagement */

.hero-stat-growth{
    display:block;
    margin-left:6px;
    font-family:'Plus Jakarta Sans',sans-serif;
    font-weight:600;
    font-size:14px;
    line-height:20px;
    color:#16A34A;
}

/* Mobile */

@media (max-width:991px){

    .hero-stat-card{
        display:none;
    }

}
.circle {
    background: linear-gradient(180deg, #F0B84A 10%, rgba(244, 194, 94, 0.28) 55%, rgba(240, 184, 74, 0.14) 100%);
    width: 470px;
    height: 480px;
    border-radius: 50%;
    position: absolute;
    top: 56%;
    right: 46px;
    transform: translateY(-50%);
    z-index: 0;
    transition: ease .5s all;
    
}
.hero-visual-wrap:hover .circle {
    background: linear-gradient(180deg, #35B6C8 10%, rgba(26, 138, 154, 0.28) 55%, rgba(26, 138, 154, 0.14) 100%);
}

/* ====================================
   CLIENT LOGO SECTION
==================================== */

.client-txt {
    color: var(--sjm-gray-500);
}

.client-logo-item{
    text-align:center;
}

.client-logo-item img{
    max-height: 32px;
    width: auto !important;
    margin: auto;
    /* opacity: .7; */
    transition: .3s;
}

.client-logo-item img:hover{
    opacity:1;
}
/* ====================================
   FEATURES SECTION
==================================== */

.features-section{
    /* background:#f6f6f6; */
    padding:100px 0;
    text-align:center;
}

.features-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:6px 14px;
    border-radius:999px;
    background:var(--sjm-primary-light);
    color:var(--sjm-primary);
    font-size:13px;
    font-weight:600;
    margin-bottom:20px;
    letter-spacing: 2px;
}

.features-title{
    max-width:600px;
    margin:0 auto 20px;
    font-size:48px;
    line-height:1.1;
    font-weight:700;
    line-height: 59.6px;
}

.features-desc{
    max-width:560px;
    margin:0 auto;
    color:#6b7280;
    font-size:16px;
    line-height:24px;
}

.features-btn-wrap{
    margin-top:30px;
    margin-bottom:60px;
}

.features-layout{
    margin-top:20px;
}

.feature-image-wrap{
    text-align:center;
    background: linear-gradient(180deg, #F0B84A 10%, rgba(244, 194, 94, 0.28) 55%, rgba(240, 184, 74, 0.14) 100%);
    border-radius: 20px;
}
.feature-image-wrap:hover {
    background: linear-gradient( 180deg, #35B6C8 10%, rgba(26, 138, 154, 0.28) 55%,rgba(26, 138, 154, 0.14) 100% );
}
.feature-image-wrap img{
    max-width:100%;
}

.feature-box{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:24px;
    padding:20px;
    text-align:left;
    margin-bottom:18px;
    transition:.3s;
}

.feature-box:hover{
    transform:translateY(-3px);
}

.feature-box h3{
    margin-bottom: 10px;
    font-family: Plus Jakarta Sans;
    font-weight: 600;
    font-size: 18px;
    line-height: 19.2px;
    letter-spacing: -0.15px;
    vertical-align: middle;
}

.feature-box p{
  color: #646464;
  font-family: Plus Jakarta Sans;
  font-weight: 500;
  font-size: 14px;
  line-height: 21.8px;
  margin: 0;
}

@media (min-width:992px){

    .col-lg-3:first-child{
        /* padding-right:40px; */
    }

    .col-lg-3:last-child{
        /* padding-left:40px; */
    }

    .feature-box:nth-child(2){
        margin-top:18px;
    }

    .feature-box:nth-child(3){
        margin-top:18px;
    }
}

@media(max-width:991px){

    .features-section{
        padding:70px 0;
    }

    .features-title{
        font-size:40px;
    }

    .feature-image-wrap{
        margin:40px 0;
    }

    .feature-box{
        text-align:center;
    }
}

@media(max-width:767px){

    .features-title{
        font-size:32px;
    }

    .features-desc{
        font-size:16px;
    }
}

/* =====================================
   TEACHING SECTION
===================================== */

.teaching-section{
    background: #FFF8E8;
    transition: .5s ease all;
}

.teaching-section:hover {
    background: #FFE4A7;
}
.teaching-heading{
    max-width:700px;
    margin:0 auto 80px;
}

.teaching-heading h2{
    font-size:40px;
}

.teaching-heading p{
    width: 77%;
    margin: 0 auto;
    color: #575757;
}

/* LEFT SIDE */

.teaching-features{
    display:flex;
    flex-direction:column;
    gap:40px;
}

.teaching-feature-item{
    display:flex;
    gap:28px;
}

.feature-line{
    width:4px;
    min-width:4px;
    border-radius:20px;
}

.feature-content h3{
    font-size:20px;
    font-weight:600;
    margin-bottom:16px;
    line-height: 34px;
}

.feature-content p{
    font-size: 16px;
    line-height: 27px;
    color: #292D32;

}

/* RIGHT IMAGE */

.teaching-image-wrap{
    background: url(assets/images/rope.png) no-repeat center;
    background-size: contain;
    position:relative;
    min-height:480px;
    max-width:620px;
    margin:0 auto;
    left: 0;
}

.teaching-image-bg{
    position:relative;
    z-index:1;
    pointer-events:none;
}

.teaching-image-bg img{
    display:block;
    width:100%;
    max-width:100%;
    height:auto;
    margin:0 auto;
    filter:grayscale(12%) brightness(1.07) contrast(0.98);
    opacity:.55;
}

.teaching-cards-anim{
    position:absolute;
    inset:0;
    z-index:2;
}

.teaching-card{
    position:absolute;
    border-radius:32px;
    box-shadow:0 12px 40px rgba(15,23,42,.12);
    will-change:transform,opacity;
}

.teaching-card b{
    font-size:14px;
    font-weight:600;
}

.card-study-materials{
    top:6%;
    left:0;
    width:min(300px,90%);
    display:flex;
    gap:12px;
    align-items:flex-start;
}

.card-study-materials .card-icon{
    flex-shrink:0;
}

.card-todo-list{
    top:4%;
    right:0;
    width:min(240px,74%);
}

.card-progress{
    bottom:10%;
    left:50%;
    width:min(280px,88%);
}

.teaching-card .progress{
    height:9px;
    border-radius:999px;
    background:#f1f5f9;
}

.teaching-card .progress-bar{
    border-radius:999px;
}

/* Tablet */

@media(max-width:991px){

    .teaching-heading{
        margin-bottom:50px;
    }

    .teaching-heading h2{
        font-size:40px;
    }

    .feature-content h3{
        font-size:26px;
    }

    .feature-content p{
        font-size:18px;
    }

    .teaching-image-wrap{
        min-height:440px;
        max-width:100%;
    }

    .card-study-materials{
        width:min(270px,88%);
    }

    .card-todo-list{
        width:min(220px,68%);
    }

    .card-progress{
        width:min(260px,85%);
    }
}

/* Mobile */

@media(max-width:767px){

    .teaching-heading h2{
        font-size:34px;
    }

    .feature-content h3{
        font-size:22px;
    }

    .feature-content p{
        font-size:16px;
    }

    .teaching-image-wrap{
        min-height:auto;
        padding-bottom:20px;
    }

    .teaching-image-bg img{
        width:85%;
        opacity:.45;
    }

    .teaching-cards-anim{
        position:relative;
        inset:auto;
        display:flex;
        flex-direction:column;
        gap:16px;
        margin-top:-60px;
        padding:0 8px;
    }

    .teaching-card{
        position:relative;
        top:auto !important;
        left:auto !important;
        right:auto !important;
        bottom:auto !important;
        width:100% !important;
        transform:none !important;
    }
}
/* =====================================
   ULTIMATE PLATFORM SECTION
===================================== */

/* .ultimate-platform-section{
    position: relative;
    height: 140vh;
    background: #fff;
    z-index: 1;
}

.platform-scroll-wrap{
    position: relative;
    height: 100%;
}

.platform-sticky{
    position: sticky;
    top: 0;
    height: 100vh;

    display: flex;
    justify-content: center;
    align-items: center;

    overflow: hidden;
} */

/* BACKGROUND TITLE */

.platform-bg-title{
    position: absolute;
    left: 50%;
    top: 50%;
    width: 100%;
    transform: translate(-50%, -50%);

    font-family: "Google Sans Flex", sans-serif;
    font-weight: 500;
    font-size: 190px;
    line-height: .9;

    color: #292D32;

    white-space: nowrap;

    z-index: -1;
    pointer-events: none;
    user-select: none;
    
}
.marquee{
    overflow:hidden;
    width:100%;
    white-space:nowrap;
}

.marquee-track{
    display:flex;
    width:max-content;
}

.marquee-track span{
    display:inline-block;
    padding-right:80px; /* Space between repeated text */
}
/* PHONE */

/* .platform-phone{
    position: relative;
    z-index: 5;
}

.platform-phone img{
    width: 320px;
    display: block;
} */

/* SHARED CARD */

.platform-card{
    position: absolute;

    background: #fff;
    border-radius: 24px;

    box-shadow:
    0 15px 50px rgba(0,0,0,.08);

    /* padding: 24px; */

    z-index: 10;
}

/* REVENUE CARD */

.revenue-card{
    width: 268px;
    top: 50px;
    left: 29%;
}

.revenue-card h4{
    font-family:"Google Sans Flex",sans-serif;
    font-size:18px;
    font-weight:500;
    margin-bottom:6px;
}

.revenue-card p{
    font-family:"Plus Jakarta Sans",sans-serif;
    font-size:13px;
    color:#7b8494;
}

/* ACCOUNT CARD */

.account-card{
    width: 267px;
    top: 0;
    right: 9%;
}

.account-name{
    font-family:"Google Sans Flex",sans-serif;
    font-size:18px;
    font-weight:500;
    margin-bottom:12px;
}

.account-label{
    font-size:13px;
    color:#7b8494;
    margin-bottom:8px;
}

.account-price{
    font-size:28px;
    font-weight:600;
    line-height:1.1;
    margin-bottom:10px;
}

.account-footer{
    color:#7b8494;
    font-size:13px;
}

/* FEATURES CARD */

.features-card{
    width:267px;
    bottom:120px;
    left:10%;
}

.features-card h4{
    margin-bottom:16px;
}

.feature-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:10px;
}

.feature-grid span{
    border:1px solid #e5e7eb;
    border-radius:999px;
    padding:10px;

    text-align:center;
    font-size:13px;
}

/* STATS CARD */

.stats-card{
    width: 184px;
    bottom:130px;
    right: 23%;
}

.stats-card h4{
    margin-bottom:18px;
}

/* REVENUE GRAPH */

.mini-bars{
    display:flex;
    align-items:flex-end;
    gap:8px;
    margin-top:20px;
}

.mini-bars span{
    width:22px;
    background:#ececec;
    border-radius:5px;
}

.mini-bars span:nth-child(1){height:35px;}
.mini-bars span:nth-child(2){height:70px;}
.mini-bars span:nth-child(3){height:25px;}

.mini-bars .active{
    height:90px;
    background:#f6b74f;
}

.mini-bars span:nth-child(5){height:60px;}
.mini-bars span:nth-child(6){height:30px;}
.mini-bars span:nth-child(7){height:45px;}

/* COURSE STATS GRAPH */

.chart-bars{
    height:90px;

    display:flex;
    align-items:flex-end;
    gap:8px;
}

.chart-bars span{
    width:18px;
    background:#0f7f91;
    border-radius:4px 4px 0 0;
}

.chart-bars span:nth-child(1){height:40px;}
.chart-bars span:nth-child(2){height:70px;}
.chart-bars span:nth-child(3){height:90px;}
.chart-bars span:nth-child(4){height:50px;}
.chart-bars span:nth-child(5){height:65px;}

.chart-bars .orange{
    background:#f97316;
}

/* MOBILE */


.ultimate-platform-section{
    background: #F9F9F9;
    position:relative;
    /* height:290vh;      */
    padding: 100px 0;
}

/* Sticky */

/* .platform-sticky{

    position:sticky;

    top:0;

    height:100vh;

    overflow:hidden;

    display:flex;

    justify-content:center;

    align-items:center;
} */

/* Cards initial state */

.platform-card{

    opacity:0;

    transform:translateY(140px) scale(.85);

    will-change:transform,opacity;

    transition:none;
}

/* Phone */

.platform-phone{
    width:100%;
    display:flex;
    justify-content:center;
}

.platform-phone img{
    width:min(320px,90vw);
    max-width:100%;
    height:auto;
    display:block;
}

/* Background title */


/* Cards */

.platform-card{

z-index: 30;
}
/* =====================================================
   ULTIMATE PLATFORM - MOBILE
===================================================== */

@media (max-width:991px){
    
    .ultimate-platform-section{
        height:auto;
        padding:60px 0;
        background:#F9F9F9;
    }

    .platform-scroll-wrap{
        height:auto;
    }

    .platform-sticky{

        position:relative;
        top:auto;
        height:auto;

        display:flex;
        flex-direction:column;

        align-items:center;
        justify-content:flex-start;

        overflow:visible;
        gap:20px;
    }

    .platform-sticky{
        position:relative;
        display:flex;
        flex-direction:column;
        align-items:center;
        gap:20px;
        overflow:visible;
    }

    /* Show marquee */
    .platform-bg-title{
        display:block;
        position:absolute;
        top:110px;          /* adjust if needed */
        left:50%;
        transform:translateX(-50%);
        width:100%;
        z-index:1;
        opacity:.12;
        overflow:hidden;
        pointer-events:none;
    }

    .platform-bg-title .marquee-track{
        animation:marquee 18s linear infinite;
    }

    .platform-phone{
        position:relative;
        order:1;
        z-index:5;          /* phone above text */
        margin-bottom:20px;
    }

    .platform-card{
        position:relative;
        z-index:10;
    }

    /* Phone first */

    .platform-phone{
        order:1;
        width:100%;
        display:flex;
        justify-content:center;
        margin-bottom:10px;
    }

    .platform-phone img{
        width:220px;
        max-width:80%;
    }

    /* Cards */

    .platform-card{

        position:relative;

        opacity:1 !important;
        transform:none !important;

        top:auto !important;
        left:auto !important;
        right:auto !important;
        bottom:auto !important;

        width:min(320px,90%) !important;

        margin:0 auto;

        box-shadow:0 15px 40px rgba(0,0,0,.08);
    }

    .revenue-card{
        order:2;
    }

    .account-card{
        order:3;
    }

    .features-card{
        order:4;
    }

    .stats-card{
        order:5;
    }

}
@media (max-width: 480px) {
    .circle {
    width: 300px;
    height: 300px;
    right: 30px;
}
.teaching-card {
    margin: 10px 0;
}
.section-cta .cta-card {
    padding: 40px 30px;;
}
}
