/* @use "sass:math"; */

:root {
    --theme-color: #D3224D;
    --theme-color2: #FFEC40;
    --title-color: #081933;
    --title-color2: #00274C;
    --title-color3: #070E20;
    --title-color4: #13182B;
    --body-color: #506172;
    --smoke-color: #FFF6F8;
    --smoke-color2: #F8FAFE;
    --smoke-color3: #FCF6F1;
    --black-color: #081933;
    --black-color2: #202844;
    --th-border-color: #D3DBE2;
    --th-border-color2: #EEEFF2;
    --th-border-color3: rgba(87, 88, 95, 0.5);
    --th-border-color4: rgba(198, 201, 212, 0.5);
    --th-border-color7: #B7C2CC;
    --light-color: #C6C9D4;
    --gray-color: #EEF1F4;
    --gray-color2: #F4F3E6;
    --gray-color3: #57585F;
    --black-color3: #051311;
    --black-color4: #00110E;
    --black-color5: #22272E;
    --black-color6: #2D333D;
    --black-color7: #0E0E13;
    --black-color8: #070E20;
    --white-color: #ffffff;
    --yellow-color: #FFB539;
    --success-color: #28a745;
    --error-color: #dc3545;
    --th-border-color5: #49515C;
    --th-border-color6: #383D46;
    --title-font: 'Roboto', sans-serif;
    --subtitle-font: 'Roboto', sans-serif;
    --body-font: 'Roboto', sans-serif;
    --icon-font: "Font Awesome 6 Pro";
    --main-container: 1320px;
    --container-gutters: 24px;
    --section-space: 120px;
    --section-space-mobile: 80px;
    --section-title-space: 56px;
    --ripple-ani-duration: 5s;
    --th-body-background: #ffffff;
    --light-white: #f9f9f9
}

html,
body {
    scroll-behavior: auto !important
}

body {
    font-family: var(--body-font);
    font-size: 18px;
    font-weight: 400;
    color: var(--body-color);
    line-height: 32px;
    overflow-x: hidden;
    background: var(--th-body-background);
    -webkit-font-smoothing: antialiased;
    letter-spacing: .36px
}

body::-webkit-scrollbar {
    width: 10px;
    height: 10px;
    border-radius: 0px
}

body::-webkit-scrollbar-track {
    background: rgba(252, 0, 18, 0.1);
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    border-radius: 0px
}

body::-webkit-scrollbar-thumb {
    background-color: var(--theme-color);
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.3) 25%, transparent 20%, transparent 50%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0.3) 75%, transparent 75%, transparent);
    border-radius: 0px
}

iframe {
    border: none;
    width: 100%
}


button:focus,
a:focus,
a:active,
input,
input:hover,
input:focus,
input:active,
textarea,
textarea:hover,
textarea:focus,
textarea:active {
    outline: none
}

input:focus {
    outline: none;
    box-shadow: none
}

img:not([draggable]),
embed,
object,
video {
    max-width: 100%;
    height: auto
}

ul {
    list-style-type: disc
}

ol {
    list-style-type: decimal
}

table {
    margin: 0 0 1.5em;
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border: 1px solid var(--th-border-color)
}

th {
    font-weight: 700;
    color: var(--title-color)
}

td,
th {
    border: 1px solid var(--th-border-color);
    padding: 9px 12px
}

a {
    color: var(--theme-color);
    text-decoration: none;
    outline: 0;
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s
}

a:hover {
    color: var(--title-color)
}

a:active,
a:focus,
a:hover,
a:visited {
    text-decoration: none;
    outline: 0
}

button {
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s
}

img {
    border: none;
    max-width: 100%
}

pre {
    font-family: var(--body-font);
    background: #f5f5f5;
    color: #666;
    font-size: 14px;
    margin: 20px 0;
    overflow: auto;
    padding: 20px;
    white-space: pre-wrap;
    word-wrap: break-word
}


p:empty {
    display: none
}

p {
    font-family: var(--body-font);
    margin: 0 0 18px 0;
    color: var(--body-color);
    line-height: 1.75
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a,
p a,
span a {
    font-size: inherit;
    font-family: inherit;
    font-weight: inherit;
    line-height: inherit
}

.h1,
h1,
.h2,
h2,
.h3,
h3,
.h4,
h4,
.h5,
h5,
.h6,
h6 {
    font-family: var(--title-font);
    color: var(--title-color);
    text-transform: none;
    font-weight: 700;
    line-height: 1.4;
    margin: 0 0 15px 0
}

.h1,
h1 {
    font-size: 72px;
    line-height: 1.18
}

.h2,
h2 {
    font-size: 40px;
    line-height: 48px;
    letter-spacing: 0.8px
}

.h3,
h3 {
    font-size: 36px;
    line-height: 1.278
}

.h4,
h4 {
    font-size: 28px;
    line-height: 40px
}

.h5,
h5 {
    font-size: 24px;
    line-height: 36px
}

.h6,
h6 {
    font-size: 20px;
    line-height: 1.5
}

@media (max-width: 1399px) {

    .h1,
    h1 {
        font-size: 64px;
        line-height: 1.3
    }
}

@media (max-width: 1299px) {

    .h1,
    h1 {
        font-size: 60px
    }
}

@media (max-width: 1199px) {

    .h1,
    h1 {
        font-size: 55px;
        line-height: 1.3
    }

    .h2,
    h2 {
        font-size: 36px;
        line-height: 1.3
    }

    .h3,
    h3 {
        font-size: 30px
    }

    .h4,
    h4 {
        font-size: 24px
    }

    .h5,
    h5 {
        font-size: 20px
    }

    .h6,
    h6 {
        font-size: 16px
    }
}

@media (max-width: 767px) {

    .h1,
    h1 {
        font-size: 40px
    }

    .h2,
    h2 {
        font-size: 34px;
        line-height: 1.3
    }

    .h3,
    h3 {
        font-size: 26px
    }

    .h4,
    h4 {
        font-size: 22px
    }

    .h5,
    h5 {
        font-size: 18px
    }

    .h6,
    h6 {
        font-size: 16px
    }
}

@media (max-width: 575px) {

    .h1,
    h1 {
        font-size: 38px;
        line-height: 1.35
    }

    .h2,
    h2 {
        font-size: 28px
    }
}

@media (max-width: 375px) {

    .h1,
    h1 {
        font-size: 30px
    }
}

.cursor-follower {
    position: fixed;
    background: var(--title-color);
    border: 1px solid var(--title-color);
    width: 15px;
    height: 15px;
    border-radius: 100%;
    z-index: 999999;
    -webkit-transition: 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity, 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) background, 0.6s cubic-bezier(0.75, -1.27, 0.3, 2.33) -webkit-transform;
    transition: 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity, 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) background, 0.6s cubic-bezier(0.75, -1.27, 0.3, 2.33) -webkit-transform;
    transition: 0.6s cubic-bezier(0.75, -1.27, 0.3, 2.33) transform, 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity, 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) background;
    transition: 0.6s cubic-bezier(0.75, -1.27, 0.3, 2.33) transform, 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity, 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) background, 0.6s cubic-bezier(0.75, -1.27, 0.3, 2.33) -webkit-transform;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none;
    -webkit-transform: translate(2px, 2px);
    -ms-transform: translate(2px, 2px);
    transform: translate(2px, 2px);
    opacity: 1;
    mix-blend-mode: multiply
}

.cursor-follower.cursor-follower-big {
    -webkit-transform: translate(2px, 2px) scale(3);
    -ms-transform: translate(2px, 2px) scale(3);
    transform: translate(2px, 2px) scale(3)
}


.breadcumb-title {
    word-break: break-word
}

.gallery {
    margin-bottom: 1.5em;
    width: 100%
}


.blog-single.sticky {
    border-color: transparent;
    position: relative
}


.blog-single.sticky .blog-content:before {
    display: none
}


.blog-single.sticky:before {
    content: "\f0c1";
    position: absolute;
    font-family: var(--icon-font);
    font-size: 16px;
    font-weight: 500;
    opacity: 1;
    right: 0;
    top: 0;
    color: var(--white-color);
    background-color: var(--theme-color);
    z-index: 1;
    height: 44px;
    width: 44px;
    line-height: 44px;
    text-align: center;
    border-radius: 10px
}

@media (max-width: 767px) {

    
    .blog-single.sticky:before {
        border-radius: 0 10px 0 10px
    }
}


.blog-single.sticky::before {
    content: "\f08d"
}

.blog-details .blog-single:before {
    display: none
}

.blog-details .blog-single .blog-content {
    background-color: transparent
}


.blog-details .blog-single.sticky {
    background-color: transparent
}


.blog-details .blog-single.sticky:before {
    display: none
}

@media (max-width: 767px) {

    
    .blog-single.sticky:before {
        font-size: 14px;
        width: 40px;
        height: 40px;
        line-height: 40px
    }
}

@media (max-width: 1399px) {
    :root {
        --main-container: 1250px
    }
}

@media (min-width: 1370px) {
    .th-container2 {
        --main-container: 1698px
    }
}

@media (min-width: 1370px) {
    .th-container4 {
        --main-container: 1620px
    }
}

@media (min-width: 1922px) {
    .th-container2 {
        margin-left: auto;
        margin-right: auto
    }
}

@media only screen and (min-width: 1300px) {

    .container-xxl,
    .container-xl,
    .container-lg,
    .container-md,
    .container-sm,
    .container {
        max-width: calc(var(--main-container) + var(--container-gutters));
        padding-left: calc(var(--container-gutters) / 2);
        padding-right: calc(var(--container-gutters) / 2)
    }

    .container-xxl.px-0,
    .container-xl.px-0,
    .container-lg.px-0,
    .container-md.px-0,
    .container-sm.px-0,
    .container.px-0 {
        max-width: var(--main-container)
    }
}

@media only screen and (max-width: 1600px) {
    .container-fluid.px-0 {
        padding-left: 15px !important;
        padding-right: 15px !important
    }

    .container-fluid.px-0 .row {
        margin-left: 0 !important;
        margin-right: 0 !important
    }
}

@media (min-width: 1300px) {
    .row {
        --bs-gutter-x: 24px
    }
}

.gy-30 {
    --bs-gutter-y: 30px
}

.g-0 {
    --bs-gutter-y: 0;
    --bs-gutter-x: 0
}

.gx-0 {
    --bs-gutter-x: 0
}

.gy-40 {
    --bs-gutter-y: 40px
}

.gy-60 {
    --bs-gutter-y: 60px
}

@media (min-width: 1399px) {
    .gx-30 {
        --bs-gutter-x: 30px
    }
}

select,
.form-control,
.form-select,
textarea,
input {
    height: 58px;
    padding: 0 25px 0 25px;
    padding-right: 45px;
    border: 1px solid transparent;
    color: var(--title-color);
    background-color: var(--smoke-color2);
    font-size: 16px;
    width: 100%;
    font-family: var(--body-font);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

select:focus,
.form-control:focus,
.form-select:focus,
textarea:focus,
input:focus {
    outline: 0;
    box-shadow: none;
    border-color: var(--th-border-color);
    background-color: var(--smoke-color2)
}

select::-moz-placeholder,
.form-control::-moz-placeholder,
.form-select::-moz-placeholder,
textarea::-moz-placeholder,
input::-moz-placeholder {
    color: var(--title-color)
}

select::-webkit-input-placeholder,
.form-control::-webkit-input-placeholder,
.form-select::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
input::-webkit-input-placeholder {
    color: var(--title-color)
}

select:-ms-input-placeholder,
.form-control:-ms-input-placeholder,
.form-select:-ms-input-placeholder,
textarea:-ms-input-placeholder,
input:-ms-input-placeholder {
    color: var(--title-color)
}

select::-webkit-input-placeholder,
.form-control::-webkit-input-placeholder,
.form-select::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
input::-webkit-input-placeholder {
    color: var(--title-color)
}

select::-moz-placeholder,
.form-control::-moz-placeholder,
.form-select::-moz-placeholder,
textarea::-moz-placeholder,
input::-moz-placeholder {
    color: var(--title-color)
}

select:-ms-input-placeholder,
.form-control:-ms-input-placeholder,
.form-select:-ms-input-placeholder,
textarea:-ms-input-placeholder,
input:-ms-input-placeholder {
    color: var(--title-color)
}

select::-ms-input-placeholder,
.form-control::-ms-input-placeholder,
.form-select::-ms-input-placeholder,
textarea::-ms-input-placeholder,
input::-ms-input-placeholder {
    color: var(--title-color)
}

select::placeholder,
.form-control::placeholder,
.form-select::placeholder,
textarea::placeholder,
input::placeholder {
    color: var(--title-color)
}

input[type=date] {
    padding: 0 25px 0 25px;
    position: relative
}

input[type=date]::-webkit-calendar-picker-indicator {
    background: transparent;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    cursor: pointer
}

input[type=time] {
    padding: 0 30px;
    position: relative
}

input[type=time]::-webkit-calendar-picker-indicator {
    background: transparent;
    position: absolute;
    left: 0px;
    height: 100%;
    width: 100%;
    z-index: 1;
    cursor: pointer
}

.form-select,
select {
    display: block;
    width: 100%;
    line-height: 1.5;
    vertical-align: middle;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23B7C2CC' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3E%3C/svg%3E");
    background-position: right 26px center;
    background-repeat: no-repeat;
    background-size: 16px 12px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer
}

textarea.form-control,
textarea {
    min-height: 178px;
    padding-top: 16px;
    padding-bottom: 17px;
    border-radius: 5px
}

.form-group {
    margin-bottom: var(--bs-gutter-x);
    position: relative
}

.form-group>i {
    display: inline-block;
    position: absolute;
    right: 25px;
    top: 16px;
    font-size: 16px;
    color: var(--body-color)
}

.form-group.style-border textarea,
.form-group.style-border input {
    background: transparent;
    border: 1px solid #D3DBE2
}

.form-group.style-border textarea:active,
.form-group.style-border textarea:focus,
.form-group.style-border input:active,
.form-group.style-border input:focus {
    border-color: var(--theme-color)
}

.form-group.style-border select {
    background-color: transparent;
    border: 1px solid #D3DBE2
}

[class*="col-"].form-group>i {
    right: calc((var(--bs-gutter-x) / 2) + 25px)
}

option:checked,
option:focus,
option:hover {
    background-color: var(--theme-color);
    color: var(--white-color)
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0
}

input[type="number"] {
    -moz-appearance: textfield
}

input[type="checkbox"] {
    visibility: hidden;
    opacity: 0;
    display: inline-block;
    vertical-align: middle;
    width: 0;
    height: 0;
    display: none
}

input[type="checkbox"]:checked~label:before {
    content: "\f00c";
    color: var(--white-color);
    background-color: var(--theme-color);
    border-color: var(--theme-color)
}

input[type="checkbox"]~label {
    position: relative;
    padding-left: 30px;
    cursor: pointer;
    display: block
}

input[type="checkbox"]~label:before {
    content: "";
    font-family: var(--icon-font);
    font-weight: 700;
    position: absolute;
    left: 0px;
    top: 3.5px;
    background-color: var(--white-color);
    border: 1px solid var(--th-border-color);
    height: 18px;
    width: 18px;
    line-height: 18px;
    text-align: center;
    font-size: 12px
}

input[type="radio"] {
    visibility: hidden;
    opacity: 0;
    display: inline-block;
    vertical-align: middle;
    width: 0;
    height: 0;
    display: none
}

input[type="radio"]~label {
    position: relative;
    padding-left: 30px;
    cursor: pointer;
    line-height: 1;
    display: inline-block;
    font-weight: 600;
    margin-bottom: 0
}

input[type="radio"]~label::before {
    content: "\f111";
    position: absolute;
    font-family: var(--icon-font);
    left: 0;
    top: -2px;
    width: 20px;
    height: 20px;
    padding-left: 0;
    font-size: 0.6em;
    line-height: 19px;
    text-align: center;
    border: 1px solid var(--theme-color);
    border-radius: 100%;
    font-weight: 700;
    background: var(--white-color);
    color: transparent;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease
}

input[type="radio"]:checked~label::before {
    border-color: var(--theme-color);
    background-color: var(--theme-color);
    color: var(--white-color)
}

label {
    margin-bottom: 0.5em;
    margin-top: -0.3em;
    display: block;
    color: var(--title-color);
    font-family: var(--body-font);
    font-size: 16px
}

textarea.is-invalid,
select.is-invalid,
input.is-invalid {
    border: 1px solid var(--error-color) !important;
    background-position: right calc(0.375em + 0.8875rem) center;
    background-image: none
}

textarea.is-invalid:focus,
select.is-invalid:focus,
input.is-invalid:focus {
    outline: 0;
    box-shadow: none
}

textarea.is-invalid {
    background-position: top calc(0.375em + 0.5875rem) right calc(0.375em + 0.8875rem)
}

.form-messages {
    display: none
}

.form-messages.mb-0 * {
    margin-bottom: 0
}

.form-messages.success {
    color: var(--success-color);
    display: block
}

.form-messages.error {
    color: var(--error-color);
    display: block
}

.form-messages pre {
    padding: 0;
    background-color: transparent;
    color: inherit
}

.swiper-wrapper.row {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

.th-slider.has-shadow {
    padding-left: 12px;
    padding-right: 12px;
    margin: -25px -12px
}

.th-slider.has-shadow .swiper-wrapper {
    padding: 25px 0
}

.swiper-fade .swiper-slide {
    -webkit-transition: 0.6s ease-in-out;
    transition: 0.6s ease-in-out
}

.swiper-fade .swiper-slide-prev {
    opacity: 0
}

.swiper-pagination-progressbar {
    --swiper-pagination-progressbar-size: 2px;
    background: rgba(255, 255, 255, 0.6);
    position: relative;
    margin-top: 30px;
    margin-bottom: 24px
}

@media (max-width: 1199px) {
    .swiper-pagination-progressbar {
        margin-top: 20px
    }
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--title-color);
    border-radius: 18px
}

.swiper-pagination-progressbar {
    --swiper-pagination-progressbar-size: 8px;
    background: var(--white-color);
    border-radius: 8px;
    position: relative;
    margin-top: 30px;
    margin-bottom: 24px
}

.swiper-horizontal>.swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 8px);
    left: 0
}

.swiper-pagination-fraction {
    text-align: center;
    font-family: var(--title-font);
    font-size: 18px;
    font-weight: 700;
    color: var(--theme-color)
}

.swiper-pagination-fraction .swiper-pagination-current {
    font-size: 24px;
    color: var(--title-color);
    font-weight: 600;
    display: inline-block;
    width: 31px
}

.swiper-pagination-bullets {
    position: relative;
    z-index: 3;
    text-align: center;
    margin: 45px 0 10px 0;
    padding-bottom: 20px;
    line-height: 12px;
    height: 12px
}

.swiper-pagination-bullets .swiper-pagination-bullet {
    display: inline-block;
    --swiper-pagination-bullet-size: 16px;
    --swiper-pagination-bullet-horizontal-gap: 8px;
    margin: 5px 4px;
    opacity: 1;
    background-color: transparent;
    border: 1px solid var(--body-color);
    color: var(--white-color);
    border-radius: 50%;
    position: relative;
    cursor: pointer;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out
}

.swiper-pagination-bullets .swiper-pagination-bullet:before {
    content: "";
    position: absolute;
    inset: 4px;
    background-color: var(--theme-color);
    border-radius: 50%;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0)
}

.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active:before {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1)
}

.slider-area {
    position: relative
}

.arrow-wrap {
    position: relative
}

.th-menu-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 999999;
    width: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: all ease 0.8s;
    transition: all ease 0.8s;
    opacity: 0;
    visibility: hidden
}

.th-menu-wrapper .mobile-logo {
    padding-bottom: 30px;
    padding-top: 40px;
    display: block;
    text-align: center;
    background-color: var(--smoke-color2)
}

.th-menu-wrapper .mobile-logo svg {
    max-width: 185px
}

.th-menu-wrapper .th-menu-toggle {
    border: none;
    font-size: 22px;
    position: absolute;
    right: -16.5px;
    top: 5px;
    padding: 0;
    line-height: 1;
    width: 33px;
    height: 33px;
    line-height: 35px;
    font-size: 18px;
    z-index: 1;
    color: var(--title-color);
    background-color: var(--theme-color)
}

.th-menu-wrapper .th-menu-toggle:hover {
    background-color: var(--title-color);
    color: var(--white-color)
}

.th-menu-wrapper .th-menu-area {
    width: 100%;
    max-width: 310px;
    background-color: #fff;
    border-right: 3px solid var(--theme-color);
    height: 100%;
    position: relative;
    left: -110%;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all ease 1s;
    transition: all ease 1s;
    z-index: 1
}

.th-menu-wrapper.th-body-visible {
    opacity: 1;
    visibility: visible
}

.th-menu-wrapper.th-body-visible .th-menu-area {
    left: 0;
    opacity: 1;
    visibility: visible
}

.th-mobile-menu {
    overflow-y: scroll;
    max-height: calc(100vh - 200px);
    padding-bottom: 40px;
    margin-top: 33px;
    text-align: left
}

.th-mobile-menu ul {
    margin: 0;
    padding: 0 0
}

.th-mobile-menu ul li {
    border-bottom: 1px solid #fdedf1;
    list-style-type: none
}

.th-mobile-menu ul li li:first-child {
    border-top: 1px solid #fdedf1
}

.th-mobile-menu ul li a {
    display: block;
    position: relative;
    padding: 12px 0;
    line-height: 1.4;
    font-size: 16px;
    text-transform: capitalize;
    color: var(--title-color);
    padding-left: 18px
}

.th-mobile-menu ul li a:before {
    content: '\f105';
    font-family: var(--icon-font);
    position: absolute;
    left: 0;
    top: 12px;
    margin-right: 10px;
    display: inline-block
}

.th-mobile-menu ul li.th-active>a {
    color: var(--theme-color)
}

.th-mobile-menu ul li.th-active>a:before {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg)
}

.th-mobile-menu ul li ul li {
    padding-left: 20px
}

.th-mobile-menu ul li ul li:last-child {
    border-bottom: none
}

.th-mobile-menu ul .th-item-has-children>a .th-mean-expand {
    position: absolute;
    right: 0;
    top: 50%;
    font-weight: 400;
    font-size: 12px;
    width: 25px;
    height: 25px;
    line-height: 25px;
    margin-top: -12.5px;
    display: inline-block;
    text-align: center;
    background-color: var(--smoke-color);
    color: var(--title-color);
    box-shadow: 0 0 20px -8px rgba(173, 136, 88, 0.5);
    border-radius: 50%
}

.th-mobile-menu ul .th-item-has-children>a .th-mean-expand:before {
    content: '\f067';
    font-family: var(--icon-font)
}

.th-mobile-menu ul .th-item-has-children>a:after {
    content: "\f067";
    font-family: var(--icon-font);
    width: 22px;
    height: 22px;
    line-height: 22px;
    display: inline-block;
    text-align: center;
    font-size: 12px;
    border-radius: 50px;
    background-color: var(--smoke-color);
    float: right;
    margin-top: 1px
}

.th-mobile-menu ul .th-item-has-children.th-active>a .th-mean-expand:before {
    content: '\f068'
}

.th-mobile-menu ul .th-item-has-children.th-active>a:after {
    content: "\f068"
}

.th-mobile-menu>ul {
    padding: 0 40px
}

.th-mobile-menu>ul>li:last-child {
    border-bottom: none
}

.th-menu-toggle {
    width: 56px;
    height: 56px;
    padding: 0;
    font-size: 20px;
    border: none;
    background-color: var(--theme-color);
    color: var(--white-color)
}

@media (max-width: 375px) {
    .th-menu-toggle {
        width: 50px;
        height: 50px;
        font-size: 18px
    }
}

.th-menu-toggle:hover {
    background-color: var(--title-color)
}

@media (max-width: 400px) {
    .th-menu-wrapper .th-menu-area {
        width: 100%;
        max-width: 270px
    }

    .th-mobile-menu>ul {
        padding: 0 20px
    }
}

.preloader {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    z-index: 9999;
}

.preloader .th-btn {
    padding: 15px 20px;
    border-radius: 0;
    font-size: 14px
}

.loader {
    font-size: 80px;
    display: inline-block;
    font-family: var(--title-font);
    font-weight: 700;
    color: var(--title-color);
    box-sizing: border-box;
    text-shadow: 0 0 2px var(--theme-color), 0 0 1px var(--theme-color), 0 0 1px var(--theme-color);
    position: relative;
    line-height: normal;
}

@media (max-width: 1199px) {
    .loader {
        font-size: 60px
    }
}

@media (max-width: 767px) {
    .loader {
        font-size: 40px
    }
}

.loading-text {
    position: absolute;
    left: 0;
    top: 0;
    color: var(--theme-color);
    width: 100%;
    height: 100%;
    overflow: hidden;
    box-sizing: border-box;
    -webkit-animation: animloader 6s linear infinite;
    animation: animloader 6s linear infinite;
}

@-webkit-keyframes animloader {
    0% {
        width: 0%
    }

    100% {
        width: 100%
    }
}

@keyframes animloader {
    0% {
        width: 0%
    }

    100% {
        width: 100%
    }
}

.th-btn {
    position: relative;
    z-index: 2;
    vertical-align: middle;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    background-color: var(--theme-color);
    color: var(--white-color);
    font-family: var(--body-font);
    font-size: 16px;
    font-weight: 500;
    padding: 15px 25px;
    line-height: 1;
    justify-content: center;
    overflow: hidden;
    -webkit-transition: 0.5s;
    transition: 0.5s;
    text-transform: capitalize;
    border-radius: 0;
    border: 1px solid transparent;
    gap: 8px
}

.th-btn.th-icon:after {
    content: '';
    position: relative;
    -webkit-mask-image: url(../img/icon/arrow-right.svg);
    mask-image: url(../img/icon/arrow-right.svg);
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: auto;
    mask-size: auto;
    background-color: var(--white-color);
    width: 24px;
    height: 24px;
    display: block;
    -webkit-transition: 0.4s;
    transition: 0.4s
}

.th-btn:hover {
    border-color: var(--title-color)
}

.th-btn i {
    -webkit-transition: 0.1s;
    transition: 0.1s
}

.th-btn::before {
    content: '';
    position: absolute;
    width: 0;
    height: 100%;
    background: var(--title-color);
    top: 0;
    left: 0;
    z-index: -1;
    -webkit-transition: 0.7s;
    transition: 0.7s
}

.th-btn:hover,
.th-btn:active {
    background: var(--theme-color);
    color: var(--white-color)
}

.th-btn:hover:before,
.th-btn:active:before {
    width: 100%
}

.th-btn.btn-lg {
    padding: 11px 24px
}

.th-btn.btn-sm {
    padding: 7px 24px
}

.th-btn.style-border1 {
    background: transparent;
    border: 1px solid var(--th-border-color);
    color: var(--title-color)
}

.th-btn.style-border1::after {
    background: var(--title-color)
}

.th-btn.style-border1:hover {
    border: 1px solid var(--title-color);
    color: var(--white-color)
}

.th-btn.style-border1:hover::after {
    background: var(--white-color)
}

.th-btn.style-border1:hover>.th-arrow {
    -webkit-filter: brightness(1) contrast(1);
    filter: brightness(1) contrast(1)
}

.th-btn.style-border1>.th-arrow {
    -webkit-filter: brightness(0) contrast(1);
    filter: brightness(0) contrast(1);
    -webkit-transition: .4s;
    transition: .4s
}

.th-btn.style-4 {
    background: none;
    color: var(--title-color);
    border: 1px solid var(--title-color)
}

.th-btn.style-4:hover {
    color: var(--white-color)
}

.th-btn.style-4:hover .th-arrow {
    -webkit-filter: brightness(1) contrast(0);
    filter: brightness(1) contrast(0)
}

.th-arrow {
    margin-left: 10px;
    -webkit-transition: .4s;
    transition: .4s
}

@-webkit-keyframes greentopBubbles {
    0% {
        background-position: 5% 90%, 10% 90%, 10% 90%, 15% 90%, 25% 90%, 25% 90%,
            40% 90%, 55% 90%, 70% 90%
    }

    50% {
        background-position: 0% 80%, 0% 20%, 10% 40%, 20% 0%, 30% 30%, 22% 50%,
            50% 50%, 65% 20%, 90% 30%
    }

    100% {
        background-position: 0% 70%, 0% 10%, 10% 30%, 20% -10%, 30% 20%, 22% 40%,
            50% 40%, 65% 10%, 90% 20%;
        background-size: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%
    }
}

@keyframes greentopBubbles {
    0% {
        background-position: 5% 90%, 10% 90%, 10% 90%, 15% 90%, 25% 90%, 25% 90%,
            40% 90%, 55% 90%, 70% 90%
    }

    50% {
        background-position: 0% 80%, 0% 20%, 10% 40%, 20% 0%, 30% 30%, 22% 50%,
            50% 50%, 65% 20%, 90% 30%
    }

    100% {
        background-position: 0% 70%, 0% 10%, 10% 30%, 20% -10%, 30% 20%, 22% 40%,
            50% 40%, 65% 10%, 90% 20%;
        background-size: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%
    }
}

@-webkit-keyframes greenbottomBubbles {
    0% {
        background-position: 10% -10%, 30% 10%, 55% -10%, 70% -10%, 85% -10%,
            70% -10%, 70% 0%
    }

    50% {
        background-position: 0% 80%, 20% 80%, 45% 60%, 60% 100%, 75% 70%, 95% 60%,
            105% 0%
    }

    100% {
        background-position: 0% 90%, 20% 90%, 45% 70%, 60% 110%, 75% 80%, 95% 70%,
            110% 10%;
        background-size: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%
    }
}

@keyframes greenbottomBubbles {
    0% {
        background-position: 10% -10%, 30% 10%, 55% -10%, 70% -10%, 85% -10%,
            70% -10%, 70% 0%
    }

    50% {
        background-position: 0% 80%, 20% 80%, 45% 60%, 60% 100%, 75% 70%, 95% 60%,
            105% 0%
    }

    100% {
        background-position: 0% 90%, 20% 90%, 45% 70%, 60% 110%, 75% 80%, 95% 70%,
            110% 10%;
        background-size: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%
    }
}

@-webkit-keyframes btn-icon-anim {
    0% {
        top: 0;
        right: 2px
    }

    25% {
        top: -10px;
        right: -10px
    }

    50% {
        top: 10px;
        opacity: 0;
        right: 17px
    }

    100% {
        top: 0;
        right: 2px;
        opacity: 1
    }
}

@keyframes btn-icon-anim {
    0% {
        top: 0;
        right: 2px
    }

    25% {
        top: -10px;
        right: -10px
    }

    50% {
        top: 10px;
        opacity: 0;
        right: 17px
    }

    100% {
        top: 0;
        right: 2px;
        opacity: 1
    }
}

.icon-btn {
    display: inline-block;
    width: var(--btn-size, 56px);
    height: var(--btn-size, 56px);
    line-height: var(--btn-size, 47px);
    font-size: var(--btn-font-size, 20px);
    background-color: transparent;
    color: var(--white-color);
    text-align: center;
    border-radius: 0;
    border: 1px solid var(--th-border-color);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    position: relative
}

.icon-btn img {
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out
}

.icon-btn:hover {
    background-color: var(--title-color);
    color: var(--white-color);
    border-color: var(--title-color)
}

.icon-btn:hover img {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1)
}

