a{text-decoration:none;}
.owl-carousel{z-index:0;}

.app-link.home{
	margin-top:0;
	background-color:#fff;
	background-image:none;
	
}

.app-link .details{margin:6% 0px 0px 5%}



/* =========================================
   WHY CHOOSE SANSKRITI IAS SECTION
========================================= */

.why-sanskriti-section {
    position: relative;
    overflow: hidden;
    padding: 30px 20px;
    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(213, 20, 31, 0.10),
            transparent 28%
        ),
        radial-gradient(
            circle at 92% 85%,
            rgba(213, 20, 31, 0.08),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #ffffff 0%,
            #fff8f8 45%,
            #ffeded 100%
        );
}

.why-sanskriti-section::before {
    content: "";
    position: absolute;
    top: -140px;
    right: -140px;
    width: 360px;
    height: 360px;
    border: 70px solid rgba(213, 20, 31, 0.035);
    border-radius: 50%;
}

.why-sanskriti-section::after {
    content: "";
    position: absolute;
    bottom: -170px;
    left: -170px;
    width: 380px;
    height: 380px;
    border-radius: 50%;
    background: rgba(213, 20, 31, 0.035);
}

.why-sanskriti-container {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1250px;
    margin: 0 auto;
}

/* Heading */

.why-sanskriti-heading {
    max-width: 850px;
    margin: 0 auto 52px;
    text-align: center;
}

.section-label {
    display: inline-block;
    margin-bottom: 13px;
    color: #d5141f;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.section-label::before,
.section-label::after {
    content: "";
    display: inline-block;
    width: 32px;
    height: 1px;
    margin: 0 10px 4px;
    background: #d5141f;
}

.why-sanskriti-heading h2 {
    margin: 0 0 18px;
    color: #151515;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 42px;
    font-weight: 700;
    line-height: 1.2;
}

.why-sanskriti-heading h2 span {
    color: #d5141f;
}

.why-sanskriti-heading p {
    max-width: 720px;
    margin: 0 auto;
    color: #666666;
    font-size: 16px;
    line-height: 1.8;
}

/* Cards Grid */

.why-sanskriti-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.why-sanskriti-card {
    position: relative;
    display: flex;
    min-height: 100%;
    padding: 28px;
    overflow: hidden;
    border: 1px solid rgba(213, 20, 31, 0.10);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 12px 35px rgba(26, 26, 26, 0.07);
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease,
        border-color 0.35s ease;
}

.why-sanskriti-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 4px;
    background: linear-gradient(
        90deg,
        #9f0d14,
        #d5141f,
        #f04b54
    );
    transition: width 0.35s ease;
}

.why-sanskriti-card::after {
    content: "";
    position: absolute;
    right: -60px;
    bottom: -70px;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: rgba(213, 20, 31, 0.035);
    transition: transform 0.35s ease;
}

.why-sanskriti-card:hover {
    transform: translateY(-8px);
    border-color: rgba(213, 20, 31, 0.25);
    box-shadow: 0 20px 45px rgba(26, 26, 26, 0.12);
}

.why-sanskriti-card:hover::before {
    width: 100%;
}

.why-sanskriti-card:hover::after {
    transform: scale(1.25);
}

/* Card Number */

.why-card-number {
    position: absolute;
    top: 18px;
    right: 20px;
    color: rgba(213, 20, 31, 0.09);
    font-size: 48px;
    font-weight: 800;
    line-height: 1;
}

/* Icon */

.why-card-icon {
    position: relative;
    z-index: 2;
    flex: 0 0 64px;
    width: 64px;
    height: 64px;
    margin-right: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 25px;
    border-radius: 15px;
    background:
        linear-gradient(
            135deg,
            #ed313a 0%,
            #d5141f 50%,
            #a70d14 100%
        );
    box-shadow: 0 10px 22px rgba(213, 20, 31, 0.24);
}

.why-card-icon::after {
    content: "";
    position: absolute;
    inset: -7px;
    z-index: -1;
    border: 1px dashed rgba(213, 20, 31, 0.22);
    border-radius: 18px;
}

/* Content */

.why-card-content {
    position: relative;
    z-index: 2;
}

.why-card-content h3 {
    margin: 2px 0 13px;
    padding-right: 22px;
    color: #181818;
    font-size: 19px;
    font-weight: 700;
    line-height: 1.4;
}

.why-card-content p {
    margin: 0;
    color: #686868;
    font-size: 14px;
    line-height: 1.75;
}

/* Bottom Buttons */

.why-sanskriti-action {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin-top: 45px;
}

.why-primary-btn,
.why-secondary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 24px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s ease;
}

.why-primary-btn {
    gap: 10px;
    color: #ffffff;
    border: 1px solid #d5141f;
    background: linear-gradient(
        135deg,
        #e4252f 0%,
        #c90f19 100%
    );
    box-shadow: 0 10px 22px rgba(213, 20, 31, 0.23);
}

.why-primary-btn:hover {
    color: #ffffff;
    transform: translateY(-2px);
    background: linear-gradient(
        135deg,
        #c90f19 0%,
        #9d0c12 100%
    );
    box-shadow: 0 14px 28px rgba(213, 20, 31, 0.30);
}

.why-primary-btn i {
    transition: transform 0.3s ease;
}

.why-primary-btn:hover i {
    transform: translateX(5px);
}

.why-secondary-btn {
    color: #161616;
    border: 1px solid #d7d7d7;
    background: #ffffff;
}

.why-secondary-btn:hover {
    color: #d5141f;
    border-color: #d5141f;
    background: #fff7f7;
}

/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 1100px) {
    .why-sanskriti-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .why-sanskriti-section {
        padding: 65px 15px;
    }

    .why-sanskriti-heading {
        margin-bottom: 35px;
    }

    .why-sanskriti-heading h2 {
        font-size: 31px;
    }

    .why-sanskriti-heading p {
        font-size: 15px;
        line-height: 1.7;
    }

    .why-sanskriti-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .why-sanskriti-card {
        padding: 24px 20px;
    }

    .why-card-icon {
        flex-basis: 58px;
        width: 58px;
        height: 58px;
        margin-right: 17px;
        font-size: 22px;
    }

    .why-card-content h3 {
        font-size: 17px;
    }

    .why-sanskriti-action {
        flex-direction: column;
        margin-top: 32px;
    }

    .why-primary-btn,
    .why-secondary-btn {
        width: 100%;
        max-width: 320px;
    }
}

@media (max-width: 480px) {
    .section-label::before,
    .section-label::after {
        width: 20px;
        margin-right: 6px;
        margin-left: 6px;
    }

    .why-sanskriti-heading h2 {
        font-size: 27px;
    }

    .why-sanskriti-card {
        display: block;
    }

    .why-card-icon {
        margin: 0 0 22px;
    }

    .why-card-content h3 {
        padding-right: 0;
    }

    .why-card-number {
        font-size: 42px;
    }
}


/* =============================================
   UPSC ACHIEVERS SECTION
============================================= */

.upsc-achievers-section {
    position: relative;
    overflow: hidden;
    padding: 30px 0;
    background:
        radial-gradient(
            circle at 10% 10%,
            rgba(215, 25, 32, 0.10),
            transparent 28%
        ),
        radial-gradient(
            circle at 90% 90%,
            rgba(215, 25, 32, 0.08),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #ffffff 0%,
            #fff7f7 48%,
            #ffecee 100%
        );
}

.upsc-achievers-section::before {
    content: "";
    position: absolute;
    top: -180px;
    right: -180px;
    width: 400px;
    height: 400px;
    border: 70px solid rgba(215, 25, 32, 0.04);
    border-radius: 50%;
}

.upsc-achievers-section::after {
    content: "";
    position: absolute;
    bottom: -200px;
    left: -170px;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    background: rgba(215, 25, 32, 0.035);
}

/* Heading */

.achievers-section-heading {
    position: relative;
    z-index: 2;
    max-width: 920px;
    margin: 0 auto 48px;
    text-align: center;
}

.achievers-small-title {
    display: inline-block;
    position: relative;
    margin-bottom: 12px;
    color: #d71920;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.achievers-small-title::before,
.achievers-small-title::after {
    content: "";
    display: inline-block;
    width: 34px;
    height: 1px;
    margin: 0 10px 4px;
    background: #d71920;
}

.achievers-section-heading h2 {
    margin: 0 0 18px;
    color: #131313;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 44px;
    font-weight: 700;
    line-height: 1.2;
}

.achievers-section-heading h2 span {
    color: #d71920;
}

.achievers-section-heading p {
    max-width: 820px;
    margin: 0 auto;
    color: #626262;
    font-size: 16px;
    line-height: 1.8;
}

/* Slider Wrapper */

.achievers-slider-wrapper {
    position: relative;
    z-index: 2;
    padding: 22px 16px 35px;
    border: 1px solid rgba(215, 25, 32, 0.09);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.68);
    box-shadow: 0 22px 55px rgba(20, 20, 20, 0.08);
    backdrop-filter: blur(8px);
}

.achievers-decoration {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.achievers-decoration-one {
    top: -25px;
    left: 7%;
    width: 65px;
    height: 65px;
    border: 12px solid rgba(215, 25, 32, 0.06);
}

.achievers-decoration-two {
    right: 5%;
    bottom: -30px;
    width: 90px;
    height: 90px;
    background: rgba(215, 25, 32, 0.04);
}

/* Card */

.achiever-item {
    padding: 12px;
}

.achiever-card {
    position: relative;
    overflow: hidden;
    height: 100%;
    border: 1px solid #ececec;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 12px 32px rgba(20, 20, 20, 0.08);
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease,
        border-color 0.35s ease;
}

.achiever-card:hover {
    transform: translateY(-9px);
    border-color: rgba(215, 25, 32, 0.25);
    box-shadow: 0 22px 45px rgba(20, 20, 20, 0.14);
}

/* Top red line */

.achiever-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 4;
    width: 0;
    height: 4px;
    background: linear-gradient(
        90deg,
        #a80f16,
        #d71920,
        #f05258
    );
    transform: translateX(-50%);
    transition: width 0.35s ease;
}

.achiever-card:hover::before {
    width: 100%;
}

/* Image */

.achiever-image {
    position: relative;
    height: 290px;
    overflow: hidden;
    background:
        linear-gradient(
            145deg,
            #f5f5f5,
            #fff3f3
        );
}

.achiever-image::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 45%;
    background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.58),
        transparent
    );
}

.achiever-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
    transition: transform 0.45s ease;
}

.achiever-card:hover .achiever-image img {
    transform: scale(1.045);
}

/* Rank Badge */

.achiever-rank {
    position: absolute;
    top: 18px;
    left: 18px;
    z-index: 3;
    width: 66px;
    height: 66px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    border: 3px solid rgba(255, 255, 255, 0.82);
    border-radius: 50%;
    background:
        linear-gradient(
            135deg,
            #ee3039 0%,
            #d71920 50%,
            #a70d13 100%
        );
    box-shadow: 0 10px 24px rgba(215, 25, 32, 0.32);
}

.achiever-rank span {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
}

.achiever-rank strong {
    margin-top: 1px;
    font-size: 20px;
    line-height: 1;
}

/* Year */

.achiever-year {
    position: absolute;
    right: 15px;
    bottom: 14px;
    z-index: 3;
    padding: 7px 12px;
    color: #ffffff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.6px;
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 30px;
    background: rgba(0, 0, 0, 0.64);
    backdrop-filter: blur(5px);
}

