﻿.page-banner {

    padding: 120px 0 80px;

    background:
    linear-gradient(
    135deg,
    #5b4bff,
    #00c9a7);

    color: white;

    text-align: center;
}

.page-banner h1 {

    font-size: 52px;

    font-weight: 800;

    margin-bottom: 15px;
}

.breadcrumb-custom {

    font-size: 18px;
}

.breadcrumb-custom a {

    color: white;

    text-decoration: none;
}

.breadcrumb-custom span {

    margin: 0 8px;
}

.about-section {

    padding: 100px 0;
}

.about-light-section {

    padding: 100px 0;

    background: #f8fbff;
}

.about-img {

    border-radius: 30px;

    box-shadow:
    0 20px 40px rgba(0,0,0,.08);
}

.section-subtitle {

    color: #ff5b84;

    font-weight: 700;

    letter-spacing: 2px;
}

.about-section h2,
.about-light-section h2 {

    font-size: 46px;

    font-weight: 800;

    color: #1b1642;

    margin-bottom: 25px;
}

.about-section p,
.about-light-section p {

    color: #64748b;

    line-height: 1.9;

    font-size: 17px;
}

.content-box {

    max-width: 1000px;

    margin: auto;
}

.mission-section {

    padding: 100px 0;

    background:
    linear-gradient(
    180deg,
    #ffffff,
    #f8f9ff);
}

.mission-card {

    background: white;

    padding: 40px;

    border-radius: 25px;

    text-align: center;

    box-shadow:
    0 15px 35px rgba(0,0,0,.08);
}

.mission-card i {

    font-size: 50px;

    color: #5b4bff;

    margin-bottom: 20px;
}

.mission-card h3 {

    margin-bottom: 20px;

    color: #1b1642;
}

.about-stats {

    padding: 80px 0;

    background:
    linear-gradient(
    135deg,
    #1b1642,
    #35206a);
}

.stat-box {

    text-align: center;

    color: white;
}

.stat-box h3 {

    font-size: 50px;

    font-weight: 800;

    color: #ffb347;
}

.stat-box p {

    margin: 0;

    color: rgba(255,255,255,.85);
}

.mission-intro {

    padding: 90px 0 40px;
}

.mission-intro h2 {

    font-size: 48px;

    font-weight: 800;

    color: #1b1642;

    margin: 15px 0;
}

.mission-intro p {

    max-width: 850px;

    margin: auto;

    color: #64748b;

    line-height: 1.9;
}

.mission-vision-section {

    padding: 50px 0 90px;
}

.mv-card {

    background: #fff;

    border-radius: 25px;

    padding: 40px;

    height: 100%;

    box-shadow:
    0 15px 40px rgba(0,0,0,.08);
}

.mission-card {

    border-top: 5px solid #5b4bff;
}

.vision-card {

    border-top: 5px solid #00c9a7;
}

.mv-icon {

    width: 80px;

    height: 80px;

    line-height: 80px;

    text-align: center;

    border-radius: 50%;

    background: #f4f6ff;

    margin-bottom: 20px;
}

.mv-icon i {

    font-size: 32px;

    color: #5b4bff;
}

.mv-card h2 {

    font-weight: 800;

    margin-bottom: 20px;

    color: #1b1642;
}

.mv-card p {

    color: #64748b;

    line-height: 1.9;
}

.values-section {

    background: #f8fbff;

    padding: 90px 0;
}

.value-box {

    background: white;

    padding: 35px 25px;

    border-radius: 20px;

    text-align: center;

    box-shadow:
    0 10px 30px rgba(0,0,0,.05);
}

.value-box i {

    font-size: 40px;

    color: #ff7b3d;

    margin-bottom: 15px;
}

.value-box h4 {

    color: #1b1642;

    font-weight: 700;
}

.mission-cta {

    padding: 90px 0;
}

.cta-box {

    background:
    linear-gradient(
    135deg,
    #1b1642,
    #2f2568);

    padding: 70px;

    border-radius: 30px;

    text-align: center;

    color: white;
}

.cta-btn {

    display: inline-block;

    margin-top: 20px;

    padding: 14px 35px;

    background: #ff7b3d;

    color: white;

    text-decoration: none;

    border-radius: 50px;

    font-weight: 700;
}

.director-section {

    padding: 100px 0;
}

.director-image-box {

    position: relative;
}

.director-img {

    border-radius: 30px;

    max-width: 350px;

    box-shadow:
    0 20px 40px rgba(0,0,0,.10);
}

.director-section h2 {

    font-size: 48px;

    font-weight: 800;

    color: #1b1642;

    margin-bottom: 25px;
}

.director-section p {

    color: #64748b;

    line-height: 1.9;

    font-size: 17px;
}

.director-quote-section {

    padding: 70px 0;

    background: #f8fbff;
}

.director-quote {

    max-width: 900px;

    margin: auto;

    text-align: center;
}

.director-quote i {

    font-size: 50px;

    color: #ff7b3d;

    margin-bottom: 20px;
}

.director-quote h3 {

    color: #1b1642;

    font-weight: 700;

    line-height: 1.7;
}

.director-closing {

    padding: 90px 0;
}

.closing-card {

    background: white;

    border-radius: 30px;

    padding: 50px;

    text-align: center;

    box-shadow:
    0 15px 35px rgba(0,0,0,.08);
}

.closing-card p {

    color: #64748b;

    line-height: 1.9;

    font-size: 17px;
}

.director-signature {

    margin-top: 40px;
}

.director-signature h4 {

    color: #1b1642;

    font-weight: 800;

    margin-bottom: 5px;
}

.director-signature span {

    color: #ff7b3d;

    font-weight: 600;
}

.director-cta {

    padding: 90px 0;
}

.cta-box {

    background:
    linear-gradient(
    135deg,
    #1b1642,
    #2f2568);

    border-radius: 30px;

    padding: 70px;

    text-align: center;

    color: white;
}
.director-image-wrapper {

    position: relative;

    display: inline-block;
}

.director-frame {

    position: relative;

    padding: 8px;

    border-radius: 35px;

    background:
    linear-gradient(
    135deg,
    #5b4bff,
    #00c9a7,
    #ff9f1c);

    z-index: 2;
}

.director-img {

    width: 100%;

    max-width: 360px;

    border-radius: 28px;

    display: block;

    background: white;
}

.director-glow {

    position: absolute;

    width: 380px;

    height: 380px;

    background:
    radial-gradient(
    rgba(91,75,255,.35),
    transparent 70%);

    top: 50%;

    left: 50%;

    transform:
    translate(-50%,-50%);

    z-index: 1;

    animation:
    pulseGlow 4s infinite ease-in-out;
}

@keyframes pulseGlow {

    0% {
        transform:
        translate(-50%,-50%)
        scale(1);
    }

    50% {
        transform:
        translate(-50%,-50%)
        scale(1.08);
    }

    100% {
        transform:
        translate(-50%,-50%)
        scale(1);
    }
}

.director-badge {

    position: absolute;

    bottom: -18px;

    left: 50%;

    transform: translateX(-50%);

    background: #ff7b3d;

    color: white;

    padding: 12px 25px;

    border-radius: 40px;

    font-size: 14px;

    font-weight: 700;

    z-index: 5;

    box-shadow:
    0 10px 25px rgba(255,123,61,.35);
}

.course-banner {

    background:
    linear-gradient(
    135deg,
    #1b1642,
    #312772);

    padding: 100px 0;

    text-align: center;

    color: white;
}

.course-banner h1 {

    font-size: 55px;

    font-weight: 800;
}

.breadcrumb-custom {

    margin-top: 15px;
}

.breadcrumb-custom a {

    color: #fff;

    text-decoration: none;
}

.abacus-about {

    padding: 100px 0;
}

.section-tag {

    color: #ff7b3d;

    font-weight: 700;
}

.abacus-about h2 {

    font-size: 42px;

    color: #1b1642;

    margin: 15px 0;
}

.abacus-about p {

    color: #64748b;

    line-height: 1.9;
}

.theme-btn {

    display: inline-block;

    background: #ff7b3d;

    color: white;

    padding: 14px 35px;

    border-radius: 50px;

    text-decoration: none;

    margin-top: 20px;
}

.abacus-benefits {

    padding: 100px 0;

    background: #f7f9fc;
}

.benefit-card {

    background: white;

    padding: 40px;

    border-radius: 20px;

    text-align: center;

    box-shadow:
    0 10px 25px rgba(0,0,0,.05);

    transition: .3s;
}

.benefit-card:hover {

    transform: translateY(-10px);
}

.benefit-card i {

    font-size: 40px;

    color: #ff7b3d;

    margin-bottom: 20px;
}

.abacus-levels {

    padding: 100px 0;
}

.timeline {

    display: flex;

    justify-content: center;

    gap: 20px;

    flex-wrap: wrap;
}

.timeline-item {

    width: 160px;

    height: 160px;

    border-radius: 50%;

    background:
    linear-gradient(
    135deg,
    #5b4bff,
    #00c9a7);

    color: white;

    display: flex;

    align-items: center;

    justify-content: center;

    font-weight: 700;
}

.why-softbrain {

    padding: 100px 0;

    background: #fff7f2;
}

.why-softbrain h2 {

    color: #1b1642;

    margin-bottom: 25px;
}

.why-softbrain ul li {

    margin-bottom: 15px;

    font-size: 18px;
}

.course-cta {

    padding: 100px 0;
}

.cta-box {

    background:
    linear-gradient(
    135deg,
    #5b4bff,
    #1b1642);

    padding: 70px;

    border-radius: 30px;

    text-align: center;

    color: white;
}
.softbrain-image {

    width: 100%;

    border-radius: 30px;

    overflow: hidden;

    box-shadow:
        0 25px 50px rgba(27,22,66,.12),
        0 10px 25px rgba(255,123,61,.15);

    transition: all .4s ease;

    border: 4px solid #ffffff;
}

.softbrain-image:hover {

    transform: translateY(-8px);

    box-shadow:
        0 35px 70px rgba(27,22,66,.18),
        0 15px 35px rgba(255,123,61,.25);
}

.softbrain-image img {

    width: 100%;

    border-radius: 26px;

    display: block;
}
/* ===========================
   VEDIC MATHS PAGE
=========================== */

.course-about-section {

    padding: 100px 0;
}

.course-tag {

    display: inline-block;

    background: rgba(255,123,61,.1);

    color: #ff7b3d;

    padding: 10px 20px;

    border-radius: 50px;

    font-size: 14px;

    font-weight: 700;

    margin-bottom: 20px;
}

.course-about-section h2 {

    font-size: 48px;

    font-weight: 800;

    color: #1b1642;

    margin-bottom: 25px;
}

.course-about-section p {

    color: #64748b;

    line-height: 1.9;

    font-size: 17px;
}

/* ===========================
   PREMIUM IMAGE STYLE
=========================== */

.premium-image-box {

    position: relative;

    display: inline-block;

    width: 100%;
}

.image-glow {

    position: absolute;

    inset: -15px;

    border-radius: 40px;

    background:
    linear-gradient(
    135deg,
    rgba(91,75,255,.20),
    rgba(0,201,167,.15),
    rgba(255,123,61,.20));

    filter: blur(25px);

    z-index: 0;
}

.premium-image {

    position: relative;

    z-index: 2;

    width: 100%;

    border-radius: 30px;

    border: 5px solid #fff;

    box-shadow:
    0 25px 60px rgba(0,0,0,.12);

    transition: .4s;
}

.premium-image:hover {

    transform: translateY(-8px);
}

/* ===========================
   CONTENT SECTION
=========================== */

.vedic-content-section {

    padding: 100px 0;

    background: #f8fbff;
}

.content-card {

    background: white;

    border-radius: 25px;

    padding: 50px;

    box-shadow:
    0 10px 40px rgba(0,0,0,.05);
}

.content-card p {

    color: #64748b;

    line-height: 1.9;

    margin-bottom: 20px;
}

/* ===========================
   SECTION TITLE
=========================== */

.section-title {

    text-align: center;

    margin-bottom: 60px;
}

.section-title h2 {

    font-size: 46px;

    font-weight: 800;

    color: #1b1642;

    margin-bottom: 15px;
}

.section-title p {

    color: #64748b;

    font-size: 18px;
}

/* ===========================
   IMPORTANCE SECTION
=========================== */

.importance-section {

    padding: 100px 0;
}

.importance-section h2 {

    font-size: 42px;

    font-weight: 800;

    color: #1b1642;

    margin-bottom: 25px;
}

.importance-section p {

    color: #64748b;

    line-height: 1.9;

    margin-bottom: 20px;
}

/* ===========================
   BENEFITS SECTION
=========================== */

.vedic-benefits {

    padding: 100px 0;

    background: #f8fbff;
}

.benefit-card {

    text-align: center;

    padding: 40px 25px;

    border-radius: 25px;

    height: 100%;

    transition: .4s;
}

.benefit-card:hover {

    transform: translateY(-10px);
}

.benefit-card i {

    font-size: 50px;

    color: white;

    margin-bottom: 20px;
}

.benefit-card h4 {

    color: white;

    font-weight: 700;

    margin-bottom: 15px;
}

.benefit-card p {

    color: rgba(255,255,255,.9);
}

.benefit-purple {

    background:
    linear-gradient(
    135deg,
    #5b4bff,
    #7868ff);
}

.benefit-orange {

    background:
    linear-gradient(
    135deg,
    #ff7b3d,
    #ffb03a);
}

.benefit-green {

    background:
    linear-gradient(
    135deg,
    #00c9a7,
    #00e0b9);
}

.benefit-blue {

    background:
    linear-gradient(
    135deg,
    #2196f3,
    #58b8ff);
}

/* ===========================
   WHY SOFTBRAIN
=========================== */

.why-softbrain-section {

    padding: 100px 0;
}

.softbrain-list {

    list-style: none;

    padding: 0;
}

.softbrain-list li {

    position: relative;

    padding-left: 35px;

    margin-bottom: 20px;

    color: #1b1642;

    font-size: 18px;

    font-weight: 500;
}

.softbrain-list li:before {

    content: '\f058';

    font-family: "Font Awesome 6 Free";

    font-weight: 900;

    position: absolute;

    left: 0;

    color: #00c9a7;
}

/* ===========================
   CTA SECTION
=========================== */

.course-cta-section {

    padding: 100px 0;
}

.cta-box {

    background:
    linear-gradient(
    135deg,
    #1b1642,
    #312772);

    border-radius: 35px;

    padding: 70px;

    text-align: center;

    color: white;

    box-shadow:
    0 20px 50px rgba(27,22,66,.20);
}

.cta-box h2 {

    font-size: 42px;

    font-weight: 800;

    margin-bottom: 20px;
}

.cta-box p {

    max-width: 700px;

    margin: auto;

    margin-bottom: 30px;

    color: rgba(255,255,255,.85);
}

.cta-btn {

    display: inline-block;

    background: #ff7b3d;

    color: white;

    padding: 15px 40px;

    border-radius: 50px;

    text-decoration: none;

    font-weight: 700;

    transition: .4s;
}

.cta-btn:hover {

    background: white;

    color: #1b1642;
}

.gallery-section {
    padding: 80px 0;
    background: #f8fbff;
}

.category-title {
    font-size: 28px;
    font-weight: 700;
    color: #22145f;
    margin-bottom: 30px;
    position: relative;
}

.category-title:after {
    content: '';
    width: 80px;
    height: 4px;
    background: #ff6b35;
    display: block;
    margin-top: 10px;
    border-radius: 30px;
}

.gallery-card {
    overflow: hidden;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
    cursor: pointer;
}

.gallery-thumb {
    width: 100%;
    height: 250px;
    object-fit: cover;
    transition: .5s;
}

.gallery-card:hover .gallery-thumb {
    transform: scale(1.08);
}

.gallery-modal {
    background: transparent;
    border: 0;
}

.gallery-large {
    max-height: 80vh;
    border-radius: 20px;
}

.gallery-close {
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 999;
    background: white !important;
    opacity: 1;
}

.franchise-image {
    border-radius: 30px;
    box-shadow: 0 20px 50px rgba(0,0,0,.15);
    border: 6px solid #fff;
}

.partner-card {
    background: #fff;
    border-radius: 20px;
    padding: 30px;
    text-align: center;
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
    transition: .3s;
    height: 100%;
}

.partner-card:hover {
    transform: translateY(-8px);
}

.partner-card i {
    font-size: 40px;
    color: #ff6b35;
    margin-bottom: 15px;
}

.info-card {
    background: #fff;
    border-radius: 25px;
    padding: 35px;
    box-shadow: 0 15px 40px rgba(0,0,0,.08);
    height: 100%;
}

.card-icon {
    width: 70px;
    height: 70px;
    background: #6c63ff;
    color: #fff;
    border-radius: 50%;
    text-align: center;
    line-height: 70px;
    font-size: 28px;
    margin-bottom: 20px;
}

.card-icon.orange {
    background: #ff6b35;
}

.card-icon.purple {
    background: #5b3df5;
}

.franchise-form-card {
    background: #fff;
    padding: 50px;
    border-radius: 30px;
    box-shadow: 0 15px 50px rgba(0,0,0,.08);
    margin-top: 50px;
}

.btn-franchise-submit {
    background: linear-gradient(135deg,#ff6b35,#ff8f50);
    color: #fff;
    border: none;
    padding: 14px 40px;
    border-radius: 50px;
    font-weight: 600;
}

.btn-franchise-submit:hover {
    transform: translateY(-3px);
}

.franchise-form-card .form-control {
    height: 55px;
    border-radius: 15px;
    border: 1px solid #e5e5e5;
    box-shadow: none;
}

.franchise-form-card textarea {
    height: auto !important;
    padding-top: 15px;
}

.franchise-form-card .form-control:focus {
    border-color: #ff6b35;
    box-shadow: 0 0 15px rgba(255,107,53,.15);
}
.partner-section {
    background: #f8f9ff;
    padding: 80px 0;
}

.partner-card {
    background: #fff;
    border-radius: 20px;
    padding: 35px 25px;
    text-align: center;
    box-shadow: 0 15px 35px rgba(0,0,0,.08);
    transition: .4s;
    margin-bottom: 25px;
}

.partner-card:hover {
    transform: translateY(-10px);
}
.franchise-image {
    width: 100%;
    max-width: 450px;
    border-radius: 35px;
    border: 6px solid #fff;
    box-shadow:
        0 0 25px rgba(255,107,53,.25),
        0 25px 60px rgba(0,0,0,.15);
}
.branch-card {
    background: #fff;
    border-radius: 25px;
    overflow: hidden;
    height: 100%;
    box-shadow: 0 15px 40px rgba(0,0,0,.08);
    transition: all .4s ease;
    border: 1px solid #f2f2f2;
}

.branch-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 25px 60px rgba(0,0,0,.15);
}

.branch-image-wrapper {
    padding: 15px;
    text-align: center;
    position: relative;
}

.branch-image {
    width: 100%;
    height: 280px;
    object-fit: cover;
    border-radius: 25px;
    border: 5px solid #fff;
    box-shadow:
        0 0 25px rgba(255,107,53,.25),
        0 20px 45px rgba(0,0,0,.15);
}

.branch-content {
    padding: 25px;
    text-align: center;
}

.branch-content h4 {
    color: #22124a;
    font-weight: 700;
    margin-bottom: 10px;
}

.branch-role {
    display: inline-block;
    background: linear-gradient(135deg,#ff6b35,#ff8f50);
    color: #fff;
    padding: 8px 20px;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 20px;
}

.branch-location p {
    margin-bottom: 10px;
    color: #666;
    font-size: 15px;
    line-height: 1.7;
}

.branch-location i {
    color: #ff6b35;
    margin-right: 8px;
}

#about {
    background: #f8f9ff;
    padding: 80px 0;
}
.staff-section{
    padding:90px 0;
    background:#f8fbff;
}

.trainer-card{
    background:#fff;
    border-radius:30px;
    overflow:hidden;
    height:100%;
    transition:.4s;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.trainer-card:hover{
    transform:translateY(-10px);
    box-shadow:0 25px 60px rgba(0,0,0,.15);
}

.trainer-image-box{
    padding:15px;
    position:relative;
}

.trainer-image{
    width:100%;
    height:300px;
    object-fit:cover;
    border-radius:25px;
    border:5px solid #fff;
    box-shadow:
    0 0 20px rgba(255,107,53,.25),
    0 20px 50px rgba(0,0,0,.15);
}

.verified-badge{
    position:absolute;
    top:25px;
    right:25px;
    background:#fff;
    width:40px;
    height:40px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#28a745;
    box-shadow:0 5px 15px rgba(0,0,0,.15);
}

.trainer-content{
    padding:25px;
    text-align:center;
}

.trainer-content h4{
    color:#22124a;
    font-size:22px;
    font-weight:700;
    margin-bottom:12px;
}

.trainer-qualification{
    display:inline-block;
    padding:8px 20px;
    border-radius:50px;
    background:linear-gradient(135deg,#ff6b35,#ff8f50);
    color:#fff;
    font-size:13px;
    font-weight:600;
    margin-bottom:15px;
}

.trainer-info p{
    margin-bottom:8px;
    color:#666;
    font-size:14px;
}

.trainer-info i{
    color:#ff6b35;
    margin-right:8px;
}

.trainer-filter {
    margin-bottom: 50px;
}

.filter-btn {
    display: inline-block;
    padding: 12px 28px;
    margin: 5px;
    border-radius: 50px;
    text-decoration: none;
    color: #22124a;
    background: #fff;
    border: 2px solid #e8e8e8;
    font-weight: 600;
    transition: .3s;
}

.filter-btn:hover {
    background: #ff6b35;
    color: #fff;
    border-color: #ff6b35;
}

.filter-btn.active {
    background: #ff6b35;
    color: #fff;
    border-color: #ff6b35;
}

.contact-section{
    padding:90px 0;
    background:#f8fbff;
}

.contact-info-card{
    background:#fff;
    border-radius:25px;
    padding:35px;
    text-align:center;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
    transition:.4s;
    height:100%;
}

.contact-info-card:hover{
    transform:translateY(-10px);
}

.contact-icon{
    width:80px;
    height:80px;
    margin:auto;
    border-radius:50%;
    background:linear-gradient(135deg,#ff6b35,#ff8f50);
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:30px;
    margin-bottom:20px;
}

.contact-icon.orange{
    background:linear-gradient(135deg,#ff9f1c,#ffbe0b);
}

.contact-icon.purple{
    background:linear-gradient(135deg,#5f27cd,#7b4cff);
}

.contact-info-card h4{
    color:#22124a;
    font-weight:700;
    margin-bottom:15px;
}

.contact-form-box{
    background:#fff;
    padding:40px;
    border-radius:30px;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.contact-form-box h3{
    color:#22124a;
    margin-bottom:30px;
    font-weight:700;
}

.contact-form-box .form-control{
    height:55px;
    border-radius:15px;
    border:1px solid #e5e5e5;
}

.contact-form-box textarea.form-control{
    height:auto;
}

.btn-contact{
    background:linear-gradient(135deg,#ff6b35,#ff8f50);
    color:#fff;
    border:none;
    padding:15px 40px;
    border-radius:50px;
    font-weight:600;
    transition:.3s;
}

.btn-contact:hover{
    transform:translateY(-3px);
}

.map-box{
    height:100%;
    min-height:550px;
    overflow:hidden;
    border-radius:30px;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.map-box iframe{
    width:100%;
    height:100%;
}