.icon-btn.style3 {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.icon-btn.style3:hover {
    background-color: var(--white-color);
    color: var(--theme-color)
}

.icon-btn.style-border {
    --icon-bg: transparent;
    border: 1px solid var(--th-border-color);
    line-height: 54px;
    color: var(--title-color)
}

.icon-btn.style-border:hover {
    color: var(--white-color)
}

.scroll-top {
    position: fixed;
    right: 30px;
    bottom: 55px;
    height: 50px;
    width: 50px;
    cursor: pointer;
    display: block;
    border-radius: 50px;
    z-index: 10000;
    opacity: 1;
    visibility: hidden;
    -webkit-transform: translateY(45px);
    -ms-transform: translateY(45px);
    transform: translateY(45px);
    -webkit-transition: all 300ms linear;
    transition: all 300ms linear
}

.scroll-top:after {
    content: "\f102";
    font-family: var(--icon-font);
    position: absolute;
    text-align: center;
    line-height: 50px;
    font-size: 20px;
    /* color: var(--theme-color); */
    color: #01578c;
    left: 0;
    top: 0;
    height: 50px;
    width: 50px;
    cursor: pointer;
    display: block;
    z-index: 1;
    /* border: 2px solid var(--theme-color); */
    border: 2px solid #01578c;
    box-shadow: none;
    border-radius: 50%
}

.scroll-top svg {
    color: var(--theme-color);
    border-radius: 50%;
    background: var(--white-color)
}

.scroll-top svg path {
    fill: none
}

.scroll-top .progress-circle path {
    /* stroke: var(--theme-color); */
    stroke: #01578c;
    stroke-width: 20px;
    box-sizing: border-box;
    -webkit-transition: all 400ms linear;
    transition: all 400ms linear
}

.scroll-top.show {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.sec-title {
    margin-bottom: calc(var(--section-title-space) - 11px);
    margin-top: -0.24em;
    font-weight: 500
}

.sub-title {
    display: inline-block;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 18px;
    font-weight: 600;
    color: var(--theme-color);
    text-transform: uppercase;
    margin-bottom: 18px;
    position: relative;
    line-height: 24px;
    letter-spacing: 0.36px;
    font-family: var(--subtitle-font);
    padding-left: 52px
}

.sub-title::before {
    background-color: var(--theme-color);
    content: '';
    position: absolute;
    width: 36px;
    height: 2px;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.sec-text {
    font-size: 18px
}

.box-title {
    font-size: 24px;
    line-height: 1.417;
    font-weight: 600;
    margin-top: -0.32em
}

.box-title a {
    color: inherit
}

.box-title a:hover {
    color: var(--theme-color)
}

.title-area {
    margin-bottom: calc(var(--section-title-space) - 6.5px);
    position: relative;
    z-index: 2;
    margin-top: -0.6em
}

.title-area:has(.box-text) {
    margin-bottom: calc(var(--section-title-space) - 1px)
}

.title-area .sec-title {
    margin-bottom: 0px
}

.title-area.mb-0 .sec-title {
    margin-bottom: -0.24em
}

.title-area.text-center .sub-title {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media (min-width: 992px) {
    .title-area.text-lg-start.text-center .sub-title {
        -webkit-box-pack: start;
        -webkit-justify-content: start;
        -ms-flex-pack: start;
        justify-content: start
    }
}

.sec-btn {
    text-align: center
}

.sec-btn {
    margin-bottom: var(--section-title-space)
}

.page-title {
    position: relative;
    font-size: 40px;
    font-weight: 600;
    z-index: 2;
    margin-bottom: 32px !important
}

.page-title:before {
    content: "";
    position: absolute;
    content: "";
    /* left: 0; */
    bottom: -12px;
    width: 15%;
    height: 2px;
    background-color: var(--theme-color)
}

@media (max-width: 767px) {
    .page-title {
        font-size: 36px
    }
}

@media (max-width: 575px) {
    .page-title {
        font-size: 32px
    }
}

@media (max-width: 1199px) {

    .title-area,
    .sec-title {
        --section-title-space: 60px
    }

    .title-area.mb-45,
    .sec-title.mb-45 {
        margin-bottom: 36px
    }

    .title-area.mb-50,
    .sec-title.mb-50 {
        margin-bottom: 40px
    }

    .sec-btn {
        --section-title-space: 55px
    }
}

@media (max-width: 991px) {

    .title-area,
    .sec-title {
        --section-title-space: 33px
    }

    .title-area.mb-45,
    .sec-title.mb-45 {
        margin-bottom: 35px
    }

    .sec-btn {
        --section-title-space: 50px
    }

    .sub-title.h4 {
        font-size: 22px
    }
}

.shape-mockup-wrap {
    z-index: 2;
    position: relative
}

.shape-mockup {
    position: absolute;
    z-index: -1;
    pointer-events: none
}

.shape-mockup.z-index-1 {
    z-index: 1;
    pointer-events: none
}

.shape-mockup .svg-img {
    height: 110px;
    width: 110px
}

.z-index-common {
    position: relative;
    z-index: 3
}

.z-index-2 {
    z-index: 2
}

.media-body {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.bg-mask {
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat
}

.box-icon img {
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.box-text {
    margin-bottom: -0.5em
}

.btn-group {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 30px
}

@media (max-width: 767px) {
    .btn-group {
        gap: 20px
    }
}

.mfp-zoom-in .mfp-content {
    opacity: 0;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    -webkit-transform: scale(0.5);
    -ms-transform: scale(0.5);
    transform: scale(0.5)
}

.mfp-zoom-in.mfp-bg {
    opacity: 0;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease
}

.mfp-zoom-in.mfp-ready .mfp-content {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.mfp-zoom-in.mfp-ready.mfp-bg {
    opacity: 0.7
}

.mfp-zoom-in.mfp-removing .mfp-content {
    -webkit-transform: scale(0.7);
    -ms-transform: scale(0.7);
    transform: scale(0.7);
    opacity: 0
}

.mfp-zoom-in.mfp-removing.mfp-bg {
    opacity: 0
}

@-webkit-keyframes gridanim {
    0% {
        top: -60px
    }

    50% {
        top: 100%
    }

    100% {
        top: -60px;
        background: -webkit-linear-gradient(top, var(--white-color) 0%, rgba(255, 255, 255, 0) 100%);
        background: linear-gradient(180deg, var(--white-color) 0%, rgba(255, 255, 255, 0) 100%)
    }
}

@keyframes gridanim {
    0% {
        top: -60px
    }

    50% {
        top: 100%
    }

    100% {
        top: -60px;
        background: -webkit-linear-gradient(top, var(--white-color) 0%, rgba(255, 255, 255, 0) 100%);
        background: linear-gradient(180deg, var(--white-color) 0%, rgba(255, 255, 255, 0) 100%)
    }
}

@-webkit-keyframes gridanim2 {
    0% {
        top: -60px
    }

    50% {
        top: 100%
    }

    100% {
        top: -60px;
        background: -webkit-linear-gradient(top, var(--theme-color) 0%, rgba(255, 255, 255, 0) 100%);
        background: linear-gradient(180deg, var(--theme-color) 0%, rgba(255, 255, 255, 0) 100%)
    }
}

@keyframes gridanim2 {
    0% {
        top: -60px
    }

    50% {
        top: 100%
    }

    100% {
        top: -60px;
        background: -webkit-linear-gradient(top, var(--theme-color) 0%, rgba(255, 255, 255, 0) 100%);
        background: linear-gradient(180deg, var(--theme-color) 0%, rgba(255, 255, 255, 0) 100%)
    }
}

.reveal {
    position: relative;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    visibility: hidden;
    overflow: hidden
}

.reveal img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    -webkit-transform-origin: left;
    -ms-transform-origin: left;
    transform-origin: left
}

.fw-bold {
    font-weight: 700
}

.fs-18 {
    font-size: 18px
}

.bg-theme {
    background-color: var(--theme-color) !important
}

.bg-theme2 {
    background-color: var(--theme-color2) !important
}

.bg-smoke {
    background-color: var(--smoke-color) !important
}

.bg-smoke2 {
    background-color: var(--smoke-color2) !important
}

.bg-gray {
    background-color: var(--gray-color) !important
}

.bg-gray2 {
    background-color: var(--gray-color2) !important
}

.bg-white {
    background-color: var(--white-color) !important
}

.bg-light {
    background-color: var(--light-color) !important
}

.bg-black {
    background-color: var(--black-color) !important
}

.bg-black2 {
    background-color: var(--black-color2) !important
}

.bg-black3 {
    background-color: var(--black-color3) !important
}

.bg-black4 {
    background-color: var(--black-color4) !important
}

.bg-title {
    background-color: var(--title-color) !important
}

.bg-body {
    background-color: var(--body-color) !important
}

.background-image,
[data-bg-src] {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center
}

.bg-fluid {
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center
}

.bg-auto {
    background-size: auto auto
}

.bg-top-center {
    background-size: auto;
    background-position: top center
}

.bg-repeat {
    background-size: auto;
    background-repeat: repeat
}

.bg-bottom-right {
    background-size: auto;
    background-position: bottom right
}

.bg-top-right {
    background-size: auto;
    background-position: top right
}

.bg-top-left {
    background-size: auto;
    background-position: top left
}

.bg-attachment {
    background-attachment: fixed
}

.text-theme {
    color: var(--theme-color) !important
}

.text-theme2 {
    color: var(--theme-color2) !important
}

.text-title {
    color: var(--title-color) !important
}

.text-body {
    color: var(--body-color) !important
}

.text-white {
    color: var(--white-color) !important
}

.text-light {
    color: var(--light-color) !important
}

.text-yellow {
    color: var(--yellow-color) !important
}

.text-success {
    color: var(--success-color) !important
}

.text-error {
    color: var(--error-color) !important
}

.text-inherit {
    color: inherit
}

.text-inherit:hover {
    color: var(--theme-color)
}

a.text-theme:hover,
.text-reset:hover {
    text-decoration: underline
}

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%
}

.animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

@-webkit-keyframes ripple {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0
    }

    30% {
        opacity: 0.7
    }

    100% {
        -webkit-transform: scale(1.6);
        transform: scale(1.6);
        opacity: 0
    }
}

@keyframes ripple {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0
    }

    30% {
        opacity: 0.7
    }

    100% {
        -webkit-transform: scale(1.6);
        transform: scale(1.6);
        opacity: 0
    }
}

@-webkit-keyframes ripple2 {
    0% {
        -webkit-transform: scale(0.6);
        transform: scale(0.6);
        opacity: 0.4
    }

    50% {
        opacity: 0.3
    }

    80% {
        opacity: 0.2
    }

    100% {
        -webkit-transform: scale(2.2);
        transform: scale(2.2);
        opacity: 0
    }
}

@keyframes ripple2 {
    0% {
        -webkit-transform: scale(0.6);
        transform: scale(0.6);
        opacity: 0.4
    }

    50% {
        opacity: 0.3
    }

    80% {
        opacity: 0.2
    }

    100% {
        -webkit-transform: scale(2.2);
        transform: scale(2.2);
        opacity: 0
    }
}

@-webkit-keyframes scrollMove {
    0% {
        opacity: 0
    }

    50% {
        opacity: 1
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(10px);
        transform: translateY(10px)
    }
}

@keyframes scrollMove {
    0% {
        opacity: 0
    }

    50% {
        opacity: 1
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(10px);
        transform: translateY(10px)
    }
}

.ripple-1,
.ripple-2,
.ripple-3,
.ripple-4,
.ripple-5 {
    width: 456px;
    height: 456px;
    text-align: center;
    margin: auto;
    background-color: transparent;
    border: 1px solid rgba(87, 88, 95, 0.5);
    border-radius: 50%;
    -webkit-animation: ripple2 10s linear infinite;
    animation: ripple2 10s linear infinite;
    opacity: 0
}

.ripple-1 {
    -webkit-animation-delay: 0;
    animation-delay: 0
}

.ripple-2 {
    -webkit-animation-delay: 2s;
    animation-delay: 2s
}

.ripple-3 {
    -webkit-animation-delay: 4s;
    animation-delay: 4s
}

.ripple-4 {
    -webkit-animation-delay: 6s;
    animation-delay: 6s
}

.ripple-5 {
    -webkit-animation-delay: 8s;
    animation-delay: 8s
}

@-webkit-keyframes morph {
    0% {
        border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%
    }

    50% {
        border-radius: 30% 60% 70% 40% / 50% 60% 30% 60%
    }

    100% {
        border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%
    }
}

@keyframes morph {
    0% {
        border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%
    }

    50% {
        border-radius: 30% 60% 70% 40% / 50% 60% 30% 60%
    }

    100% {
        border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%
    }
}

@-webkit-keyframes jumpAni {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes jumpAni {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes movingX {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    50% {
        -webkit-transform: translateX(50px);
        transform: translateX(50px)
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes movingX {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    50% {
        -webkit-transform: translateX(50px);
        transform: translateX(50px)
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@-webkit-keyframes moving {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    50% {
        -webkit-transform: translateX(-50px);
        transform: translateX(-50px)
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes moving {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    50% {
        -webkit-transform: translateX(-50px);
        transform: translateX(-50px)
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

.jump {
    -webkit-animation: jumpAni 7s linear infinite;
    animation: jumpAni 7s linear infinite
}

@keyframes jumpAni {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes jumpReverseAni {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    50% {
        -webkit-transform: translateY(30px);
        transform: translateY(30px)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes jumpReverseAni {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    50% {
        -webkit-transform: translateY(30px);
        transform: translateY(30px)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@-webkit-keyframes titleFill {
    0% {
        width: 0
    }

    80% {
        width: 100%
    }

    100% {
        width: 100%
    }
}

@keyframes titleFill {
    0% {
        width: 0
    }

    80% {
        width: 100%
    }

    100% {
        width: 100%
    }
}

@-webkit-keyframes lineDown {
    0% {
        -webkit-transform: 0;
        transform: 0;
        opacity: 0
    }

    30% {
        opacity: 1
    }

    60% {
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(8px);
        transform: translateY(8px);
        opacity: 1
    }
}

@keyframes lineDown {
    0% {
        -webkit-transform: 0;
        transform: 0;
        opacity: 0
    }

    30% {
        opacity: 1
    }

    60% {
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(8px);
        transform: translateY(8px);
        opacity: 1
    }
}

.swing {
    -webkit-animation: swing 10s infinite ease-in-out;
    animation: swing 10s infinite ease-in-out
}

@-webkit-keyframes swing {

    0%,
    100% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    25% {
        -webkit-transform: rotate(5deg);
        transform: rotate(5deg)
    }

    50% {
        -webkit-transform: rotate(-5deg);
        transform: rotate(-5deg)
    }

    75% {
        -webkit-transform: rotate(5deg);
        transform: rotate(5deg)
    }
}

@keyframes swing {

    0%,
    100% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    25% {
        -webkit-transform: rotate(5deg);
        transform: rotate(5deg)
    }

    50% {
        -webkit-transform: rotate(-5deg);
        transform: rotate(-5deg)
    }

    75% {
        -webkit-transform: rotate(5deg);
        transform: rotate(5deg)
    }
}

@-webkit-keyframes scaleUpDown {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    50% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3)
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@keyframes scaleUpDown {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    50% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3)
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@-webkit-keyframes roundFill {
    0% {
        width: 0
    }

    60% {
        width: 100%;
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

@keyframes roundFill {
    0% {
        width: 0
    }

    60% {
        width: 100%;
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

@-webkit-keyframes dance {
    0% {
        -webkit-transform: scale(0.8);
        transform: scale(0.8)
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@keyframes dance {
    0% {
        -webkit-transform: scale(0.8);
        transform: scale(0.8)
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@-webkit-keyframes dance2 {
    0% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    50% {
        -webkit-transform: translate3d(15px, -15px, 0);
        transform: translate3d(15px, -15px, 0)
    }

    100% {
        -webkit-transform: translate3d(0, -15px, 15px);
        transform: translate3d(0, -15px, 15px)
    }
}

@keyframes dance2 {
    0% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    50% {
        -webkit-transform: translate3d(15px, -15px, 0);
        transform: translate3d(15px, -15px, 0)
    }

    100% {
        -webkit-transform: translate3d(0, -15px, 15px);
        transform: translate3d(0, -15px, 15px)
    }
}

@-webkit-keyframes slideTop {
    49% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%)
    }

    50% {
        opacity: 0;
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%)
    }

    51% {
        opacity: 1
    }
}

@keyframes slideTop {
    49% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%)
    }

    50% {
        opacity: 0;
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%)
    }

    51% {
        opacity: 1
    }
}

@-webkit-keyframes zoom1 {
    0% {
        scale: 0.2
    }

    50% {
        scale: 1
    }

    100% {
        scale: 0.2
    }
}

@keyframes zoom1 {
    0% {
        scale: 0.2
    }

    50% {
        scale: 1
    }

    100% {
        scale: 0.2
    }
}

@-webkit-keyframes topBottomLine {
    0% {
        top: 0
    }

    50% {
        top: calc(100% - 30px)
    }

    100% {
        top: 0
    }
}

@keyframes topBottomLine {
    0% {
        top: 0
    }

    50% {
        top: calc(100% - 30px)
    }

    100% {
        top: 0
    }
}

.bg-color-ani {
    -webkit-animation: bgColor 6s linear infinite;
    animation: bgColor 6s linear infinite
}

@-webkit-keyframes bgColor {
    0% {
        background-color: #F2BA4C
    }

    25% {
        background-color: #81F24C
    }

    50% {
        background-color: #41F27D
    }

    75% {
        background-color: #0500FF
    }

    100% {
        background-color: #F2BA4C
    }
}

@keyframes bgColor {
    0% {
        background-color: #F2BA4C
    }

    25% {
        background-color: #81F24C
    }

    50% {
        background-color: #41F27D
    }

    75% {
        background-color: #0500FF
    }

    100% {
        background-color: #F2BA4C
    }
}

@-webkit-keyframes footerLine {
    0% {
        left: 40px
    }

    50% {
        left: 0
    }

    100% {
        left: 40px
    }
}

@keyframes footerLine {
    0% {
        left: 40px
    }

    50% {
        left: 0
    }

    100% {
        left: 40px
    }
}

@-webkit-keyframes fadeLeftRight {

    0%,
    100% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px)
    }

    50% {
        -webkit-transform: translateX(100px);
        transform: translateX(100px)
    }
}

@keyframes fadeLeftRight {

    0%,
    100% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px)
    }

    50% {
        -webkit-transform: translateX(100px);
        transform: translateX(100px)
    }
}

@-webkit-keyframes animate-positive {
    0% {
        width: 0
    }
}

@keyframes animate-positive {
    0% {
        width: 0
    }
}


.slideinup {
    opacity: 0;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-duration: 1.3s;
    animation-duration: 1.3s;
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
    -webkit-animation-name: var(--animation-name);
    animation-name: var(--animation-name)
}

@-webkit-keyframes shine {
    100% {
        left: 125%
    }
}

@keyframes shine {
    100% {
        left: 125%
    }
}

.swiper-slide-active .slideinup {
    --animation-name: slideinup
}

@-webkit-keyframes fadein {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes fadein {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes slideinup {
    0% {
        opacity: 0;
        -webkit-transform: translateY(100px);
        transform: translateY(100px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes slideinup {
    0% {
        opacity: 0;
        -webkit-transform: translateY(100px);
        transform: translateY(100px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes scroll {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        -webkit-transform: translateX(calc(-100% - var(--gap)));
        transform: translateX(calc(-100% - var(--gap)))
    }
}

@keyframes scroll {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        -webkit-transform: translateX(calc(-100% - var(--gap)));
        transform: translateX(calc(-100% - var(--gap)))
    }
}

@-webkit-keyframes slideinright {
    0% {
        opacity: 0;
        -webkit-transform: translateX(180px);
        transform: translateX(180px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes slideinright {
    0% {
        opacity: 0;
        -webkit-transform: translateX(180px);
        transform: translateX(180px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@-webkit-keyframes slideindown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-100px);
        transform: translateY(-100px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes slideindown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-100px);
        transform: translateY(-100px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes slideinleft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100px);
        transform: translateX(-100px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes slideinleft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100px);
        transform: translateX(-100px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@-webkit-keyframes slidebottomright {
    0% {
        opacity: 0;
        -webkit-transform: translateX(120px) translateY(120px);
        transform: translateX(120px) translateY(120px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0) translateY(0);
        transform: translateX(0) translateY(0)
    }
}

@keyframes slidebottomright {
    0% {
        opacity: 0;
        -webkit-transform: translateX(120px) translateY(120px);
        transform: translateX(120px) translateY(120px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0) translateY(0);
        transform: translateX(0) translateY(0)
    }
}

@-webkit-keyframes slidetopleft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100px) translateY(-100px);
        transform: translateX(-100px) translateY(-100px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0) translateY(0);
        transform: translateX(0) translateY(0)
    }
}

@keyframes slidetopleft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100px) translateY(-100px);
        transform: translateX(-100px) translateY(-100px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0) translateY(0);
        transform: translateX(0) translateY(0)
    }
}

@-webkit-keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        transform: translateX(-20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        transform: translateX(-20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

.fadeInLeft {
    -webkit-animation-name: fadeInLeft;
    animation-name: fadeInLeft
}

@-webkit-keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

@-webkit-keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 40px, 0);
        transform: translate3d(0, 40px, 0)
    }

    100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 40px, 0);
        transform: translate3d(0, 40px, 0)
    }

    100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none
    }
}

.fadeInUp {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp
}

@-webkit-keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes zoomIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3)
    }

    50% {
        opacity: 1
    }
}

@keyframes zoomIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3)
    }

    50% {
        opacity: 1
    }
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        transform: translateX(-20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

.fadeInLeft {
    -webkit-animation-name: fadeInLeft;
    animation-name: fadeInLeft
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

.fadeInUp {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp
}

@keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes dance {
    0% {
        -webkit-transform: scale(0.8);
        transform: scale(0.8)
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@keyframes dance2 {
    0% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    50% {
        -webkit-transform: translate3d(15px, -15px, 0);
        transform: translate3d(15px, -15px, 0)
    }

    100% {
        -webkit-transform: translate3d(0, -15px, 15px);
        transform: translate3d(0, -15px, 15px)
    }
}

@-webkit-keyframes slideInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes slideInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }

    100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes slideUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(100px);
        transform: translateY(100px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes slideUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(100px);
        transform: translateY(100px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

.slideUp {
    -webkit-animation-name: slideOutUp;
    animation-name: slideOutUp
}

.widget_nav_menu ul {
    list-style: none;
    padding: 0;
    margin: 0 0 0 0
}

.widget_nav_menu a {
    display: block;
    background-color: var(--white-color);
    margin: 0 0 18px;
    padding: 0 0 18px;
    font-size: 16px;
    line-height: 1.313;
    color: var(--title-color);
    -webkit-transition: 0.4s all ease;
    transition: 0.4s all ease;
    border-bottom: 1px solid var(--th-border-color)
}

.widget_nav_menu li {
    display: block;
    position: relative;
    margin-bottom: 18px
}

.widget_nav_menu li>span {
    color: var(--title-color);
    text-align: center;
    position: absolute;
    right: 0;
    top: -2px;
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s;
    pointer-events: none;
    min-width: 20px;
    text-align: right
}

.widget_nav_menu .menu,
.widget_nav_menu>ul {
    margin-top: -0.3em;
    margin-bottom: -0.3em
}

.widget_nav_menu .menu>li:last-child,
.widget_nav_menu>ul>li:last-child {
    border-bottom: 0;
    margin-bottom: 0
}

.widget_nav_menu .menu>li:last-child>a,
.widget_nav_menu>ul>li:last-child>a {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0
}

.widget_nav_menu a:hover {
    color: var(--theme-color)
}

.widget_nav_menu a:hover~span {
    color: var(--theme-color)
}

.widget_nav_menu .sub-menu,
.widget_nav_menu .children {
    margin-left: 10px
}

.widget_nav_menu a {
    padding-right: 20px
}

.widget_nav_menu .sub-menu {
    margin-left: 10px
}

.widget {
    padding: var(--widget-padding-y, 32px) var(--widget-padding-x, 24px);
    background-color: transparent;
    margin-bottom: 40px;
    position: relative;
    border: 1px solid var(--th-border-color7)
}

.widget select,
.widget input,
.widget .form-select,
.widget .form-control,
.widget textarea {
    background-color: var(--white-color)
}

.widget textarea {
    min-height: 120px
}

.widget .form-group>i {
    background-color: var(--white-color)
}


.widget_title {
    position: relative;
    font-size: 24px;
    font-weight: 500;
    font-family: var(--title-font);
    line-height: 1em;
    margin: -0.12em 0 36px 0;
    padding-bottom: 20px;
    border-bottom: 3px solid var(--th-border-color2)
}


.widget_title:after {
    content: '';
    position: absolute;
    bottom: -3px;
    left: 0;
    height: 3px;
    width: 50px;
    background: var(--theme-color)
}

.widget .search-form {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.widget .search-form input {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding-right: 85px;
    border: 1px solid var(--th-border-color7);
    height: 56px;
    padding-left: 20px
}

.widget .search-form input:focus {
    border-color: var(--theme-color)
}

.widget .search-form button {
    border: none;
    font-size: 16px;
    background-color: var(--theme-color);
    color: var(--white-color);
    display: inline-block;
    padding: 0;
    width: 40px;
    height: 40px;
    text-align: center;
    position: absolute;
    top: 8px;
    right: 8px
}

.widget .search-form button:hover {
    background-color: var(--title-color)
}

.widget:has(.author-widget-wrap) {
    padding: 0;
    overflow: hidden
}

@media (max-width: 1199px) {
    .widget {
        --widget-padding-y: 30px;
        --widget-padding-x: 30px
    }

    .widget_title {
        font-size: 22px;
        margin: -0.12em 0 28px 0
    }
}

@media (max-width: 991px) {

    .widget {
        --widget-padding-y: 40px;
        --widget-padding-x: 40px
    }
}

@media (max-width: 767px) {
    .widget {
        padding: 30px
    }
}

/* .footer-widget {
    margin-bottom: 50px
} */

.footer-widget,
.footer-widget .widget {
    padding: 0;
    border: none;
    padding-bottom: 0;
    background-color: transparent;
    box-shadow: none
}

.footer-widget .form-group>i {
    color: var(--theme-color);
    top: 18px
}

.footer-widget select {
    background-color: transparent;
    border: 1px solid var(--th-border-color);
    -webkit-filter: brightness(9);
    filter: brightness(9)
}

.footer-widget .search-form input {
    background: transparent
}

.footer-widget .widget_title {
    max-width: 270px;
    color: var(--white-color);
    font-weight: 600;
    font-size: 24px;
    margin: -0.12em 0 40px 0;
    padding: 0 0 0 11px;
    border: 0
}

te .footer-widget .widget_title:before {
    display: none
}

.footer-widget .widget_title:after {
    content: '';
    position: absolute;
    left: 0;
    top: 3px;
    height: 17px;
    width: 3px;
    background-color: var(--theme-color);
    opacity: 1;
    z-index: 1
}

.footer-widget .widget_title img {
    margin: -7px 10px 0 0
}


.footer-widget.widget_nav_menu ul {
    margin-top: -4px
}


.footer-widget.widget_nav_menu .menu,
.footer-widget.widget_nav_menu>ul {
    margin-bottom: -4px
}


.footer-widget.widget_nav_menu a {
    font-size: 16px;
    font-weight: 400;
    padding: 0 0 0 16px;
    margin-bottom: 24px;
    font-family: var(--body-font);
    display: block;
    max-width: 100%;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    padding-right: 0;
    background-color: transparent;
    border: none;
    position: relative;
    box-shadow: none;
    color: #ffffff
}


.footer-widget.widget_nav_menu a:before {
    content: "\f105";
    position: absolute;
    font-weight: 400;
    font-family: var(--icon-font);
    left: 0;
    top: 0;
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    font-size: 16px;
    background-color: transparent;
    border: none;
    color: #ffffff;
    -webkit-transition: 0.4s;
    transition: 0.4s
}


.footer-widget.widget_nav_menu a:after {
    display: none
}


.footer-widget.widget_nav_menu a:hover {
    background-color: transparent;
    color: var(--theme-color)
}


.footer-widget.widget_nav_menu a:hover:before {
    color: var(--theme-color);
    left: 2px
}


.footer-widget.widget_nav_menu li {
    border: 0;
    padding-bottom: 0;
    margin-bottom: 0
}


.footer-widget.widget_nav_menu li>span {
    width: auto;
    height: auto;
    background-color: transparent;
    color: var(--body-color);
    line-height: 1;
    top: 2px
}

.th-widget-about {
    max-width: 400px
}

.th-widget-about .about-text {
    margin-bottom: 45px;
    margin-top: -0.5em;
    color: white;
}

@media (max-width: 1199px) {

    
    .footer-widget.widget_nav_menu a {
        margin-bottom: 16px
    }
}

@media (max-width: 767px) {
    .footer-widget .widget_title {
        margin-bottom: 35px
    }

    .th-widget-about .about-text {
        margin-bottom: 20px
    }
}

.th-header {
    position: relative;
    z-index: 41
}

.th-header .menu-area {
    position: relative;
    z-index: 2
}

.sticky-wrapper {
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.sticky-wrapper.sticky {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    background-color: var(--white-color);
    -webkit-filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.07));
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.07));
    -webkit-animation: stickyAni 0.4s ease-in-out;
    animation: stickyAni 0.4s ease-in-out
}

@-webkit-keyframes stickyAni {
    0% {
        -webkit-transform: translate3d(0, -40px, 0) scaleY(0.8);
        transform: translate3d(0, -40px, 0) scaleY(0.8);
        opacity: 0.7
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0) scaleY(1);
        transform: translate3d(0, 0, 0) scaleY(1);
        opacity: 1
    }
}

@keyframes stickyAni {
    0% {
        -webkit-transform: translate3d(0, -40px, 0) scaleY(0.8);
        transform: translate3d(0, -40px, 0) scaleY(0.8);
        opacity: 0.7
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0) scaleY(1);
        transform: translate3d(0, 0, 0) scaleY(1);
        opacity: 1
    }
}

.header-logo {
    /* padding: 16px 0; */
    width: 170px;
}

.main-menu a {
    position: relative;
    display: block;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.02em;
    font-family: var(--body-font);
    color: var(--title-color)
}

@media (max-width: 1299px) {
    .main-menu a {
        font-size: 16px
    }
}

.main-menu a:hover {
    color: var(--theme-color)
}

.main-menu>ul>li {
    margin: 0 18px
}

.main-menu>ul>li>a {
    padding: 41.5px 0
}

.main-menu>ul>li>a:hover {
    color: var(--theme-color)
}

.main-menu ul {
    margin: 0;
    padding: 0
}

.main-menu ul li {
    list-style-type: none;
    display: inline-block;
    position: relative
}

.main-menu ul li:has(.sub-menu)>a:after,
.main-menu ul li:has(.mega-menu)>a:after,
.main-menu ul li.menu-item-has-children>a:after {
    content: "\2b";
    position: relative;
    font-family: var(--icon-font);
    margin-left: 4px;
    font-weight: 600;
    top: 0;
    font-size: 14px
}

.main-menu ul li:last-child {
    margin-right: 0 !important
}

.main-menu ul li:first-child {
    margin-left: 0 !important
}

.main-menu ul li:hover>ul.sub-menu {
    visibility: visible;
    opacity: 1;
    -webkit-transform: scaleY(1);
    -ms-transform: scaleY(1);
    transform: scaleY(1);
    z-index: 9
}

.main-menu ul.sub-menu {
    position: absolute;
    text-align: left;
    top: 100%;
    left: 0;
    background-color: var(--white-color);
    visibility: hidden;
    min-width: 190px;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    padding: 7px;
    left: -14px;
    opacity: 0;
    z-index: -1;
    border-top: 3px solid var(--theme-color);
    box-shadow: 0px 4px 15px rgba(1, 15, 28, 0.06);
    border-radius: 0;
    -webkit-transform: scaleY(0);
    -ms-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: top center;
    -ms-transform-origin: top center;
    transform-origin: top center;
    -webkit-transition: all 0.4s ease 0s;
    transition: all 0.4s ease 0s
}

.main-menu ul.sub-menu a {
    font-size: 16px;
    line-height: 30px
}

.main-menu ul.sub-menu {
    padding: 18px 20px 18px 18px;
    left: -27px
}

.main-menu ul.sub-menu li {
    display: block;
    margin: 0 0;
    padding: 0px 9px
}

.main-menu ul.sub-menu li.menu-item-has-children>a:after {
    content: "\f105";
    float: right;
    top: 1px
}

.main-menu ul.sub-menu li.menu-item-has-children:hover:after {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.main-menu ul.sub-menu li a {
    position: relative;
    padding-left: 0;
    text-transform: capitalize
}

.main-menu ul.sub-menu li a:before {
    content: "\f02d";
    position: absolute;
    top: 6px;
    left: 10px;
    font-family: var(--icon-font);
    width: 13px;
    height: 16px;
    text-align: center;
    display: inline-block;
    font-size: 16px;
    line-height: 1;
    color: var(--theme-color);
    font-weight: 500;
    opacity: 0;
    visibility: visible;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out
}

.main-menu ul.sub-menu li a:hover {
    padding-left: 23px
}

.main-menu ul.sub-menu li a:hover:before {
    visibility: visible;
    opacity: 1;
    left: 0;
    color: var(--theme-color)
}

.main-menu ul.sub-menu li ul.sub-menu {
    left: 100%;
    right: auto;
    top: 0;
    margin: 0 0;
    margin-left: 20px
}

.main-menu ul.sub-menu li ul.sub-menu li ul {
    left: 100%;
    right: auto
}

@media (max-width: 1500px) {
    .main-menu>ul>li {
        margin: 0 13px
    }
}

@media (max-width: 1299px) {
    .main-menu>ul>li {
        margin: 0px 10px !important
    }
}

.header-button {
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 15px
}

.header-button .th-btn {
    font-size: 16px;
    padding: 21px 48px
}

.dropdown-toggle::after {
    content: "\f078";
    border: none;
    font-family: var(--icon-font);
    vertical-align: middle;
    font-weight: 400;
    margin-left: 12px;
    margin-top: -1px
}

.dropdown-menu {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    min-width: auto;
    top: calc(100% + 14px) !important;
    left: 50% !important;
    -webkit-transform: translateX(-50%) !important;
    -ms-transform: translateX(-50%) !important;
    transform: translateX(-50%) !important;
    padding: 8px 20px !important;
    text-align: center;
    border-color: var(--th-border-color)
}

.dropdown-menu li {
    padding-right: 0;
    margin-right: 0
}

.dropdown-menu li:after {
    display: none
}

.dropdown-menu li a {
    display: block;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.7
}

.dropdown-menu a {
    color: var(--title-color) !important
}

.dropdown-menu a:hover {
    color: var(--theme-color) !important
}

.dropdown-menu:before {
    content: "";
    position: absolute;
    left: 50%;
    top: -7px;
    width: 14px;
    height: 14px;
    margin-left: -7px;
    background-color: var(--white-color);
    z-index: -1;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 1px solid var(--th-border-color);
    border-left: 1px solid var(--th-border-color)
}

.menu-expand {
    display: inline-block;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--white-color);
    background-color: var(--theme-color2);
    padding: 17px 25px;
    width: 100%
}

@media (max-width: 1299px) {
    .menu-expand {
        font-size: 15px
    }
}

.menu-expand i {
    margin-right: 15px
}

.menu-expand:hover {
    color: var(--white-color)
}

.header-layout1 .th-btn:before {
    background-color: var(--theme-color)
}

.header-layout1 .sticky-wrapper.sticky {
    background: none;
    box-shadow: none
}

.header-layout1 .sticky-wrapper.sticky .menu-area {
    background-color: var(--th-body-background);
    padding: 16px 0
}

.header-layout1 .sticky-wrapper.sticky .menu-area .menu-wrapp {
    background-color: var(--white-color)
}

.header-layout1 .sticky-wrapper.sticky .header-left .header-button {
    display: none !important
}

.header-layout1 .sticky-wrapper.sticky .header-left .header-logo {
    display: block !important;
    margin-right: 30px
}

@media (max-width: 375px) {
    .header-layout1 .sticky-wrapper.sticky .header-left .header-logo {
        margin-right: 0
    }
}

@media (max-width: 1299px) {
    .header-layout1 .sticky-wrapper.sticky .search-form {
        display: none
    }
}

.header-layout1 .search-form {
    position: relative
}

@media (max-width: 767px) {
    .header-layout1 .search-form {
        display: none
    }
}

.header-layout1 .search-form input {
    width: 248px;
    height: 72px;
    background: #D3DBE2
}

@media (max-width: 1499px) {
    .header-layout1 .search-form input {
        width: 200px
    }
}

@media (max-width: 1299px) {
    .header-layout1 .search-form input {
        width: 150px
    }
}

.header-layout1 .search-form button {
    position: absolute;
    top: 20px;
    right: 15px;
    background-color: transparent;
    border: 0;
    color: var(--title-color)
}

.header-layout1 .th-menu-toggle {
    width: 60px;
    height: 60px;
    line-height: 65px;
    margin-right: 0px
}

@media (max-width: 767px) {
    .header-layout1 .th-menu-toggle {
        width: 56px;
        height: 56px;
        line-height: 45px;
        margin-right: 10px
    }
}

.header-layout1 .header-left .header-button {
    margin-right: 48px
}

@media (max-width: 1299px) {
    .header-layout1 .header-left .header-button {
        margin-right: 25px
    }
}

.header-layout1 .main-menu>ul>li>a {
    padding: 19px 0
}

@media (max-width: 1399px) {
    .header-layout1 .main-menu>ul>li>a {
        font-size: 16px
    }
}

@media (max-width: 1399px) {
    .header-layout1 .main-menu>ul>li {
        margin: 0 10px
    }
}

.header-layout1 .header-button {
    gap: 0px
}

.header-layout1 .header-button .th-btn {
    margin-right: 5px;
    padding: 7px;
    font-weight: 400;
    background-color: #01578c;
    border-radius: 25px
}

@media (max-width: 1399px) {
    .header-layout1 .header-button .th-btn {
        padding: 23px 21px
    }
}

@media (max-width: 1299px) {
    .header-layout1 .header-button .th-btn {
        margin-right: 5px;
        padding: 15px 10px;
        font-size: 16px;
        border-radius: 25px;
    }
}

.header-layout1 .header-button .th-btn::after {
    background-color: var(--theme-color)
}

.header-layout1 .icon-btn {
    width: 72px;
    height: 72px;
    line-height: 65px;
    text-align: center;
    margin: auto;
    background-color: var(--theme-color);
    border: none;
    -webkit-transition: 0.4s;
    transition: 0.4s
}

.header-layout1 .icon-btn:hover {
    background-color: var(--title-color)
}

@media (max-width: 1199px) {
    .header-layout1 .icon-btn button:nth-child(1) {
        display: none
    }
}

.header-layout1 .icon-btn button:nth-child(2) {
    display: none
}

@media (max-width: 1199px) {
    .header-layout1 .icon-btn button:nth-child(2) {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

.header-layout1 .menu-area {
    margin-bottom: -36px
}

.header-layout1 .menu-area .menu-wrapp {
    background-color: #EEF1F4
}

@media (max-width: 1500px) {
    .header-layout1 .menu-area {
        padding: 0 12px
    }
}

@media (max-width: 575px) {
    .header-layout1 .header-logo {
        margin-left: 10px
    }

    .header-layout1 .header-logo img {
        max-width: 160px
    }
}

@media (max-width: 375px) {
    .header-layout1 .header-button .icon-btn {
        --btn-size: 50px
    }
}

.header-info {
    padding: 14px 0
}

.header-info-right {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 65px
}

.header-info-item {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px
}

@media (max-width: 1299px) {
    .header-info-item:nth-child(1) {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex
    }
}

@media (max-width: 1199px) {
    .header-info-item:nth-child(1) {
        display: none
    }
}

@media (max-width: 991px) {
    .header-info-item:nth-child(2) {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex
    }
}

@media (max-width: 767px) {
    .header-info-item:nth-child(2) {
        display: none
    }
}

.header-info-item:not(:last-child) ::after {
    position: absolute;
    width: 1px;
    height: 32px;
    content: "";
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: -32px;
    background-color: var(--th-border-color)
}

.header-info-icon {
    width: 32px;
    height: 32px;
    line-height: 28px;
    text-align: center;
    margin: auto;
    color: var(--theme-color);
    border: 1px solid var(--th-border-color);
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out
}

.header-info-icon:hover {
    background-color: var(--theme-color)
}

.header-info-icon:hover i {
    color: var(--white-color)
}

.header-info-icon i {
    font-size: 16px
}

.header-info-content {
    margin-top: -3px
}

.header-info-text {
    font-weight: 400;
    font-size: 14px;
    line-height: 1.5;
    display: block;
    margin-bottom: 0
}

.header-info-title {
    font-family: var(--body-font);
    font-weight: 600;
    font-size: 14px;
    line-height: 1.2;
    color: var(--title-color);
    margin-bottom: 0
}

.header-info-title>a {
    color: var(--title-color)
}

.header-info-title>a:hover {
    color: var(--theme-color)
}

.footer-wrapper {
    --border-color: rgba(255, 255, 255, 0.3);
    --body-color: #829592;
    position: relative;
    z-index: 2;
    overflow: hidden
}

.footer-overlay {
    position: relative
}

.footer-overlay::before {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    content: "";
    background-color: rgba(8, 25, 51, 0.5)
}

.widget-area {
    padding-top: 80px;
    padding-bottom: 10px
}

@media (max-width: 991px) {
    .widget-area {
        padding-top: 80px;
        padding-bottom: 5px
    }
}

.footer-links ul {
    padding: 0;
    margin: 0;
    text-align: center;
}

.footer-links li {
    position: relative;
    font-family: var(--body-font);
    display: inline-block;
    margin-right: 32px
}

.footer-links li:last-child {
    margin-right: 0;
    padding-right: 0
}

.footer-links li:not(:last-child)::after {
    position: absolute;
    width: 2px;
    height: 20px;
    right: -20px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    content: "";
    background-color: white;
}

.footer-links a {
    font-family: inherit;
    color: #ffffff;
    font-size: 14px
}

.footer-links a:hover {
    color: var(--theme-color)
}

.footer-info a {
    display: block;
    color: #ffffff
}

.footer-info a:not(:last-child) {
    margin-bottom: 16px
}

.footer-info a:hover {
    color: var(--theme-color)
}

.footer-info a:hover .footer-info-icon {
    color: var(--theme-color);
    border-color: var(--theme-color)
}

.footer-info-icon {
    font-size: 16px;
    width: 32px;
    height: 32px;
    line-height: 32px;
    display: inline-block;
    text-align: center;
    color: var(--white-color);
    margin-right: 8px;
    border: 1px solid var(--th-border-color);
    border-radius: 50%;
    -webkit-transition: .4s;
    transition: .4s
}

.copyright-wrap {
    padding: 20px 0;
    background-size: 100% auto;
    border-top: 1px solid rgba(255, 255, 255, 0.2)
}

.copyright-wrap .copyright-text {
    color: #ffffff;
    font-size: 14px
}

.copyright-wrap .copyright-text a {
    color: var(--theme-color)
}

.copyright-wrap .copyright-text a:hover {
    color: var(--white-color)
}

.copyright-wrap.bg-title .copyright-text a:hover {
    color: var(--theme-color)
}

.copyright-text {
    margin: 0
}

.copyright-text a {
    color: var(--theme-color)
}

.copyright-text a:hover {
    color: var(--white-color)
}

@media (max-width: 991px) {
    .footer-wrapper .widget-area {
        padding-top: var(--section-space-mobile);
        padding-bottom: 30px
    }

    .copyright-text {
        text-align: center
    }
}

.footer-default {
    --body-color: #B7C2CC
}

.breadcumb-menu {
    max-width: 100%;
    padding: 0;
    list-style-type: none;
    position: relative;
    margin-bottom: -0.5em;
    margin-top: 18px
}

.breadcumb-menu li {
    display: inline-block;
    margin-right: 3px;
    padding-right: 3px;
    list-style: none;
    position: relative
}

.breadcumb-menu li:after {
    content: "\f101";
    position: relative;
    margin-left: 10px;
    font-weight: 500;
    font-size: 16px;
    color: var(--black-color);
    font-family: var(--icon-font)
}

.breadcumb-menu li:last-child {
    padding-right: 0;
    margin-right: 0;
    color: var(--theme-color)
}

.breadcumb-menu li:last-child:after {
    display: none
}

.breadcumb-menu li,
.breadcumb-menu a,
.breadcumb-menu span {
    white-space: normal;
    word-break: break-word;
    font-weight: 500;
    font-size: 18px;
    font-family: var(--title-font);
    color: var(--black-color)
}

.breadcumb-menu a:hover {
    color: var(--theme-color)
}

.breadcumb-title {
    font-size: 40px;
    font-weight: 500;
    line-height: 1.285;
    color: var(--title-color);
    letter-spacing: 0.02em;
    text-transform: capitalize;
    margin-bottom: -0.3em;
    margin-top: -0.3em
}


.breadcumb-banner {
    position: absolute;
    top: 0;
    left: 0
}

.breadcumb-banner {
    height: 100%;
    left: auto;
    right: -10px;
    z-index: 2;
    width: 1091px;
    -webkit-mask-image: url("../img/bg/breadcrumbs-shape.png");
    mask-image: url("../img/bg/breadcrumbs-shape.png");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat
}

.breadcumb-banner::before {
    content: "";
    position: absolute;
    inset: 0;
    background: -webkit-linear-gradient(bottom, rgba(7, 14, 32, 0.3), rgba(7, 14, 32, 0.3));
    background: linear-gradient(0deg, rgba(7, 14, 32, 0.3), rgba(7, 14, 32, 0.3));
    z-index: 1
}

.breadcumb-banner img {
    object-fit: cover;
    height: 100%;
    width: 100%
}

@media (min-width: 1501px) and (max-width: 1700px) {
    .breadcumb-banner {
        width: 900px
    }
}

@media (max-width: 1500px) {
    .breadcumb-banner {
        width: 850px
    }
}

@media (max-width: 1399px) {
    .breadcumb-banner {
        width: 800px
    }
}

@media (max-width: 1299px) {
    .breadcumb-banner {
        width: 720px
    }
}

@media (max-width: 1199px) {
    .breadcumb-banner {
        width: 590px
    }
}

@media (max-width: 991px) {
    .breadcumb-banner {
        width: 420px
    }
}

@media (max-width: 767px) {
    .breadcumb-banner {
        display: none
    }
}

.breadcumb-shape {
    position: absolute;
    top: 15px;
    left: 38%
}

.breadcumb-wrapper {
    background-color: var(--smoke-color);
    overflow: hidden;
    position: relative;
    z-index: 1
}

.breadcumb-wrapper .breadcumb-content {
    --space: 142px;
    padding: var(--space) 0;
    position: relative;
    z-index: 1
}

@media (max-width: 1399px) {
    .breadcumb-wrapper .breadcumb-content {
        max-width: 500px
    }
}

@media (max-width: 991px) {
    .breadcumb-wrapper .breadcumb-content {
        max-width: 470px
    }
}

@media (max-width: 767px) {
    .breadcumb-wrapper .breadcumb-content {
        max-width: 100%;
        text-align: center
    }
}

@media (max-width: 1199px) {
    .breadcumb-wrapper .breadcumb-content {
        --space: 120px
    }

    .breadcumb-menu li,
    .breadcumb-menu a,
    .breadcumb-menu span {
        font-size: 16px
    }
}

@media (max-width: 991px) {
    .breadcumb-title {
        font-size: 35px
    }
}

@media (max-width: 767px) {
    .breadcumb-title {
        font-size: 40px
    }
}

@media (max-width: 575px) {
    .breadcumb-title {
        font-size: 34px
    }

    .breadcumb-wrapper .breadcumb-content {
        --space: 100px
    }
}

blockquote {
    font-size: 18px;
    line-height: 1.777;
    padding: 16px 60px 20px 60px;
    font-weight: 600;
    display: block;
    position: relative;
    background-color: #fff;
    margin: 40px 0 58px 0;
    color: var(--title-color3);
    font-family: var(--body-font);
    /* border: 1px solid #D8DDE1 !important; */
    border-radius: 10px
}

blockquote p {
    font-size: inherit;
    font-family: inherit;
    margin-top: -0.3em;
    margin-bottom: 9px;
    line-height: inherit;
    color: inherit;
    width: 100%;
    position: relative;
    z-index: 3
}

blockquote p a {
    color: inherit
}

blockquote:before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    height: 50px;
    width: 33px;
    background-color: var(--white-color)
}

blockquote:after {
    content: "";
    position: absolute;
    top: -10px;
    left: 25%;
    height: 20px;
    width: 25px;
    background-color: var(--theme-color);
    -webkit-clip-path: path("M2.21945 18.2759C0.775335 16.6762 0 14.8819 0 11.9734C0 6.8553 3.44484 2.26804 8.45438 0L9.70641 2.01506C5.03057 4.65307 4.11643 8.07633 3.75189 10.2347C4.5048 9.82818 5.49044 9.68633 6.45645 9.77992C8.98576 10.0241 10.9795 12.1898 10.9795 14.8819C10.9795 16.2393 10.4625 17.5411 9.54219 18.5009C8.62192 19.4608 7.37376 20 6.07229 20C5.35256 19.9934 4.64126 19.8376 3.97981 19.5416C3.31836 19.2457 2.71996 18.8154 2.21945 18.2759ZM16.24 18.2759C14.7959 16.6762 14.0205 14.8819 14.0205 11.9734C14.0205 6.8553 17.4654 2.26804 22.4749 0L23.7269 2.01506C19.0511 4.65307 18.137 8.07633 17.7724 10.2347C18.5253 9.82818 19.511 9.68633 20.477 9.77992C23.0063 10.0241 25 12.1898 25 14.8819C25 16.2393 24.483 17.5411 23.5627 18.5009C22.6424 19.4608 21.3943 20 20.0928 20C19.3731 19.9934 18.6618 19.8376 18.0003 19.5416C17.3389 19.2457 16.7405 18.8154 16.24 18.2759Z");
    clip-path: path("M2.21945 18.2759C0.775335 16.6762 0 14.8819 0 11.9734C0 6.8553 3.44484 2.26804 8.45438 0L9.70641 2.01506C5.03057 4.65307 4.11643 8.07633 3.75189 10.2347C4.5048 9.82818 5.49044 9.68633 6.45645 9.77992C8.98576 10.0241 10.9795 12.1898 10.9795 14.8819C10.9795 16.2393 10.4625 17.5411 9.54219 18.5009C8.62192 19.4608 7.37376 20 6.07229 20C5.35256 19.9934 4.64126 19.8376 3.97981 19.5416C3.31836 19.2457 2.71996 18.8154 2.21945 18.2759ZM16.24 18.2759C14.7959 16.6762 14.0205 14.8819 14.0205 11.9734C14.0205 6.8553 17.4654 2.26804 22.4749 0L23.7269 2.01506C19.0511 4.65307 18.137 8.07633 17.7724 10.2347C18.5253 9.82818 19.511 9.68633 20.477 9.77992C23.0063 10.0241 25 12.1898 25 14.8819C25 16.2393 24.483 17.5411 23.5627 18.5009C22.6424 19.4608 21.3943 20 20.0928 20C19.3731 19.9934 18.6618 19.8376 18.0003 19.5416C17.3389 19.2457 16.7405 18.8154 16.24 18.2759Z")
}

blockquote cite {
    display: inline-block;
    font-size: 20px;
    line-height: 1;
    font-weight: 500;
    font-style: normal;
    font-family: var(--body-font);
    white-space: nowrap;
    position: absolute;
    bottom: -17px;
    left: 30%;
    background-color: var(--theme-color);
    color: var(--white-color);
    padding: 7px 45px 7px 20px;
    -webkit-clip-path: polygon(0 0, 100% 0, calc(100% - 25px) 100%, 0% 100%);
    clip-path: polygon(0 0, 100% 0, calc(100% - 25px) 100%, 0% 100%);
    border-radius: 10px 0 0 10px
}

blockquote cite br {
    display: none
}

blockquote:not(:has(>cite)) p:last-child {
    margin-bottom: -0.3em
}

blockquote p:has(cite) {
    padding-bottom: 10px
}

blockquote p cite {
    margin-top: 20px;
    margin-bottom: -0.5em;
    bottom: -32px
}

@media (max-width: 1199px) {

    blockquote {
        padding: 22px 30px
    }
}

@media (max-width: 767px) {

    blockquote cite {
        font-size: 18px;
        left: 30px
    }
}

@media (max-width: 375px) {

    blockquote cite {
        font-size: 18px;
        padding-left: 22px
    }

    blockquote cite:before {
        width: 20px
    }
}

.blog-meta {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.blog-meta span,
.blog-meta a {
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
    color: var(--black-color8);
    font-family: var(--body-font);
    position: relative;
    margin-right: 30px;
    line-height: 21px
}

.blog-meta span i,
.blog-meta a i {
    margin-right: 8px;
    color: var(--theme-color) !important
}

.blog-meta span:after,
.blog-meta a:after {
    content: '';
    position: absolute;
    height: 14px;
    width: 1px;
    background: var(--black-color8);
    right: -15px;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.blog-meta span:last-child,
.blog-meta a:last-child {
    margin-right: 0;
    padding-right: 0
}

.blog-meta span:last-child:after,
.blog-meta a:last-child:after {
    display: none
}

.blog-meta a:hover {
    color: var(--theme-color)
}


.blog-img img {
    width: 100%;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.blog-radius-img {
    border-radius: 16px;
    overflow: hidden
}

.th-blog {
    margin-bottom: 30px
}

.blog-single {
    position: relative;
    margin-bottom: var(--blog-space-y, 62px);
    background-color: var(--white-color);
    overflow: hidden
}

.blog-single:not(.has-post-thumbnail) {
    overflow: unset
}

.blog-single .blog-meta {
    margin: -0.2em 0 20px 0
}

.blog-single .blog-content {
    margin: 0px 0 0 0;
    padding: 0 0 0;
    position: relative
}


.blog-single .blog-img {
    position: relative;
    overflow: hidden;
    background-color: var(--smoke-color);
    border-radius: 16px;
    margin-bottom: 40px
}

.blog-details .blog-meta {
    margin: -0.15em 0 20px 0
}

.blog-details .blog-single {
    margin-bottom: 80px
}

.blog-details .blog-single .blog-img {
    border-radius: 0
}

.blog-details .blog-single .blog-img img {
    /* height:500px; */
    width: 100%
}

.blog-details .page-title {
    color: var(--title-color4)
}

.blog-details .checklist li {
    font-family: var(--body-font);
    color: var(--black-color8)
}

@media (max-width: 767px) {

    .blog-details .blog-single {
        --blog-space-x: 20px;
        --blog-space-y: 20px
    }

    .blog-single .blog-meta span,
    .blog-single .blog-meta a {
        padding-right: 3px
    }

    .blog-single .blog-meta span:after,
    .blog-single .blog-meta a:after {
        display: none
    }
}

@media (max-width: 575px) {

    blockquote {
        padding: 20px 20px 30px
    }

    blockquote:before {
        right: 30px
    }
}

.th-hero-wrapper {
    position: relative;
    z-index: 2;
    overflow: hidden
}

@media (max-width: 1299px) {
    .th-hero-wrapper .hero-text-wrap {
        margin-top: -60px
    }
}

@media (max-width: 991px) {
    .th-hero-wrapper .hero-text-wrap {
        margin-top: 0
    }
}

.th-hero-bg {
    position: absolute;
    inset: 0;
    z-index: -1
}

.th-hero-bg img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    background-size: cover
}

.hero-1 {
    position: relative;
    overflow: hidden
}

.hero-1 .th-hero-bg::before {
    content: "";
    position: absolute;
    inset: 0;
    background: -webkit-linear-gradient(right, rgba(3, 6, 14, 0) -46.25%, rgba(3, 6, 14, 0.7) 68.02%);
    background: linear-gradient(270deg, rgba(3, 6, 14, 0) -46.25%, rgba(3, 6, 14, 0.7) 68.02%)
}

.hero-1 .slider-pagination {
    position: absolute;
    right: 150px;
    left: auto !important;
    bottom: 18.5% !important;
    margin: 0;
    width: auto !important;
    height: auto;
    -webkit-transform: translate(0, 50%);
    -ms-transform: translate(0, 50%);
    transform: translate(0, 50%)
}

.hero-1 .slider-pagination .swiper-pagination-bullet {
    border-color: #D3DBE2
}

@media (max-width: 1199px) {
    .hero-1 .slider-pagination {
        display: none
    }
}

.hero-style1 {
    padding: 180px 0 229px 0;
    max-width: 694px
}

@media (max-width: 1299px) {
    .hero-style1 {
        padding: 210px 0 210px 0
    }
}

@media (max-width: 991px) {
    .hero-style1 {
        padding: 170px 0 40px 0;
        text-align: center
    }
}

@media (max-width: 575px) {
    .hero-style1 {
        padding: 150px 0 0px 0
    }
}

.hero-style1 .hero-title {
    font-weight: 500;
    margin-bottom: 30px
}

.hero-style1 .hero-text {
    font-weight: 400;
    margin-bottom: 50px;
    max-width: 695px
}

@media (max-width: 767px) {
    .hero-style1 .hero-text {
        max-width: 100%
    }
}

.hero-style1 .th-btn {
    color: var(--white-color);
    padding: 19px 25px
}

@media (max-width: 375px) {
    .hero-style1 .th-btn {
        padding: 15px 20px
    }
}

.hero-style1 .th-btn .th-arrow {
    -webkit-filter: brightness(1) contrast(1);
    filter: brightness(1) contrast(1)
}

.popup-search-box {
    position: fixed;
    top: 0;
    left: 50%;
    background-color: rgba(19, 24, 43, 0.9);
    height: 0;
    width: 0;
    overflow: hidden;
    z-index: 99999;
    opacity: 0;
    visibility: hidden;
    border-radius: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s
}

.popup-search-box button.searchClose {
    width: 60px;
    height: 60px;
    line-height: 58px;
    position: absolute;
    top: 40px;
    right: 40px;
    border-width: 2px;
    border-style: solid;
    border-color: var(--theme-color);
    background-color: transparent;
    font-size: 22px;
    border-radius: 50%;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s;
    color: var(--white-color)
}

.popup-search-box button.searchClose:hover {
    color: var(--white-color);
    border-color: var(--theme-color);
    background: var(--theme-color);
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg)
}

.popup-search-box form {
    position: absolute;
    top: 50%;
    left: 50%;
    display: inline-block;
    padding-bottom: 40px;
    cursor: auto;
    width: 100%;
    max-width: 700px;
    -webkit-transform: translate(-50%, -50%) scale(0);
    -ms-transform: translate(-50%, -50%) scale(0);
    transform: translate(-50%, -50%) scale(0);
    -webkit-transition: -webkit-transform ease 0.4s;
    transition: -webkit-transform ease 0.4s;
    transition: transform ease 0.4s;
    transition: transform ease 0.4s, -webkit-transform ease 0.4s
}

@media (max-width: 1199px) {
    .popup-search-box form {
        max-width: 600px
    }
}

@media (max-width: 575px) {
    .popup-search-box form {
        max-width: 400px
    }
}

@media (max-width: 375px) {
    .popup-search-box form {
        max-width: 300px
    }
}

.popup-search-box form input {
    font-size: 18px;
    height: 70px;
    width: 100%;
    border: 2px solid var(--theme-color);
    background-color: transparent;
    padding-left: 30px;
    color: #fff;
    border-radius: 50px;
    padding-right: 80px
}

.popup-search-box form input::-moz-placeholder {
    color: #fff
}

.popup-search-box form input::-webkit-input-placeholder {
    color: #fff
}

.popup-search-box form input:-ms-input-placeholder {
    color: #fff
}

.popup-search-box form input::-ms-input-placeholder {
    color: #fff
}

.popup-search-box form input::placeholder {
    color: #fff
}

.popup-search-box form button {
    position: absolute;
    top: 0px;
    background-color: transparent;
    border: none;
    color: #fff;
    font-size: 24px;
    right: 12px;
    color: var(--white-color);
    cursor: pointer;
    width: 70px;
    height: 70px;
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s;
    -webkit-transform: scale(1.001);
    -ms-transform: scale(1.001);
    transform: scale(1.001)
}

.popup-search-box form button:hover {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1)
}

.popup-search-box.show {
    opacity: 1;
    visibility: visible;
    width: 100.1%;
    height: 100%;
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s;
    border-radius: 0
}

.popup-search-box.show form {
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
    -webkit-transform: translate(-50%, -50%) scale(1);
    -ms-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1)
}

.sidemenu-wrapper {
    position: fixed;
    z-index: 99999;
    right: 0;
    top: 0;
    height: 100%;
    width: 0;
    background-color: rgba(0, 0, 0, 0.75);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all ease 0.8s;
    transition: all ease 0.8s
}

.sidemenu-wrapper .widget {
    padding: 0;
    border: none;
    background-color: transparent
}

.sidemenu-wrapper.show {
    opacity: 1;
    visibility: visible;
    width: 100%;
    -webkit-transition: all ease 0.8s;
    transition: all ease 0.8s
}

@media (max-width: 575px) {
    .sidemenu-wrapper {
        background: transparent
    }
}


.woocommerce-form-coupon,
.woocommerce-form-login {
    padding: 35px 40px 35px 40px;
    background-color: var(--white-color);
    box-shadow: 0px 6px 30px rgba(1, 15, 28, 0.1);
    margin-bottom: 0;
    border-radius: 0px
}

@media (max-width: 575px) {

    
    .woocommerce-form-coupon,
    .woocommerce-form-login {
        padding: 40px 20px;
        border-radius: 10px
    }
}


.woocommerce-form-coupon .form-group,
.woocommerce-form-login .form-group {
    margin-bottom: 20px
}


.woocommerce-form-coupon .form-group:last-child,
.woocommerce-form-login .form-group:last-child {
    margin-bottom: 0
}

.rating-select label {
    margin: 0;
    margin-right: 10px
}

.rating-select p.stars {
    margin-bottom: 0;
    line-height: 1
}

.rating-select p.stars a {
    position: relative;
    height: 14px;
    width: 18px;
    text-indent: -999em;
    display: inline-block;
    text-decoration: none
}

.rating-select p.stars a::before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 18px;
    height: 14px;
    line-height: 1;
    font-family: var(--icon-font);
    content: "\e28b";
    font-weight: 400;
    text-indent: 0;
    color: var(--yellow-color)
}

.rating-select p.stars a:hover~a::before {
    content: "\e28b";
    font-weight: 400
}

.rating-select p.stars:hover a::before {
    content: "\e28b";
    font-weight: 700
}

.rating-select p.stars.selected a.active::before {
    content: "\e28b";
    font-weight: 700
}

.rating-select p.stars.selected a.active~a::before {
    content: "\e28b";
    font-weight: 400
}

.rating-select p.stars.selected a:not(.active)::before {
    content: "\e28b";
    font-weight: 700
}

.mfp-content {
    margin: 1.5rem auto
}

.mfp-content .container {
    position: relative
}

.mfp-fade.mfp-bg {
    opacity: 0;
    -webkit-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out
}

.mfp-fade.mfp-bg.mfp-ready {
    opacity: 0.8
}

.mfp-fade.mfp-bg.mfp-removing {
    opacity: 0
}

.mfp-fade.mfp-wrap .mfp-content {
    opacity: 0;
    -webkit-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
    opacity: 1
}

.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
    opacity: 0
}

.woocommerce-Reviews .comment-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 0 24px;
    margin: -12px !important;
    margin-bottom: 28px !important
}

.woocommerce-Reviews .comment-list li {
    width: 50%
}

@media (max-width: 991px) {
    .woocommerce-Reviews .comment-list li {
        width: 100%
    }
}

@media (max-width: 991px) {
    .woocommerce-Reviews .comment-list {
        grid-template-columns: repeat(1, 1fr)
    }
}

.woocommerce-form-login select,
.woocommerce-form-login .form-select,
.woocommerce-form-login .form-control,
.woocommerce-form-coupon select,
.woocommerce-form-coupon .form-select,
.woocommerce-form-coupon .form-control {
    margin-bottom: var(--bs-gutter-x)
}

#ship-to-different-address {
    margin-top: 15px
}

.contact-map {
    position: relative;
    line-height: 0px;
    margin-bottom: 60px
}

@media (max-width: 991px) {
    .contact-map {
        margin-bottom: 40px
    }
}

.contact-map .contact-icon {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    cursor: pointer
}

.contact-map .contact-icon i {
    width: 100px;
    height: 100px;
    line-height: 100px;
    text-align: center;
    font-size: 24px;
    color: var(--white-color);
    background-color: var(--theme-color);
    border-radius: 50%
}

@media (max-width: 991px) {
    .contact-map .contact-icon i {
        width: 80px;
        height: 80px;
        line-height: 80px
    }
}

.contact-map .contact-icon {
    width: 50px;
    height: 50px;
    display: inline-block;
    z-index: 3
}

.contact-map .contact-icon img {
    -webkit-animation: jumpAni 2s ease-in-out infinite alternate;
    animation: jumpAni 2s ease-in-out infinite alternate
}

.contact-map .contact-icon:after {
    content: "";
    position: absolute;
    left: 0px;
    right: 0;
    margin: auto;
    top: 90%;
    width: 38px;
    height: 18px;
    border-radius: 50%;
    background: rgba(13, 13, 12, 0.2);
    z-index: -1
}

.contact-map .contact-icon:before {
    content: "";
    position: absolute;
    left: -40px;
    right: 0;
    margin: auto;
    top: 50%;
    width: 130px;
    height: 60px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.5);
    border: 1px solid var(--white-color);
    z-index: -1
}

@-webkit-keyframes location-anim {
    0% {
        -webkit-transform: rotate(5deg) translate(5px, 5px);
        transform: rotate(5deg) translate(5px, 5px)
    }

    100% {
        -webkit-transform: rotate(5deg) translate(-5px, -5px);
        transform: rotate(5deg) translate(-5px, -5px)
    }
}

@keyframes location-anim {
    0% {
        -webkit-transform: rotate(5deg) translate(5px, 5px);
        transform: rotate(5deg) translate(5px, 5px)
    }

    100% {
        -webkit-transform: rotate(5deg) translate(-5px, -5px);
        transform: rotate(5deg) translate(-5px, -5px)
    }
}

@-webkit-keyframes location-anim2 {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    100% {
        -webkit-transform: scale(0.5);
        transform: scale(0.5)
    }
}

@keyframes location-anim2 {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    100% {
        -webkit-transform: scale(0.5);
        transform: scale(0.5)
    }
}

.contact-map iframe {
    width: 100%;
    height: 400px
}

.contact-map.style3 {
    margin-bottom: 0
}

.contact-map.style3 iframe {
    height: 350px
}

@media (max-width: 1199px) {
    .contact-map.style3 iframe {
        height: 350px
    }
}

.contact-form2 {
    background-color: #EEF1F4;
    padding: 68px 56px
}

@media (max-width: 1199px) {
    .contact-form2 {
        padding: 40px 30px
    }
}

.contact-form2 select,
.contact-form2 .form-control,
.contact-form2 .form-select,
.contact-form2 textarea,
.contact-form2 input {
    height: 60px
}

.contact-form2 textarea.form-control,
.contact-form2 textarea {
    min-height: 200px
}

.contact-form2 .th-btn {
    padding: 19px 25px
}

.contact-img {
    height: 100%
}

.contact-img img {
    width: 100%;
    height: 100%;
    object-fit: cover
}


/* Tablet + Mobile */
@media (max-width: 991px) {
    .contact-img {
        display: none !important;
    }
}

.global-img {
    position: relative;
    overflow: hidden;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease
}

.global-img:after {
    content: "";
    position: absolute;
    width: 200%;
    height: 0%;
    left: 50%;
    top: 50%;
    background-color: rgba(255, 255, 255, 0.3);
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -ms-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg);
    z-index: 1
}

.global-img img {
    width: 100%;
    object-fit: cover;
    -webkit-transition: 1.3s all ease;
    transition: 1.3s all ease
}

.global-img:hover img {
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2)
}

.global-img:hover:after {
    height: 250%;
    -webkit-transition: all 600ms linear;
    transition: all 600ms linear;
    background-color: transparent
}

.about-wrap1 {
    z-index: 2
}

.about-wrap1 .box-text {
    margin-top: -6px;
    font-size: 16px
}

.about-wrap1 .btn-wrap {
    margin-top: 55px
}

.img-box1 {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 24px;
    z-index: 2
}

@media (max-width: 575px) {
    .img-box1 {
        gap: 15px;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.img-box1 .img1 img,
.img-box1 .img2 img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.img-box1 .about-wrapp {
    position: absolute;
    left: -75px;
    top: -20px
}

@media (max-width: 575px) {
    .img-box1 .about-wrapp {
        left: 0
    }
}

@media (max-width: 375px) {
    .img-box1 .about-wrapp {
        position: relative;
        top: 0px
    }
}

.img-box1 .about-wrapp .logo {
    background-color: white;
}

.about-feature {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 24px
}

@media (max-width: 1199px) {
    .about-feature {
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center
    }
}

.about-feature:not(:last-child) {
    margin-bottom: 45px
}

@media (max-width: 375px) {
    .about-feature {
        display: block
    }
}

.about-feature .box-icon {
    position: relative;
    min-width: 80px;
    height: 80px;
    line-height: 80px;
    text-align: center;
    border: 1px solid var(--th-border-color);
    overflow: hidden
}

.about-feature .box-icon:before {
    content: "";
    position: absolute;
    inset: 0;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    border-radius: 0;
    background-color: var(--theme-color);
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-transition: all 0.5s cubic-bezier(0.62, 0.21, 0.45, 1.52);
    transition: all 0.5s cubic-bezier(0.62, 0.21, 0.45, 1.52);
    z-index: -1
}

.about-feature .box-icon img {
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

@media (max-width: 375px) {
    .about-feature .box-icon {
        display: -webkit-inline-box;
        display: -webkit-inline-flex;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin-bottom: 20px
    }
}

.about-feature .box-title {
    font-family: --title-font;
    font-weight: 500;
    font-size: 24px;
    line-height: 1.5;
    letter-spacing: 0.02em;
    margin-bottom: 6px
}

.about-feature:hover .box-icon {
    border-color: var(--theme-color)
}

.about-feature:hover .box-icon:before {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1)
}

.about-feature:hover .box-icon img {
    -webkit-transform: rotateY(180deg);
    transform: rotateY(180deg);
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1)
}

.circular-progress {
    position: relative;
    width: 190px;
    height: 190px;
    text-align: center;
    display: inline-block
}

.circular-progress svg {
    width: 100%;
    height: 100%
}

.circular-progress .circle {
    fill: none;
    stroke-width: 3;
    stroke-dasharray: 100;
    stroke-dashoffset: 100;
    -webkit-transition: stroke-dashoffset 1s ease;
    transition: stroke-dashoffset 1s ease;
    stroke-linecap: round;
    stroke: var(--theme-color)
}

.circular-progress .box-title {
    font-size: 16px;
    font-weight: 400;
    color: var(--body-color);
    margin-bottom: -0.3em;
    margin-top: 13px
}

@media (max-width: 1299px) {
    .circular-progress {
        width: 170px;
        height: 170px
    }

    .circular-progress .circle {
        stroke-width: 2
    }

    .circular-progress .box-title {
        font-size: 14px
    }
}

.testi-grid-dots .tab-btn {
    position: absolute;
    width: 80px;
    height: 80px;
    z-index: 2
}

@media (max-width: 1299px) {
    .testi-grid-dots .tab-btn {
        display: none
    }
}

.testi-grid-dots .tab-btn:nth-child(1) {
    position: absolute;
    bottom: 0%;
    left: 0%
}

@media (max-width: 1399px) {
    .testi-grid-dots .tab-btn:nth-child(1) {
        left: 0
    }
}

.testi-grid-dots .tab-btn:nth-child(2) {
    position: absolute;
    bottom: 26%;
    left: 10%
}

@media (max-width: 1399px) {
    .testi-grid-dots .tab-btn:nth-child(2) {
        left: 0
    }
}

.testi-grid-dots .tab-btn:nth-child(3) {
    position: absolute;
    bottom: 5%;
    right: 0%
}

.testi-grid-dots .tab-btn:nth-child(4) {
    position: absolute;
    bottom: 35%;
    right: 15%
}

.testi-grid-dots .tab-btn img {
    cursor: pointer;
    -webkit-transition: 0.4s;
    transition: 0.4s
}

.counter-area1 {
    background: var(--title-color);
    padding: 80px 0
}

.counter-card {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 32px
}

@media (max-width: 1199px) {
    .counter-card {
        margin-right: 0;
        display: block;
        text-align: center;
        padding: 80px;
        border-right: 1px solid var(--theme-color);
        border-bottom: 1px solid var(--theme-color)
    }

    .counter-card:nth-child(3) {
        border-right: 1px solid transparent
    }

    .counter-card:nth-child(5) {
        border-bottom: 1px solid transparent
    }

    .counter-card:nth-child(7) {
        border-bottom: 1px solid transparent;
        border-right: 1px solid transparent
    }

    .counter-card:last-child {
        border-bottom: 1px solid transparent
    }
}

@media (max-width: 1199px) and (max-width: 767px) {
    .counter-card {
        padding: 40px 20px
    }
}

@media (max-width: 1199px) and (max-width: 575px) {
    .counter-card {
        border-right: 1px solid transparent;
        padding: 20px 20px
    }

    .counter-card:nth-child(5) {
        border-bottom: 1px solid var(--theme-color)
    }
}

@media (max-width: 1199px) {
    .counter-card .box-icon {
        margin-bottom: 25px
    }
}

@media (max-width: 1199px) {
    .counter-card:last-child {
        border-right-color: transparent
    }
}

.counter-card .box-number {
    color: var(--white-color);
    font-weight: 700;
    font-size: 57px;
    line-height: 1.2;
    letter-spacing: 0.02em;
    margin-top: -0.22em;
    margin-bottom: 0
}

@media (max-width: 1299px) {
    .counter-card .box-number {
        font-size: 40px;
        line-height: 52px
    }
}

.counter-card .box-text {
    font-family: var(--title-font);
    color: var(--white-color);
    max-width: 210px;
    font-size: 24px;
    font-weight: 500;
    display: inline-block
}

@media (max-width: 1299px) {
    .counter-card .box-text {
        font-size: 20px
    }
}

@media (max-width: 767px) {
    .counter-card .box-text {
        font-size: 16px;
        max-width: 170px
    }
}

.counter-wrap1 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

@media (max-width: 1199px) {
    .counter-wrap1 {
        display: grid;
        grid-template-columns: auto auto;
        -webkit-box-pack: normal;
        -webkit-justify-content: normal;
        -ms-flex-pack: normal;
        justify-content: normal;
        gap: 0px
    }
}

@media (max-width: 575px) {
    .counter-wrap1 {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 0px
    }
}

.counter-wrap1 .divider {
    width: 1px;
    height: 115px;
    background: var(--body-color)
}

.counter-wrap1 .divider:last-of-type {
    display: none
}

@media (max-width: 1199px) {
    .counter-wrap1 .divider {
        display: none
    }
}

@media (max-width: 1299px) {
    .counter-wrap1 .divider {
        height: 65px
    }
}

@media (max-width: 1199px) {
    .counter-wrap1 .divider {
        display: none
    }
}

.counter-wrap1 .media-body {
    gap: 32px
}

@media (max-width: 1299px) {
    .counter-wrap1 .media-body {
        gap: 12px
    }
}

@media (max-width: 1199px) {
    .counter-wrap1 .media-body {
        display: block
    }
}

.blog-img {
    overflow: hidden;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.checklist ul {
    padding-left: 0;
    list-style: none;
    text-align: left;
    margin-bottom: 0
}

.checklist li {
    color: var(--title-color);
    font-weight: 500;
    font-size: 20px;
    font-family: var(--title-font);
    padding-left: 40px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 12px;
    line-height: normal;
    position: relative
}

.checklist li:before {
    content: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_651_4102)'%3E%3Cpath d='M23.3137 3.2813C22.9607 2.92762 22.3878 2.92701 22.0348 3.2798L11.1835 14.1024L7.26844 9.85022C6.93014 9.483 6.35817 9.45919 5.99034 9.79744C5.6228 10.1357 5.59927 10.708 5.93756 11.0755L10.4903 16.02C10.6571 16.2012 10.8904 16.3064 11.1365 16.3115C11.1431 16.3118 11.1495 16.3118 11.1558 16.3118C11.3949 16.3118 11.6249 16.2168 11.7944 16.048L23.312 4.56056C23.6659 4.20783 23.6665 3.63497 23.3137 3.2813Z' fill='%23D3224D'/%3E%3Cpath d='M23.0955 11.0955C22.5959 11.0955 22.191 11.5004 22.191 12C22.191 17.6195 17.6195 22.191 12 22.191C6.38081 22.191 1.80905 17.6195 1.80905 12C1.80905 6.38081 6.38081 1.80905 12 1.80905C12.4996 1.80905 12.9045 1.40414 12.9045 0.904547C12.9045 0.404906 12.4996 0 12 0C5.38312 0 0 5.38312 0 12C0 18.6166 5.38312 24 12 24C18.6166 24 24 18.6166 24 12C24 11.5004 23.5951 11.0955 23.0955 11.0955Z' fill='%23D3224D'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_651_4102'%3E%3Crect width='24' height='24' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
    position: absolute;
    left: 0;
    top: 2px;
    width: 24px;
    height: 24px
}

.checklist li>i {
    color: var(--theme-color);
    position: relative;
    top: 2px
}

.checklist li:not(:last-child) {
    margin-bottom: 14px
}

@media (max-width: 575px) {
    .checklist li {
        font-size: 18px
    }
}

@media (max-width: 1199px) {
    .checklist.mb-45 {
        margin-bottom: 40px
    }
}

.checklist.style3 li {
    color: var(--title-color);
    padding-left: 37px
}

.checklist.style3 li:before {
    -webkit-clip-path: path("M8.55186 18.5479C11.0008 14.7831 20.008 5.09279 27.4776 0.0585812C27.7949 -0.155222 28.1531 0.264464 27.8901 0.542246C20.7938 8.03629 13.2087 16.513 8.85249 23.8428C8.73114 24.047 8.43819 24.0541 8.31139 23.8533C6.11928 20.381 4.2392 15.3898 0.209389 13.8603C-0.089979 13.7467 -0.0612074 13.3235 0.250089 13.2485C4.1119 12.318 5.92146 15.6208 8.55186 18.5475V18.5479Z");
    clip-path: path("M8.55186 18.5479C11.0008 14.7831 20.008 5.09279 27.4776 0.0585812C27.7949 -0.155222 28.1531 0.264464 27.8901 0.542246C20.7938 8.03629 13.2087 16.513 8.85249 23.8428C8.73114 24.047 8.43819 24.0541 8.31139 23.8533C6.11928 20.381 4.2392 15.3898 0.209389 13.8603C-0.089979 13.7467 -0.0612074 13.3235 0.250089 13.2485C4.1119 12.318 5.92146 15.6208 8.55186 18.5475V18.5479Z");
    width: 27px;
    background: var(--title-color)
}

.checklist.style3 li:not(:last-child) {
    margin-bottom: 18px
}

.bg-img {
    position: absolute;
    inset: 0;
    height: 100%;
    width: 100%
}

.bg-img img {
    width: 100%;
    height: 100%
}

.btn-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px 30px
}

@media (max-width: 1199px) {

    p.mb-45 {
        margin-bottom: 38px
    }
}

.modal-backdrop.show {
    opacity: .7;
    z-index: 99
}

.modal {
    z-index: 999;
    padding-right: 0 !important
}

.modal-dialog {
    max-width: 100%
}

.modal-dialog .modal-content {
    background: transparent;
    border: 0
}

.modal-dialog .btn-close {
    padding: 0;
    outline: 0;
    box-shadow: none;
    margin: 0 10px 0 auto;
    border-radius: 50%;
    background: var(--theme-color);
    color: var(--white-color);
    border: 0;
    opacity: 1
}

.modal-dialog .btn-close:hover i {
    -webkit-animation: toTopFromBottom .5s forwards;
    animation: toTopFromBottom .5s forwards
}

.discount-wrapp {
    position: relative;
    width: 160px;
    height: 160px;
    border-radius: 50%;
    z-index: 2
}

.discount-wrapp .logo {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 55px;
    height: 94px;
    line-height: 94px;
    text-align: center;
    border-radius: 50%;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    background-color: var(--title-color);
    border-radius: 50%;
    text-align: center;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.discount-wrapp .logo:hover>i {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.discount-tag {
    display: inline-block;
    min-height: 160px;
    min-width: 160px;
    border-radius: 50%;
    z-index: 1;
    color: var(--title-color);
    font-size: 14px;
    font-weight: 600;
    text-align: center;
    -webkit-transform: rotate(30deg);
    -ms-transform: rotate(30deg);
    transform: rotate(30deg);
    animation: spin 10s infinite alternate-reverse
}

.discount-tag span {
    --rotate-letter: 9deg;
    min-height: 80px;
    position: absolute;
    min-width: 64px;
    left: 24px;
    top: -2px;
    text-transform: uppercase;
    -webkit-transform-origin: bottom center;
    -ms-transform-origin: bottom center;
    transform-origin: bottom center;
    -webkit-transform: rotate(var(--rotate-letter));
    -ms-transform: rotate(var(--rotate-letter));
    transform: rotate(var(--rotate-letter))
}

.faculty-card {
    position: relative
}

.faculty-card .box-content {
    position: relative;
    background-color: var(--white-color);
    box-shadow: 0px 10px 50px rgba(135, 143, 151, 0.2);
    width: calc(100% - 80px);
    margin: -75px auto 0 auto;
    padding: 48px 60px;
    text-align: center;
    z-index: 2
}

@media (max-width: 1500px) {
    .faculty-card .box-content {
        padding: 40px
    }
}

@media (max-width: 1399px) {
    .faculty-card .box-content {
        padding: 40px 20px
    }
}

@media (max-width: 1299px) {
    .faculty-card .box-content {
        width: calc(100% - 30px)
    }
}

@media (max-width: 1199px) {
    .faculty-card .box-content {
        padding: 40px 35px;
        width: calc(100% - 50px)
    }
}

@media (max-width: 375px) {
    .faculty-card .box-content {
        padding: 40px 20px;
        width: calc(100% - 20px)
    }
}

.faculty-card .box-title {
    position: relative;
    font-weight: 500;
    font-size: 24px;
    color: #070E20;
    line-height: 1.4;
    display: block;
    letter-spacing: 0.02em;
    padding-bottom: 18px;
    margin-bottom: 32px
}

.faculty-card .box-title:after {
    position: absolute;
    width: 58px;
    height: 2px;
    bottom: 0;
    left: 50%;
    content: "";
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: var(--theme-color);
    -webkit-transition: .4s;
    transition: .4s
}

.faculty-card .th-btn:before {
    background: var(--theme-color)
}

.faculty-card .th-btn:hover {
    border-color: var(--theme-color)
}

.faculty-card .faculty-image {
    margin-bottom: 30px
}

.faculty-card .box-text {
    font-size: 16px;
    margin-bottom: 0
}

.faculty-card .h5 {
    font-size: 24px
}

.faculty-card .th-btn {
    padding: 11px 25px
}

.faculty-list {
    margin-bottom: 30px
}

.faculty-list .box-title {
    margin-bottom: 5px
}

.faculty-list .box-text {
    font-size: 16px
}

.mfp-wrap {
    -webkit-transform: translateY(-65px);
    -ms-transform: translateY(-65px);
    transform: translateY(-65px);
    -webkit-transition: all 1s ease-out;
    transition: all 1s ease-out
}

.mfp-wrap.mfp-ready {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.popup-login-register {
    position: relative;
    max-width: 606px;
    display: block;
    margin: auto;
    background: var(--white-color);
    border-radius: 16px;
    padding: 40px
}

.popup-login-register ul {
    gap: 30px;
    border-bottom: 3px solid var(--th-border-color);
    margin-bottom: 28px
}

.popup-login-register ul li .nav-menu {
    position: relative;
    background: transparent;
    font-size: 18px;
    color: var(--body-color);
    border: none;
    font-family: var(--title-font);
    font-weight: 600;
    padding: 0;
    padding-bottom: 20px
}

.popup-login-register ul li .nav-menu:before {
    content: '';
    height: 3px;
    width: 100%;
    position: absolute;
    bottom: -3px;
    left: 0
}

.popup-login-register ul li .nav-menu.active {
    color: var(--black-color2)
}

.popup-login-register ul li .nav-menu.active:before {
    background-color: var(--theme-color)
}

.popup-login-register .box-title {
    font-size: 28px;
    font-weight: 700
}

.faq-area-1 {
    background-color: var(--smoke-color)
}

.faq-area-1 .ripple-1,
.faq-area-1 .ripple-2,
.faq-area-1 .ripple-3,
.faq-area-1 .ripple-4,
.faq-area-1 .ripple-5 {
    width: 526px;
    height: 526px;
    position: absolute;
    left: -150px;
    text-align: center;
    bottom: -50px;
    margin: auto;
    background-color: transparent;
    border: 1px solid rgba(87, 88, 95, 0.5);
    border-radius: 50%;
    -webkit-animation: ripple2 10s linear infinite;
    animation: ripple2 10s linear infinite;
    opacity: 0
}

.faq-area-1 .ripple-1 {
    -webkit-animation-delay: 0;
    animation-delay: 0
}

.faq-area-1 .ripple-2 {
    -webkit-animation-delay: 2s;
    animation-delay: 2s
}

.faq-area-1 .ripple-3 {
    -webkit-animation-delay: 4s;
    animation-delay: 4s
}

.faq-area-1 .ripple-4 {
    -webkit-animation-delay: 6s;
    animation-delay: 6s
}

.faq-area-1 .ripple-5 {
    -webkit-animation-delay: 8s;
    animation-delay: 8s
}

.accordion-card {
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    border-radius: 0;
    overflow: hidden;
    background-color: var(--title-color);
    border: 1px solid var(--th-border-color);
    text-align: left;
    position: relative;
    z-index: 3;
    padding-bottom: 13px
}

.accordion-card:not(:last-child) {
    margin-bottom: 16px
}

.accordion-card:has(.accordion-button.collapsed) {
    background: transparent;
    /* background-color: #eaf5fa; */
    border: 1px solid var(--th-border-color)
}

.accordion-card .accordion-button {
    font-size: 24px;
    font-weight: 500;
    font-family: var(--title-font);
    border: 0;
    color: var(--title-color);
    background-color: transparent;
    border-radius: 0;
    padding: 27px 55px 12px 30px;
    gap: 10px;
    margin-bottom: 0;
    text-align: left;
    letter-spacing: 0.02em;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    position: relative
}

@media (max-width: 767px) {
    .accordion-card .accordion-button {
        font-size: 20px
    }
}

.accordion-card .accordion-button:after {
    content: "\2b";
    height: 100%;
    width: auto;
    line-height: 1;
    background-color: transparent;
    background-image: none;
    font-family: var(--icon-font);
    color: var(--title-color);
    font-weight: 500;
    font-size: 24px;
    display: grid;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    position: absolute;
    top: 6px;
    right: 30px;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out
}

.accordion-card .accordion-button:focus {
    outline: none;
    box-shadow: none
}

.accordion-card .accordion-button:not(.collapsed) {
    color: var(--white-color)
}

.accordion-card .accordion-button:not(.collapsed):after {
    content: "\f00d";
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    color: var(--white-color)
}

.accordion-card .accordion-collapse {
    border: none
}

.accordion-card .accordion-body {
    border: none;
    padding: 0 35px 20px 0;
    margin: 0 30px
}

.accordion-card .faq-text {
    margin-bottom: -0.48em;
    color: var(--white-color);
    font-size: 16px;
    letter-spacing: 0
}

@media (max-width: 575px) {
    .accordion-card {
        padding-bottom: 6px
    }

    .accordion-card .accordion-button {
        font-size: 18px;
        padding: 20px 55px 12px 20px
    }

    .accordion-card .accordion-button:after {
        right: 20px
    }

    .accordion-card .accordion-body {
        padding: 0px 0 20px;
        margin: 0 20px
    }
}

.faq-wrap {
    max-width: 500px
}

@media (max-width: 1399px) {
    .faq-wrap {
        max-width: 100%;
        text-align: center
    }
}

.faq .box-text {
    font-size: 18px;
    max-width: 480px
}

.accordion-card.style3 {
    background-color: transparent;
    padding-bottom: 0
}

.accordion-card.style3 .accordion-button {
    padding: 24px 33px;
    font-size: 28px
}

@media (max-width: 1500px) {
    .accordion-card.style3 .accordion-button {
        font-size: 24px
    }
}

@media (max-width: 1399px) {
    .accordion-card.style3 .accordion-button {
        font-size: 20px
    }
}

@media (max-width: 1299px) {
    .accordion-card.style3 .accordion-button {
        padding: 20px 16px
    }
}

.accordion-card.style3 .accordion-button:after {
    border: 1px solid #B7C2CC;
    width: 40px;
    height: 40px;
    background-color: transparent;
    border-radius: 48px;
    content: "\f107";
    top: 20px
}

@media (max-width: 1299px) {
    .accordion-card.style3 .accordion-button:after {
        top: 15px;
        right: 16px
    }
}

@media (max-width: 375px) {
    .accordion-card.style3 .accordion-button:after {
        width: 25px;
        height: 25px;
        font-size: 20px;
        top: 25px
    }
}

.accordion-card.style3 .accordion-button:not(.collapsed) {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.accordion-card.style3 .accordion-button:not(.collapsed)::after {
    background-color: #FFF6F8;
    color: var(--theme-color);
    -webkit-transform: rotate(-180deg);
    -ms-transform: rotate(-180deg);
    transform: rotate(-180deg);
    border-color: var(--theme-color)
}

.accordion-card.style3 .faq-text {
    color: var(--body-color)
}

.accordion-card.style3 .accordion-body {
    position: relative;
    margin: 0;
    z-index: 2;
    padding: 35px 32px
}

.accordion-card.style3 .accordion-body:before {
    content: "";
    position: absolute;
    inset: 0;
    background: -webkit-linear-gradient(bottom, rgba(7, 14, 32, 0.7), rgba(7, 14, 32, 0.7));
    background: linear-gradient(0deg, rgba(7, 14, 32, 0.7), rgba(7, 14, 32, 0.7));
    z-index: -1
}

.accordion-card.style3 .accordion-body .list {
    padding: 0
}

.accordion-card.style3 .accordion-body .list li {
    list-style: none;
    font-weight: 600;
    font-size: 24px;
    color: var(--white-color)
}

@media (max-width: 1399px) {
    .accordion-card.style3 .accordion-body .list li {
        font-size: 18px
    }
}

.accordion-card.style3 .accordion-body .list li:not(:last-child) {
    margin-bottom: 10px
}

.page-title {
    margin-bottom: 20px
}

.sticky-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 80px
}

@media (max-width: 991px) {
    .sticky-wrap {
        gap: 50px
    }
}

.single-sticky-wrap {
    position: -webkit-sticky;
    position: sticky;
    top: 140px;
    width: 100%
}

@media (max-width: 991px) {
    .single-sticky-wrap {
        position: relative !important;
        top: 0
    }
}

.color-scheme-wrap {
    position: fixed;
    right: 0;
    top: 50%;
    z-index: 99;
    background: var(--black-color2);
    padding: 20px;
    border-radius: 10px 0 0 10px;
    display: inline-block;
    -webkit-transition: 0.4s;
    transition: 0.4s
}

.color-scheme-wrap .switchIcon {
    position: absolute;
    left: 0;
    top: 10px;
    border: 0;
    background: var(--theme-color);
    color: var(--white-color);
    height: 45px;
    width: 45px;
    border-radius: 5px 0 0 5px;
    -webkit-transform: translate(-100%, 0);
    -ms-transform: translate(-100%, 0);
    transform: translate(-100%, 0)
}


.color-scheme-wrap .color-switch-btns {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 18px
}


.color-scheme-wrap .color-switch-btns button {
    padding: 0;
    border: 0;
    background: transparent;
    font-size: 24px;
    color: var(--theme-color);
    text-align: left
}

.color-scheme-wrap.active {
    -webkit-transform: translate(100%, 0);
    -ms-transform: translate(100%, 0);
    transform: translate(100%, 0)
}

.gallery-slider1 .swiper-slide:hover .icon-btn {
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    opacity: 1
}

.gallery-slider1 .slider-pagination {
    height: 34px
}

@media (max-width: 575px) {
    .gallery-slider1 .slider-pagination {
        display: none
    }
}

@-webkit-keyframes heightanim {
    0% {
        height: 0;
        opacity: 0
    }

    100% {
        height: 100%;
        opacity: 1
    }
}

@keyframes heightanim {
    0% {
        height: 0;
        opacity: 0
    }

    100% {
        height: 100%;
        opacity: 1
    }
}

@-webkit-keyframes widthanim {
    0% {
        width: 0;
        opacity: 0
    }

    100% {
        width: 100%;
        opacity: 1;
        left: 0
    }
}

@keyframes widthanim {
    0% {
        width: 0;
        opacity: 0
    }

    100% {
        width: 100%;
        opacity: 1;
        left: 0
    }
}

@media (max-width: 1199px) {
    .event-area-1 .event-shape {
        display: none
    }
}

.event-card {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 50px 48px
}

@media (max-width: 1199px) {
    .event-card {
        display: block
    }
}

.event-card:not(:last-child) {
    border-bottom: 1px solid var(--light-color);
    padding-bottom: 48px;
    margin-bottom: 48px
}

.event-card:nth-child(2n+2) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.event-card .box-title {
    font-size: 28px;
    letter-spacing: 0.56px;
    font-weight: 700;
    line-height: 40px;
    margin-bottom: 16px
}

.event-card .box-text {
    margin-bottom: 22px
}

.event-card .event-wrapp {
    margin-bottom: 36px
}

.event-card .blog-meta {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    row-gap: 10px
}

@media (max-width: 1299px) {
    .event-card .blog-meta a::after {
        display: none
    }
}

@media (max-width: 1199px) {
    .event-card .blog-meta a::after {
        display: block
    }
}

@media (max-width: 767px) {
    .event-card .blog-meta a::after {
        display: none
    }
}

@media (max-width: 1199px) {
    .event-card .blog-meta a:last-child::after {
        display: none
    }
}

@media (max-width: 991px) {
    .event-card .blog-meta {
        display: block
    }
}

.event-card-img {
    position: relative;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    z-index: 2
}

@media (max-width: 1299px) {
    .event-card-img {
        margin-bottom: 35px;
        width: 50%
    }
}

@media (max-width: 1199px) {
    .event-card-img {
        width: 100%
    }
}

.event-card-img img {
    width: 100%
}

.event-card-img::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(11, 11, 12, 0.3);
    z-index: 1
}

.event-card .box-text {
    font-weight: 400;
    font-size: 18px;
    line-height: 1.7;
    letter-spacing: 0.02em
}

.event-card-tag {
    position: absolute;
    padding: 4px 14px;
    top: 16px;
    right: 16px;
    color: var(--white-color);
    display: block;
    background-color: var(--theme-color);
    text-transform: uppercase;
    margin-bottom: 0;
    z-index: 3
}

.event-card-tag .tag-number {
    display: block;
    font-weight: 500;
    font-size: 24px;
    line-height: 1;
    letter-spacing: 0.02em;
    text-align: center
}

/* .campusSlider1 {
    margin-left: 120px !important;
    margin-right: -24% !important
} */

@media (max-width: 1500px) {
    .campusSlider1 {
        margin: 0 0 0 0% !important
    }
}

.campusSlider1 .swiper-slide {
    width: calc(397px) !important;
    -webkit-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out
}

@media (max-width: 991px) {
    .campusSlider1 .swiper-slide {
        width: 100% !important
    }
}

.campusSlider1 .swiper-slide.swiper-slide-active {
    width: calc(810px) !important
}

@media (max-width: 1500px) {
    .campusSlider1 .swiper-slide.swiper-slide-active {
        width: calc(650px) !important
    }
}

@media (max-width: 991px) {
    .campusSlider1 .swiper-slide.swiper-slide-active {
        width: 100% !important
    }
}

.campusSlider1 .swiper-slide.swiper-slide-active .box-text {
    opacity: 1;
    visibility: visible;
    height: 100%
}

.campusSlider1 .swiper-slide.swiper-slide-active .box-content2 {
    opacity: 0;
    overflow: hidden;
    -webkit-transform: translateX(150px);
    -ms-transform: translateX(150px);
    transform: translateX(150px)
}

.campusSlider1 .swiper-slide.swiper-slide-active .box-content {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0px);
    -ms-transform: translateY(0px);
    transform: translateY(0px)
}

.campus-card2 {
    position: relative;
    z-index: 2;
    height: 397px
}

.campus-card2:before {
    content: "";
    position: absolute;
    inset: 0;
    background: -webkit-linear-gradient(top, rgba(7, 14, 32, 0) 25.82%, rgba(7, 14, 32, 0.7) 100%);
    background: linear-gradient(180deg, rgba(7, 14, 32, 0) 25.82%, rgba(7, 14, 32, 0.7) 100%);
    z-index: 1
}

.campus-card2 .box-content {
    position: absolute;
    left: 40px;
    right: 40px;
    bottom: 40px;
    z-index: 2;
    max-width: 100%;
    -webkit-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
    -webkit-transform: translateY(150px);
    -ms-transform: translateY(150px);
    transform: translateY(150px);
    opacity: 0;
    visibility: hidden
}

@media (max-width: 480px) {
    .campus-card2 .box-content {
        left: 20px;
        right: 20px;
        bottom: 20px
    }
}

.campus-card2 .box-content2 {
    position: absolute;
    left: 40px;
    right: 40px;
    bottom: 40px;
    z-index: 2;
    max-width: 100%;
    -webkit-transform: translateY(0px);
    -ms-transform: translateY(0px);
    transform: translateY(0px);
    -webkit-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out
}

@media (max-width: 480px) {
    .campus-card2 .box-content2 {
        left: 20px;
        right: 20px;
        bottom: 20px
    }
}

.campus-card2 .box-content2 .box-title {
    margin-bottom: 0
}

.campus-card2 .box-title {
    color: var(--white-color)
}

.campus-card2 .box-text {
    font-family: var(--body-font);
    font-weight: 400;
    font-size: 16px;
    color: var(--white-color);
    margin-bottom: 0;
    opacity: 0;
    height: 0;
    visibility: hidden;
    -webkit-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out
}

.community {
    height: 800px
}

.alumni .btn-wrap {
    margin-top: -3px
}

.py-5 {
    padding-top: 5px;
    padding-bottom: 5px
}

.py-50 {
    padding-top: 50px;
    padding-bottom: 50px
}

.pt-5 {
    padding-top: 5px
}

.pt-25 {
    padding-top: 25px
}

.pt-50 {
    padding-top: 50px
}

.pb-5 {
    padding-bottom: 5px
}

.pb-20 {
    padding-bottom: 20px
}

.pb-40 {
    padding-bottom: 40px
}

.pb-50 {
    padding-bottom: 50px
}

.pb-60 {
    padding-bottom: 60px
}

.pt-60 {
    padding-top: 60px
}

.my-5 {
    margin-top: 5px;
    margin-bottom: 5px
}

.mt-5 {
    margin-top: 5px
}

.mt-15 {
    margin-top: 15px
}

.mt-20 {
    margin-top: 20px
}

.mt-25 {
    margin-top: 25px
}

.mt-30 {
    margin-top: 30px
}

.mt-45 {
    margin-top: 45px
}

.mt-50 {
    margin-top: 50px
}

.mb-5 {
    margin-bottom: 5px
}

.mb-10 {
    margin-bottom: 10px
}

.mb-20 {
    margin-bottom: 20px
}

.mb-25 {
    margin-bottom: 25px
}

.mb-30 {
    margin-bottom: 30px
}

.mb-35 {
    margin-bottom: 35px
}

.mb-45 {
    margin-bottom: 45px
}

.mb-50 {
    margin-bottom: 50px
}

.mr-20 {
    margin-right: 20px
}

.mt-70 {
    margin-top: 70px
}

.mb-60 {
    margin-bottom: 60px
}

.mb-65 {
    margin-bottom: 65px
}

.mb-70 {
    margin-bottom: 70px
}

.mt-n2 {
    margin-top: -.45rem
}

.space,
.space-top {
    padding-top: var(--section-space)
}

.space,
.space-bottom {
    padding-bottom: var(--section-space)
}


.space-extra-bottom {
    padding-bottom: calc(var(--section-space) - 30px)
}

@media (max-width: 991px) {

    .space,
    .space-top {
        padding-top: var(--section-space-mobile)
    }

    .space,
    .space-bottom {
        padding-bottom: var(--section-space-mobile)
    }

    
    .space-extra-bottom {
        padding-bottom: calc(var(--section-space-mobile) - 30px)
    }
}

/* =============SOCIAL ICONS HOVER============== */
/* hidden by default */
.social-float {
    position: fixed;
    top: 50%;
    right: 20px;
    transform: translate(20px, -50%);
    opacity: 0;
    pointer-events: none;
    transition: all 0.4s ease;
}

/* visible on scroll up */
.social-float.show {
    opacity: 1;
    transform: translate(0, -50%);
    pointer-events: auto;
}

.social-float {
    position: fixed;
    top: 76%;
    right: 30px;
    transform: translateY(-50%);
    z-index: 999;
    display: flex;
    align-items: center;
}

.social-icons {
    display: flex;
    gap: 10px;
    margin-right: 12px;
    opacity: 0;
    transform: translateX(20px);
    pointer-events: none;
    transition: all 0.35s ease;
}

.social-float:hover .social-icons {
    opacity: 1;
    transform: translateX(0);
    pointer-events: auto;
}

.icon {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #111;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: transform 0.25s ease, background 0.25s ease;
}

.icon:hover {
    transform: scale(1.15);
    border: 1px solid black;
}

/* Brand colors (subtle, not loud) */
.facebook:hover {
    background: white;
}

.instagram:hover {
    background: white;
}

.linkedin:hover {
    background: white;
}

.youtube:hover {
    background: white;
}

.sitemap:hover {
    background: white;
}

.main-btn {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    /* border: 2px solid var(--theme-color); */
    border: 2px solid #01578c;
    background: white;
    color: #01578c;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.25);
    transition: transform 0.3s ease;
}

.social-float:hover .main-btn {
    transform: rotate(90deg);
}

/* ==============================CIET FEATURE STRIP (ISOLATED)============================== */

.ciet-feature-wrap {
    position: relative;
    z-index: 20;
    margin-top: -90px;
    /* overlap hero */
    display: flex;
    justify-content: center;
}

.ciet-feature-card {
    width: 80%;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
    overflow: hidden;
    animation: cietFadeUp 0.8s ease forwards;
}

.ciet-feature-top {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    background: #fff;
}

.ciet-feature-box {
    padding: 30px 20px;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    gap: 18px;
    border-right: 1px solid #eee;
}

.ciet-feature-box:last-child {
    border-right: none;
}

.ciet-feature-box img {
    width: 70px;
    height: auto;
    transition: transform 0.4s ease;
}

.ciet-feature-box:hover img {
    transform: scale(1.08);
}

.ciet-feature-box h4 {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    color: #1f2933;
}

.ciet-feature-bottom {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.ciet-feature-left {
    background: #fde7e3;
    padding: 18px 24px;
    font-size: 16px;
}

.ciet-feature-right {
    background: #eef0f7;
    padding: 18px 24px;
    font-size: 16px;
    text-align: right;
}

.ciet-feature-bottom strong {
    font-weight: 700;
}

/* Animation */
@keyframes cietFadeUp {
    from {
        opacity: 0;
        transform: translateY(40px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Responsive */
@media (max-width: 992px) {
    .ciet-feature-top {
        grid-template-columns: 1fr;
    }

    .ciet-feature-box {
        border-right: none;
        border-bottom: 1px solid #eee;
    }

    .ciet-feature-bottom {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .ciet-feature-right {
        text-align: center;
    }
}

/* TEXT HIERARCHY */
.ciet-text {
    display: flex;
    flex-direction: column;
}

.ciet-label {
    font-size: 13px;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    color: #6b7280;
}

.ciet-main {
    font-size: 26px;
    font-weight: 800;
    color: #111827;
    position: relative;
    width: fit-content;
}

/* underline sweep */
.ciet-main::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 0;
    height: 3px;
    background: #1f2933;
    transition: width 0.4s ease;
}

.ciet-feature-box:hover .ciet-main::after {
    width: 100%;
}

/* box hover motion */
.ciet-feature-box {
    transition: transform 0.35s ease;
}

.ciet-feature-box:hover {
    transform: translateY(-6px);
}

/* image interaction */
.ciet-feature-box img {
    width: 80px;
    transition: transform 0.4s ease;
}

.ciet-feature-box:hover img {
    transform: scale(1.1);
}

/* COLLEGE CODES */
.ciet-feature-right {
    background: #eef0f7;
    padding: 18px 24px;
    text-align: right;
    font-size: 16px;
}

.ciet-code {
    display: inline-block;
    margin-left: 12px;
    padding: 6px 14px;
    font-weight: 800;
    border-radius: 6px;
    background: #778bb9;
    color: #fff;
    animation: cietPulse 3s infinite;
}

.ciet-code.alt {
    background: #cdaca6;
    animation-delay: 1.5s;
}

/* pulse highlight */
@keyframes cietPulse {
    0% {
        box-shadow: 0 0 0 0 rgba(37, 99, 235, 0.4);
    }

    70% {
        box-shadow: 0 0 0 10px rgba(37, 99, 235, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(37, 99, 235, 0);
    }
}




/* ==========CHAIRMAN MESSAGE SECTION=========== */

/* CENTER COLUMN */

/* NAME BOARD – OFFICIAL PLAQUE FEEL */

/* TESTIMONIAL STYLE */

/* footer image */
.footer-image {
    width: 80%;
}

/* Section */
.feedback {
    background: #f7f6f3;
    padding: 50px 0;
}

/* Heading */
.section-head {
    text-align: center;
    margin-bottom: 50px;
}

.section-head h2 {
    font-size: 46px;
    font-weight: 500;
    margin-bottom: 10px;
}

.section-head p {
    font-size: 18px;
    color: #777;
}

/* Testimonial Card */
.testimonial-card {
    height: 100%;
    padding: 42px 40px;
    border-radius: 22px;
    background: linear-gradient(160deg,
            #ffffff 0%,
            #f9fafb 60%,
            #f1f5f9 100%);

    /* box-shadow:
    0 12px 30px rgba(0, 0, 0, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.7); */
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;

    display: flex;
    flex-direction: column;
    justify-content: space-between;

    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

/* subtle premium hover */
.testimonial-card:hover {
    transform: translateY(-6px);
    box-shadow:
        0 20px 45px rgba(0, 0, 0, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.8);
}


/* Stars */
.stars i {
    color: #c4161c;
    font-size: 14px;
    margin-right: 2px;
}

/* Text */
.testimonial-card .text {
    font-size: 18px;
    line-height: 30px;
    margin: 0px 0px 20px 0;
    color: #111;
}

/* Author */
.author {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.author-info {
    display: flex;
    align-items: center;
    gap: 12px;
}

.author-info img {
    width: 64px;
    /* increased size */
    height: 64px;
    border-radius: 50%;
    object-fit: cover;

    border: 3px solid #fff;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.18);
}


.author-info h5 {
    font-size: 18px;
    margin: 0;
}

.author-info span {
    font-size: 14px;
    color: #555;
}

/* Quote */
.quote {
    width: 40px;
    opacity: 0.8;
}

/* Pagination */
.swiper-pagination {
    margin-top: 40px;
}

.swiper-pagination-bullet {
    background: #ddd;
    opacity: 1;
}

.swiper-pagination-bullet-active {
    background: #7b0015;
}

/* Responsive */
@media (max-width: 991px) {
    .section-head h2 {
        font-size: 36px;
    }
}

@media (max-width: 576px) {
    .testimonial-card {
        text-align: center;
    }

    .author {
        justify-content: center;
    }

    .quote {
        display: none;
    }
}

/* REQUIRED FOR SWIPER TO WORK */
.swiper {
    /* width: 100%; */
    overflow: hidden;
}

.swiper-wrapper {
    display: flex;
}

.swiper-slide {
    height: auto;
}

.paragraph-fontsize {
    font-size: 13px;
}

.head-fontsize {
    font-size: 16px;
}

/* ===============================
   PROGRAMS & COURSES – FINAL
   =============================== */

.city-course-section {
    padding: 90px 0;
    background: #ffffff;
}

/* HEADING */
.city-course-heading {
    margin-bottom: 60px;
}

.city-course-title {
    font-size: 34px;
    font-weight: 800;
    margin: 0;
}

/* underline attached to text width */
.city-course-text {
    position: relative;
    display: inline-block;
    padding-bottom: 10px;
}


.city-course-text::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 4px;
    width: 0;
    background: linear-gradient(90deg, #c8102e, #ff4d4d);
    border-radius: 4px;
    transition: width 0.9s ease;
}

/* animate underline when AOS finishes */

/* underline animates when AOS finishes */

/* LIST */
/* .city-course-list {
    display: flex;
    flex-direction: column;
    gap: 26px;
} */
.city-course-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 26px;
}

/* Center the last card in second row */
.city-course-card:nth-child(3) {
    grid-column: 1 / -1;
    justify-self: center;
    width: 100%;
    max-width: calc(50% - 13px);
}


/* CARD BASE */
.city-course-card {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 26px 32px;
    min-height: 88px;
    background: #ffffff;
    border-radius: 8px;

    /* visible without hover */
    border: 1px solid #e5e7eb;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);

    overflow: hidden;
    transition: transform 0.35s ease, box-shadow 0.35s ease;
}

/* Tablet only: center align items */
@media (min-width: 768px) and (max-width: 991px) {
    .city-course-card {
        align-items: center !important;
        text-align: center;
    }

    .city-course-card .city-course-name,
    .city-course-card .city-course-cta {
        text-align: center;
    }
}

/* Mobile only */
@media (max-width: 767px) {
    .city-course-list {
        grid-template-columns: 1fr;   /* one card per row */
        justify-items: center;        /* center cards horizontally */
    }

    .city-course-card {
        width: 100%;
        max-width: 420px;             /* keeps card looking premium */
        text-align: center;
    }

    .city-course-card {
        align-items: center !important;
        justify-content: center;
        gap: 14px;
    }
}
/* Mobile only — force equal card width */
@media (max-width: 767px) {
    .city-course-list {
        grid-template-columns: 1fr;
        justify-items: center;
    }

    .city-course-card {
        width: 100% !important;
        max-width: 100% !important;   /* KEY FIX */
        box-sizing: border-box;
    }
}


/* LEFT → RIGHT FILL */
.city-course-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #01578c;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.7s ease;
    z-index: 0;
}

.city-course-card:hover::before {
    transform: scaleX(1);
}

/* CONTENT ABOVE FILL */
.city-course-card>* {
    position: relative;
    z-index: 1;
}

/* COURSE NAME */
.city-course-name {
    font-size: 18px;
    font-weight: 600;
    color: #111827;
    position: relative;
    transition: color 0.3s ease;
}

/* UNDERLINE ON HOVER */
.city-course-name::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 0;
    height: 3px;
    background: #ffffff;
    transition: width 0.4s ease;
}

.city-course-card:hover .city-course-name {
    color: #ffffff;
}

.city-course-card:hover .city-course-name::after {
    width: 100%;
}

/* CTA */
.city-course-cta {
    font-size: 14px;
    font-weight: 600;
    color: #111827;
    text-decoration: none;

    display: inline-flex;
    align-items: center;
    gap: 10px;

    padding: 8px 14px;
    border-radius: 6px;

    transition: color 0.3s ease, background 0.3s ease, gap 0.3s ease;
}

/* DEFAULT CTA — theme blue */
.city-course-cta {
    background-color: #01578c;
    color: white;
    border-radius: 60px;
}

.city-course-cta span {
    color: white;
}


.city-course-card:hover .city-course-cta span {
    color: #01578c;
}

.city-course-card:hover .city-course-cta {
    background: rgba(200, 16, 46, 0.08);
}


.city-course-cta span {
    transition: transform 0.3s ease;
}

/* CTA HOVER */
.city-course-card:hover .city-course-cta {
    background-color: white;
    color: #01578c;
    gap: 16px;
}

.city-course-card:hover .city-course-cta span {
    transform: translateX(6px);
}

/* CTA LIGHT (on filled bg) */

/* CARD LIFT */
.city-course-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 50px rgba(0, 0, 0, 0.18);
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .city-course-card {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }
}

/* ===============================
   PREMIUM ANNOUNCEMENT BAR
================================ */

.announcement-bar {
    border-radius: 8px;
    background: linear-gradient(135deg, #01578c, #d3224d);
    border-bottom: 1px solid #e5e7eb;
    font-family: "Plus Jakarta Sans", sans-serif;
}

.announcement-inner {
    display: flex;
    align-items: center;
    overflow: hidden;
    min-height: 56px;
}

/* LEFT LABEL */
.announcement-fixed {
    flex-shrink: 0;
    padding: 14px 20px;
    font-size: 15px;
    font-weight: 800;
    color: #f5d441;
    letter-spacing: 0.4px;
    white-space: nowrap;
}

/* MARQUEE AREA */
.announcement-marquee {
    /* color: white; */
    position: relative;
    flex: 1;
    overflow: hidden;
}

/* TRACK */
.marquee-track {
    display: flex;
    width: max-content;
    animation: marqueeScroll 28s linear infinite;
}

/* CONTENT */
.marquee-content {

    display: flex;
    align-items: center;
    white-space: nowrap;
    font-size: 15px;
    font-weight: 500;
    color: #1f2937;
}

/* ITEMS */
.marquee-item {
    color: white;
    padding: 0 6px;
    cursor: pointer;
    transition: color 0.3s ease, transform 0.3s ease;
}

.marquee-item:hover {
    color: #f5d441;
    transform: translateY(-1px);
}

/* DOT */
.dot {
    margin: 0 22px;
    font-weight: 900;
    color: white;
    opacity: 0.6;
}

/* EDGE FADES (premium touch) */
.fade-left,
.fade-right {
    position: absolute;
    top: 0;
    width: 60px;
    height: 100%;
    pointer-events: none;
    z-index: 5;
}

.fade-left {
    left: 0;
    background: linear-gradient(to right, #224f82, transparent);
}


.fade-right {
    right: 0;
    background: linear-gradient(to left, #ce234e, transparent);
}

/* PAUSE ON HOVER */
.announcement-bar:hover .marquee-track {
    animation-play-state: paused;
}

/* ANIMATION */
@keyframes marqueeScroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

/* MOBILE */
@media (max-width: 768px) {
    .announcement-inner {
        flex-direction: column;
    }

    .announcement-fixed {
        width: 100%;
        text-align: center;
    }
}

/* ===============================
   BLOG SECTION – FINAL PREMIUM
   =============================== */

.city-blog-section {
    padding: 30px 0;
    background: #fff;
}

/* HEADER */
.city-blog-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 40px;
    margin-bottom: 50px;
}

/* MAIN TITLE */
.city-blog-title {
    margin: 0;
}

.city-blog-title-text {
    font-size: 36px;
    font-weight: 800;
    position: relative;
    display: inline-block;
    padding-bottom: 12px;
}

/* FULL WIDTH UNDERLINE */
.city-blog-title-text::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 3px;
    width: 0;
    background: linear-gradient(90deg, #c8102e, #ff4d4d);
    transition: width 0.8s ease;
}

/* animate on scroll + hover */

.city-blog-title-text:hover::after {
    width: 100%;
}

/* RIGHT DESCRIPTION */
.city-blog-desc {
    max-width: 420px;
}

.city-blog-desc p {
    margin-bottom: 14px;
    color: #666;
}

/* CAPSULE CTA */
.city-blog-viewall {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 22px;
    border-radius: 999px;
    font-weight: 600;
    color: #c8102e;
    border: 1px solid #c8102e;
    text-decoration: none;
    transition: all 0.35s ease;
}

.city-blog-viewall span {
    transition: transform 0.3s ease;
}

.city-blog-viewall:hover {
    background: #c8102e;
    color: #fff;
    transform: translateY(-2px);
}

.city-blog-viewall:hover span {
    transform: translateX(6px);
}

/* GRID */
.city-blog-grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr;
    gap: 40px;
}

/* FEATURED BLOG */
.city-blog-featured {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
}

.city-blog-img img {
    max-height: 400px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.7s ease;
}

.city-blog-featured:hover img {
    transform: scale(1.08);
}

/* OVERLAY */
.city-blog-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.65), transparent);
    padding: 30px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    color: #fff;
}

/* FEATURED TITLE */
.city-blog-featured-title {
    color: whitesmoke;
    margin-top: 12px;
    font-size: 22px;
    line-height: 1.3;
    position: relative;
    display: inline-block;
}

.city-blog-featured-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -6px;
    height: 2px;
    width: 0;
    background: #fff;
    transition: width 0.4s ease;
}

.city-blog-featured:hover .city-blog-featured-title::after {
    width: 100%;
}

/* META */
.city-blog-meta {
    /* color: #01578c; */
    display: flex;
    gap: 16px;
    font-size: 13px;
    font-weight: 800;
    opacity: 0.9;
}

/* RIGHT LIST */
.city-blog-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* ITEM */
.city-blog-item {
    margin-bottom: 5px;
    display: flex;
    gap: 18px;
    padding: 2px 16px 2px 16px;
    border-radius: 8px;
    transition: background 0.3s ease;
}


.city-blog-item:hover {
    background: #f9fafb;
}

.city-blog-thumb {
    width: 90px;
    height: 90px;
    flex-shrink: 0;
    overflow: hidden;
    border-radius: 6px;
}

.city-blog-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.city-blog-item:hover img {
    transform: scale(1.1);
}

.city-blog-info {
    line-height: 15px;
}

/* ITEM TITLE */
.city-blog-item-title {

    margin-bottom: 5px;
    font-size: 17px;
    line-height: 1.4;
    position: relative;
    display: inline-block;
}

.city-blog-item-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    height: 2px;
    width: 0;
    background: #c8102e;
    transition: width 0.4s ease;
}

.city-blog-item:hover .city-blog-item-title::after {
    width: 100%;
}

.city-blog-info-p {
    margin-top: 2px;
    margin-bottom: 0px;
    font-size: 13px !important;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .city-blog-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 576px) {
    .city-blog-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
    }
}

.pt-80 {
    padding-top: 80px;
}




/* ===============================
   Brand / Placement Section
================================ */

.it-brand-4-area {
    /* background: #01578c; */
    position: relative;
}

.it-brand-4-top-text h5 {
    padding: 8px 20px;
    border-radius: 100px;
    line-height: 1;
    position: relative;
    display: inline-block;
    margin-bottom: 0;
    color: #0a2540;
    border: 1px solid #01578c;
    background: white;
}

/* Section heading */
.it-brand-4-top-text h5 {
    font-size: 20px;
    font-weight: 600;
    color: #0a2540;
    letter-spacing: 0.5px;
}

/* Swiper container */
.it-brand-5-active {
    overflow: hidden;
}

/* Swiper wrapper */
.it-brand-5-active .swiper-wrapper {
    align-items: center;
}

/* Individual slide */
.it-brand-5-active .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Logo box */
.it-brand-4-item {
    width: 160px;
    height: 90px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
    transition: all 0.4s ease;
    /* background: #f7f9fc; */
}

/* Logo image */
.it-brand-4-item img {
    border-radius: 10px;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    /* filter: grayscale(100%); */
    /* opacity: 0.6; */
    transition: all 0.4s ease;
}

/* Hover effect */
.it-brand-4-item:hover img {
    filter: grayscale(0%);
    opacity: 1;
    transform: scale(1.05);
}

/* Optional subtle background hover */
.it-brand-4-item:hover {
    /* background: #f7f9fc; */
    border-radius: 0px;
}

/* Responsive */
@media (max-width: 991px) {
    .it-brand-4-item {
        width: 140px;
        height: 80px;
    }
}

@media (max-width: 576px) {
    .it-brand-4-item {
        width: 120px;
        height: 70px;
    }
}

/* ===============================
   EVENTS & NOTICE – CITY (FINAL)
   =============================== */

.city-events-notice {
    padding: 0px 0;
    background: #fff;
}

/* GRID */
.city-en-grid {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 40px;
    align-items: stretch;
    /* 🔑 equal height */
}

/* BOTH COLUMNS */
.city-events,
.city-notice {
    display: flex;
    flex-direction: column;
    height: 100%;
    /* 🔑 match heights */
}

/* SECTION HEAD */
.city-section-head {
    margin-bottom: 30px;
}

.city-section-head.row {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* TITLES */
.city-title-text {
    font-size: 28px;
    font-weight: 800;
    position: relative;
    display: inline-block;
    padding-bottom: 8px;
}

.city-title-text::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 2px;
    width: 0;
    background: #e63629;
    transition: width 0.8s ease;
}


.city-title-text:hover::after {
    width: 100%;
}

/* VIEW ALL */
.city-viewall {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 20px;
    border-radius: 999px;
    border: 1px solid #01578c;
    color: #01578c;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
}

.city-viewall:hover {
    background: #01578c;
    color: #fff;
}

.city-viewall span {
    transition: transform 0.3s ease;
}

.city-viewall:hover span {
    transform: translateX(6px);
}

/* ===============================
   EVENTS COLUMN (NO SCROLL)
   =============================== */

.city-event-list {
    display: flex;
    flex-direction: column;
}

.city-event-item {
    display: flex;
    gap: 24px;
    padding: 22px;
    border-bottom: 1px solid #eee;
    transition: background 0.35s ease;
}

.city-event-item:hover,
.city-event-item.active {
    background: #01578c;
}

.city-event-no {
    font-size: 38px;
    font-weight: 800;
    color: #bbb;
}

.city-event-item:hover .city-event-no,
.city-event-item.active .city-event-no {
    color: #fff;
}

.city-event-content h3 {
    font-size: 18px;
    margin-bottom: 8px;
    position: relative;
}

.city-event-content h3::after {
    content: "";
    display: block;
    width: 0;
    height: 2px;
    background: #fff;
    margin-top: 6px;
    transition: width 0.4s ease;
}

.city-event-item:hover h3::after {
    width: 100%;
}

.city-event-item:hover h3,
.city-event-item:hover .city-event-meta,
.city-event-item.active h3,
.city-event-item.active .city-event-meta {
    color: #fff;
}

.city-event-meta {
    display: flex;
    gap: 16px;
    font-size: 14px;
    color: #666;
}

/* ===============================
   NOTICE COLUMN (SCROLL ONLY HERE)
   =============================== */

.city-notice {
    position: relative;
}

/* TABS */
.city-notice-tabs {
    display: flex;
    gap: 10px;
    margin-bottom: 14px;
}

.city-notice-tabs button {
    padding: 6px 14px;
    font-size: 14px;
    border-radius: 6px;
    border: 1px solid #ddd;
    background: #fff;
    font-weight: 600;
    cursor: pointer;
}

.city-notice-tabs button.active {
    background: #01578c;
    color: #fff;
    border-color: #01578c;
}



/* NOTICE ITEMS */
.city-notice-item {
    display: flex;
    gap: 18px;
    padding: 14px 0;
    border-bottom: 1px solid #eee;
    transition: color 0.3s ease;
}

.city-notice-item:hover p {
    color: #e63629;
}

.city-notice-date {
    min-width: 60px;
    font-weight: 700;
}

.city-notice-date span {
    display: block;
    font-size: 18px;
}



/* ===============================
   RESPONSIVE
   =============================== */

@media (max-width: 992px) {
    .city-en-grid {
        grid-template-columns: 1fr;
    }


}

/* ===============================
   NOTICE – FIXED HEIGHT + SCROLL
   =============================== */

.city-notice {
    display: flex;
    flex-direction: column;
    height: 100%;
    /* matches events column */
}

/* This defines the scroll height */
.city-notice-body {
    flex: 1;
    /* 🔑 fills remaining height */
    position: relative;
    overflow: hidden;
    /* hide inactive tabs */
}

/* ALL tabs share same height */
.city-notice-content {
    position: absolute;
    inset: 0;
    overflow-y: auto;
    /* 🔑 INTERNAL SCROLL */
    padding-right: 10px;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

/* ACTIVE TAB */
.city-notice-content.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

/* Scrollbar */
.city-notice-content::-webkit-scrollbar {
    width: 6px;
}

.city-notice-content::-webkit-scrollbar-thumb {
    background: #01578c;
    border-radius: 10px;
}

/* ===============================
   CAMPUS LIFE
   =============================== */

.cl-campus-life {
    padding: 50px 0px 0px 0px;
    margin-bottom: 80px;
}

/* HEADER */
.cl-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 40px;
}

.cl-title {
    font-size: 36px;
    font-weight: 800;
}

.cl-cta {
    padding: 10px 22px;
    border-radius: 999px;
    border: 1px solid #c8102e;
    color: #c8102e;
    text-decoration: none;
    font-weight: 600;
    transition: .3s ease;
}

.cl-cta:hover {
    background: #c8102e;
    color: #fff;
}

/* GRID */
.cl-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: 240px;
    gap: 24px;
}

/* CARDS */
.cl-card {
    position: relative;
    overflow: hidden;
    border-radius: 18px;
    background: #000;
}

/* IMAGE CARD */
.cl-img img,
.cl-video video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Hover overlay */
.cl-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, .55), transparent);
    opacity: 0;
    transition: .4s ease;
}

.cl-img:hover::after {
    opacity: 1;
}

/* PLUS */
.cl-plus {
    position: absolute;
    inset: 0;
    margin: auto;
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: #c8102e;
    color: #fff;
    font-size: 26px;
    border: none;
    cursor: pointer;
    opacity: 0;
    transform: scale(.7);
    transition: .4s ease;
    z-index: 2;
}

.cl-img:hover .cl-plus {
    opacity: 1;
    transform: scale(1);
}

/* TAG */
.cl-tag {
    position: absolute;
    bottom: 16px;
    left: 16px;
    background: #c8102e;
    color: #fff;
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 14px;
    z-index: 2;
}

/* VIDEO CARD */
.cl-video {
    grid-row: span 2;
    /* 🔑 full height */
}

/* POSTER */

.cl-play {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    border: none;
    background: rgba(200, 16, 46, .9);
    color: #fff;
    font-size: 28px;
    cursor: pointer;
    transition: .3s ease;
}

.cl-play:hover {
    transform: scale(1.1);
}

/* VIDEO */
.cl-video video {
    width: 100%;
    height: 100%;
    display: none;
}

/* LIGHTBOX */
.cl-lightbox {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .9);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

.cl-lightbox.active {
    display: flex;
}

.cl-lightbox-img {
    max-width: 90%;
    max-height: 80vh;
}

.cl-close {
    position: absolute;
    top: 30px;
    right: 40px;
    font-size: 40px;
    background: none;
    color: #fff;
    border: none;
    cursor: pointer;
}

.cl-nav {
    position: absolute;
    top: 50%;
    font-size: 48px;
    background: none;
    color: #fff;
    border: none;
    cursor: pointer;
    transform: translateY(-50%);
}

.cl-nav.prev {
    left: 40px;
}

.cl-nav.next {
    right: 40px;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .cl-head {
        flex-direction: column;
        gap: 16px;
        align-items: flex-start;
    }

    .cl-grid {
        grid-template-columns: 1fr;
        grid-auto-rows: auto;
    }

    .cl-video {
        grid-row: auto;
        aspect-ratio: 16 / 9;
    }
}

/* ===============================
   MODAL OVERLAY
   =============================== */

.cl-modal {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .9);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 99999;
}

.cl-modal.active {
    display: flex;
}

.cl-modal-content img,
.cl-modal-content video {
    max-width: 90vw;
    max-height: 85vh;
    border-radius: 12px;
    display: block;
}

.cl-modal-content video {
    background: #000;
}

.cl-close {
    position: absolute;
    top: 30px;
    right: 40px;
    font-size: 36px;
    background: none;
    border: none;
    color: #fff;
    cursor: pointer;
}

/* PLAY BUTTON */
.cl-play {
    position: absolute;
    inset: 0;
    margin: auto;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: rgba(200, 16, 46, .9);
    color: #fff;
    font-size: 28px;
    border: none;
    cursor: pointer;
}


/* allow click through overlay */
.cl-card::after {
    pointer-events: none;
}

/* ensure play button is clickable */
.cl-play,
.cl-plus {
    z-index: 10;
    pointer-events: auto;
}

/* mega menu */
.newmega ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* PARENT */
.newmega-parent {
    position: relative;
}

/* MEGA WRAPPER */
.newmega {
    position: fixed;
    top: auto;
    left: 35%;
    transform: translateX(-50%);
    width: 35vw;
    max-width: 100vw;
    background: #01578c;
    z-index: 9999;
    display: none;
    overflow-x: hidden;
}

.newmega-parent {
    position: static;
    /* IMPORTANT */
}

.newmega-parent:hover .newmega {
    display: block;
}

/* SHOW ON HOVER */
.newmega-parent:hover .newmega {
    display: block;
}

/* INNER CONTAINER */
.newmega-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 30px 40px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}

/* COLUMN */
.newmega-col h4 {
    color: #ffb703;
    font-size: 20px;
    margin-bottom: 10px;
}

.newmega-col p {
    color: #e6f4f1;
    line-height: 1.0;
    font-size: 15px;
}

/* LINKS */
.newmega-col ul li {
    margin-bottom: 5px;
    position: relative;
}

.newmega-col ul li a {
    color: #ffffff;
    text-decoration: none;
    font-size: 15px;
    transition: 0.3s;
}

.newmega-col ul li a:hover {
    color: #ffb703;
    padding-left: 6px;
}

/* SUB DROPDOWN */

/* SUB MENU LINKS */
.sub-menu li a {
    font-size: 14px;
    color: #dff3ef;
}

/* RESPONSIVE */
@media (max-width: 1100px) {
    .newmega-container {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .newmega {
        position: static;
    }

    .newmega-container {
        grid-template-columns: 1fr;
        padding: 30px 20px;
    }
}

/* PREVENT OVERFLOW */
.newmega {
    border-top: 5px solid #ffb703;
    overflow-x: hidden;
    /* max-height: calc(100vh - 120px);  */
    /* overflow-y: auto; */
}

/* SUB DROPDOWN FIX */

/* SUB MENU */

/* SHOW SUB MENU */

/* SUB MENU ITEMS */
.sub-menu li {
    margin-bottom: 5px;
}

.sub-menu li a {
    display: block;
    white-space: normal;
    /* IMPORTANT */
    line-height: 1.5;
}

/* DESKTOP SAFETY */
@media (min-width: 992px) {
    .newmega-container {
        overflow: hidden;
    }
}

@media (max-width: 1200px) {
    .newmega-container {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .newmega {
        position: static;
        transform: none;
        width: 100%;
    }

    .newmega-container {
        grid-template-columns: 1fr;
        padding: 30px 20px;
    }
}

/* FORCE VERTICAL LIST INSIDE MEGA MENU */
.newmega ul {
    display: block !important;
}

.newmega ul li {
    display: block !important;
    width: 100%;
}

.sub-drop {
    /* background:#e63629 !important; */
    border-top: 3px solid #e63629 !important;
}

.sub-drop li a {
    color: black !important;
}


/* extra css for alrady present sections in old pages */

.pb-95 {
    padding-bottom: 95px;
}

.mb-50 {
    margin-bottom: 50px;
}

/* .pt-100{
    padding-top:100px;
} */

@media (min-width: 320px) and (max-width: 359px) {
    .ciet-feature-wrap {
        margin-top: -43px;
    }

    .hero-style1 {
        padding: 100px 0px 0px 0px;
    }
}

@media (min-width: 360px) and (max-width: 399px) {
    .ciet-feature-wrap {
        margin-top: -43px;
    }

    .hero-style1 {
        padding: 100px 0px 0px 0px;
    }
}

@media (min-width: 400px) and (max-width: 575px) {
    .ciet-feature-wrap {
        margin-top: -43px;
    }

    .hero-style1 {
        padding: 100px 0px 0px 0px;
    }
}

/* ===============================
   CHAIRMAN MESSAGE – COMPACT
   =============================== */

.city-chairman-section {
    padding: 50px 0;
    /* reduced */
    background: #fff;
}

/* MAIN CONTAINER */
.city-chairman-container {
    max-width: 1350px;
    margin: auto;
    background: #01578c;
    /* background: #fbf7f6; */
    /* very light dim */
    border-radius: 24px;
    padding: 28px 50px;
    /* reduced height */
    display: grid;
    grid-template-columns: 1fr 1.7fr;
    align-items: center;
    gap: 36px;
    /* tighter */
    position: relative;
    overflow: visible;
}

/* IMAGE SIDE */
.city-chairman-image {
    position: relative;
    bottom: -9px;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* BACKGROUND SHAPE */
.city-chairman-blob {
    position: absolute;
    width: 100%;
    height: 100%;
    /* background: #a11d21; */
    border-radius: 180px;
    z-index: 1;
}

/* IMAGE OVERFLOW (KEY PART) */
.city-chairman-image img {
    height: 370px;
    z-index: 2;
    object-fit: contain;
    transform: translateY(-48px);
    /* stronger overlap */
    transition: transform .5s ease;
}

.city-chairman-container:hover .city-chairman-image img {
    transform: translateY(-54px);
}

/* CONTENT */
.city-chairman-content {
    position: relative;
    z-index: 2;
}

/* LABEL */

/* TEXT */
.city-chairman-text {
    font-size: 20px;
    /* slightly smaller */
    line-height: 1.55;
    font-weight: 500;
    color: #fff;

}

/* NAME */
.city-chairman-name {
    font-size: 24px;
    font-weight: 700;
    color: #fff;
}

.city-chairman-name span {
    display: block;
    font-size: 20px;
    font-weight: 500;
    color: #ffb703;

}

/* SUBTLE GRID BACKGROUND */
.city-chairman-container::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(0, 0, 0, 0.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0, 0, 0, 0.025) 1px, transparent 1px);
    background-size: 44px 44px;
    opacity: .22;
    pointer-events: none;
    border-radius: 24px;
}


@media (max-width: 992px) {
    .city-chairman-container {
        grid-template-columns: 1fr;
        padding: 28px 26px;
        text-align: center;
        gap: 0px;
    }

    .city-chairman-image {
        height: auto;
        bottom: 0px;
    }

    .city-chairman-image img {
        height: 260px;
        transform: translateY(-28px);

    }

    .city-chairman-text {
        font-size: 16px;
    }

    .city-chairman-blob {
        width: 75%;
        height: 70%;
        border-radius: 160px;
        bottom: 27px;
    }
}


@media (max-width: 576px) {
    .city-chairman-image {
        bottom: 0px;
    }

    .city-chairman-image img {
        height: 220px;
        bottom: 0px !important;
    }

    .city-chairman-blob {
        width: 100%;
        height: 70%;
        border-radius: 140px;
        bottom: 28px;
    }

    .city-chairman-container {
        gap: 0px;
    }
}

.othercards {
    color: white;
}

.othercards:hover {
    /* color:#D3224D; */
    color: #ffb703;
}

/* .disable-y{
    color:#ffb703 !important;
}

.disable-r{
    color:#D3224D !important;
} */

/* cards section overview */
.dept-unconventional-section {
    background: #D3224D;
    padding: 100px 0;
    color: #fff;
}

.dept-unconventional-wrapper {
    display: grid;
    grid-template-columns: 1.1fr 1.9fr;
    gap: 80px;
}

.dept-eyebrow {
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 14px;
    letter-spacing: 2px;
    margin-bottom: 30px;
}

.dept-eyebrow .dept-line {
    width: 40px;
    height: 2px;
    background: #fff;
}

.dept-unconventional-content h2 {
    color: white;
    font-size: 56px;
    line-height: 1.15;
    font-weight: 600;
}

.dept-unconventional-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 55px 65px;
}

.dept-card-item {
    text-decoration: none;
    color: #fff;
    text-align: center;
    transition: transform 0.3s ease;
}

.dept-card-item:hover {
    transform: translateY(-6px);
}

.dept-flip-card {
    width: 110px;
    height: 110px;
    margin: 0 auto 20px;
    perspective: 1000px;
}

.dept-flip-inner {
    width: 100%;
    height: 100%;
    position: relative;
    transform-style: preserve-3d;
    transition: transform 0.6s ease;
}

.dept-card-item:hover .dept-flip-inner {
    transform: rotateY(180deg);
}

.dept-flip-front,
.dept-flip-back {
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.18);
    display: flex;
    align-items: center;
    justify-content: center;
    backface-visibility: hidden;
}