/* Card Content */

.achiever-content {
    position: relative;
    min-height: 235px;
    padding: 25px 23px 24px;
}

.achiever-program {
    display: inline-block;
    margin-bottom: 9px;
    color: #d71920;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.achiever-content h3 {
    margin: 0 0 11px;
    color: #151515;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.35;
}

.achiever-content p {
    min-height: 70px;
    margin: 0 0 21px;
    color: #686868;
    font-size: 13px;
    line-height: 1.7;
}

/* Button */

.achiever-button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 11px 16px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    border-radius: 6px;
    background:
        linear-gradient(
            135deg,
            #e8242d 0%,
            #c90f18 100%
        );
    box-shadow: 0 8px 18px rgba(215, 25, 32, 0.20);
    transition: all 0.3s ease;
}

.achiever-button:hover,
.achiever-button:focus {
    color: #ffffff;
    text-decoration: none;
    transform: translateY(-2px);
    background:
        linear-gradient(
            135deg,
            #c90f18 0%,
            #990b10 100%
        );
    box-shadow: 0 12px 23px rgba(215, 25, 32, 0.28);
}

.achiever-button .fa-arrow-right {
    margin-left: 3px;
    transition: transform 0.3s ease;
}

.achiever-button:hover .fa-arrow-right {
    transform: translateX(4px);
}

/* Owl Navigation */

#topper-owl-carousel .owl-nav {
    margin-top: 28px;
    text-align: center;
}

#topper-owl-carousel .owl-nav .owl-prev,
#topper-owl-carousel .owl-nav .owl-next {
    width: 46px;
    height: 46px;
    margin: 0 5px;
    color: #202020;
    font-size: 22px;
    line-height: 42px;
    border: 1px solid #dddddd;
    border-radius: 50%;
    background: #ffffff;
    box-shadow: 0 7px 18px rgba(20, 20, 20, 0.08);
    transition: all 0.3s ease;
}

#topper-owl-carousel .owl-nav .owl-prev:hover,
#topper-owl-carousel .owl-nav .owl-next:hover {
    color: #ffffff;
    border-color: #d71920;
    background: #d71920;
    transform: translateY(-2px);
}

/* Owl Dots */

#topper-owl-carousel .owl-dots {
    margin-top: 22px;
    text-align: center;
}

#topper-owl-carousel .owl-dot {
    display: inline-block;
}

#topper-owl-carousel .owl-dot span {
    display: block;
    width: 9px;
    height: 9px;
    margin: 0 4px;
    border-radius: 20px;
    background: #d2d2d2;
    transition: all 0.3s ease;
}

#topper-owl-carousel .owl-dot.active span {
    width: 28px;
    background: #d71920;
}

/* View All Button */

.achievers-bottom {
    position: relative;
    z-index: 2;
    margin-top: 38px;
    text-align: center;
}

.view-all-achievers {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    min-height: 50px;
    padding: 0 25px;
    color: #1b1b1b;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    border: 1px solid rgba(215, 25, 32, 0.35);
    border-radius: 5px;
    background: #ffffff;
    box-shadow: 0 9px 22px rgba(20, 20, 20, 0.08);
    transition: all 0.3s ease;
}

.view-all-achievers:hover,
.view-all-achievers:focus {
    color: #ffffff;
    text-decoration: none;
    border-color: #d71920;
    background: #d71920;
    transform: translateY(-2px);
}

/* =============================================
   RESPONSIVE
============================================= */

@media (max-width: 991px) {
    .upsc-achievers-section {
        padding: 75px 0;
    }

    .achievers-section-heading h2 {
        font-size: 38px;
    }

    .achiever-image {
        height: 275px;
    }
}

@media (max-width: 767px) {
    .upsc-achievers-section {
        padding: 60px 0;
    }

    .achievers-section-heading {
        margin-bottom: 32px;
        padding: 0 10px;
    }

    .achievers-section-heading h2 {
        font-size: 31px;
    }

    .achievers-section-heading p {
        font-size: 14px;
        line-height: 1.7;
    }

    .achievers-slider-wrapper {
        padding: 15px 5px 28px;
        border-radius: 16px;
    }

    .achiever-item {
        padding: 8px;
    }

    .achiever-image {
        height: 330px;
    }

    .achiever-content {
        min-height: auto;
    }

    .achiever-content p {
        min-height: auto;
    }
}

@media (max-width: 480px) {
    .achievers-small-title::before,
    .achievers-small-title::after {
        width: 20px;
        margin-right: 6px;
        margin-left: 6px;
    }

    .achievers-section-heading h2 {
        font-size: 27px;
    }

    .achiever-image {
        height: 300px;
    }

    .achiever-content {
        padding: 22px 18px;
    }

    .achiever-content h3 {
        font-size: 19px;
    }
}


/* ==========================================
   EXPERIENCED FACULTY SECTION
========================================== */

.faculty-section {
    position: relative;
    overflow: hidden;
    padding: 30px 0;

    background:
        radial-gradient(
            circle at 88% 18%,
            rgba(215, 25, 32, 0.08),
            transparent 24%
        ),
        radial-gradient(
            circle at 12% 82%,
            rgba(20, 20, 20, 0.055),
            transparent 30%
        ),
        linear-gradient(
            120deg,
            #f2f2f2 0%,
            #ffffff 42%,
            #faf7f7 72%,
            #f5eeee 100%
        );
}

/* Large outlined circle on left */
.faculty-section::before {
    content: "";
    position: absolute;
    top: -145px;
    left: -135px;
    width: 340px;
    height: 340px;
    border: 52px solid rgba(20, 20, 20, 0.035);
    border-radius: 50%;
    pointer-events: none;
}

/* Soft red geometric shape on right */
.faculty-section::after {
    content: "";
    position: absolute;
    right: -110px;
    bottom: -160px;
    width: 320px;
    height: 320px;
    border-radius: 55px;
    background:
        linear-gradient(
            145deg,
            rgba(215, 25, 32, 0.07),
            rgba(215, 25, 32, 0.015)
        );
    transform: rotate(35deg);
    pointer-events: none;
}

/* Heading */

.faculty-heading {
    position: relative;
    z-index: 2;
    max-width: 850px;
    margin: 0 auto 48px;
    text-align: center;
}

.faculty-subtitle {
    display: inline-block;
    margin-bottom: 12px;
    color: #d71920;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.faculty-subtitle::before,
.faculty-subtitle::after {
    content: "";
    display: inline-block;
    width: 34px;
    height: 1px;
    margin: 0 10px 4px;
    background: #d71920;
}

.faculty-heading h2 {
    margin: 0 0 17px;
    color: #141414;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 44px;
    font-weight: 700;
    line-height: 1.2;
}

.faculty-heading h2 span {
    color: #d71920;
}

.faculty-heading p {
    max-width: 740px;
    margin: 0 auto;
    color: #666666;
    font-size: 16px;
    line-height: 1.8;
}

/* Slider */

.faculty-slider-wrapper {
    position: relative;
    z-index: 2;
    padding: 18px 12px 32px;
    border: 1px solid rgba(20, 20, 20, 0.08);
    border-radius: 20px;

    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.96),
            rgba(248, 248, 248, 0.94)
        );

    box-shadow:
        0 18px 45px rgba(20, 20, 20, 0.09),
        inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.faculty-slide {
    padding: 12px;
}

/* Card */

.faculty-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 575px;
    overflow: hidden;

    border: 1px solid rgba(20, 20, 20, 0.09);
    border-radius: 18px;

    background:
        linear-gradient(
            160deg,
            #ffffff 0%,
            #ffffff 62%,
            #f7f7f7 100%
        );

    box-shadow: 0 12px 30px rgba(20, 20, 20, 0.08);

    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease,
        border-color 0.35s ease;
}

.faculty-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 6;
    width: 0;
    height: 4px;
    transform: translateX(-50%);
    background: linear-gradient(
        90deg,
        #9d0c13,
        #d71920,
        #ed555b
    );
    transition: width 0.35s ease;
}

.faculty-card:hover {
    transform: translateY(-9px);
    border-color: rgba(215, 25, 32, 0.25);
    box-shadow: 0 22px 46px rgba(20, 20, 20, 0.14);
}

.faculty-card:hover::before {
    width: 100%;
}

/* Image */

.faculty-image {
    position: relative;
    height: 285px;
    overflow: hidden;
    background: linear-gradient(
        145deg,
        #f5f5f5,
        #fff0f1
    );
}

.faculty-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
    transition: transform 0.45s ease;
}

.faculty-card:hover .faculty-image img {
    transform: scale(1.045);
}

.faculty-image-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.52) 0%,
        rgba(0, 0, 0, 0.04) 55%,
        transparent 100%
    );
}

/* Experience Badge */

.faculty-experience-badge {
    position: absolute;
    right: 16px;
    bottom: 15px;
    z-index: 3;
    width: 68px;
    height: 68px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    border: 3px solid rgba(255, 255, 255, 0.80);
    border-radius: 50%;
    background: linear-gradient(
        135deg,
        #eb3039,
        #d71920 55%,
        #a80c13
    );
    box-shadow: 0 10px 24px rgba(215, 25, 32, 0.32);
}

.faculty-experience-badge strong {
    font-size: 19px;
    line-height: 1;
}

.faculty-experience-badge span {
    margin-top: 4px;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.7px;
    text-transform: uppercase;
}

/* Main Content */

.faculty-content {
    flex: 1;
    padding: 23px 22px 18px;
}

.faculty-category {
    display: inline-block;
    margin-bottom: 9px;
    color: #d71920;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.1px;
    text-transform: uppercase;
}

.faculty-content h3 {
    margin: 0 0 8px;
    color: #161616;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.35;
}

.faculty-content h4 {
    min-height: 42px;
    margin: 0 0 14px;
    color: #3c3c3c;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.55;
}

.faculty-content p {
    display: -webkit-box;
    overflow: hidden;
    margin: 0;
    color: #6b6b6b;
    font-size: 13px;
    line-height: 1.75;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
}

/* Footer */

.faculty-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 17px 20px;

    border-top: 1px solid #e8e8e8;

    background:
        linear-gradient(
            90deg,
            #f4f4f4 0%,
            #ffffff 52%,
            #fff4f4 100%
        );
}

.faculty-experience {
    display: flex;
    align-items: center;
    gap: 9px;
}

.faculty-experience > i {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #d71920;
    font-size: 15px;
    border-radius: 50%;
    background: #ffecee;
}

.faculty-experience div {
    display: flex;
    flex-direction: column;
}

.faculty-experience strong {
    color: #1b1b1b;
    font-size: 14px;
    line-height: 1.1;
}

.faculty-experience span {
    margin-top: 3px;
    color: #777777;
    font-size: 10px;
}

/* More Button */

.faculty-more-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 39px;
    padding: 0 14px;
    color: #ffffff;
    font-size: 11px;
    font-weight: 700;
    border: 0;
    border-radius: 5px;
    outline: none;
    background: linear-gradient(
        135deg,
        #e5252e,
        #c90f18
    );
    box-shadow: 0 7px 17px rgba(215, 25, 32, 0.20);
    transition: all 0.3s ease;
}