.dept-flip-back {
    transform: rotateY(180deg);
    background: rgba(255, 255, 255, 0.28);
    border: 2px solid white;
}

.dept-flip-front i,
.dept-flip-back i {
    font-size: 40px;
    color: #fff;
}

.dept-card-item p {
    color: white;
    max-width: 190px;
    margin: 0 auto;
    font-size: 18px;
    line-height: 1.4;
}

@media (max-width: 991px) {
    .dept-unconventional-wrapper {
        grid-template-columns: 1fr;
    }

    .dept-unconventional-content h2 {
        font-size: 42px;
        margin-bottom: 50px;
    }

    .dept-unconventional-cards {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 575px) {
    .dept-unconventional-cards {
        grid-template-columns: 1fr;
    }
}



/* =========================
   UX MODAL SYSTEM
========================= */
.ux-modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(10, 15, 25, 0.75);
    backdrop-filter: blur(6px);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

.ux-modal-overlay.active {
    display: flex;
}

.ux-modal-box {
    position: relative;
    width: min(1100px, 92%);
    max-height: 85vh;
    background: #ffffff;
    border-radius: 18px;
    overflow: hidden;
    animation: uxModalIn 0.35s ease;
}

@keyframes uxModalIn {
    from {
        transform: translateY(40px);
        opacity: 0;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.ux-modal-close {
    position: absolute;
    top: 14px;
    right: 18px;
    background: none;
    border: none;
    font-size: 30px;
    cursor: pointer;
    color: #111;
    z-index: 10;
}

.ux-modal-content {
    padding: 70px 30px 40px;
    overflow-y: auto;
    max-height: 85vh;
}

.ux-modal-title {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 25px;
}

/* Scroll Indicator */
.ux-scroll-indicator {
    position: absolute;
    top: 70px;
    right: 6px;
    width: 4px;
    height: calc(100% - 90px);
    background: #eee;
    border-radius: 5px;
}

.ux-scroll-indicator span {
    display: block;
    width: 100%;
    height: 0%;
    background: linear-gradient(180deg, #2563eb, #1e40af);
    border-radius: 5px;
}

/* Table */
.ux-table-wrapper {
    overflow-x: auto;
}

.ux-premium-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 700px;
}

.ux-premium-table th,
.ux-premium-table td {
    padding: 14px 16px;
    text-align: left;
}

.ux-premium-table th {
    color: white !important;
}

.ux-premium-table thead {
    background: #01578c;
    color: #fff !important;
}

.ux-premium-table tbody tr {
    transition: background 0.25s ease;
}

.ux-premium-table tbody tr:hover {
    background: #f1f5f9;
}

/* Sticky table header */
.ux-table-wrapper {
    max-height: 60vh;
    overflow: auto;
}

.ux-premium-table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: #0f172a;
    color: #fff;
}

.ux-sub-title {
    margin: 28px 0 12px;
    font-weight: 600;
}

/* Mobile */
@media (max-width: 768px) {
    .ux-modal-content {
        padding: 60px 18px 30px;
    }
}


/* peos pos psos modal  */
.peo-modal-xl {
    max-width: 90vw;
}

.peo-modal-xl .modal-content {
    height: 90vh;
    background: #ffffff;
    border-radius: 16px;
    position: relative;
}

.peo-close {
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 10;
    background-color: #fff;
    border-radius: 50%;
    opacity: 1;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.25);
}

.peo-modal-xl .modal-body {
    padding: 60px 40px;
    overflow-y: auto;
}

.peo-card {
    background: #f8f9fc;
    padding: 30px;
    border-radius: 14px;
    height: 100%;
    box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;
    transition: all 0.3s ease;
}

.peo-card h6 {
    color: #D3224D;
    margin-bottom: 15px;
    font-weight: 700;
}

.peo-card p {
    font-size: 15px;
    line-height: 1.7;
    color: #333;
}

.peo-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.15);
}