.faculty-more-btn:hover,
.faculty-more-btn:focus {
    color: #ffffff;
    transform: translateY(-2px);
    background: linear-gradient(
        135deg,
        #c90f18,
        #990b10
    );
    box-shadow: 0 11px 22px rgba(215, 25, 32, 0.28);
}

.faculty-more-btn i {
    transition: transform 0.3s ease;
}

.faculty-more-btn:hover i {
    transform: translateX(4px);
}

/* Owl Navigation */

#faculty-owl-carousel .owl-nav {
    margin-top: 26px;
    text-align: center;
}

#faculty-owl-carousel .owl-nav .owl-prev,
#faculty-owl-carousel .owl-nav .owl-next {
    width: 46px;
    height: 46px;
    margin: 0 5px;
    color: #202020;
    font-size: 22px;
    line-height: 42px;
    border: 1px solid #dddddd;
    border-radius: 50%;
    background: #ffffff;
    box-shadow: 0 7px 18px rgba(20, 20, 20, 0.08);
    transition: all 0.3s ease;
}

#faculty-owl-carousel .owl-nav .owl-prev:hover,
#faculty-owl-carousel .owl-nav .owl-next:hover {
    color: #ffffff;
    border-color: #d71920;
    background: #d71920;
    transform: translateY(-2px);
}

/* Dots */

#faculty-owl-carousel .owl-dots {
    margin-top: 20px;
    text-align: center;
}

#faculty-owl-carousel .owl-dot {
    display: inline-block;
}

#faculty-owl-carousel .owl-dot span {
    display: block;
    width: 9px;
    height: 9px;
    margin: 0 4px;
    border-radius: 20px;
    background: #d4d4d4;
    transition: all 0.3s ease;
}

#faculty-owl-carousel .owl-dot.active span {
    width: 28px;
    background: #d71920;
}

/* Bottom Button */

.faculty-bottom-action {
    position: relative;
    z-index: 2;
    margin-top: 36px;
    text-align: center;
}

.view-all-faculty-btn {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    min-height: 49px;
    padding: 0 25px;
    color: #1a1a1a;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    border: 1px solid rgba(215, 25, 32, 0.35);
    border-radius: 5px;
    background: #ffffff;
    box-shadow: 0 9px 22px rgba(20, 20, 20, 0.08);
    transition: all 0.3s ease;
}

.view-all-faculty-btn:hover,
.view-all-faculty-btn:focus {
    color: #ffffff;
    text-decoration: none;
    border-color: #d71920;
    background: #d71920;
    transform: translateY(-2px);
}

/* Responsive */

@media (max-width: 991px) {
    .faculty-section {
        padding: 75px 0;
    }

    .faculty-heading h2 {
        font-size: 38px;
    }

    .faculty-card {
        min-height: 560px;
    }
}

@media (max-width: 767px) {
    .faculty-section {
        padding: 60px 0;
    }

    .faculty-heading {
        margin-bottom: 32px;
        padding: 0 10px;
    }

    .faculty-heading h2 {
        font-size: 31px;
    }

    .faculty-heading p {
        font-size: 14px;
        line-height: 1.7;
    }

    .faculty-slider-wrapper {
        padding: 12px 4px 26px;
        border-radius: 16px;
    }

    .faculty-card {
        min-height: auto;
    }

    .faculty-image {
        height: 350px;
    }

    .faculty-content h4 {
        min-height: auto;
    }

    .faculty-content p {
        -webkit-line-clamp: 5;
    }
}

@media (max-width: 480px) {
    .faculty-subtitle::before,
    .faculty-subtitle::after {
        width: 20px;
        margin-right: 6px;
        margin-left: 6px;
    }

    .faculty-heading h2 {
        font-size: 27px;
    }

    .faculty-image {
        height: 315px;
    }

    .faculty-content {
        padding: 21px 18px 17px;
    }

    .faculty-footer {
        padding: 15px;
    }

    .faculty-more-btn {
        padding: 0 11px;
    }
}


/* =========================================
   HOME HERO SECTION
========================================= */

.home-hero-section {
    position: relative;
    overflow: hidden;
    padding: 65px 0;

    background:
        radial-gradient(
            circle at 92% 12%,
            rgba(215, 25, 32, 0.11),
            transparent 25%
        ),
        radial-gradient(
            circle at 5% 90%,
            rgba(20, 20, 20, 0.055),
            transparent 28%
        ),
        linear-gradient(
            120deg,
            #ffffff 0%,
            #fafafa 45%,
            #fff4f4 100%
        );
}

.home-hero-section::before {
    content: "";
    position: absolute;
    top: -180px;
    right: -140px;
    width: 390px;
    height: 390px;
    border: 70px solid rgba(215, 25, 32, 0.035);
    border-radius: 50%;
}

.home-hero-section::after {
    content: "";
    position: absolute;
    bottom: -190px;
    left: -170px;
    width: 380px;
    height: 380px;
    border-radius: 50%;
    background: rgba(15, 15, 15, 0.025);
}

.home-hero-section .container {
    position: relative;
    z-index: 2;
}

/* =========================================
   LEFT CONTENT
========================================= */

.home-hero-content {
    padding-right: 35px;
}

.home-hero-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 8px 14px;
    color: #c8131c;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    border: 1px solid rgba(215, 25, 32, 0.18);
    border-radius: 30px;
    background: rgba(255, 255, 255, 0.85);
}

.home-hero-label::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #d71920;
    box-shadow: 0 0 0 5px rgba(215, 25, 32, 0.10);
}

.home-hero-title {
    margin: 0 0 20px;
    color: #161616;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 46px;
    font-weight: 700;
    line-height: 1.18;
    letter-spacing: -0.5px;
}

.home-hero-title span {
    display: block;
    color: #d71920;
}

.home-hero-description {
    max-width: 610px;
    margin: 0 0 24px;
    color: #626262;
    font-size: 16px;
    line-height: 1.8;
}

/* Points */

.home-hero-points {
    display: grid;
    gap: 15px;
    margin-bottom: 22px;
}

.home-hero-point {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 13px 15px;
    border: 1px solid rgba(20, 20, 20, 0.07);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.76);
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.home-hero-point:hover {
    transform: translateX(5px);
    border-color: rgba(215, 25, 32, 0.22);
    box-shadow: 0 10px 25px rgba(20, 20, 20, 0.07);
}

.home-point-icon {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 12px;
    border-radius: 50%;
    background: linear-gradient(
        135deg,
        #ea3039,
        #d71920 55%,
        #a80c13
    );
    box-shadow: 0 7px 16px rgba(215, 25, 32, 0.24);
}

.home-hero-point h3 {
    margin: 0 0 4px;
    color: #1b1b1b;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.35;
}

.home-hero-point p {
    margin: 0;
    color: #737373;
    font-size: 12px;
    line-height: 1.6;
}

.home-hero-highlight {
    margin: 0 0 22px;
    padding-left: 16px;
    color: #303030;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.7;
    border-left: 3px solid #d71920;
}

/* Buttons */

.home-hero-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 30px;
}

.home-primary-btn,
.home-secondary-btn {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 0 23px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    border-radius: 6px;
    transition: all 0.3s ease;
}

.home-primary-btn {
    color: #ffffff;
    border: 1px solid #d71920;
    background: linear-gradient(
        135deg,
        #e72831,
        #c70f18
    );
    box-shadow: 0 10px 22px rgba(215, 25, 32, 0.24);
}

.home-primary-btn:hover,
.home-primary-btn:focus {
    color: #ffffff;
    text-decoration: none;
    transform: translateY(-2px);
    background: linear-gradient(
        135deg,
        #c70f18,
        #980b11
    );
}

.home-primary-btn i {
    transition: transform 0.3s ease;
}

.home-primary-btn:hover i {
    transform: translateX(4px);
}

.home-secondary-btn {
    color: #1b1b1b;
    border: 1px solid #d4d4d4;
    background: #ffffff;
}

.home-secondary-btn:hover,
.home-secondary-btn:focus {
    color: #d71920;
    text-decoration: none;
    border-color: #d71920;
    background: #fff7f7;
}

/* Stats */

.home-hero-stats {
    display: flex;
    align-items: center;
    max-width: 560px;
    padding: 17px 20px;
    border: 1px solid rgba(20, 20, 20, 0.07);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.80);
    box-shadow: 0 10px 25px rgba(20, 20, 20, 0.05);
}

.home-stat-item {
    flex: 1;
    text-align: center;
}

.home-stat-item strong {
    display: block;
    margin-bottom: 3px;
    color: #d71920;
    font-size: 21px;
    font-weight: 800;
}

.home-stat-item span {
    color: #666666;
    font-size: 10px;
    font-weight: 600;
}

.home-stat-divider {
    width: 1px;
    height: 37px;
    background: #dedede;
}

/* =========================================
   RIGHT SLIDER
========================================= */

.home-slider-wrapper {
    position: relative;
    overflow: hidden;
    padding: 10px;
    border: 1px solid rgba(20, 20, 20, 0.09);
    border-radius: 20px;

    background:
        linear-gradient(
            145deg,
            #ffffff 0%,
            #f6f6f6 100%
        );

    box-shadow:
        0 25px 60px rgba(20, 20, 20, 0.14),
        0 8px 20px rgba(215, 25, 32, 0.07);
}

.home-slider-wrapper::before {
    content: "";
    position: absolute;
    top: -60px;
    right: -55px;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: rgba(215, 25, 32, 0.05);
}

.home-slider-topbar {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 8px 8px 13px;
    color: #333333;
    font-size: 11px;
    font-weight: 700;
}

.home-slider-topbar > div {
    display: flex;
    align-items: center;
    gap: 8px;
}

.slider-live-dot {
    position: relative;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #d71920;
}

.slider-live-dot::after {
    content: "";
    position: absolute;
    inset: -4px;
    border: 1px solid rgba(215, 25, 32, 0.35);
    border-radius: 50%;
    animation: sliderPulse 1.8s infinite;
}

@keyframes sliderPulse {
    0% {
        transform: scale(0.8);
        opacity: 1;
    }

    100% {
        transform: scale(1.8);
        opacity: 0;
    }
}

.slider-counter-text {
    color: #999999;
    font-size: 10px;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

.home-slider-link {
    display: block;
    overflow: hidden;
    border-radius: 14px;
    background: #eeeeee;
}

.home-slider-image {
    display: block;
    width: 100%;
    
    object-fit: cover;
    border-radius: 14px;
}

/* Slider Bottom */

.home-slider-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 8px 5px;
    font-size: 11px;
}

.home-slider-bottom > span {
    display: flex;
    align-items: center;
    gap: 7px;
    color: #555555;
    font-weight: 600;
}

.home-slider-bottom > span i {
    color: #d71920;
}

.home-slider-bottom a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #d71920;
    font-weight: 700;
    text-decoration: none;
}

.home-slider-bottom a:hover {
    color: #a80c13;
}

/* =========================================
   OWL NAVIGATION
========================================= */

#ad-owl-carousel .owl-nav {
    position: absolute;
    top: 50%;
    right: 12px;
    left: 12px;
    display: flex;
    justify-content: space-between;
    margin: 0;
    transform: translateY(-50%);
    pointer-events: none;
}

#ad-owl-carousel .owl-nav .owl-prev,
#ad-owl-carousel .owl-nav .owl-next {
    width: 42px;
    height: 42px;
    margin: 0;
    color: #ffffff;
    font-size: 20px;
    line-height: 38px;
    border: 1px solid rgba(255, 255, 255, 0.45);
    border-radius: 50%;
    background: rgba(15, 15, 15, 0.72);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.18);
    pointer-events: auto;
    transition: all 0.3s ease;
}

#ad-owl-carousel .owl-nav .owl-prev:hover,
#ad-owl-carousel .owl-nav .owl-next:hover {
    color: #ffffff;
    background: #d71920;
}

/* Dots */

#ad-owl-carousel .owl-dots {
    position: absolute;
    right: 0;
    bottom: 13px;
    left: 0;
    text-align: center;
}

#ad-owl-carousel .owl-dot {
    display: inline-block;
}

#ad-owl-carousel .owl-dot span {
    display: block;
    width: 8px;
    height: 8px;
    margin: 0 4px;
    border: 1px solid rgba(255, 255, 255, 0.65);
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.55);
    transition: all 0.3s ease;
}

#ad-owl-carousel .owl-dot.active span {
    width: 27px;
    border-color: #d71920;
    background: #d71920;
}

/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 1199px) {
    .home-hero-title {
        font-size: 40px;
    }

    .home-slider-image {
        
    }
}

@media (max-width: 991px) {
    .home-hero-section {
        padding: 50px 0;
    }

    .home-hero-content {
        padding-right: 0;
        margin-bottom: 42px;
    }

    .home-hero-title {
        font-size: 39px;
    }

    .home-slider-image {
        height: auto;
        max-height: none;
        object-fit: contain;
    }
}

@media (max-width: 767px) {
    .home-hero-section {
        padding: 38px 0;
    }

    .home-hero-title {
        font-size: 31px;
    }

    .home-hero-description {
        font-size: 14px;
        line-height: 1.7;
    }

    .home-hero-buttons {
        flex-direction: column;
    }

    .home-primary-btn,
    .home-secondary-btn {
        width: 100%;
    }

    .home-hero-stats {
        padding: 14px 8px;
    }

    .home-stat-item strong {
        font-size: 18px;
    }

    .home-stat-item span {
        font-size: 9px;
    }

    .home-slider-wrapper {
        padding: 7px;
        border-radius: 15px;
    }

    .home-slider-link,
    .home-slider-image {
        border-radius: 10px;
    }

    .home-slider-bottom {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 480px) {
    .home-hero-label {
        font-size: 10px;
        letter-spacing: 0.8px;
    }

    .home-hero-title {
        font-size: 27px;
    }

    .home-hero-point {
        padding: 12px;
    }

    .home-hero-stats {
        flex-wrap: wrap;
        gap: 12px;
    }

    .home-stat-item {
        flex: 1 1 28%;
    }

    .home-stat-divider {
        display: none;
    }

    .home-slider-topbar {
        align-items: flex-start;
        flex-direction: column;
    }
}



/* ==========================================
   UPSC FAQ SECTION
========================================== */

.upsc-faq-section {
    position: relative;
    overflow: hidden;
    padding: 80px 0;

    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(215, 25, 32, 0.08),
            transparent 24%
        ),
        radial-gradient(
            circle at 8% 88%,
            rgba(20, 20, 20, 0.05),
            transparent 27%
        ),
        linear-gradient(
            120deg,
            #f3f3f3 0%,
            #ffffff 46%,
            #fff6f6 100%
        );
}

.upsc-faq-section::before {
    content: "";
    position: absolute;
    top: -180px;
    left: -150px;
    width: 380px;
    height: 380px;
    border: 60px solid rgba(20, 20, 20, 0.03);
    border-radius: 50%;
    pointer-events: none;
}

.upsc-faq-section::after {
    content: "";
    position: absolute;
    right: -130px;
    bottom: -160px;
    width: 330px;
    height: 330px;
    border-radius: 65px;

    background:
        linear-gradient(
            145deg,
            rgba(215, 25, 32, 0.07),
            rgba(215, 25, 32, 0.01)
        );

    transform: rotate(35deg);
    pointer-events: none;
}

.upsc-faq-section .container {
    position: relative;
    z-index: 2;
}

/* Heading */

.faq-section-heading {
    max-width: 850px;
    margin: 0 auto 48px;
    text-align: center;
}

.faq-small-title {
    display: inline-block;
    margin-bottom: 12px;
    color: #d71920;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.faq-small-title::before,
.faq-small-title::after {
    content: "";
    display: inline-block;
    width: 34px;
    height: 1px;
    margin: 0 10px 4px;
    background: #d71920;
}

.faq-section-heading h2 {
    margin: 0 0 17px;
    color: #151515;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 44px;
    font-weight: 700;
    line-height: 1.2;
}

.faq-section-heading h2 span {
    color: #d71920;
}

.faq-section-heading p {
    max-width: 730px;
    margin: 0 auto;
    color: #666666;
    font-size: 16px;
    line-height: 1.8;
}

/* ==========================================
   LEFT INFORMATION CARD
========================================== */

.faq-info-card {
    position: relative;
    overflow: hidden;
    min-height: 100%;
    padding: 38px 31px;
    color: #ffffff;
    border-radius: 22px;

    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(255, 255, 255, 0.12),
            transparent 26%
        ),
        linear-gradient(
            145deg,
            #242424 0%,
            #131313 52%,
            #090909 100%
        );

    box-shadow: 0 22px 48px rgba(20, 20, 20, 0.20);
}

.faq-info-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 5px;
    height: 100%;

    background:
        linear-gradient(
            180deg,
            #f14b53,
            #d71920,
            #8f090f
        );
}

.faq-info-icon {
    width: 66px;
    height: 66px;
    margin-bottom: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 27px;
    border: 1px solid rgba(255, 255, 255, 0.20);
    border-radius: 16px;

    background:
        linear-gradient(
            135deg,
            #ee313a,
            #d71920 55%,
            #a80c13
        );

    box-shadow: 0 11px 25px rgba(215, 25, 32, 0.30);
}

.faq-info-label {
    display: block;
    margin-bottom: 10px;
    color: #f0676d;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.faq-info-card h3 {
    position: relative;
    z-index: 2;
    margin: 0 0 17px;
    color: #ffffff;
    font-size: 25px;
    font-weight: 700;
    line-height: 1.4;
}

.faq-info-card > p {
    position: relative;
    z-index: 2;
    margin: 0 0 23px;
    color: #cccccc;
    font-size: 14px;
    line-height: 1.75;
}

.faq-support-list {
    position: relative;
    z-index: 2;
    margin: 0 0 27px;
    padding: 0;
    list-style: none;
}

.faq-support-list li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 13px;
    color: #eeeeee;
    font-size: 13px;
    line-height: 1.5;
}

.faq-support-list li i {
    flex: 0 0 23px;
    width: 23px;
    height: 23px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 9px;
    border-radius: 50%;
    background: #d71920;
}

/* Contact Button */

.faq-contact-btn {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 47px;
    padding: 0 20px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    border: 1px solid #d71920;
    border-radius: 6px;

    background:
        linear-gradient(
            135deg,
            #e82a33,
            #c90f18
        );

    box-shadow: 0 10px 22px rgba(215, 25, 32, 0.25);
    transition: all 0.3s ease;
}

.faq-contact-btn:hover,
.faq-contact-btn:focus {
    color: #ffffff;
    text-decoration: none;
    transform: translateY(-2px);

    background:
        linear-gradient(
            135deg,
            #c90f18,
            #970a10
        );
}

.faq-contact-btn i {
    transition: transform 0.3s ease;
}

.faq-contact-btn:hover i {
    transform: translateX(4px);
}

/* Decoration */

.faq-info-decoration {
    position: absolute;
    right: -65px;
    bottom: -65px;
    width: 185px;
    height: 185px;
    border: 30px solid rgba(215, 25, 32, 0.10);
    border-radius: 50%;
}

/* ==========================================
   ACCORDION WRAPPER
========================================== */

.faq-accordion-wrapper {
    padding-left: 20px;
}

.faq-accordion-wrapper .accordion {
    display: grid;
    gap: 14px;
}

/* FAQ Item */

.faq-item {
    overflow: hidden;
    border: 1px solid rgba(20, 20, 20, 0.09) !important;
    border-radius: 13px !important;
    background: #ffffff;
    box-shadow: 0 9px 26px rgba(20, 20, 20, 0.065);
    transition:
        border-color 0.3s ease,
        box-shadow 0.3s ease,
        transform 0.3s ease;
}

.faq-item:hover {
    transform: translateY(-2px);
    border-color: rgba(215, 25, 32, 0.22) !important;
    box-shadow: 0 14px 32px rgba(20, 20, 20, 0.09);
}

/* Accordion Button */

.faq-item .accordion-button {
    position: relative;
    gap: 16px;
    padding: 19px 56px 19px 20px;
    color: #202020;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.55;
    border: 0;
    background: #ffffff;
    box-shadow: none;
}

.faq-item .accordion-button:not(.collapsed) {
    color: #d71920;

    background:
        linear-gradient(
            100deg,
            #ffffff 0%,
            #fff7f7 100%
        );

    box-shadow: none;
}

/* Remove Bootstrap default arrow */

.faq-item .accordion-button::after {
    position: absolute;
    top: 50%;
    right: 19px;
    width: 32px;
    height: 32px;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #333333;
    font-family: FontAwesome;
    font-size: 12px;
    content: "\f067";
    border: 1px solid #dddddd;
    border-radius: 50%;
    background-image: none;
    background-color: #f7f7f7;
    transform: translateY(-50%);
    transition: all 0.3s ease;
}

.faq-item .accordion-button:not(.collapsed)::after {
    color: #ffffff;
    content: "\f068";
    border-color: #d71920;
    background-color: #d71920;
    transform: translateY(-50%) rotate(0deg);
}

/* Number */

.faq-question-number {
    flex: 0 0 39px;
    width: 39px;
    height: 39px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #d71920;
    font-size: 11px;
    font-weight: 800;
    border: 1px solid rgba(215, 25, 32, 0.17);
    border-radius: 10px;
    background: #fff2f3;
}

.faq-item .accordion-button:not(.collapsed)
.faq-question-number {
    color: #ffffff;
    border-color: #d71920;

    background:
        linear-gradient(
            135deg,
            #eb3039,
            #d71920 55%,
            #a90c13
        );
}

/* Answer */

.faq-item .accordion-body {
    padding: 3px 64px 22px 75px;
    color: #666666;
    font-size: 14px;
    line-height: 1.8;

    background:
        linear-gradient(
            100deg,
            #ffffff,
            #fff9f9
        );
}

/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width: 991px) {
    .upsc-faq-section {
        padding: 65px 0;
    }

    .faq-section-heading h2 {
        font-size: 38px;
    }

    .faq-info-card {
        margin-bottom: 30px;
    }

    .faq-accordion-wrapper {
        padding-left: 0;
    }
}

@media (max-width: 767px) {
    .upsc-faq-section {
        padding: 55px 0;
    }

    .faq-section-heading {
        margin-bottom: 34px;
    }

    .faq-section-heading h2 {
        font-size: 31px;
    }

    .faq-section-heading p {
        font-size: 14px;
        line-height: 1.7;
    }

    .faq-info-card {
        padding: 30px 24px;
        border-radius: 17px;
    }

    .faq-info-card h3 {
        font-size: 22px;
    }

    .faq-item .accordion-button {
        gap: 12px;
        padding: 16px 52px 16px 15px;
        font-size: 14px;
    }

    .faq-question-number {
        flex-basis: 35px;
        width: 35px;
        height: 35px;
    }

    .faq-item .accordion-button::after {
        right: 13px;
        width: 30px;
        height: 30px;
    }

    .faq-item .accordion-body {
        padding: 2px 20px 20px 62px;
        font-size: 13px;
        line-height: 1.75;
    }
}