@media (max-width: 500px) {
    .peo-modal-xl .modal-body {
        padding: 60px 20px;
        overflow-y: auto;
    }
}

/* Gallery grid items for modal */
.funding-gallery img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    /* border-radius: 14px; */
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.12);
}

.funding-gallery img:hover {
    transform: scale(1.05);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.18);
}

.funding-item {
    height: 220px;
    /* border-radius: 14px; */
    overflow: hidden;
}

.funding-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
    display: block;
}

.modal {
    z-index: 9999;
}

/* ==============================
   DEPARTMENT ABOUT – PREMIUM UI
============================== */

.dept-about-section {
    width: 100% !important;
    background: linear-gradient(180deg, #ffffff 0%, #f7f9fc 100%);
}

/* Title */
.dept-title {
    position: relative;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 30px;
}

/* Underline */
.dept-title::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -12px;
    width: 55%;
    height: 4px;
    background: #d3224d;
    transform: translateX(-50%);
    border-radius: 3px;
}

/* Content */


.dept-text {
    font-size: 1.05rem;
    line-height: 1.85;
    color: #374151;
}

/* Accordion */
.dept-accordion-card {
    border-radius: 14px;
    overflow: hidden;
    margin-bottom: 18px;
    transition: all 0.35s ease;
    border: none;
}