@media (max-width: 480px) {
    .faq-small-title::before,
    .faq-small-title::after {
        width: 19px;
        margin-right: 5px;
        margin-left: 5px;
    }

    .faq-section-heading h2 {
        font-size: 27px;
    }

    .faq-item .accordion-button {
        align-items: flex-start;
        padding-right: 48px;
    }

    .faq-item .accordion-body {
        padding: 3px 17px 20px;
    }
}


/* ==========================================
   LATEST ARTICLES AND CURRENT AFFAIRS
========================================== */

.latest-updates-section {
	position: relative;
	overflow: hidden;
	padding: 30px 0;

	background:
		linear-gradient(
			90deg,
			rgba(20, 20, 20, 0.025) 1px,
			transparent 1px
		),
		linear-gradient(
			rgba(20, 20, 20, 0.025) 1px,
			transparent 1px
		),
		radial-gradient(
			circle at 88% 15%,
			rgba(215, 25, 32, 0.08),
			transparent 24%
		),
		linear-gradient(
			125deg,
			#eeeeee 0%,
			#f8f8f8 35%,
			#ffffff 65%,
			#f3f3f3 100%
		);

	background-size:
		36px 36px,
		36px 36px,
		auto,
		auto;
}

.latest-updates-section::before {
	content: "";
	position: absolute;
	top: -110px;
	left: -100px;
	width: 280px;
	height: 280px;
	border: 45px solid rgba(20, 20, 20, 0.035);
	border-radius: 50%;
	pointer-events: none;
}

.latest-updates-section::after {
	content: "";
	position: absolute;
	right: -100px;
	bottom: -135px;
	width: 290px;
	height: 290px;
	border-radius: 55px;

	background:
		linear-gradient(
			145deg,
			rgba(215, 25, 32, 0.09),
			rgba(215, 25, 32, 0.01)
		);

	transform: rotate(32deg);
	pointer-events: none;
}

.latest-updates-section .container {
	position: relative;
	z-index: 2;
}

/* ==========================================
   SECTION HEADING
========================================== */

.latest-updates-heading {
	max-width: 860px;
	margin: 0 auto 44px;
	text-align: center;
}

.latest-updates-label {
	display: inline-block;
	margin-bottom: 11px;
	color: #d71920;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.latest-updates-label::before,
.latest-updates-label::after {
	content: "";
	display: inline-block;
	width: 32px;
	height: 1px;
	margin: 0 9px 4px;
	background: #d71920;
}

.latest-updates-heading h2 {
	margin: 0 0 15px;
	color: #151515;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 42px;
	font-weight: 700;
	line-height: 1.2;
}

.latest-updates-heading h2 span {
	color: #d71920;
}

.latest-updates-heading p {
	max-width: 720px;
	margin: 0 auto;
	color: #656565;
	font-size: 15px;
	line-height: 1.75;
}

/* ==========================================
   ARTICLES PANEL
========================================== */

.latest-articles-panel {
	height: 100%;
	padding: 20px;
	border: 1px solid rgba(20, 20, 20, 0.09);
	border-radius: 20px;

	background:
		linear-gradient(
			145deg,
			rgba(255, 255, 255, 0.97),
			rgba(247, 247, 247, 0.94)
		);

	box-shadow:
		0 18px 45px rgba(20, 20, 20, 0.09),
		inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

/* Language columns */

.updates-language-column {
	height: 100%;
	padding: 5px 14px 5px 5px;
}

.english-column {
	padding-right: 5px;
	padding-left: 14px;
	border-left: 1px solid #e5e5e5;
}

.updates-column-heading {
	display: flex;
	align-items: center;
	gap: 11px;
	margin-bottom: 18px;
	padding-bottom: 15px;
	border-bottom: 1px solid #e7e7e7;
}

.updates-language-icon {
	flex: 0 0 47px;
	width: 47px;
	height: 47px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	font-size: 15px;
	font-weight: 800;
	border-radius: 13px;
	box-shadow: 0 9px 20px rgba(20, 20, 20, 0.14);
}

.hindi-icon {
	background:
		linear-gradient(
			135deg,
			#e82a33,
			#c90f18
		);
}

.english-icon {
	background:
		linear-gradient(
			135deg,
			#303030,
			#101010
		);
}

.updates-column-heading > div:nth-child(2) {
	min-width: 0;
}

.updates-column-heading > div:nth-child(2) span {
	display: block;
	margin-bottom: 2px;
	color: #999999;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.updates-column-heading h3 {
	margin: 0;
	color: #191919;
	font-size: 19px;
	font-weight: 700;
}

.updates-view-link {
	margin-left: auto;
	color: #d71920;
	font-size: 10px;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
}

.updates-view-link:hover,
.updates-view-link:focus {
	color: #9f0c13;
	text-decoration: none;
}

.updates-view-link i {
	margin-left: 3px;
}

/* Scrollable list */

.latest-updates-list {
	max-height: 540px;
	overflow-y: auto;
	padding-right: 7px;
}

.latest-updates-list::-webkit-scrollbar {
	width: 5px;
}

.latest-updates-list::-webkit-scrollbar-track {
	border-radius: 10px;
	background: #eeeeee;
}

.latest-updates-list::-webkit-scrollbar-thumb {
	border-radius: 10px;
	background: #c5c5c5;
}

.latest-updates-list::-webkit-scrollbar-thumb:hover {
	background: #d71920;
}

/* Article item */

.latest-update-item {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 11px;
	padding: 15px 13px;
	border: 1px solid #ececec;
	border-radius: 11px;
	background: #ffffff;
	transition:
		transform 0.3s ease,
		border-color 0.3s ease,
		box-shadow 0.3s ease;
}

.latest-update-item:last-child {
	margin-bottom: 0;
}

.latest-update-item:hover {
	transform: translateX(4px);
	border-color: rgba(215, 25, 32, 0.23);
	box-shadow: 0 10px 24px rgba(20, 20, 20, 0.08);
}

.latest-update-icon {
	flex: 0 0 35px;
	width: 35px;
	height: 35px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #d71920;
	font-size: 13px;
	border-radius: 9px;
	background: #fff0f1;
}

.latest-update-content {
	flex: 1;
	min-width: 0;
}

.latest-update-content h4 {
	margin: 0 0 8px;
	padding-right: 8px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.55;
}

.latest-update-content h4 a {
	display: -webkit-box;
	overflow: hidden;
	color: #202020;
	text-decoration: none;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.latest-update-content h4 a:hover {
	color: #d71920;
}

.latest-update-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px 13px;
	color: #888888;
	font-size: 9px;
}

.latest-update-meta a,
.latest-update-meta span {
	display: inline-flex;
	align-items: center;
	gap: 5px;
}

.latest-update-meta a {
	color: #d71920;
	font-weight: 600;
	text-decoration: none;
}

.latest-update-meta i {
	font-size: 9px;
}

.latest-update-arrow {
	flex: 0 0 27px;
	width: 27px;
	height: 27px;
	margin-top: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #777777;
	border: 1px solid #dddddd;
	border-radius: 50%;
	background: #f8f8f8;
	text-decoration: none;
	transition: all 0.3s ease;
}

.latest-update-item:hover .latest-update-arrow {
	color: #ffffff;
	border-color: #d71920;
	background: #d71920;
}

/* Quiz */

.latest-update-title-row {
	display: flex;
	align-items: flex-start;
	gap: 8px;
}

.latest-update-title-row h4 {
	flex: 1;
}

.start-quiz-btn {
	flex: 0 0 auto;
	padding: 5px 8px;
	color: #ffffff !important;
	font-size: 8px;
	font-weight: 700;
	border-radius: 4px;
	background: #d71920;
	text-decoration: none;
	white-space: nowrap;
}

.start-quiz-btn:hover {
	color: #ffffff !important;
	background: #a80d14;
}

/* ==========================================
   MAGAZINE CARD
========================================== */

.current-affairs-card {
	position: relative;
	overflow: hidden;
	height: 100%;
	padding: 19px;
	border-radius: 20px;

	background:
		radial-gradient(
			circle at 90% 8%,
			rgba(255, 255, 255, 0.10),
			transparent 25%
		),
		linear-gradient(
			150deg,
			#292929 0%,
			#161616 55%,
			#0a0a0a 100%
		);

	box-shadow: 0 20px 48px rgba(20, 20, 20, 0.22);
}

.current-affairs-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 5px;

	background:
		linear-gradient(
			90deg,
			#8f090f,
			#d71920,
			#f0555c
		);
}

.current-affairs-card::after {
	content: "";
	position: absolute;
	right: -70px;
	bottom: -70px;
	width: 190px;
	height: 190px;
	border: 30px solid rgba(215, 25, 32, 0.10);
	border-radius: 50%;
	pointer-events: none;
}

/* Magazine header */

.magazine-card-header {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	margin-bottom: 17px;
	padding: 5px 4px 0;
}

.magazine-card-header span {
	display: block;
	margin-bottom: 3px;
	color: #e15c63;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 1.2px;
	text-transform: uppercase;
}

.magazine-card-header h3 {
	margin: 0;
	color: #ffffff;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
}

.magazine-header-icon {
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	font-size: 18px;
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 13px;
	background: #d71920;
}

/* Cover */

.magazine-cover-link {
	position: relative;
	z-index: 2;
	display: block;
	overflow: hidden;
	border-radius: 13px;
	background: #ffffff;
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.32);
}

.magazine-cover-image {
	display: block;
	width: 100%;
	height: 355px;
	object-fit: cover;
	object-position: top center;
	transition: transform 0.45s ease;
}

.magazine-cover-overlay {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	color: #ffffff;
	font-size: 12px;
	font-weight: 700;
	background: rgba(0, 0, 0, 0.62);
	opacity: 0;
	transition: opacity 0.35s ease;
}

.magazine-cover-link:hover .magazine-cover-image {
	transform: scale(1.035);
}

.magazine-cover-link:hover .magazine-cover-overlay {
	opacity: 1;
}

/* Magazine details */

.magazine-content {
	position: relative;
	z-index: 2;
	padding: 20px 4px 4px;
}

.magazine-content > p {
	margin: 0 0 15px;
	color: #cccccc;
	font-size: 12px;
	line-height: 1.7;
}

.magazine-content ul {
	margin: 0 0 18px;
	padding: 0;
	list-style: none;
}

.magazine-content li {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 9px;
	color: #eeeeee;
	font-size: 11px;
}

.magazine-content li i {
	flex: 0 0 20px;
	width: 20px;
	height: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	font-size: 8px;
	border-radius: 50%;
	background: #d71920;
}

.magazine-read-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-height: 44px;
	padding: 0 18px;
	color: #ffffff;
	font-size: 11px;
	font-weight: 700;
	border-radius: 5px;

	background:
		linear-gradient(
			135deg,
			#e92831,
			#bd0d16
		);

	box-shadow: 0 9px 20px rgba(215, 25, 32, 0.24);
	text-decoration: none;
	transition: all 0.3s ease;
}