.dept-accordion-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.08);
}

/* Accordion Button */
.accordion-button {
    font-weight: 600;
    letter-spacing: 0.4px;
    background: #ffffff;
}

.accordion-button:not(.collapsed) {
    background: #01578c;
    color: #ffffff;
}

.accordion-button::after {
    transition: transform 0.3s ease;
}

.accordion-button:not(.collapsed)::after {
    transform: rotate(180deg);
}

/* Accordion Body */
.accordion-body {
    background: #f9fafb;
    color: #374151;
}


/* ===============================
   HOD MESSAGE – PREMIUM STYLING
================================ */

/* Title */

/* Card */

/* Image */

/* Text */

/* Message */
.hod-message {
    padding-left: 15px;
}

.hod-message p {
    font-size: 1.02rem;
    line-height: 1.85;
    color: #374151;
    margin-bottom: 16px;
}

/* ================================================================= */
/* ============PLACEMENTS PAGE CSS START================= */

/* ===== Career Carousel Section ===== */
.lpu-career-section {
    margin-top: 20px;
    background: #01578c;
    padding: 60px 0;
}

.lpu-career-container {
    max-width: 100%;
    width: 95%;
    margin: auto;
}

/* Swiper */
.lpu-career-swiper {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
}

/* Slide */
.lpu-career-slide {
    position: relative;
    height: 400px;
}

.lpu-career-slide img {
    width: 100%;
    height: 100%;
    object-fit: fill;
}

/* Overlay Content */
.lpu-career-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to right,
            rgba(0, 0, 0, 0.6),
            rgba(0, 0, 0, 0.2));
    padding: 28px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.lpu-career-overlay h4 {
    color: #fff;
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 6px;
}

.lpu-career-overlay span {
    color: #f7931e;
    font-size: 14px;
    font-weight: 500;
}

/* Custom Navigation */
.lpu-career-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
}

.lpu-career-nav i {
    font-size: 20px;
    color: #000;
}

.lpu-career-prev {
    left: 16px;
}

.lpu-career-next {
    right: 16px;
}

/* Responsive */
@media (max-width: 768px) {
    .lpu-career-slide {
        height: 220px;
    }
}

@media (max-width: 480px) {
    .lpu-career-slide {
        height: 190px;
    }

    .lpu-career-overlay h4 {
        display: none;
        /* font-size: 12px;
        margin-top: 46 !important; */
    }

    .lpu-career-overlay span {
        display: none;
    }

    .lpu-career-nav {
        width: 22px;
        height: 22px;
    }

    .lpu-career-prev {
        left: 0px;
    }

    .lpu-career-next {
        right: 0px;
    }

}

/* placement accordian */
/* ===== Accordion Content Base ===== */

.tp-accordion-content {
    font-size: 15px;
    line-height: 1.8;
    color: #333;
}

/* Paragraphs */
.tp-para {
    margin-bottom: 14px;
}

/* Main Headings ONLY highlighted */
.tp-main-heading {
    margin: 28px 0 14px;
    font-size: 16px;
    font-weight: 600;
    color: #111;
    position: relative;
    padding-left: 14px;
}

/* Yellow accent bar for headings */
.tp-main-heading::before {
    content: "";
    position: absolute;
    left: 0;
    top: 3px;
    width: 4px;
    height: 18px;
    background: #f7931e;
    border-radius: 2px;
}

/* Tick List */
.tp-tick-list {
    list-style: none;
    padding-left: 0;
    margin-bottom: 18px;
}

.tp-tick-list li {
    position: relative;
    padding-left: 28px;
    margin-bottom: 10px;
}

/* Yellow Tick */
.tp-tick-list li::before {
    content: "✔";
    position: absolute;
    left: 0;
    top: 1px;
    color: #f7931e;
    font-size: 14px;
    font-weight: 700;
}

/* Responsive tweaks */
@media (max-width: 768px) {
    .tp-accordion-content {
        font-size: 14px;
    }

    .tp-main-heading {
        font-size: 15px;
    }
}

@media (max-width: 480px) {
    .tp-accordion-content {
        font-size: 13.5px;
        line-height: 1.7;
    }

    .tp-main-heading {
        font-size: 14px;
    }
}

.accordion-button i {
    font-size: 24px;
    flex-shrink: 0;
}

/* ========placemnt overview section =======*/
.plx-section {
    padding: 30px 0;
    background: #f7f9fc;
}

.plx-container {
    max-width: 1430px;
    margin: auto;
    padding: 0 24px;
}

/* Heading */
.plx-heading {
    font-size: 34px;
    font-weight: 700;
    color: #01578c;
    margin-bottom: 30px;
    position: relative;
}

.plx-heading::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -8px;
    width: 343px;
    height: 4px;
    background: linear-gradient(90deg, #f5d441, #d3224d);
}

/* Tabs */
.plx-tabs {
    justify-content: center;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 30px;
    margin-top: 40px;
}

.plx-tab {
    padding: 8px 18px;
    border-radius: 999px;
    border: 1px solid #ddd;
    background: #fff;
    cursor: pointer;
}

.plx-tab.active,
.plx-tab:hover {
    background: linear-gradient(135deg, #01578c, #d3224d);
    color: #fff;
    border-color: #01578c;
}

/* ================= CARDS ================= */
.plx-cards {
    margin-left: 60px;
    margin-right: 60px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
    margin-bottom: 50px;
    /* margin: auto; */
}

.plx-card {
    width: 100%;
    perspective: 1200px;
}

.plx-card-inner {
    position: relative;
    height: 160px;
    transform-style: preserve-3d;
    transition: transform 0.8s cubic-bezier(.4, .2, .2, 1);
}

.plx-card:hover .plx-card-inner {
    transform: rotateY(180deg);
}

.plx-card-front,
.plx-card-back {
    position: absolute;
    inset: 0;
    border-radius: 16px;
    backface-visibility: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.1);
}

.plx-card-front {
    background: #fff;
    border-top: 4px solid #f5d441;
}

.plx-card-front i {
    font-size: 26px;
    color: #01578c;
}

.plx-card-front h3 {
    font-size: 24px;
    color: #01578c;
}