.magazine-read-btn:hover,
.magazine-read-btn:focus {
	color: #ffffff;
	text-decoration: none;
	transform: translateY(-2px);
	background: #a80d14;
}

.magazine-read-btn i {
	transition: transform 0.3s ease;
}

.magazine-read-btn:hover i {
	transform: translateX(4px);
}

/* Empty magazine */

.magazine-empty-state {
	position: relative;
	z-index: 2;
	padding: 80px 20px;
	color: #cccccc;
	text-align: center;
	border: 1px dashed rgba(255, 255, 255, 0.18);
	border-radius: 14px;
}

.magazine-empty-state i {
	display: block;
	margin-bottom: 14px;
	color: #d71920;
	font-size: 40px;
}

/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width: 991px) {
	.latest-updates-section {
		padding: 65px 0;
	}

	.latest-updates-heading h2 {
		font-size: 37px;
	}

	.current-affairs-card {
		height: auto;
		margin-top: 28px;
	}

	.magazine-cover-image {
		height: auto;
		max-height: 520px;
		object-fit: contain;
	}
}

@media (max-width: 767px) {
	.latest-updates-section {
		padding: 52px 0;
	}

	.latest-updates-heading {
		margin-bottom: 32px;
	}

	.latest-updates-heading h2 {
		font-size: 30px;
	}

	.latest-updates-heading p {
		font-size: 14px;
	}

	.latest-articles-panel {
		padding: 14px;
		border-radius: 16px;
	}

	.updates-language-column,
	.english-column {
		padding: 5px;
	}

	.english-column {
		margin-top: 28px;
		padding-top: 25px;
		border-top: 1px solid #e4e4e4;
		border-left: 0;
	}

	.latest-updates-list {
		max-height: 475px;
	}

	.current-affairs-card {
		border-radius: 16px;
	}
}

@media (max-width: 480px) {
	.latest-updates-label::before,
	.latest-updates-label::after {
		width: 19px;
		margin-right: 5px;
		margin-left: 5px;
	}

	.latest-updates-heading h2 {
		font-size: 27px;
	}

	.updates-column-heading {
		align-items: flex-start;
		flex-wrap: wrap;
	}

	.updates-view-link {
		margin-top: 5px;
	}

	.latest-update-item {
		gap: 9px;
		padding: 13px 10px;
	}

	.latest-update-icon {
		flex-basis: 31px;
		width: 31px;
		height: 31px;
	}

	.latest-update-arrow {
		display: none;
	}

	.latest-update-title-row {
		display: block;
	}

	.start-quiz-btn {
		display: inline-block;
		margin-bottom: 7px;
	}
}


/* ==========================================
   YOUTUBE VIDEOS SECTION
========================================== */

.youtube-videos-section {
	position: relative;
	overflow: hidden;
	padding: 30px 0;

	background:
		radial-gradient(
			circle at 10% 15%,
			rgba(215, 25, 32, 0.18),
			transparent 25%
		),
		radial-gradient(
			circle at 90% 85%,
			rgba(215, 25, 32, 0.12),
			transparent 27%
		),
		linear-gradient(
			135deg,
			#191919 0%,
			#101010 48%,
			#070707 100%
		);
}

.youtube-videos-section::before {
	content: "";
	position: absolute;
	top: -160px;
	right: -140px;
	width: 380px;
	height: 380px;
	border: 65px solid rgba(255, 255, 255, 0.025);
	border-radius: 50%;
	pointer-events: none;
}

.youtube-videos-section::after {
	content: "";
	position: absolute;
	bottom: -155px;
	left: -120px;
	width: 320px;
	height: 320px;
	border-radius: 60px;

	background:
		linear-gradient(
			145deg,
			rgba(215, 25, 32, 0.15),
			rgba(215, 25, 32, 0.01)
		);

	transform: rotate(35deg);
	pointer-events: none;
}

.youtube-videos-section .container {
	position: relative;
	z-index: 2;
}

/* Heading */

.youtube-section-heading {
	max-width: 840px;
	margin: 0 auto 45px;
	text-align: center;
}

.youtube-small-title {
	display: inline-block;
	margin-bottom: 11px;
	color: #f15b62;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.youtube-small-title::before,
.youtube-small-title::after {
	content: "";
	display: inline-block;
	width: 33px;
	height: 1px;
	margin: 0 9px 4px;
	background: #d71920;
}

.youtube-section-heading h2 {
	margin: 0 0 16px;
	color: #ffffff;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 42px;
	font-weight: 700;
	line-height: 1.2;
}

.youtube-section-heading h2 span {
	color: #ed3a43;
}

.youtube-section-heading p {
	max-width: 720px;
	margin: 0 auto;
	color: #bfbfbf;
	font-size: 15px;
	line-height: 1.8;
}

/* Carousel wrapper */

.youtube-carousel-wrapper {
	position: relative;
	padding: 17px 12px 32px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 22px;

	background:
		linear-gradient(
			145deg,
			rgba(255, 255, 255, 0.055),
			rgba(255, 255, 255, 0.018)
		);

	box-shadow:
		0 25px 60px rgba(0, 0, 0, 0.35),
		inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.youtube-slide {
	padding: 12px;
}

/* Video card */

.youtube-video-card {
	position: relative;
	overflow: hidden;
	height: 100%;
	border: 1px solid rgba(255, 255, 255, 0.09);
	border-radius: 17px;
	background: #ffffff;
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.24);
	transition:
		transform 0.35s ease,
		box-shadow 0.35s ease,
		border-color 0.35s ease;
}

.youtube-video-card:hover {
	transform: translateY(-8px);
	border-color: rgba(215, 25, 32, 0.45);
	box-shadow: 0 23px 45px rgba(0, 0, 0, 0.34);
}

/* Thumbnail */

.youtube-thumbnail {
	position: relative;
	display: block;
	height: 210px;
	overflow: hidden;
	background: #151515;
}

.youtube-thumbnail img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.45s ease;
}

.youtube-video-card:hover .youtube-thumbnail img {
	transform: scale(1.06);
}

.youtube-thumbnail-overlay {
	position: absolute;
	inset: 0;
	z-index: 1;

	background:
		linear-gradient(
			to top,
			rgba(0, 0, 0, 0.72) 0%,
			rgba(0, 0, 0, 0.08) 58%,
			transparent 100%
		);
}

/* Play button */

.youtube-play-button {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 3;
	width: 62px;
	height: 62px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	font-size: 21px;
	border: 4px solid rgba(255, 255, 255, 0.75);
	border-radius: 50%;
	background: #d71920;
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.30);
	transform: translate(-50%, -50%);
	transition: all 0.35s ease;
}

.youtube-play-button i {
	margin-left: 4px;
}

.youtube-video-card:hover .youtube-play-button {
	border-color: #ffffff;
	transform: translate(-50%, -50%) scale(1.10);
	background: #b90d15;
}

/* Duration */

.youtube-video-duration {
	position: absolute;
	right: 12px;
	bottom: 11px;
	z-index: 3;
	padding: 5px 8px;
	color: #ffffff;
	font-size: 10px;
	font-weight: 700;
	border-radius: 4px;
	background: rgba(0, 0, 0, 0.80);
}

/* Card content */

.youtube-card-content {
	padding: 21px 20px 18px;
}

.youtube-video-category {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 10px;
	color: #d71920;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.youtube-card-content h3 {
	min-height: 54px;
	margin: 0 0 10px;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.5;
}

.youtube-card-content h3 a {
	display: -webkit-box;
	overflow: hidden;
	color: #191919;
	text-decoration: none;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.youtube-card-content h3 a:hover {
	color: #d71920;
}

.youtube-card-content > p {
	display: -webkit-box;
	overflow: hidden;
	min-height: 66px;
	margin: 0 0 17px;
	color: #6d6d6d;
	font-size: 12px;
	line-height: 1.75;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}

/* Footer */

.youtube-card-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding-top: 14px;
	border-top: 1px solid #eeeeee;
}

.youtube-card-footer > span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #888888;
	font-size: 10px;
}

.youtube-card-footer > span i {
	color: #d71920;
}

.youtube-card-footer > a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #d71920;
	font-size: 10px;
	font-weight: 700;
	text-decoration: none;
}

.youtube-card-footer > a i {
	transition: transform 0.3s ease;
}

.youtube-card-footer > a:hover i {
	transform: translateX(4px);
}

/* ==========================================
   OWL CONTROLS
========================================== */

#youtube-owl-carousel .owl-nav {
	margin-top: 26px;
	text-align: center;
}

#youtube-owl-carousel .owl-nav .owl-prev,
#youtube-owl-carousel .owl-nav .owl-next {
	width: 45px;
	height: 45px;
	margin: 0 5px;
	color: #ffffff;
	font-size: 21px;
	line-height: 40px;
	border: 1px solid rgba(255, 255, 255, 0.17);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.06);
	transition: all 0.3s ease;
}

#youtube-owl-carousel .owl-nav .owl-prev:hover,
#youtube-owl-carousel .owl-nav .owl-next:hover {
	color: #ffffff;
	border-color: #d71920;
	background: #d71920;
	transform: translateY(-2px);
}

/* Dots */

#youtube-owl-carousel .owl-dots {
	margin-top: 20px;
	text-align: center;
}

#youtube-owl-carousel .owl-dot {
	display: inline-block;
}

#youtube-owl-carousel .owl-dot span {
	display: block;
	width: 8px;
	height: 8px;
	margin: 0 4px;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.25);
	transition: all 0.3s ease;
}

#youtube-owl-carousel .owl-dot.active span {
	width: 27px;
	background: #d71920;
}

/* Bottom button */

.youtube-bottom-action {
	margin-top: 35px;
	text-align: center;
}

.youtube-channel-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 49px;
	padding: 0 23px;
	color: #ffffff;
	font-size: 12px;
	font-weight: 700;
	border: 1px solid #d71920;
	border-radius: 6px;

	background:
		linear-gradient(
			135deg,
			#e92a33,
			#bd0d16
		);

	box-shadow: 0 12px 26px rgba(215, 25, 32, 0.26);
	text-decoration: none;
	transition: all 0.3s ease;
}

.youtube-channel-btn:hover,
.youtube-channel-btn:focus {
	color: #ffffff;
	text-decoration: none;
	transform: translateY(-2px);
	background: #a80c13;
}

.youtube-channel-btn .fa-youtube-play {
	font-size: 18px;
}

.youtube-channel-btn .fa-arrow-right {
	transition: transform 0.3s ease;
}

.youtube-channel-btn:hover .fa-arrow-right {
	transform: translateX(4px);
}

/* Responsive */

@media (max-width: 991px) {
	.youtube-videos-section {
		padding: 65px 0;
	}

	.youtube-section-heading h2 {
		font-size: 37px;
	}

	.youtube-thumbnail {
		height: 225px;
	}
}

@media (max-width: 767px) {
	.youtube-videos-section {
		padding: 52px 0;
	}

	.youtube-section-heading {
		margin-bottom: 32px;
	}

	.youtube-section-heading h2 {
		font-size: 30px;
	}

	.youtube-section-heading p {
		font-size: 14px;
		line-height: 1.7;
	}

	.youtube-carousel-wrapper {
		padding: 12px 4px 27px;
		border-radius: 16px;
	}

	.youtube-thumbnail {
		height: 230px;
	}
}