.plx-card-front p {
    font-size: 14px;
}

.plx-card-back {
    background: linear-gradient(135deg, #01578c, #d3224d);
    color: #fff;
    transform: rotateY(180deg);
    padding: 16px;
    text-align: center;
}



/* ================= TABLE CARD ================= */
/* ===== Compact Table Card ===== */

.plx-table-card {
    color: white;
    background: linear-gradient(135deg, #01578c, #d3224d);
    border-radius: 16px;
    padding: 14px;
    /* reduced */
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.07);
}

/* Table base */
.plx-table {
    width: 100%;
    min-width: 780px;
    /* reduced from 900+ */
    border-collapse: collapse;
}

/* Header + cells */
.plx-table th,
.plx-table td {
    padding: 8px 10px;
    /* reduced row height */
    font-size: 13px;
    /* compact text */
    border-bottom: 1px solid #e6ebf1;
    text-align: center;
    white-space: nowrap;
    /* keeps rows tight */
}

/* Header styling */
.plx-table th {
    background: #f1f6fb;
    color: #01578c;
    font-weight: 600;
    font-size: 13px;
}

/* Row hover (still premium) */
.plx-table tbody tr:hover {
    background: #f8fbff;
    color: #01578c;
}

/* Branch column slightly left-aligned */
.plx-table td:nth-child(2),
.plx-table th:nth-child(2) {
    text-align: left;
    padding-left: 14px;
}

/* Mobile fine-tuning */
@media (max-width: 576px) {
    .plx-heading {
        font-size: 23px;
    }

    .plx-heading::after {
        width: 250px;
    }

    .plx-table {
        min-width: 650px;
    }

    .plx-table th,
    .plx-table td {
        font-size: 12px;
        padding: 7px 8px;
    }
}

/* Responsive */
@media (max-width: 992px) {
    .plx-cards {
        grid-template-columns: repeat(2, 1fr);
    }


    .plx-card-center {
        grid-column: span 1;
        width: 100%;
    }
}

@media (max-width: 576px) {
    .plx-cards {
        grid-template-columns: 1fr;
    }
}

.plx-tab-content {
    display: none;
}

.plx-tab-content.active {
    display: block;
}

/* ===============================
   Placement Registration Section
   =============================== */

.prx-section {
    padding-top: 25px;
    padding: 50px 0;
    background: linear-gradient(135deg, #01578c, #d3224d);
}

.prx-container {
    max-width: 1350px;
    margin: auto;
    padding: 0 20px;
}

.prx-card {
    display: grid;
    grid-template-columns: 1.4fr 0.9fr;
    gap: 30px;
    /* background: #ffffff; */
    border-radius: 20px;
    /* padding: 32px; */
    /* box-shadow: 0 20px 45px rgba(1, 87, 140, 0.08); */
    transition: transform 0.3s ease;
}

.prx-card:hover {
    transform: translateY(-4px);
}

/* Left Content */
.prx-title {
    font-size: 28px;
    font-weight: 700;
    color: #f5d441;
    margin-bottom: 12px;
}

.prx-desc {
    font-size: 15px;
    color: whitesmoke;
    margin-bottom: 22px;
    line-height: 1.7;
}

.prx-steps {
    list-style: none;
    padding: 0;
    margin: 0;
}

.prx-steps li {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 10px 0;
    font-size: 14.5px;
    color: white;
}

.prx-steps span {
    min-width: 36px;
    height: 36px;
    border-radius: 10px;
    background: #f5d441;
    color: #01578c;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Right Action */
.prx-action {
    display: flex;
    align-items: center;
    justify-content: center;
}

.prx-action-box {
    width: 100%;
    background: linear-gradient(135deg, #01578c, #0b6fb1);
    color: #ffffff;
    border-radius: 18px;
    padding: 26px;
    text-align: center;
    box-shadow: 0 16px 35px rgba(1, 87, 140, 0.25);
}

.prx-action-box i {
    font-size: 32px;
    color: #01578c;
}

.prx-action-box h4 {
    color: #f5d441;
    font-size: 20px;
    margin-bottom: 8px;
}

.prx-action-box p {
    color: white;
    font-size: 14px;
    opacity: 0.9;
    margin-bottom: 18px;
}

.bi-person-badge-fill {
    color: white !important;
}

/* CTA Button */
.prx-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #f5d441;
    color: #01578c;
    padding: 12px 22px;
    border-radius: 30px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
}

.prx-btn:hover {
    background: #ffffff;
    color: #01578c;
    gap: 14px;
}



/* ===============================
   Responsive
   =============================== */

@media (max-width: 900px) {
    .prx-card {
        grid-template-columns: 1fr;
    }

    .prx-action-box {
        margin-top: 10px;
    }
}

@media (max-width: 480px) {
    .prx-title {
        font-size: 21px;
    }

    .prx-card {
        /* padding: 24px; */
    }
}

/* ======HEAD OF PLACEMENT SECTION===== */
/* ===============================
   TPO SECTION
   =============================== */

.tpo-section {
    padding: 50px 0;
}

.tpo-container {
    max-width: 1350px;
    margin: auto;
    padding: 0 20px;
}

.tpo-card {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 30px;
    /* background: #d3224d; */
    border-radius: 22px;
    /* padding: 30px; */
    /* box-shadow: 0 18px 45px rgba(0, 0, 0, 0.08); */
}

/* PROFILE */
.tpo-profile {
    text-align: center;
}

.tpo-avatar {
    width: 70px;
    height: 70px;
    background: linear-gradient(135deg, #01578c, #0b6fb1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 14px;
}

.tpo-avatar i {
    font-size: 34px;
    color: #f5d441;
}

.tpo-profile h3 {
    font-size: 20px;
    margin-bottom: 4px;
    color: #01578c;
}

.tpo-role {
    font-size: 13px;
    color: #666;
}

/* tpo-img */

.tpo-avatar-img {
    width: 110px;
    height: 110px;
    border-radius: 50%;
    padding: 4px;
    background: linear-gradient(135deg, #01578c, #f5d441);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.35s ease, box-shadow 0.35s ease;
}

/* actual image */
.tpo-avatar-img img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
    background: #fff;
}

/* hover effect */
.tpo-avatar-img:hover {
    transform: translateY(-6px) scale(1.03);
    box-shadow: 0 18px 40px rgba(1, 87, 140, 0.35);
}

/* subtle glow animation */
@keyframes avatarGlow {
    0% {
        box-shadow: 0 0 0 rgba(245, 212, 65, 0.0);
    }

    50% {
        box-shadow: 0 0 18px rgba(245, 212, 65, 0.45);
    }

    100% {
        box-shadow: 0 0 0 rgba(245, 212, 65, 0.0);
    }
}

.tpo-avatar-img {
    animation: avatarGlow 4s ease-in-out infinite;
}

/* Responsive */
@media (max-width: 768px) {
    .tpo-avatar-img {
        width: 90px;
        height: 90px;
    }
}

.tpo-avatar-img::after {
    display: none;
}



.tpo-btn-primary {
    margin-top: 10px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: #f5d441;
    color: #01578c;
    border-radius: 30px;
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s ease;
}

.tpo-btn-primary:hover {
    background: #01578c;
    color: #ffffff;
}

/* CONTENT */
.tpo-content h4 {
    font-size: 20px;
    margin-bottom: 10px;
    color: #01578c;
}

.tpo-content h4 i {
    color: #d3224d;
    margin-right: 6px;
}

.tpo-intro {
    font-size: 14.5px;
    color: #444;
    margin-bottom: 14px;
}

/* ===============================
   TPO FOOTER CONTACT – PREMIUM
   =============================== */

.tpo-footer-contact {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 600;
}

.tpo-contact {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #d3224d;
    text-decoration: none;
    padding: 2px 6px;
    border-radius: 6px;
    transition: background 0.25s ease, color 0.25s ease;
}

.tpo-contact i {
    font-size: 14px;
}

/* subtle highlight */
.tpo-contact:hover {
    background: rgba(200, 16, 46, 0.12);
}

/* separator */
.tpo-sep {
    opacity: 0.4;
    font-weight: 400;
}

/* optional color distinction */
.tpo-contact.phone {
    color: #01578c;
}

.tpo-contact.phone:hover {
    background: rgba(13, 110, 253, 0.12);
}

/* mobile safety */
@media (max-width: 480px) {
    .tpo-footer-contact {
        justify-content: center;
    }

    .tpo-footer-contact {
        flex-wrap: wrap;
        row-gap: 6px;
    }
}


/* ACTIVE STATE */

/* RESPONSIVE */
@media (max-width: 900px) {
    .tpo-footer-contact {
        justify-content: center;
    }

    .tpo-card {
        grid-template-columns: 1fr;
    }

    .tpo-profile {
        border-bottom: 1px solid #eee;
        padding-bottom: 20px;
    }
}

/* <!===== placements- student recruited section ====== */
.srx-section {
    /* padding-bottom: 0px !important; */
    padding: 60px 0;
    background: #f9fbff;
}

.srx-container {
    max-width: 1350px;
    margin: auto;
}

.srx-title {
    font-size: 32px;
    color: #01578c;
    position: relative;
}

.srx-title i {
    color: #d3224d;
    margin-right: 8px;
}

.srx-title span {
    position: absolute;
    bottom: -6px;
    left: 0;
    width: 26%;
    height: 4px;
    background: #d3224d;
}

@media (max-width: 768px) {
    .srx-title span {
        width: 41%;
    }

    .srx-title {
        font-size: 27px;
    }
}

@media (max-width: 575px) {
    .srx-title span {
        width: 75%;
    }

    .srx-title {
        font-size: 23px;
    }
}

.srx-tabs {
    justify-content: center;
    display: flex;
    gap: 10px;
    margin: 20px 0;
    margin-top: 40px;
}

.srx-tab {
    padding: 6px 16px;
    border-radius: 20px;
    border: 1px solid #ccc;
    background: #fff;
}

.srx-tab.active {
    background: #01578c;
    color: #fff;
}

.srx-tab-content {
    display: none;
}

.srx-tab-content.active {
    display: block;
}

/* ===============================
   SRX TABS – SIMPLE RESPONSIVE
   =============================== */

.srx-tabs {
    display: flex;
    flex-wrap: wrap;
    /* KEY: allow next row */
    gap: 8px;
    justify-content: center;
    /* keeps rows aligned */
}

.srx-tab {
    padding: 6px 12px;
    /* slightly smaller */
    font-size: 14px;
    /* reduce text size */
    white-space: nowrap;
}

/* Extra tightening for very small screens */
@media (max-width: 480px) {
    .srx-tab {
        padding: 5px 10px;
        font-size: 13px;
    }
}


.srx-total {
    display: flex;
    gap: 16px;
    align-items: center;
    background: linear-gradient(135deg, #01578c, #0b6fb1);
    color: #fff;
    padding: 20px;
    border-radius: 16px;
    margin-bottom: 30px;
}

.srx-total i {
    font-size: 30px;
    color: #f5d441;
}

.srx-total h3 {
    font-size: 38px;
    color: #f5d441;
}

.srx-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

@media(max-width:992px) {
    .srx-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

.srx-card {
    background: #fff;
    padding: 18px;
    border-radius: 14px;
    text-align: center;
    box-shadow: 0 10px 26px rgba(0, 0, 0, .08);
    transition: .3s;
}

.srx-card:hover {
    transform: translateY(-6px);
}

.srx-card i {
    font-size: 24px;
    color: #01578c;
    margin-bottom: 6px;
}

.srx-card h4 {
    font-size: 13.5px;
    margin-bottom: 4px;
}

.srx-card.highlight {
    border-top: 4px solid #d3224d;
}

.srx-viewmore {
    text-align: center;
    margin-top: 30px;
}

.srx-viewmore button {
    padding: 12px 26px;
    border-radius: 30px;
    background: #01578c;
    color: #fff;
    border: none;
}

/* MODAL */
.srx-modal {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .55);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

.srx-modal.show {
    display: flex;
}

.srx-modal-panel {
    background: #fff;
    width: min(95%, 1000px);
    max-height: 85vh;
    overflow: auto;
    padding: 24px;
    border-radius: 18px;
}

.srx-modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.srx-modal-header button {
    font-size: 26px;
    background: none;
    border: none;
    cursor: pointer;
}

/* table horizontal scroll on mobile */
/* ===============================
   TABLE RESPONSIVE (INDUSTRY WAY)
   =============================== */

.plx-table-scroll {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.plx-table {
    width: 100%;
    min-width: 700px;
    /* critical: forces horizontal scroll */
    border-collapse: collapse;
}

/* Optional: cleaner mobile look */
.plx-table th,
.plx-table td {
    white-space: nowrap;
}

/* Mobile-only fine tuning */
@media (max-width: 768px) {
    .plx-table-card {
        padding: 0;
        border-radius: 0;
    }
}

.plx-table-scroll::after {
    content: "← Swipe →";
    display: block;
    text-align: right;
    font-size: 12px;
    opacity: 0.6;
    padding: 4px 8px;
}

/* =====PROMOTIONAL ADVERTISMENT SECTION EXTRA CSS===== */
/* ===============================
   Social Media Section – Base
   =============================== */

.social-media-section {
    position: relative;
    background: linear-gradient(180deg,
            rgba(1, 87, 140, 0.04),
            rgba(1, 87, 140, 0.01));
}

/* shared card look */
.video-wrapper,
.facebook-wrapper {
    height: 100%;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.75);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow:
        0 20px 40px rgba(0, 0, 0, 0.08),
        inset 0 0 0 1px rgba(255, 255, 255, 0.4);
    overflow: hidden;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

/* Video Area */
.video-wrapper {
    position: relative;
}

.video-wrapper iframe,
.video-wrapper video {
    width: 100%;
    height: 100%;
    min-height: 420px;
    border-radius: 18px;
}

/* subtle hover lift */
.video-wrapper:hover {
    transform: translateY(-6px);
    box-shadow: 0 30px 60px rgba(1, 87, 140, 0.18);
}

/* Facebook Panel */
.facebook-wrapper {
    padding: 18px;
    display: flex;
    flex-direction: column;
}

.fb-title {
    font-weight: 700;
    margin-bottom: 14px;
    color: #01578c;
    letter-spacing: 0.3px;
}

/* scroll container */
.fb-scroll {
    flex: 1;
    overflow: hidden;
    border-radius: 14px;
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.05);
}

/* gentle hover */
.facebook-wrapper:hover {
    transform: translateY(-6px);
    box-shadow: 0 28px 55px rgba(1, 87, 140, 0.2);
}

/*  */
/* entrance animation */
.video-wrapper,
.facebook-wrapper {
    animation: fadeUpSoft 0.8s ease both;
}

@keyframes fadeUpSoft {
    from {
        opacity: 0;
        transform: translateY(18px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* responsive */
@media (max-width: 991px) {

    .video-wrapper iframe,
    .video-wrapper video {
        min-height: 300px;
    }

    .facebook-wrapper {
        margin-top: 20px;
    }
}

@media (max-width: 575px) {

    .video-wrapper iframe,
    .video-wrapper video {
        min-height: 240px;
    }

    .fb-title {
        font-size: 16px;
    }
}


/* video */
.social-media-section {
    background: #fff;
}

.video-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}

.video-wrapper iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

.facebook-wrapper {
    background: #01578c;
    border-radius: 16px;
    padding: 16px;
    width: 100%;
    box-sizing: border-box;
}

.fb-scroll {
    background: #fff;
    border-radius: 10px;
    overflow: hidden;          /* IMPORTANT */
    width: 100%;
    max-width: 100%;
}
.fb-scroll iframe {
    display: block;
    width: 100% !important;
    max-width: 100%;
    border: 0;
}


.fb-title {
    color: #fff;
    margin-bottom: 15px;
    font-weight: 600;
}

/* .fb-scroll {
    background: #fff;
    border-radius: 10px;
    overflow-y: auto;
    max-height: 420px;
    padding: 10px;
} */

.fb-scroll::-webkit-scrollbar {
    width: 6px;
}

.fb-scroll::-webkit-scrollbar-thumb {
    background: #0d5cab;
    border-radius: 10px;
}


@media (max-width: 991px) {

    .video-wrapper iframe{
        max-height: 320px;
    }
}
@media (max-width: 991px) {
    .fb-scroll iframe {
        height: 320px;
    }
}

@media (max-width: 576px) {
    .fb-scroll iframe {
        height: 280px;
    }
}
.facebook-wrapper {
  height: 100%;
  background: #01578c;
  border-radius: 16px;
  padding: 16px;
  display: flex;
  flex-direction: column;
}

.fb-title {
  color: #fff;
  font-weight: 600;
  margin-bottom: 12px;
}

.fb-scroll {
  flex: 1;
  background: #fff;
  border-radius: 12px;
  overflow: hidden; /* critical */
  position: relative;
}

/* Kill FB iframe spacing */
.fb-scroll iframe {
  width: 100% !important;
  min-width: 100% !important;
  border: 0;
}
/* ===============================
   FACEBOOK – CLEAN FINAL VERSION
   =============================== */

.facebook-wrapper {
  background: #01578c;
  border-radius: 16px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* title */
.fb-title {
  color: #fff;
  font-weight: 600;
  margin-bottom: 12px;
}

/* container that holds FB */
.fb-scroll {
  flex: 1;
  background: #fff;
  border-radius: 12px;
  overflow: hidden;   /* kills all scrollbars */
  position: relative;
}

/* iframe itself */
.fb-scroll iframe {
  width: 100% !important;
  height: 100% !important;
  border: 0;
  display: block;
}

/* ===============================
   TABLET & BELOW — CRITICAL FIX
   =============================== */

@media (max-width: 991px) {

  /* STOP height sync on tablet */
  .facebook-wrapper {
    height: auto;
  }

  .fb-scroll {
    flex: unset;
    height: auto;
  }

  .fb-scroll iframe {
    height: auto !important;
    min-height: 320px; /* safe visual height */
  }
}

@media (max-width: 576px) {
  .fb-scroll iframe {
    min-height: 280px;
  }
}

@media (max-width: 991px) {
  .facebook-wrapper {
    display: none !important;
  }
}



/* ===============================
   FACEBOOK – MOBILE & TABLET
   =============================== */

/* Blue wrapper (KEEP IT) */
.fb-mt-wrapper {
  background: #01578c;
  border-radius: 16px;
  padding: 16px;
  max-width: 420px;
  margin: 0 auto;                 /* ✅ center align */
}

/* Title */
.fb-mt-title {
  color: #fff;
  font-weight: 600;
  margin-bottom: 12px;
}

/* FB frame
   - NO outer scrollbar
   - FB internal scroll allowed */
.fb-mt-frame {
  background: #fff;
  border-radius: 12px;
  height: 360px;
  overflow-x: hidden;             /* ❌ no horizontal scroll */
  overflow-y: visible;            /* ✅ allow FB internal scroll */
}

/* iframe safety */
.fb-mt-frame iframe {
  width: 100% !important;
  max-width: 100% !important;
  border: 0;
  display: block;
}

/* ===============================
   VISIBILITY RULES
   =============================== */

/* Hide this block on desktop */
@media (min-width: 992px) {
  .fb-mt-row {
    display: none;
  }
}

/* ===============================
   TABLET
   =============================== */
@media (max-width: 991px) {
  .fb-mt-wrapper {
    max-width: 400px;
    margin-left: auto;             /* ✅ force center */
    margin-right: auto;
  }

  .fb-mt-frame {
    height: 320px;
  }
}

/* ===============================
   MOBILE
   =============================== */
@media (max-width: 576px) {
  .fb-mt-wrapper {
    max-width: 100%;
  }

  .fb-mt-frame {
    height: 300px;
  }
}

/* Hide scrollbar but keep scroll (Chrome, Edge, Safari) */
.fb-mt-frame::-webkit-scrollbar {
  width: 0;
  height: 0;
}


/* ==============================
   PLACEMENTS SECTION START
   ============================== */

.px-placement-section {
    /* margin-bottom: 50px; */
    background: #0a5b96;
    padding: 70px 60px;
    color: #fff;
    font-family: Arial, sans-serif;
}

/* WRAPPER */
.px-placement-wrapper {
    display: flex;
    gap: 30px;
    align-items: center;
}

/* line divider */
.px-placement-divider {
    width: 2px;
    height: 420px;
    background: rgba(255, 255, 255, 0.6);
    align-self: stretch;
}



/* COMPANY SECTION */
.px-company-section {
    flex: 1;
    display: flex;
    justify-content: center;
}

.px-company-grid {
    display: grid;
    grid-template-columns: repeat(3, 200px);
    gap: 20px;
}

.px-company-card {
    background: #fff;
    height: 90px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    transition: all 0.3s ease;
}

.px-company-card img {
    max-width: 120px;
    max-height: 45px;
    object-fit: contain;
}

.px-company-card:hover {
    transform: translateY(-6px) scale(1.05);
}

/* BOTTOM TEXT */
.px-placement-desc {
    margin-top: 55px;
    text-align: center;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
    font-size: 16px;
    line-height: 1.6;
    color: #e8f1f8;
}


/* cards */
.px-flip-scope {
    display: flex;
    gap: 22px;
}

/* Hover polish */

/* MOBILE */
@media (max-width: 768px) {
    .px-flip-scope {
        flex-direction: column;
        align-items: center;
    }

}

/* TABLET (≤ 1024px) */
@media (max-width: 1024px) {

    .px-placement-wrapper {
        gap: 40px;
    }

    .px-students-area {
        height: 270px;
        justify-content: center;
    }

    .px-company-grid {
        grid-template-columns: repeat(3, 160px);
    }

    .px-placement-wrapper {
        display: block;
    }

    .px-company-section {
        margin-top: 60px;
    }

}

/* MOBILE / SMALL TABLET (≤ 768px) */
@media (max-width: 768px) {

    .px-placement-wrapper {
        flex-direction: column;
        align-items: center;
    }

    /* LEFT SCROLLERS */
    .px-students-area {
        height: 360px;
    }

    /* STOP OPPOSITE SCROLL CONFUSION ON MOBILE */

    /* DIVIDER BECOMES HORIZONTAL */
    .px-placement-divider {
        width: 80%;
        height: 2px;
        margin: 40px 0;
    }

    /* COMPANY LOGOS */
    .px-company-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .px-company-card {
        height: 80px;
    }
}

@media (max-width: 769px) {

    .px-placement-wrapper {
        display: block;
    }

    .px-students-area {
        height: auto;
        flex-direction: column;
        align-items: center;
    }

    .px-placement-divider {
        width: 70%;
        height: 2px;
        margin: 20px auto;
    }
}

@media (max-width: 575px) {
    .px-placement-section {
        padding: 70px 20px;
    }

    .px-company-card img {
        max-width: 60px;
        max-height: 30px;
    }

    .px-company-card {
        height: 60px;
    }

    .px-company-card {
        padding: 10px;
    }

    .px-company-card {
        width: 80px;
        padding: 5px;
    }

}

/* =========================
   PLACEMENT BANNER SLIDER
   ========================= */

.px-banner-area {
    position: relative;
    width: 700px;
    height: 350px;
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.25);
}

/* Images */
.px-banner-wrapper {
    width: 100%;
    height: 100%;
    position: relative;
}

.px-banner {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transform: scale(1.05);
    transition: opacity 0.5s ease, transform 0.6s ease;
}

.px-banner.active {
    opacity: 1;
    transform: scale(1);
}

/* Arrows */
.px-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.6);
    color: #fff;
    border: none;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    transition: background 0.3s ease, transform 0.3s ease;
}

.px-arrow:hover {
    background: rgba(0, 0, 0, 0.85);
    transform: translateY(-50%) scale(1.1);
}

.px-arrow.left {
    left: 12px;
}

.px-arrow.right {
    right: 12px;
}

/* Mobile */
@media (max-width: 768px) {
    .px-banner-area {
        width: 100%;
        max-width: 320px;
        height: 160px;
    }
}

@media (max-width: 360px) {
    .px-banner-area {
        width: 100%;
        max-width: 320px;
        height: 140px;
    }
}


/* spacing */
@media (max-width: 991px) {
    .px-placement-section {
        padding-top: 80px;
        padding-bottom: 80px;
    }
}

.px-placement-section .it-categories-section-title-box {
    margin-bottom: 90px;
}

@media (max-width: 991px) {
    .px-placement-section .it-categories-section-title-box {
        margin-bottom: 100px;
    }
}

/* funfact cards */
.it-funfact-item {
    background: linear-gradient(180deg,
            rgba(255, 255, 255, 0.7),
            rgba(255, 255, 255, 0.35));

    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);

    border-radius: 18px;
    padding: 30px 0px !important;

    border: 1px solid rgba(255, 255, 255, 0.35);

    box-shadow:
        0 12px 30px rgba(0, 0, 0, 0.12),
        inset 0 1px 1px rgba(255, 255, 255, 0.6);

    transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.it-funfact-item:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.18);
}

.it-funfact-icon span {
    width: 70px;
    height: 70px;
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background: rgba(1, 87, 140, 0.08);
}

/* student card */

/* STUDENT IMAGE POLISH */

/* text hierarchy */

/* COMPANY LOGOS — CARD LOOK */
.px-company-card {
    background: #fff;
    border-radius: 16px;
    padding: 20px;

    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);

    transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.px-company-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.18);
}

/* FINAL DESCRIPTION SPACING */
.px-placement-desc {
    max-width: 760px;
    margin: 45px auto 0;
    text-align: center;
    font-size: 15px;
    line-height: 1.7;
    color: white;
}

.it-section-titles {
    color: #fff !important;
}



/* ===================below waste=== */



.it-section-title span svg {
    animation: title-animation 4s infinite;
}

.it-section-title span.it-title-shape {
    position: absolute;
    bottom: 0;
    left: -3%;
    z-index: -1;
    line-height: 0;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .it-section-title {
        font-size: 34px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .it-section-title {
        font-size: 33px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .it-section-title br {
        display: none;
    }
}

@media (max-width: 767px) {
    .it-section-title {
        font-size: 25px;
        margin-bottom: 30px;
    }

    .it-section-title br {
        display: none;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .it-section-title {
        font-size: 32px;
    }
}

/* =========================above=== */

/*----------------------------------------*/
/*  19. faq css start
/*----------------------------------------*/

/* =================            above waste              */

/*----------------------------------------*/
/*  22. funfact css start
/*----------------------------------------*/
/* ===============================
   Funfact Area – Responsive Spacing
   =============================== */

/* Large screens (desktops & above) */
@media (min-width: 1200px) {
    .it-funfact-area {
        margin-top: 120px !important;
        margin-bottom: 50px !important;
    }
}

/* Medium screens (tablets, small laptops) */
@media (max-width: 1199px) and (min-width: 768px) {
    .it-funfact-area {
        margin-top: 60px !important;
        /* half of 120 */
        margin-bottom: 25px !important;
        /* half of 50 */
    }
}

/* Small screens (mobile) */
@media (max-width: 767px) {
    .it-funfact-area {
        margin-top: 30px !important;
        /* minimal but breathable */
        margin-bottom: 15px !important;
    }
}

.it-funfact-icon span {
    z-index: 1;
    position: relative;
    display: inline-block;
    margin-right: 20px;
    margin-left: 30px;
    padding-left: 12px;
    padding-top: 15px;

}

.it-funfact-icon span::after {
    position: absolute;
    content: "";
    top: -10px;
    left: 0;
    display: inline-block;
    height: 41px;
    width: 41px;
    line-height: 41px;
    text-align: center;
    border-radius: 50%;
    z-index: -1;
    background-color: rgba(255, 255, 255, 0.15);
}

.it-funfact-icon span svg {
    -webkit-transition: all 300ms ease;
    transition: all 300ms ease;
}

.it-funfact-content {
    text-align: start;
    margin-right: 27px;
}

.it-funfact-content span {
    /* color: var(--it-common-white); */
    color: black;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .it-funfact-content span {
        font-size: 13px;
    }
}

.it-funfact-number {
    text-align: center;
    font-size: 18px;
    line-height: 1;
    margin-bottom: 10px;
    color: black;
}

.it-funfact-number i {
    font-style: normal;
}
/* Tablet only */
@media (min-width: 768px) and (max-width: 991px) {
    .it-funfact-number {
        text-align: justify;
    }
}


.it-funfact-item {
    padding: 71px 0;
    position: relative;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .it-funfact-item {
        text-align: center;
        padding: 0;
        padding-bottom: 50px;
    }
}

.it-funfact-item::before {
    position: absolute;
    top: 0;
    content: "";
    width: 1px;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.15);
}

@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .it-funfact-item::before {
        display: none;
    }
}

.it-funfact-item:hover .it-funfact-icon svg {
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
}

@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .it-funfact-area {
        padding-top: 70px;
        padding-bottom: 10px;
    }
}

.it-funfact-area .row [class*=col-]:first-child .it-funfact-item::before {
    display: none;
}

.it-funfact-area .row [class*=col-]:nth-child(2) .it-funfact-item {
    padding-left: 20px;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .it-funfact-area .row [class*=col-]:nth-child(2) .it-funfact-item {
        padding-left: 0;
    }
}

.it-funfact-area .row [class*=col-]:nth-child(2) .it-funfact-item::before {
    left: -13.5%;
}

.it-funfact-area .row [class*=col-]:nth-child(3) .it-funfact-item {
    padding-left: 25px;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .it-funfact-area .row [class*=col-]:nth-child(3) .it-funfact-item {
        padding-left: 0;
    }
}

.it-funfact-area .row [class*=col-]:nth-child(3) .it-funfact-item::before {
    left: -13.5%;
}

.it-funfact-area .row [class*=col-]:nth-child(4) .it-funfact-item {
    padding-left: 50px;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .it-funfact-area .row [class*=col-]:nth-child(4) .it-funfact-item {
        padding-left: 0;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .it-funfact-area .row [class*=col-]:nth-child(4) .it-funfact-item {
        padding-bottom: 0;
    }
}

.it-funfact-area .row [class*=col-]:nth-child(4) .it-funfact-item::before {
    left: -4%;
}

.it-funfact-wrap {
    margin-top: -185px;
    padding: 30px 30px 30px 30px !important;
    border-radius: 100px;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .it-funfact-wrap {
        padding: 0 35px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .it-funfact-wrap {
        padding: 60px 35px;
    }
}

@media (max-width: 767px) {
    .it-funfact-wrap {
        padding: 60px 25px;
        border-radius: 30px;
    }
    .it-funfact-number{
        /* text-align: justify; */
    }
}

.it-funfact-wrap::after {
    position: absolute;
    content: "";
    bottom: -5px;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -2;
    border-radius: 100px;
    background-color: #d3224d;
}

.z-index-2 {
    position: relative;
    z-index: 2;
}

.it-funfact-wrap .it-funfact-icon svg {
    color: #d3224d !important;
}

@media (max-width: 767px) {
    .it-funfact-wrap::after {
        border-radius: 30px;
    }
    .it-funfact-number{
        text-align: justify;
    }
}

.it-funfact-wrap {
    margin-top: -185px;
    padding: 30px 30px 30px 30px !important;
    border-radius: 100px;
}

.it-funfact-wrap::before {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    border-radius: 100px;
    background-color: #fff;
    /* background-color: var(--it-theme-1); */
}

@media (max-width: 767px) {
    .it-funfact-wrap::before {
        border-radius: 30px;
    }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .it-funfact-wrap .it-funfact-item {
        padding: 30px 0;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .it-funfact-wrap .it-funfact-item {
        padding-bottom: 0;
    }
}

@media (max-width: 767px) {
    .it-funfact-wrap .it-funfact-item {
        padding-bottom: 0;
    }
}

.it-funfact-wrap .it-funfact-item::before {
    display: none;
}

.it-funfact-wrap .it-funfact-icon svg {
    color: var(--it-theme-2);
}

.it-funfact-wrap .row [class*=col-]:nth-child(2) .it-funfact-item {
    padding-left: 20px;
}

@media (max-width: 767px) {
    .it-funfact-wrap .row [class*=col-]:nth-child(2) .it-funfact-item {
        padding-left: 0;
    }
}

.it-funfact-wrap .row [class*=col-]:nth-child(3) .it-funfact-item {
    padding-left: 15px;
}

@media (max-width: 767px) {
    .it-funfact-wrap .row [class*=col-]:nth-child(3) .it-funfact-item {
        padding-left: 0;
    }
}

.it-funfact-wrap .row [class*=col-]:nth-child(4) .it-funfact-item {
    padding-left: 0;
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .it-funfact-wrap .row [class*=col-]:not(:last-child) .it-funfact-item {
        margin-bottom: 50px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .it-funfact-wrap .row [class*=col-]:nth-last-child(2) .it-funfact-item {
        margin-bottom: 0;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .it-funfact-wrap .row [class*=col-]:nth-last-child(2) .it-funfact-item {
        margin-bottom: 0;
    }
}


/* ==============================
   PLACEMENTS SECTION END
   ============================== */
/* ================================================================== */
/* ================================================================== */
/* EVENTS NEWS ANNOUNCEMENTS SECTION CSS */

/* department */

/* Text */

@keyframes shine {
    0% {
        left: -75%;
    }

    100% {
        left: 125%;
    }
}

/* news section */

.latest-news-section {
    background: #fafafa;
}

.news-tabs li {
    cursor: pointer;
    color: #888;
    font-weight: 500;
    position: relative;
}

.news-tabs li.active {
    color: #000;
}

.news-tabs li.active::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -8px;
    width: 100%;
    height: 3px;
    background: #d71920;
    border-radius: 2px;
}

/* Featured News */
.featured-news {
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.red-box {
    background: #01578c;
    color: #fff;
    padding: 30px;
}

.red-box h4 {
    color: #f5d441;
    font-size: 20px;
    font-weight: 700;
}

.red-box h4:hover {
    /* color: #e63629; */
    color: white;
}

.red-box p {
    color: white;
    font-size: 14px;
    margin-top: 15px;
}

.news-card {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
    overflow: hidden;
    padding-bottom: 15px;
}

.news-card img {
    width: 100%;
    height: 180px;
    object-fit: cover;
}

.news-card h6 {
    padding: 15px 15px 5px;
    font-weight: 600;
}

.news-card p {
    padding: 0 15px;
    font-size: 14px;
    color: #666;
}

.news-sidebar {
    background: white;
    border-radius: 12px;
    padding: 20px;
}

.sidebar-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.date-picker {
    font-size: 14px;
    color: #666;
}

.news-item {
    margin-bottom: 25px;
    padding: 10px;
    background: #fafafa;
}

.date-tag {
    display: inline-block;
    background: #0d5cab;
    color: #fff;
    padding: 4px 10px;
    font-size: 12px;
    margin-bottom: 8px;
    position: relative;
}

.date-tag::after {
    content: "";
    position: absolute;
    right: -10px;
    top: 50%;
    transform: translateY(-50%);
    border-left: 10px solid #0d5cab;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
}

.news-item h6 {
    font-size: 15px;
    font-weight: 600;
}

.news-item p {
    font-size: 14px;
    color: #666;
}

.hover-img {
    position: relative;
    overflow: hidden;
}

.hover-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.hover-img:hover img {
    transform: scale(1.08);
}

.hover-img::after {
    content: "";
    position: absolute;
    top: 0;
    left: -75%;
    width: 50%;
    height: 100%;
    background: linear-gradient(120deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.35) 50%,
            rgba(255, 255, 255, 0) 100%);
    transform: skewX(-25deg);
    z-index: 2;
}

.hover-img:hover::after {
    animation: shine 0.9s ease-in-out;
}

@keyframes shine {
    0% {
        left: -75%;
    }

    100% {
        left: 125%;
    }
}

.latestnews h6:hover {
    color: var(--it-theme-2);
}

.tab-content-news {
    display: none;
}

.tab-content-news.active {
    display: block;
    padding-bottom: 60px;
}

/*----------------------------------------*/
/*  EVENTS CSS – FIXED MASK ISSUE
/*----------------------------------------*/

.it-campus-title {
    font-size: 24px;
    margin-bottom: 25px;
}

@media (min-width: 1200px) and (max-width: 1399px) {
    .it-campus-title {
        margin-bottom: 35px;
    }
}

@media (max-width: 1199px) {
    .it-campus-title {
        font-size: 18px;
    }
}

@media (min-width: 576px) and (max-width: 767px) {
    .it-campus-title {
        font-size: 22px;
    }
}

/* ===============================
   IMAGE THUMB (FIXED)
================================ */

.it-campus-thumb {
    width: 100%;
    height: 293px;
    overflow: hidden;
    border-radius: 20px;

    /* MASK (desktop only) */
    -webkit-mask-image: url("../img/news/aiml.avif");
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;

    mask-image: url("../img/news/aiml.avif");
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
}

/* FIX: prevent white image issue */
.it-campus-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 1.3s ease;
}

/* Disable mask on tablets & mobile (SAFE) */
@media (max-width: 991px) {
    .it-campus-thumb {
        -webkit-mask-image: none;
        mask-image: none;
        height: auto;
    }
}

/* Fallback if mask unsupported */
@supports not (mask-image: url("")) {
    .it-campus-thumb {
        -webkit-mask-image: none;
        mask-image: none;
    }
}

/* ===============================
   CARD
================================ */

.it-campus-item {
    padding: 25px;
    padding-top: 30px;
    border-radius: 20px;
    position: relative;
    z-index: 1;
    background-color: grey;
}

@media (min-width: 1200px) and (max-width: 1399px) {
    .it-campus-item {
        padding: 20px;
        padding-top: 30px;
    }
}

@media (min-width: 576px) and (max-width: 767px) {
    .it-campus-item {
        padding: 30px;
    }
}

.it-campus-item:hover .it-campus-thumb img {
    transform: scale(1.1);
}

/* ===============================
   ARROW CORNER
================================ */

.it-campus-arrow {
    position: absolute;
    top: 0;
    right: 0;
    padding: 0 0 20px 20px;
    border-radius: 0 0 0 70%;
    background-color: white;
}

.it-campus-arrow::before {
    content: "";
    position: absolute;
    top: 0;
    left: -50px;
    width: 50px;
    height: 50px;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform='rotate(90 100 100)'%3E%3Cpath d='M0,0 L0,200 Q0,0 200,0 Z' fill='white' /%3E%3C/g%3E%3C/svg%3E");
    background-size: cover;
    background-repeat: no-repeat;
}

.it-campus-arrow::after {
    content: "";
    position: absolute;
    bottom: -50px;
    right: 0;
    width: 50px;
    height: 50px;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform='rotate(90 100 100)'%3E%3Cpath d='M0,0 L0,200 Q0,0 200,0 Z' fill='white' /%3E%3C/g%3E%3C/svg%3E");
    background-size: cover;
    background-repeat: no-repeat;
}

/* Arrow button */
.it-campus-arrow a {
    display: inline-block;
    height: 83px;
    width: 83px;
    line-height: 83px;
    text-align: center;
    border-radius: 50%;
    color: white;
    background-color: #01578c;
    transition: background-color 0.3s ease, color 0.3s ease;
}

.it-campus-item:hover .it-campus-arrow a {
    color: black;
    background-color: #d3224d;
}

/* Responsive arrow */
@media (max-width: 991px) {
    .it-campus-arrow a {
        height: 55px;
        width: 55px;
        line-height: 55px;
    }

    .it-campus-arrow a svg {
        height: 15px;
    }
}


/* announcements stacked side by side */
.announcements-wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    padding: 0 30px;
}

.announcement {
    background: #ffffff;
    border-left: 4px solid #01578c;
    padding: 20px;
    border-radius: 14px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);
    transition: transform 0.35s ease, box-shadow 0.35s ease;
    position: relative;
}

.announcement:hover {
    transform: translateY(-8px);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.1);
}

.announcement h6 {
    font-size: 16px;
    font-weight: 700;
    margin: 12px 0 6px;
}

.announcement p {
    font-size: 14px;
    color: #444;
    line-height: 1.6;
    margin-bottom: 10px;
}

.announce-link {
    font-size: 14px;
    font-weight: 600;
    color: #d71920;
    text-decoration: none;
}

.announce-badge {
    display: inline-block;
    background: #01578c;
    color: #fff;
    padding: 4px 12px;
    font-size: 11px;
    border-radius: 50px;
    font-weight: 600;
}

.announce-badge.urgent {
    background: #d3224d;
}

.blink {
    animation: blinkPulse 1.6s infinite;
}

@keyframes blinkPulse {
    0% {
        box-shadow: 0 0 0 rgba(215, 25, 32, 0.4);
    }

    50% {
        box-shadow: 0 0 22px rgba(215, 25, 32, 0.6);
    }

    100% {
        box-shadow: 0 0 0 rgba(215, 25, 32, 0.4);
    }
}

@media (max-width: 991px) {
    .announcements-wrap {
        grid-template-columns: repeat(2, 1fr);
        padding: 0 20px;
    }
}

@media (max-width: 576px) {
    .announcements-wrap {
        grid-template-columns: 1fr;
        padding: 0 15px;
    }
}


/* news */

.news-header {
    margin-right: 30px !important;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Mobile view */
@media (max-width: 576px) {
    .news-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .news-tabs {
        width: 100%;
        justify-content: flex-start;
    }
}

.it-btn-yellow span span.text-1 {
    position: relative;
    display: block;
    transition: 0.3s;
}

.it-btn-yellow span span.text-2 {
    position: absolute;
    top: 100%;
    display: block;
    transition: 0.3s;
}

/* fixed side */

/* =======LATEST UPDATE SECTION EXTRA CSS=========== */

/* side bar alignment */
.news-item {
    position: relative;
    padding-left: 56px;
}

.date-tag {
    position: absolute;
    left: 0;
    top: 6px;
    background: var(--it-theme-1);
    color: #fff;
    font-size: 11px;
    padding: 6px 8px;
    border-radius: 6px;
}

/* SIDEBAR CONTAINER (POLISHED) */
.news-sidebar {
    background: linear-gradient(180deg,
            rgba(255, 255, 255, 0.95),
            rgba(245, 247, 249, 0.95));
    border-radius: 22px;
    padding: 28px;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.08);
}

/* EWS ITEM = FLOATING CARD */
.news-item {
    position: relative;
    background: #fff;
    border-radius: 16px;
    padding: 20px 18px 20px 60px;
    margin-bottom: 18px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.06);
    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease;
}

.news-item:hover {
    transform: translateY(-8px);
    box-shadow: 0 22px 45px rgba(0, 0, 0, 0.12);
}

/* DATE BADGE – MICRO GIMMICK */
.date-tag {
    position: absolute;
    left: -10px;
    top: 18px;
    background: #01578c;
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    padding: 6px 10px;
    border-radius: 8px;
    box-shadow: 0 8px 20px rgba(1, 87, 140, 0.35);
    transition: transform 0.4s ease;
}

.news-item:hover .date-tag {
    transform: scale(1.1);
}

/* title text */
.news-item h6 {
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 6px;
    line-height: 1.4;
}

.news-item p {
    font-size: 13px;
    color: var(--it-text-body);
    line-height: 1.5;
    margin-bottom: 0;
}

.it-btn-yellow.theme-bg {
    background-color: #01578c;
}

.border-radius-100 {
    border-radius: 100px !important;
}

.it-btn-yellow span span.text-1 {
    position: relative;
    display: block;
    transition: 0.3s;
}

.it-btn-yellow span {
    position: relative;
    z-index: 1;
    overflow: hidden;
    display: inline-block;
    color: white;
}

.it-btn-yellow span span.text-2 {
    position: absolute;
    top: 100%;
    display: block;
    transition: 0.3s;
}

.it-btn-yellow.theme-bg span {
    color: white;
}

.it-btn-yellow.theme-bg svg {
    color: white;
}

.it-btn-yellow:hover {
    color: white;
    background-color: #D3224D !important;
}

a:active,
a:focus,
a:hover,
a:visited {
    text-decoration: none;
    outline: 0;
}

.it-btn-yellow:hover span span.text-1 {

    transform: translateY(-150%);
}

.it-btn-yellow:hover span span.text-2 {
    top: 50%;

    transform: translateY(-50%);
}

.it-btn-yellow.theme-bg span {
    color: white;
}

.it-btn-yellow {
    font-size: 16px;
    padding: 15px 29px;
    line-height: 1.1;
    font-weight: 500;
    text-align: center;
    transition: 0.4s;
    border-radius: 8px;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: white;
    background-color: #01578c;
}


/*SUBTLE LEFT ACCENT (PREMIUM DETAIL)  */
.latestnews:hover {
    color: #d3224d;
}

.news-item::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 16px;
    background: linear-gradient(90deg,
            rgba(1, 87, 140, 0.08),
            transparent);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.news-item:hover::before {
    opacity: 1;
}

/* CTA button */

.it-btn-yellow i {
    transition: transform 0.3s ease;
}

.it-btn-yellow:hover i {
    transform: translateX(6px);
}

/* LEFT NEWS CARDS → REAL CARDS */
.news-card {
    height: 100%;
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    padding-bottom: 16px;
    box-shadow: 0 18px 40px rgba(0, 0, 0, .1);
    transition: all .45s ease;
}

.news-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 30px 70px rgba(0, 0, 0, .18);
}

.news-card img {
    width: 100%;
    height: 180px;
    object-fit: cover;
    transition: transform .5s ease;
}

.news-card:hover img {
    transform: scale(1.08);
}

.news-card h6 {
    margin: 14px 16px 6px;
    font-weight: 600;
}

.news-card p {
    margin: 0 16px;
    font-size: 14px;
    line-height: 1.6;
    color: var(--it-text-body);
}

/* SIDEBAR → FLOATING GLASS CARD */
.news-sidebar {
    position: sticky;
    top: 100px;
    background: #fff;
    border-radius: 18px;
    padding: 22px;
    box-shadow: 0 25px 60px rgba(0, 0, 0, .12);
}

/* ====LATEST UPDATE SECTION- events block css extra==== */


/* EVENT CARD BASE (DEPTH) */
.premium-news #events .it-campus-item {
    background: #fff;
    border-radius: var(--card-radius);
    overflow: hidden;
    box-shadow: 0 12px 30px rgba(0, 0, 0, .08);
    transition: transform .5s ease, box-shadow .5s ease;
    position: relative;
}

.premium-news #events .it-campus-item:hover {
    transform: translateY(-10px);
    box-shadow: var(--card-shadow);
}

/* IMAGE PARALLAX ZOOM (CONTROLLED) */
.premium-news #events .it-campus-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .8s ease;
}

.premium-news #events .it-campus-item:hover .it-campus-thumb img {
    transform: scale(1.12);
}


/* =======COURSES SECTION EXTRA CSS */

.it-section-title {
    font-size: 36px;
    margin-bottom: 0;
    line-height: 1.4;
    color: black;
    font-weight: bold;
}

.it-course-area {
    background: #F6F8FB;
}

.it-course-tab-btn ul li button.active {
    color: #e63629;
    text-decoration: underline;
    text-underline-offset: 10px;
    text-decoration-thickness: 3px;
}

.it-course-tab-btn ul li button {
    border: 0px;
    background: #F6F8FB;
    padding: 0;
    margin: 0 20px;
    font-weight: 600;
    font-size: 20px;
    position: relative;
    color: #475569;
}


.it-course-tab-btn ul li button:hover {
    color: #e63629;
    text-decoration: underline;
    text-underline-offset: 10px;
    text-decoration-thickness: 3px;
}


.it-course-tab-content .it-choose-3-item {
    background: linear-gradient(180deg, #ffffff 0%, #f6f9ff 100%) !important;
    border-radius: 22px;
    padding: 42px 28px;
    border: 1px solid rgba(1, 87, 140, 0.08);
    box-shadow:
        0 10px 25px rgba(0, 0, 0, 0.08),
        0 30px 60px rgba(0, 0, 0, 0.10);
    position: relative;
    overflow: hidden;
}

/*  */
.it-course-tab-content .it-choose-3-item::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg,
            transparent 30%,
            rgba(1, 87, 140, 0.06),
            transparent 70%);
    opacity: 0;
    transition: opacity 0.4s ease;
}

.it-course-tab-content .it-choose-3-item:hover::before {
    opacity: 1;
}

/* icon bg  */
.it-course-tab-content .it-choose-3-icon {
    width: 88px;
    height: 88px;
    margin: 0 auto 22px;
    border-radius: 50%;
    background: linear-gradient(145deg, #eaf2ff, #ffffff);
    box-shadow:
        inset 0 4px 10px rgba(255, 255, 255, 0.8),
        0 12px 30px rgba(1, 87, 140, 0.25);
    display: flex;
    align-items: center;
    justify-content: center;
}

.it-course-tab-content .it-choose-3-icon img {
    width: 46px;
    height: 46px;
    filter: drop-shadow(0 6px 14px rgba(0, 0, 0, 0.25));
}

/* title-typography */
.it-course-tab-content .it-choose-3-title {
    font-weight: 700;
    font-size: 17px;
    color: #012a44;
    margin-bottom: 12px;
}

.it-course-tab-content .it-choose-3-content p {
    font-size: 14px;
    line-height: 1.65;
    color: #5f6f82;
}

.it-course-tab-content .corselink {
    margin-top: 18px;
    box-shadow: 0 8px 20px rgba(1, 87, 140, 0.35);
}


.it-choose-3-item {
    position: relative;
    z-index: 1;
    padding: 40px 30px;
    padding-top: 45px;
    border-radius: 20px;
    overflow: hidden;
    transition: 0.4s;
    background-color: var(--it-common-white);
    box-shadow: 0 20px 30px 0 rgba(1, 6, 20, 0.05);
    border: 1px solid rgba(248, 198, 47, 0.1);
}

.it-choose-3-item p {
    margin-bottom: 0;
    font-size: 14px;
    line-height: 1.7;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .it-choose-3-item p {
        padding: 0 20px;
    }
}

.it-choose-3-item:hover {
    border: 1px solid rgba(26, 182, 157, 0.2);
    box-shadow: 0 20px 30px 0 rgba(1, 6, 20, 0.1);
}

.it-choose-3-item:hover .it-choose-3-shape-1 {
    opacity: 1;
    left: 0;
}

.it-choose-3-item:hover .it-choose-3-icon svg {
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
}

.it-choose-3-title {
    font-size: 19px;
    margin-bottom: 13px;
}

.it-choose-3-icon {
    margin-bottom: 25px;
}

.it-choose-3-icon svg {
    -webkit-transition: all 300ms ease;
    transition: all 300ms ease;
}

.it-choose-3-shape-1 {
    position: absolute;
    top: 50%;
    left: -25%;
    z-index: -1;
    opacity: 0;
    transition: 0.7s all ease;
    transform: translateY(-50%);
}


.it-choose-3-item {
    height: 300px;
    padding: 30px 20px;
    background: #fff;
    border-radius: 16px;
    border: 2px solid #01578c;
    /* box-shadow: 0 6px 15px rgba(230, 54, 41, 0.25); */
    display: flex;
    flex-direction: column;
    /* ✅ THIS FIXES SIDE-BY-SIDE */
    align-items: center;
    justify-content: center;
    text-align: center;

    transition: all 0.3s ease;
}



.it-choose-3-content p {
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    margin-top: 0;
    transition: all 0.4s ease;
}

.it-choose-3-item:hover .it-choose-3-content p {
    opacity: 1;
    max-height: 120px;
    margin-top: 12px;
}

.it-choose-3-content p {
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    margin-top: 0;
    transition: all 0.4s ease;
}

.it-choose-3-item:hover .it-choose-3-content p {
    opacity: 1;
    max-height: 120px;
    margin-top: 12px;
}

.it-choose-3-icon {
    margin-bottom: 12px;
}

.it-choose-3-title {
    margin-bottom: 0;
    font-weight: bold;
    /* change font */
}

.corselink {
    font-size: 14px;

}

.it-choose-3-content .corselink {
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    margin-top: 0;
    transition: all 0.4s ease;
}

.it-choose-3-item:hover .it-choose-3-content .corselink {
    opacity: 1;
    max-height: 120px;
    margin-top: 12px;
}

.it-choose-3-content .corselink {
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    margin-top: 0;
    transition: all 0.4s ease;
}

.it-choose-3-item:hover .it-choose-3-content .corselink {
    opacity: 1;
    max-height: 120px;
    margin-top: 12px;
}

.corselink:hover {
    color: #e63629;
    text-decoration: underline;
}

.it-choose-3-item {
    perspective: 1000px;
}

.it-choose-3-item:hover .flip-img {
    transform: rotateY(180deg);
}

.flip-img {
    transition: transform 0.8s ease;
    transform-style: preserve-3d;
}

.video-wrapper {
    position: relative;
    /* width: 100%; */
    /* height: 420px; */
    border-radius: 14px;
    overflow: hidden;
    /* box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15); */
    /* object-fit: cover !important; */
    /* height: 100%; */
}

@media (min-width: 320px) and (max-width: 1200px) {

    /* .top-bar-content {
    justify-content: center !important;
  } */

    /* .logo-half a {
    margin-right: 20px;
  } */

}

/*----------------------------------------*/
/*-----------------categories css start-----------------------*/


/* ================================================================= */
/* ================================================================= */
/* CONTACT US PAGE CARDS */

/* =======CONTACT SECTION========*/
.contact-section {
    padding: 50px 25px 90px 25px;
    background: #f5f7fb;
}

/* .container {
  max-width: 1300px;
  margin: auto;
} */

.section-title {
    margin-bottom: 60px;
    text-align: center;
    font-size: 32px;
    font-weight: 700;
}

.section-title {
    position: relative;
    /* display: inline-block; */
    padding-bottom: 12px;
}

.section-title::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 200px;
    height: 3px;
    background: #d3224d;
    border-radius: 10px;
}


.contact-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

.contact-card {
    background: linear-gradient(135deg, #01578c, #d3224d);
    border-radius: 16px;
    padding: 22px;
    min-height: 260px;
    box-shadow: 0 15px 35px rgba(0, 0, 0, .08);
    transition: .35s ease;
}

.contact-card:hover {
    background-color: #f5e4e5;
    transform: translateY(-6px);
    box-shadow: 0 25px 55px rgba(0, 0, 0, .15);
}

.contact-card:hover .card-head i {
    color: #f5d441;
    font-size: 45px;
}

.card-head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
}

.card-head i {
    color: white;
    font-size: 45px;
}

.card-head h4 {
    color: white;
    margin: 0;
    font-size: 18px;
    position: relative;
}

.contact-card:hover h4::after {
    color: #f5d441;
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 100%;
    height: 2px;
    background: #f5d441;
}

.contact-card a {
    display: block;
    color: white;
    text-decoration: none;
    font-size: 14px;
    margin: 4px 0;
}

.contact-card a:hover {
    color: #f5d441;
}

.contact-card:hover h4 {
    color: #f5d441;
}

.name {
    font-weight: 600;
    color: white;
    margin: 4px 0;
}

.address {
    color: white;
    font-size: 14px;
    margin: 6px 0;
}


/* AICTE */
.aicte-wrapper {
    display: flex;
    justify-content: center;
    margin-top: 50px;
}

.aicte-pill {
    position: relative;
    padding: 14px 36px;
    background: linear-gradient(135deg, #01578c, #d3224d);
    color: white;
    border-radius: 50px;
    font-weight: 600;
    cursor: pointer;
}

.tooltip {
    position: absolute;
    top: -55px;
    left: 50%;
    transform: translateX(-50%);
    background: #f5e4e5;
    padding: 10px 14px;
    border-radius: 6px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: auto;
    transition: .25s;
}

.tooltip a {
    color: black;
    font-size: 13px;
    text-decoration: underline;
}

.aicte-pill:hover .tooltip,
.tooltip:hover {
    opacity: 1;
}

/* Responsive */
@media (max-width: 1200px) {
    .contact-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 900px) {
    .contact-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 500px) {
    .contact-grid {
        grid-template-columns: 1fr;
    }
}

/* ====================================================================== */
/* ====================================================================== */
/* intake & fee page*/

/* tabs layout */
.tabs-layout {
    max-width: 1200px;
    margin: auto;
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 24px;
    align-items: start;
}


.tabs-layout>* {
    min-width: 0;
}


.tabs-left {
    background: #eef2f7;
    padding: 16px;
    border-radius: 16px;
}

.tab-btns {
    width: 100%;
    background: #fff;
    border: none;
    padding: 14px 16px;
    border-radius: 12px;
    margin-bottom: 12px;
    font-size: 15px;
    font-weight: 600;
    text-align: left;
    cursor: pointer;
    color: #333;
    transition: background 0.3s, color 0.3s;
}

.tab-btns:hover,
.tab-btns.active {
    background: #0d5cab;
    color: #fff;
}

.tabs-right {
    background: #fff;
    padding: 0px 20px;
    border-radius: 16px;
}

.tab-contents {
    display: none;
}

.tab-contents.active {
    display: block;
}

.intake-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 16px;
}

.intake-table thead {
    background: linear-gradient(90deg, #0d5cab, #083b7a);
}

.intake-table th,
.intake-table td {
    padding: 12px 14px;
    border-bottom: 1px solid #e5e5e5;
    text-align: left;
}

.intake-table th {
    color: #fff;
    font-size: 14px;
}

.intake-table tbody tr:hover {
    background: #f5f8ff;
}

.intake-table td {
    word-break: break-word;
    overflow-wrap: break-word;
}


/* ---------- MOBILE LAYOUT (NO SCROLL) ---------- */
@media (max-width: 991px) {

    html,
    body {
        overflow-x: hidden;
    }

    .tabs-layout {
        grid-template-columns: 1fr;
    }

    .tabs-left {
        display: block !important;
    }

    .tab-btns {
        width: 100%;
        margin-bottom: 10px;
        white-space: normal;
    }

    .intake-table {
        width: 100%;
        table-layout: fixed;
    }

    .intake-table th,
    .intake-table td {
        padding: 10px;
        font-size: 14px;
        word-break: break-word;
        overflow-wrap: break-word;
    }

}

@media (max-width: 360px) {
    .tab-btns {
        font-size: 13px;
        padding: 10px;
    }

    .tabs-right h2 {
        font-size: 18px;
    }

    .intake-table td {
        font-size: 11px;
    }
}

/* ============================================================================= */
/* ============================================================================= */
/* Course Details Page */


/* ===============================
   DEPORTMENT BASE HEADER (FAKE STICKY)
================================ */
.breadcumb-wrapper {
    margin-bottom: 45px;
}

#cseTabsHeader {
    background: #fff;
    border-bottom: 1px solid #e5e5e5;
    z-index: 1600;
    transition: box-shadow 0.3s ease;
}

#cseTabsHeader.is-fixed {
    position: fixed;
    top: 85px;
    /* below main header */
    left: 0;
    width: 100%;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

.cse-tab {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.cse-tab i {
    color: #01578c;
    font-size: 14px;
    line-height: 1;
}

.cse-tab:hover i {
    color: #F0F4F5;
    font-size: 14px;
    line-height: 1;
}

#cseTabsSpacer {
    height: 0;
}

/* ===============================
   TABS
================================ */


.cseTabsList {
    color: #01578c;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px;
    list-style: none;
    margin: 0;
    padding: 0 8px;
}

.cse-tab {
    padding: 6px 12px;
    font-size: 13.5px;
    font-weight: 500;
    background: linear-gradient(145deg, #f4f6fb, #ffffff);
    border-radius: 8px 0px 8px;
    color: #2c2f36;
    text-decoration: none;
    box-shadow: inset 0 0 0 1px #e1e5ef, 0 2px 6px rgba(0, 0, 0, 0.06);
    transition: all 0.25s ease;
}

.cse-tab:hover,
.cse-tab.active {
    background: #01578c;
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(13, 110, 253, 0.35);
}

/* ===============================
   ARROWS (REUSABLE)
================================ */


.cseArrow {
    width: 10px;
    height: 10px;
    border-right: 2px solid #0d6efd;
    border-bottom: 2px solid #0d6efd;
    display: inline-block;
    transition: all 0.3s ease;
}

.cseArrow.up {
    transform: rotate(-135deg);
}

.cseArrow.down {
    transform: rotate(45deg);
}

/* ===============================
   CLOSE ARROW (INSIDE TABS)
================================ */
.cseTabToggle {
    padding: 6px 10px;
    border-radius: 8px;
    background: #d3224d;
    border: none;
    cursor: pointer;
    box-shadow: inset 0 0 0 1px #dbe2ff;
    transition: all 0.25s ease;
}

.cseTabToggle:hover {
    background: #01578c;
}

.cseTabToggle:hover .cseArrow {
    border-color: #fff;
}

/* ===============================
   FLOATING OPEN ARROW
================================ */
#cseFloatingArrow {
    position: fixed;
    top: 120px;
    /* below main header */
    right: 16px;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #d3224d;
    border: none;
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 1700;
    box-shadow: 0 10px 30px rgba(13, 110, 253, 0.45);
    animation: pulseArrow 1.6s infinite;
}

#cseFloatingArrow .cseArrow {
    border-color: #fff;
}

/* Attention animation */
@keyframes pulseArrow {
    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(6px);
    }

    100% {
        transform: translateY(0);
    }
}

/* ===============================
   COLLAPSED STATE
================================ */
#cseTabsHeader.collapsed .cseTabsNav {
    display: none;
}

#cseTabsHeader.collapsed+#cseFloatingArrow {
    display: flex;
}

/* ===============================
   MOBILE
================================ */
@media (max-width: 991px) {
    #cseFloatingArrow {
        right: 12px;
        top: 110px;
    }
}



/* ==============================
   Faculty Section
============================== */
.faculty-section {
    background: #f2f2f2;
    padding: 80px 0;
}

.faculty-title {
    text-align: center;
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 50px;
}

/* Slider wrapper */
.faculty-slider-wrapper {
    position: relative;
}

/* Card */
.faculty-card {
    text-align: center;
    padding: 20px;
}

.faculty-avatar {
    width: 110px;
    height: 110px;
    background: #01578c;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.faculty-avatar i {
    font-size: 40px;
    color: #fff;
}

.faculty-card h5 {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 6px;
}

.faculty-role {
    color: #d3224d;
    font-weight: 500;
    margin-bottom: 4px;
}

.faculty-qual {
    font-size: 15px;
    color: #333;
}

/* Navigation buttons */
.faculty-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
}

.faculty-nav i {
    font-size: 22px;
}

.faculty-nav.prev {
    left: -25px;
}

.faculty-nav.next {
    right: -25px;
}

/* Responsive */
@media (max-width: 768px) {
    .faculty-title {
        font-size: 28px;
    }

    .faculty-nav {
        display: none;
    }
}

/* ================================================================================ */
/* ================================================================================ */
/*     ABOUT US PAGE  */
/* =========================
   BASE SECTION
========================= */
.it-about-2-area {
    overflow: hidden;
}

.it-about-2-left {
    padding-left: 83px;
    position: relative;
}

.it-about-2-right {
    margin-left: 60px;
}

/* =========================
   MAIN IMAGE
========================= */
.it-about-2-thumb {
    overflow: hidden;
    border-radius: 20px;
}

.it-about-2-thumb img {
    width: 100%;
    display: block;
    transform: scale(1.08);
    transition: transform 0.8s ease;
}

.it-about-2-thumb:hover img {
    transform: scale(1);
}

/* =========================
   EXPERIENCE BOX (1995)
========================= */
.it-about-experience-box {
    position: absolute;
    top: 12%;
    left: 0;
    background: #01578c;
    padding: 22px 28px;
    border-radius: 16px;
    color: #fff;
    animation: floatX 4s ease-in-out infinite alternate;
}

.it-about-experience-box h5 {
    font-size: 32px;
    margin: 0;
    line-height: 1;
    color: #fff;
}

.it-about-experience-box span {
    font-size: 15px;
    display: block;
    margin-top: 6px;
    color: #fff;
}

@keyframes floatX {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(18px);
    }
}

/* =========================
   HEADING
========================= */
.it-section-title {
    font-size: 32px;
    line-height: 1.3;
    font-weight: 700;
    color: #000;
}

/* =========================
   PARAGRAPH
========================= */
.it-about-2-text p {
    font-size: 15.5px;
    line-height: 1.85;
    color: #4a4a4a;
}

/* =========================
   VISION / MISSION
========================= */
.it-about-2-more-wrap {
    margin-top: 40px;
}

.it-about-2-more-info {
    display: flex;
    align-items: center;
    gap: 14px;
    cursor: pointer;
    perspective: 1000px;
}

.it-about-2-more-icon {
    width: 60px;
    height: 60px;
    border: 1px solid #01578c;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.6s ease;
}

.it-about-2-more-info h6 {
    font-size: 17px;
    line-height: 1.5;
    margin: 0;
}

.it-about-2-more-info h6 a {
    color: #000;
    text-decoration: none;
    transition: color 0.3s ease;
}

/* FLIP EFFECT */
.it-about-2-more-info:hover .it-about-2-more-icon {
    transform: rotateY(180deg);
}

.it-about-2-more-info:hover h6 a {
    color: #01578c;
}

/* =========================
   RESPONSIVE
========================= */
@media (max-width: 1199px) {
    .it-about-2-left {
        padding-left: 0;
    }

    .it-about-2-right {
        margin-left: 0;
    }
}

@media (max-width: 991px) {
    .it-about-experience-box {
        top: 8%;
    }

    .it-section-title {
        font-size: 28px;
    }
}

/* =========================
   MOBILE FIXES
========================= */
@media (max-width: 767px) {

    /* RESET LAYOUT */
    .it-about-2-left {
        padding-left: 0;
        margin-bottom: 25px;
    }

    .it-about-2-right {
        margin-left: 0;
    }

    /* IMAGE FIRST */
    .it-about-2-thumb {
        position: relative;
    }

    /* YEAR BADGE – SMALL & ON IMAGE */
    .it-about-experience-box {
        position: absolute;
        top: 12px;
        left: 12px;
        padding: 10px 14px;
        border-radius: 12px;
        animation: floatX 3s ease-in-out infinite alternate;
        z-index: 2;
    }

    .it-about-experience-box h5 {
        font-size: 20px;
    }

    .it-about-experience-box span {
        font-size: 12px;
        line-height: 1.3;
    }

    /* IMAGE HOVER ALSO AFFECTS BADGE */
    .it-about-2-thumb:hover .it-about-experience-box {
        transform: scale(0.95);
    }

    /* HEADING */
    .it-section-title {
        font-size: 24px;
        margin-bottom: 15px;
    }

    /* TEXT */
    .it-about-2-text p {
        font-size: 14.5px;
        line-height: 1.7;
    }

    /* VISION & MISSION – SIDE BY SIDE & SMALL */
    .it-about-2-more-wrap {
        display: flex;
        justify-content: space-between;
        gap: 10px;
        margin-top: 25px;
    }

    .it-about-2-more-info {
        flex: 1;
        gap: 8px;
    }

    .it-about-2-more-icon {
        width: 42px;
        height: 42px;
    }

    .it-about-2-more-icon svg {
        width: 22px;
        height: 22px;
    }

    .it-about-2-more-info h6 {
        font-size: 14px;
        line-height: 1.4;
    }
}

/*----------------------------------------*/
/*  37. team css start
/*----------------------------------------*/
/* ================================
   TEAM CARD BASE
================================ */
.it-team-area {
    background: linear-gradient(135deg, #01578c, #d3224d);
}

.it-team-area .it-section-title {
    color: white;
}

.it-team-item {
    background: #fff;
    border-radius: 20px;
    border: 1px solid rgba(31, 36, 50, 0.1);
    overflow: hidden;
    transition: box-shadow 0.4s ease, transform 0.4s ease;
}

.it-team-item:hover {
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.12);
    transform: translateY(-6px);
}

/* ================================
   IMAGE + OVERLAY
================================ */
.it-team-thumb {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
}

.it-team-thumb img {
    width: 100%;
    transform: scale(1);
    transition: transform 1s ease;
}

.it-team-thumb::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(31, 36, 50, 0.45);
    opacity: 0;
    transition: opacity 0.5s ease;
    border-radius: 20px;
}

.it-team-item:hover .it-team-thumb img {
    transform: scale(1.15);
}

.it-team-item:hover .it-team-thumb::after {
    opacity: 1;
}

/* ================================
   SOCIAL ICONS
================================ */
.it-team-social {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 35px;
    display: flex;
    justify-content: center;
    gap: 10px;
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.5s ease;
    z-index: 2;
}

.it-team-item:hover .it-team-social {
    opacity: 1;
    transform: translateY(0);
}

.it-team-social a {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 6px;
    color: #fff;
    background: rgba(255, 255, 255, 0.18);
    border: 1px solid rgba(255, 255, 255, 0.3);
    transition: all 0.3s ease;
}

.it-team-social a:hover {
    background: #fff;
    color: #01578c;
}

/* ================================
   CONTENT
================================ */
.it-team-content-box {
    padding: 20px;
    padding-top: 42px;
}

.it-team-title {
    font-size: 22px;
    margin-bottom: 6px;
    font-weight: 600;
}

.it-team-content span {
    font-size: 15px;
    color: #666;
}

/* ================================
   NAME UNDERLINE (FIXED & CLEAN)
================================ */
.border-line {
    position: relative;
    color: #01578c;
    text-decoration: none;
}

.border-line::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -3px;
    width: 0;
    height: 2px;
    background: currentColor;
    transition: width 0.3s ease;
}

.border-line:hover::after {
    width: 100%;
}

/* ================================
   RESPONSIVE
================================ */

/* Tablets */
@media (max-width: 991px) {
    .it-team-title {
        font-size: 20px;
    }

    .it-team-social {
        bottom: 25px;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .it-team-item {
        transform: none;
    }

    .it-team-item:hover {
        transform: none;
    }

    .it-team-social {
        opacity: 1;
        transform: translateY(0);
        bottom: 20px;
    }

    .it-team-social a {
        width: 36px;
        height: 36px;
    }

    .it-team-title {
        font-size: 18px;
    }
}

/* ========= VISION AND MISSION */
.vmq-section {
    padding: 40px 16px;
    background: linear-gradient(to right, #f8fafc, #eef2f7);
}

.vmq-container {
    max-width: 1200px;
    margin: auto;
}

/* GRID */
.vmq-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-bottom: 40px;
}

/* CARD */
.vmq-card {
    background: #ffffff;
    padding: 32px;
    border-radius: 18px;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border-top: 5px solid transparent;
}

.vmq-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.12);
}

/* HEADER */
.vmq-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
}

.vmq-header h3 {
    font-size: 22px;
    font-weight: 600;
    color: #1f2933;
    margin: 0;
    font-family: "Times New Roman", Georgia, serif;
}

.vmq-icon {
    font-size: 22px;
}

/* TEXT */
.vmq-card p {
    font-size: 15px;
    line-height: 1.7;
    color: #374151;
    font-weight: 400;
}

/* QUALITY POLICY */
.vmq-quality {
    background: #ffffff;
    padding: 40px;
    border-radius: 20px;
    text-align: center;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08);
    border: 1px solid #e5e7eb;
}

.vmq-quality h3 {
    font-size: 24px;
    margin-bottom: 16px;
    font-family: "Times New Roman", Georgia, serif;
    color: #1f2933;
}

.quality-highlight {
    font-size: 16px;
    color: #8b1d1d;
    margin-bottom: 14px;
}

.vmq-quality p {
    font-size: 15px;
    line-height: 1.7;
    color: #374151;
}

/* RESPONSIVE */
@media (max-width: 900px) {
    .vmq-grid {
        grid-template-columns: 1fr;
    }

    .vmq-card,
    .vmq-quality {
        padding: 26px;
    }
}

@media (max-width: 600px) {
    .vmq-section {
        padding: 50px 14px;
    }

    .vmq-header h3 {
        font-size: 18px;
    }

    .vmq-card p,
    .vmq-quality p {
        font-size: 14px;
    }
}


/* =======  organisaion chat section  ============ */

/* SECTION */
.org-structure-section {
    padding: 70px 16px;
    background: #f4f6f9;
}