@media (max-width: 480px) {
	.youtube-small-title::before,
	.youtube-small-title::after {
		width: 19px;
		margin-right: 5px;
		margin-left: 5px;
	}

	.youtube-section-heading h2 {
		font-size: 27px;
	}

	.youtube-thumbnail {
		height: 205px;
	}

	.youtube-card-content {
		padding: 19px 17px 17px;
	}

	.youtube-card-footer {
		align-items: flex-start;
		flex-direction: column;
	}
}

/* =====================================================
   COURSE CATEGORY SECTION
   Distinct slate-blue background with red highlights
===================================================== */

.course-category-section {
    position: relative;
    overflow: hidden;
    padding: 55px 20px;

    background:
        radial-gradient(
            circle at 8% 18%,
            rgba(255, 255, 255, 0.08),
            transparent 22%
        ),
        radial-gradient(
            circle at 90% 82%,
            rgba(215, 25, 32, 0.17),
            transparent 25%
        ),
        linear-gradient(
            125deg,
            #1d2633 0%,
            #263446 42%,
            #202b3a 72%,
            #151d28 100%
        );
}

/* Subtle diagonal pattern */

.course-category-section::before {
    content: "";
    position: absolute;
    inset: 0;

    background-image:
        repeating-linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.018) 0,
            rgba(255, 255, 255, 0.018) 1px,
            transparent 1px,
            transparent 24px
        );

    pointer-events: none;
}

/* Decorative red shape */

.course-category-section::after {
    content: "";
    position: absolute;
    right: -130px;
    top: -145px;
    width: 350px;
    height: 350px;
    border: 55px solid rgba(215, 25, 32, 0.09);
    border-radius: 50%;
    pointer-events: none;
}

.course-category-container {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
}

/* =====================================================
   HEADING
===================================================== */

.course-category-heading {
    max-width: 800px;
    margin: 0 auto 34px;
    text-align: center;
}

.course-category-subtitle {
    display: inline-block;
    margin-bottom: 9px;
    color: #ff7279;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.course-category-subtitle::before,
.course-category-subtitle::after {
    content: "";
    display: inline-block;
    width: 28px;
    height: 1px;
    margin: 0 8px 4px;
    background: #e43a43;
}

.course-category-heading h2 {
    margin: 0 0 13px;
    color: #ffffff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 38px;
    font-weight: 700;
    line-height: 1.2;
}

.course-category-heading h2 span {
    color: #ff5b63;
}

.course-category-heading p {
    max-width: 690px;
    margin: 0 auto;
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.75;
}

/* =====================================================
   GRID
   5 cards per row on large screens
===================================================== */

.course-category-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 16px;
}

/* Centre the final four cards in second row */

.course-category-grid .course-category-card:nth-child(6) {
    grid-column: 1;
}

/* =====================================================
   CARD
===================================================== */

.course-category-card {
    position: relative;
    display: flex;
    min-height: 150px;
    padding: 28px 14px 17px;
    overflow: hidden;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    color: #1b2430;
    text-align: center;
    text-decoration: none;

    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 15px;

    background:
        linear-gradient(
            150deg,
            #ffffff 0%,
            #f8fafc 60%,
            #eaf0f5 100%
        );

    box-shadow:
        0 12px 28px rgba(5, 12, 20, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.95);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease,
        background 0.3s ease;
}

/* Top animated red line */

.course-category-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 0;
    height: 4px;
    transform: translateX(-50%);

    background:
        linear-gradient(
            90deg,
            #9d0c13,
            #d71920,
            #ff656d
        );

    transition: width 0.3s ease;
}

/* Decorative card circle */

.course-category-card::after {
    content: "";
    position: absolute;
    right: -45px;
    bottom: -55px;
    width: 115px;
    height: 115px;
    border-radius: 50%;
    background: rgba(39, 55, 73, 0.045);
    transition: transform 0.35s ease;
}

.course-category-card:hover,
.course-category-card:focus {
    color: #17202b;
    text-decoration: none;
    transform: translateY(-7px);
    border-color: rgba(255, 91, 99, 0.55);

    background:
        linear-gradient(
            145deg,
            #ffffff 0%,
            #fffafa 55%,
            #ffecef 100%
        );

    box-shadow:
        0 20px 38px rgba(4, 10, 18, 0.31),
        0 7px 20px rgba(215, 25, 32, 0.10);
}

.course-category-card:hover::before {
    width: 100%;
}

.course-category-card:hover::after {
    transform: scale(1.25);
}

/* =====================================================
   OFFER LABEL
===================================================== */

.course-offer-label {
    position: absolute;
    top: 11px;
    right: 10px;
    left: 10px;
    z-index: 2;
    overflow: hidden;

    color: #bd1119;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 0.7px;
    line-height: 1.2;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

/* =====================================================
   ICON
===================================================== */

.course-icon-box {
    position: relative;
    z-index: 2;
    width: 57px;
    height: 57px;
    margin: 10px 0 13px;
    display: flex;
    align-items: center;
    justify-content: center;

    color: #ffffff;
    font-size: 22px;

    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 15px;

    background:
        linear-gradient(
            145deg,
            #35475d 0%,
            #263548 55%,
            #172231 100%
        );

    box-shadow:
        0 9px 20px rgba(15, 27, 42, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.14);

    transition:
        transform 0.3s ease,
        background 0.3s ease,
        box-shadow 0.3s ease;
}

.course-category-card:hover .course-icon-box {
    transform: translateY(-3px) rotate(-4deg);

    background:
        linear-gradient(
            135deg,
            #ef3b44 0%,
            #d71920 55%,
            #9d0b12 100%
        );

    box-shadow: 0 11px 23px rgba(215, 25, 32, 0.28);
}

/* =====================================================
   TITLE
===================================================== */

.course-category-title {
    position: relative;
    z-index: 2;
    display: block;
    padding: 0 8px;

    color: #1d2733;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.35;
}

/* =====================================================
   ARROW
===================================================== */

.course-card-arrow {
    position: absolute;
    right: 10px;
    bottom: 10px;
    z-index: 3;

    width: 27px;
    height: 27px;
    display: flex;
    align-items: center;
    justify-content: center;

    color: #536172;
    font-size: 9px;

    border: 1px solid #d3dbe3;
    border-radius: 50%;
    background: #ffffff;

    transition:
        color 0.3s ease,
        border-color 0.3s ease,
        background 0.3s ease,
        transform 0.3s ease;
}

.course-category-card:hover .course-card-arrow {
    color: #ffffff;
    border-color: #d71920;
    background: #d71920;
    transform: translateX(3px);
}

/* =====================================================
   FEATURED FIRST CARD
===================================================== */

.featured-course-card {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.15);

    background:
        radial-gradient(
            circle at 85% 15%,
            rgba(255, 255, 255, 0.09),
            transparent 30%
        ),
        linear-gradient(
            145deg,
            #e02b34 0%,
            #c8131c 52%,
            #8f0b11 100%
        );

    box-shadow:
        0 16px 34px rgba(10, 18, 28, 0.32),
        0 8px 22px rgba(215, 25, 32, 0.20);
}

.featured-course-card:hover,
.featured-course-card:focus {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.32);

    background:
        radial-gradient(
            circle at 85% 15%,
            rgba(255, 255, 255, 0.12),
            transparent 30%
        ),
        linear-gradient(
            145deg,
            #ec3c45 0%,
            #d71920 52%,
            #9c0a11 100%
        );
}

.featured-course-card::before {
    background: #ffffff;
}

.featured-course-card::after {
    background: rgba(255, 255, 255, 0.08);
}

.featured-course-card .course-offer-label {
    color: rgba(255, 255, 255, 0.82);
}

.featured-course-card .course-category-title {
    color: #ffffff;
}

.featured-course-card .course-icon-box {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.20);

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.18),
            rgba(255, 255, 255, 0.07)
        );

    box-shadow: 0 9px 22px rgba(80, 0, 5, 0.25);
}

.featured-course-card:hover .course-icon-box {
    background:
        linear-gradient(
            145deg,
            #26374b,
            #101b29
        );
}

.featured-course-card .course-card-arrow {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.27);
    background: rgba(255, 255, 255, 0.10);
}

.featured-course-card:hover .course-card-arrow {
    color: #d71920;
    border-color: #ffffff;
    background: #ffffff;
}

/* =====================================================
   VIEW ALL BUTTON
===================================================== */

.course-category-action {
    margin-top: 30px;
    text-align: center;
}

.view-all-course-btn {
    display: inline-flex;
    min-height: 47px;
    padding: 0 23px;
    align-items: center;
    justify-content: center;
    gap: 10px;

    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;

    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 6px;

    background:
        linear-gradient(
            135deg,
            #e72c35,
            #bd0d16
        );

    box-shadow:
        0 11px 24px rgba(5, 12, 20, 0.25),
        0 7px 18px rgba(215, 25, 32, 0.20);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        background 0.3s ease;
}

.view-all-course-btn:hover,
.view-all-course-btn:focus {
    color: #ffffff;
    text-decoration: none;
    transform: translateY(-2px);

    background:
        linear-gradient(
            135deg,
            #ff434c,
            #d71920
        );

    box-shadow:
        0 15px 29px rgba(5, 12, 20, 0.30),
        0 9px 21px rgba(215, 25, 32, 0.25);
}

.view-all-course-btn i {
    transition: transform 0.3s ease;
}

.view-all-course-btn:hover i {
    transform: translateX(4px);
}

/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1199px) {
    .course-category-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .course-category-grid .course-category-card:nth-child(6) {
        grid-column: auto;
    }
}

/* =====================================================
   MOBILE
===================================================== */

/* Mobile: always show 2 cards per row */
@media (max-width: 767px) {
    .course-category-section {
        padding: 48px 10px;
    }

    .course-category-heading {
        margin-bottom: 28px;
    }

    .course-category-heading h2 {
        font-size: 28px;
    }

    .course-category-heading p {
        font-size: 13px;
        line-height: 1.65;
    }

    .course-category-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .course-category-card {
        width: 100%;
        min-width: 0;
        min-height: 138px;
        padding: 24px 8px 14px;
    }

    .course-offer-label {
        top: 9px;
        right: 6px;
        left: 6px;
        font-size: 7px;
        letter-spacing: 0.4px;
    }

    .course-icon-box {
        width: 48px;
        height: 48px;
        margin: 10px 0 10px;
        font-size: 19px;
        border-radius: 13px;
    }

    .course-category-title {
        padding: 0 4px;
        font-size: 12px;
        line-height: 1.35;
    }

    .course-card-arrow {
        right: 7px;
        bottom: 7px;
        width: 24px;
        height: 24px;
        font-size: 8px;
    }

    .course-category-action {
        margin-top: 25px;
    }
}

/* Small mobile: still keep 2 columns */
@media (max-width: 420px) {
    .course-category-section {
        padding-right: 8px;
        padding-left: 8px;
    }

    .course-category-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .course-category-card {
        min-height: 130px;
        padding: 23px 6px 13px;
    }

    .course-icon-box {
        width: 45px;
        height: 45px;
        font-size: 18px;
    }

    .course-category-title {
        font-size: 11px;
    }

    .course-card-arrow {
        width: 22px;
        height: 22px;
    }

    .view-all-course-btn {
        width: 100%;
        max-width: 280px;
    }
}


/* ==========================================
   SANSKRITI IAS APP SECTION
========================================== */

.sanskriti-app-section {
    position: relative;
    overflow: hidden;
    padding: 70px 0;

    background:
        radial-gradient(
            circle at 12% 18%,
            rgba(38, 192, 171, 0.15),
            transparent 25%
        ),
        radial-gradient(
            circle at 88% 82%,
            rgba(215, 25, 32, 0.10),
            transparent 24%
        ),
        linear-gradient(
            125deg,
            #eefaf8 0%,
            #ffffff 42%,
            #edf5f4 72%,
            #e8efef 100%
        );
}

.sanskriti-app-section::before {
    content: "";
    position: absolute;
    top: -150px;
    left: -125px;
    width: 350px;
    height: 350px;
    border: 55px solid rgba(17, 126, 111, 0.06);
    border-radius: 50%;
    pointer-events: none;
}

.sanskriti-app-section::after {
    content: "";
    position: absolute;
    right: -120px;
    bottom: -145px;
    width: 310px;
    height: 310px;
    border-radius: 55px;

    background:
        linear-gradient(
            145deg,
            rgba(215, 25, 32, 0.08),
            rgba(17, 126, 111, 0.03)
        );

    transform: rotate(32deg);
    pointer-events: none;
}

.sanskriti-app-section .container {
    position: relative;
    z-index: 2;
}

/* Main box */

.sanskriti-app-box {
    position: relative;
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    align-items: center;
    min-height: 470px;
    overflow: hidden;

    border: 1px solid rgba(23, 76, 69, 0.12);
    border-radius: 28px;

    background:
        radial-gradient(
            circle at 15% 20%,
            rgba(255, 255, 255, 0.10),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #1c3c3a 0%,
            #18302f 52%,
            #111e20 100%
        );

    box-shadow:
        0 25px 60px rgba(18, 45, 44, 0.22),
        0 8px 24px rgba(17, 126, 111, 0.10);
}

.sanskriti-app-box::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 48%;
    height: 100%;

    background:
        linear-gradient(
            120deg,
            transparent 0%,
            rgba(255, 255, 255, 0.035) 100%
        );

    pointer-events: none;
}

/* ==========================================
   PHONE VISUAL
========================================== */

.sanskriti-app-visual {
    position: relative;
    min-height: 470px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding: 35px 25px 0;
}

.app-phone-glow {
    position: absolute;
    top: 52%;
    left: 50%;
    width: 330px;
    height: 330px;
    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(39, 205, 181, 0.26) 0%,
            rgba(39, 205, 181, 0.09) 42%,
            transparent 70%
        );

    transform: translate(-50%, -50%);
    filter: blur(4px);
}

.sanskriti-app-mobile {
    position: relative;
    z-index: 2;
    display: block;
    max-width: 360px;
    width: 100%;
    max-height: 470px;
    object-fit: contain;
    object-position: bottom center;

    filter: drop-shadow(0 24px 30px rgba(0, 0, 0, 0.35));
}

/* Floating badges */

.app-floating-badge {
    position: absolute;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;

    color: #ffffff;
    font-size: 11px;
    font-weight: 700;

    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 30px;

    background: rgba(12, 25, 27, 0.77);
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.20);
    backdrop-filter: blur(7px);
}

.app-floating-badge i {
    color: #2bd0b7;
    font-size: 14px;
}

.app-floating-badge-one {
    top: 110px;
    left: 25px;
}

.app-floating-badge-two {
    right: 20px;
    bottom: 115px;
}

/* ==========================================
   CONTENT
========================================== */

.sanskriti-app-content {
    position: relative;
    z-index: 2;
    padding: 55px 55px 55px 35px;
}

.app-section-label {
    display: inline-block;
    margin-bottom: 13px;
    color: #48d8c1;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.8px;
    text-transform: uppercase;
}

.app-section-label::before {
    content: "";
    display: inline-block;
    width: 28px;
    height: 1px;
    margin-right: 9px;
    margin-bottom: 4px;
    background: #48d8c1;
}

.sanskriti-app-content h2 {
    max-width: 600px;
    margin: 0 0 13px;
    color: #ffffff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 40px;
    font-weight: 700;
    line-height: 1.2;
}

.sanskriti-app-content h2 span {
    display: block;
    color: #ff5c64;
}

.sanskriti-app-content h3 {
    margin: 0 0 15px;
    color: #e8f5f3;
    font-size: 20px;
    font-weight: 600;
}

.sanskriti-app-content > p {
    max-width: 610px;
    margin: 0 0 23px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.75;
}

/* Features */

.app-feature-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px 18px;
    margin-bottom: 27px;
}

.app-feature-item {
    display: flex;
    align-items: flex-start;
    gap: 9px;
}

.app-feature-item > span {
    flex: 0 0 23px;
    width: 23px;
    height: 23px;
    display: flex;
    align-items: center;
    justify-content: center;

    color: #ffffff;
    font-size: 8px;

    border-radius: 50%;

    background:
        linear-gradient(
            135deg,
            #45d7bf,
            #168f7e
        );

    box-shadow: 0 6px 14px rgba(38, 192, 171, 0.22);
}

.app-feature-item p {
    margin: 2px 0 0;
    color: #e1e8e7;
    font-size: 12px;
    line-height: 1.5;
}

/* Download area */

.app-download-area {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
}

.google-play-link {
    display: inline-block;
    transition: transform 0.3s ease;
}

.google-play-link:hover {
    transform: translateY(-2px);
}

.google-play-link img {
    display: block;
    width: 168px;
    max-width: 100%;
    height: auto;
}

.app-download-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 49px;
    padding: 0 21px;

    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;

    border: 1px solid #d71920;
    border-radius: 6px;

    background:
        linear-gradient(
            135deg,
            #ed3039,
            #bd0d16
        );

    box-shadow: 0 11px 24px rgba(215, 25, 32, 0.25);

    transition:
        transform 0.3s ease,
        background 0.3s ease,
        box-shadow 0.3s ease;
}

.app-download-btn:hover,
.app-download-btn:focus {
    color: #ffffff;
    text-decoration: none;
    transform: translateY(-2px);

    background:
        linear-gradient(
            135deg,
            #d71920,
            #920a10
        );

    box-shadow: 0 15px 29px rgba(215, 25, 32, 0.31);
}

.app-download-btn i {
    transition: transform 0.3s ease;
}

.app-download-btn:hover i {
    transform: translateX(4px);
}

.app-download-note {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-top: 15px !important;
    margin-bottom: 0 !important;

    color: rgba(255, 255, 255, 0.58) !important;
    font-size: 11px !important;
}

.app-download-note i {
    color: #48d8c1;
    font-size: 15px;
}

/* ==========================================
   TABLET
========================================== */

@media (max-width: 991px) {
    .sanskriti-app-section {
        padding: 60px 0;
    }

    .sanskriti-app-box {
        grid-template-columns: 1fr;
    }

    .sanskriti-app-visual {
        min-height: 410px;
        order: 2;
    }

    .sanskriti-app-content {
        order: 1;
        padding: 50px 45px 20px;
        text-align: center;
    }

    .sanskriti-app-content h2,
    .sanskriti-app-content > p {
        margin-right: auto;
        margin-left: auto;
    }

    .app-feature-list {
        max-width: 640px;
        margin-right: auto;
        margin-left: auto;
        text-align: left;
    }

    .app-download-area {
        justify-content: center;
    }

    .app-download-note {
        justify-content: center;
    }

    .app-floating-badge-one {
        left: 18%;
    }

    .app-floating-badge-two {
        right: 18%;
    }
}

/* ==========================================
   MOBILE
========================================== */

@media (max-width: 767px) {
    .sanskriti-app-section {
        padding: 48px 10px;
    }

    .sanskriti-app-box {
        border-radius: 20px;
    }

    .sanskriti-app-content {
        padding: 38px 20px 10px;
    }

    .sanskriti-app-content h2 {
        font-size: 30px;
    }

    .sanskriti-app-content h3 {
        font-size: 17px;
    }

    .sanskriti-app-content > p {
        font-size: 13px;
    }

    .app-feature-list {
        grid-template-columns: 1fr;
        max-width: 420px;
    }

    .sanskriti-app-visual {
        min-height: 350px;
        padding-top: 20px;
    }

    .sanskriti-app-mobile {
        max-width: 290px;
        max-height: 360px;
    }

    .app-phone-glow {
        width: 270px;
        height: 270px;
    }

    .app-floating-badge {
        padding: 8px 11px;
        font-size: 9px;
    }

    .app-floating-badge-one {
        top: 75px;
        left: 7px;
    }

    .app-floating-badge-two {
        right: 7px;
        bottom: 75px;
    }
}

/* ==========================================
   SMALL MOBILE
========================================== */

@media (max-width: 480px) {
    .sanskriti-app-content h2 {
        font-size: 27px;
    }

    .app-download-area {
        flex-direction: column;
    }

    .google-play-link img {
        width: 160px;
    }

    .app-download-btn {
        width: 100%;
        max-width: 270px;
    }

    .app-floating-badge {
        display: none;
    }

    .sanskriti-app-visual {
        min-height: 315px;
    }

    .sanskriti-app-mobile {
        max-width: 255px;
    }
}



/* Desktop: preserve existing 3-column grid */
@media (min-width: 768px) {
    .why-sanskriti-grid.swiper {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        overflow: visible;
    }

    .why-sanskriti-grid .swiper-wrapper {
        display: contents;
    }

    .why-sanskriti-grid .swiper-slide {
        width: auto !important;
        height: auto;
        margin-right: 0 !important;
    }

    .why-sanskriti-pagination {
        display: none;
    }
}

/* Mobile: convert cards into slider */
@media (max-width: 767px) {

    .why-sanskriti-section {
        padding: 45px 0;
        overflow: hidden;
    }

    .why-sanskriti-heading {
        padding: 0 16px;
        margin-bottom: 25px;
    }

    .why-sanskriti-heading h2 {
        font-size: 26px;
        line-height: 1.3;
    }

    .why-sanskriti-container {
        width: 100%;
    }

    .why-sanskriti-grid.swiper {
        display: block;
        width: 100%;
        overflow: hidden;
        padding: 10px 16px 45px;
        box-sizing: border-box;
    }

    .why-sanskriti-grid .swiper-wrapper {
        display: flex;
        align-items: stretch;
    }

    .why-sanskriti-grid .swiper-slide {
        flex-shrink: 0;
        width: 100%;
        height: auto;
        box-sizing: border-box;
        margin: 0;
    }

    .why-sanskriti-card {
        padding: 25px 18px;
        border-radius: 16px;
        min-height: 250px;
    }

    .why-card-content h3 {
        font-size: 16px;
        line-height: 1.5;
    }

    .why-card-content p {
        font-size: 13px;
        line-height: 1.8;
    }

    .why-sanskriti-pagination {
        bottom: 8px !important;
        text-align: center;
    }

    .why-sanskriti-pagination .swiper-pagination-bullet {
        width: 8px;
        height: 8px;
        background: #d8a0a0;
        opacity: 1;
    }

    .why-sanskriti-pagination .swiper-pagination-bullet-active {
        width: 24px;
        border-radius: 10px;
        background: #e50920;
    }

    .why-sanskriti-action {
        padding: 0 16px;
        margin-top: 15px;
    }
}