/* CONTAINER */
.org-structure-container {
    max-width: 1400px;
    margin: 0 auto;
    background: #ffffff;
    border-radius: 14px;
    padding: 40px 24px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
    border: 1px solid #e5e7eb;
}

.policies .governing-title {
    color: white !important;
}

/* TITLE (CLASSIC COLLEGE LOOK) */
.org-structure-title {
    text-align: center;
    font-size: 24px;
    font-weight: 600;
    color: #1f2933;
    margin-bottom: 30px;
    position: relative;
    font-family: "Times New Roman", Georgia, serif;
}

.org-structure-title::after {
    content: "";
    display: block;
    width: 80px;
    height: 3px;
    background: #D3224D;
    margin: 12px auto 0;
    border-radius: 2px;
}

/* SCROLL WRAPPER */
.org-structure-scroll {
    width: 100%;
    overflow-x: auto;
    /* SLIDE ONLY HERE */
    overflow-y: hidden;
    text-align: center;
    padding-bottom: 10px;
}

/* IMAGE */
.org-structure-image {
    display: inline-block;
    max-width: 100%;
    height: auto;
    min-width: 1100px;
    /* prevents arrow collapse */
}

/* SCROLLBAR (OPTIONAL CLEAN LOOK) */
.org-structure-scroll::-webkit-scrollbar {
    height: 8px;
}

.org-structure-scroll::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 10px;
}

/* TABLET */
@media (max-width: 1024px) {
    .org-structure-image {
        min-width: 1000px;
    }
}

/* MOBILE */
@media (max-width: 768px) {
    .org-structure-container {
        padding: 24px 16px;
    }

    .org-structure-title {
        font-size: 18px;
    }

    .org-structure-image {
        min-width: 1200px;
        /* horizontal slide on mobile */
    }
}

/* =========GIVERNING BODY ============ */

.governing-body-section {
    padding: 80px 16px;
    background: #f8fafc;
}

.governing-body-container {
    max-width: 1200px;
    margin: auto;
}

.governing-title {
    text-align: center;
    font-size: 28px;
    font-family: "Times New Roman", Georgia, serif;
    color: #1f2933;
    margin-bottom: 50px;
}

.governing-title::after {
    content: "";
    display: block;
    width: 70px;
    height: 3px;
    background: #D3224D;
    margin: 10px auto;
}

.governing-desc {
    text-align: center;
    max-width: 900px;
    margin: 0 auto 50px;
    font-size: 15px;
    line-height: 1.7;
    color: #374151;
    font-weight: 500;
}

/* CARDS GRID */
.governing-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 22px;
}

/* FLIP CARD */
.flip-card {
    perspective: 1000px;
}

.flip-inner {
    position: relative;
    width: 100%;
    height: 160px;
    transform-style: preserve-3d;
    transition: transform 0.6s ease;
}

.flip-card:hover .flip-inner {
    transform: rotateY(180deg);
}

.flip-front,
.flip-back {
    position: absolute;
    inset: 0;
    background: #ffffff;
    border-radius: 14px;
    padding: 16px;
    backface-visibility: hidden;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid #e5e7eb;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    border: 2px solid #D3224D;
}

.flip-back {
    border: 2px solid #01578c;
}

.flip-front h4 {
    font-size: 15px;
    margin-bottom: 6px;
    color: #111827;
}

.flip-front span {
    font-size: 13px;
    color: #D3224D;
    font-weight: 600;
}

.flip-back {
    transform: rotateY(180deg);
    font-size: 13px;
    color: #374151;
    line-height: 1.5;
}

/* MOBILE */
@media (max-width: 768px) {
    .flip-inner {
        height: 170px;
    }

    .governing-title {
        font-size: 22px;
    }
}


/* ============ Administration Manual ================= */

.admin-manual-section {
    padding: 70px 16px;
    background: #f9fafb;
}

/* CARD */
.admin-card {
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.08);
    overflow: hidden;
    border: 1px solid #e5e7eb;
}

/* HEADER ON TOP EDGE */
.admin-card-header {
    background: #D3224D;
    color: #ffffff;
    padding: 16px 24px;
    font-size: 22px;
    font-weight: 600;
    font-family: "Times New Roman", Georgia, serif;
}

/* CONTENT */
.admin-content {
    padding: 28px 24px;
}

.admin-content p {
    font-size: 15px;
    line-height: 1.7;
    color: #374151;
    margin-bottom: 14px;
    font-weight: 500;
}

/* READ MORE BUTTON */
.read-more-btn {
    display: none;
    margin: 0 24px 20px;
    background: none;
    border: none;
    /* color: #; */
    font-weight: 600;
    cursor: pointer;
    font-size: 14px;
}

/* ---------------- MOBILE ---------------- */
@media (max-width: 768px) {

    .admin-card-header {
        font-size: 18px;
        padding: 14px 18px;
    }

    .admin-content {
        max-height: 180px;
        overflow: hidden;
        transition: max-height 0.4s ease;
    }

    .admin-content.expanded {
        max-height: 1000px;
        overflow-y: auto;
    }

    .read-more-btn {
        display: inline-block;
    }
}


/* Prevent horizontal overflow */

/* Fix row spacing */

/* Contact list reset */

/* Prevent long email / phone overflow */

/* Right side buttons */

/* Buttons responsive */

/* Mobile fixes */

/* RIGHT FIXED BAR */

/* BAR ITEM (hover target stays fixed) */

/* INNER SLIDING BLOCK (FULL BACKGROUND) */

/* ICON */

/* TEXT */

/* HOVER */

/* COLOR VARIANTS */

/* MOBILE */


/* Bottom Fixed Navigation Bar */

/* Mobile */

/* Extra small devices (320px) */


/*================ policies ====================*/
.policies {
    padding-top: 60px;
    padding-bottom: 60px;
    background: #01578c;
}

.policy-split {
    max-width: 1350px;
    margin: auto;
    padding: 0px 20px;
    display: grid;
    grid-template-columns: 340px 1fr;
    gap: 24px;
}

.policy-accordion {
    background: #f8fafd;
    border-radius: 16px;
    padding: 20px;
}

.policy-accordion h3 {
    margin-bottom: 16px;
    font-size: 18px;
    color: #0d5cab;
}

.policy-item {
    width: 100%;
    text-align: left;
    padding: 14px 16px;
    margin-bottom: 10px;
    border: none;
    border-radius: 12px;
    background: #fff;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.25s ease;
}

.policy-item:hover {
    background: #0d5cab;
}

.policy-item.active {
    background: #0d5cab;
    color: #fff;
}

.policy-preview {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid #e5e5e5;
}

.policy-preview iframe {
    width: 100%;
    height: 85vh;
    border: none;
}

@media (max-width: 991px) {
    .policy-split {
        grid-template-columns: 1fr;
    }

    .policy-preview iframe {
        height: 60vh;
    }
}

/* members */

.section-title {
    font-size: 26px;
    font-weight: 700;
    color: black;
    margin-bottom: 35px;
}

/* STRIP */

/* CHAIRMAN */

/* NUMBER */

/* INFO */

/* ROLE */

/* RESPONSIVE */

/* audit statements */
.doc-section {
    max-width: 1200px;
    margin: auto;
    padding: 40px 20px;
}

.doc-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.doc-item {
    display: grid;
    grid-template-columns: 60px 1fr auto;
    align-items: center;
    gap: 16px;
    padding: 18px 20px;
    background: #fff;
    border-radius: 16px;
    border: 1px solid #e6e6e6;
    transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.doc-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.10);
}

.doc-icon {
    width: 52px;
    height: 52px;
    background: #d3224d17;
    color: #D3224D;
    font-weight: 700;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.doc-info h4 {
    font-size: 16px;
    font-weight: 600;
    margin: 0;
    color: #083b7a;
}

.doc-info p {
    font-size: 14px;
    margin: 4px 0 0;
    color: #666;
}

.doc-action {
    text-decoration: none;
    padding: 10px 16px;
    border-radius: 10px;
    border: 1px solid #0d5cab;
    color: #0d5cab;
    font-weight: 600;
    transition: all 0.25s ease;
}

.doc-action:hover {
    background: #0d5cab;
    color: #fff;
}

@media (max-width: 991px) {
    .doc-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 576px) {
    .doc-item {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .doc-action {
        width: fit-content;
    }
}


/* ===============================
   COMMITTEE CARD BASE
================================ */
.it-course-item {
    background: #fff;
    border-radius: 18px;
    border: 1px solid rgba(0, 0, 0, 0.08);
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.it-course-item:hover {
    transform: translateY(-6px);
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.12);
}

/* ===============================
   IMAGE (FLAG) BASE
================================ */
.it-course-content {
    position: relative;
}

.it-course-content .flag {
    width: 90px;
    height: 90px;
    margin: 0 auto 15px;
    display: block;
    border-radius: 50%;
    transition: transform 0.8s ease;
    transform-origin: center;
}

/* ===============================
   IMAGE ROTATE ON CARD HOVER
================================ */
.it-course-item:hover .flag {
    transform: rotate(360deg) scale(1.08);
}

/* ===============================
   TITLE UNDERLINE (CLEAN)
================================ */
.border-line {
    position: relative;
    color: #01578c;
    text-decoration: none;
}

.border-line::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 0;
    height: 2px;
    background: currentColor;
    transition: width 0.3s ease;
}

.border-line:hover::after {
    width: 100%;
}

/* ===============================
   META SPACING FIX
================================ */
.it-course-meta {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-bottom: 20px;
    flex-wrap: wrap;
}

.it-course-meta span {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
}

/* ===============================
   RESPONSIVE
================================ */

/* Tablets */
@media (max-width: 991px) {
    .it-course-content .flag {
        width: 80px;
        height: 80px;
    }
}

/* Mobile */
@media (max-width: 767px) {

    /* Disable hover animation on touch devices */
    .it-course-item:hover {
        transform: none;
        box-shadow: none;
    }

    .it-course-item:hover .flag {
        transform: none;
    }

    .it-course-content .flag {
        width: 70px;
        height: 70px;
    }

    .it-course-meta {
        gap: 12px;
    }

    .it-course-meta span {
        font-size: 13px;
    }
}

/* Building Careers Through
placements & industry partnerships section */
.it-brand-item {
    width: 90%;
    height: 120px;
    line-height: 120px;
    /* position: relative; */
}

@media (max-width: 767px) {
    .it-brand-item {
        text-align: center;
    }
}

.it-brand-wrap {
    padding: 30px 80px;
    border-radius: 20px;
    border: 1px solid rgba(3, 89, 78, 0.5);
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .it-brand-wrap {
        padding: 30px;
    }
}

.it-brand-wrap .row:first-child [class*=col] {
    /* border-bottom: 1px solid rgba(3, 89, 78, 0.1); */
}

@media (max-width: 767px) {
    .it-brand-wrap .row:first-child [class*=col] {
        border-bottom: none;
    }
}

.it-brand-wrap .row [class*=col]:not(:last-child) .it-brand-item::after {
    /* position: absolute;
  top: 0;
  right: 17%;
  content: "";
  height: 100%;
  width: 1px;
  background-color: rgba(3, 89, 78, 0.1); */
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .it-brand-wrap .row [class*=col]:not(:last-child) .it-brand-item::after {
        display: none;
    }
}

.it-brand-wrap .row [class*=col]:nth-child(2) .it-brand-item {
    transform: translateX(-10px);
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .it-brand-wrap .row [class*=col]:nth-child(2) .it-brand-item {
        transform: translateX(0);
    }
}

.it-brand-wrap .row [class*=col]:nth-child(2) .it-brand-item::after {
    right: -17%;
}

.it-brand-wrap .row [class*=col]:nth-child(3) .it-brand-item {
    /* transform: translateX(60px); */
}

@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .it-brand-wrap .row [class*=col]:nth-child(3) .it-brand-item {
        transform: translateX(0);
    }
}

.it-brand-wrap .row [class*=col]:nth-child(3) .it-brand-item::after {
    right: -5%;
}


/* ================================
   CTA BASE
================================ */

.it-cta-4-area {
    position: relative;
    padding-top: 100px;
    padding-bottom: 100px;
}

.it-cta-4-wrap {
    position: relative;
    background: #0b5c8f;
    /* match screenshot blue */
    border-radius: 24px;
    padding: 40px 40px;
    overflow: visible;
}

/* ================================
   CONTENT
================================ */
.it-cta-4-content {
    position: relative;
    z-index: 2;
}

.it-cta-4-content h4 {
    font-size: 36px;
    line-height: 1.25;
    font-weight: 700;
    margin-bottom: 20px;
}

.it-cta-4-content p {
    color: rgba(255, 255, 255, 0.85);
    max-width: 520px;
    font-size: 15.5px;
    line-height: 1.8;
    margin-bottom: 30px;
}

/* ================================
   IMAGE (RIGHT SIDE)
================================ */
.it-cta-4-thumb {
    position: absolute;
    right: 40px;
    top: -54px;
    /* pull image UP */
    z-index: 3;
}

.it-cta-4-thumb img {
    max-width: 380px;
    height: auto;
    display: block;
}

/* ================================
   BUTTON FIX
================================ */
.it-btn-yellow.white-bg {
    background: #fff;
    color: #000;
    border-radius: 8px;
    padding: 14px 26px;
    font-weight: 600;
    display: inline-flex;
}

.it-btn-yellow span {
    position: relative;
    z-index: 1;
    overflow: hidden;
    display: inline-block;
    color: black;
}

a:visited {
    text-decoration: none;
    outline: 0;
}


/* ================================
   LARGE TABLETS
================================ */
@media (max-width: 1199px) {
    .it-cta-4-wrap {
        padding: 60px;
    }

    .it-cta-4-thumb img {
        max-width: 320px;
    }

    .it-cta-4-content h4 {
        font-size: 32px;
    }
}

/* ================================
   TABLETS
================================ */
@media (max-width: 991px) {
    .it-cta-4-wrap {
        padding: 50px;
    }

    .it-cta-4-content h4 {
        font-size: 28px;
    }

    .it-cta-4-thumb {
        display: none;
    }
}

/* ================================
   MOBILE (IMPORTANT)
================================ */
@media (max-width: 767px) {

    .it-cta-4-wrap {
        padding: 40px 25px;
        text-align: left;
    }

    .it-cta-4-content h4 {
        font-size: 24px;
        line-height: 1.35;
    }

    .it-cta-4-content p {
        font-size: 14.5px;
    }

    .it-cta-4-thumb {
        display: none;
    }
}

/* ================================
   SMALL MOBILE
================================ */
@media (max-width: 480px) {

    .it-cta-4-thumb {
        display: none;
    }
}


/* =================================
Build Your Career with Industry-Focused
Education Excellence
===================================== */
/* ================================
   CHOOSE CARD BASE
================================ */
.it-choose-2-area {
    background: linear-gradient(135deg, #01578c, #d3224d);
}

.it-choose-2-area .it-section-title {
    color: white;
}

.it-choose-2-item {
    background: #fff;
    border-radius: 14px;
    padding: 45px 30px;
    transition: all 0.35s ease;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.06);
    height: 100%;
}

/* ================================
   ICON WRAPPER
================================ */
.it-choose-2-icon span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 90px;
    height: 90px;
    border-radius: 50%;
    background: #f3fbf9;
    transition: transform 0.6s ease;
    transform-style: preserve-3d;
}

/* SVG smoothness */
.it-choose-2-icon svg {
    transition: transform 0.6s ease;
}

/* ================================
   HOVER EFFECT – ICON FLIP
================================ */
.it-choose-2-item:hover .it-choose-2-icon span {
    transform: rotateY(180deg);
}

/* ================================
   TITLE + TEXT
================================ */
.it-choose-2-title {
    font-size: 18px;
    font-weight: 600;
    margin-top: 25px;
    margin-bottom: 12px;
    color: #0a2540;
}

.it-choose-2-content p {
    font-size: 14px;
    line-height: 1.7;
    color: #6b7280;
    margin-bottom: 0;
}

/* ================================
   RESPONSIVE FIXES
================================ */
@media (max-width: 767px) {
    .it-choose-2-item {
        padding: 35px 22px;
    }

    .it-choose-2-icon span {
        width: 75px;
        height: 75px;
    }

    .it-choose-2-title {
        font-size: 16px;
    }
}


/* ===============================
   FOOTER COLLAPSE 
================================ */

/* Footer base */
.footer-wrapper {
    position: relative;
}

/* Wrap ALL footer content except toggle */
.footer-wrapper>.container,
.footer-wrapper>.copyright-wrap {
    overflow: hidden;
    transition: height 0.65s cubic-bezier(.4, 0, .2, 1),
        opacity 0.35s ease,
        transform 0.35s ease;
}

/* COLLAPSED STATE */
.footer-wrapper.footer-collapsed>.container,
.footer-wrapper.footer-collapsed>.copyright-wrap {
    height: 0 !important;
    opacity: 0;
    transform: translateY(24px);
    pointer-events: none;
}

/* ===============================
   TOGGLE TAB (SEMI-CIRCLE)
================================ */

.footer-toggle {
    position: absolute;
    top: -9px;
    left: 50%;
    transform: translateX(-50%);
    width: 72px;
    height: 36px;
    background: linear-gradient(135deg, #01578c, #d3224d);
    border-radius: 0 0 100px 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 9999;
}

/* ===============================
   ARROW
================================ */

.footer-arrow {
    width: 12px;
    height: 12px;
    border-left: 3px solid #ffffff;
    border-bottom: 3px solid #ffffff;
    transition: transform 0.4s ease;
}

/* OPEN → ARROW DOWN + FLOAT */
.footer-wrapper:not(.footer-collapsed) .footer-arrow {
    transform: rotate(135deg);
    animation: arrowUp 1.6s infinite ease-in-out;
}

/* CLOSED → ARROW UP + FLOAT */
.footer-wrapper.footer-collapsed .footer-arrow {
    transform: rotate(-45deg);
    animation: arrowDown 1.6s infinite ease-in-out;
}

/* ===============================
   ARROW MOTION
================================ */

@keyframes arrowDown {

    0%,
    100% {
        transform: rotate(-45deg) translateY(0);
    }

    50% {
        transform: rotate(-45deg) translateY(6px);
    }
}

@keyframes arrowUp {

    0%,
    100% {
        transform: rotate(135deg) translateY(0);
    }

    50% {
        transform: rotate(135deg) translateY(-6px);
    }
}



.contact-modern-section {
    padding-bottom: 100px;
}

.contact-modern-header h2 {
    font-size: 42px;
    font-weight: 800;
    display: flex;
    align-items: center;
    gap: 12px;
}

.contact-modern-header span {
    color: #c8102e;
}

.contact-modern-header p {
    font-size: 18px;
    margin-top: 8px;
    color: #6b7280;
}

/* Tabs */
.contact-modern-tabs {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin: 50px 0;
}

.c-tab {
    padding: 14px 22px;
    border-radius: 999px;
    border: 1px solid #e5e7eb;
    background: #fff;
    font-size: 15px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    transition: all 0.35s ease;
}

.c-tab:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}

.c-tab.active {
    background: #01578c;
    color: #fff;
    border-color: #01578c;
}

/* Content Card */
.contact-modern-content {
    max-width: 900px;
    padding: 50px;
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 30px 80px rgba(0,0,0,0.1);
}

/* Panels */
.c-panel {
    display: none;
    animation: fadeSlide 0.5s ease forwards;
}

.c-panel.active {
    display: block;
}

@keyframes fadeSlide {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

.c-panel h4 {
    font-size: 28px;
    display: flex;
    gap: 10px;
    align-items: center;
}

.role {
    font-size: 15px;
    font-weight: 600;
    color: #01578c;
    margin: 12px 0 24px;
}

/* Links */
.c-links {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 18px;
}

.c-links a {
    padding: 14px 18px;
    border-radius: 14px;
    background: #f9fafb;
    text-decoration: none;
    color: #111827;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 12px;
    transition: all 0.3s ease;
}

.c-links a:hover {
    background: #01578c;
    color: #fff;
    transform: translateY(-2px);
}

/* AICTE */
.aicte-modern {
    margin-top: 50px;
}

.aicte-modern a {
    padding: 14px 26px;
    border-radius: 999px;
    background: #c8102e;
    color: #fff;
    font-weight: 600;
    text-decoration: none;
    display: inline-flex;
    gap: 10px;
}

/* Mobile */
@media (max-width: 768px) {
    .contact-modern-header h2 {
        font-size: 30px;
    }

    .contact-modern-content {
        padding: 30px;
    }
}


/* Transportation Modal Gradient */
.transport-gradient {
    background: linear-gradient(
        135deg,
        #f8fbff 0%,
        #eef4ff 40%,
        #ffffff 100%
    );
}

/* Route Link */
.route-link {
    color: #01578c;
    font-weight: 600;
    text-decoration: none;
}

.route-link:hover {
    text-decoration: underline;
}

/* Modal Footer */
.ux-modal-actions {
    margin-top: 30px;
    text-align: right;
}

/* faq accordian */
.faq-area-1 .accordion-body{
    color: white;
    background: linear-gradient(135deg, #01578c, #d3224d) ;
}
.faq-area-1 .accordion-card{
background: linear-gradient(135deg, #01578c, #d3224d) ;
}
.faq-links {
    list-style: none;
    padding-left: 0;
}

.faq-links li {
    margin-bottom: 10px;
    font-size: 15px;
}

.faq-link {
    text-decoration: underline;
    font-weight: 600;
    color: white;
}

.faq-link:hover {
    color: #c8102e;
}
.faq-points {
    padding-left: 18px;
}

.faq-points li {
    margin-bottom: 8px;
}

/* campus life library vison mission */
.about-feature i{
    color: red;
}
.about-feature .box-icon:hover i{
    color: white;
}

/* library model */
/* Gradient background */
.library-gradient {
    background: linear-gradient(
        135deg,
        #f8fbff 0%,
        #eef2ff 45%,
        #ffffff 100%
    );
}

/* Table wrapper */
.responsive-table {
    max-height: 60vh;
    overflow: auto;
}

/* Table enhancements */
.ux-premium-table th {
    background: #01578c;
    color: #fff;
    white-space: nowrap;
}

.ux-premium-table td {
    white-space: nowrap;
}

.ux-premium-table tbody tr:hover {
    background: #f5f9ff;
}

/* Total row */
.table-total td {
    background: #f1f5f9;
    font-weight: 700;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
    .responsive-table {
        overflow-x: auto;
    }

    .ux-premium-table {
        min-width: 700px;
    }
}

/* ===============================
   HEALTH CENTRE – MODERN
================================ */

.health-modern-section {
    padding: 60px 0;
    background: #ffffff;
}

/* Header */
.health-header {
    text-align: center;
    margin-bottom: 50px;
}

.health-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 16px;
    border-radius: 999px;
    background: #fee2e2;
    color: #b91c1c;
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 14px;
}

.health-title {
    font-size: 36px;
    font-weight: 800;
    line-height: 1.2;
}

.health-title span {
    color: #c8102e;
}

/* Grid */
.health-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}

/* Cards */
.health-card {
    padding: 28px;
    border-radius: 18px;
    background: #f9fafb;
    transition: all 0.35s ease;
}

.health-card h4 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.health-card i {
    color: #c8102e;
}

.health-card p {
    font-size: 15px;
    color: #374151;
    line-height: 1.7;
}

/* Hover */
.health-card:hover {
    background: #ffffff;
    transform: translateY(-6px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.08);
}

/* Quote */
.health-quote {
    position: relative;
    left: 28%;
    margin-top: 50px;
    padding: 10px 26px;
    border-radius: 999px;
    background: linear-gradient(135deg, #c8102e, #e63946);
    color: #ffffff;
    text-align: center;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

/* Responsive */
@media (max-width: 992px) {
    .health-grid {
        grid-template-columns: 1fr;
    }

    .health-title {
        font-size: 28px;
    }
}


/* =====grc=========================== */
.grc-final {
  padding: 60px 0;
}

/* HEADER */
.grc-header {
  text-align: center;
  margin-bottom: 50px;
}
.grc-title {
  font-size: 36px;
  font-weight: 800;
}
.grc-title span { color: #c8102e; }
.grc-subtitle { color: #6b7280; }

/* MAIN LAYOUT */
.grc-main {
  display: grid;
  grid-template-columns: 420px 1fr;
  gap: 40px;
  align-items: stretch;
}

/* IMAGE FIX */
.grc-image img {
  width: 100%;
  height: auto;
  object-fit: contain;
  border-radius: 18px;
  display: block;
}

/* ACCORDION */
.grc-acc-item { margin-bottom: 12px; }
.grc-acc-btn {
  width: 100%;
  padding: 14px 18px;
  border-radius: 12px;
  background: #f3f4f6;
  border: none;
  font-weight: 700;
  cursor: pointer;
}
.grc-acc-item.open .grc-acc-btn {
  background: linear-gradient(135deg,#01578c,#0284c7);
  color: #fff;
}
.grc-acc-body {
  display: none;
  padding: 14px 18px;
}
.grc-acc-item.open .grc-acc-body {
  display: block;
}

/* TABLE */
.grc-table-wrapper {
  margin-top: 60px;
}
.grc-table-scroll {
  overflow-x: auto;
  padding: 28px;
  border-radius: 22px;
  background: linear-gradient(135deg, #01578c, #d3224d);
}
.grc-table {
  width: 100%;
  min-width: 600px;
  background: #fff;
  border-collapse: collapse;
  border-radius: 14px;
}
.grc-table th {
  background: #01578c;
  color: #fff;
  padding: 14px;
}
.grc-table td {
  padding: 12px;
  border-bottom: 1px solid #e5e7eb;
}

/* CTA */
.grc-cta {
  text-align: center;
  margin-top: 50px;
}
.grc-btn {
  margin-top: 14px;
  display: inline-block;
  padding: 6px 34px;
  border-radius: 999px;
  background: linear-gradient(135deg,#c8102e,#e63946);
  color: #fff;
  font-weight: 600;
  text-decoration: none;
}

/* TABLE BODY GRADIENT */
.grc-table tbody {
    background: linear-gradient(135deg, #01578c, #d3224d);
}

/* Text color for readability */
.grc-table tbody td {
    color: #ffffff;
    background: transparent; /* IMPORTANT */
}

/* Optional: subtle row separation */
.grc-table tbody tr:not(:last-child) td {
    border-bottom: 1px solid rgba(255,255,255,0.25);
}

/* Keep hover clean */
.grc-table tbody tr:hover td {
    background: rgba(255,255,255,0.08);
}


/* RESPONSIVE */
@media (max-width: 992px) {
  .grc-main {
    grid-template-columns: 1fr;
  }
  .grc-title { font-size: 28px; }
}

/* resposnive quotes */
/* Hide quote on mobile screens */
@media (max-width: 768px) {
    blockquote {
        display: none !important;
    }
    
}
@media (max-width: 768px) {
    .health-quote {
        display: none !important;
    }
}

/* ====NSS====== */
.nss-modern-section {
    padding: 60px 0;
    background: linear-gradient(135deg, #f8fafc, #eef2f7);
}

.nss-main-title {
    text-align: center;
    font-size: 36px;
    font-weight: 800;
    margin-bottom: 50px;
    color: #111;
}

.nss-top-grid {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 50px;
    align-items: center;
}

.nss-logo-wrap {
    display: flex;
    justify-content: center;
}

.nss-rotate {
    width: 220px;
    animation: rotateSlow 25s linear infinite;
}

@keyframes rotateSlow {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.nss-content p {
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 15px;
}

.nss-highlight {
    padding-left: 15px;
    border-left: 4px solid #d3224d;
    font-weight: 600;
}

.nss-sub-title {
    text-align: center;
    font-size: 26px;
    margin: 60px 0 30px;
    font-weight: 700;
}

/* ACTIVITY CARDS */
.nss-card-row {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}

.nss-activity-card {
    padding: 16px 36px;
    border-radius: 30px;
    background: linear-gradient(135deg, #01578c, #d3224d);
    color: #fff;
    font-weight: 600;
    cursor: pointer;
    transition: transform .3s, box-shadow .3s;
}

.nss-activity-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 30px rgba(0,0,0,.2);
}

/* RESPONSIVE */
@media(max-width:768px){
    .nss-top-grid {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .nss-rotate {
        width: 180px;
    }
}

/* events nss  */
.campus-card2 .box-text {
    font-size: 14px;
    line-height: 1.4;
    margin-bottom: 6px;
}

.campus-card2 .box-title {
    font-size: 18px;
}
/* =====campus lide tabs code css */
/* =========================================
   FIXED-ON-SCROLL TABS (BULLETPROOF)
   Scope: .cseTabsModern
========================================= */

.cseTabsModern #cseTabsSpacer {
    height: 0;
}

/* NORMAL STATE */
.cseTabsModern #cseTabsHeader {
    position: relative;
    background: #ffffff;
    border-bottom: 1px solid #e5e7eb;
    z-index: 900;
}

/* FIXED STATE (ADDED BY JS) */
.cseTabsModern #cseTabsHeader.is-fixed {
    position: fixed;
    top: 90px; /* EXACT main header height */
    left: 0;
    right: 0;
    z-index: 9999;
}

/* NAV */
.cseTabsModern .cseTabsNav {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.cseTabsModern .cseTabsNav::-webkit-scrollbar {
    display: none;
}

/* TAB BAR */
.cseTabsModern .cseTabsList {
    display: flex;
    align-items: center;
    gap: 2px;
    padding: 5px 10px;
    margin: 0;
    list-style: none;
    min-width: max-content;
}

/* TAB */
.cseTabsModern .cse-tab {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 14px;
    font-size: 14px;
    font-weight: 500;
    border-radius: 8px;
    white-space: nowrap;
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease;
}

/* DEFAULT */
.cseTabsModern .cse-tab,
.cseTabsModern .cse-tab i {
    color: #334155;
}

/* HOVER */
.cseTabsModern .cse-tab:hover,
.cseTabsModern .cse-tab:hover i {
    color: #01578c;
    background: rgba(1, 87, 140, 0.08);
}

/* ACTIVE */
.cseTabsModern .cse-tab.active {
    background: linear-gradient(135deg, #01578c, #d3224d);
}
.cseTabsModern .cse-tab.active,
.cseTabsModern .cse-tab.active i {
    color: #ffffff;
}

/* MOBILE */
@media (max-width: 768px) {
    .cseTabsModern #cseTabsHeader.is-fixed {
        top: 90px;
    }
    .cseTabsModern .cse-tab {
        font-size: 13px;
        padding: 8px 12px;
    }
}

/* =======bg gray for index page only */
.bg-gray{
    background: lightgray !important;
}




:root {
    --red:        #B9203F;
    --red-dark:   #8f1630;
    --red-xlight: #fdf3f5;
    --blue:       #1B4F8A;
    --text:       #1a1a2e;
    --border:     #ececec;
    --white:      #ffffff;
    --shadow-md:  0 4px 20px rgba(0,0,0,0.09);
    --radius:     10px;
    --radius-sm:  6px;
    --transition: 0.22s ease;
}
.policy-preview {
    background: var(--white);
    border-radius: var(--radius);
    box-shadow: var(--shadow-md);
    padding: 32px 36px;
    min-height: 500px;
    font-family: 'Nunito', sans-serif;
}
.policy-preview .tab-pane { display: none; }
.policy-preview .tab-pane.active { display: block; animation: fadeUp 0.3s ease; }
@@keyframes fadeUp {
    from { opacity: 0; transform: translateY(12px); }
    to   { opacity: 1; transform: translateY(0); }
}
.tab-heading {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    background: var(--red) !important;
    color: #fff !important;
    font-family: 'Nunito', sans-serif !important;
    font-size: 0.92rem !important;
    font-weight: 700 !important;
    padding: 10px 22px !important;
    border-radius: 8px !important;
    margin: 0 0 20px 0 !important;
    box-shadow: 0 3px 14px rgba(185,32,63,0.30) !important;
    width: auto !important;
    max-width: fit-content !important;
    float: none !important;
    border-top-left-radius: 8px !important;
    border-bottom-right-radius: 8px !important;
}
.tab-heading:not(:first-child) { margin-top: 28px !important; }
.policy-preview p { font-size: 0.925rem; line-height: 1.9; color: #444; margin-bottom: 12px; font-family: 'Nunito', sans-serif; }
.policy-preview p b, .policy-preview p strong { color: var(--red); font-weight: 700; }
.cseds-table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    font-size: 0.875rem !important;
    font-family: 'Nunito', sans-serif !important;
    margin-bottom: 28px !important;
    border-radius: var(--radius-sm) !important;
    overflow: hidden !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.07) !important;
    border: 1px solid var(--border) !important;
}
.cseds-table thead,
.cseds-table thead tr,
.cseds-table > thead > tr { background: var(--red) !important; background-color: var(--red) !important; }
.cseds-table thead th,
.cseds-table > thead > tr > th {
    padding: 14px 18px !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 0.875rem !important;
    text-align: left !important;
    border: none !important;
    border-right: 1px solid rgba(255,255,255,0.18) !important;
    background: var(--red) !important;
    background-color: var(--red) !important;
}
.cseds-table thead th:last-child { border-right: none !important; }
.cseds-table tbody tr,
.cseds-table > tbody > tr { background: #ffffff !important; background-color: #ffffff !important; transition: background var(--transition) !important; }
.cseds-table tbody tr:nth-child(even),
.cseds-table > tbody > tr:nth-child(even) { background: #fdf0f3 !important; background-color: #fdf0f3 !important; }
.cseds-table tbody tr:hover { background: #fce4e9 !important; background-color: #fce4e9 !important; }
.cseds-table tbody td,
.cseds-table > tbody > tr > td {
    padding: 13px 18px !important;
    color: var(--text) !important;
    vertical-align: middle !important;
    border-bottom: 1px solid var(--border) !important;
    border-right: 1px solid var(--border) !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    background: transparent !important;
}
.cseds-table tbody td:last-child { border-right: none !important; }
.cseds-table tbody tr:last-child td { border-bottom: none !important; }
.cseds-table tbody td a, .cseds-table > tbody > tr > td a { color: var(--red) !important; font-weight: 700 !important; text-decoration: none !important; }
.cseds-table tbody td a:hover { text-decoration: underline !important; }
.cseds-table tbody td p { color: var(--text) !important; margin: 0 !important; }
.placement-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0 22px; }
.placement-tab-btn {
    padding: 8px 22px; border: 2px solid var(--red); background: var(--white); color: var(--red);
    border-radius: 30px; font-family: 'Nunito', sans-serif; font-size: 0.83rem; font-weight: 700;
    cursor: pointer; transition: all var(--transition);
}
.placement-tab-btn:hover, .placement-tab-btn.active { background: var(--red) !important; color: #fff !important; box-shadow: 0 3px 12px rgba(185,32,63,0.28); transform: translateY(-1px); }
.placement-year { display: none; }
.placement-year.active { display: block; animation: fadeUp 0.3s ease; }
.placement-year h3 { font-size: 0.95rem; font-weight: 800; color: var(--blue); margin: 0 0 14px; padding: 10px 16px; background: #eef4fb; border-left: 4px solid var(--blue); border-radius: 0 var(--radius-sm) var(--radius-sm) 0; }
.policy-preview iframe { width: 100%; height: 580px; border: 2px solid var(--border); border-radius: var(--radius-sm); display: block; margin-top: 10px; }
div[style*="max-height:500px"] { scrollbar-width: thin; scrollbar-color: var(--red) #f0f0f0; }
div[style*="max-height:500px"]::-webkit-scrollbar { width: 6px; }
div[style*="max-height:500px"]::-webkit-scrollbar-thumb { background: var(--red); border-radius: 4px; }
.policy-preview a::after, .breadcumb-wrapper a::after { content: none !important; display: none !important; }
@@media (max-width: 768px) {
    .policy-preview { padding: 20px 16px; }
    .cseds-table thead th, .cseds-table tbody td { padding: 9px 10px !important; }
    .tab-heading { font-size: 0.875rem !important; padding: 8px 16px !important; }
}



