@import url('https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,100..900;1,100..900&display=swap');

:root {
    --bg-white: #fff;
    --block-color: #f2f6f8;
    --dark-color: #2b2f33;
    --seriy-color: #6b7a90;
    --accent-color: #05b368;
    --accent-color2: #1ede7b;
    --accent-color3: #67b16c;
}
.spo * {
  
    accent-color: #2196F3;
  
}
* {
    letter-spacing: -.01em;
    font-family: "Raleway", sans-serif;
    accent-color: #4CAF50;
    font-variant-numeric: lining-nums;
}

p {
    margin-top: 0;
    margin-bottom: clamp(15px, 2.5vw, 30px);
    font-size: clamp(.9575rem, .7494774919614148rem + .68585209003215437vw, 1.1425rem);
    line-height: 1.6;
    font-weight: 400;
    color: var(--dark-color);
}
b, strong {
    font-weight: 600;
}
p:last-child {
    margin-bottom: 0
}

body {
    background: var(--bg-white);
    margin: 0
}

body.blog {
    background: #fff
}

img,
svg {
    vertical-align: middle;
    max-width: 100%
}

ul {
    padding: 0
}

.feature-list {
    display: flex;
    gap: clamp(10px, 1.5vw, 15px);
    list-style: none;
    padding: 0;
    margin: 0;
    align-items: center;
    margin-top: 30px;
    margin: 0 auto;
    margin-bottom: 0px;
    overflow-x: auto;
    flex-wrap: nowrap;
    white-space: nowrap;
    width: 100%;
    scrollbar-color: #ffffff00 #ffffff12;
    scroll-behavior: smooth;
    scrollbar-width: none;
    scrollbar-color: #f7f7f7 #ffffff;
    padding: 0 0px;
    justify-content: start;
    z-index: 1;
    position: relative;
    margin-top: 20px;
}

.feature-list li {
    display: flex;
    align-items: center;
    font-weight: 500;
    color: #ffffff;
    font-weight: 600;
    font-size: clamp(0.875rem, 0.8309887459807074rem + 0.19292604501607719vw, 1.0625rem);
    background: #ffffff12;
    padding: clamp(6px, 1.5vw, 10px) clamp(10px, 1.5vw, 20px);
    position: relative;
    border-radius: 15px;
    padding-left: clamp(40px, 2.5vw, 50px);
}

.feature-list li::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 1px;
    background: linear-gradient(150deg, rgba(255, 255, 255, 0.48) 16.73%, rgba(255, 255, 255, 0.08) 30.2%, rgba(255, 255, 255, 0.08) 68.2%, rgba(255, 255, 255, 0.6) 81.89%);
    border-radius: inherit;
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask-composite: xor;
    -webkit-mask-composite: xor;
    pointer-events: none;
}

.spo .feature-list li {
    background: #0f40616b;
}

.spo .feature-list li:before {
    
    
}

.feature-list li::after {
    content: "";
    position: absolute;
    left: clamp(20px, 1.5vw, 26px);
    top: clamp(7px, 1.5vw, 13px);
    width: 8px;
    height: 15px;
    border-right: 2px solid #ffffff;
    border-bottom: 2px solid #ffffff;
    transform: rotate(45deg);
}

.feature-list li i {
    margin-right: 8px;
    color: #007bff;
    font-size: 1.2rem;
}

.content-text ul li:before {
    background-image: url(https://mmamos.ru/wp-content/uploads/2022/04/icon-check.svg);
    width: 40px;
    height: 40px;
    content: "";
    position: relative;
    display: block;
    position: absolute;
    left: 0;
    top: -10px;
    background-size: contain;
}

ul li {
    list-style: none;
    position: relative;
}

.content-text ul li {
    padding-left: 55px;
    font-size: 19px;
    font-weight: 500;
    line-height: 1.4;
    color: var(--seriy-color);
    margin-bottom: 25px;
}

h1 {
    line-height: 1;
    text-wrap: balance;
    font-weight: 600;
    word-break: normal;
    overflow-wrap: normal;
    white-space: normal;
    hyphens: none;
    margin-bottom: 15px;
    position: relative;
    width: 100%;
    margin: 0 auto;
    font-size: clamp(2.5125rem, 1.625683279742765rem + 2.272347266881029vw, 4.2rem);
    color: var(--dark-color);
    letter-spacing: -0.05em;
}

.h1-costum {
    line-height: 1;
    text-wrap: balance;
    font-weight: 500;
    word-break: normal;
    overflow-wrap: normal;
    white-space: normal;
    hyphens: none;
    letter-spacing: -4px;
    position: relative;
    margin-bottom: clamp(15px, 2.5vw, 35px);
    color: #ffffff;
    font-size: clamp(2.75rem, 1.282958rem + 6.830868vw, 6.1rem);
}

h2 {
    font-weight: 500;
    line-height: 1.04;
    text-align: left;
    text-wrap: balance;
    display: block;
    word-break: normal;
    overflow-wrap: normal;
    white-space: normal;
    hyphens: auto;
    margin-bottom: clamp(15px, 3.5vw, 35px);
    font-size: clamp(1.75rem, 1.0631832797427653rem + 2.372347266881029vw, 3.2rem);
    color: #24364f;
    /* font-size: clamp(1.6rem, 1.2631832797427653rem + 2.372347266881029vw, 3.3rem); */
    letter-spacing: -1px;
}

.spo h2 i {
    color: #ffffff;
    background: linear-gradient(135deg, #2badf1, #025ca9);
}

h2 i {
    font-size: clamp(1.0625rem, 0.9891479099678456rem + 0.3215434083601286vw, 1.375rem);
    margin-right: clamp(5px, 1vw, 15px);
    background: #00df75;
    padding: clamp(7px, 1.5vw, 13px);
    display: inline-flex;
    width: max-content;
    color: var(--bg-white);
    border-radius: clamp(10px, 1vw, 15px);
    color: #00df75;
    background: #76c99a22;
    vertical-align: bottom;
    flex-shrink: 0;
    height: max-content;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
}

h3 {
    font-weight: 500;
    line-height: 1.04;
    text-align: left;
    display: block;
    overflow-wrap: normal;
    margin-bottom: clamp(15px, 2.5vw, 30px);
    margin-bottom: clamp(15px, 2.5vw, 30px);
    font-size: clamp(1.3875rem, 1.2470136655948553rem + 0.5144694533762058vw, 2.1875rem);
    letter-spacing: -1px;
}

h4 {
    font-size: 24px;
    margin-top: 0;
    margin-bottom: .5rem;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: clamp(15px, 2.5vw, 20px);
    font-size: clamp(1.5rem, 1.4119774919614148rem + 0.38585209003215437vw, 1.775rem);
}

.subtitle {
    max-width: 85%;
    line-height: 1.5;
    color: var(--seriy-color);
    font-weight: 500;
    font-size: clamp(1.025rem, 0.9809887459807075rem + .22292604501607719vw, 1.5125rem);
    margin-bottom: clamp(15px, 2.5vw, 30px);
    color: #000000;
}

.subtitle p {
    color: #000000;
    line-height: 1.5;
    color: var(--seriy-color);
    font-weight: 400;
    font-size: clamp(1.025rem, 0.9809887459807075rem + .29292604501607719vw, 1.6125rem);
    margin-bottom: clamp(15px, 2.5vw, 30px);
    color: #000000;
}

.subtitle p:last-child {
    margin-bottom: 0px;
}

.under-title_text {
    font-weight: 500;
    color: #3b3059ba;
    text-wrap: balance;
    font-size: clamp(.9375rem, .8788183279742765rem + .2572347266881029vw, 1.1875rem);
    width: 900px;
    margin-bottom: 35px
}

#city-selector-btn img {
    width: 15px
}

.spo .logo img {
    filter: hue-rotate(
86deg);
}

.spo a {}

a {
    text-decoration: none;
    color: #2196F3;
}

.grid-2 {
    display: grid;
    grid-template-columns: 360px 1fr;
    gap: clamp(15px, 2.5vw, 30px);
}

@media(max-width: 768px) {
    .grid-2 {
        grid-template-columns: 1fr
    }
}

.grid2 {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: clamp(15px, 2.5vw, 30px);
    grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
}

.review-content .image {
    border-radius: 300px;
    overflow: hidden
}

.form {
    border-radius: clamp(20px, 3.5vw, 60px);
    background-color: #f7f9fa;
    background-position: center center;
    border-color: transparent;
    border-style: none;
    padding: clamp(20px, 3.5vw, 60px);
    vertical-align: middle;
    width: 100%;
    -webkit-text-size-adjust: 100%;
    margin-top: 0;
}

.blog .form {
    background-color: #edeffb6b
}

.form h3 {
    z-index: 3;
    text-align: center;
    font-weight: 600;
    margin-bottom: 15px;
    color: var(--dark-color);
    line-height: 1.1;
    font-size: clamp(1.375rem, 1.5282958199356913rem + 0.6430868167202572vw, 2.5rem);
}

.form .form-panel {
    display: flex;
    gap: 10px;
    padding: 0;
    flex-wrap: wrap;
    justify-content: center;
}

.form .form-panel input {
    color: #6b7a90;
    border: 1px solid rgb(255 255 255 / 0%);
    background-color: #ebeef1;
    border-radius: 60px;
    font-size: 16px;
    font-weight: 600;
    height: 60px;
    outline: none;
    padding: 0 20px;
}

input::placeholder {
    color: #6b7a90;
}

.edu-modal__right .iti {
    width: 100%;
}
.career-result .iti{
    width:100%;
}
.iti {}
.mega-column .iti{
    width:100%;
}
.form p {
    vertical-align: middle;
    color: var(--seriy-color);
    font-size: 17px;
    line-height: 1.3;
    max-width: 670px;
    margin: 0 auto;
    text-align: center;
    margin-bottom: 25px;
    font-weight: 500
}

.form .form-button {
    line-height: 1.55;
    font-weight: 600;
    border-radius: 212px;
    background-color: var(--accent-color2);
    border: none;
    color: var(--bg-white);
    padding: 13px 40px;
    margin: 0 auto;
    margin-top: 0;
    cursor: pointer;
    font-weight: 600;
    font-size: 20px;
    text-align: center;
    width: max-content;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
    box-shadow: 0 12px 30px rgb(21 192 56 / 27%);
    width: 100%;
}

.form .form-button:hover {
    background-color: #14c784;
}

.spo .form .form-button {
    background: #1991ee;
    color: var(--bg-white);
    box-shadow: 0 12px 30px rgb(21 124 192 / 27%);
    color: #ffffff;
    box-shadow: 0 12px 26px rgb(111 189 255 / 25%);
    background: linear-gradient(135deg, #2badf1, #025ca9);
}

.spo .form .form-button:hover {
    background-color: #137bcb;
}

.form .personality {
    display: flex;
    justify-content: center;
    margin-bottom: 10px;
    margin-top: 10px
}

.form .form-container {
    border-radius: 20px 20px 20px 20px;
    background-color: #e4eaf700;
    background-position: center center;
    border-color: transparent;
    border-style: solid;
    gap: 10px;
    padding: 0;
    margin-bottom: 0;
    display: flex;
    flex-direction: column
}

.edu-modal__right .nice-check {
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    user-select: none;
    font-size: 14px;
    color: var(--seriy-color);
    font-weight: 600;
    margin-top: 20px;
    margin-bottom: 30px;
}
.career-result .nice-check {
    margin-top: 15px;
}
.nice-check {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    user-select: none;
    font-size: 14px;
    color: var(--seriy-color);
    font-weight: 600;
    line-height: 1.2;
}

.nice-check input {
    display: none
}

.nice-check .box {
    width: 20px;
    height: 20px;
    border: 2px solid #747a9642;
    border-radius: 4px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: .2s;
    background: #e9eef7;
    flex-shrink: 0;
}

.nice-check .box::after {
    content: "";
    width: 12px;
    height: 12px;
    transform: scale(0);
    transition: .2s;
    background: var(--accent-color2);
    border-radius: 3px
}

.spo .nice-check .box::after {
    content: "";
    background: #5195ff;
}
.nice-check input:checked+.box {
    border-color: var(--accent-color2);
}
.spo .nice-check input:checked+.box {
    border-color: #5195ff;
}

.nice-check input:checked+.box::after {
    transform: scale(1)
}

.toc-layout section {
    padding: 0px;
    padding-bottom: clamp(15px, 2.5vw, 30px);
}

.toc-layout .faq-premium-section {
    padding: clamp(20px, 2.5vw, 30px);
}

.faq-section {
    margin-bottom: 30px;
}

section {
    margin-top: 0;
    padding: clamp(15px, 2.5vw, 40px);
    background: #ffffff00;
    position: relative;
    padding-top: clamp(20px, 2.5vw, 40px);
    padding-bottom: clamp(20px, 2.5vw, 40px);
}/* ===========================
   DIPLOMA MODAL
=========================== */

 

 
 


.diploma-modal .edu-modal__content{
    display:flex;

    justify-content:center;

    align-items:center;

    width:100%;

    height:100%;
}


.diploma-modal img{
    display:block;

    max-width:90vw;

    max-height:90vh;

    width:auto;

    height:auto;

    object-fit:contain;

    border-radius:18px;

    background:#fff;
}


.diploma-modal .edu-modal__close{position:absolute;top: 20px;right: 20px;width:54px;height:54px;z-index:50;background: rgb(0 0 0 / 25%);color: #ffffff;border-radius:999px;backdrop-filter:blur(10px);font-size: 44px;display:flex;align-items:center;justify-content:center;}

.diploma-modal .edu-modal__close:hover{
    background:rgba(255,255,255,.2);
}


@media(max-width:768px){

    .diploma-modal{
        padding:0;
    }

    .diploma-modal .edu-modal__close{

        top:16px;

        right:16px;

        width:46px;

        height:46px;

        font-size:28px;

    }

    .diploma-modal img{

        max-width:95vw;

        max-height:85vh;

    }

}

section:first-child {
    padding-top: 20px;
}
.container{
    padding:0px;
}
.other-directions {
    padding: 0px !important;
}

.order-button {
    margin-top: 30px;
    overflow: hidden;
    position: relative;
    display: flex;
    gap: 7px;
    justify-content: center;
    align-items: center;
    text-transform: math-auto;
    font-weight: 600;
    transition: .2s linear;
    border-radius: clamp(5px, 1.5vw, 40px);
    width: max-content;
    z-index: 1;
    padding: clamp(10px, 1.5vw, 16px) clamp(10px, 1.5vw, 30px);
    line-height: 1;
    color: var(--bg-white);
    font-size: clamp(1rem, .9711538461538461rem + .1282051282051282vw, 1.125rem);
    background: var(--accent-color2);
    color: #1991ee;
    box-shadow: inset 3px 3px 10px rgba(15, 118, 197, .1), 3px 3px 10px rgba(15, 118, 197, .1);
    color: var(--dark-color);
    border: none;
    box-shadow: 0 12px 30px rgb(24 184 95 / 35%);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.order-button span {
    display: flex;
    gap: 5px;
    align-items: center;
    font-size: 12px
}

.grid-wrapper {
    display: grid;
    grid-template-columns: 470px 1fr;
    gap: clamp(10px, 1.5vw, 20px);
    width: 100%;
    margin: 0 auto;
    margin-bottom: 0;
    border-radius: 30px;
}

.left-grid {
    display: grid;
    grid-template-rows: 1fr;
    gap: 20px;
}

.left-grid .block .description {
    font-size: 19px;
    font-weight: 500;
    line-height: 1.4;
    color: #747a96
}

.left-grid>.block:first-child {
    padding: 0;
    background: var(--block-color);
}

.left-grid>.block:last-child {}

.right-grid {
    display: grid;
    grid-template-rows: auto auto;
    gap: clamp(10px, 1.5vw, 20px);
}

.right-top {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: clamp(10px, 1.5vw, 20px);
}

.right-top>*:nth-child(3) {
    grid-column: 1 / -1
}

.right-grid .block {
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
    color: #000000;
    /* background-repeat: no-repeat; */
    padding-right: 70px;
}

.right-grid .block img {
    max-width: 190px;
    filter: invert(100%) sepia(0%) saturate(2%) hue-rotate(340deg) brightness(104%) contrast(101%);
    transform: rotate(
315deg);
}

.right-grid .block.color-block {
    color: var(--bg-white);
    background-image: linear-gradient(40deg, var(--accent-color2) 0, #199ef2 60%, #16b6f5 100%);
    background: var(--accent-color2);
    padding: 30px;
}

.right-grid .block.color-block .content {
    color: #191f20;
}

.right-grid .block.color-block p {
    color: var(--dark-color);
}

.right-grid .block.color-block .link-arrow {
    box-shadow: none;
}

.block .miniature {
    position: absolute;
    width: 65px;
    bottom: 20px;
    right: 20px;
    filter: invert(28%) sepia(70%) saturate(2843%) hue-rotate(216deg) brightness(94%) contrast(95%);
    filter: grayscale(1);
    opacity: .3;
    filter: invert(62%) sepia(28%) saturate(6922%) hue-rotate(111deg) brightness(99%) contrast(88%);
}

.right-bottom {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: clamp(10px, 1.5vw, 20px);
}

.block {
    background: var(--block-color);
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border-radius: 30px;
    gap: 20px;
    padding: clamp(20px, 2.5vw, 35px);
    min-height: clamp(150px, 16.5vw, 250px);
}

.block .content {
    font-size: 30px;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 0px;
    color: var(--dark-color);
    height: 100%;
    justify-content: space-between;
    flex-direction: column;
    padding: 0px;
    background: none;
    letter-spacing: -1px;
    font-size: clamp(1.4625rem, 1.359807073954984rem + 0.65016077170418006vw, 1.7rem);
}

.block .content p {
    font-weight: 400;
    margin-top: clamp(5px, 0.5vw, 10px);
    line-height: 1.5;
    color: #ffffff;
    flex: 1;
    font-size: clamp(0.9375rem, 0.9081591639871383rem + 0.12861736334405144vw, 1.0625rem);
}

.header-button-order {
    border: none;
    overflow: hidden;
    position: relative;
    display: flex;
    gap: 7px;
    justify-content: center;
    align-items: center;
    transition: .2s;
    text-transform: math-auto;
    font-weight: 600;
    transition: .2s linear;
    border-radius: clamp(5px, 1.5vw, 15px);
    width: max-content;
    cursor: pointer;
    z-index: 1;
    padding: clamp(10px, 1.5vw, 13px) clamp(10px, 1.5vw, 25px);
    line-height: 1;
    color: var(--bg-white);
    font-size: clamp(1rem, .9711538461538461rem + .1282051282051282vw, 1.025rem);
    background: var(--dark-color);
    color: var(--bg-white);
}

@media (max-width: 900px) {
    .grid-wrapper {
        grid-template-columns: 1fr
    }
}

.od-hero-items {
    background: #f3f6fb00;
    position: relative;
    z-index: 1;
    border-radius: 20px;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
    gap: 20px;
}

.od-hero-items:before {
    content: '';
    position: absolute;
    z-index: -1;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 643px;
    height: 1280px;
    opacity: .5
}

.section-line .od-item-card {
    background: #ffffff;
}

.od-item-card {
    flex: 0 0 calc(25% - 16px);
    position: relative;
    background: #f8fafc;
    border-radius: 20px;
    padding: clamp(20px, 2.5vw, 30px);
    font-size: clamp(1.0875rem, .7494774919614148rem + .68585209003215437vw, 1.1425rem);
    line-height: 1.4;
    color: #6b7a90;
    font-weight: 500;
    display: flex;
    flex-direction: column;
}

.od-item-card .ico {
    margin-bottom: clamp(10px, 1.5vw, 20px);
}

.od-item-card .ico img {
    width: clamp(30px, 2.5vw, 40px);
}

.spo .od-item-card .ico img {
    width: clamp(30px, 2.5vw, 40px);
    filter: hue-rotate(47deg);
}

.od-item-title {
    display: block;
    color: var(--dark-color);
    margin-bottom: 10px;
    font-size: 21px;
    font-weight: 600;
    line-height: 1.2;
    flex: 1;
    font-size: clamp(1.3125rem, 1.2684887459807075rem + 0.19292604501607719vw, 1.5rem);
}

.grid3 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 15px;
    border-radius: 20px;
    grid-template-columns: repeat(3, 1fr);
}

.grid4 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 20px;
    border-radius: 20px;
}

.grid5 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(177px, 1fr));
    gap: clamp(10px, 0.5vw, 15px);
    border-radius: 20px;
    /* grid-template-columns: repeat(5, 1fr); */
    grid-template-columns: repeat(auto-fit,minmax(230px,1fr));
}

@media (max-width: 768px){
    .grid5{
        grid-template-columns:repeat(2,1fr);
    }
}
.directions-list {
    display: flex;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 15px;
    grid-template-columns: repeat(4, 1fr);
    flex-wrap: wrap;
    column-gap: clamp(10px, 1.5vw, 15px);
    row-gap: clamp(10px, 1.5vw, 15px);
}.spo .directions-list a:hover img{
    transition:.2s linear;
 filter: invert(43%) sepia(85%) saturate(577%) hue-rotate(167deg) brightness(102%) contrast(99%);
} 
.directions-list a:hover img{
    transition:.2s linear;
    filter: invert(72%) sepia(9%) saturate(2813%) hue-rotate(72deg) brightness(80%) contrast(88%);
}.directions-list a img{
    transition:.2s linear;
  
}
.directions-list a {
    color: var(--dark-color);
    font-size: 18px;
    font-weight: 500;
    display: flex;
    gap: clamp(5px, 1.5vw, 10px);
    border-radius: 20px;
    font-weight: 600;
    border: 1px #000000 solid;
    padding: clamp(10px, 1.5vw, 14px) clamp(15px, 1.5vw, 20px);
    max-width: 320px;
    white-space: normal;
    line-height: 1.15;
    font-size: clamp(1.0625rem, 1.0184887459807075rem + 0.19292604501607719vw, 1.25rem);
    position: relative;
    min-width: 220px;
}

.directions-list a .icon-direction {
    width: clamp(35px, 3.5vw, 51px);
    height: clamp(35px, 3.5vw, 51px);
    border-radius: 30%;
    color: var(--bg-white);
    font-size: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    flex-shrink: 0;
}

.directions-list a .icon-direction img {}

.direction-more img {
    transition: transform .25s ease;
}

.direction-more.is-open img {
    transform: rotate(180deg);
}

.direction-more {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border-radius: 20px;
    padding: 15px 20px;
    border: 1px dashed #7d858f;
    background: transparent;
    cursor: pointer;
    font-weight: 600;
    color: #111;
    transition: all .2s ease;
}

.direction-item.is-hidden {
    display: none;
}

.direction-item:hover .count-programs img {
    /* transform: translateX(8px); */
    transition: .3s linear;
}

.direction-item .count-programs img {
    transform: translateX(0);
    transition: .3s linear;
    transform: rotate(-45deg);
    bottom: 15px;
}

.index-header .grid3 {
    margin-top: 50px;
}

.index-header .grid3 .item {
    background: #f3f6fb;
    background-color: #edf1fa;
    color: #2d3847;
    box-shadow: -15px -15px 20px rgba(255, 255, 255, .6), 15px 15px 20px rgba(57, 65, 124, .1);
}

.item {
    background: var(--block-color);
    padding: 25px;
    border-radius: 20px;
    font-size: 21px;
    position: relative;
    overflow: hidden;
    font-weight: 600;
    display: flex;
    align-items: self-start;
    cursor: pointer;
    flex-direction: column;
    gap: clamp(5px, 0.5vw, 15px);
}

.item .item-icon {
    z-index: 1;
    margin-bottom: 5px;
    transition: transform 0.3s ease, color 0.3s ease;
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    background-image: linear-gradient(to right, #5dac83, #1edc7a);
    width: max-content;
    background: var(--accent-color2)26;
    color: var(--accent-color2);
    justify-content: center;
    align-items: center;
    display: flex;
    border-radius: 20px;
    line-height: 0;
}

.item .item-icon img {}

.item span {
    z-index: 1;
    display: block;
    position: relative;
    cursor: pointer;
    font-size: 19px;
    line-height: 1.3;
    font-weight: 600;
    color: var(--dark-color);
}

.item::before {
    width: 173px;
    height: 166px;
    filter: blur(48px);
    background-color: #c3d5ff59;
    right: -82px;
    bottom: -26px;
    position: absolute;
    z-index: 0
}

.count-programs {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: max-content;
    border-radius: 10px;
    background-color: #dde7fb;
    box-sizing: border-box;
    font-size: 13px;
    font-weight: 600;
    gap: 10px;
    z-index: 0;
    /* position: relative; */
    border-radius: 10px;
    background-color: #dfe6f4;
    color: #8b8b8b;
    border-radius: 9px;
    font-size: 13px;
    background: #f2f4f700;
    margin-top: 3px;
}

.count-programs img {
    width: 15px;
    filter: invert(52%) sepia(13%) saturate(653%) hue-rotate(192deg) brightness(90%) contrast(90%);
    position: absolute;
    right: 15px;
    transform: rotate(-45deg);
    bottom: 15px;
}

.horizontal-line {
    height: 1px;
    background: #dedede;
    width: 100%;
    margin-top: 20px;
    margin-bottom: 20px
}

.place-info {
    margin-top: 15px;
}

.place-info-container {
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: var(--bg-white);
    border-radius: 30px;
    height: fit-content;
}

.order-button_footer {
    border: none;
    overflow: hidden;
    position: relative;
    display: flex;
    gap: 7px;
    justify-content: center;
    align-items: center;
    transition: .2s;
    text-transform: math-auto;
    font-weight: 600;
    transition: .2s linear;
    border-radius: clamp(5px, 1.5vw, 15px);
    z-index: 1;
    padding: clamp(10px, 1.5vw, 15px) clamp(10px, 1.5vw, 20px);
    line-height: 1;
    font-size: clamp(1rem, .9711538461538461rem + .1282051282051282vw, 1.225rem);
    background: var(--dark-color);
    margin-top: 0;
    background-color: #00df75;
    color: var(--bg-white);
    border: 2px solid transparent;
    width: 100%;
}

.order-button_footer:hover {
    background: var(--accent-color2);
    color: var(--bg-white);
    box-shadow: 0 12px 30px var(--accent-color2)40;
}

.social-mess {
    display: flex;
    gap: 10px;
    margin-top: 15px;
    margin-bottom: 15px
}

.social-mess a img {
    width: 24px;
    height: 24px;
    filter: invert(17%) sepia(11%) saturate(2610%) hue-rotate(174deg) brightness(96%) contrast(88%);
    filter: invert(100%) sepia(4%) saturate(0%) hue-rotate(335deg) brightness(99%) contrast(105%);
    opacity: .5;
}

.social-mess a {
    padding: 13px;
    background: #05b36800;
    border-radius: 15px;
    border: 1px #ffffff3b solid;
}

.social-mess a:hover {
    padding: 13px;
    background: #05b36800;
    border-radius: 15px;
    border: 1px #ffffff solid;
}

.social-mess a:hover img {
    opacity: 1;
    filter: invert(62%) sepia(62%) saturate(1830%) hue-rotate(103deg) brightness(75%) contrast(101%);
}
.spo social-mess a:hover img {
    opacity: 1;
   filter: invert(36%) sepia(99%) saturate(748%) hue-rotate(170deg) brightness(97%) contrast(85%);
}
.bvi-open:hover {
    
    color: #fff;
    
}

.bvi-open:hover img {
    filter: invert(100%) sepia(0%) saturate(1152%) hue-rotate(345deg) brightness(116%) contrast(101%)
}

.bvi-open img {
    width: 23px;
    height: 23px;
    filter: invert(100%) sepia(4%) saturate(0%) hue-rotate(335deg) brightness(99%) contrast(105%);
}

.spo #toTop {
    background: #2aacf1;
    background: linear-gradient(135deg, #2badf1, #025ca9);
}

#toTop {
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s ease, visibility .3s ease;
    z-index: 1;
    color: #2d3847;
    box-shadow: -15px -15px 20px rgb(255 255 255), 15px 15px 20px rgb(30 222 123 / 31%);
    position: fixed;
    right: clamp(30px, 1.5vw, 30px);
    bottom: clamp(90px, 3.5vw, 50px);
    width: clamp(45px, 2.5vw, 56px);
    height: clamp(45px, 2.5vw, 56px);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    text-decoration: none;
    color: var(--bg-white);
    background: #0a8937;
    border-radius: 50%;
    box-shadow:
        0 10px 25px rgba(0, 0, 0, .15),
        0 4px 10px rgba(0, 0, 0, .1);
    transition:
        transform .25s ease,
        box-shadow .25s ease,
        background .25s ease;
    z-index: 1000;
}

#toTop.show {
    opacity: 1;
    visibility: visible
}

#toTop:hover {
    transform: translateY(-4px) scale(1.05);
    box-shadow:
        0 14px 35px rgba(0, 0, 0, .2),
        0 6px 15px rgba(0, 0, 0, .12);
}

#toTop img {
    width: clamp(26px, 1.5vw, 30px);
    transform: rotate(90deg);
    filter: brightness(300.5);
}

.blog-card-category {
    position: absolute;
    z-index: 1;
    top: 15px;
    right: 15px;
    padding: 4px 14px;
    width: max-content;
    color: var(--bg-white);
    border-radius: 999px;
    font-size: 14px;
    font-weight: 600;
    padding: 6px 15px;
    width: max-content;
    color: var(--bg-white);
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: -.02em;
    backdrop-filter: blur(9px);
    box-shadow: 3px 3px 10px #47474712;
    background: #0000004a;
}

.blog-card-content {
    bottom: 0;
    left: 0;
    background: var(--block-color);
    padding: 25px;
    opacity: 1;
    z-index: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.blog-card-content p {
    font-size: 16px;
    line-height: 1.5;
    color: #6b7a90;
    margin-bottom: 10px;
    font-weight: 500;
}

.blog-card-content h3 {
    font-size: 24px;
    color: var(--bg-white);
    margin-bottom: 30px;
    font-weight: 600;
    color: var(--dark-color);
    flex: 1;
}

.blog-card-content .date {
    font-size: 13px;
    letter-spacing: -1px;
    color: var(--seriy-color);
    font-weight: 700;
    padding: 4px 14px;
    width: max-content;
    color: var(--bg-white);
    border-radius: 999px;
    font-size: 14px;
    font-weight: 600;
    padding: 6px 15px;
    width: max-content;
    color: var(--bg-white);
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: -.02em;
    backdrop-filter: blur(9px);
    box-shadow: 3px 3px 10px #47474712;
    background: #00000029;
    position: absolute;
    top: 15px;
    left: 15px;
}

.creator {
    margin-top: 10px;
}

.us-item.card-with-img .creator img {
    width: 35px;
    height: 35px;
}

.us-item.card-with-img .creator span {
    font-weight: 600;
    color: #000;
    font-size: 14px;
    line-height: 1.3;
}

.us-item.card-with-img .creator span div {
    font-weight: 600;
    color: #6b7a90;
    font-size: 11px !important;
    line-height: 1.3;
    margin-top: 2px;
}

.grid-style-block {
    border-radius: clamp(20px, 2.5vw, 40px);
    background-color: var(--block-color);
    padding: clamp(20px, 2.5vw, 35px);
    display: flex;
    gap: clamp(10px, 1.5vw, 20px);
    align-items: flex-start;
    position: relative;
    overflow: hidden;
    background: #f2f6f8;
    transition: transform 0.3s, box-shadow 0.3s;
    /* background: linear-gradient(
91deg, #2a2e32, #265936); */
}

.grid-style-block::after {}

.grid-style-block:before {
    position: absolute;
    z-index: 1;
    top: -10%;
    left: 30%;
    width: 640px;
    height: 640px;
    border-radius: 50%;
    background-color: #80ffae24;
    opacity: 1;
    filter: blur(52px);
    animation: blob-bounce 5s infinite ease;
    z-index: 0;
}

.grid-style-block p {
    color: #000000;
    margin: 0 0 0;
    line-height: 1.5;
    font-weight: 400;
    font-size: 15px;
    font-weight: 400;
    margin: 0 0 0;
    font-size: clamp(0.9375rem, 0.9081591639871383rem + 0.12861736334405144vw, 1.0625rem);
}

.grid-style-block img {
    z-index: 1;
    position: absolute;
    right: 25px;
    top: 25px;
    opacity: .3;
    height: 80px;
}

.grid-style-block .content {
    display: flex;
    flex-direction: column;
    gap: 10px;
    height: 100%;
    padding: 0px;
    background: none;
    width: 100%;
}

.grid-style-block .content .title {
    font-size: 25px;
    font-weight: 500;
    line-height: 1.1;
    margin: 0 0 5px;
    color: #000000;
    font-size: clamp(1.2625rem, 1.2891479099678457rem + 0.3215434083601286vw, 1.875rem);
}

.grid-style-block .content .text {
    font-size: 17px;
    font-weight: 400;
    margin: 0 0 0;
    color: #000000;
}

.grid-cards-container {
    display: grid;
    grid-gap: 20px;
    grid-template-columns: 330px 1fr 1fr;
    border-radius: clamp(20px, 2.5vw, 40px);
    margin-top: clamp(20px, 2.5vw, 50px);
}

.grid-style-block:first-of-type {
    grid-row: span 2;
    flex-direction: column;
}

.grid-style-block:nth-of-type(2) {
    grid-column: span 2;
    padding-right: 90px;
}

.grid-style-block:nth-of-type(2) .content .title {}

.grid-style-block:nth-of-type(2) .content .text p {}

.grid-style-block:nth-of-type(2) .content .text {}

.grid-style-block:nth-of-type(3) {
    grid-column: span 2;
    flex-direction: row-reverse;
    /* padding-right: 120px; */
}

.grid-style-block:nth-of-type(4) .content .title {}

.grid-style-block:nth-of-type(4) .content .text p {}

.grid-style-block:nth-of-type(4) .content .text {}

.grid-style-block:nth-of-type(4),
.grid-style-block:nth-of-type(5) {
    grid-column: span 2;
}

.grid-style-block:nth-of-type(4) {
    grid-column: span 2;
    /* padding-right: 230px; */
    /* padding-right: 70px; */
}

.grid-style-block:nth-of-type(4) .content .title {}

.grid-style-block:nth-of-type(4) .content .text {}

@media (max-width: 1200px) {
    .grid-cards-container {
        grid-template-columns: 1fr 1fr;
        gap: 25px;
    }

    .grid-style-block:first-of-type {
        grid-row: auto;
        grid-column: span 2;
    }

    .grid-style-block:nth-of-type(2),
    .grid-style-block:nth-of-type(3),
    .grid-style-block:nth-of-type(4),
    .grid-style-block:nth-of-type(5) {
        grid-column: span 2;
    }
}

@media (max-width: 768px) {
    .grid-cards-container {
        grid-template-columns: 1fr;
        gap: clamp(15px, 2.5vw, 50px) 0;
    }

    .grid-style-block,
    .grid-style-block:first-of-type,
    .grid-style-block:nth-of-type(2),
    .grid-style-block:nth-of-type(3),
    .grid-style-block:nth-of-type(4),
    .grid-style-block:nth-of-type(5) {
        grid-column: auto !important;
        grid-row: auto;
    }

    .grid-style-block {
        flex-direction: column !important;
    }
}

.costum-white-block {
    background: var(--bg-white);
    padding: 60px;
    border-radius: 25px;
    gap: 30px;
    display: flex
}

.costum-white-block img {
    max-height: 360px;
    border-radius: 25px
}

.costum-white-block .f-part h3 {
    color: #091144;
    font-size: 48px;
    margin-bottom: 60px
}

.costum-white-block .f-part p {
    font-size: 22px;
    font-weight: 400;
    margin: 0 0 40px
}

.f-part {
    flex: 1
}

.utoch {
    padding: 5px 15px;
    border-radius: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-radius: 100px;
    background-color: rgb(94 196 236 / 21%);
    box-sizing: border-box;
    font-size: 14px;
    right: 10px;
    top: 10px;
    font-weight: 500;
    gap: 5px;
    z-index: 2;
    width: max-content;
    margin-bottom: 10px
}

.od-rate-info {
    margin: 24px auto 0;
    position: relative;
    color: var(--bg-white);
    background: var(--accent-color2);
    border-radius: 20px;
    padding: 6px 12px;
    font-weight: 400;
    font-size: 14px;
    line-height: 120%;
    width: 180px
}

.od-rate-info:before {
    content: '';
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    width: 34px;
    height: 11px;
    background: url(/img/union.png) 0 0 no-repeat;
    background-size: 100%
}

.od-rate-info span {
    font-weight: 600;
    font-size: 16px
}

.universal-slider {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 12px;
    position: relative;
    transform: translateX(-50%);
    left: 50%;
    max-width: 100%;
}

.us-track-wrapper {
    overflow: hidden;
}

.us-track {
    display: flex;
    gap: 15px;
    transition: transform .4s ease
}

.slider-uni-block {
    flex: 0 0 340px;
    border-radius: 30px;
    overflow: hidden;
    opacity: .24;
    transition: opacity .3s;
    background: var(--block-color);
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    height: auto;
    --nb-w: clamp(87px, 3vw, 110px);
    --nb-h: clamp(12px, 1.6vw, 15px);
    padding: 0px;
}

.us-item.active {
    opacity: 1
}

.us-item img {
    width: 100%;
    object-fit: cover;
    height: 170px;
    border-radius: 30px;
}

.us-item.wide {
    flex: 0 0 400px;
    border-radius: 30px;
    overflow: hidden;
    opacity: .24;
    transition: opacity .3s;
    background: var(--block-color);
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    height: auto;
}

.us-item.wide.active {
    opacity: 1
}

.us-item.wide img {
    object-fit: cover;
}

.us-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity .3s;
    background: rgb(255 255 255 / 62%);
    border: none;
    color: var(--bg-white);
    font-size: 32px;
    width: clamp(45px, 3.5vw, 60px);
    height: clamp(45px, 3.5vw, 60px);
    cursor: pointer;
    border-radius: 30px;
    line-height: 1;
    box-shadow: 0 8px 17px #96969642
}

.us-btn img {
    width: 25px;
}

.us-btn:hover {
    opacity: .7
}

.slider-universary {
    border-radius: 20px;
    background: var(--bg-white);
    padding-top: clamp(15px, 2.5vw, 40px);
    padding-bottom: clamp(15px, 2.5vw, 40px);
}

.us-dots {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 18px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -30px;
    display: none
}

.us-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #d0d0d0;
    cursor: pointer;
    transition: background .3s
}

.us-dot.active {
    background: #444
}

.universal-slider,
.us-track,
.us-item {
    user-select: none
}

.us-item.card-with-img {}

.us-item.card-with-img img {
    pointer-events: none;
}

.navigation-container-slider {
    position: relative;
    display: flex;
    justify-content: space-between;
    transform: translateY(-50%) translateX(-50%);
    top: 0%;
    z-index: 0;
    width: 140px;
    margin-left: auto;
}

.breadcrumbs {
    padding: 0;
    margin: 0;
    list-style: none;
    display: flex;
    white-space: nowrap;
    text-align: center;
    margin: 0;
    justify-content: center;
    line-height: 1;
}

.breadcrumbs.-small {
    font-size: .875rem
}

.breadcrumbs.-medium {
    font-size: 1.25rem
}

.breadcrumbs.-large {
    font-size: 1.5rem
}

.breadcrumb__separator {
    padding-inline: .5em
}

.breadcrumb__link {
    color: #4a4a4a;
    display: flex;
    align-items: center;
    text-decoration-color: #007ea1;
    text-underline-position: under;
    /* color: #ffffff; */
    border-radius: 7px;
    /* font-style: italic; */
    font-weight: 600;
}

.breadcrumb__link:hover {
    color: #007ea1;
    text-decoration: none
}

.breadcrumbs li {
    display: none
}

@media screen and (min-width: 769px) {
    .breadcrumbs li {
        font-size: 15px;
        font-weight: 600;
        color: #000000;
        line-height: 1;
        display: flex;
        margin-bottom: 0px;
    }
}

.breadcrumbs li:first-child,
.breadcrumbs li:nth-child(2),
.breadcrumbs li:last-child {
    display: flex;
    margin-bottom: 0px;
}

.breadcrumb__current {
    flex: 1;
    min-width: 0
}

.breadcrumb__current span {
    display: initial;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--seriy-color);
    display: flex;
    align-items: center;
    text-decoration-color: #007ea1;
    text-underline-position: under;
    color: #000000;
    /* font-style: italic; */
    font-weight: 600;
}

.uni-container {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 20px
}

.uni-tabs {
    display: flex;
    gap: 20px;
    width: 100%;
    max-width: 1200px;
    margin: 40px auto
}

.uni-tabs__menu {
    display: flex;
    flex-direction: column;
    width: 200px;
    min-width: 160px;
    gap: 10px
}

.uni-tab {
    padding: 12px 15px;
    text-align: left;
    background: #f2f2f2;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    font-size: 16px;
    transition: .25s
}

.uni-tab.active {
    background: #3a7afe;
    color: #fff
}

.uni-tabs__content {
    flex: 1
}

.uni-tabs__pane {
    display: none
}

.uni-tabs__pane.active {
    display: block
}

@media (max-width: 768px) {
    .uni-tabs {
        flex-direction: column
    }

    .uni-tabs__menu {
        flex-direction: row;
        width: 100%;
        overflow-x: auto
    }

    .uni-tab {
        white-space: nowrap;
        flex: 1 0 auto
    }
}

.price-hero h1 {
    font-size: 44px;
    font-weight: 800;
}

.price-hero p {
    max-width: 600px;
    margin-top: 16px;
    color: #c7d2fe;
}

.ui-tabs {
    z-index: 0;
    position: relative;
}

.ui-tab-panel .program-container {
    display: grid;
    gap: 35px;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    display: grid;
    gap: 25px;
    /* grid-template-columns: repeat(
        auto-fit,
        minmax(260px, 270px)
    ); */
    justify-content: start;
}

.ui-tabs-nav {
    display: flex;
    gap: 15px;
    margin-bottom: 30px;
    font-size: 18px;
    flex-wrap: wrap;
    max-width: 1360px;
    flex-direction: row;
    z-index: 4;
    margin-top: 0;
    gap: 5px;
    top: 130px;
    justify-content: start;
    margin: 0 auto;
    margin-bottom: 30px;
    overflow-x: auto;
    z-index: 3;
    flex-wrap: nowrap;
    white-space: nowrap;
    width: 100%;
    scrollbar-color: #ffffff00 #ffffff12;
    scroll-behavior: smooth;
    scrollbar-width: thin;
    scrollbar-color: #d2d7dc #f8fafc;
    overflow-x: auto;
    padding-bottom: 20px;
    cursor: grab;
    padding-top: 3px;
    padding-left: 1px;
}

.ui-tabs-nav:hover {
    scrollbar-color: #e5e8ed var(--block-color);
    overflow-x: auto;
}

.ui-tabs-nav.is-dragging {
    cursor: grabbing;
}

.ui-tab {
    padding: clamp(10px, 3.5vw, 15px) clamp(20px, 3.5vw, 30px);
    border-radius: 115px;
    border: none;
    cursor: pointer;
    font-weight: 600;
    transition: .2s ease;
    line-height: 1;
    user-select: none;
    font-size: clamp(1.125rem, 1.0956591639871383rem + 0.12861736334405144vw, 1.15rem);
    color: #646b77;
}

.ui-tabs-nav,
.ui-tabs-nav * {
    user-select: none;
    -webkit-user-select: none;
}

.docs-ui__title,
.docs-ui__subtitle {
    white-space: normal;
}

.ui-tabs-nav img {
    pointer-events: none;
    -webkit-user-drag: none;
}

.ui-tabs-nav {
    cursor: grab;
}

.ui-tabs-nav.is-dragging {
    cursor: grabbing;
}

.spo .ui-tab.is-active {
    color: var(--bg-white);
    background: linear-gradient(135deg, #2badf1, #0664b0);
    color: #ffffff;
    box-shadow: 0 12px 26px rgb(111 189 255 / 25%);
}

.ui-tab.is-active {
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
}

.ui-tab.bigger-tab.is-active {
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    box-shadow: 0 12px 30px #8c8c8c1c;
    color: #ffffff;
}

.ui-tab.bigger-tab.is-active .green-bg-icon {
    background: none;
    color: #fff;
    border: 1px #fff solid;
}

.ui-tab.bigger-tab.is-active-green {
    padding: 20px 25px;
    background: var(--bg-white);
    color: var(--dark-color);
    border: 1px var(--accent-color2) solid;
}

.ui-tab.bigger-tab {
    padding: clamp(10px, 1.5vw, 15px) clamp(20px, 2.5vw, 25px);
    display: flex;
    gap: 10px;
    align-items: center;
    margin-bottom: 0;
    min-width: max-content;
    line-height: 1;
}

.ui-tab.bigger-tab img {
    height: 27px;
}

.ui-tab.bigger-tab.is-active img {
    filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(276deg) brightness(108%) contrast(107%);
}

.ui-tab-panel {
    display: none;
    animation: uiFade .25s ease;
}

.ui-tab-panel.is-active {
    display: block;
    position: relative;
}

.ui-accordion {
    margin: 40px auto;
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-bottom: 0;
}

.details-item {
    background: var(--bg-white);
    border-radius: 24px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .06);
    overflow: hidden;
    transition: box-shadow .3s ease;
}

.details-item[open] {
    box-shadow: 0 20px 50px rgba(0, 0, 0, .1);
}

.details-item summary {
    list-style: none;
    cursor: pointer;
    padding: 26px 72px 26px 32px;
    position: relative;
    font-size: 20px;
    font-weight: 600;
}

.details-item summary::-webkit-details-marker {
    display: none;
}

.details-item summary::before {
    content: "+";
    position: absolute;
    right: 32px;
    top: 50%;
    transform: translateY(-50%);
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #111;
    color: var(--bg-white);
    font-size: 22px;
    font-weight: 400;
    line-height: 32px;
    text-align: center;
    transition: all .25s ease;
}

.details-item[open] summary::before {
    background: #e5e7eb;
    color: #111;
}

.details-item summary::-webkit-details-marker {
    display: none;
}

.details-item .title {
    max-width: 80%;
}

.details-item .icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #111;
    position: relative;
    transition: transform .3s ease;
}

.details-item .icon::before,
.details-item .icon::after {
    content: "";
    position: absolute;
    background: var(--bg-white);
    border-radius: 2px;
}

.details-item .icon::before {
    width: 14px;
    height: 2px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.details-item .icon::after {
    width: 2px;
    height: 14px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.details-item[open] .icon {
    transform: rotate(45deg);
}

.details-content {
    padding: 0 32px 28px;
    font-size: 16px;
    line-height: 1.6;
    color: #555;
    animation: detailsFade .3s ease;
}

@keyframes detailsFade {
    from {
        opacity: 0;
        transform: translateY(-6px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes uiFade {
    from {
        opacity: 0;
        transform: translateY(5px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.price-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.price-card {
    padding: 30px;
    background: #e9eef7;
    border-radius: 20px;
}

.price-card strong {
    font-size: 21px;
    color: var(--dark-color);
    font-weight: 600;
}

.price-card p {
    font-weight: 500;
    margin-bottom: 0;
    color: var(--seriy-color);
    font-size: 16px;
}

.detail-card {
    background: var(--bg-white);
    border-radius: 20px;
    padding: clamp(15px, 2.5vw, 35px);
    background: #f8fafc;
    position: sticky !important;
    top: 120px;
    height: fit-content;
}

.seo-section .detail-card h3 {
    font-size: 33px;
    margin-bottom: 30px;
    margin-top: 0;
}

.spoiler {
    margin-top: 10px;
}

.beauty-list ol {
    margin-bottom: 1rem;
    counter-reset: section
}

.beauty-list ol li {
    list-style: none;
    font-weight: 500;
    font-size: clamp(.8875rem, .7494774919614148rem + .68585209003215437vw, 1.1425rem);
    display: flex;
    counter-increment: section;
    position: relative;
    gap: 15px;
    margin-bottom: 10px;
    align-items: flex-start;
    margin-top: 15px;
}

.beauty-list a {
    color: var(--main-color);
    font-weight: 500;
    text-decoration: underline;
    text-underline-offset: 4px
}

.beauty-list ul li {
    list-style: none;
    margin-top: 15px;
    align-items: flex-start;
    position: relative;
    font-size: clamp(.9575rem, .7494774919614148rem + .68585209003215437vw, 1.1425rem);
    color: var(--dark-color);
    line-height: 1.6;
    font-weight: 400;
    letter-spacing: -.04em;
}

.beauty-list ul li:last-child {
    margin-bottom: 25px
}

.beauty-list ul li:before {
    display: flex;
    flex-shrink: 0;
}

.spoiler-btn {
    width: 100%;
    padding: clamp(15px, 2.5vw, 20px);
    border-radius: 20px;
    border: none;
    background: #e9eef7;
    text-align: left;
    font-weight: 500;
    display: flex;
    justify-content: space-between;
    font-size: 18px;
    color: #dedede;
    font-weight: 600;
    color: var(--dark-color);
    line-height: 1.4;
    font-size: clamp(1.125rem, 1.0956591639871383rem + 0.12861736334405144vw, 1.25rem);
}

.spoiler-btn img {
    width: 17px;
    filter: invert(51%) sepia(29%) saturate(306%) hue-rotate(192deg) brightness(88%) contrast(89%);
}

.spoiler-body {
    display: none;
    padding: 12px 14px;
    color: #000000;
    font-weight: 400;
    line-height: 1.5;
}

.payment-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.payment-card {
    background: var(--bg-white);
    padding: 26px;
    border-radius: 22px;
    text-align: center;
    font-weight: 600;
}

.cta-btn {
    display: inline-block;
    margin-top: 20px;
    padding: 16px 30px;
    border-radius: 18px;
    background: var(--accent-color2);
    color: var(--bg-white);
    font-weight: 700;
}

.program-item .link-arrow img {
    filter: invert(0%) sepia(87%) saturate(3461%) hue-rotate(325deg) brightness(108%) contrast(110%);
    width: 20px;
    transform: rotate(-45deg);
}

.program-item .link-arrow {
    width: 50px;
    backdrop-filter: none;
    height: 50px;
    z-index: 1;
}

.spo .program-item .link-arrow {
    width: 50px;
    backdrop-filter: none;
    height: 50px;
    background: #dfe6f1;
}

.link-arrow {
    display: flex;
    justify-content: center;
    background: #d8e6de78;
    padding: 10px 10px;
    width: 60px;
    height: 50px;
    border-radius: 20px;
    color: #2d3847;
    box-shadow: -15px -15px 20px rgb(119 119 119 / 5%), 15px 15px 20px rgb(57 124 62 / 10%);
    height: 60px;
    border-radius: 300px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 1;
    position: absolute;
    bottom: 20px;
    width: 60px;
    right: 20px;
    backdrop-filter: blur(5px);
    transition: .2s linear;
}

.link-arrow img {
    width: 28px;
    height: 50px;
}

.reviews {
    gap: 60px
}

.review-button {
    border: none;
    overflow: hidden;
    position: relative;
    display: flex;
    gap: 7px;
    justify-content: center;
    align-items: center;
    transition: .2s;
    text-transform: math-auto;
    font-weight: 600;
    transition: .2s linear;
    border-radius: clamp(5px, 1.5vw, 15px);
    width: max-content;
    cursor: pointer;
    z-index: 1;
    padding: clamp(10px, 1.5vw, 15px) clamp(10px, 1.5vw, 20px);
    line-height: 1;
    color: var(--bg-white);
    font-size: clamp(1rem, .9711538461538461rem + .1282051282051282vw, 1.025rem);
    background: var(--dark-color);
    margin-top: 0;
    background-color: transparent;
    color: #1991ee;
    border: 2px solid #1991ee;
    box-shadow: inset 3px 3px 10px rgba(15, 118, 197, .1), 3px 3px 10px rgba(15, 118, 197, .1);
    background-color: #ff4352;
    color: var(--bg-white);
    border: 2px solid transparent;
    box-shadow: 5px 5px 15px rgba(57, 65, 124, .2);
}

.reviews .uni-tabs__menu {
    display: flex;
    flex-direction: column;
    width: 100px;
    min-width: 100px;
    gap: 10px
}

.reviews .uni-tab.active {
    color: var(--bg-white);
    border: 2px #3a7afe solid;
    display: flex;
    width: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100px;
    border-radius: 300px
}

.reviews .uni-tab {
    padding: 0;
    text-align: left;
    background: #f2f2f2;
    border-radius: 333px;
    border: 2px #f2f2f2 solid;
    cursor: pointer;
    font-size: 16px;
    transition: .25s
}

.reviews .uni-tab {
    padding: 0;
    text-align: left;
    background: #f2f2f2;
    border-radius: 333px;
    border: 2px #f2f2f2 solid;
    cursor: pointer;
    font-size: 16px;
    transition: .25s
}

.reviews .uni-tab img {
    width: 96px
}

.region-tab {
    cursor: pointer;
    border-radius: 10px;
    font-weight: 600;
    padding: 7px 20px;
    margin-bottom: 5px
}

.region-tab.active {
    cursor: pointer;
    border-radius: 10px;
    font-weight: 600;
    padding: 7px 20px;
    background: var(--accent-color2);
    color: #fff
}

.region-tab:hover {
    background: var(--accent-color2);
    color: #fff
}

.city-link-container {
    gap: 10px;
    flex-wrap: wrap;
}

.city-link {
    background: none;
    border: none;
    text-align: left;
    width: max-content;
    font-weight: 500;
    border: 1px #dedede solid;
    padding: 6px 15px;
    border-radius: 15px;
}

.city-link:hover {
    color: var(--accent-color2);
    text-decoration: underline
}

.modal-body-container {
    padding: 35px;
    padding-top: 50px
}

.modal-body-container .btn-close {
    top: 25px;
    position: absolute;
    right: 25px
}

.modal-content {
    border-radius: 15px
}

.mma-hero {
    margin-top: 0;
    padding: 0;
}

.mma-slider {
    position: relative;
    margin-bottom: 40px
}

.mma-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 20px;
    padding: 60px 80px;
    min-height: 450px;
    margin: 0 50px;
    background: #eef3fb;
}

.mma-card img {
    max-width: 280px
}

.mma-card-text h3 {
    line-height: 1.3;
    margin-bottom: 25px;
    color: var(--bg-white);
    line-height: 1;
}

.mma-card-text a {
    font-weight: 600;
    color: inherit;
    text-decoration: none;
    border: none;
    overflow: hidden;
    position: relative;
    display: flex;
    gap: 20px;
    justify-content: center;
    align-items: center;
    transition: .2s;
    text-transform: math-auto;
    font-weight: 600;
    transition: .2s linear;
    border-radius: clamp(5px, 1.5vw, 40px);
    width: max-content;
    cursor: pointer;
    z-index: 1;
    padding: clamp(10px, 1.5vw, 18px) clamp(10px, 1.5vw, 35px);
    line-height: 1;
    color: var(--bg-white);
    background: var(--dark-color);
    margin-top: 30px;
    background-color: transparent;
    color: #1991ee;
    border: 2px solid #1991ee;
    box-shadow: inset 3px 3px 10px rgba(15, 118, 197, .1), 3px 3px 10px rgba(15, 118, 197, .1);
    background-color: #ff4352;
    color: var(--bg-white);
    border: 2px solid transparent;
    box-shadow: 5px 5px 16px rgb(255 67 82 / 25%);
    font-size: 19px;
}

.mma-card-orange {
    background: #edf1fa;
    color: #24364f;
}

.mma-card-light {
    background: #eef3fb;
    color: #1f2a44
}

.mma-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 58px;
    height: 58px;
    background: #00000042;
    border-radius: 50%;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .15);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    font-size: 20px;
    box-shadow: -15px -15px 20px rgb(119 119 119 / 5%), 15px 15px 20px rgb(57 124 62 / 10%);
    height: 60px;
    border-radius: 300px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 1;
    position: absolute;
    bottom: 20px;
    width: 60px;
    right: 20px;
    backdrop-filter: blur(5px);
}

.mma-arrow img {
    width: 35px;
    opacity: .5
}

.mma-arrow.prev {
    left: 10px;
}

.mma-arrow.next {
    right: 10px;
}

.mma-arrow.next:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg);
}

.mma-arrow.prev:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(-135deg);
}

.mma-info {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 34px;
    max-width: 1180px;
    margin: 0 auto
}

.mma-info-item {
    display: flex;
    gap: 12px;
    font-weight: 600;
    color: var(--dark-color);
    font-size: 16px;
    line-height: 1.2;
    background: #f3f6fb;
    padding: 25px;
    position: relative;
    border-radius: 20px;
    flex-direction: column;
    height: 100%;
    justify-content: space-around;
}

.mma-info-item .title {
    font-size: 24px;
    display: flex;
    gap: 10px;
    margin-bottom: 20px;
}

.mma-info-item p {
    font-weight: 500;
    font-size: 15px;
    margin-bottom: 15px;
    line-height: 1.4;
    margin-top: 10px;
    color: #2b2f33ba;
    margin-bottom: 10px;
}

@media (max-width: 992px) {
    .mma-card {
        flex-direction: column;
        text-align: center;
        gap: 20px
    }

    .mma-info {
        grid-template-columns: 1fr 1fr
    }
}
.author-side{
    width:100%;
    max-width:390px;
    position:sticky;
    top:110px;
}

.author-card{
    position:relative;
    overflow:hidden;
    background:
    linear-gradient(
    180deg,
    #ffffff,
    #fbfcfd
    );
    border-radius:28px;
    border:1px solid
    rgba(24,24,24,.06);
    padding: 25px;
    box-shadow:
    0 30px 80px rgba(17,24,39,.08),
    0 10px 30px rgba(17,24,39,.05);
    transition:.35s;
}

.author-card:hover{

transform:
translateY(-4px);

box-shadow:
0 40px 120px rgba(0,0,0,.12);

}

.author-glow{

position:absolute;

right:-140px;
top:-120px;

width:300px;
height:300px;

border-radius:50%;

background:
radial-gradient(
circle,
rgba(33,192,106,.15),
transparent 70%
);

pointer-events:none;

}

.spo .author-glow{

background:
radial-gradient(
circle,
rgba(59,130,246,.18),
transparent 70%
);

}

.author-top{

display:flex;

align-items:center;

gap:18px;

margin-bottom:26px;

}

.author-avatar{

width:92px;

min-width:92px;

height:92px;

border-radius:26px;

background-size:cover;

background-position:center;

position:relative;

box-shadow:
0 14px 40px rgba(0,0,0,.18);

border:
4px solid #fff;

transition:.35s;

}

.author-card:hover
.author-avatar{

transform:
scale(1.04);

}

.author-meta{

display:flex;

flex-direction:column;

gap: 4px;
}

.author-badge{

display:inline-flex;

align-items:center;

gap:8px;

width:max-content;

padding:

8px 12px;

border-radius:999px;

font-size: 11px;

font-weight:700;

background:
rgba(33,192,106,.08);

color:#16a34a;

margin-bottom: 10px;
}

.spo .author-badge{

background:
rgba(59,130,246,.10);

color:#2563eb;

}

.author-role{

font-size:13px;

color:#7d8793;

font-weight: 600;
}

.author-name{

margin:0;

font-size: 21px;

line-height:1.1;

font-weight: 600;
}

.author-name a{

color:#111827;

text-decoration:none;

}

.author-name a:hover{

color:#16a34a;

}

.spo .author-name a:hover{

color:#2563eb;

}

.author-stats{

display:grid;

grid-template-columns:
repeat(3,1fr);

gap:10px;

margin-bottom: 10px;
}

.author-stat{

padding: 10px;

border-radius:18px;

background:#fff;

text-align:center;

border:
1px solid
rgba(0,0,0,.05);
}

.author-stat strong{

display:block;

font-size: 18px;

color:#111;

line-height: 1;
}

.author-stat span{

font-size:12px;

color:#8a94a3;

}

.author-description{

padding: 10px;

border-radius:22px;

background:

linear-gradient(
180deg,
#ffffff,
#f8fafb
);

color:#44515f;

margin-bottom: 10px;
}

.author-description p{

margin:0;

font-size: 15px;

font-weight: 500;

line-height: 1.5;
}

.author-features{

display:flex;

flex-direction:column;

gap:10px;

margin-bottom:24px;

}

.author-feature{

display:flex;

align-items:flex-start;

gap:12px;

padding: 10px;

background:#fff;

border-radius:18px;

border:
1px solid
rgba(0,0,0,.05);

font-size: 13px;
}

.author-feature i{

font-size:18px;

color:#16a34a;

}

.spo .author-feature i{

color:#2563eb;

}

.author-actions{

display:flex;

flex-direction:column;

gap:12px;

}

.author-btn{

height:58px;

border-radius:18px;

display:flex;

align-items:center;

justify-content:center;

text-decoration:none;

font-weight:700;

transition:.3s;

background:#f6f8fa;

color:#111;

}

.author-btn:hover{

transform:
translateY(-2px);

}

.author-btn--primary{

color:#fff;

background:

linear-gradient(
135deg,
#21c06a,
#15a85a
);

box-shadow:
0 20px 50px
rgba(33,192,106,.25);

}

.spo
.author-btn--primary{

background:

linear-gradient(
135deg,
#3b82f6,
#2563eb
);

box-shadow:
0 20px 50px
rgba(59,130,246,.22);

}

@media(max-width:992px){

.author-side{

max-width:100%;

position:static;

}

}
 
.author-side{

    position:sticky;
    top:120px;

    transition:
        opacity .35s ease,
        transform .45s cubic-bezier(.22,1,.36,1),
        filter .35s ease;

    will-change:
        opacity,
        transform;

}

.author-side.hide-author{

    opacity:0;

    transform:
        translateY(-20px)
        scale(.96);

    filter:
        blur(12px);

    pointer-events:none;

}

/* ==========================
   STICKY TOC
========================== */

.sticky-toc{

    opacity:0;

    transform:
        translateY(18px);

    transition:
        .35s ease;

}

.sticky-toc.visible{

    opacity:1;

    transform:
        translateY(0);

}

@media(max-width:1279px){

    .author-side{
        opacity:1!important;
        transform:none!important;
        filter:none!important;
    }

}
@media(max-width:560px){

.author-top{/* flex-direction:column; */text-align:center;}

.author-meta{

align-items:center;

}

.author-stats{/* grid-template-columns:1fr; */}

}
.article-cont {
    grid-template-columns: 1fr 389px;
    gap: clamp(15px, 2.5vw, 45px);
    display: grid;
    max-width: 1280px;
    margin: 0 auto;
}

.article-cont .subtitle {
    max-width: 800px;
    line-height: 1.4;
    color: var(--seriy-color);
    font-weight: 500;
    font-size: clamp(1.125rem, 1.0809887459807075rem + .19292604501607719vw, 1.5125rem);
    margin-bottom: clamp(15px, 2.5vw, 40px);
    color: #707a8a;
    background: #f2f4f73b;
    border-radius: 30px;
    color: #3b3059;
}

article p {
    margin-bottom: 20px;
    line-height: 1.5;
    font-size: 20px
}

article h1 {
    margin-bottom: 20px;
    font-size: 55px;
    line-height: 1.1;
    margin: 0;
    color: #3b3059;
    word-wrap: break-word;
    text-wrap: balance;
    white-space: normal;
    word-break: keep-all;
    overflow-wrap: break-word;
    font-weight: 600;
    word-break: normal;
    overflow-wrap: normal;
    white-space: normal;
    hyphens: none;
    margin-bottom: 15px;
    position: relative;
    color: #3b3059;
    width: 100%;
    margin: 0 auto;
    margin-bottom: 30px
}

.top-second .bvi-open {
    padding: 7px 10px;
    border: none;
    background: #dfe6f4;
    border-radius: 10px;
    font-size: 12px;
    display: flex;
    gap: 10px;
    font-weight: 600;
    align-items: center;
    color: var(--dark-color);
    color: var(--seriy-color);
    margin-top: 0;
}

.top-second .bvi-open img {
    width: 18px;
    height: 18px;
    filter: invert(51%) sepia(29%) saturate(306%) hue-rotate(192deg) brightness(88%) contrast(89%);
}

.top-second {
    display: flex;
    align-items: center;
    gap: 15px;
}

.top-firts {
    display: flex;
    align-items: center;
    gap: 15px;
}

article h2 {
    margin-bottom: 20px;
    font-size: 40px
}

.toc {
    padding: 20px;
    border-radius: 16px;
    margin-bottom: 25px;
    background: #edecff
}

.toc.sticky-toc {
    position: sticky;
    top: 130px;
}

.toc-item.h2 a {
    font-weight: 600;
    display: block;
    margin: 0px 0;
    font-size: 23px
}

.toc-item.h3 a {
    margin-left: 15px;
    display: block;
    margin: 0 0;
    font-size: 16px;
    color: var(--dark-color);
    position: relative;
    text-decoration: none;
}

.toc-item.h3 a:before {
    content: '';
    position: absolute;
    width: 17px;
    height: 2px;
    background: #000;
    left: -15px;
    top: 12px;
}

article .univer-list.pl-4.d-block {
    display: none !important
}

article a {
    color: #725ae5;
    text-decoration: underline;
    text-underline-offset: 4px
}

article ul {
    padding-left: 0;
    border-radius: 10px;
    margin-bottom: 30px
}

article table,
article .iksweb {
    width: 100%;
    border-collapse: collapse;
    font-size: 15px;
    line-height: 1.4;
    background: var(--bg-white);
    margin-bottom: 1.5rem;
    border-radius: 20px;
    border: 1px solid #7755d430;
    overflow-x: auto;
    width: 100%;
    table-layout: auto;
    border-collapse: collapse;
    display: block;
    max-width: clamp(300px, 89.5vw, 100%);
    overflow: hidden;
    border-radius: 20px;
    border: 1px solid #7755d430;
    overflow-x: auto
}

article table th,
article .iksweb th,
article table td,
article .iksweb td {
    padding: clamp(10px, 2.5vw, 20px);
    text-align: left;
    vertical-align: top;
    color: #3b3059;
    border-right: 1px #dedede solid;
    font-weight: 400;
    font-size: clamp(.9375rem, .9081591639871383rem + .32861736334405144vw, 1.2625rem);
    line-height: 1.6;
    color: #584f72
}

article table th:last-child,
article .iksweb th:last-child,
article table td:last-child,
article .iksweb td:last-child {
    border-right: none
}

article table thead,
article .iksweb thead {
    background-color: #f7f7f9;
    font-weight: 600
}

article table tbody tr:nth-child(even),
article .iksweb tbody tr:nth-child(even) {
    background-color: #ecedf0
}

article table tbody tr:hover,
article .iksweb tbody tr:hover {
    background-color: #f9f9fb;
    transition: background .2s ease-in-out
}

@media (max-width: 1024px) {
.article-cont {
    grid-template-columns: 1fr;
    display: grid;
    margin-bottom: 30px;
}
    article table,
    article .iksweb {
        display: block;
        overflow-x: auto;
        white-space: nowrap
    }

    article table thead,
    article .iksweb thead {
        display: table-header-group
    }
}

article img {
    border-radius: clamp(15px, 1.5vw, 20px);
    margin-bottom: clamp(15px, 2.5vw, 30px);
    width: 100%;
}

article .title-container {
    margin-bottom: clamp(5px, 1.5vw, 35px)
}
.read-more-title{
    font-weight: 600;
    font-size: clamp(.9375rem, .9081591639871383rem + .32861736334405144vw, 1.4625rem);
    line-height: 1.6;
}
article {
    position: relative;
    transition: .2s linear;
    color: #3b3059;
    background: var(--bg-white);
    padding: clamp(10px, 4.5vw, 20px) clamp(10px, 4.5vw, 15px);
    border-radius: clamp(10px, 1.5vw, 20px);
    color: #000000;
    font-weight: 500;
    font-size: clamp(.9375rem, .9081591639871383rem + .32861736334405144vw, 1.2625rem);
    line-height: 1.6
}

blockquote {
    background: #f8fafc;
    border-radius: 24px;
    padding: clamp(20px, 2.5vw, 45px);
    position: relative;
    margin: 40px 0;
}

blockquote::before {
    content: "";
    position: absolute;
    left: 0;
    top: 30px;
    bottom: 30px;
    width: 5px;
    border-radius: 6px;
    background: linear-gradient(180deg, var(--accent-color), var(--accent-color2));
}

blockquote p {
    margin: 0 0 16px;
    color: #1e293b;
    line-height: 1.5;
}

blockquote p:first-child {
    font-size: 1.4rem;
    font-weight: 600;
    color: #1e293b;
    line-height: 1.1;
    margin-bottom: 15px;
}

blockquote p:last-child {
    font-size: 1.05rem;
    color: #707a8a;
    font-weight: 500;
    font-style: italic;
}

article p,
article ul,
article ol,
article ul li,
article ol li {
    position: relative;
    transition: .2s linear;
    color: #584f72;
    margin-bottom: clamp(15px, 1.5vw, 25px);
    font-weight: 500;
    font-size: clamp(.9375rem, .9081591639871383rem + .32861736334405144vw, 1.1625rem);
    line-height: 1.6;
    margin: clamp(20px, 1.5vw, 25px) 0 clamp(20px, 1.5vw, 25px);
    padding-left: 0;
}

article h2 {
    font-size: clamp(1.5625rem, 1.1957395498392283rem + 1.607717041800643vw, 2.325rem);
    margin-bottom: clamp(15px, 2.5vw, 30px);
    text-align: left !important
}

article h3 {
    text-align: left !important;
    margin-bottom: clamp(15px, 2.5vw, 30px);
    color: #3b3059;
    font-size: clamp(1.1875rem, 1.1567307692307692rem + 1.0256410256410255vw, 2.0875rem);
    line-height: 1.15;
    letter-spacing: -.04em;
    font-weight: 600
}

article b {
    display: contents
}

article i {
    background: #7755d414;
    display: block;
    padding: 20px 30px;
    border-radius: 20px;
    font-weight: 500;
    color: var(--main-color);
    font-size: clamp(.9375rem, .9081591639871383rem + .32861736334405144vw, 1.2625rem);
    line-height: 1.6
}

article i b {
    font-weight: 400;
    font-family: math
}

figcaption {
    font-weight: 500;
    font-size: 13px;
    color: var(--dark-color);
}

article ul li {
    list-style: none;
    font-weight: 500;
    position: relative;
    margin-left: 45px;
    margin-bottom: 15px;
    margin-left: clamp(0px, 2.5vw, 15px);
    padding-left: clamp(45px, 2.5vw, 50px);
}

article ol li {
    list-style: none;
    font-weight: 500;
    position: relative;
    margin-left: 45px;
    margin-left: clamp(10px, 2.5vw, 15px);
    padding-left: clamp(25px, 2.5vw, 50px);
    counter-increment: section;
    position: relative;
    gap: 15px;
    margin-bottom: 15px;
    align-items: flex-start;
    margin-left: clamp(0px, 2.5vw, 15px);
    padding-left: clamp(45px, 2.5vw, 50px);
}

article ol {
    counter-reset: section
}

article ul li::before {
    position: relative;
    width: clamp(34px, 1.5vw, 34px);
    height: clamp(34px, 1.5vw, 34px);
    flex-shrink: 0;
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: #76c99a22;
    display: flex;
    justify-content: center;
    align-items: center;
}

article ul li::after {
    content: "";
    position: absolute;
    left: 15px;
    top: 10px;
    width: 6px;
    height: 12px;
    border-right: 2px solid #76c99a;
    border-bottom: 2px solid #76c99a;
    transform: rotate(45deg);
}

article ol li::before {
    min-width: clamp(20px, 2.5vw, 30px);
    content: counter(section);
    counter-increment: step;
    position: absolute;
    left: 0;
    top: 0;
    width: 32px;
    height: 32px;
    border-radius: 33px;
    background: #00df75;
    color: #14c784;
    font-weight: 600;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    width: clamp(34px, 2.5vw, 34px);
    height: clamp(34px, 2.5vw, 34px);
    flex-shrink: 0;
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: #76c99a22;
    display: flex;
    justify-content: center;
    align-items: center;
}

.toc-item.h2 a {
    font-weight: 600;
    color: #3b3059;
    text-decoration: none;
    transition: color .3s;
    text-wrap: pretty;
    display: block;
    line-height: 1.3;
    font-size: clamp(.725rem, .9891479099678456rem + .3215434083601286vw, 1.075rem)
}

.toc-item.h2 a::before {
    content: counter(toc-h2) ". ";
    margin-right: 5px
}

.toc-target,
h2,
h3 {
    scroll-margin-top: 200px;
    color: #000000;
}

.news-content .toc {
    background: #edeffb;
    padding: clamp(15px, 2.5vw, 30px);
    border-radius: clamp(15px, 1.5vw, 20px);
    margin-bottom: 20px;
    counter-reset: toc-h2;
    z-index: 12;
    color: #3b3059
}

.toc {
    background: var(--block-color);
    padding: clamp(15px, 2.5vw, 45px);
    border-radius: clamp(15px, 1.5vw, 20px);
    margin-bottom: 20px;
    counter-reset: toc-h2;
    z-index: 12;
    color: #3b3059;
}

.toc a.active {
    font-weight: bold;
    color: #007bff
}

.toc.toc-article {
    background: #f7f7f7;
    padding: clamp(15px, 2.5vw, 35px);
    border-radius: clamp(15px, 1.5vw, 20px);
    margin-bottom: 20px;
    counter-reset: toc-h2;
    position: relative;
    top: initial;
    z-index: 12;
    background: linear-gradient(140deg, rgba(236, 240, 255, 0) 29.68%, rgba(227, 237, 255, .5) 58.82%, rgb(211 220 254 / 50%) 74.13%, rgb(204 212 255 / 50%) 86.2%), #f6f7f8;
    color: #3b3059
}

.toc-item.h2 {
    margin-bottom: 0px;
    padding-left: 0px;
}

.toc-item.h2 a {
    counter-increment: toc-h2
}

.toc-item.h2 a:hover {
    text-decoration: underline
}

.toc h3 {
    margin-bottom: 20px;
    font-size: clamp(1.375rem, 1.114423076923077rem + 2.2025641025641024vw, 1.8375rem)
}

.toc-item.h3 a:hover {
    text-decoration: underline
}

.article a {
    color: #5652cc
}

.toc-item.h2~.toc-item.h3 {
    padding-left: clamp(25px, 1.5vw, 30px)
}

.toc-item.h3 {
    margin-bottom: 5px;
    padding-left: 20px;
    margin-left: 15px
}

.about-article {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-bottom: 0px;
    margin: 0 auto;
    margin-bottom: 0px;
    overflow-x: auto;
    flex-wrap: nowrap;
    white-space: nowrap;
    width: 100%;
    scrollbar-color: #ffffff00 #ffffff12;
    scroll-behavior: smooth;
    scrollbar-width: none;
    scrollbar-color: #f7f7f7 #ffffff;
}

.about-article span {
    background: #ffffff14;
    color: #ffffff;
    border-radius: 10px;
    justify-content: center;
    align-items: center;
    font-weight: 600;
    padding: clamp(10px, 1.5vw, 15px);
    font-size: 14px;
    display: flex;
    gap: 10px;
    align-items: center;
    line-height: 1;
    gap: 8px;
    display: flex;
}

.about-article img {
    margin-bottom: 0;
    border-radius: 10px;
    width: 23px;
    height: 23px
}

.read-more-box {
    background: #edeffb;
    padding: 15px;
    border-radius: 12px;
    margin: 40px 0;
    display: flex;
    gap: 12px;
    align-items: center
}

.read-more-box a {
    display: flex;
    gap: 12px;
    align-items: center;
    text-decoration: none;
    color: #222
}

.read-more-box img {
    width: 120px;
    height: 70px;
    object-fit: cover;
    border-radius: 8px;
    margin-bottom: 0
}

.read-more-box span {
    font-weight: 600;
    line-height: 1.4
}

.article-faq {
    border-radius: clamp(15px, 1.5vw, 20px);
    margin-top: 40px;
    border: 1px #14c784 solid;
    padding: 50px;
    border-radius: 40px;
    background: #ffffff;
}

.accordion h2 {
    font-size: clamp(1.85rem, 1.0631832797427653rem + 2.372347266881029vw, 3.0);
    padding-bottom: 50px;
    margin: 0 auto;
    text-align: center
}
.article-faq .tab {
     
    margin-bottom: 15px;
 
   
}
.tab {
    position: relative;
    margin-bottom: 15px;
    margin-bottom: 0;
    width: 100%;
    height: auto;
}

.tab input {
    position: absolute;
    opacity: 0;
    z-index: -1
}

.tab__content {
    max-height: 0;
    overflow: hidden;
    transition: all .35s
}

.tab input:checked~.tab__content {
    max-height: 13rem;
}

.tab__label,
.tab__close {
    display: flex;
    color: white;
    background: #000;
    cursor: pointer
}

.tab__label {
    padding: clamp(15px, 1.5vw, 25px);
    margin-bottom: 0;
    display: block;
    font-weight: 600;
    font-size: 19px;
    border-radius: 20px;
    background: #f4f6f7;
    color: var(--dark-color);
    line-height: 1.2;
    padding-right: clamp(45px, 2.5vw, 71px);
    font-size: clamp(1.1875rem, 1.0581591639871383rem + 0.12861736334405144vw, 1.3125rem);
}

.spo .tab__label {
    background: #f1f5fb;
    color: var(--dark-color);
}

.tab__label::after {
    content: "+";
    width: 1em;
    height: 1em;
    text-align: center;
    transform: rotate(90deg);
    transition: all .35s;
    background: #000;
    color: var(--bg-white);
    padding: 10px;
    height: clamp(27px, 2.5vw, 45px);
    width: clamp(27px, 2.5vw, 45px);
    font-weight: 300;
    font-size: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 300px;
    display: flex;
    justify-content: center;
    background: var(--bg-white);
    border-radius: 210px;
    background-color: var(--bg-white);
    color: #2d3847;
    box-shadow: -15px -15px 20px rgba(255, 255, 255, .6), 15px 15px 20px rgba(57, 65, 124, .1);
    position: absolute;
    right: 20px;
    top: 15px;
    font-size: clamp(2.1875rem, 2.0407958199356915rem + 0.6430868167202572vw, 2.8125rem);
}

.tab input:checked+.tab__label::after {
    transform: rotate(45deg)
}

.tab__content p {
    margin: 0;
    padding: 1rem;
    font-size: 16px;
    font-size: clamp(1rem, 0.9706591639871383rem + 0.12861736334405144vw, 1.125rem);
}

.tab__close {
    justify-content: flex-end;
    padding: .5rem 1rem;
    font-size: .75rem
}

.tab input:not(:checked)+.tab__label:hover::after {
    animation: bounce .5s infinite
}

@keyframes bounce {
    25% {
        transform: rotate(90deg) translate(.25rem)
    }

    75% {
        transform: rotate(90deg) translate(-.25rem)
    }
}

.short-descr {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.index-header .descr,
.index-header p,
.index-header .text {
    width: 700px;
    font-size: clamp(.8875rem, .7494774919614148rem + .68585209003215437vw, 1.3425rem);
    font-weight: 400;
    text-wrap: pretty;
    z-index: 1;
    position: relative;
    font-weight: 500;
    color: #426a54;
    line-height: 1.5;
}

.index-header.place .descr,
.index-header.place p,
.index-header.place .text {
    width: 640px;
    font-size: clamp(.8875rem, .7494774919614148rem + .68585209003215437vw, 1.3425rem);
    font-weight: 400;
    text-wrap: pretty;
    z-index: 1;
    position: relative;
    font-weight: 500;
    color: #ffffff;
    line-height: 1.4;
}

.combine-h1 {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0;
    align-items: start;
    display: grid;
    grid-template-columns: clamp(300px, 50vw, 900px) 1fr;
    gap: 10px
}

.combine-h1 .search-form {
    height: 50px;
    border: 1px solid #ccc;
    border-radius: 10px;
    padding: 0 7px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background-color: var(--bg-white);
    position: relative;
    padding-left: 60px
}

.combine-h1 svg {
    z-index: 12;
    position: absolute;
    left: 15px
}

.combine-h1 button {
    border: none;
    background: var(--bg-white);
    border-radius: 8px;
    padding: 6px 20px;
    font-weight: 700;
    color: #505050b8;
    font-size: 14px;
    border: 1px #ccc solid
}

.combine-h1 button:hover {
    border: none;
    background: var(--accent-color2);
    border-radius: 8px;
    padding: 6px 20px;
    font-weight: 700;
    color: var(--bg-white);
    font-size: 14px
}

.combine-h1 input {
    border: none;
    width: 100%;
    outline: none
}

.combine-h1 form {
    width: 100%
}

.fast-links-filter {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 30px;
}

.fast-links-filter a {
    all: unset;
    box-sizing: border-box;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 5px 15px;
    font-size: 15px;
    border-radius: 10px;
    cursor: pointer;
    transition: color .25s, box-shadow .25s;
    border: 1px solid var(--seriy-color);
    color: #000;
    white-space: nowrap;
    gap: 5px;
    font-weight: 600;
    color: var(--seriy-color);
}

.fast-links-filter a:hover {
    background-color: #f3f6fb;
    color: var(--dark-color);
}

.fast-links-filter a:hover img {
    filter: invert(51%) sepia(29%) saturate(306%) hue-rotate(192deg) brightness(88%) contrast(89%);
}

.fast-links-filter a img {
    width: 20px;
    transition: color .25s;
    filter: invert(51%) sepia(29%) saturate(306%) hue-rotate(192deg) brightness(88%) contrast(89%);
}

.filter-container {
    padding: 28px;
    background-color: var(--bg-white);
    border-radius: 24px;
    z-index: 1;
    position: -webkit-sticky;
    position: sticky;
    height: -moz-fit-content;
    height: fit-content;
    margin-right: 40px
}

.educational-card__rate {
    grid-gap: 8px;
    display: flex;
    align-items: center;
    font-size: 21px;
    color: #000;
    border-right: 1px #ffc10757 solid;
    padding-right: 10px;
    padding: 0;
    padding-right: 0;
    font-weight: 600;
}

.educational-card__rate img {
    width: 15px;
}

.educational-review {
    grid-gap: 3px;
    display: flex;
    align-items: center;
    font-size: 14px;
    color: var(--bg-white);
    grid-gap: 8px;
    display: flex;
    align-items: center;
    font-size: 14px;
    color: var(--bg-white);
    font-size: 21px;
    font-weight: 600;
    justify-content: center;
    color: #424242;
    padding: 0;
    padding-right: 0;
    line-height: 1;
}

.educational-review img {
    width: 18px;
    filter: invert(51%) sepia(29%) saturate(306%) hue-rotate(192deg) brightness(88%) contrast(89%);
    filter: invert(78%) sepia(72%) saturate(1437%) hue-rotate(349deg) brightness(98%) contrast(106%);
}

.uni-item .title .place-stats {
    width: max-content;
    position: relative;
    inset: unset;
    margin: 0;
    background: var(--block-color);
    padding: 0;
    margin-bottom: 20px;
    margin-top: 15px;
}

.uni-item .title .place-stats .educational-card__rate {
    grid-gap: 8px;
    display: flex;
    align-items: center;
    font-size: 16px;
    color: #000;
    border-right: 1px #ffc10757 solid;
    padding-right: 10px;
    padding: 0;
    padding-right: 0;
    font-weight: 600;
}

.uni-item .title .place-stats .educational-review {
    grid-gap: 3px;
    display: flex;
    align-items: center;
    font-size: 14px;
    color: var(--bg-white);
    grid-gap: 8px;
    display: flex;
    align-items: center;
    font-size: 14px;
    color: var(--bg-white);
    font-size: 16px;
    font-weight: 600;
    justify-content: center;
    color: #424242;
    padding: 0;
    padding-right: 0;
    line-height: 1;
}

.place-stats {
    display: flex;
    flex-direction: row;
    gap: 10px;
    align-items: center;
    margin-bottom: 20px;
    padding: 0 20px;
    border-radius: 15px;
    background: #f6f6f6;
    flex-wrap: wrap;
    margin-top: 0;
    width: max-content;
    margin: 0 auto;
    margin-bottom: 20px;
    position: absolute;
    right: 30px;
    top: 85px;
    padding: 10px 19px;
}

.educational-card__reviews {
    grid-gap: 4px;
    color: #9b9b9b
}

.educational-card__reviews:before {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg width=%2714%27 height=%2714%27 viewBox=%270 0 14 14%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3e%3cpath d=%27M2.48296 9.67961C1.83157 8.58061 1.60372 7.28165 1.84219 6.02656C2.08066 4.77148 2.76904 3.6466 3.77811 2.8631C4.78718 2.0796 6.04754 1.69135 7.32257 1.77126C8.59761 1.85117 9.79963 2.39373 10.703 3.29708C11.6063 4.20043 12.1489 5.40246 12.2288 6.67749C12.3087 7.95253 11.9205 9.21288 11.137 10.222C10.3535 11.231 9.22858 11.9194 7.9735 12.1579C6.71842 12.3963 5.41945 12.1685 4.32046 11.5171V11.5171L2.50484 12.0312C2.43045 12.0529 2.35158 12.0543 2.27649 12.0351C2.20141 12.0159 2.13287 11.9768 2.07807 11.922C2.02326 11.8672 1.98421 11.7987 1.965 11.7236C1.9458 11.6485 1.94714 11.5696 1.9689 11.4952L2.48296 9.67961Z%27 stroke=%27%239B9B9B%27 stroke-width=%271.2%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3e%3c/svg%3e")
}

.program-image {
    background-size: cover;
    height: 125px;
    background-size: contain;
    background-repeat: no-repeat;
    top: -35px;
    left: 50%;
}

.place-section .place-stats {
    display: flex;
    flex-direction: row;
    gap: 10px;
    align-items: center;
    flex-direction: column;
    margin-bottom: 20px;
    margin-top: 10px;
}

.place-section .educational-card__rate:before {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg width=%2714%27 height=%2714%27 viewBox=%270 0 14 14%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3e%3cpath d=%27M7.24105 10.4289L9.9973 12.1789C10.3528 12.4031 10.7903 12.0695 10.6864 11.6594L9.88793 8.52033C9.86633 8.43332 9.86977 8.34198 9.89783 8.25683C9.92589 8.17169 9.97743 8.0962 10.0465 8.03908L12.5184 5.97736C12.841 5.70939 12.677 5.16798 12.2559 5.14064L9.02933 4.93283C8.94129 4.9277 8.85665 4.89705 8.78576 4.8446C8.71486 4.79216 8.66078 4.7202 8.63011 4.63751L7.42699 1.60783C7.39514 1.52027 7.33712 1.44464 7.26081 1.3912C7.1845 1.33775 7.09359 1.30908 7.00042 1.30908C6.90726 1.30908 6.81635 1.33775 6.74004 1.3912C6.66373 1.44464 6.60571 1.52027 6.57386 1.60783L5.37074 4.63751C5.34007 4.7202 5.28599 4.79216 5.21509 4.8446C5.14419 4.89705 5.05956 4.9277 4.97152 4.93283L1.74496 5.14064C1.32386 5.16798 1.1598 5.70939 1.48246 5.97736L3.95433 8.03908C4.02342 8.0962 4.07496 8.17169 4.10302 8.25683C4.13108 8.34198 4.13451 8.43332 4.11292 8.52033L3.37464 11.4297C3.24886 11.9219 3.77386 12.3211 4.19496 12.0531L6.7598 10.4289C6.83172 10.3832 6.91519 10.3589 7.00042 10.3589C7.08566 10.3589 7.16913 10.3832 7.24105 10.4289Z%27 fill=%27%23FFC530%27/%3e%3c/svg%3e")
}

.place-section .educational-card__reviews {
    grid-gap: 4px;
    color: #9b9b9b
}

.place-section .educational-card__reviews:before {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg width=%2714%27 height=%2714%27 viewBox=%270 0 14 14%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3e%3cpath d=%27M2.48296 9.67961C1.83157 8.58061 1.60372 7.28165 1.84219 6.02656C2.08066 4.77148 2.76904 3.6466 3.77811 2.8631C4.78718 2.0796 6.04754 1.69135 7.32257 1.77126C8.59761 1.85117 9.79963 2.39373 10.703 3.29708C11.6063 4.20043 12.1489 5.40246 12.2288 6.67749C12.3087 7.95253 11.9205 9.21288 11.137 10.222C10.3535 11.231 9.22858 11.9194 7.9735 12.1579C6.71842 12.3963 5.41945 12.1685 4.32046 11.5171V11.5171L2.50484 12.0312C2.43045 12.0529 2.35158 12.0543 2.27649 12.0351C2.20141 12.0159 2.13287 11.9768 2.07807 11.922C2.02326 11.8672 1.98421 11.7987 1.965 11.7236C1.9458 11.6485 1.94714 11.5696 1.9689 11.4952L2.48296 9.67961Z%27 stroke=%27%239B9B9B%27 stroke-width=%271.2%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3e%3c/svg%3e")
}

.place-section .educational-card__rate:before,
.educational-card__reviews:before {
    content: "";
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative
}

.place-section .educational-card__rate {
    grid-gap: 10px;
    display: flex;
    align-items: center;
    font-size: 16px;
    color: #737a95;
    padding: 10px;
    background: rgb(223 230 244);
    border-radius: 39px;
    width: 100%;
    font-weight: 700;
    justify-content: center;
}

.place-section .educational-card__rate img {
    width: 15px
}

.university-contacts .container {
    padding: 50px;
    border-radius: 40px;
    background: #f9fafb;
}

.contacts-main {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    background: var(--block-color);
    padding: 28px;
    border-radius: 20px;
    margin-bottom: 48px;
}

.contact-item {
    display: flex;
    gap: 14px;
    font-size: 15px;
    color: #1f2937;
}

.contact-item strong {
    font-size: 17px;
    color: var(--dark-color);
}

.contact-item small {
    display: block;
    margin-top: 4px;
    font-size: 14px;
    color: var(--seriy-color);
    font-weight: 500;
}

.contact-item a {
    color: #2196F3;
    text-decoration: none;
    font-weight: 600;
    font-size: 17px;
}

.contact-item a:hover {
    text-decoration: underline;
}

.icon {
    font-size: 25px;
    line-height: 1;
}

.icon img {
    width: 27px;
    height: 27px;
}

.mega-content .icon img {
    width: 27px;
    height: 27px;
}

.contacts-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.contact-card {
}

.contact-card:hover {
    transform: translateY(-4px);
}

.contact-card h3 {
    font-size: 21px;
    margin-bottom: 16px;
    color: var(--dark-color);
    font-weight: 600;
}

.phone {
    font-weight: 600;
    margin-bottom: 6px;
    color: var(--dark-color);
}

.phone span {
    font-weight: 400;
    color: #6b7280;
    font-size: 14px;
}

.email {
    color: var(--dark-color);
    margin-bottom: 0;
    font-weight: 600;
}

.hint {
    margin-bottom: 18px;
    line-height: 1.5;
    font-size: 14px;
    color: var(--seriy-color);
    font-weight: 500;
}

.contact-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 600;
    color: #2196F3;
    text-decoration: none;
}

.contact-link:hover {
    text-decoration: underline;
}

@media (max-width: 1024px) {
    .contacts-main {
        grid-template-columns: repeat(2, 1fr);
    }

    .contacts-grid {
        grid-template-columns: 1fr;
    }
}

.sub-filter-container {
    display: flex;
    width: 100%;
    justify-content: space-between;
}

.sub-filter-container .search-form form {
    position: relative;
}

.search-form {
    max-width: 100%;
    margin-bottom: 15px;
    flex: 0 0 370px;
    position: relative;
}

.search-form form {
    display: flex;
    align-items: center;
    width: 100%;
    background: #f3f6fb;
    border-radius: 20px;
    padding: 15px 10px 15px 18px;
    border: 1px solid #e5e7eb;
    background: #f3f6fb;
}

.search-icon {
    color: #858ba3;
    margin-right: 0;
    display: flex;
}

.search-form input {
    flex: 1;
    border: none;
    outline: none;
    font-size: 16px;
    color: var(--dark-color);
    background: transparent;
}

.search-form input::placeholder {
    color: #9ca3af;
}

.search-form button {
    background: #dfe6f4;
    border: none;
    font-size: 18px;
    font-weight: 600;
    border-radius: 20px;
    cursor: pointer;
    transition: background .2s ease;
    position: absolute;
    right: 7px;
    height: 46px;
    width: 46px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.search-form button:hover {
    background: #dfe6f4;
}

.search-form form:focus-within {
    border-color: var(--accent-color2);
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .15);
}

.filter-toggle-btn {
    display: none;
    background: var(--accent-color2);
    color: var(--bg-white);
    padding: 10px 14px;
    border-radius: 6px;
    cursor: pointer;
    margin-bottom: 15px
}

.help-pick-btn {
    border-radius: 20px;
    border: none;
    background: #e5e8ed;
    padding: 13px 15px;
    border-radius: 14px;
    font-weight: 700;
    color: #454545;
    font-size: 16px;
    outline: 1px #e5e8ed solid;
    padding: 13px 20px;
    border: none;
    cursor: pointer;
    border-radius: 16px;
    font-weight: 600;
    color: #484747;
    border-radius: 15px;
    text-decoration: none;
    font-weight: 600;
    font-size: 18px;
    align-items: center;
    display: flex;
    gap: 8px;
    line-height: 1;
}

.filter-wrapper {
    margin-bottom: clamp(15px, 2.5vw, 40px);
    position: sticky;
    z-index: 12;
}

.filter-open-btn {
    padding: 10px 16px;
    border-radius: 12px;
    background: #1e40af;
    color: var(--bg-white);
    border: none;
}

.filter-sidebar.active {
    display: block;
}

.filter-mobile-header {
    display: flex;
    justify-content: space-between;
    margin-bottom: 16px;
}

.filter-main-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 12px;
}

.accordion-itemer {
    background: var(--bg-white);
    border-radius: 14px;
}

.accordion-header {}

.accordion-content {
    display: none;
    margin-top: 10px;
}

.accordion-content.open {
    display: block;
}

.spo .filter-indicator {
    margin-right: auto;
    background: #1991ee;
}

.filter-indicator {
    margin-right: auto;
    background: #05b368;
    color: var(--bg-white);
    font-size: 10px;
    padding: 4px;
    border-radius: 5px;
    width: 25px;
    height: 19px;
    justify-content: center;
    align-items: center;
    display: flex;
    color: #fff !important;
    /* margin-left: 8px; */
    flex-shrink: 1;
    position: absolute;
    top: 5px;
    right: 40px;
    line-height: 1;
}

.price-inline {
    background: var(--bg-white);
    padding: 12px;
    border-radius: 14px;
}

.range-inputs {
    display: flex;
    justify-content: space-between;
    font-size: 12px;
}

.accordion-itemer:last-of-type {}

.discount-toggle {
    background: #e5e8ed;
    padding: 13px 15px;
    border-radius: 14px;
    font-weight: 700;
    color: var(--seriy-color);
    font-size: 16px;
    background: #f2f4f6;
    border-radius: 10px;
    font-size: 15px;
    display: flex;
    align-items: center;
    gap: 8px;
    line-height: 1;
    font-weight: 700;
    color: #272727;
}

.discount-toggle label {
    display: flex;
    align-items: center;
}

.filter-actions {}

.selected-list {
    display: flex;
    flex-wrap: wrap;
}

.selected-filters {
    margin-top: 10px;
    font-size: 13px;
    color: #00000080;
    padding-top: 10px;
    padding: 0px 0px;
    padding-bottom: 0;
}

.selected-tag {
    display: inline-block;
    background: #57575712;
    padding: 4px 12px;
    border-radius: 6px;
    margin: 4px 6px 0 0;
    font-weight: 600;
    border: 1px #00000000 solid;
    color: #8b8b8b;
}

.filter-sidebar {
    width: 100%;
    padding: 20px;
    border-radius: 25px;
    z-index: 1;
    position: relative;
    height: -moz-fit-content;
    height: fit-content;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 40px;
}

.filter-sidebar .city-selector-container {
    margin-bottom: 0;
    background: var(--bg-white);
    border-radius: 16px;
    padding: 12px 10px 12px 18px;
    color: var(--seriy-color);
    background: #dfe6f4;
    background: #e5e8ed;
    padding: 10px 15px;
    border-radius: 14px;
    font-weight: 600;
    color: var(--seriy-color);
    font-size: 16px;
    background: #e5e8ed00;
    border-radius: 15px;
    outline: 1px #747a96 solid;
}

.filter-open-btn {
    display: none;
    width: 100%;
    height: 48px;
    border-radius: 15px;
    border: none;
    background: #4338ca00;
    color: #000000;
    font-size: 16px;
    cursor: pointer;
    margin-bottom: 16px;
    border: 1px #000 solid;
    align-items: center;
    font-weight: 600;
}

.filter-sidebar {
    width: 100%;
    background: #f5f6f95e;
    padding: 20px;
    position: relative;
    max-height: 90vh;
    overflow-y: auto;
    gap: 5px;
    justify-content: start;
    margin: 0 auto;
    margin: 0 auto;
    margin-bottom: 0px;
    flex-wrap: nowrap;
    white-space: nowrap;
    width: 100%;
    scrollbar-color: #ffffff00 #ffffff12;
    scroll-behavior: smooth;
    scrollbar-width: thin;
    scrollbar-color: #f7f7f7 #ffffff;
}

.filter-mobile-header {
    display: none;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}

.filter-close-btn {
    background: none;
    border: none;
    font-size: 22px;
    cursor: pointer;
}

/* ==========================
SEARCH FILTER
========================== */
.filter-search-container {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    border-radius: 26px;
    background: #f2f6f8;
    /* box-shadow:
        0 14px 50px rgba(0,0,0,.05),
        inset 0 1px 0 rgba(255,255,255,.8); */
    transition:
        .28s ease;
    padding: 20px 25px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-transform: math-auto;
    margin-bottom: 15px;
    margin-bottom: 15px;
}

.filter-search-container:hover {
    transform: translateY(-2px);
    /* box-shadow:
        0 24px 70px rgba(0,0,0,.08); */
}

.filter-search-container:focus-within {
    border-color: #7bd3ff;
    box-shadow:
        0 0 0 4px rgba(70, 180, 255, .08),
        0 25px 80px rgba(70, 180, 255, .18);
}

.filter-search-container i {
    font-size: 20px;
    transition: .3s;
    line-height: 0;
}

.filter-search-container:focus-within i {
    transform: scale(1.08);
    color: #2ba7ff;
}

.search-input-filter {
    flex: 1;
    width: 100%;
    height: 100%;
    border: none;
    outline: none;
    background: transparent;
    color: var(--text);
    font-size: 17px;
    font-weight: 600;
    padding-right: 10px;
    text-align: left;
    padding: 0px 20px;
}

.search-input-filter::placeholder {
    color: var(--text2);
    opacity: .75;
}

.search-input-filter:-webkit-autofill {
    -webkit-box-shadow:
        0 0 0 1000px transparent inset;
    -webkit-text-fill-color:
        var(--text);
}

@media(max-width:768px) {
    .filter-search-container {
        height: 55px;
        border-radius: 22px;
        padding: 0 18px;
    }

    .search-input-filter {
        font-size: 16px;
    }

    .filter-search-container i {
        font-size: 20px;
    }
}

.filter-main-grid {
    display: grid;
    gap: 12px;
    align-items: end;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.filter-block {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.filter-block label {
    font-size: 14px;
    color: #374151;
}

.filter-block select {
    height: 44px;
    border-radius: 12px;
    border: 1px solid #c7d2fe;
    padding: 0 12px;
    background: var(--bg-white);
}

.filter-more-btn {
    border-radius: 15px;
    border: none;
    background: #f2f6f8;
    font-weight: 600;
    color: #000000;
    font-size: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 17px 20px;
}

.filter-more-btn img {
    width: 25px;
    height: 25px;
}

.filter-extra {
    margin-top: 12px;
    display: grid;
    gap: 12px;
    align-items: end;
}

.accordion-itemer {
    background: var(--bg-white);
    border-radius: 14px;
    margin-bottom: 0;
    overflow: hidden;
}

.accordion-header {}

.accordion-content {
    display: none;
    padding: 14px 16px;
}

.accordion-content.open {
    display: block;
}

.plus {
    font-weight: bold;
}

.range-inputs {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
    font-size: 14px;
}

.range-slider {
    position: relative;
    height: 6px;
    background: #e5e7eb;
    border-radius: 4px;
}

.range-slider input {
    position: absolute;
    width: 100%;
    pointer-events: none;
    appearance: none;
    height: 6px;
    background: none;
}

.range-slider input::-webkit-slider-thumb {
    pointer-events: all;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #4338ca;
    appearance: none;
}

.progress {
    position: absolute;
    height: 6px;
    background: #4338ca;
    border-radius: 4px;
    left: 0;
    right: 0;
}

.accordion-content label {
    display: block;
    margin-bottom: 5px;
    font-size: 15px;
    cursor: pointer;
}

.apply-btn,
.reset-btn {
    flex: 1;
    border-radius: 12px;
    border: none;
    cursor: pointer;
}

.reset-btn {
    background: #e5e7eb;
}

@media (max-width: 992px) {
    .filter-open-btn {
        display: block;
        display: flex;
        justify-content: center;
        gap: 10px;
        align-items: center;
    }.filter-open-btn i{
        line-height:0;
    }

    .filter-sidebar {
        position: fixed;
        top: 0px;
        right: -100%;
        height: 100vh;
        width: 100%;
        max-width: 420px;
        border-radius: 0;
        z-index: 1000;
        overflow-y: auto;
        transition: right .3s ease;
        background: #fff;
        max-height: 100vh;
    }

    .filter-sidebar.active {
        right: 0;
    }

    .filter-mobile-header {
        display: flex;
    }

    .filter-main-grid {
        grid-template-columns: 1fr;
    }
}

.accordion-itemer {
    border-bottom: none;
    flex: 0 0 270px;
    background: #f2f6f8;
    width: 100%;
    transition: .28s ease;

    /* ==========================
SEARCH FILTER
========================== */
    .filter-search-container {
        position: relative;
        display: flex;
        align-items: center;
        width: 100%;
        height: 74px;
        padding: 0 22px;
        border-radius: 26px;
        background:
            linear-gradient(180deg,
                rgba(255, 255, 255, .95),
                rgba(248, 251, 255, .88));
        border: 1px solid rgba(255, 255, 255, .95);
        backdrop-filter: blur(24px);
        box-shadow:
            0 14px 50px rgba(0, 0, 0, .05),
            inset 0 1px 0 rgba(255, 255, 255, .8);
        transition:
            .28s ease;
    }

    .filter-search-container i {
        font-size: 22px;
        color: #56bcff;
        margin-right: 16px;
        transition: .3s;
    }

    .search-input-filter {
        flex: 1;
        width: 100%;
        height: 100%;
        border: none;
        outline: none;
        background: transparent;
        color: var(--text);
        font-size: 17px;
        font-weight: 600;
        padding-right: 10px;
    }

    .search-input-filter::placeholder {
        color: #000;
        opacity: .75;
    }

    .search-input-filter:-webkit-autofill {
        -webkit-box-shadow:
            0 0 0 1000px transparent inset;
        -webkit-text-fill-color:
            var(--text);
    }

    @media(max-width:768px) {
        .filter-search-container {
            height: 66px;
            border-radius: 22px;
            padding: 0 18px;
        }

        .search-input-filter {
            font-size: 16px;
        }

        .filter-search-container i {
            font-size: 20px;
        }
    }

    ;
}

.accordion-header .title-filter {
    font-size: 16px;
    display: flex;
    align-items: center;
    gap: 10px;
    line-height: 1;
    font-weight: 700;
    color: #272727;
}

.accordion-header .title-filter i {
    font-size: 20px;
    line-height: 0;
}

.accordion-header span img {
    width: 20px;
    height: 20px;
    filter: invert(51%) sepia(21%) saturate(407%) hue-rotate(192deg) brightness(90%) contrast(89%);
}

.accordion-header .plus {
    font-weight: 200;
    color: #000000;
    font-size: 42px;
    line-height: 0
}

.accordion-content {
    display: none;
    margin-top: 15px;
    padding-left: 10px;
    position: absolute;
    background: var(--bg-white);
    width: 100%;
    max-width: 280px;
    padding: 15px;
    border-radius: 20px;
    z-index: 2;
    box-shadow: 7px 16px 33px #0000001f;
}

.accordion-content.open {
    display: flex;
    flex-direction: column;
    gap: 0px;
    max-height: 300px;
    overflow-y: auto
}

.accordion-content.open label {
    display: block;
    font-weight: 600;
    display: flex;
    align-items: center;
    text-decoration-color: #edf1fa;
    color: var(--dark-color);
}

/* ==================================
PREMIUM RADIO
================================== */
.accordion-content.open label {
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 13px 18px;
    border-radius: 18px;
    cursor: pointer;
    color: var(--dark-color);
    font-weight: 700;
    background: transparent;
    border: 1px solid transparent;
    transition: .22s;
    line-height: 1.3;
    white-space: normal;
}

.accordion-content.open label:hover {
    background: #f7fbff;
    border-color: #edf4ff;
    transform: translateX(4px);
}

.accordion-content.open input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    width: 24px;
    height: 24px;
    min-width: 24px;
    border-radius: 50%;
    border: 2px solid #cfcfcf;
    background: white;
    position: relative;
    transition: .22s;
    cursor: pointer;
}

.accordion-content.open input[type="radio"]::before {
    content: '';
    position: absolute;
    inset: 4px;
    border-radius: 50%;
    background: #05b368;
    transform: scale(0);
    transition: .22s;
}

.spo .accordion-content.open input[type="radio"]::before {
    content: '';
    position: absolute;
    inset: 4px;
    border-radius: 50%;
    background: #1991ee;
    transform: scale(0);
    transition: .22s;
}

.spo .accordion-content.open input[type="radio"]:checked {
    border-color: #42c974;
    box-shadow: 0 0 0 6px rgb(70 255 118 / 12%);
}
.accordion-content.open input[type="radio"]:checked {
    border-color: #42c974;
    box-shadow: 0 0 0 6px rgb(70 255 118 / 12%);
}
.spo .accordion-content.open input[type="radio"]:checked {
    border-color: #1991ee;
    box-shadow: 0 0 0 6px rgb(70 153 255 / 12%);
}
.accordion-content.open input[type="radio"]:checked::before {
    transform: scale(1);
}

.accordion-content.open label:has(input:checked) {
    background: linear-gradient(90deg, rgba(70, 180, 255, .10), rgb(70 255 84 / 3%));
    border-color: #05b36814;
}

.spo .accordion-content.open label:has(input:checked) {
    background: linear-gradient(90deg, rgba(70, 180, 255, .10), rgb(70 175 255 / 3%));
    border-color: #0533b314;
}

.accordion-content.open label {
    animation: radioFade .18s ease;
}

@keyframes radioFade {
    from {
        opacity: .7;
        transform: translateY(4px);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

.multiple-select {
    width: 100%;
    padding: 8px
}

.price-range {
    display: flex;
    gap: 10px;
    margin: 10px 0
}

.price-range input {
    width: 100%;
    padding: 6px
}

.filter-actions {
    padding: 15px 0;
    display: flex;
    gap: 20px;
    flex-direction: column;
}

.apply-btn {
    flex: 1;
    padding: 13px 26px;
    border: none;
    cursor: pointer;
    border-radius: 16px;
    font-weight: 600;
    text-decoration: none;
    font-weight: 600;
    font-size: 18px;
    color: white;
    /* padding-left: 1.2em; */
    border: none;
    display: flex;
    align-items: center;
    overflow: hidden;
    position: relative;
    cursor: pointer;
    box-shadow: 0 12px 30px rgb(37 235 50 / 35%);
    background: linear-gradient(135deg, #05b368, #247c28);
    color: #ffffff;
    box-shadow: 9px 20px 26px rgb(77 165 54 / 31%);
    text-align: center;
    justify-content: center;
}

.spo .apply-btn {
    background: linear-gradient(135deg, #2badf1, #025ca9);
    color: #ffffff;
    box-shadow: 0 12px 26px rgb(111 189 255 / 25%);
}

.reset-btn {
    flex: 1;
    background: var(--dark-color);
    padding: 13px 20px;
    border: none;
    cursor: pointer;
    border-radius: 15px;
    font-weight: 600;
    color: var(--bg-white);
    background: #f2f6f8;
    color: #0a0a0a;
    border-radius: 15px;
    text-decoration: none;
    font-weight: 600;
    font-size: 18px;
    text-align: center;
    justify-content: center;
}

.sort-block {
    display: flex;
    gap: 15px;
    align-items: center;
    margin-bottom: 5px;
    justify-content: flex-end
}

.sort-block select {
    padding: 14px 0;
    border: none;
    padding-left: 0;
    color: #5c5c5c;
    outline: none;
    background: none;
    font-weight: 600;
    font-size: 16px;
    color: var(--seriy-color);
}

.sort-block label {
    font-weight: 600;
    color: #000;
    font-size: 16px;
    color: var(--seriy-color);
}

.plus {
    font-weight: bold
}

.filter-sidebar input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 20px;
    height: 20px;
    border: 1px solid var(--seriy-color);
    border-radius: 7px;
    cursor: pointer;
    position: relative;
    transition: all .2s ease;
    margin-right: 8px;
    background: #f3f6fb;
    flex-shrink: 0;
}

.spo .filter-sidebar input[type="checkbox"]:checked {
    background: #1991ee;
    border-color: #1991ee;
}

.filter-sidebar input[type="checkbox"]:checked {
    background: #05b368;
    border-color: #05b368;
}

.filter-sidebar input[type="checkbox"]::after {
    content: "";
    position: absolute;
    left: 7px;
    top: 3px;
    width: 5px;
    height: 10px;
    border: solid var(--bg-white);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    opacity: 0;
    transition: opacity .2s ease
}

.filter-sidebar input[type="checkbox"]:checked::after {
    opacity: 1
}
.spo .filter-sidebar label:hover input[type="checkbox"] {
    border-color: #1991ee;
}
.filter-sidebar label:hover input[type="checkbox"] {
    border-color: var(--accent-color2)
}

.filter-search {
    margin-bottom: 10px
}

.filter-search input {
    width: 100%;
    padding: 8px 10px;
    border-radius: 6px;
    border: 1px solid #ccc;
    font-size: 14px;
    font-weight: 600
}

.price-slider-wrap {
    margin-top: 0;
    padding-bottom: 10px
}

.range-inputs {
    display: flex;
    justify-content: space-between;
    margin-bottom: -5px;
    padding-bottom: 10px;
    font-size: 12px;
    font-weight: 700;
    color: var(--seriy-color);
}

.range-slider {
    position: relative;
    height: 3px;
    background: #dfe6f4;
    border-radius: 4px
}

.range-slider input[type="range"] {
    position: absolute;
    width: 100%;
    height: 5px;
    background: transparent;
    pointer-events: none;
    -webkit-appearance: none
}

.range-slider input::-webkit-slider-thumb {
    -webkit-appearance: none;
    height: 14px;
    width: 14px;
    background: var(--seriy-color);
    border-radius: 50%;
    cursor: pointer;
    pointer-events: auto
}

.range-slider .progress {
    position: absolute;
    height: 2px;
    background: var(--seriy-color);
    border-radius: 4px;
    top: 0
}

.place-info .title-directions {
    font-weight: 600;
    font-size: 15px;
    margin-bottom: 10px;
}

.directions-container {
    display: flex;
    flex-wrap: nowrap;
    gap: 15px
}

.directions-wrapper {
    padding-right: 60px;
}

.directions-container .dir-item {
    font-size: 14px;
    padding: 4px 10px;
    border-radius: 30px;
    font-weight: 600;
    color: #000;
    color: var(--seriy-color);
    border-radius: 8px;
    background: #e7e7e7;
    color: #3a3a3a;
    background: #1ddb791f;
    color: #0e8d5d;
    letter-spacing: 0.04em;
}

.spo .directions-container .dir-item {
    background: #d5eaff;
    color: #35a1f4;
}

.directions-container .dir-item.more-btn {
    background: #e4eaf7;
    border: 1px #edebfd solid;
    background: #e4eaf7;
    color: var(--bg-white);
    background: var(--dark-color);
}

.directions-container {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    max-height: 30px;
    overflow: hidden;
    transition: max-height .3s ease
}

.directions-container.expanded {
    max-height: 600px
}

.dir-item {
    font-size: 15px;
    padding: 0 7px;
    white-space: nowrap
}

.more-btn {
    cursor: pointer;
    display: none
}

.directions-container.expanded+.more-btn {
    order: 999
}

.more-btn {
    cursor: pointer;
    display: none;
    flex: 0 0 auto
}

.dir-list {
    display: flex;
    flex-direction: column;
    gap: 7px;
    max-height: 300px;
    overflow-y: auto
}

.program-container {
    display: grid;
    gap: 35px;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    display: grid;
    gap: 35px;
    /* grid-template-columns: repeat(
        auto-fit,
        minmax(260px, 305px)
    ); */
    justify-content: start;
}

.program-container-inner {
    display: grid;
    gap: 20px;
    grid-template-columns: 1fr 1fr;
}

.program-container .program-item,
.program-container-inner .program-item {
    position: relative;
    z-index: 0;
    min-height: 260px;
    border-radius: 35px;
    background-color: #f3f6fb;
    text-decoration: none;
    cursor: pointer;
    padding: 25px 25px;
    display: flex;
    flex-direction: column;
    transition: .2s linear;
    background: #f2f6f8;
}

.spo .program-container .program-item,
.spo .program-container-inner .program-item {
    background: #f1f5fb;
}

.program-container .program-item:hover,
.program-container-inner .program-item:hover {
    transform: translateY(-4px);
    transition: .2s linear;
}

.program-container .program-item:hover .link-arrow,
.program-container-inner .program-item:hover.link-arrow {
    background: #05b368;
    transition: .2s linear;
}

.spo .program-container .program-item:hover .link-arrow,
.spo .program-container-inner .program-item:hover.link-arrow {
    background: #1991ee;
    transition: .2s linear;
}

.program-container .program-item:hover .link-arrow img,
.program-container-inner .program-item:hover.link-arrow img {
    filter: invert(100%) sepia(0%) saturate(2%) hue-rotate(340deg) brightness(104%) contrast(101%);
}

.program-container .program-item .link,
.program-container-inner .program-item .link {
    height: 100%;
    z-index: 0;
    text-decoration: none;
    cursor: pointer;
    display: flex;
    color: inherit;
    display: grid;
    gap: 5px;
    grid-template-columns: 200px 1fr;
    flex-direction: column;
    display: flex;
}

.program-container .title,
.program-container-inner .title {
    font-size: 17px;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-bottom: 0;
    font-weight: 600;
    line-height: 1.2;
    color: var(--dark-color);
    padding-top: 0;
    padding-bottom: 0;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.program-container .title .code,
.program-container-inner .title .code {
    font-size: 13px;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    padding: 4px 10px;
    border-radius: 10px;
    display: block;
    width: max-content;
    margin-bottom: 5px;
    color: var(--bg-white);
}

.program-container .title h3,
.program-container-inner .title h3 {
    font-size: 22px;
    margin-top: 10px;
    flex: 1;
    margin-bottom: 15px;
    font-weight: 600;
}

.program-container .title h3 span,
.program-container-inner .title h3 span {
    font-size: 16px;
    color: var(--seriy-color);
}

.program-container .mini-title,
.program-container-inner .mini-title {
    font-size: 14px;
    margin-bottom: 10px;
    display: block;
    color: var(--dark-color);
}

.program-container p,
.program-container-inner p {
    font-weight: 400;
    font-size: 15px;
    margin-bottom: 15px;
    line-height: 1.3;
    margin-top: 0px;
    color: #000000;
    margin-bottom: 10px;
    flex: 1;
    opacity: .8;
}

.program-container .place-program .place-program-more,
.program-container-inner .place-program .place-program-more {
    font-weight: 600;
    font-size: 14px;
    width: max-content;
    margin-bottom: 0;
    font-weight: 600;
    color: #afbfdf;
    color: var(--seriy-color);
}

.program-container .place-program span,
.program-container-inner .place-program span {
    font-size: 15px;
    width: max-content;
    margin-bottom: 0;
    font-weight: 600;
    display: flex;
    align-items: center;
    font-size: 14px;
    color: var(--seriy-color);
}

.program-container .place-program,
.program-container-inner .place-program {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 0;
    color: var(--dark-color);
}

.program-container .program-item .price-discount,
.program-container-inner .program-item .price-discount {
    color: #47629c8a;
    font-weight: 600;
    text-decoration: line-through;
    font-size: 16px;
}

.program-container .program-item .level,
.program-container-inner .program-item .level {
    padding: 4px 14px;
    width: max-content;
    color: var(--bg-white);
    border-radius: 999px;
    font-size: 14px;
    font-weight: 600;
    padding: 6px 15px;
    width: max-content;
    color: var(--bg-white);
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    color: #343433;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: -.02em;
    backdrop-filter: blur(4px);
    box-shadow: 3px 3px 10px #47474712;
    background: #ffffff8f;
}

.program-container .program-item .place-program img,
.program-container-inner .program-item .place-program img {
    height: 20px;
    margin-right: 5px;
    border-radius: 30px;
}

.program-container .program-item::before,
.program-container-inner .program-item::before {}

.program-container .program-item::after,
.program-container-inner .program-item::after {
    position: absolute;
    z-index: -1;
    bottom: -130px;
    opacity: .6
}

@media(max-width: 768px) {

    .program-container,
    .program-container-inner {
        grid-template-columns: 1fr
    }
}

.place-image {
    height: 400px;
    background-size: cover;
    border-radius: 20px;
    margin-bottom: 30px;
    background-position: center;
}

.place-section__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.place-section__content {
    position: relative;
    z-index: 2;
    width: 100%;
    display: grid;
    grid-template-columns: clamp(300px, 70vw, 940px) 1fr;
    gap: 45px;
}

.place-section__content .order-button_footer {
    width: 100%;
}

.place-section__content .breadcrumb__current span {
    display: initial;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: #737a95;
}

.place-section h1 {
    color: var(--dark-color);
    margin-bottom: 25px;
    line-height: 1.1;
}

.place-section .breadcrumb__link {
    color: #737a95;
}

.place-section .location {
    z-index: 2;
    position: absolute;
    right: 30px;
    top: 30px;
    padding: 10px 20px;
    line-height: 1;
    border: 1px #fff solid;
    border-radius: 40px;
    display: flex;
    align-items: center;
    gap: 5px
}

.place-section .location img {
    filter: brightness(344)
}

.place-links {
    display: flex;
    gap: 15px;
    justify-content: center;
    font-size: 21px;
    color: #373737;
    background: #c8c8c82b;
    padding: 10px 19px;
    align-items: center;
    border-radius: 15px;
    width: max-content;
    position: absolute;
    top: 30px;
    right: 30px;
    line-height: 1;
}

.place-links a img {
    width: 25px;
    height: 25px;
    filter: invert(51%) sepia(29%) saturate(306%) hue-rotate(192deg) brightness(88%) contrast(89%);
}

.place-section .descr,
.place-section .descr p {
    color: var(--dark-color);
    width: 95%;
    font-size: clamp(.8875rem, .7494774919614148rem + .68585209003215437vw, 1.2425rem);
    font-weight: 400;
    text-wrap: pretty;
    z-index: 1;
    position: relative;
    line-height: 1.6;
    font-weight: 500;
    margin-bottom: 30px
}

@media (max-width: 768px) {
    .place-section {
        padding: 40px 15px;
        min-height: 250px
    }

    .place-section h1 {
        font-size: 26px
    }
}

.city-badge {
    display: inline-block;
    background: rgba(255, 255, 255, .15);
    backdrop-filter: blur(4px);
    padding: 6px 14px;
    border-radius: 20px;
    font-size: 14px;
    margin-bottom: 10px;
    border: 1px solid rgba(255, 255, 255, .25)
}

.descr {
    font-size: 17px;
    line-height: 1.65;
    margin-bottom: 25px
}

.toc-toggle-btn {
    background: #ffffff00;
    color: var(--bg-white);
    padding: 10px 18px;
    border-radius: 10px;
    border: none;
    cursor: pointer;
    font-weight: 600;
    margin-bottom: 10px;
    margin-top: 20px;
    display: flex;
    gap: 5px;
    align-items: center
}

.toc-toggle-btn svg {
    width: 26px;
    height: 26px;
    filter: brightness(300.5)
}

.spo .toc-panel {
    background: #f1f5fb;
}

.toc-panel {
    background: #edf8f2;
    color: var(--dark-color);
    width: 100%;
    padding: 0 0;
    border-radius: 20px;
    display: flex;
    gap: 30px;
    z-index: 1;
    margin-bottom: 0;
    margin-top: 0;
    padding: 25px;
    position: sticky;
    top: 120px;
}

.toc-panel.open {
    display: block
}

.toc-title {
    font-size: 22px;
    font-weight: 500;
    margin-bottom: 5px;
    font-size: 19px;
    color: #9198ac;
    margin-top: 0;
    display: flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 10px;
    z-index: 2;
    color: #333;
}

.toc-title span {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.toc-title span {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.toc-title img {
    width: 24px;
}

.toc-list {
    list-style: none;
    padding: 0;
    margin: 0;
    padding-left: 0;
    display: flex;
    gap: 5px;
    margin: 0 auto;
    width: 100%;
    scrollbar-color: #ffffff00 #ffffff12;
    scroll-behavior: smooth;
    scrollbar-width: thin;
    scrollbar-color: #737a95 #dfe6f4;
    margin-left: 0;
    gap: 5px;
    padding-bottom: 10px;
    flex-direction: column;
}

.toc-item {
    margin-bottom: 0;
    display: flex;
    align-items: center;
}

.toc-item a {
    color: #737a95;
    font-size: 16px;
    font-weight: 600;
    padding: 5px 10px;
}

.toc-item a:hover {
    color: var(--accent-color2);
    border-radius: 0;
    color: var(--accent-color2);
}

.toc-h3 {
    margin-left: 15px;
    font-size: 15px
}

.seo-card h3 {
    font-size: 22px;
    font-weight: 600;
    /* flex: 1; */
}

.pre-article p,
.pre-article {
    font-style: italic;
    color: #6a6984;
    font-size: 18px;
    margin-bottom: 30px
}

.place-logo {
    width: 100%;
    border-radius: 40px;
    margin-bottom: 0;
    width: 150px;
    flex-shrink: 0;
    height: auto;
    position: absolute;
    z-index: 2;
    bottom: 50px;
    right: 60px;
}

.swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: revert;
    overflow: inherit;
    list-style: none;
    padding: 0;
    z-index: 1;
    display: block
}

.spo .story-tab.active {
    border-color: #1991ee;
}

.story-tab.active {
    border-color: var(--accent-color2);
}

.stories-content {
    flex: 1;
    position: relative;
}

.story-panel {
    display: none;
    animation: fade .4s ease;
}

.story-panel.active {
    display: block;
}

@keyframes fade {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.story-header h3 {
    font-size: 22px;
    margin-bottom: 15px;
    font-size: clamp(1.375rem, 1.3016479099678457rem + 0.3215434083601286vw, 1.5875rem);
}

.story-place {
    color: #6b7a90;
    font-size: 15px;
    font-weight: 600;
}

.story-blocks {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-top: 30px;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
}

.spo .story-card {
    background: #f1f5fb;
}

.story-card {
    background: var(--block-color);
    padding: clamp(20px, 2vw, 35px);
    border-radius: 25px;
    font-size: 15px;
    line-height: 1.6;
    font-weight: 500;
    font-size: clamp(0.9375rem, 0.8934887459807074rem + 0.19292604501607719vw, 1.125rem);
}

.spo .card-1 {
    background: var(--block-color);
    background: none;
    border: 2px #1991ee solid;
}

.card-1 {
    background: var(--block-color);
    background: none;
    border: 2px var(--accent-color2) solid;
}

.card-2 {
    background: var(--block-color);
    font-weight: 500;
}

.card-3 {
    background: #fff4f4;
}

.card-4 {
    background: #f9f5ff;
}

.story-card:last-child {
    grid-column: 1 / -1;
}

.step-card__text {
    flex: 1;
    display: flex;
    flex-direction: column;
    height: 100%;
}

section.curator {
    margin-bottom: 60px;
    position: relative;
    z-index: 1;
    margin-top: 60px;
    background: #e4eaf7;
    padding: 60px;
}

.curator h2 {
    margin-bottom: 20px;
}

.curator p {
    margin-bottom: 30px;
    font-size: 21px;
    font-weight: 500;
    line-height: 1.4;
    color: var(--seriy-color);
}

.chatbox-name {
    display: flex;
    flex-direction: column;
    color: #2b2f39;
    font-size: 17px;
    line-height: 1.1;
    gap: 5px;
}

.chatbox-name .online {
    font-size: 13px;
    font-weight: 600;
    color: #6b7a90;
}

.chatbox-name-container {
    display: flex;
    gap: 10px;
    position: relative;
}

.chat-container {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.curator-comm {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.curator-comm.right {
    align-items: flex-end;
}

.curator-text {
    padding: 12px 18px;
    border-radius: 20px;
    background: #edf8f2;
    font-size: 15px;
    line-height: 1.4;
    max-width: 340px;
    word-wrap: break-word;
    position: relative;
    min-height: 24px;
    font-weight: 600;
    color: var(--dark-color);
}

.curator-sign {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 10px;
    font-size: 16px;
    font-weight: 600;
}

.curator-comm.right .curator-text {
    background: #e5e8ed8a;
    color: var(--dark-color);
}

.curator-meta {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    opacity: .65;
    margin-top: 6px;
}

.curator-comm.right .curator-meta {
    justify-content: flex-end;
}

.curator-comm:not(.right) .curator-meta {
    justify-content: flex-start;
}

.msg-time {
    white-space: nowrap;
}

.msg-status {
    position: relative;
    width: 18px;
    height: 12px;
}

.msg-status .check {
    position: absolute;
    width: 10px;
    height: 6px;
    border-left: 2px solid #3b82f6;
    border-bottom: 2px solid #3b82f6;
    transform: rotate(-45deg);
    top: 4px;
    left: 0;
}

.msg-status .check.second {
    left: 5px;
    opacity: .8;
}

.curator-comm.right .msg-status .check {
    border-color: #3b82f6;
}

.c-ava {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}

.c-ava img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.chat-scroll {
    overflow-y: auto;
    max-height: 550px;
    display: flex;
    flex-direction: column-reverse;
    gap: 15px;
    height: clamp(350px, 12.5vw, 480px);
    background: #ffffff;
    padding: clamp(25px, 2.5vw, 40px);
    border-radius: 25px;
    background-image: url();
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    box-shadow: 0 20px 40px rgba(36, 54, 79, .08);
    max-height: 500px;
}

.chat-header {
    background-color: #ffffff;
    color: white;
    padding: 18px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    justify-content: space-between;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
}

.chat-header .title {
    font-size: 21px;
    font-weight: 600;
}

.chat-header .status-indicator {
    width: 12px;
    height: 12px;
    background-color: #8BC34A;
    border-radius: 50%;
    box-shadow: 0 0 0px 4px #ffffff;
    position: absolute;
    top: 50px;
    left: 50px;
}

.diploma-section {}

.diploma-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

.diploma-card {
    background: #f8fafc;
    border-radius: 20px;
    padding: clamp(30px, 5.5vw, 100px) 0 clamp(20px, 2.5vw, 40px);
    color: var(--bg-white);
    transition: transform .25s ease, box-shadow .25s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    position: relative;
}

.diploma-icon {
    margin-bottom: 10px;
    position: absolute;
    right: -170px;
    transform: rotate(12deg);
    bottom: -50px;
    filter: grayscale(1);
    opacity: .16;
    transition: .3s linear;
}

.diploma-swiper .swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: auto !important;
    position: relative;
    transition-property: transform;
    display: block;
}

.diploma-card:hover .diploma-icon {
    right: -140px;
    transform: rotate(7deg);
    filter: grayscale(0);
    opacity: .36;
}

.diploma-content {
    z-index: 1;
    padding: 0 clamp(20px, 2.5vw, 45px);
    display: flex;
    flex-direction: column;
    height: 100%;
}

.diploma-icon img {
    width: 350px;
}

.diploma-name {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 14px;
    margin-bottom: clamp(15px, 2.5vw, 25px);
    font-size: 27px;
    font-weight: 500;
    line-height: 1.2;
    color: #000;
    font-size: clamp(1.6875rem, 1.570136655948553rem + 0.5144694533762058vw, 2.0875rem);
}
#diplomaModal .modal-content{
    background:none;
    box-shadow:none;
}

#diplomaModal img{
    max-height:90vh;
    width:auto;
    object-fit:contain;
}
.diploma-desc {
    font-size: 16px;
    line-height: 1.5;
    display: flex;
    flex-direction: column;
    color: #000;
    font-weight: 500;
    height: 100%;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    font-size: clamp(1rem, 0.9706591639871383rem + 0.12861736334405144vw, 1.125rem);
}

.diploma-desc span {
    cursor: pointer;
    width: max-content;
    color: var(--bg-white);
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 5px;
    align-self: flex-start;
    padding: 15px 20px;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
    border-radius: 20px;
    text-decoration: none;
    font-weight: 600;
    font-size: 17px;
    box-shadow: 0 12px 30px rgb(37 235 50 / 35%);
    transition: .25s;
    margin-top: 20px;
    display: flex;
    gap: 10px;
    line-height: 1;
    border: none;
}

.diploma-desc span small {
    color: var(--accent-color2);
    text-decoration: none;
    display: block;
    font-weight: 600;
}

.diploma-nav {
    position: relative;
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
}

.diploma-prev {
    left: 0px;
}

.diploma-next {
    right: 0px;
}

.diploma-prev {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 58px;
    height: 58px;
    background: #ffffffa6;
    border-radius: 50%;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .15);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    font-size: 20px;
    backdrop-filter: blur(3px);
}

.diploma-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 58px;
    height: 58px;
    background: #ffffffa6;
    border-radius: 50%;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .15);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    font-size: 20px;
    backdrop-filter: blur(3px);
}

.diploma-prev:hover,
.diploma-next:hover {
    box-shadow: 0 15px 40px rgba(0, 0, 0, .15);
}

.diploma-prev::before,
.diploma-next::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    border-top: 2px solid #1f2a44;
    border-right: 2px solid #1f2a44;
    transform: translate(-50%, -50%) rotate(45deg);
}

.diploma-prev::before {
    transform: translate(-50%, -50%) rotate(-135deg);
}

.seo-section {
    color: #3b3059;
    position: relative;
    line-height: 1.5;
    font-weight: 500;
    color: var(--seriy-color);
}

.seo-section p {
    font-size: clamp(1.0875rem, .7494774919614148rem + .68585209003215437vw, 1.1425rem);
    color: var(--dark-color);
    line-height: 1.5;
    font-weight: 400;
    color: #000000;
}

.seo-section em {
    font-variant-numeric: lining-nums;
}

.seo-section ol {
    margin-bottom: 1rem;
    counter-reset: section
}

.seo-section ol li {
    list-style: none;
    font-weight: 400;
    font-size: clamp(.8875rem, .7494774919614148rem + .68585209003215437vw, 1.1425rem);
    display: flex;
    counter-increment: section;
    position: relative;
    gap: 15px;
    margin-bottom: 14px;
    align-items: baseline;
    line-height: 1.7;
    font-weight: 400;
    font-size: clamp(1.0875rem, .7494774919614148rem + .68585209003215437vw, 1.1425rem);
    line-height: 1.5;
    font-weight: 400;
    color: #000000;
}

.seo-section a {
    color: var(--main-color);
    font-weight: 500;
    text-decoration: underline;
    text-underline-offset: 4px
}

.seo-section .card-btn {
    color: var(--bg-white);
    font-weight: 500;
    text-decoration: none;
    text-underline-offset: 4px;
    color: var(--bg-white);
    font-weight: 600;
    width: max-content;
}

.beauty-block.seo-section ul li {}

.seo-section ul li {
    list-style: none;
    margin-top: clamp(9px, 0.5vw, 13px);
    align-items: flex-start;
    padding-left: 35px;
    position: relative;
    font-size: clamp(1.0875rem, .7494774919614148rem + .68585209003215437vw, 1.1425rem);
    color: var(--dark-color);
    line-height: 1.5;
    font-weight: 400;
    color: #000000;
}

.seo-section ul li:last-child {
    margin-bottom: clamp(5px, 1.5vw, 25px);
}

.spo .seo-section ul li:before {
    background: #e5edf9;
}

.spo .seo-section ol li:before {
    background: #e5edf9;
    color: #1991ee;
}

.seo-section ul li:before {
    position: relative;
    width: clamp(25px, 2.5vw, 34px);
    height: clamp(25px, 2.5vw, 34px);
    flex-shrink: 0;
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: #76c99a22;
    display: flex;
    justify-content: center;
    align-items: center;
}

.seo-section {
    color: #0f172a;
}

.seo-section {
    font-size: clamp(1.0875rem, .7494774919614148rem + .68585209003215437vw, 1.1425rem);
    color: var(--dark-color);
    line-height: 1.5;
    font-weight: 400;
    color: #000000;
}

.seo-section .container {
    max-width: 1210px;
    margin: 0 auto;
}

.seo-section h3 {
    margin: 40px 0 30px;
    font-weight: 500;
}

.beauty-block.seo-section h3 {
    margin: 0px;
    font-weight: 600;
    margin-bottom: 30px;
}

.beauty-list.seo-section h3 {
    /* margin: 0px; */
    /* font-weight: 600; */
    /* margin-bottom: 30px; */
    /* font-size: 29px; */
}

.seo-section h4 {
    font-weight: 600;
    margin-bottom: clamp(15px, 1.5vw, 25px);
    font-size: clamp(1.375rem, 1.3309887459807075rem + 0.19292604501607719vw, 1.5625rem);
}

.seo-section .title p {
    font-weight: 500;
    font-size: 16px;
    line-height: 1.45;
    margin-top: 10px;
    margin-bottom: 10px;
}

.seo-section strong {
    color: var(--dark-color);
    font-weight: 700;
}

.seo-section i {
    color: #14c784;
    font-style: italic;
    font-weight: 500;
}

.seo-section .popular i {
    color: var(--bg-white);
    font-style: italic;
    font-weight: 500;
}

.seo-section ul,
.seo-section ol {
    margin: 20px 0 clamp(15px, 2.5vw, 30px);
    padding-left: 0;
    gap: 0 30px;
}

.seo-section ul li,
.seo-section ol li {
    position: relative;
    padding-left: clamp(30px, 2.5vw, 45px);
}

.seo-section ul li::after {
    content: "";
    position: absolute;
    left: clamp(10px, 1.5vw, 13px);
    top: clamp(5px, 1.5vw, 10px);
    width: 7px;
    height: 11px;
    border-right: 2px solid #76c99a;
    border-bottom: 2px solid #76c99a;
    transform: rotate(45deg);
}

.spo .seo-section ul li::after {
    content: "";
    border-right: 2px solid #2aacf1;
    border-bottom: 2px solid #2aacf1;
}

.seo-section ol {
    counter-reset: step;
}

.seo-section ol li::before {
    counter-increment: step;
    content: counter(step);
    position: absolute;
    left: 0;
    top: 0;
    width: 32px;
    height: 32px;
    border-radius: 33px;
    background: #00df75;
    color: #14c784;
    font-weight: 500;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    width: clamp(24px, 2.5vw, 29px);
    height: clamp(24px, 2.5vw, 29px);
    flex-shrink: 0;
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: #76c99a22;
    display: flex;
    justify-content: center;
    align-items: center;
}

.seo-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    margin: 48px 0 20px;
    grid-template-columns: repeat(auto-fill, minmax(310px, 1fr));
}

.seo-card {
    justify-content: space-between;
    margin: 0 0 15px;
    flex: 0 0 calc(25% - 16px);
    position: relative;
    font-size: 16px;
    line-height: 1.4;
    font-weight: 500;
    color: var(--bg-white);
    border-radius: 16px;
    padding: clamp(15px, 2.5vw, 30px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
    display: flex;
    flex-direction: column;
    transition: transform 0.3s, box-shadow 0.3s;
    height: 100%;
}

.seo-card .ico {
    margin-bottom: 20px;
}

.seo-card .ico img {
    width: 45px;
}

.seo-card:hover {
    transform: translateY(-6px);
}

.seo-card p {
    font-size: 16px;
    color: #475569;
    margin: 0;
    line-height: 1.6;
    flex: 1;
    color: #000000;
    font-weight: 400;
}

.seo-table {
    width: 100%;
    border-spacing: 0;
    margin: clamp(25px, 2.5vw, 40px) 0 clamp(30px, 2.5vw, 54px);
    background: var(--block-color);
    border-radius: 20px;
    overflow: hidden;
}
.spo .seo-table thead {
    background: #03A9F4;
    color: var(--bg-white);
}
.seo-table thead {
    background: #13cb73;
    color: var(--bg-white);
}

.seo-table th {
    padding: 18px 20px;
    font-size: 20px;
    font-weight: 600;
}

.seo-table td {
    padding: 20px 25px;
    color: var(--dark-color);
    border-bottom: 1px solid #e5e7eb;
    font-size: clamp(.8875rem, .7494774919614148rem + .68585209003215437vw, 1.1425rem);
    font-weight: 500;
}

.seo-table tbody tr:hover {
    background: #f8fafc;
}

.seo-table tbody tr:last-child td {
    border-bottom: none;
}

.seo-table tbody tr:nth-child(even) {
    background: #f8fafc;
}

.seo-table tbody tr:hover {
    background: #eef2f7;
}

.seo-image {
    width: 100%;
    max-height: 460px;
    object-fit: cover;
    border-radius: 28px;
    margin: 56px 0;
    box-shadow: 0 40px 80px rgba(15, 23, 42, .15);
}

.program-section {
    border-radius: 20px;
    padding: 0 0;
    margin-bottom: 40px;
}

@media (max-width: 1024px) {
    .seo-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 560px) {
    .seo-grid {
        grid-template-columns: 1fr;
    }

    .seo-section {}

    .seo-section p {}
}

.seo-spoiler .container {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 24px;
}

.seo-spoiler__content {
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transition: max-height .6s cubic-bezier(.4, 0, .2, 1), opacity .3s ease;
}

.seo-spoiler.open .seo-spoiler__content {
    opacity: 1;
    max-height: 6000px;
}

.seo-spoiler.open .seo-spoiler__toggle svg {
    transform: rotate(180deg);
}

.seo-spoiler__content .seo-block {
    margin-top: 32px;
}

@media (max-width: 560px) {
    .seo-spoiler__toggle {
        font-size: 16px;
        padding: 18px 20px;
    }
}

@media (max-width: 768px) {
    .diploma-nav {
        justify-content: center;
        gap: 20px;
    }
}

@media (max-width: 992px) {
    .diploma-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .diploma-title {
        font-size: 28px;
    }
}

@media only screen and (max-width: 460px) {
    .testimonial-inner .testimonial-heading {
        font-size: 1.813rem;
        line-height: 2.125rem;
    }

    .swiper-slide .swiper-slide--inner {
        flex-direction: column;
        text-align: center;
    }

    .company-details--row {
        justify-content: center;
        flex-direction: column;
    }

    .company-details--row .company-box {
        padding: 0 0;
        margin-bottom: 20px;
        width: 100%;
    }
}

.favorite-block {
    position: absolute;
    width: 25px;
    height: 25px;
    right: 30px;
    top: 30px;
    font-size: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #c6c6c6;
}

.section-subtitle {
    text-align: center;
    margin: 10px auto 40px;
    max-width: 800px;
    line-height: 1.4;
    color: var(--seriy-color);
    font-weight: 500;
    font-size: clamp(1.125rem, 1.0809887459807075rem + .19292604501607719vw, 1.3125rem);
    margin-bottom: clamp(15px, 2.5vw, 40px);
}

.pay-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.pay-card {
    background: #dedede;
    border-radius: 20px;
    padding: 30px;
    cursor: pointer;
    transition: .3s;
    box-shadow: 0 12px 40px rgba(0, 0, 0, .06);
    background: #f3f6fb;
}

.pay-card h3 {
    font-size: clamp(1.4375rem, 1.3641479099678457rem + .3215434083601286vw, 1.35rem);
}

.pay-card p {
    color: var(--seriy-color);
    font-size: 16px;
}

.pay-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 60px rgba(37, 99, 235, .2);
}

.pay-icon {
    font-size: 30px;
}

.pay-more {
    display: inline-block;
    margin-top: 10px;
    color: var(--accent-color2);
    font-weight: 600;
}

.pay-details {
    margin-top: 30px;
    background: #020617;
    color: var(--bg-white);
    padding: 30px;
    border-radius: 24px;
    display: none;
}

.legal-grid,
.guarantees-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.legal-card,
.guarantee {
    background: var(--bg-white);
    padding: 28px;
    border-radius: 24px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, .05);
}

.beauty-block ul {
    margin: 0;
}

.beauty-block {}

.beauty-block p {}

.beauty-block h2 {
    font-size: 35px;
    margin-bottom: 30px;
}

.docs-nav {
    position: sticky;
    top: 0;
    display: flex;
    gap: 18px;
    z-index: 10;
    margin: 0 auto;
    justify-content: center;
}

.docs-nav a {
    text-decoration: none;
    color: #334155;
    font-weight: 500;
    font-size: 19px;
}

.docs-nav .accent {
    color: var(--accent-color2);
    font-weight: 600;
}

.badge {
    margin-bottom: 15px;
    background: var(--accent-color2);
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 600;
}

.muted {
    background: #f1f5f9;
}

.timeline {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 18px;
}

.timeline-step {
    border-radius: 20px;
    padding: 25px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, .06);
    background: #f3f6fb;
}

.timeline-step span {
    font-weight: 700;
    color: var(--accent-color2);
}

.alert-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 16px;
}

.alert-card {
    background: var(--bg-white);
    padding: 18px;
    border-radius: 16px;
}

.cta-btn {
    display: inline-block;
    margin-top: 22px;
    padding: 14px 30px;
    background: #ff4352;
    border-radius: 116px;
    color: var(--bg-white);
    text-decoration: none;
    font-weight: 600;
}

.badge.accent {
    background: #edf8f2;
    color: #5cbe86;
}

.tabs {
    display: flex;
    gap: 10px;
    margin-bottom: 28px;
}

.tab.active {
    background: #020617;
    color: var(--bg-white);
}

.tab-content {
    display: none;
}

.tab-content.active {
    display: block;
}

.connect-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: clamp(15px, 1.5vw, 30px);
    grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
}

.manager-card {
    background: var(--bg-white);
    border-radius: 18px;
    padding: 15px;
    display: flex;
    gap: 14px;
    margin-bottom: 14px;
    border-radius: 20px;
    background: #f3f6fb;
}

.manager-card strong {
    font-size: 20px;
    margin-bottom: 0;
    display: block;
    color: var(--dark-color);
}

.avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--accent-color2);
    color: var(--bg-white);
    display: grid;
    place-items: center;
    font-weight: 600;
}

.manager-tags span {
    font-size: 12px;
    background: #dfe6f4;
    padding: 4px 10px;
    border-radius: 999px;
    margin-right: 6px;
    font-weight: 600;
    background: #e5e8ed;
    padding: 5px 10px;
    font-size: 13px;
    border-radius: 215px;
    cursor: pointer;
    color: #707a8a;
}

.contact-form {
    padding: clamp(20px, 2.5vw, 40px);
    border-radius: clamp(15px, 1.5vw, 20px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, .06);
    background: var(--bg-white);
}
.contact-form small{
    font-size: 13px;
    text-align: center;
    display: block;
    margin-top: 10px;
    line-height: 1.2;
}
.field {
    margin-bottom: 5px;
}

.field label {
    font-size: 13px;
    color: #475569;
    font-weight: 600;
}

.field input,
.field textarea {
    width: 100%;
    padding: 12px 14px;
    border-radius: 14px;
    border: 1px solid #ccced3;
    background: #f3f6fb;
}

.btn-primary {
    background: var(--accent-color2);
    color: var(--bg-white);
    border: none;
    padding: 14px;
    border-radius: 16px;
    width: 100%;
    cursor: pointer;
}

.address-grid,
.legal-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 18px;
}

.address-card,
.legal-card {
    background: var(--bg-white);
    border-radius: 18px;
    padding: 22px;
}

.contacts-accordion {
    padding: 70px 0;
}

.worktime-grid,
.workflow-grid,
.channels-grid,
.trust-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 18px;
}

.workflow-step span {
    display: inline-grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: var(--accent-color2);
    color: var(--bg-white);
    margin-bottom: 10px;
}

.channel.muted {
    opacity: .7;
}

.map-grid {
    display: grid;
    gap: clamp(15px, 1.5vw, 30px);
    grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
}

.map-box iframe {
    width: 100%;
    height: 320px;
    border: none;
    border-radius: 22px;
}

.trust-card i {
    font-size: 26px;
    display: block;
    margin-bottom: 10px;
}

.top-item strong {
    display: block;
    color: var(--dark-color);
    font-size: 18px;
}

.route-link {
    color: #198754;
    text-decoration: none;
    font-weight: 500;
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 5px;
}

.contact-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: clamp(15px, 1.5vw, 20px);
    margin-bottom: clamp(20px, 2.5vw, 35px);
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.contact-card {
    background: var(--block-color);
    border-radius: clamp(15px, 1.5vw, 20px);
    padding: clamp(15px, 2.5vw, 35px);
}

.contact-card h4 {
    margin-bottom: 18px;
    font-size: 19px;
    margin-bottom: 16px;
    color: #747a99;
    font-weight: 600;
}

.contact-row {
    margin-bottom: 15px;
    font-size: 18px;
    color: var(--dark-color);
}

.contact-row span {
    display: block;
    font-size: 14px;
    color: var(--seriy-color);
    font-weight: 600;
    padding-left: 40px;
}

.contact-row strong, .contact-row a {
    display: flex;
    align-items: center;
    gap: 8px; color:#000;
}

.contact-row strong i, .contact-row a i {
    font-size: 16px;
    margin-right: 0;
    background: #d8f0e3;
    padding: 7px;
    display: inline-flex;
    align-items: center;
    width: 33px;
    color: #13ce6d;
    border-radius: 10px;
    height: 33px;
    justify-content: center;
}

.contact-row strong i.red {
    font-size: 16px;
    margin-right: 0;
    background: #f4433629;
    padding: 7px;
    display: inline-flex;
    align-items: center;
    width: 33px;
    color: #F44336;
    border-radius: 10px;
    height: 33px;
    justify-content: center;
}

.contact-row.danger strong {
    color: #ef4444;
}

.requisites {
    margin-top: 50px;
    margin-bottom: 20px;
}

.requisites ul {
    margin: 20px 0;
    line-height: 1.7;
}

.download-btn {
    padding: 12px 22px;
    border-radius: 30px;
    border: none;
    background: #e5e8ed;
    cursor: pointer;
    font-weight: 600;
    color: #000;
}

.flex-1 {
    flex: 1;
}

.accordion {
    justify-content: space-between;
    padding: 10px 15px;
    font-weight: 600;
    font-size: 24px;
    border-radius: 10px;
    background: #f8fafc;
    color: var(--dark-color);
    align-items: center;
}

.accordion-toggle {
    width: 100%;
    background: none;
    border: none;
    padding: clamp(15px, 1.5vw, 20px);
    display: flex;
    justify-content: space-between;
    cursor: pointer;
    font-weight: 500;
    line-height: 1;
    font-size: clamp(1.125rem, 1.0956591639871383rem + 0.12861736334405144vw, 1.25rem);
}

.accordion-body {
    display: none;
    padding-bottom: 20px;
}

.toc-layout {
    display: grid;
    grid-template-columns: 320px 1fr;
    transition: grid-template-columns .35s ease;
    margin: 0 auto;
    margin-bottom: 30px;
}

.spo .toc-title {
    background: #f1f5fb;
}

.toc-title {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    font-weight: 600;
    margin-bottom: 12px;
    position: sticky;
    top: 20px;
    background: #edf8f2;
    padding: 15px 35px;
    border-radius: 10px;
    border-radius: 20px;
}

.toc-collapsed .toc-layout {
    grid-template-columns: 26px 1fr;
}

.toc-collapsed .toc-panel {
    opacity: 0;
    pointer-events: none;
    transform: translateX(-10px);
    height: 0;
    padding: 0;
}

.toc-collapsed .toc-title span {
    display: none;
}

.toc-collapsed .toc-title {
    justify-content: center;
    padding: 10px 0;
    width: 40px;
}

@media (max-width: 1024px) {
    .toc-layout {
        grid-template-columns: 1fr;
    }

    .toc-panel {
        display: none;
    }

    .toc-title {
        display: none;
    }
}

.gallery-wrapper {
    display: grid;
    grid-template-columns: 100px 1fr;
    gap: 20px;
    align-items: stretch;
    margin-bottom: clamp(15px, 2.5vw, 30px);
}

.gallery-main {
    border-radius: 20px;
    overflow: hidden;
    width: 100%;
}

.main-image {
    width: 100%;
    height: 450px;
    background-size: cover;
    background-position: center;
    border-radius: 20px;
    border: 1px #dedede solid;
}

.gallery-thumbs {
    height: 450px;
    width: 100px;
}

.gallery-thumbs .swiper-slide {
    height: auto;
    opacity: .7;
    transition: .3s;
    cursor: pointer;
}

.gallery-thumbs .swiper-slide-thumb-active {
    opacity: 1;
}

.thumb {
    width: 100%;
    height: 100px;
    background-size: cover;
    background-position: center;
    border-radius: 15px;
    border: 2px solid transparent;
    transition: .3s;
    background-repeat: no-repeat;
}

.spo .swiper-slide-thumb-active .thumb {
    border-color: #1991ee;
}

.swiper-slide-thumb-active .thumb {
    border-color: #00df75;
}

.thumb:hover {
    transform: scale(1.03);
}

.curator-desc {
    margin: 16px 0 24px;
    color: #4b5563;
    max-width: 520px;
}

.curator-features {
    display: grid;
    gap: 12px;
    margin-bottom: 24px;
}

.feature {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 15px;
    font-size: clamp(.8875rem, .7494774919614148rem + .68585209003215437vw, 1.1425rem);
    color: var(--dark-color);
    font-weight: 500;
}

.feature img {
    width: 30px;
}

.curator-contacts {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 24px;
}

.contact-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border-radius: 14px;
    background: #edf8f2;
    font-weight: 500;
    transition: .25s;
    margin-bottom: 0px;
    color:#000;
}
.contact-chip img{
    width:20px
}
.spo .contact-chip {
    background: #edf1f8;
}

.contact-chip:hover {
    transform: translateY(-2px);
}

.contact-chip.tg {
    color: #2b2f39;
    font-weight: 600;
    font-size: 15px;
}

.contact-chip.tg img {
    width: 22px;
    filter: invert(61%) sepia(79%) saturate(2467%) hue-rotate(168deg) brightness(88%) contrast(92%);
}

.contact-chip.wa {
    color: #2b2f39;
    font-weight: 600;
    font-size: 15px;
}

.contact-chip.wa img {
    width: 22px;
    filter: invert(72%) sepia(15%) saturate(2100%) hue-rotate(86deg) brightness(90%) contrast(92%);
}

.contact-chip.phone {
    color: #48494a;
    font-weight: 700;
    font-size: 15px;
}

.manager-card {
    display: flex;
    gap: 14px;
    background: var(--block-color);
    padding: 14px 18px;
    border-radius: 18px;
    margin-bottom: 10px;
    width: 100%;
}

.manager-card .avatar {
    width: clamp(55px, 4.5vw, 70px);
    height: clamp(55px, 4.5vw, 70px);
    border-radius: clamp(15px, 1.5vw, 20px);
    object-fit: cover;
    font-size: 40px;
    font-weight: 600;
}

.manager-card .online {
    display: block;
    font-size: 13px;
    color: var(--seriy-color);
    font-weight: 500;
}

.chat-box {
    background: var(--bg-white);
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 10px 70px rgba(0, 0, 0, .1);
}

.status-indicator {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #22c55e;
}

.slider-button {
    font-weight: 600;
    color: inherit;
    text-decoration: none;
    border: none;
    overflow: hidden;
    position: relative;
    display: flex;
    gap: 7px;
    justify-content: center;
    align-items: center;
    transition: .2s;
    text-transform: math-auto;
    font-weight: 600;
    transition: .2s linear;
    border-radius: clamp(5px, 1.5vw, 40px);
    width: max-content;
    cursor: pointer;
    z-index: 1;
    padding: clamp(10px, 1.5vw, 18px) clamp(10px, 1.5vw, 35px);
    line-height: 1;
    color: var(--bg-white);
    background: var(--dark-color);
    margin-top: 30px;
    background-color: transparent;
    color: #1991ee;
    border: 2px solid #1991ee;
    box-shadow: inset 3px 3px 10px rgba(15, 118, 197, .1), 3px 3px 10px rgba(15, 118, 197, .1);
    background-color: #ff4352;
    color: var(--bg-white);
    border: 2px solid transparent;
    box-shadow: 5px 5px 16px rgb(255 67 82 / 25%);
    font-size: 22px;
}

.slider-button img {
    width: 27px;
    filter: invert(100%) sepia(100%) saturate(1%) hue-rotate(20deg) brightness(103%) contrast(101%);
}

.faculty-filters {
    display: flex;
    gap: 10px;
    align-self: flex-start;
    margin-bottom: 30px;
}

.filter-btn {
    padding: 10px 25px;
    border-radius: 30px;
    border: 1px solid #e5e7eb00;
    background: #edf8f2;
    font-size: 16px;
    cursor: pointer;
    transition: .25s;
    font-weight: 600;
    color: #565656;
}

.filter-btn.active,
.filter-btn:hover {
    background: var(--accent-color2);
    color: var(--bg-white);
    border-color: var(--accent-color2);
    background-color: var(--accent-color2);
    color: var(--bg-white);
    box-shadow: 0 12px 30px rgb(30 255 39 / 35%);
}

.tag {
    background: var(--accent-color2);
    color: var(--bg-white);
    font-size: 13px;
    padding: 6px 17px;
    border-radius: 20px;
    background: #dfe6f4;
    color: var(--seriy-color);
    font-weight: 600;
}

.reviews-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.reviews-title {
    display: flex;
    align-items: center;
    gap: 14px;
}

.reviews-title h2 {
    font-size: 28px;
}

.reviews-rating {
    text-align: right;
    display: flex;
    gap: 15px;
    align-items: center;
    font-size: 19px;
}

.rating-value {
    font-size: 17px;
    font-weight: 500;
    display: flex;
    align-items: baseline;
    gap: 10px;
    color: #898989;
    font-weight: 600;
    top: 0;
    right: 0;
    background: #00df75;
    padding: 10px 20px;
    display: inline-flex;
    width: max-content;
    border-radius: 15px;
    background: #42c974;
    vertical-align: bottom;
    flex-shrink: 0;
    height: max-content;
    color: #ffffff;
}

.rating-value h3 {
    font-size: 17px;
    font-weight: 500;
    display: flex;
    align-items: baseline;
    gap: 10px;
    color: #ffffff;
    font-weight: 600;
    margin-bottom: 0px;
}

.rating-stars {
    color: #FFC107;
    font-size: 21px;
}

.rating-count {
    font-size: 14px;
    color: #9196ae;
    position: relative;
    /* top: 0; */
    /* right: 0; */
    background: #00df75;
    padding: 10px 20px;
    display: inline-flex;
    width: max-content;
    color: var(--bg-white);
    border-radius: 15px;
    color: #00df75;
    background: #edf8f2;
    vertical-align: bottom;
    flex-shrink: 0;
    height: max-content;
    display: flex;
    gap: 5px;
    color: #407252;
    margin-top: 10px;
}

.review-item {
    display: flex;
    gap: 10px;
    padding: 25px 25px;
    background: #edf8f2;
    margin-bottom: 15px;
    border-radius: 30px;
}

.review-item:last-child {
    margin-bottom: 0px;
}

.review-avatar {
    width: 50px;
    height: 50px;
    border-radius: 15px;
    background: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px #c7dad0 solid;
}

.review-avatar img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.review-top {
    display: flex;
    gap: 10px;
    align-items: center;
    font-size: 16px;
    flex-wrap: wrap;
}

.review-top time {
    margin-left: auto;
    color: #7a8c82;
    font-size: 13px;
    font-weight: 600;
}

.stars {
    color: #f5b50a;
    font-size: 24px;
}

.review-text {
    margin: 10px 0;
    font-size: 16px;
    line-height: 1.5;
    color: var(--dark-color);
    font-weight: 600;
    margin-top: 0px;
}

.review-text.collapsed {
    max-height: 72px;
    overflow: hidden;
}

.review-more {
    background: none;
    border: none;
    color: #7a8c82;
    font-size: 14px;
    cursor: pointer;
    font-weight: 600;
    padding: 0;
}

.review-actions {
    display: flex;
    gap: 14px;
    margin-top: 8px;
}

.review-actions button {
    background: none;
    border: none;
    color: #6b7280;
    cursor: pointer;
    font-size: 16px;
    font-weight: 500;
}

.reviews-footer {
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
    gap: 20px;
}

.review-body {
    flex: 1;
}

.btn-outline {
    padding: 10px 22px;
    border-radius: 20px;
    background: #dfe6f4;
    color: var(--seriy-color);
    font-weight: 600;
    font-size: 17px;
    padding: 20px 40px;
    border-radius: 20px;
    text-decoration: none;
    font-weight: 600;
    transition: .25s;
    margin-top: 20px;
    align-self: flex-start;
    padding: 20px 40px;
    border-radius: 20px;
    text-decoration: none;
    font-weight: 600;
    font-size: 20px;
    transition: .25s;
    margin-top: 20px;
    display: flex;
    align-items: center;
    max-width: max-content;
    gap: 10px;
    align-items: center;
    justify-content: center;
    line-height: 1;
    border: none;
}

.swiper-pagination-bullet {
    background: var(--bg-white);
}

.typing {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 10px 14px;
    background: #f1f3f7;
    border-radius: 14px;
}

.curator-comm.right .typing {
    background: #e9edff;
}

.typing span {
    width: 6px;
    height: 6px;
    background: #9aa3b2;
    border-radius: 50%;
    animation: blink 1.4s infinite both;
}

.typing span:nth-child(2) {
    animation-delay: .2s
}

.typing span:nth-child(3) {
    animation-delay: .4s
}

@keyframes blink {
    0% {
        opacity: .2;
    }

    20% {
        opacity: 1;
    }

    100% {
        opacity: .2;
    }
}

.curator-text strong {
    color: #3b5bfd;
    font-weight: 600;
}

.curator-text mark {
    background: rgb(30 222 123 / 8%);
    color: #138e4f;
    padding: 2px 6px;
    border-radius: 6px;
}

.docs-slider {
    overflow: hidden;
}

.docs-slider .swiper-slide {
    width: auto;
    box-sizing: border-box;
    height: 100%;
}

.docs-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 20px;
    margin-bottom: 35px;
}

.docs-header h2 {
    font-size: 36px;
    margin: 0;
}

.docs-subtitle {
    margin-bottom: 0;
}

.docs-nav {
    display: flex;
    gap: 10px;
}

.docs-btn {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    border: none;
    background: var(--block-color);
    cursor: pointer;
    position: relative;
}

.docs-btn::after {
    content: '';
    width: 8px;
    height: 8px;
    border-right: 2px solid #1f2937;
    border-bottom: 2px solid #1f2937;
    position: absolute;
    top: 50%;
    left: 50%;
}

.docs-btn.prev::after {
    transform: translate(-30%, -50%) rotate(135deg);
}

.docs-btn.next::after {
    transform: translate(-70%, -50%) rotate(-45deg);
}

.doc-card {
    background: var(--block-color);
    border-radius: 20px;
    padding: 30px;
    display: grid;
    grid-template-columns: 180px 1fr;
    gap: 20px;
    transition: .3s;
    height: 100%;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

.doc-card:hover {
    transform: translateY(-4px);
}

.doc-preview {
    background: #f8fafc;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.doc-preview img {
    max-width: 100%;
    border-radius: 10px;
}

.doc-info {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.doc-title {
    font-weight: 600;
    font-size: 22px;
}

.doc-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    font-size: 16px;
    color: #6b7280;
    font-weight: 600;
    word-break: break-all;
}

.doc-date {
    font-size: 14px;
    color: #374151;
}

.doc-actions {
    display: grid;
    gap: 12px;
    margin-top: auto;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
}

.doc-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    border-radius: 12px;
    font-size: 14px;
    text-decoration: none;
    transition: .2s;
}

.doc-link span {
    font-size: 19px;
    line-height: 1;
}

.doc-link.view {
    background: #e4e4e4;
    color: var(--seriy-color);
    font-weight: 700;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
    text-decoration: none;
    font-weight: 600;
    font-size: 16px;
}

.doc-link.download {
    background: #dfe6f4;
    color: var(--seriy-color);
    font-weight: 500;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
    text-decoration: none;
    font-weight: 600;
    font-size: 16px;
}

.doc-link:hover {
    filter: brightness(.95);
}

.doc-link.view img {
    width: 20px;
    height: 20px;
    filter: invert(51%) sepia(29%) saturate(306%) hue-rotate(192deg) brightness(88%) contrast(89%);
}

.doc-link.download img {
    width: 20px;
    height: 20px;
    filter: invert(51%) sepia(29%) saturate(306%) hue-rotate(192deg) brightness(88%) contrast(89%);
}

.docs-dots {
    margin-top: 25px;
}

.docs-dots .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: #c7d2fe;
    opacity: 1;
}

.docs-dots .swiper-pagination-bullet-active {
    background: #4338ca;
}

.docs-slider {
    overflow: hidden;
}

.docs-slider .swiper-slide {
    min-width: 0;
}

.doc-card {
    min-width: 0;
}

.doc-modal {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: none;
}

.doc-modal.active {
    display: block;
}

.doc-modal__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .6);
}

.doc-modal__content {
    position: relative;
    max-width: 90vw;
    max-height: 90vh;
    margin: auto;
    top: 50%;
    transform: translateY(-50%);
    background: var(--bg-white);
    border-radius: 18px;
    padding: 16px;
    box-shadow: 0 30px 80px rgba(0, 0, 0, .3);
}

.doc-modal__content img {
    max-width: 100%;
    max-height: 80vh;
    display: block;
    margin: 0 auto;
    border-radius: 12px;
}

.doc-modal__close {
    position: absolute;
    top: 10px;
    right: 12px;
    background: none;
    border: none;
    font-size: 28px;
    cursor: pointer;
    line-height: 1;
}

.seo-tags-section {
    margin: 0 0;
}

.seo-tags-header p {
    font-size: 15px;
    color: #6b7280;
}

.seo-tags-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 20px;
}

.seo-tag-card {
    position: relative;
    padding: 20px;
    border-radius: 14px;
    background: var(--bg-white);
    border: 1px solid #e5e7eb;
    text-decoration: none;
    color: #111827;
    transition: all .25s ease;
    display: flex;
    flex-direction: column;
}

.seo-tag-card:hover {
    transform: translateY(-4px);
    border-color: var(--accent-color2);
    box-shadow: 0 10px 24px rgba(0, 0, 0, .06);
}

.seo-tag-meta {
    margin-bottom: 18px;
    margin-top: 10px;
}

.tag-type {
    font-size: 12px;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgb(99 102 241 / 0%);
    color: #6366f1;
    font-weight: 500;
    padding: 4px 14px;
    width: max-content;
    color: var(--bg-white);
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    border: 1px solid #cbcdd6;
    color: var(--dark-color);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: -.02em;
    line-height: 15px;
}

.seo-tag-card h3 {
    font-size: 21px;
    font-weight: 600;
    margin-bottom: 15px;
    line-height: 1.3;
    flex: 1;
    align-items: flex-start;
    gap: 5px;
}

.seo-tag-card h3 img {
    width: 24px;
    margin-right: 8px;
}

.seo-tag-card p {
    font-size: 14px;
    color: #6b7280;
    line-height: 1.4;
}

.choose-university {
    padding: 80px 0;
    background: #f1f5f9;
}

.choose-tabs {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 32px;
}

.choose-tab {
    padding: 12px 20px;
    border-radius: 12px;
    border: 1px solid #e5e7eb;
    background: var(--bg-white);
    cursor: pointer;
    font-weight: 500;
    padding: 12px 25px;
    border-radius: 14px;
    background: #e9eef7;
    border: none;
    cursor: pointer;
    font-weight: 600;
    color: var(--seriy-color);
}

.choose-tab.active {
    background: #111827;
    color: var(--bg-white);
    background: var(--accent-color2);
    color: var(--bg-white);
    border-color: transparent;
    font-weight: 600;
    line-height: 1;
    border-radius: 20px;
    background: #d4e4ff69;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--accent-color2);
    color: var(--bg-white);
    box-shadow: -15px -15px 20px rgba(255, 255, 255, .6), 15px 15px 20px rgba(57, 65, 124, .1);
    box-shadow: 0 12px 30px rgba(30, 155, 255, .35);
}

.choose-content {
    background: #f9fafb;
    border-radius: 20px;
    padding: 32px;
}

.choose-panel {
    display: none;
    animation: fadeUp .3s ease;
}

.choose-panel.active {
    display: block;
}

.choose-list {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

.choose-list li {
    margin-bottom: 12px;
    padding-left: 20px;
    position: relative;
}

.choose-list li::before {
    position: absolute;
    left: 0;
    color: #16a34a;
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.study-compare {
    padding: 60px 0;
    background: #f8fafc;
}

.compare-tabs {
    display: flex;
    gap: 12px;
    margin-bottom: 24px;
}

.compare-tab {
    padding: 12px 25px;
    border-radius: 14px;
    background: #e9eef7;
    border: none;
    cursor: pointer;
    font-weight: 600;
    color: var(--seriy-color);
}

.compare-tab.active {
    border-color: transparent;
    font-weight: 600;
    line-height: 1;
    border-radius: 20px;
    background: #d4e4ff69;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--accent-color2);
    color: var(--bg-white);
    box-shadow: -15px -15px 20px rgba(255, 255, 255, .6), 15px 15px 20px rgba(57, 65, 124, .1);
    box-shadow: 0 12px 30px rgba(30, 155, 255, .35);
}

.compare-panel {
    display: none;
    font-size: 18px;
}

.compare-panel.active {
    display: block;
}

.trust-section {
    padding: 80px 0;
}

.trust-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 24px;
}

.trust-item {
    background: var(--bg-white);
    padding: 35px;
    border-radius: 20px;
    text-align: center;
}

.trust-item strong {
    font-size: 30px;
    display: block;
    font-weight: 600;
}

.uni-grid {
    display: grid;
    gap: 20px;
}

.uni-grid>*:nth-last-child(1):nth-child(odd) {
    grid-column: 1 / -1;
}

.action-filter {
    /* margin-left: auto; */
    display: flex;
    gap: 10px;
}

.hero {
    display: grid;
    grid-template-columns: 2.5fr 1.7fr;
    background: var(--accent-color2);
    border-radius: 20px;
    overflow: hidden;
    color: var(--bg-white);
    min-height: 260px;
    margin-top: 30px;
}

.hero .breadcrumb__current span {
    display: initial;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--bg-white);
}

.hero .breadcrumb__link {
    color: rgb(255 255 255);
    display: flex;
    align-items: center;
    text-decoration-color: #007ea1;
    text-underline-position: under;
}

.hero .breadcrumbs li {
    font-size: 13px;
    font-weight: 500;
    color: #000;
    color: var(--bg-white);
}

.hero-content {
    padding: 45px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 16px;
}

.hero h1 {
    font-size: 65px;
    color: var(--dark-color);
}

.hero p {
    font-size: 22px;
    opacity: .95;
    color: #000;
}

.hero .btn {
    margin-top: 0;
    align-self: flex-start;
    background: #000;
    color: var(--bg-white);
    padding: 12px 26px;
    border-radius: 9px;
    font-weight: 600;
    font-size: 19px;
    text-decoration: none;
}

.hero-image {
    position: relative;
}

.hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-image::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, var(--accent-color2) 0%, rgb(30 175 109 / 70%) 40%, rgb(30 175 42 / 30%) 80%, rgb(128 175 30 / 0%) 100%);
}

@media (max-width: 900px) {
    .hero {
        grid-template-columns: 1fr;
    }

    .hero-image {
        min-height: 220px;
    }
}

.hero-alt {
    margin-top: 0;
    background: #1e3fae;
}

.badge {
    display: inline-block;
    background: rgba(255, 255, 255, .15);
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 700;
    width: fit-content;
}

.wide-card {
    margin-top: 32px;
    background: linear-gradient(135deg, #eef3ff, #fff);
    border-radius: 20px;
    padding: 48px;
}

.wide-card-content h2 {
    font-size: 28px;
    margin-bottom: 12px;
}

.wide-card-content p {
    max-width: 520px;
    color: #4b5563;
}

.features {
    display: flex;
    gap: 16px;
    margin: 20px 0;
    padding: 0;
    list-style: none;
}

.features li {
    background: #e0e7ff;
    color: #1e3a8a;
    padding: 8px 14px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 600;
}

.info-card {
    margin-top: 32px;
    background: #0b0d17;
    color: var(--bg-white);
    border-radius: 20px;
    padding: 48px;
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 32px;
}

.info-text h2 {
    font-size: 39px;
    margin-bottom: 12px;
    color: var(--bg-white);
}

.info-text p {
    color: #c7c9d3;
    max-width: 420px;
}

.info-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.stat {
    border-radius: 16px;
    padding: 0px;
    display: flex;
    justify-content: center;
    flex-direction: column;
}

.stat strong {
    font-size: 28px;
    display: block;
}

.stat span {
    font-size: 14px;
    color: #c7c9d3;
}

@media (max-width: 900px) {
    .info-card {
        grid-template-columns: 1fr;
    }

    .info-stats {
        grid-template-columns: 1fr;
    }

    .features {
        flex-wrap: wrap;
    }
}

.likedislike {
    display: flex;
    gap: 15px;
    align-items: center;
}

.likedislike button {
    background: none;
    border: none;
    color: #373737;
    font-size: 21px;
    padding: 0;
    line-height: 1;
}

.likedislike button.red {
    background: none;
    border: none;
    color: red;
    font-size: 21px;
    line-height: 1;
}

.likedislike button.green {
    background: none;
    border: none;
    color: #4CAF50;
    font-size: 21px;
    line-height: 1;
}

.subtitle-big {
    font-size: 22px;
    text-align: center;
    max-width: 1000px;
    margin: 0 auto;
    font-weight: 600;
    margin-bottom: 40px;
}

.tags-container {
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
    right: 20px;
}

.big-content .program-item {}

.edu-slider-section {
    padding: 0;
    height: 100%;
}

.edu-slide-card {}

.edu-slide-icon {
    margin-bottom: 20px;
    max-width: 320px;
}

.edu-slide-card h3 {
    margin-bottom: 15px;
    font-size: clamp(1.4625rem, 1.359807073954984rem + 0.65016077170418006vw, 1.8rem);
    text-align: center;
    color: var(--bg-white);
    font-weight: 600;
}

.edu-slide-card p {
    font-size: 19px;
    color: #555;
    line-height: 1.4;
    font-size: 16px;
    font-weight: 500;
    margin-top: 0px;
    color: #ffffff;
    text-align: center;
    max-width: 360px;
    margin: 0 auto;
    font-size: clamp(1rem, 0.9706591639871383rem + 0.12861736334405144vw, 1.125rem);
}

.swiper-button-prev,
.swiper-button-next {
    color: #000;
}

.swiper-pagination-bullet {
    background: #000;
    opacity: .3;
}

.swiper-pagination-bullet-active {
    opacity: 1;
}

.eduSwiper {
    height: 100%;
}

.swiper-pagination-bullet-active {
    background: #2b2f33 !important;
}

.two-col-list {
    display: grid;
    gap: 10px 20px;
    list-style: none;
    margin: clamp(35px, 1.5vw, 40px) 0 clamp(35px, 1.5vw, 40px);
    padding: 0;
}

.two-col-list li {
    display: flex;
    align-items: baseline;
    font-weight: 600;
    font-size: clamp(1.0625rem, 1.00382rem + .257235vw, 1.3125rem);
    gap: 10px;
}

.typing::after {
    content: "|";
    margin-left: 5px;
    animation: blink 1s infinite;
}

@keyframes blink {

    0%,
    50%,
    100% {
        opacity: 1;
    }

    25%,
    75% {
        opacity: 0;
    }
}

.diploma-download {
    display: inline-block;
    margin-top: 10px;
    color: #2a6df4;
    cursor: pointer;
    text-decoration: underline;
}

.img-modal {
    position: fixed;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

.img-modal.active {
    display: flex;
}

.img-modal__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .6);
    backdrop-filter: blur(3px);
}

.img-modal__content {
    position: relative;
    max-width: 90%;
    max-height: 90%;
    z-index: 2;
    animation: fadeIn .25s ease;
}

.img-modal__content img {
    max-width: 100%;
    max-height: 90vh;
    border-radius: 10px;
}

@keyframes fadeIn {
    from {
        transform: scale(.9);
        opacity: 0;
    }

    to {
        transform: scale(1);
        opacity: 1;
    }
}

.toc-layout .big-content {
    background-color: var(--bg-white);
    border-radius: 0px;
    padding: 0px;
    border: none;
    padding-top: 10px;
    border-top: 0;
}

.big-content {
    background-color: var(--bg-white);
    border-top: 0;
}

.hero-home-container {
    margin-top: clamp(5px, 1vw, 20px);
    padding: clamp(40px, 5.5vw, 70px);
    background: #f2f4f77a;
    border-radius: clamp(20px, 2.5vw, 40px);
    background-size: cover;
    --nb-w: 450px;
    --nb-h: 0px;
    --nb-r: 40px;
    position: relative;
    background-repeat: no-repeat;
}

.hero-home-container .description {
    line-height: 1.3;
    font-weight: 500;
    color: #000000;
    font-size: clamp(1.375rem, 1.2869774919614148rem + 0.38585209003215437vw, 1.75rem);
    text-align: center;
    justify-content: center;
    max-width: 740px;
    margin: 0 auto;
}

.hero-home-container .text.typing {
    top: 10px;
    right: 10px;
}

.ai-consult {
    position: fixed;
    bottom: 30px;
    right: 20px;
    background: var(--bg-white);
    padding: 10px 28px;
    border-radius: 40px;
    font-weight: 700;
    color: #575757;
    display: flex;
    gap: 10px;
    box-shadow: 0 11px 24px #a3a3a359;
}

#aiTyping {
    display: inline-block;
    min-width: 80px;
}

.ai-bubble {
    position: fixed;
    bottom: 85px;
    right: 30px;
    width: 240px;
    background: #ffffff00;
    border-radius: 20px;
    padding: 20px;
    display: none;
    z-index: 1;
    border-bottom-right-radius: 0;
}

.ai-bubble-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
    font-size: 14px;
    font-weight: 700;
}

.ai-bubble-close {
    background: none;
    border: none;
    font-size: 18px;
    cursor: pointer;
    position: absolute;
    right: 20px;
    top: -10px;
    font-size: 32px;
    line-height: 1;
}

.ai-bubble-message {
    background: var(--block-color);
    padding: 8px 10px;
    border-radius: 10px;
    margin-bottom: 6px;
    font-size: 13px;
    line-height: 1.35;
    display: none;
    opacity: 0;
    transition: opacity .4s ease;
    font-weight: 500;
    text-align: right;
}

.ai-bubble-message.fade-in {
    opacity: 1;
}

.ai-bubble-actions {
    margin-top: 10px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.ai-btn {
    padding: 8px;
    border-radius: 10px;
    border: none;
    background: var(--dark-color);
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    color: var(--bg-white);
}

.ai-btn:hover {
    background: var(--accent-color2);
    color: #000;
}

.typing-dots::after {
    content: " ";
    width: 6px;
    height: 6px;
    display: inline-block;
    border-radius: 50%;
    background: #575757;
    animation: dots 1s infinite ease-in-out;
}

@keyframes dots {
    0% {
        box-shadow: 8px 0 0 #575757, 16px 0 0 #575757;
    }

    33% {
        box-shadow: 8px 0 0 transparent, 16px 0 0 #575757;
    }

    66% {
        box-shadow: 8px 0 0 transparent, 16px 0 0 transparent;
    }

    100% {
        box-shadow: 8px 0 0 #575757, 16px 0 0 transparent;
    }
}

.edu-slider-section .swiper-slide {
    background: var(--block-color);
}

.title-with-link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: clamp(20px, 2.5vw, 30px);
    flex-wrap: wrap;
    gap: 10px;
}

.title-with-link h2,
.title-with-link h3,
.title-with-link h4 {
    margin-bottom: 0;
}

.title-with-link a {
    color: #000;
    display: flex;
    gap: 10px;
    align-items: center;
    font-weight: 600;
    font-size: clamp(0.9375rem, 0.8934887459807074rem + 0.18292604501607719vw, 1.125rem);
}

.title-with-link a img {
    width: clamp(35px, 2.5vw, 44px);
    height: clamp(35px, 2.5vw, 44px);
    background: #e5e8ed;
    padding: clamp(5px, 2.5vw, 10px);
    border-radius: 140px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity .3s;
    background: rgb(255 255 255);
    border: none;
    color: var(--bg-white);
    cursor: pointer;
    border-radius: 30px;
    box-shadow: 0 8px 17px #96969642;
}

.steps-progress {
    width: 100%;
    padding: 0 0;
    background: #ffffff00;
    margin-top: clamp(25px, 3.5vw, 50px);
}

.steps-list {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    position: relative;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0;
    list-style: none;
}

.steps-list::before {
    content: "";
    position: absolute;
    top: 4px;
    left: 0%;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, #00df75, #52c234);
    z-index: 0;
}

.steps-item {
    position: relative;
    width: 18%;
    z-index: 1;
}

.step-dot {
    width: 12px;
    height: 12px;
    background: #fffafa;
    border-radius: 50%;
    margin: 0 auto 30px;
    box-shadow: 0 0 0 3px #00df75;
    transition: transform .3s ease;
}

.steps-item:hover .step-dot {
    transform: scale(1.2);
}

.head {
    font-weight: 600;
    margin-bottom: clamp(5px, 1.5vw, 15px);
    color: var(--dark-color);
    line-height: 1.1;
    font-size: clamp(1.1875rem, 1.1581591639871383rem + 0.12861736334405144vw, 1.3125rem);
}

.location {
    font-size: 16px;
    color: var(--dark-color);
    line-height: 1.4;
    font-weight: 500;
    color: #707a8a;
}

@media (max-width: 900px) {
    .steps-list {
        flex-direction: column;
        align-items: flex-start;
    }

    .steps-list::before {
        top: 0;
        left: 18px;
        width: 3px;
        height: 100%;
    }

    .steps-item {
        width: 100%;
        padding-left: 45px;
        margin-bottom: 20px;
        text-align: left;
    }

    .step-dot {
        position: absolute;
        left: 14px;
        top: 0;
        margin: 0;
    }
}

.card-image {
    border-radius: 30px;
    margin-bottom: 30px;
}

.spo .number {
    background: #40a6f640;
    color: #39a3f5;
}

.number {
    justify-content: center;
    display: flex;
    border-radius: 220px;
    margin-bottom: clamp(10px, 1.5vw, 20px);
    width: clamp(40px, 2.5vw, 55px);
    height: clamp(40px, 2.5vw, 55px);
    background: #1ede7b26;
    color: var(--accent-color2);
    font-weight: 700;
    font-size: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    flex-shrink: 0;
}

.admission-cheatsheet {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 520px;
    background: #f8fafc;
    border-radius: 48px;
    overflow: hidden;
    max-width: 1200px;
    margin: auto;
    align-items: center;
    grid-template-columns: repeat(auto-fit, minmax(420px, 1fr));
}

.admission-cheatsheet-2 {
    display: grid;
    grid-template-columns: 1fr 380px;
    grid-template-rows: 1fr 1fr;
    grid-template-areas:
        "left right-top"
        "left right-bottom";
    min-height: 540px;
    overflow: hidden;
    max-width: 1280px;
    margin: auto;
    gap: 20px;
}

.admission-cheatsheet-2> :nth-child(1) {
    grid-area: left;
    border-radius: 40px;
    background: #f8fafc;
    justify-content: flex-start;
}

.admission-cheatsheet-2> :nth-child(2) {
    grid-area: right-top;
}

.admission-cheatsheet-2> :nth-child(2) img {
    border-radius: 40px;
}

.admission-cheatsheet-2> :nth-child(3) {
    grid-area: right-bottom;
    background: #dedede;
    background: #f8fafc;
    padding: 40px;
    border-radius: 40px;
}
/* =========================
   TABLET
========================= */

@media (max-width: 1100px) {

    .admission-cheatsheet {
        grid-template-columns: 1fr;
        min-height: auto;
    }

    .admission-cheatsheet-2 {

        grid-template-columns: 1fr;

        grid-template-rows: auto;

        grid-template-areas:
            "left"
            "right-top"
            "right-bottom";

        min-height: auto;
    }

}

/* =========================
   MOBILE
========================= */

@media (max-width: 768px) {

    .admission-cheatsheet {

        grid-template-columns: 1fr;

        border-radius: 24px;

        min-height: auto;
    }

    .admission-cheatsheet > * {
        min-width: 0;
    }

    .admission-cheatsheet-2 {

        grid-template-columns: 1fr;

        grid-template-areas:
            "left"
            "right-top"
            "right-bottom";

        gap: 14px;

        min-height: auto;
    }

    .admission-cheatsheet-2 > :nth-child(1),
    .admission-cheatsheet-2 > :nth-child(2) img,
    .admission-cheatsheet-2 > :nth-child(3) {

        border-radius: 24px;
    }

    .admission-cheatsheet-2 > :nth-child(3) {

        padding: 24px;
    }

}

/* =========================
   SMALL MOBILE
========================= */

@media (max-width: 520px) {

    .admission-cheatsheet {border-radius: 18px;grid-template-columns: 1fr;}

    .admission-cheatsheet-2 {

        gap: 10px;
    }

    .admission-cheatsheet-2 > :nth-child(1),
    .admission-cheatsheet-2 > :nth-child(2) img,
    .admission-cheatsheet-2 > :nth-child(3) {

        border-radius: 18px;
    }

    .admission-cheatsheet-2 > :nth-child(3) {

        padding: 18px;
    }

}
.admission-image {
    position: relative;
    height: 100%;
    display: flex;
    padding: clamp(15px, 1.5vw, 30px);
}

.admission-image img {
    width: 100%;
    object-fit: cover;
    border-radius: 40px;
    background: #dee8f1;
    max-height: 450px;
}

.admission-content {
    padding: clamp(25px, 3.5vw, 50px);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.admission-descr {
    line-height: 1.4;
    font-weight: 500;
    font-size: clamp(1.125rem, 1.0809887459807075rem + .19292604501607719vw, 1.6125rem);
    margin-bottom: clamp(15px, 2.5vw, 30px);
    color: #707a8a;
}

.admission-descr p {
    line-height: 1.4;
    font-weight: 500;
    font-size: clamp(1.125rem, 1.0809887459807075rem + .19292604501607719vw, 1.6125rem);
    color: #707a8a;
}

.admission-steps {
    list-style: none;
    padding: 0;
}

.admission-steps li {
    padding-left: 40px;
    color: #1e293b;
    list-style: none;
    font-weight: 500;
    font-size: clamp(.8875rem, .7494774919614148rem + .68585209003215437vw, 1.1425rem);
    display: flex;
    counter-increment: section;
    position: relative;
    gap: 15px;
    margin-bottom: 10px;
    align-items: flex-start;
    margin-top: 15px;
}

.admission-steps li::before {
    position: absolute;
    left: 0;
    top: 2px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: var(--accent-color2)26;
    color: #76c99a;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.place-info-container .admission-btn {
    max-width: 100%;
    width: 100%;
}

.admission-btn {
    align-self: flex-start;
    padding: 20px 40px;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
    border-radius: 20px;
    text-decoration: none;
    font-weight: 600;
    font-size: 18px;
    box-shadow: 0 12px 30px rgb(37 235 50 / 35%);
    transition: .25s;
    margin-top: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
    align-items: center;
    justify-content: center;
    line-height: 1;
    border: none;
}

.admission-btn i {
    line-height: 0
}

.admission-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 40px rgb(29 203 114 / 47%);
}

.step-numb {
    font-size: 20px;
    color: #e5e8ed;
    font-weight: 600;
    line-height: 1;
    margin-bottom: 10px;
    width: clamp(45px, 3.5vw, 60px);
    height: clamp(45px, 3.5vw, 60px);
    display: flex;
    justify-content: center;
    align-items: center;
    background: #e5e8ed;
    padding: 20px;
    border-radius: 20px;
    color: #707a8a52;
    font-size: clamp(1.25rem, 1.1032958199356913rem + 0.6430868167202572vw, 1.875rem);
}

.step-block {
    background: var(--block-color);
    padding: clamp(15px, 2.5vw, 25px);
    opacity: 1;
    z-index: 0;
    width: 100%;
    padding-top: clamp(15px, 2.5vw, 25px);
    display: flex;
    flex-direction: column;
    padding-bottom: clamp(15px, 2.5vw, 25px);
    height: 100%;
    color: var(--bg-white);
}

.step-block h3 {
}

.student-day {
    background: var(--block-color);
    padding: clamp(20px, 3.5vw, 70px);
    color: var(--dark-color);
    border-radius: clamp(25px, 3.5vw, 70px);
}

.student-day__header {
    margin-bottom: clamp(20px, 2.5vw, 50px);
}

.student-day__grid {
    display: grid;
    grid-template-columns: 380px 1fr;
    gap: 50px;
    grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
}

.timeline {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding-left: 30px;
}
.student-day__grid .timeline {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: clamp(5px, 1.5vw, 15px);
    padding-left: clamp(15px, 1.5vw, 30px);
}
.timeline-line {
    position: absolute;
    top: 0;
    left: clamp(24px, 2.5vw, 44px);
    width: 2px;
    height: 100%;
    background: #e3e7ee;
}

.timeline-line-progress {
    width: 100%;
    height: 0;
    background: var(--accent-color2);
    transition: height .35s ease;
}

.timeline-item {
    display: grid;
    grid-template-columns: 20px 1fr;
    align-items: center;
    gap: clamp(10px, 1.5vw, 20px);
    background: none;
    border: none;
    cursor: pointer;
    text-align: left;
}

.timeline-item .time {
    font-weight: 700;
    color: #a4a6aa;
    background: #e5e8ed;
    text-align: center;
    border-radius: 6px;
    padding: 7px;
    font-size: 13px;
}

.timeline-item .dot {
    width: clamp(8px, 1.5vw, 18px);
    height: clamp(8px, 1.5vw, 18px);
    border-radius: 50%;
    background: #e5e8ed;
    border: 2px solid #e5e8ed;
    z-index: 2;
    transition: all .25s ease;
}

.timeline-item.active .dot,
.timeline-item.is-passed .dot {
    background: var(--accent-color2);
    border-color: var(--accent-color2);
}

.timeline-item .label {
    color: #2b2f3396;
    font-weight: 600;
    font-size: 17px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: clamp(1.0625rem, 1.0184887459807075rem + 0.19292604501607719vw, 1.25rem);
}

.timeline-item.active .label {
    font-weight: 600;
    color: var(--dark-color);
}

.day-content {
    background: #e5e8ed;
    border-radius: clamp(15px, 2.5vw, 25px);
    padding: clamp(25px, 2.5vw, 40px);
}

.day-card {
    display: none;
}

.day-card.active {
    display: block;
}

.day-card.active img {
    height: 170px;
    margin-bottom: 20px;
}

.day-card h3 {
    /* font-size: 24px; */
    display: flex;
    align-items: center;
    gap: 15px;
}

.day-card p {
    color: #707a8a;
    line-height: 1.5;
}

.day-content-icon {
    width: clamp(30px, 2.5vw, 40px);
    height: clamp(30px, 2.5vw, 40px);
    border-radius: 30%;
    background: #8d8d8d26;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #a8a8a878;
    line-height: 1;
    opacity: .2;
    font-size: clamp(1rem, 0.9559887459807074rem + 0.19292604501607719vw, 1.1875rem);
}

.timeline-item.active .day-content-icon {
    width: clamp(30px, 2.5vw, 40px);
    height: clamp(30px, 2.5vw, 40px);
    border-radius: 30%;
    background: #8d8d8d26;
    color: var(--bg-white);
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--accent-color2);
    line-height: 1;
    opacity: 1;
    font-size: clamp(1rem, 0.9559887459807074rem + 0.19292604501607719vw, 1.1875rem);
}

.edu-spec__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: clamp(15px, 2.5vw, 40px);
}

.edu-card {
    position: relative;
    background: var(--block-color);
    border-radius: clamp(20px, 3.5vw, 50px);
    padding: clamp(20px, 3.5vw, 50px);
    overflow: hidden;
}

.edu-card .edu-img {
    margin-bottom: 15px;
}

.edu-card--alt {
    background: var(--block-color);
}

.edu-card__badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 16px;
    border-radius: 999px;
    background: rgb(255 255 255);
    color: #404040;
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 24px;
    background: linear-gradient(90deg, #00df75, #52c234);
    color: var(--bg-white);
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: clamp(10px, 1.5vw, 20px);
}

.edu-card__badge img {
    width: 18px;
    height: 18px;
    filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(13deg) brightness(107%) contrast(101%);
}

.edu-card__title {
    /* font-size: 40px; */
    /* line-height: 1.25; */
    /* margin-bottom: 24px; */
    /* color: var(--dark-color); */
}

.edu-card__content {
    /* color: #707a8a; */
    /* font-size: 16px; */
    /* line-height: 1.7; */
}

.edu-card__decor {
    position: absolute;
    right: -180px;
    bottom: -240px;
    width: 620px;
    height: 620px;
    background: radial-gradient(circle, rgba(118, 201, 154, .25) 0%, rgba(118, 201, 154, 0) 70%);
    pointer-events: none;
}

@media (max-width: 992px) {
    .edu-spec__grid {
        grid-template-columns: 1fr;
    }

    .edu-spec__wrap {
        /* padding: 40px; */
        /* border-radius: 40px; */
    }

    .edu-card {
        /* padding: 40px; */
    }
}

.memo-card {
    position: relative;
    background: var(--bg-white);
    border-radius: clamp(20px, 2.5vw, 50px);
    padding: clamp(25px, 2.5vw, 60px);
    margin-bottom: clamp(25px, 3.5vw, 80px);
    box-shadow: 0 30px 80px rgba(0, 0, 0, .05);
}

.memo-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.memo-list li {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    font-size: 20px;
    line-height: 1.5;
    color: var(--dark-color);
    margin-bottom: 18px;
    font-weight: 500;
}

.memo-icon {
    flex-shrink: 0;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #00df75;
    color: var(--bg-white);
    font-size: 14px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.docs-ui h2 {
    color: var(--dark-color);
}

.docs-ui .subtitle {
    color: #707a8a;
    margin-top: 12px;
}

.docs-ui__layout {
    display: grid;
    gap: 30px;
    margin-top: 30px;
    /* align-items: stretch; */
    margin-bottom: 30px;
    grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
}

.docs-ui__tabs {
    display: flex;
    flex-direction: column;
    background: var(--block-color);
    border-radius: 32px;
    padding: 20px;
    height: max-content;
    /* position: sticky; */
    /* top: 140px; */
}

.docs-ui__tab {
    display: flex;
    gap: 18px;
    padding: 22px;
    border-radius: 20px;
    cursor: pointer;
    background: transparent;
    border: none;
    text-align: left;
    transition: .3s;
}

.docs-ui__tab:not(:last-child) {
    margin-bottom: 8px;
}

.docs-ui__tab:hover {
    background: #e5e8ed;
    box-shadow: 0 12px 30px rgb(78 78 78 / 0%);
}

.docs-ui__tab.is-active {
    background: var(--bg-white);
    box-shadow: 0 12px 30px rgb(78 78 78 / 1%);
}

.docs-ui__icon {
    width: 44px;
    height: 44px;
    border-radius: 14px;
    background: var(--block-color);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 41px;
    height: 41px;
    border-radius: 30%;
    background: #8d8d8d26;
    color: var(--bg-white);
    font-size: 21px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    line-height: 1;
    flex-shrink: 0;
    flex: 0 0 41px;
}

.docs-ui__icon svg {
    width: 22px;
    height: 22px;
    fill: #707a8a;
}

.docs-ui__tab.is-active svg {
    fill: #76c99a;
}

.docs-ui__title {
    font-weight: 600;
    color: var(--dark-color);
    font-size: 20px;
    margin-bottom: 6px;
    margin-bottom: 10px;
}

.docs-ui__subtitle {
    font-size: 17px;
    color: #000000;
    margin-top: 4px;
    font-weight: 500;
    line-height: 1.2;
}

.docs-ui__preview {
    position: relative;
}

.docs-ui__image {
    display: none;
    height: 100%;
    position: relative;
}

.docs-ui__image.is-active {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.docs-ui__badge {
    position: absolute;
    top: 24px;
    left: 24px;
    background: rgba(43, 47, 51, .9);
    color: var(--bg-white);
    padding: 8px 14px;
    border-radius: 999px;
    font-size: 13px;
}

.docs-ui__image img {
    width: 100%;
    height: auto;
    border-radius: 32px;
    background: var(--bg-white);
    box-shadow: 0 40px 100px rgba(0, 0, 0, .15);
}

.docs-ui__actions {
    display: flex;
    gap: 16px;
    margin-top: 24px;
}

.docs-ui__actions a{
      color: #ffffff;
    width: max-content;
    background: linear-gradient(135deg, #05b368, #247c28);
    color: #ffffff;
    box-shadow: 9px 20px 26px rgb(77 165 54 / 31%);
    padding: 15px 18px;
    gap: 10px;
    outline: 1px #ffffff3b solid;
    display: flex;
    position: relative;
    overflow: hidden;
    margin-bottom: 0px;
    font-weight: 500;
    border-radius: 40px;
    cursor: pointer;
    gap: 8px;
    align-items: baseline;
    line-height: 1;
}

@media (max-width: 900px) {
    .memo-card {
    }

    .memo-title {
        font-size: 28px;
    }

    .memo-list li {
        font-size: 16px;
    }
}

.docs-cta-box {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: clamp(20px, 2.5vw, 50px);
    background: var(--accent-color2);
    border-radius: 48px;
    padding: 60px;
    background: linear-gradient(286deg, var(--accent-color2), #23b569);
    background-image: url(/img/main-fon.jpg);
    background-size: cover;
    background-position-x: 0;
}

.docs-cta-info h2 {
    color: #ffffff;
}

.docs-cta-info p {
    color: #ffffff;
}

.docs-cta-badge {
    display: inline-block;
    margin-bottom: 16px;
    padding: 8px 16px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 600;
    color: var(--bg-white);
    background: rgb(36 36 36 / 10%);
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
}

.docs-cta-list {
    margin-top: 30px;
    padding: 0;
    list-style: none;
}

.docs-cta-list li {
    font-size: clamp(1.025rem, 0.9809887459807075rem + .19292604501607719vw, 1.4125rem);
    margin-bottom: 15px;
    color: #ffffff;
    display: flex;
    gap: 10px;
    align-items: center;
    font-weight: 500;
}

.docs-cta-list li img {
    width: 26px;
}

.docs-cta-form {
    background: rgb(40 215 121);
    border-radius: 32px;
    padding: clamp(25px, 2.5vw, 50px);
    background: #ffffff;
    border-radius: 40px;
    max-width: 1270px;
    position: relative;
    background-size: cover;
    background-position-x: 0;
}

.docs-cta-form form {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.docs-cta-form .field input,
.docs-cta-form .field select {
    width: 100%;
    height: 56px;
    padding: 0 20px;
    border-radius: 16px;
    border: 1px solid #e2e8f0;
    background: var(--bg-white);
    font-size: 16px;
    outline: none;
}

.docs-cta-form .field input:focus,
.docs-cta-form .field select:focus {
    border-color: #2563eb;
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .15);
}

.cta-btn {
    height: 60px;
    border-radius: 18px;
    border: none;
    font-size: 18px;
    font-weight: 600;
    color: var(--bg-white);
    background: linear-gradient(135deg, var(--accent-color2), var(--accent-color2));
    cursor: pointer;
    transition: transform .15s ease, box-shadow .15s ease;
}

.cta-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 30px rgba(37, 99, 235, .35);
}

.docs-cta-note {
    display: block;
    text-align: center;
    font-size: 14px;
    color: #64748b;
    font-weight: 600;
    margin-top: 5px;
}

@media (max-width: 1024px) {
    .docs-cta-box {
        grid-template-columns: 1fr;
        padding: 20px;
    }

    .docs-cta-info h2 {
        font-size: 36px;
    }
}

.green-bg-icon {
    width: clamp(29px, 2.5vw, 40px);
    height: clamp(29px, 2.5vw, 40px);
    border-radius: 130%;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    font-size: clamp(1rem, 0.9413183279742765rem + 0.2572347266881029vw, 1.25rem);
}

.title-container {
    width: 100%;
    max-height: 100%;
    display: flex;
    margin-bottom: clamp(5px, 2.5vw, 20px);
    height: auto;
    flex-direction: column;
    z-index: 1;
    position: relative;
}

.auto-title {
    word-break: break-word;
    overflow-wrap: break-word;
    hyphens: manual;
    line-height: 1;
    margin: 0;
    word-wrap: break-word;
    letter-spacing: -1px;
    text-wrap: balance;
    white-space: normal;
    word-break: keep-all;
    overflow-wrap: break-word;
    font-weight: 500;
    word-break: normal;
    overflow-wrap: normal;
    margin-bottom: 15px;
    line-height: 1;
    color: #ffffff;
}

.place-layout {
    gap: 30px;
    margin-bottom: 0;
    overflow: hidden;
    border-radius: clamp(30px, 3.5vw, 50px);
    display: grid;
    grid-template-columns: clamp(300px, 50vw, 830px) 1fr;
    gap: clamp(20px, 3.5vw, 40px);
}

.program-layout {
    display: grid;
    grid-template-columns: 1700px;
    gap: 40px;
}

.program-layout .auto-title {
    font-size: 5rem;
    line-height: 1.04;
    margin: 0;
    color: #3c3b51;
    word-wrap: break-word;
    letter-spacing: -1px;
}

.image-place {}

.image-place .image-container {
    position: absolute;
    bottom: 0;
    transform: translate(0%, 0%);
}

.image-place .image-container .image {
    width: 100%;
    height: 100%;
    transform: translateY(0);
    animation: slideIn 1s ease-out forwards;
}

.menu-icon {
    width: 31px;
    height: 31px;
    border-radius: 30%;
    background: #8d8d8d26;
    color: #1fad65;
    font-size: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #1dcb7236;
    line-height: 1;
}

.ege-page {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 20px;
    font-family: Arial, Helvetica, sans-serif;
    color: #1f2937;
}

.ege-section {
    margin-bottom: 80px;
}

.ege-section-light {
    background: #f8fafc;
    padding: 70px;
    border-radius: 65px;
}

.ege-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
}

.ege-card {
    padding: 30px;
    border-radius: 20px;
    background: var(--block-color);
}

.ege-card ul {
    padding-left: 18px;
    margin-bottom: 12px;
}

.ege-card li {
    margin-bottom: 6px;
}

.ege-note {
    font-size: 16px;
    color: #6b7280;
}

.ege-compare {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 24px;
    margin-bottom: 20px;
}

.ege-compare-item {
    background: #f8fafc;
    padding: 35px;
    border-radius: 25px;
}

.ege-hint {
    font-size: 16px;
    color: #374151;
}

.edu-premium {
    padding: 80px 80px;
    background: radial-gradient(800px 400px at 10% 0%, #76c99a22, transparent), radial-gradient(600px 300px at 90% 20%, #76c99a18, transparent), var(--block-color);
    border-radius: 60px;
    border: 1px #14c784 solid;
    padding: 50px;
    border-radius: 40px;
    background: var(--bg-white);
}

.premium-grid {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 32px;
}

.card {
    background: rgb(242 244 247);
    border-radius: clamp(15px, 2.5vw, 30px);
    padding: clamp(15px, 2.5vw, 35px);
    transition: .35s;
    border: none;
}

.card:hover {
    transform: translateY(-6px);
}

.card.image {
    padding: 0;
    overflow: hidden;
}

.card.image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tall {
    grid-column: span 4;
    grid-row: span 2;
}

.wide {
    grid-column: span 8;
}

.card.image:not(.wide):not(.tall) {
    grid-column: span 3;
}

.info {
    grid-column: span 5;
}

.info p {
    color: #707a8a;
}

.metrics {
    display: flex;
    gap: 32px;
    margin-top: 24px;
}

.metrics strong {
    font-size: 26px;
    color: #00df75;
    display: flex;
}

.list {
    grid-column: span 4;
}

.list ul {
    padding-left: 0;
    list-style: none;
}

.list li {
    padding: 8px 0;
    color: #707a8a;
}

.chat {
    grid-column: span 5;
    color: var(--bg-white);
    padding: 0;
}

.chat-header {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0px;
    border-bottom: 1px #dedede solid;
    position: relative;
}

.chat-body {
    display: flex;
    flex-direction: column;
    gap: 12px;
    max-height: 300px;
    overflow-y: scroll;
    padding-right: 20px;
    padding-left: 30px;
    min-height: 300px;
    padding-bottom: 30px;
}

.msg {
    max-width: 75%;
    padding: 10px 14px;
    border-radius: 16px;
    font-size: 14px;
    background: #e5e8ed;
    color: var(--dark-color);
    font-weight: 600;
}

.right {
    color: var(--dark-color);
}

.meta {
    font-size: 12px;
    opacity: .5;
    display: flex;
    align-items: center;
    gap: 6px;
}

.final {
    grid-column: span 12;
    text-align: center;
}

.final h2 {
    font-size: 32px;
    margin-bottom: 32px;
}

.final-features {
    display: flex;
    gap: 32px;
    flex-wrap: wrap;
}

.final-features div {
    display: flex;
    align-items: center;
    gap: 10px;
}

.dot {
    width: 10px;
    height: 10px;
    background: #76c99a;
    border-radius: 50%;
}

.cta {
    display: inline-block;
    padding: 14px 28px;
    background: #00df75;
    color: var(--bg-white);
    border-radius: 999px;
    text-decoration: none;
    font-weight: 700;
}

@media(max-width: 900px) {
    .premium-grid {
        grid-template-columns: 1fr;
    }

    .card {
        grid-column: span 1 !important;
    }
}

.universities-grid {}

.uni-card {
    width: 100%;
    border-radius: 32px;
    overflow: hidden;
    background:
        linear-gradient(180deg,
            #ffffff,
            #f5fff9);
    border:
        1px solid #d8f1e0;
    box-shadow:
        0 12px 40px rgba(16, 185, 129, .08);
    transition: .35s;
    height: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
}

.uni-card:hover {
    transform:
        translateY(-10px);
    box-shadow:
        0 32px 70px rgba(16, 185, 129, .18);
    border-color:
        #9ae6b4;
}

.spo .uni-card {
    width: 100%;
    border-radius: 32px;
    overflow: hidden;
    background: linear-gradient(180deg, #ffffff, #f5f9ff);
    border:
        1px solid #d8f1e0;
    box-shadow: 0 12px 40px rgb(16 112 185 / 8%);
    transition: .35s;
    height: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
}

.spo .uni-card:hover {
    transform:
        translateY(-10px);
    box-shadow: 0 32px 70px rgb(16 117 185 / 18%);
    border-color: #1991ee6b;
}

.uni-cover {
    position: relative;
}

.uni-image {
    position: relative;
    height: 230px;
    border-radius: 28px;
    background-size: cover;
    background-position: center;
    overflow: hidden;
    transform:
        perspective(1000px) rotateX(0) scale(1);
    transition:
        .7s;
    box-shadow:
        0 30px 60px rgba(0, 0, 0, .18);
}

.uni-image::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 20% 20%,
            rgba(255, 255, 255, .55),
            transparent 45%);
    z-index: 2;
}

.uni-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(to top,
            rgba(0, 0, 0, .45),
            transparent 45%);
}

.uni-card:hover .uni-image {
    transform:
        perspective(1000px) rotateX(4deg) scale(1.04);
}

.uni-cover::before {
    content: "";
    position: absolute;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background:
        radial-gradient(rgba(34, 197, 94, .22),
            transparent);
    top: -120px;
    right: -80px;
    filter: blur(60px);
}

.uni-cover::after {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    background:
        radial-gradient(rgba(16, 185, 129, .18),
            transparent);
    bottom: -80px;
    left: -60px;
    filter: blur(50px);
}
.spo .uni-cover::after {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    background: radial-gradient(rgb(16 117 185 / 9%), transparent);
    bottom: -80px;
    left: -60px;
    filter: blur(50px);
}

.uni-image .overlay {
    position: absolute;
    left: 20px;
    bottom: 20px;
    z-index: 5;
    color: white;
}

.uni-meta {
    display: flex;
    gap: 8px;
}

.uni-link {}

.uni-content {
    padding: 25px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    height: 100%;
}

.uni-badges {
    display: flex;
    gap: 0px;
    margin-bottom: 0px;
    position: absolute;
    bottom: 20px;
    left: 20px;
    z-index: 1;
    backdrop-filter: blur(4px);
}

.uni-badges .badge::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 1px;
    background: linear-gradient(150deg, rgba(255, 255, 255, 0.48) 16.73%, rgba(255, 255, 255, 0.08) 30.2%, rgba(255, 255, 255, 0.08) 68.2%, rgba(255, 255, 255, 0.6) 81.89%);
    border-radius: inherit;
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask-composite: xor;
    -webkit-mask-composite: xor;
    pointer-events: none;
}

.uni-badges .badge {
    background: #00000024;
    margin-bottom: 0px;
}

.badge {
    padding: 10px 14px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
    color: white;
    letter-spacing: .03em;
}

.badge-top {
    background:
        linear-gradient(135deg,
            #16a34a,
            #22c55e);
}

.badge-online {
    background:
        linear-gradient(135deg,
            #10b981,
            #34d399);
}
.meta-chip i{
    line-height: 1;
    font-size: 17px;
}
.meta-chip {
    background:
        linear-gradient(135deg,
            #ecfdf5,
            #f0fdf4);
    color: #166534;
    padding: 10px 16px;
    border-radius: 18px;
    font-weight: 600;
    font-size: 14px;
    align-items: center;
    display: flex;
    gap: 5px;
    justify-content: center;
}

.spo .meta-chip {
    background: linear-gradient(135deg, #ecf6fd, #f0f6fd);
    color: #1991ee;
    padding: 10px 16px;
    border-radius: 18px;
    font-weight: 600;
    font-size: 14px;
}

.uni-link h3 {
    font-size: 25px;
    line-height: 1.15;
    margin: 0;
    font-weight: 600;
}

.uni-link p {
    margin-top: 15px;
    line-height: 1.5;
    font-size: 15px;
    font-weight: 500;
    opacity: .9;
}

.dirs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.dirs span {
    padding: 5px 16px;
    border-radius: 999px;
    background:
        linear-gradient(135deg,
            #dcfce7,
            #ecfdf5);
    color: #15803d;
    font-size: 13px;
    font-weight: 700;
}

.spo .dirs span {
    padding: 5px 16px;
    border-radius: 999px;
    background: linear-gradient(135deg, #dcf1fc, #ecf4fd);
    color: #1991ee;
    font-size: 13px;
    font-weight: 700;
}
.uni-footer {
    
    justify-content: space-between;
    align-items: center;
    margin-top: auto;
    width: 100%;
}

.price-card {
    padding: 17px;
    border-radius: 28px;
    background:
        linear-gradient(135deg,
            #f0fff6,
            #ffffff);
    border:
        1px solid #d7f5e0;
    box-shadow:
        0 20px 50px rgba(34, 197, 94, .10);
    position: relative;
    overflow: hidden;
}

.spo .price-card {
    padding: 17px;
    border-radius: 28px;
    background: linear-gradient(135deg, #f0f4ff, #ffffff);
    border: 1px solid #d7e4f5;
    box-shadow: 0 20px 50px rgb(34 92 197 / 10%);
    position: relative;
    overflow: hidden;
    /* flex: 1; */
}

.price-card::before {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    top: -90px;
    right: -70px;
    border-radius: 50%;
    background:
        radial-gradient(rgba(34, 197, 94, .18),
            transparent);
    filter: blur(10px);
}

.spo .price-card::before {
    content: "";
    background: radial-gradient(rgb(34 102 197 / 18%), transparent);
}

.price-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.price-label {
    font-size: 13px;
    color: #5c7868;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.spo .price-label {
    color: #5c6878;
}

.price-badge {
    padding: 8px 8px;
    border-radius: 999px;
    background: #dcfce7;
    color: #15803d;
    font-weight: 800;
    font-size: 12px;
}

.spo .price-badge {
    background: #dce9fc;
    color: #155d80;
}

.price-value {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 8px;
}

.currency {
    font-size: 25px;
    color: #16a34a;
    font-weight: 600;
    margin-top: 6px;
}

.spo .currency {
    color: #1991ee;
}

.price-value strong {
    font-size: 37px;
    line-height: 1;
    font-weight: 600;
    color: #16a34a;
    letter-spacing: -.04em;
}

.spo .price-value strong {
    color: #1991ee;
}

.price-bottom {
    display: flex;
    align-items: center;
    gap: 4px;
    color: #668373;
    font-size: 10px;
    font-weight: 600;
}

.spo .price-bottom {
    color: #667883;
}

.divider {
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: #22c55e;
}

.spo .divider {
    background: #2298c5;
}

.uni-card:hover .price-card {
    transform:
        translateY(-2px);
    transition: .35s;
    box-shadow:
        0 30px 70px rgba(34, 197, 94, .16);
}

.spo .uni-card:hover .price-card {
    transform:
        translateY(-2px);
    transition: .35s;
    box-shadow: 0 30px 70px rgb(34 137 197 / 16%);
}
.open-btn {
    height: 50px;
    padding: 0 26px;
    border-radius: 18px;
    text-decoration: none;
    color: white;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    background:
        linear-gradient(135deg,
            #059669,
            #22c55e);
    box-shadow:
        0 16px 40px rgba(5, 150, 105, .28);
    transition: .3s;
}

.open-btn:hover {
    transform:
        translateY(-3px);
    box-shadow:
        0 24px 60px rgba(5, 150, 105, .35);
}

@media(max-width:768px) {
    .universities-grid {
        grid-template-columns: 1fr;
    }
}

.legal-offer-section {
    padding: 80px 20px;
    display: flex;
    justify-content: center;
}

.legal-offer-card {
    max-width: 820px;
    width: 100%;
    display: grid;
    grid-template-columns: 40px 1fr;
    gap: 32px;
    padding: 40px;
    border-radius: 32px;
    background: rgb(242 244 247);
    -webkit-backdrop-filter: blur(18px);
    transition: transform .3s ease, box-shadow .3s ease;
}

.legal-offer-card:hover {
    transform: translateY(-4px);
}

.legal-offer-icon {
    width: 80px;
    height: 80px;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 36px;
    background: linear-gradient(135deg, #e0e7ff, #f8fafc);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .6);
}

.legal-offer-content h3 {
    margin-bottom: 12px;
    color: #0f172a;
}

.legal-offer-content p {
    font-size: 16px;
    line-height: 1.6;
    color: #475569;
    margin-bottom: 20px;
}

.legal-offer-list {
    list-style: none;
    padding: 0;
    margin: 0 0 28px;
    display: grid;
    gap: 8px;
}

.legal-offer-list li {
    font-size: 14px;
    color: #334155;
}

.legal-offer-actions {
    display: flex;
    align-items: center;
    gap: 16px;
}

.btn-download {
    padding: 14px 28px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--accent-color2), #1cc56e);
    color: var(--bg-white);
    font-weight: 600;
    text-decoration: none;
    box-shadow: 0 12px 24px rgba(79, 70, 229, .35);
    transition: transform .25s ease, box-shadow .25s ease;
    box-shadow: 0 18px 36px rgb(29 209 117 / 30%);
}

.btn-download:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 36px rgb(29 209 117 / 30%);
}

.file-meta {
    font-size: 13px;
    color: #64748b;
}

.education-process {
    background-color: #f2f6f8;
    border-radius: clamp(15px, 2.5vw, 30px);
    padding: clamp(20px, 3.5vw, 60px);
}

.section-head {
    margin-bottom: 64px;
}

.section-head p {
    color: #000000;
}

.process-layout {
    grid-template-columns: 340px 1fr;
    gap: 40px;
}

.process-steps {
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex-direction: row;
    margin-bottom: 30px;
    /* padding: clamp(0px, 1vw, 0px) clamp(8px, 2.5vw, 15px); */
    margin: 0 auto;
    overflow-x: auto;
    flex-wrap: nowrap;
    white-space: nowrap;
    width: 100%;
    scrollbar-color: #ffffff00 #ffffff12;
    scroll-behavior: smooth;
    scrollbar-width: none;
    scrollbar-color: #f7f7f7 #ffffff;
    margin-bottom: clamp(15px, 2.5vw, 30px);
}

.step {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: clamp(15px, 1.5vw, 20px);
    border-radius: 20px;
    background: var(--bg-white);
    cursor: pointer;
    transition: all .25s ease;
    font-size: 18px;
    font-weight: 600;
    text-align: left;
    box-shadow: 7px 11px 20px #dedede59;
    border: none;
}

.step:hover {
    transform: translateX(4px);
}

.spo .step.active {
    background: linear-gradient(135deg, #60b56d, #27d879);
    color: var(--bg-white);
    border-color: transparent;
    font-size: 18px;
    font-weight: 600;
    background: linear-gradient(135deg, #63bbff, #1991ee);
}

.step.active {
    background: linear-gradient(135deg, #60b56d, #27d879);
    color: var(--bg-white);
    border-color: transparent;
    font-size: 18px;
    font-weight: 600;
}

.step-num {
    font-weight: 700;
    opacity: .6;
}

.process-content {
    background: var(--bg-white);
    border-radius: 30px;
    padding: clamp(25px, 2.5vw, 50px);
    box-shadow: 0 30px 60px rgba(0, 0, 0, .08);
}

.content-item {
    display: none;
    animation: fadeIn .4s ease;
}

.content-item.active {
    display: block;
}

.content-item h3 {
    margin-top: 0px;
}

.content-item li {
    font-size: 15px;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(6px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.career-track {
    padding: 90px;
    background: var(--block-color);
    color: var(--bg-white);
    border-radius: 170px;
    background-size: cover;
    padding-top: 140px;
    background-image: url(/img/how.png);
    background-size: cover;
    background-position-x: 0;
}

.career-timeline {
    position: relative;
    max-width: 720px;
    margin: 80px auto 0;
}

.career-timeline::before {
    content: '';
    position: absolute;
    left: 13px;
    top: 0;
    bottom: 0;
    width: 2px;
    background: linear-gradient(180deg, var(--accent-color2), transparent);
}

.career-step {
    position: relative;
    display: flex;
}

.career-dot {
    width: 27px;
    height: 27px;
    background: var(--accent-color2);
    border-radius: 50%;
    box-shadow: 0 0 0 9px rgb(30 222 123 / 8%);
    flex-shrink: 0;
}

.career-card {
    background: rgb(255 255 255);
    border-radius: 25px;
    padding: 35px 30px;
    backdrop-filter: blur(9px);
    transition: transform .3s ease;
    box-shadow: 0 30px 60px rgba(0, 0, 0, .08);
}

.career-card:hover {
    transform: translateX(6px);
}

.career-card h4 {
    font-size: 26px;
    margin-bottom: 10px;
    color: #000;
}

.career-card p {
    font-size: 18px;
    color: #000;
    margin-bottom: 12px;
}

.career-card span {
    font-size: 15px;
    border: 1px #00000000 solid;
    padding: 5px 10px;
    border-radius: 10px;
    color: var(--bg-white);
    font-weight: 600;
    background: #00c66a;
    box-shadow: -15px -15px 20px rgb(255 255 255), 15px 15px 20px rgb(30 222 123 / 31%);
}

@media (max-width: 900px) {
    .process-layout {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .legal-offer-card {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .legal-offer-icon {
        margin: 0 auto;
    }

    .legal-offer-actions {
        justify-content: center;
        flex-wrap: wrap;
    }
}

.selected-filters {
    display: none;
    margin-top: 10px;
}

.selected-filters.active {
    display: block;
    padding-bottom: 20px;
}

.iti--separate-dial-code .iti__selected-flag {
    background-color: rgb(243 246 251 / 0%) !important;
    padding-left: 15px;
}

.iti--allow-dropdown .iti__flag-container:hover {
    background-color: rgb(243 246 251 / 0%) !important;
}

.toc-layout .section-inner-place {
    border: none;
}

.section-inner-place {
    margin-top: 0;
    padding: 50px 50px;
    background: #f9fafb;
    border-radius: 30px;
    background-color: var(--bg-white);
    border-radius: clamp(30px, 3.5vw, 50px);
    padding: clamp(30px, 3.5vw, 50px);
    border: 1px #d1d5da solid;
}

.section-inner-place:last-child {
    margin-bottom: 0;
}

.spo .toc-list a.active {
    border-left: 3px solid #1991ee;
    color: #1991ee;
}

.toc-list a.active {
    border-left: 3px solid #11ac5c;
    border-radius: 0;
    color: #12b661;
    padding-left: 10px;
}

.spo .bc {
    /* background: #0b7cba; */
}

.spo .place-center-column .bc {
    background: #f1f8fe;
    max-width: clamp(135px, 16.5vw, 310px);
}

.spo .place-center-column .bc .breadcrumb__link {
    color: #2486cb;
}

.spo .place-center-column .bc .breadcrumbs li {
    color: #000;
}

.spo .place-center-column .bc .breadcrumb__current span {
    color: #2486cb;
}

.place-center-column .bc {
    background: #eaf7f4;
    max-width: clamp(135px, 16.5vw, 310px);
    border: none;
}

.place-center-column .bc .breadcrumb__link {
    color: #05b368;
}

.place-center-column .bc .breadcrumbs li {
    color: #05b368;
}

.place-center-column .bc .breadcrumb__current span {
    color: #05b368;
}

.bc {
    display: flex;
    white-space: nowrap;
    text-align: center;
    align-items: center;
    padding: clamp(5px, 1.5vw, 16px) clamp(15px, 1.5vw, 30px);
    /* background: #079452; */
    position: relative;
    z-index: 1;
    max-width: clamp(128px, 11.5vw, 242px);
    border-radius: clamp(19px, 2.5vw, 30px);
    position: absolute;
    right: 10px;
    margin: 0 auto;
    margin-bottom: 20px;
    overflow-x: auto;
    flex-wrap: nowrap;
    white-space: nowrap;
    scrollbar-color: #ffffff00 #ffffff12;
    scroll-behavior: smooth;
    scrollbar-width: none;
    scrollbar-color: #f7f7f7 #ffffff;
    z-index: 6;
    font-size: 13px;
    height: clamp(27px, 2.5vw, 60px);
    border: 1px #000 solid;
}

.bg-image {
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: 3;
    background: url(/img/how.png);
    left: 0;
}

.seo-tags-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 20px;
}

.tag-card {
    background: white;
    padding: .7em;
    border-radius: 12px;
    text-decoration: none;
    display: block;
    transition: .25s;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .05);
    position: relative;
}

.tag-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, .08);
}

.tag-card-image img {
    width: 100%;
    height: 160px;
    object-fit: cover;
    border-radius: 8px;
}

.tag-category {
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 700;
    color: var(--dark-color);
    padding: 10px 7px 0;
}

.tag-heading {
    font-weight: 600;
    color: #585757;
    padding: 9px;
    font-size: 14px;
}

.tag-author {
    color: gray;
    font-weight: 400;
    font-size: 13px;
    padding-top: 20px;
    display: flex;
    gap: 10px;
    font-weight: 600;
    color: #4CAF50;
    text-decoration: underline;
}

.tag-name {
    font-weight: 600;
    text-decoration: underline;
}

.tag-card-more {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: #f8fafc;
    border: 2px dashed #d7dde5;
    cursor: pointer;
}

.tag-more-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.tag-plus {
    font-size: 36px;
    font-weight: 700;
    color: #14c784;
    line-height: 1;
}

.tag-more-text {
    font-size: 15px;
    font-weight: 600;
    color: var(--dark-color);
}

.tag-item {
    display: none;
}

.tag-card .link-arrow {
    display: flex;
    justify-content: center;
    background: var(--block-color);
    padding: 10px 10px;
    width: 40px;
    height: 40px;
    border-radius: 20px;
    color: #2d3847;
    box-shadow: none;
    border-radius: 12px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 1;
    position: absolute;
    right: 10px;
    bottom: 10px;
}

.tag-card .link-arrow img {
    width: 18px;
    opacity: .5;
}

@media (max-width: 768px) {
    .gallery-wrapper {
        grid-template-columns: 1fr;
    }

    .gallery-thumbs {
        height: auto;
        order: 2;
    }

    .gallery-thumbs .swiper-wrapper {
        flex-direction: row;
    }

    .gallery-thumbs .swiper-slide {
        width: 80px;
    }

    .thumb {
        height: 60px;
    }

    .main-image {
        height: 300px;
    }
}

.spec-hero-card .bc {
    justify-content: flex-start;
    margin: 0;
    display: block;
}

 section.spec-hero {
    padding-bottom: 0px;
    background: #e6ebea;
    margin: 15px;
    border-radius: clamp(20px, 2.5vw, 50px);
    overflow: hidden;
    background: #ecf1f3;
    padding: clamp(20px, 4.5vw, 80px);
    padding-top: clamp(106px, 10.5vw, 200px);
    margin-top: -100px;
    background: #172a1c;
    background: #f9fcfe;
}

.spo .spec-hero {
    background: #f1f5fb;
}

.hero-cutout {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: min(1390px, calc(100% - 80px));
    height: 100px;
    background: var(--bg-white);
    border-bottom-left-radius: 40px;
    border-bottom-right-radius: 40px;
    z-index: 1;
}

.hero-cutout::before,
.hero-cutout::after {
    content: "";
    position: absolute;
    top: 0;
    width: 70px;
    height: 70px;
    background: transparent;
}

.hero-cutout::before {
    left: -70px;
    border-top-right-radius: 40px;
    box-shadow: 35px -35px 0 35px var(--bg-white);
}

.hero-cutout::after {
    right: -70px;
    border-top-left-radius: 40px;
    box-shadow: -35px -35px 0 35px var(--bg-white);
}

.spec-hero .bc {
    background: #00000000;
    padding: 0;
    z-index: 5;
    position: relative;
    margin: 0;
    padding-left: 15px;
    margin-bottom: 15px;
    max-width: clamp(225px, 25.5vw, 360px);
}

.spec-hero .breadcrumbs li {
    /* color: #ffffff; */
}

.spec-hero .breadcrumbs li a {
    color: #08a661;
}

.spec-hero .breadcrumbs li span {
    color: #424242;
    font-size: 14px;
}

.spec-hero-card {
    display: flex;
    gap: clamp(15px, 2.5vw, 30px);
    position: relative;
    position: relative;
    z-index: 4;
}

.spec-hero-card::after {
    position: absolute;
    right: -80px;
    top: -40px;
    width: 640px;
    height: 640px;
    z-index: 0;
}

.spec-hero-left {
    max-width: 710px;
    z-index: 2;
    width: 100%;
    display: flex;
    flex-direction: column;
}

.spec-hero h1 {
    color: #000000;
    white-space: normal;
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-word;
    hyphens: auto;
    font-weight: 500;
}

.spec-subtitle {
    color: #000000;
    width: 100%;
    font-size: clamp(1.2275rem, .8494774919614148rem + .68585209003215437vw, 1.5425rem);
    font-weight: 400;
    text-wrap: pretty;
    z-index: 1;
    position: relative;
    line-height: 1.4;
}

.spec-price span {
    line-height: 1.2;
    display: block;
    color: var(--dark-color);
    font-weight: 600;
    margin-bottom: 15px;
    font-size: clamp(1.25rem, 1.1766479099678457rem + 0.3215434083601286vw, 1.5625rem);
}

.spec-price strong {
    font-size: 22px;
    color: #454545;
    font-weight: 600;
    line-height: 1;
    margin-bottom: 10px;
    display: block;
    border-radius: 10px;
}

.spec-actions {
    display: flex;
    gap: 25px;
    align-items: center;
    margin-top: 65px;
    justify-self: end;
}

.spo .btn-main {
    background: #1991ee;
    color: var(--bg-white);
    background: linear-gradient(135deg, #7ac5ff, #1991ee);
    color: #ffffff;
    box-shadow: 9px 20px 26px rgb(54 117 165 / 31%);
}

.btn-main {
    background: var(--accent-color);
    color: var(--bg-white);
    padding: 14px 24px;
    border-radius: 14px;
    font-weight: 600;
    align-self: flex-start;
    padding: 20px 30px;
    color: var(--bg-white);
    border-radius: 20px;
    text-decoration: none;
    font-weight: 600;
    font-size: clamp(1.125rem, 1.0809887459807075rem + 0.19292604501607719vw, 1.3125rem);
    box-shadow: 1px 8px 38px rgb(36 112 58 / 34%);
    transition: .25s;
    display: flex;
    align-items: center;
    gap: 10px;
    align-items: center;
    justify-content: center;
    line-height: 1;
    border: none;
    z-index: 1;
}

.btn-main.open-price-modal {
    background: #def5e9;
    box-shadow: none;
    color: #11bd7c;
}

.btn-main.open-price-modal:hover {
    box-shadow: none;
    transform: translateY(-2px);
}

.btn-ghost {
    border: 2px solid #e5e7eb;
    background: #edf1fa;
    color: var(--bg-white);
    padding: 14px 24px;
    border-radius: 14px;
    font-weight: 600;
    align-self: flex-start;
    padding: 20px 40px;
    color: var(--bg-white);
    border-radius: 20px;
    text-decoration: none;
    font-weight: 600;
    font-size: 20px;
    transition: .25s;
    display: flex;
    align-items: center;
    gap: 10px;
    align-items: center;
    justify-content: center;
    line-height: 1;
    border: none;
    color: var(--seriy-color);
}

.spec-hero-right {
    display: flex;
    flex-direction: column;
    gap: 20px;
    z-index: 1;
    position: absolute;
    right: -70px;
    top: -80px;
    width: clamp(320px, 50.5vw, 730px);
}

.spec-floating-card {
    background: white;
    padding: 20px;
    border-radius: 20px;
    min-width: 200px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .06);
    z-index: 1;
    font-weight: 700;
}

.spec-floating-card.highlight {
    background: var(--accent-color2);
    color: white;
}

.spec-floating-card .label {
    font-size: 13px;
    font-weight: 600;
    font-weight: 700;
}

.spec-floating-card .value {
    font-size: 24px;
    font-weight: 600;
}

.spec-hero-bg {
    position: absolute;
    right: 0;
    top: 0;
    width: 50%;
    height: 100%;
    pointer-events: none;
}

.spec-hero-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.spec-image-card {
    overflow: hidden;
    transition: .4s;
}

.spec-image-card img {
    animation: floatY 5s ease-in-out infinite;
}

@keyframes floatY {
    0% {
        transform: translateY(0) scale(1);
    }

    50% {
        transform: translateY(-12px) scale(1.02);
    }

    100% {
        transform: translateY(0) scale(1);
    }
}

.spec-image-card img {
    width: 100%;
    display: block;
    filter: saturate(.9) contrast(100%) hue-rotate(-9deg);
}

.spec-image-card:hover {
    transform: rotate(0deg) scale(1.05);
}

.pulse {
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(30, 222, 123, .4);
    }

    70% {
        box-shadow: 0 0 0 15px rgba(30, 222, 123, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(30, 222, 123, 0);
    }
}

.btn-main:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 40px rgba(37, 235, 50, .4);
}

@media(max-width:992px) {
    .smart-quiz-launch__content{
        display:none;
    }
    .spec-hero-card {
        flex-direction: column;
    }

    .spec-hero-bg {
        display: none;
    }
 section.spec-hero .bc{
     display:none;
 }
    .spec-hero-right {
        flex-direction: row;
        flex-wrap: wrap;
        position: relative;
        right: 0px;
        top: 0px;
        width: clamp(280px, 27.5vw, 670px);
        order: 1;
    }

    .spec-hero-left {
        order: 2;
    }

    .side-label {
        display: none;
    }
}

.nav-linkers {
    display: flex;
    gap: clamp(10px, 2vw, 15px);
    align-items: center;
    margin-left: auto;
    flex-wrap: wrap;
}

.services-wrap {
    max-width: 1280px;
    margin: auto;
    position: relative;
    background: var(--block-color);
    margin: 0 auto;
    position: relative;
    position: relative;
    background: #ffffff;
    overflow: hidden;
}

.services-wrap:before {
    position: absolute;
    right: -100px;
    top: -100px;
    width: 500px;
    height: 430px;
    background: radial-gradient(circle, var(--accent-color2)33, transparent);
    filter: blur(31px);
    z-index: 0;
}

.services-top {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0px;
}
.spo .services-top .badge{
   
    background: #42a4f0;
 
 
}
.services-top h2 {
    margin-top: 10px;
    margin-bottom: 0px;
}

.badge {
    background: #17c96d;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
}

.right p {
    margin-top: 0px;
    margin-bottom: 0px;
}

.cards {
    display: flex;
    gap: 30px;
}

.cards h3 {
    font-size: 27px;
    margin-bottom: 25px;
    z-index: 1;
    line-height: 1.2;
    display: block;
    font-size: 25px;
    color: var(--dark-color);
    font-weight: 600;
    margin-bottom: 15px;
    font-size: clamp(1.25rem, 1.1766479099678457rem + 0.3215434083601286vw, 1.5625rem);
}

.card {
    flex: 1;
    position: relative;
    color: var(--bg-white);
}

.img {
    height: 190px;
    border-radius: 25px;
    margin-bottom: 20px;
    position: relative;
    overflow: hidden;
}

.shape-left {
    background-size: cover;
    background-repeat: no-repeat;
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 0;
}

.shape-left::after {
    position: absolute;
    top: -40px;
    left: -40px;
    width: 120px;
    height: 120px;
    border-radius: 30px;
}

.shape-right {
    position: relative;
    font-size: 60px;
    color: #000000;
    height: 80px;
}

.shape-right::before {
    position: absolute;
    font-size: 90px;
    font-weight: 700;
    inset: 0;
    left: 23%;
    top: 45px;
    line-height: 1;
}

.shape-right::after {
    position: absolute;
    bottom: -40px;
    right: -40px;
    width: 120px;
    height: 120px;
    background: #111;
    border-radius: 30px;
}

.corner-btn {
    position: absolute;
    bottom: 20px;
    right: 20px;
    width: 44px;
    height: 44px;
    background: #14c784;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
}

.center {
    display: flex;
    flex-direction: column;
    text-align: center;
}

.center a {
    margin: 20px auto;
    background: linear-gradient(135deg, #7b61ff, #9f7aea);
    border: none;
    padding: 12px 22px;
    border-radius: 20px;
    color: var(--bg-white);
    align-self: flex-start;
    padding: 20px 40px;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
    border-radius: 20px;
    text-decoration: none;
    font-weight: 600;
    font-size: 20px;
    box-shadow: 0 12px 30px rgb(37 235 50 / 35%);
    transition: .25s;
    display: flex;
    align-items: center;
    gap: 10px;
    align-items: center;
    justify-content: center;
    line-height: 1;
    border: none;
}

.center p {
    color: #414141;
    font-size: 18px;
    text-align: left;
    margin-bottom: 0px;
    font-weight: 600;
}

@media (max-width: 900px) {
    .services-top {
        flex-direction: column;
        gap: 20px;
    }

    .scroll-circle {
        width: 70px;
        height: 70px;
    }
}

.logo-slider {
    overflow: hidden;
    width: 100%;
}

.logo-track {
    display: flex;
    width: max-content;
    animation: scroll 25s linear infinite;
}

.logo-slide {
    display: flex;
    gap: 60px;
    margin-right: 60px;
}

.logo-slide img {
    height: 45px;
    object-fit: contain;
    opacity: 0.8;
    transition: 0.3s;
}

.logo-slide img:hover {
    opacity: 1;
}

@keyframes scroll {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

.main-info {
    padding: 0;
    margin-top: -30px;
}

.main-info__grid {
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: clamp(10px, 2.5vw, 20px);
    margin-top: clamp(15px, 2.5vw, 45px);
    z-index: 4;
    position: relative;
}

.main-info__item {
    background: #f2f9f8;
    color: #000000;
    border-radius: 20px;
    padding: clamp(15px, 2.5vw, 35px);
    position: relative;
    display: flex;
    flex-direction: column;
    transition: 0.3s;
    background: radial-gradient(47.2% 50% at 50.39% 88.37%, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0) 100%), rgb(255 255 255 / 41%);
    position: relative;
    transition: background 0.3s ease;
    border-radius: clamp(15px, 2.5vw, 30px);
    backdrop-filter: blur(6px);
    transition: .2s linear;
    box-shadow: 16px 20px 20px #5c5c5c0f;
}

.main-info__item:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 2px;
    background: linear-gradient(150deg, rgba(255, 255, 255, 0.48) 16.73%, rgba(255, 255, 255, 0.08) 30.2%, rgba(255, 255, 255, 0.08) 68.2%, rgba(255, 255, 255, 0.6) 81.89%);
    border-radius: inherit;
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask-composite: xor;
    -webkit-mask-composite: xor;
    pointer-events: none;
}

.spo .main-info__item img {
    filter: hue-rotate(45deg);
}

.main-info__item img {
    position: absolute;
    top: 0;
    width: 30px;
    right: 20px;
    top: 15px;
}

.main-info__item:hover {
    transform: translateY(-5px);
    transition: .2s linear;
}

.spo .main-info__icon {
    position: absolute;
    top: 20px;
    right: 20px;
    font-size: 22px;
    opacity: 0.8;
    color: #1991ee;
}

.main-info__icon {
    position: absolute;
    top: 30px;
    right: 30px;
    font-size: 22px;
    opacity: 0.8;
    color: var(--accent-color);
}

.main-info__title {
    font-size: 15px;
    margin-bottom: 5px;
    color: #000000;
    opacity: .7;
}

.main-info__desc {
    font-size: 21px;
    color: #000000;
    flex: 1;
    font-weight: 500;
    line-height: 1.3;
    font-size: clamp(1.125rem, 1.0809887459807075rem + 0.19292604501607719vw, 1.3125rem);
}

@media (max-width: 1100px) {
    .main-info__grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 700px) {
    .main-info__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .main-info__grid {
        grid-template-columns: 1fr;
    }
}

.career-wrap {
    max-width: 1070px;
    margin: auto;
    position: relative;
}

.career-wrap:before {
    content: "";
    position: absolute;
    right: 100px;
    top: -100px;
    width: 820px;
    height: 700px;
    z-index: 0;
    content: "";
    position: absolute;
    background: repeating-radial-gradient(circle, rgb(212 212 212 / 20%) 0px, rgba(255, 255, 255, 0.2) 6px, transparent 8px, transparent 24px);
    border-radius: 100%;
}

.career-arc {
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: 900px;
    height: 500px;
    border: 2px solid #ddd;
    border-bottom: none;
    border-radius: 800px 800px 0 0;
    z-index: 0;
}

.career-arc2 {
    position: absolute;
    top: 70px;
    left: 50%;
    transform: translateX(-50%);
    width: 810px;
    height: 410px;
    border: 2px solid #ddd;
    border-bottom: none;
    border-radius: 810px 810px 0 0;
    z-index: 0;
    background: repeating-radial-gradient(circle, rgb(212 212 212 / 20%) 0px, rgba(255, 255, 255, 0.2) 6px, transparent 8px, transparent 24px);
}
/* =========================
   TABLET
========================= */

@media (max-width: 992px) {

    .career-wrap {
        max-width: 100%;
        padding: 0 20px;
    }

    .career-wrap:before {

        right: 50%;
        transform: translateX(50%);

        width: 620px;
        height: 520px;

        top: -60px;
    }

    .career-arc {

        width: 700px;
        height: 380px;
    }

    .career-arc2 {

        width: 620px;
        height: 320px;

        top: 55px;
    }

}

/* =========================
   MOBILE
========================= */

@media (max-width: 768px) {

    .career-wrap {
        padding: 0 16px;
    }

    .career-wrap:before {

        width: 420px;
        height: 420px;

        top: -20px;

        right: 50%;

        transform: translateX(50%);

        opacity: .5;
    }

    .career-arc {

        width: 100%;
        max-width: 500px;

        height: 260px;

        top: 10px;
    }

    .career-arc2 {

        width: 90%;
        max-width: 430px;

        height: 200px;

        top: 55px;
    }

}

/* =========================
   SMALL MOBILE
========================= */

@media (max-width: 480px) {

    .career-wrap {
        padding: 0 10px;
    }

    .career-wrap:before {width: 480px;height: 460px;top: -80px;}

    .career-arc {

        max-width: 340px;

        height: 180px;

        border-width: 1px;
    }

    .career-arc2 {

        max-width: 290px;

        height: 140px;

        top: 45px;

        border-width: 1px;
    }

}
.career-cards {
    position: relative;
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 60px;
}

.spo .card {
    background: #f1f5fb;
    overflow: hidden;
}

.card {
    background: #f2f6f8;
    overflow: hidden;
}

.card .rating-circle {
    position: relative;
    width: 120px;
    height: 120px;
    top: initial;
    position: relative;
    right: initial;
    margin-bottom: 15px;
}

.card .rating-circle .value {
    color: #000;
}

.badge-left {
    left: 90px;
    top: 140px;
    transform: rotate(284deg);
    background: #dedede;
    position: absolute;
    background: var(--accent-color2);
    padding: 8px 14px;
    border-radius: 20px;
    font-size: 14px;
    color: #ffffff;
    margin: 0;
    line-height: 1;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
}

.badge-top {}

.badge-toper {
    right: 410px;
    top: -60px;
    transform: rotate(6deg);
    position: absolute; 
    
    background: #dedede;
    position: absolute;
    background: var(--accent-color2);
    padding: 8px 14px;
    border-radius: 20px;
    font-size: 14px;
    color: #ffffff;
    margin: 0;
    line-height: 1;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
}

.badge-right {
    right: 87px;
    top: 100px;
    transform: rotate(70deg);
    position: absolute;
    background: var(--accent-color2);
    padding: 8px 14px;
    border-radius: 20px;
    font-size: 14px;
    color: #ffffff;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
}

.career-box {
    margin-top: -10px;
    background: #edf8f2;
    padding: clamp(15px, 3.5vw, 80px);
    border-radius: clamp(20px, 2.5vw, 40px);
    z-index: 1;
    position: relative;
    border-top-left-radius: clamp(30px, 3.5vw, 160px);
    border-top-right-radius: clamp(30px, 3.5vw, 160px);
    padding-top: clamp(30px, 3.5vw, 70px);
}

.spo .career-box {
    background: #f3f8fc;
}

.career-box h2 {
    text-align: center;
}

.career-box p {
    max-width: 750px;
    margin: 0 auto;
    margin-bottom: 30px;
    text-align: center;
}

.career-box .seo-section p {
    text-align: left;
    margin: 0;
    max-width: 100%;
}

.career-box button {
    background: #f5c533;
    border: none;
    padding: 14px 30px;
    border-radius: 30px;
    font-weight: bold;
    cursor: pointer;
    align-self: flex-start;
    padding: 20px 40px;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
    border-radius: 20px;
    text-decoration: none;
    font-weight: 600;
    font-size: 20px;
    box-shadow: 0 12px 30px rgb(37 235 50 / 35%);
    transition: .25s;
    display: flex;
    align-items: center;
    gap: 10px;
    align-items: center;
    justify-content: center;
    line-height: 1;
    border: none;
    margin: 0 auto;
}

@media (max-width: 768px) {
    .career-arc {
        width: 100%;
    }

    .career-cards {
        flex-direction: column;
        align-items: center;
    }

    .card {
        transform: none !important;
    }

    .badge-left {
        /* display: none; */
        left: 0px;
        top: -30px;
        transform: rotate(334deg);
    }
.badge-toper{
    right: 50px;
    top: -70px;
    transform: rotate(6deg);
}.badge-right {
    right: 67px;
    top: -10px;
    transform: rotate(20deg);
    }
    .career-box h2 {}
}

.orgs__header {
    text-align: center;
    margin-bottom: 40px;
}

.orgs__header h2 {
    font-size: 32px;
}

.orgs__header p {
    color: #666;
}

.orgs__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-top: 40px;
}

@media (max-width: 1000px) {
    .orgs__grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 700px) {
    .orgs__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .orgs__grid {
        grid-template-columns: 1fr;
    }
}

/* ==========================================
CAREERS
========================================== */
.career-grid {
    display: grid;
    grid-template-columns:
        repeat(auto-fit,
            minmax(320px, 1fr));
    gap: 24px;
    margin-bottom: clamp(15px, 1.5vw, 30px);
}

/* ==========================================
CARD
========================================== */
.career-card {
    position: relative;
    padding: 34px;
    border-radius: 30px;
    overflow: hidden;
    background: linear-gradient(180deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .02));
    border: 1px solid #dedede;
    backdrop-filter: blur(16px);
    transition: .35s ease;
    min-height: 260px;
    display: flex;
    flex-direction: column;
}


.spo .career-card::before {
    content: "";
    position: absolute;
    width: 280px;
    height: 280px;
    right: -140px;
    top: -140px;
    background:
        radial-gradient(circle,
            rgba(93, 173, 255, .16),
            transparent 70%);
    transition: .5s;
}
.career-card::before {
    content: "";
    position: absolute;
    width: 280px;
    height: 280px;
    right: -140px;
    top: -140px;
    background: radial-gradient(circle, rgb(93 255 180 / 16%), transparent 70%);
    transition: .5s;
}
.career-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(rgba(255, 255, 255, .03) 1px,
            transparent 1px);
    background-size: 18px 18px;
    pointer-events: none;
}


.career-card:hover {
    transform:
        translateY(-8px);
    border-color:
        rgba(93, 173, 255, .35);
    box-shadow:
        0 30px 60px rgba(0, 0, 0, .12);
}

.career-card:hover::before {
    transform:
        scale(1.4);
}

/* ==========================================
TOP
========================================== */
.career-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: clamp(15px, 2.5vw, 35px);
    position: relative;
    z-index: 2;
}

.career-index {
    font-size: 64px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: -4px;
    opacity: .10;
    color: #000;
}

.career-badge {
    height: 42px;
    padding: 0 18px;
    display: flex;
    align-items: center;
    gap: 10px;
    border-radius: 999px;
    background: rgb(5 179 104 / 16%);
    border: 1px solid rgb(93 255 95 / 15%);
    font-size: 14px;
    font-weight: 700;
    color: #089d5c;
    white-space: nowrap;
}
.spo .career-badge {
    
    background:
        rgba(93, 173, 255, .08);
    border:
        1px solid rgba(93, 173, 255, .15);
    
    color: #2492e8;
    
}
.career-badge i {
    font-size: 15px;
    line-height: 1;
}

/* ==========================================
CONTENT
========================================== */
.career-content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 14px;
}


.career-content h3 {
    margin: 0;
    font-size: 24px;
    line-height: 1.15;
    font-weight: 700;
}


.career-content p {
    margin: 0;
    font-size: 16px;
    line-height: 1.8;
    color: var(--text2);
}


.career-content ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding: 0;
    margin: 18px 0 0;
    list-style: none;
}

.career-content li {
    padding: 10px 14px;
    border-radius: 14px;
    background:
        rgba(255, 255, 255, .05);
    border:
        1px solid var(--border);
    font-size: 14px;
}


.career-content a {
    color: #2492e8;
    font-weight: 700;
}

/* ==========================================
RESPONSIVE
========================================== */
@media(max-width:768px) {
    .career-grid {
        grid-template-columns: 1fr;
    }

    .career-card {
        padding: 26px;
        border-radius: 24px;
        min-height: auto;
    }

    .career-index {
        font-size: 48px;
    }

    .career-content h3 {
        font-size: 22px;
    }
}

.exam-section {
    border-radius: clamp(20px, 2.5vw, 64px);
    padding: clamp(15px, 3.5vw, 70px);
    overflow: hidden;
    border: 1px #d7f7e6 solid;
    position: relative;
    background: #f8fafc;
}

.exam-section:after {
    content: "";
    position: absolute;
    right: -100px;
    top: -100px;
    width: 500px;
    height: 430px;
    background: radial-gradient(circle, var(--accent-color2)33, transparent);
    filter: blur(31px);
    z-index: 0;
}

.price-modal {
    position: fixed;
    inset: 0;
    display: none;
    z-index: 9999;
}

.price-modal.active {
    display: flex;
    align-items: center;
    justify-content: center;
}

.price-modal__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .55);
    backdrop-filter: blur(6px);
}

.price-modal__content {
    position: relative;
    background: white;
    border-radius: 32px;
    padding: 40px;
    width: 100%;
    max-width: 520px;
    z-index: 2;
    box-shadow: 0 40px 120px rgba(0, 0, 0, .25);
    animation: modalIn .35s ease;
}

@keyframes modalIn {
    from {
        transform: translateY(40px) scale(.96);
        opacity: 0;
    }

    to {
        transform: translateY(0) scale(1);
        opacity: 1;
    }
}

.price-modal__close {
    position: absolute;
    top: 15px;
    right: 20px;
    font-size: 28px;
    background: none;
    border: none;
    cursor: pointer;
    color: #999;
}

.price-form {
    display: flex;
    flex-direction: column;
    gap: 18px;
    margin-top: 20px;
}

.form-group {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.form-group label {
    font-size: 14px;
    font-weight: 600;
    color: var(--dark-color);
    margin-bottom: 2px;
}

.form-group input,
.form-group select,
.form-group textarea {
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid #e5e7eb;
    font-size: 15px;
    transition: .2s;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    outline: none;
    border-color: var(--accent-color2);
}

.contact-options {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.contact-options label {
    background: #f3f6f9;
    padding: 8px 12px;
    border-radius: 10px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
}

.contact-options input {
    accent-color: var(--accent-color2);
}

.form-group.checkbox label {
    display: flex;
    gap: 10px;
    font-size: 13px;
    cursor: pointer;
}

.btn-main.full {
    margin-top: 30px;
}

.btn-main:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 40px rgba(30, 222, 123, .35);
}

.modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .6);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
    z-index: 9999;
    overflow-y: auto;
    scrollbar-color: #ffffff00 #ffffff12;
    scroll-behavior: smooth;
    scrollbar-width: thin;
    scrollbar-color: #83838385 #ffffff;
}

.modal-overlay.active {
    opacity: 1;
    visibility: visible;
}

.modal-box {
    background: var(--bg-white);
    border-radius: 10px;
    padding: 40px 45px;
    width: 100%;
    max-width: 500px;
    position: relative;
    box-shadow: 0 40px 120px rgba(0, 0, 0, .2);
    height: auto;
    overflow-y: auto;
    scrollbar-color: #ffffff00 #ffffff12;
    scroll-behavior: smooth;
    scrollbar-width: thin;
    scrollbar-color: #83838385 #ffffff;
}

.modal-header {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
    flex-direction: column;
    align-items: start;
}

.modal-header h3 {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
    font-size: 35px;
}

.modal-close {
    cursor: pointer;
    font-size: 22px;
    border: none;
    z-index: 1;
    background: none;
    position: absolute;
    line-height: 1;
    font-size: 42px;
    right: 20px;
    top: 20px;
}

.form-group {
    margin-bottom: 13px;
    display: flex;
    flex-direction: column;
    gap: 0px;
}

.form-group input,
.form-group select,
.form-group textarea {
    padding: 7px;
    border-radius: 12px;
    border: 1px solid #cecfd2;
    font-weight: 600;
}

.checkbox-group {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.checkbox-group label {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 15px;
}

.btn-submit {
    width: 100%;
    padding: 16px;
    border: none;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
    font-weight: 600;
    cursor: pointer;
    background: var(--accent-color2);
    color: var(--bg-white);
    padding: 14px 24px;
    border-radius: 14px;
    font-weight: 600;
    align-self: flex-start;
    padding: 20px 40px;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
    border-radius: 20px;
    text-decoration: none;
    font-weight: 600;
    font-size: 20px;
    box-shadow: 0 12px 30px rgb(37 235 50 / 35%);
    transition: .25s;
    display: flex;
    align-items: center;
    gap: 10px;
    align-items: center;
    justify-content: center;
    line-height: 1;
    border: none;
}

.modal-success {
    display: none;
    text-align: center;
}

.modal-success.active {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.modal-success.active h3 {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 30px;
    margin-top: 15px;
    margin-bottom: 10px;
}

.modal-success {
    display: none;
    opacity: 0;
    transform: translateY(20px);
    transition: .3s;
}

.modal-success.active {
    display: flex;
    opacity: 1;
    transform: translateY(0);
}

.check-container {
    width: 6.25rem;
    height: 7.5rem;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: space-between;
}

.check-container .check-background {
    width: 100%;
    height: calc(100% - 1.25rem);
    background: linear-gradient(to bottom right, #5de593, #41d67c);
    box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
    transform: scale(0.84);
    border-radius: 50%;
    animation: animateContainer 0.75s ease-out forwards 0.75s;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
}

.check-container .check-background svg {
    width: 65%;
    transform: translateY(0.25rem);
    stroke-dasharray: 80;
    stroke-dashoffset: 80;
    animation: animateCheck 0.35s forwards 1.25s ease-out;
}

.check-container .check-shadow {
    bottom: calc(-15% - 5px);
    left: 0;
    border-radius: 50%;
    background: radial-gradient(closest-side, #49da83, transparent);
    animation: animateShadow 0.75s ease-out forwards 0.75s;
}

@keyframes animateContainer {
    0% {
        opacity: 0;
        transform: scale(0);
        box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
    }

    25% {
        opacity: 1;
        transform: scale(0.9);
        box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
    }

    43.75% {
        transform: scale(1.15);
        box-shadow: 0px 0px 0px 43.334px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
    }

    62.5% {
        transform: scale(1);
        box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 21.667px rgba(255, 255, 255, 0.25) inset;
    }

    81.25% {
        box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset;
    }

    100% {
        opacity: 1;
        box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset;
    }
}

@keyframes animateCheck {
    from {
        stroke-dashoffset: 80;
    }

    to {
        stroke-dashoffset: 0;
    }
}

@keyframes animateShadow {
    0% {
        opacity: 0;
        width: 100%;
        height: 15%;
    }

    25% {
        opacity: 0.25;
    }

    43.75% {
        width: 40%;
        height: 7%;
        opacity: 0.35;
    }

    100% {
        width: 85%;
        height: 15%;
        opacity: 0.25;
    }
}

.iti--allow-dropdown input,
.iti--allow-dropdown input[type=text],
.iti--allow-dropdown input[type=tel],
.iti--separate-dial-code input,
.iti--separate-dial-code input[type=text],
.iti--separate-dial-code input[type=tel] {
    padding-right: 6px;
    padding-left: 60px;
    margin-left: 0;
    width: 100%;
}

.iti__selected-flag {
    z-index: 1;
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
    padding: 0 6px 0 15px;
}

.modal-subtitle {
    margin-bottom: 5px;
    font-size: 17px;
    line-height: 1.4;
}

.skills-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: clamp(10px, 1.5vw, 20px);
    align-items: start;
}

.skills-left h2 {
    display: flex;
}

.skills-right ul {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    padding-left: 0px;
}

.skills-right ul li {
    display: flex;
    align-items: baseline;
    gap: 10px;
    font-weight: 500;
    color: var(--dark-color);
    position: relative;
    line-height: 1.2;
    background: #e6f7f1;
    padding: 15px 12px;
    border-radius: 15px;
    flex: 260px;
}

.skills-right ul li {
    background: #f3f8fc;
}

.skills-right ul li:before {
    position: relative;
    width: clamp(22px, 2.5vw, 25px);
    height: clamp(22px, 2.5vw, 25px);
    flex-shrink: 0;
    content: "";
    position: relative;
    inset: 0;
    border-radius: 50%;
    background: linear-gradient(135deg, #088e55, var(--accent-color2));
    left: 0px;
    content: "\2714";
    border-radius: 300px;
    z-index: 1;
    right: 10px;
    top: 0px;
    color: var(--bg-white);
    justify-content: center;
    display: flex;
    align-items: center;
    font-size: 12px;
}

.spo .skills-right ul li:before {
    background: linear-gradient(135deg, #1991ee, #53b2fb);
    content: "\2714";
}

.skill-item i {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--accent-color2);
    color: var(--bg-white);
    border-radius: 10px;
    font-size: 12px;
    flex-shrink: 0;
    box-shadow: 0 6px 15px rgba(30, 222, 123, .4);
}

@media (max-width: 992px) {
    .skills-grid {
        grid-template-columns: 1fr;
    }

    .skills-right {
        grid-template-columns: 1fr;
    }
}

.badge-place {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-bottom: 20px;
    z-index: 1;
}

.badge-place span {
    display: inline-block;
    background: rgb(93 184 110);
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 15px;
    font-weight: 600;
    width: fit-content;
    background: var(--block-color);
    border-radius: 72px;
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 600;
    border: 1px solid #e5e7eb00;
    background: #ffffff;
    cursor: pointer;
    transition: .25s;
    color: #000000;
}

.disciplines {
    padding: clamp(30px, 3.5vw, 60px);
    background: #f5f7fb;
    border-radius: clamp(30px, 3.5vw, 60px);
}

.disciplines-wrapper {
    display: grid;
    grid-template-columns: 350px 1fr;
    gap: 30px;
    align-items: self-start;
    z-index: 1;
    position: relative;
}

.disciplines-left {
    display: flex;
    align-items: center;
    justify-content: center;
}

.disciplines-left h2 {
    font-size: 28px;
    line-height: 1.3;
    color: #1f2a44;
    font-weight: 600;
}

.disciplines-right ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}

.spo .disciplines-right ul li {}

.disciplines-right ul li {
    background: #ffffff17;
    padding: 12px 20px;
    border-radius: 10px;
    font-size: 18px;
    color: #1f2a44;
    transition: 0.2s;
    cursor: default;
    overflow: hidden;
    font-weight: 600;
    display: flex;
    align-items: self-start;
    color: #ffffff;
    flex-direction: column;
    gap: 15px;
}
/* =========================
   TABLET
========================= */

@media (max-width: 992px) {

    .disciplines-wrapper {

        grid-template-columns: 1fr;

        gap: 24px;
    }

    .disciplines-left {

        justify-content: flex-start;
    }

    .disciplines-left h2 {

        font-size: 24px;
    }

    .disciplines-right ul {

        grid-template-columns: 1fr 1fr;
    }

}

/* =========================
   MOBILE
========================= */

@media (max-width: 768px) {

    .disciplines {

        padding: 24px;

        border-radius: 24px;
    }

    .disciplines-wrapper {

        gap: 20px;
    }

    .disciplines-left h2 {

        font-size: 22px;

        line-height: 1.4;
    }

    .disciplines-right ul {

        grid-template-columns: 1fr;

        gap: 12px;
    }

    .disciplines-right ul li {

        padding: 14px 16px;

        font-size: 16px;

        gap: 10px;

        border-radius: 14px;
    }

}

/* =========================
   SMALL MOBILE
========================= */

@media (max-width: 480px) {

    .disciplines {

        padding: 18px;

        border-radius: 18px;
    }

    .disciplines-left h2 {

        font-size: 20px;
    }

    .disciplines-right ul li {

        font-size: 15px;

        padding: 12px 14px;
    }

}
.item-direction {
    background: #f7f8fa;
    padding: clamp(10px, 2.5vw, 25px);
    border-radius: 20px;
    font-size: 16px;
    color: #1f2a44;
    transition: 0.2s;
    cursor: pointer;
    --card-bg: #ffffff;
    --card-accent: #7c3aed;
    --card-text: #1e293b;
    background: #f2f6f8;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1);
    display: flex;
    flex-direction: column;
}

.spo .item-direction:before {
    background-color: #43a2c726;
}

.item-direction .item-icon {
    width: 170px;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    width: 170px;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    font-size: 28px;
    color: var(--accent-color2);
    margin-bottom: clamp(10px, 1.5vw, 20px);
    transition: transform 0.3s ease, color 0.3s ease;
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    background-image: linear-gradient(to right, #5dac83, #1edc7a);
    width: max-content;
    color: var(--accent-color2);
    justify-content: center;
    align-items: center;
    display: flex;
    border-radius: 320px;
    line-height: 0;
}

.item-direction .item-icon img {
    height: clamp(60px, 8.5vw, 80px);
}

.item-direction span {
    line-height: 1.2;
    margin-bottom: 0px;
    display: block;
    font-weight: 600;
    flex: 1;
    font-size: clamp(1.125rem, 1.0809887459807075rem + 0.19292604501607719vw, 1.2325rem);
}

.item {
    background: #fafafc;
    padding: clamp(15px, 2.5vw, 30px);
    border-radius: 20px;
    font-size: 16px;
    transition: 0.2s;
    cursor: default;
    background: #f1f5fb;
}
.spo .item:hover {
    background: #e5edf9;
}
.item:hover {
    background: #e5f4ec;
}

.spec-section {}

.profession-dashboard {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: 260px;
    gap: 18px;
}

.profession-card .mini-label {
    width: 80px;
}

.profession-card {
    background: linear-gradient(145deg, #1e293b, #0f172a);
    border-radius: 20px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    color: #cbd5f5;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition: all 0.35s cubic-bezier(0.25, 1, 0.5, 1);
    background: #f8fafc;
    border-radius: 20px;
    padding: 25px;
    transition: .25s;
    position: relative;
    overflow: hidden;
}

.card-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.icon {
    font-size: 22px;
}

.profession-card h3 {
    font-size: 24px;
    color: var(--dark-color);
    margin: 10px 0 15px;
}

.profession-card p {
    font-size: 15px;
}

.profession-large {
    grid-column: span 1;
    grid-row: span 2;
    padding: 40px;
}

.profession-large .mini-label {
    width: 140px;
}

.profession-wide {
    grid-column: span 2;
}

.profession-wide .mini-label {
    width: 110px;
}

.profession-dashboard:has(.profession-card:hover) .profession-card:not(:hover) {
    opacity: 0.6;
    transform: scale(0.96);
    filter: blur(3px);
}

.profession-card:hover {
    transform: scale(1.03) translateY(-6px);
    box-shadow: 0 25px 50px rgb(0 0 0 / 16%);
    color: var(--bg-white);
    z-index: 5;
}

.profession-card::after {
    content: "";
    position: absolute;
    opacity: 0;
    transition: 0.4s;
    content: "";
    position: absolute;
    top: -50px;
    right: -50px;
    width: 200px;
    height: 200px;
    background: radial-gradient(circle, var(--accent-color2)33, transparent);
    filter: blur(40px);
    z-index: 1;
    opacity: 1;
}

.profession-card:hover::after {
    opacity: 1;
}

@media (max-width: 900px) {
    .profession-dashboard {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 600px) {
    .profession-dashboard {
        grid-template-columns: 1fr;
    }
}

.article-image {
    position: relative;
    margin: 0 auto;
    max-width: 1430px;
    display: block;
    width: 100%;
    height: clamp(470px, 34.5vw, 650px);
    margin-bottom: clamp(20px, 2.5vw, 40px);
    border-radius: clamp(20px, 4.5vw, 60px);
}

.article-image img {
    width: 100%;
    border-radius: 60px;
    display: block;
}

.article-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: clamp(20px, 5.5vw, 60px);
    background: linear-gradient(to top, rgb(0 0 0 / 77%), rgba(0, 0, 0, 0));
    color: var(--bg-white);
    box-sizing: border-box;
    height: 100%;
    justify-content: flex-end;
    display: flex;
    flex-direction: column;
    border-radius: clamp(20px, 4.5vw, 60px);
}

.article-overlay .subtitle {
    color: var(--bg-white);
}

.article-overlay .subtitle p {
    color: var(--bg-white);
    max-width: 700px;
}

.article-overlay h1 {
    margin: 0 0 30px;
    color: var(--bg-white);
    font-weight: 600;
    max-width: 900px;
}

.article-overlay .about-article {
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 0.9rem;
}

.author-info {
    display: flex;
}

.article-overlay .about-article i {
    font-size: clamp(0.75rem, 0.6619774919614148rem + 0.38585209003215437vw, 1.125rem);
}

.article-overlay .about-article img {
    width: 21px;
    height: 21px;
}

.article-overlay .author-info img {
    border-radius: 50%;
}

.other-articles h2 {
    font-size: 24px;
    margin-bottom: 15px;
}

.other-articles h3 {
    font-size: 19px;
    margin-bottom: 10px;
}

.other-articles span {
    font-size: 13px;
    letter-spacing: -1px;
    color: var(--seriy-color);
    font-weight: 700;
}

.article-card {
    background: var(--accent-color2)14;
    display: block;
    padding: 20px;
    border-radius: 14px;
}

.profile-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 10px;
    row-gap: 40px;
}

.profile-grid .profile {
    display: flex;
    justify-content: center;
    position: relative;
}

.profile-grid .profile figure {
    display: flex;
    flex-direction: column;
    position: relative;
}

.profile-grid .profile figure img {
    border-radius: 30px;
}

.profile-grid .profile figure span {
    font-size: 14px;
    font-weight: 600;
    color: #6b7a90;
}

.profile-grid .profile figure figcaption {
    font-size: 23px;
    font-weight: 600;
    margin-top: 12px;
    text-transform: capitalize;
    cursor: pointer;
}

.profile-grid .profile figure::after {
    content: attr(data-value);
    width: 100%;
    transform-origin: 0 0;
    transform: rotate(90deg);
    position: absolute;
    text-transform: uppercase;
    font-size: 15px;
    right: -92%;
    padding: 3px 10px;
    border-radius: 300px;
    color: #14c784;
    font-weight: 700;
}

.profile-grid .profile:nth-child(2) {
    margin-top: 0px;
}

.profile-grid .profile:nth-child(4) {
    margin-top: 0px;
}

.profile-grid .profile:nth-child(6) {
    margin-top: -70px;
}

@media screen and (max-width: 1440px) {
    .profile-grid {
        column-gap: 50px;
    }
}

@media screen and (max-width: 1024px) {
    .profile-grid {
        column-gap: 35px;
    }
}

@media screen and (max-width: 768px) {
    .profile-grid {
        column-gap: 25px;
    }
}

@media screen and (max-width: 600px) {
    .profile-grid {
        grid-template-columns: repeat(2, 1fr);
        column-gap: 0px;
        row-gap: 0px;
    }

    .profile-grid .profile:nth-child(2),
    .profile-grid .profile:nth-child(4),
    .profile-grid .profile:nth-child(6) {
        margin-top: 50px;
    }

    .profile-grid .profile:nth-child(3),
    .profile-grid .profile:nth-child(5) {
        margin-top: 0px;
    }
}

.profile-badge {
    bottom: 7px;
    left: 17px;
    color: #39c672;
    font-size: 17px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    gap: 7px;
    font-weight: 600;
    line-height: 1;
    margin-top: 10px;
}

.profile-badge::after {
    content: '';
    width: 8px;
    height: 8px;
    background: #8BC34A;
    border-radius: 50%;
    display: inline-block;
    box-shadow: 0 0 0 0 rgba(26, 162, 81, 0.7);
    animation: onlinePulse 1.5s infinite;
}

@keyframes onlinePulse {
    0% {
        box-shadow: 0 0 0 0 rgba(26, 162, 81, 0.7);
    }

    70% {
        box-shadow: 0 0 0 8px rgba(26, 162, 81, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(26, 162, 81, 0);
    }
}

.reach-title {
    text-align: center;
}

.reach-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 25px;
    margin: 0 auto;
}

.reach-card {
    background: linear-gradient(135deg, #f8fafc, #e5e8ed);
    border-radius: 16px;
    padding: 30px 30px;
    display: flex;
    flex-direction: column;
    transition: transform 0.3s, box-shadow 0.3s;
    height: 100%;
    z-index: 1;
}

.reach-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 35px rgba(0, 0, 0, 0.12);
}

.card-icon {
    font-size: 36px;
    margin-bottom: 5px;
    color: #00cc6c;
}

.reach-card h3 {
    font-size: 24px;
    margin-bottom: 22px;
    font-weight: 600;
}

.reach-card p {
    font-size: 16px;
    margin-bottom: 15px;
    line-height: 1.4;
}

.card-features {
    list-style: none;
    padding-left: 15px;
    margin-bottom: 20px;
    margin-top: 5px;
    flex: 1;
}

.card-features li {
    font-size: 14px;
    color: #000000;
    margin-bottom: 8px;
    position: relative;
    padding-left: 18px;
    font-weight: 500;
}

.card-features li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 6px;
    width: 8px;
    height: 8px;
    background-color: #1dd275;
    border-radius: 50%;
}

.card-btn {
    padding: 10px 20px;
    border: none;
    border-radius: 8px;
    background: #2575fc;
    color: var(--bg-white);
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.3s;
    padding: 14px 28px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--accent-color2), #1cc56e);
    color: #ffffff;
    font-weight: 600;
    text-decoration: none;
    box-shadow: 0 12px 24px rgba(79, 70, 229, .35);
    transition: transform .25s ease, box-shadow .25s ease;
    box-shadow: 0 18px 36px rgb(29 209 117 / 30%);
    width: 100%;
    background: linear-gradient(135deg, #05b368, #247c28);
    color: #ffffff;
    box-shadow: 9px 20px 26px rgb(77 165 54 / 31%);
}

.grid-titleh2 {
    display: grid;
    grid-template-columns: 1fr 440px;
}

.first-hero-index {
    margin: 0 auto;
    border-radius: 40px;
    max-width: 1290px;
    position: relative;
    margin-top: 30px;
}

.installment-section {
    border-radius: clamp(20px, 3.5vw, 50px);
    padding: clamp(20px, 3.5vw, 40px);
    overflow: hidden;
    border: 1px #000000 solid;
}

.how-enter-section {
    display: grid;
    grid-template-columns: 420px 1fr;
    min-height: 520px;
    background: #f8fafc;
    border-radius: 48px;
    overflow: hidden;
    max-width: 1280px;
    margin: auto;
}

.how-enter-image {
    position: relative;
}

.how-enter-image img {
    width: 100%;
    object-fit: cover;
    border-radius: 40px;
}

.how-enter-content {
    padding: 50px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.how-enter-descr {
    line-height: 1.4;
    font-weight: 500;
    font-size: clamp(1.125rem, 1.0809887459807075rem + .19292604501607719vw, 1.6125rem);
    margin-bottom: clamp(15px, 2.5vw, 30px);
    color: #707a8a;
}

.how-enter-descr p {
    line-height: 1.4;
    font-weight: 500;
    font-size: clamp(1.125rem, 1.0809887459807075rem + .19292604501607719vw, 1.6125rem);
    color: #707a8a;
}

.how-enter-steps {
    list-style: none;
    padding: 0;
}

.how-enter-steps li {
    padding-left: 40px;
    color: #1e293b;
    list-style: none;
    font-weight: 500;
    font-size: clamp(.8875rem, .7494774919614148rem + .68585209003215437vw, 1.1425rem);
    display: flex;
    counter-increment: section;
    position: relative;
    gap: 15px;
    margin-bottom: 10px;
    align-items: flex-start;
    margin-top: 15px;
}

.how-enter-steps li::before {
    position: absolute;
    left: 0;
    top: 2px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: var(--accent-color2)26;
    color: #76c99a;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.place-info-container .how-enter-btn {
    max-width: 100%;
    width: 100%;
}

.how-enter-btn {
    align-self: flex-start;
    padding: 20px 40px;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
    border-radius: 20px;
    text-decoration: none;
    font-weight: 600;
    font-size: 20px;
    box-shadow: 0 12px 30px rgb(37 235 50 / 35%);
    transition: .25s;
    margin-top: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
    align-items: center;
    justify-content: center;
    line-height: 1;
    border: none;
}

.how-enter-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 40px rgb(29 203 114 / 47%);
}

.how-select-program {
    background: #f8fafc;
    padding: clamp(30px, 3.5vw, 80px) 20px;
}

.how-select-program .container{
  padding:0px;
}
.how-select-program .container {
    max-width: 1200px;
    margin: 0 auto;
}

.how-select-program-header p {
    font-size: 1.125rem;
    color: #707a8a;
    line-height: 1.5;
}

.how-select-program-steps {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
    margin-top: 40px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr));
    gap: 15px;
}

.step {
    display: flex;
    align-items: flex-start;
    gap: clamp(10px, 1.5vw, 15px);
}
 /* =========================
   BASE SECTION
========================= */

.steps-section {
}

.steps-section h2 {
}

.steps-section .subtitle {
}

/* =========================
   GRID
========================= */

.steps-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    position: relative;
    margin-bottom: 20px;
}

 .steps-grid::before {
    content: "";
    position: absolute;
    top: 0;
    left: 28px;
    width: 2px;
    height: 100%;
    background: rgba(0,0,0,.06);
}

 
.step-card {
    display: flex;
    gap: 18px;
    padding: 22px 20px;
    border-radius: 18px;
    background: #fff;
    position: relative;
    transition: .25s ease;
    box-shadow: 0 10px 30px rgba(0,0,0,.05);
    overflow: hidden;
}

/* hover */
.step-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 15px 40px rgba(0,0,0,.08);
}

/* glow background */
.step-card::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: .3s ease;
    background: radial-gradient(circle at top left, rgba(0,200,120,.15), transparent 60%);
}

.step-card:hover::before {
    opacity: 1;
}

/* =========================
   NUMBER
========================= */

.step-number {
    width: clamp(30px, 2.5vw, 45px);
    height: clamp(30px, 2.5vw, 45px);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 16px;
    flex-shrink: 0;
    position: relative;
}

/* default (green theme) */
body:not(.spo) .step-number {
    background: linear-gradient(135deg, #00c878, #00a862);
    color: #fff;
    box-shadow: 0 10px 20px rgba(0,200,120,.25);
}

/* SPO (blue theme) */
body.spo .step-number {
    background: linear-gradient(135deg, #3a8dff, #2b6cff);
    color: #fff;
    box-shadow: 0 10px 20px rgba(60,140,255,.25);
}

/* =========================
   TEXT
========================= */

.step-content h3 {
    margin-bottom: clamp(8px, 0.5vw, 11px);
    font-size: clamp(1.3125rem, 1.2538183279742765rem + 0.2572347266881029vw, 1.5625rem);
}

.step-content p {
    /* font-size: 14px; */
    /* opacity: .75; */
    line-height: 1.3;
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 900px) {
    .steps-grid {
        grid-template-columns: 1fr;
    }

    .steps-grid::before {
        display: none;
    }
}
.how-select-program-btn {
    display: inline-block;
    margin-top: clamp(20px, 2.5vw, 40px);
    padding: 18px 40px;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
    border-radius: 20px;
    font-weight: 600;
    font-size: 1.125rem;
    text-decoration: none;
    transition: .25s;
    width: 100%;
    text-align: center;
}

.how-select-program-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgb(29 203 114 / 35%);
}

@media (min-width: 768px) {
    .how-select-program-steps {
        grid-template-columns: 1fr 1fr;
    }
}

@media (min-width: 1024px) {
    .how-select-program-steps {
        grid-template-columns: repeat(3, 1fr);
    }
}

.article-inline {
    display: flex;
    gap: 24px;
    background: #76c99a22;
    border-radius: clamp(20px, 1.5vw, 25px);
    padding: clamp(20px, 1.5vw, 25px);
    margin: 40px 0;
    align-items: center;
    transition: .25s;
}

.article-inline:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.06);
    background: var(--bg-white);
}

.article-inline-img {
    flex: 0 0 220px;
    height: 160px;
    border-radius: clamp(20px, 1.5vw, 25px);
    overflow: hidden;
}

.article-inline-img img {
    width: 100%;
    object-fit: cover;
}

.article-inline-content {
    flex: 1;
}

.article-inline-content h3 {
    margin: 0 0 10px;
    font-size: 1.25rem;
    color: #1e293b;
}

.article-inline-content p {
    margin: 0 0 0px;
    color: #707a8a;
    line-height: 1.5;
    font-size: 0.95rem;
}

.article-inline-link {
    font-weight: 600;
    color: #ffffff;
    text-decoration: none;
    position: relative;
    font-size: 15px;
    background: #0fa95d;
    padding: 7px 14px;
    border-radius: 30px;
}

.article-inline-link:hover::after {
    margin-left: 10px;
}

@media (max-width: 768px) {
    .article-inline {
        flex-direction: column;
        align-items: flex-start;
    }

    .article-inline-img {
        width: 100%;
    }
}

.type-block {
    font-size: 12px;
    background: #76c99a22;
    width: max-content;
    padding: 4px 10px;
    margin-bottom: 10px;
    border-radius: 10px;
    font-weight: 700;
    color: #14c784;
}

.criteria-section {
    padding: 70px;
    border-radius: 40px;
    color: #2b2f39;
    position: relative;
    overflow: hidden;
    background: #f2f4f745;
}

.criteria-section::before,
.criteria-section::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    background: rgb(30 222 123 / 8%);
    width: 700px;
    height: 700px;
    z-index: 0;
    filter: blur(36px);
}

.spo .criteria-section::before,
.spo .criteria-section::after {
    background: rgb(30 163 222 / 8%);
}

.criteria-section::before {
    top: -50px;
    left: -50px;
}

.criteria-section::after {
    bottom: -50px;
    right: -50px;
}

.spo .criteria-title {
    background-image: linear-gradient(to right, #1991ee, #1a7bc5);
}

.criteria-title {
    font-size: 46px;
    text-align: center;
    color: var(--accent-color2);
    position: relative;
    z-index: 1;
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    background-image: linear-gradient(to right, #5dac83, #1edc7a);
}

.criteria-subtitle {
    text-align: center;
    max-width: 800px;
    margin: 0 auto 50px;
    font-size: 18px;
    color: #2b2f39;
    position: relative;
    z-index: 1;
}

.criteria-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 25px;
    margin-top: 45px;
}

.criteria-card {
    background: linear-gradient(135deg, #fff 0%, #f7f9fa 100%);
    border-radius: 20px;
    padding: 25px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    position: relative;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
    transition: transform 0.4s ease, box-shadow 0.4s ease, background 0.4s ease;
    min-height: 220px;
    z-index: 1;
}

.spo .criteria-icon {
    color: #1991ee;
}

.criteria-icon {
    font-size: 28px;
    color: var(--accent-color2);
    margin-bottom: 15px;
    transition: transform 0.3s ease, color 0.3s ease;
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    background-image: linear-gradient(to right, #5dac83, #1edc7a);
    width: max-content;
    background: var(--accent-color2)26;
    color: var(--accent-color2);
    width: 60px;
    height: 60px;
    justify-content: center;
    align-items: center;
    display: flex;
    border-radius: 20px;
    line-height: 0;
}

.criteria-card:hover .criteria-icon {
    transform: rotate(10deg) scale(1.1);
}

.criteria-card h3 {
    font-size: 23px;
    margin-bottom: 12px;
}

.criteria-card p {
    flex-grow: 1;
    margin-bottom: 0px;
    font-size: 17px;
    margin-top: 20px;
}

.criteria-card ul li {
    font-size: 16px;
}

.criteria-btn {
    margin-top: 15px;
    background: var(--accent-color2);
    color: var(--bg-white);
    border: none;
    padding: 10px 18px;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-weight: 600;
    line-height: 1.55;
    font-weight: 600;
    border-radius: 12px;
    background-color: var(--accent-color2);
    border: none;
    color: var(--bg-white);
    padding: 13px 30px;
    margin: 0 auto;
    margin-top: 0;
    cursor: pointer;
    font-weight: 600;
    font-size: 18px;
    text-align: center;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
    box-shadow: 0 12px 30px rgb(21 192 56 / 27%);
    width: 100%;
}

.criteria-btn:hover {
    background: #17c16b;
    transform: scale(1.05);
}

.accordion .accordion-item {
    margin-top: 10px;
    border-top: 1px solid #e0e0e0;
    padding: 5px 10px;
}

.accordion-header {
    background: transparent;
    border: none;
    width: 100%;
    text-align: left;
    padding: 17px 20px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-transform: math-auto;
    transition: .28s ease;
    position: relative;
}

.accordion-header i {
    transition: transform 0.3s ease;
}

.accordion-header.active i {
    transform: rotate(45deg);
}

.accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease, padding 0.3s ease;
    font-size: 14px;
}

.criteria-card {
    opacity: 0;
    transform: translateY(50px);
    transition: all 0.6s ease;
}

.criteria-card.visible {
    opacity: 1;
    transform: translateY(0);
}

.criteria-text {
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    position: relative;
    transition: all 0.3s ease;
}

.criteria-text.expanded {
    -webkit-line-clamp: unset;
}

.criteria-text.expanded ul {
    margin-bottom: 0px;
}

.criteria-text.expanded ul li:last-child {
    margin-bottom: 0px;
}

.criteria-toggle {
    margin-top: 20px;
    background: none;
    border: none;
    cursor: pointer;
    font-size: 20px;
    color: var(--accent-color2);
    display: flex;
    align-items: center;
    gap: 5px;
    background: #f3f3f3;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 300px;
    font-size: 42px;
    justify-self: flex-end;
    color: var(--accent-color2);
    display: flex;
    align-items: center;
    gap: 5px;
    background: #dcf9ea8c;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 300px;
    font-size: 40px;
    justify-self: flex-end;
    top: 0;
}

.spo .criteria-toggle {
    background: #e5edf9;
}

.spo .criteria-toggle .plus {
    color: #1991ee;
}

.criteria-toggle .plus {
    font-weight: 300;
    color: #8e8e8e;
    color: var(--accent-color2);
}

.criteria-toggle .minus {
    font-weight: 300;
    color: #8e8e8e;
    color: var(--accent-color2);
}

.criteria-toggle .minus {
    display: none;
}

.criteria-text-wrap.open .plus {
    display: none;
}

.criteria-text-wrap.open .minus {
    display: inline;
}

.criteria-text-wrap.no-toggle .criteria-toggle {
    display: none;
}

.edu-platforms {
    padding: 100px 0;
    background: radial-gradient(circle at top, var(--accent-color2)15, #ffffff);
    font-family: 'Inter', sans-serif;
    position: relative;
    overflow: hidden;
}

.edu-platforms::before {
    content: "";
    position: absolute;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, var(--accent-color2)20, transparent);
    top: -200px;
    left: -200px;
    filter: blur(80px);
}

.edu-platforms-title {
    text-align: center;
    color: var(--accent-color2);
    color: #000;
}

.spo .edu-platforms-title {}

.edu-platforms-subtitle {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 70px;
    color: #555;
    max-width: 85%;
    line-height: 1.5;
    color: var(--seriy-color);
    font-weight: 400;
    font-size: clamp(1.025rem, 0.9809887459807075rem + .29292604501607719vw, 1.6125rem);
    margin-bottom: clamp(15px, 2.5vw, 30px);
    color: #000000;
}

.edu-platforms-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 30px;
}

.edu-platform {
    position: relative;
    padding: 30px;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.4);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    transition: all 0.4s ease;
    overflow: hidden;
}

.edu-platform-glow {
    position: absolute;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, var(--accent-color2)40, transparent 60%);
    top: -50%;
    left: -50%;
    opacity: 0;
    transition: 0.5s;
}

.edu-platform img {
    width: 50px;
    margin-bottom: 20px;
}

.edu-platform:hover .edu-platform-glow {
    opacity: 1;
}

.edu-platform:hover {
    transform: translateY(-12px) scale(1.03);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.1);
}

.edu-platform h3 {
    font-size: 22px;
    margin-bottom: 15px;
    position: relative;
    z-index: 1;
}

.edu-platform p {
    font-size: 16px;
    color: #000;
    position: relative;
    z-index: 1;
}

.edu-platforms-grid::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(120deg, transparent 40%, var(--accent-color2)22 50%, transparent 60%);
    opacity: 0.2;
    pointer-events: none;
}

.edu-platform {
    opacity: 0;
    transform: translateY(40px);
}

.edu-platform.visible {
    opacity: 1;
    transform: translateY(0);
    transition: all 0.6s ease;
}

.edu-price-info {
    padding: clamp(15px, 2.5vw, 60px);
    background: #f8fafb;
    border-radius: 40px;
}

.edu-price-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: clamp(10px, 2.5vw, 50px);
}

.edu-price-content p {
    color: #444;
    margin-bottom: 15px;
    line-height: 1.6;
}

.spo .edu-price-note {
    background: #1e97de15;
    color: #426892;
    border-left: 4px solid #2aacf1;
}

.edu-price-note {
    margin: 25px 0;
    padding: 15px 20px;
    background: #1ede7b15;
    border-left: 4px solid var(--accent-color2);
    border-radius: 8px;
    font-size: 16px;
    font-weight: 500;
    color: #086c46;
}

.edu-price-image {
    margin-top: 25px;
    border-radius: 15px;
    overflow: hidden;
}

.edu-price-image img {
    width: 100%;
    display: block;
    transition: transform 0.4s ease;
}

.edu-price-image:hover img {
    transform: scale(1.05);
}

.edu-price-factors {
    display: grid;
    gap: 20px;
}

@media (max-width: 900px) {
    .edu-price-grid {
        grid-template-columns: 1fr;
    }
}

.edu-timeline {
    position: relative;
    margin-left: clamp(0px, 1.5vw, 30px);
}

.edu-timeline::before {
    content: "";
    position: absolute;
    left: 10px;
    top: 0;
    width: 2px;
    height: 100%;
    background: linear-gradient(to bottom, var(--accent-color2), #1ede7b33);
}

.spo .edu-timeline::before {
    content: "";
    position: absolute;
    left: 10px;
    top: 0;
    width: 2px;
    height: 100%;
    background: linear-gradient(to bottom, #2aacf1, #2aacf136);
}

.edu-timeline-item {
    position: relative;
    margin-bottom: 25px;
    padding-left: clamp(30px, 2.5vw, 40px);
}

.edu-timeline-dot {
    position: absolute;
    left: 3px;
    top: 6px;
    width: 16px;
    height: 16px;
    background: var(--accent-color2);
    border-radius: 50%;
    box-shadow: 0 0 0 4px rgba(30, 222, 123, 0.2);
}

.spo .edu-timeline-dot {
    background: #1991ee;
    box-shadow: 0 0 0 4px rgb(30 133 222 / 20%);
}

.edu-timeline-content {
    background: var(--bg-white);
    border-radius: 12px;
    padding: clamp(15px, 1.5vw, 20px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
    transition: 0.3s;
    position: relative;
}

.edu-timeline-content:hover {
    transform: translateX(5px);
}

.edu-timeline-header {
    background: none;
    border: none;
    font-size: 18px;
    font-weight: 500;
    cursor: pointer;
    width: 100%;
    text-align: left;
    position: relative;
    line-height: 1.3;
    padding: 0;
    font-size: clamp(1.125rem, 1.0809887459807075rem + 0.19292604501607719vw, 1.3125rem);
}

.spo .edu-timeline-header::after {
    content: "+";
    position: absolute;
    color: #2aacf1;
    background: #f1f5fb;
}

.edu-timeline-header::after {
    content: "+";
    position: absolute;
    right: 0;
    font-size: 40px;
    transition: 0.3s;
    font-weight: 300;
    line-height: 1;
    border: none;
    cursor: pointer;
    font-size: 20px;
    color: var(--accent-color2);
    display: flex;
    align-items: center;
    gap: 5px;
    background: #dcf9ea8c;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 300px;
    font-size: 40px;
    justify-self: flex-end;
    top: 0;
}

.edu-timeline-item.active .edu-timeline-header::after {
    content: "-";
}

.edu-timeline-body {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease;
    margin-top: 5px;
    line-height: 1.6;
}

.edu-timeline-body p {
    font-size: 16px;
    margin-top: 20px;
}

.reviews-section h2 {
    text-align: center;
}

.reviews-subtitle {
    text-align: center;
    margin-bottom: 40px;
    color: #666;
}

.reviews-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: clamp(10px, 1.5vw, 20px);
}

.review-card {
    border-radius: 19px;
    padding: 15px;
    display: flex;
    align-items: flex-start;
    gap: 15px;
    min-height: 140px;
    animation: float 6s ease-in-out infinite;
    pointer-events: none;
    user-select: none;
    flex-direction: column;
    background-size: 200%;
    justify-content: end;
    background: #f1f5fb;
}

.review-card .content {
    padding: 0px;
    background: none;
    width: 100%;
}

.review-header img {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    flex-shrink: 0;
    position: absolute;
    bottom: 0;
    border: 1px #dedede solid;
}

.content {
    display: flex;
    flex-direction: column;
    gap: 6px;
    width: 100%;
    padding: 70px;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
}

.content-static {
    display: flex;
    flex-direction: column;
    gap: 6px;
    width: 100%;
    padding: 70px;
    background: #edf8f2;
    border-radius: 30px;
    position: relative;
    overflow: hidden;
    transition: 0.3s;
}

.content-static:before {
    content: "";
    position: absolute;
    width: 800px;
    height: 700px;
    background: rgba(30, 222, 123, 0.08);
    border-radius: 50%;
    bottom: -350px;
    right: -200px;
    filter: blur(130px);
}

.message {
    background: #e5edf9;
    padding: 12px 14px 25px;
    border-radius: 12px;
    border-bottom-left-radius: 4px;
    font-size: 14px;
    line-height: 1.4;
    position: relative;
    width: fit-content;
    max-width: 100%;
    font-weight: 500;
    margin-left: 45px;
}

.review-header {
    position: relative;
}

.message::after {
    position: absolute;
    left: -2px;
    bottom: 0;
    width: 8px;
    height: 8px;
    background: #ffffff;
    transform: skewX(-20deg);
}

.time {
    position: absolute;
    right: 8px;
    bottom: 6px;
    font-size: 10px;
    color: #777;
}

.time {
    padding-right: 25px;
}

.time::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 3px;
    width: 20px;
    height: 12px;
    background-size: contain;
    background: url("data:image/svg+xml,%3Csvg viewBox='0 0 20 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 6L5 10L11 2' stroke='%2334b7f1' stroke-width='2' fill='none'/%3E%3Cpath d='M8 6L12 10L18 2' stroke='%2334b7f1' stroke-width='2' fill='none'/%3E%3C/svg%3E") no-repeat center;
    transform: rotate(5deg);
}

.reply {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    gap: 15px;
}

.reply-msg {
    background: #e5edf9;
    padding: 12px 14px 25px;
    border-radius: 12px;
    border-bottom-right-radius: 4px;
    font-size: 14px;
    position: relative;
    max-width: 80%;
    font-weight: 500;
}

.reply-msg::after {
    position: absolute;
    right: -2px;
    bottom: 0;
    width: 8px;
    height: 8px;
    background: #e6ffe8;
    transform: skewX(20deg);
}

.reply img {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    flex-shrink: 0;
    border: 1px #dedede solid;
}

@keyframes float {
    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-12px);
    }

    100% {
        transform: translateY(0);
    }
}

@media (max-width: 1100px) {
    .reviews-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .reviews-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .reviews-grid {
        grid-template-columns: 1fr;
    }
}

.item-direction:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
}

.item-icon img {
    height: clamp(60px, 8.5vw, 80px);
}

.direction-title {
    font-weight: 600;
    font-size: 18px;
}

.count-programs {
    font-size: 13px;
    color: #707a8a;
}

.img-place-container {
    position: absolute;
    bottom: 40px;
    right: 40px;
    z-index: 1;
    height: 520px;
    width: 500px;
    z-index: 4;
    --nb-r: 40px;
    --nb-w: 260px;
    --nb-h: 0px;
}

.img-place-container img {
    border-radius: 40px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.uni-stats {
    padding: 0px 0;
    padding-bottom: clamp(10px, 3.5vw, 50px);
}

.uni-stats-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    grid-template-columns: repeat(auto-fit, minmax(311px, 1fr));
}

.spo .uni-stat-card {
    background: #f1f5fb;
}

.uni-stat-card {
    background: #edf8f2;
    border-radius: clamp(15px, 2.5vw, 30px);
    padding: clamp(15px, 2.5vw, 35px);
    position: relative;
    overflow: hidden;
    transition: 0.3s;
}

.uni-stat-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

.uni-stat-card::after {
    position: absolute;
    width: 300px;
    height: 300px;
    background: rgba(30, 222, 123, 0.08);
    border-radius: 50%;
    bottom: -150px;
    right: -150px;
    filter: blur(40px);
}

.spo .uni-stat-card::after {
    position: absolute;
    width: 300px;
    height: 300px;
    background: rgb(30 74 222 / 8%);
    border-radius: 50%;
    bottom: -150px;
    right: -150px;
    filter: blur(40px);
}

.spo .stat-icon {
    font-size: 28px;
    color: #1991ee;
    margin-bottom: 15px;
    line-height: 1;
}

.stat-icon {
    font-size: 28px;
    color: var(--accent-color2);
    margin-bottom: 15px;
    line-height: 1;
}

.uni-stat-card h3 {
    font-size: 16px;
    margin-bottom: 5px;
    color: #00000078;
    font-weight: 600;
}

.stat-main {
    font-size: 23px;
    font-weight: 600;
    color: #1b1e23;
    margin-bottom: 15px;
}

.stat-sub {
    font-size: 13px;
    color: #777;
    margin-top: 5px;
}

.stat-tags {
    display: flex;
    gap: 8px;
    margin-top: 10px;
}

.spo .stat-tags span {
    font-size: 13px;
    padding: 5px 10px;
    background: #83a9d320;
    border-radius: 8px;
    color: #1991ee;
    font-weight: 600;
}

.stat-tags span {
    font-size: 13px;
    padding: 5px 10px;
    background: #18a15a20;
    border-radius: 8px;
    color: #29b46c;
    font-weight: 600;
}

.mini-graph {
    margin-top: 10px;
}

.mini-graph svg {
    width: 100%;
    height: 100%;
}

.license-preview {
    margin-top: 10px;
}

.license-preview img {
    width: 100%;
    max-width: 120px;
    border-radius: 10px;
    opacity: 0.9;
}

.rating-circle {
    position: relative;
    width: 90px;
    height: 90px;
    top: 30px;
    position: absolute;
    right: 30px;
}

.rating-circle svg {
    transform: rotate(-90deg);
}

.rating-circle circle {
    fill: none;
    stroke-width: 7px;
}

.spo .rating-circle .bg {
    stroke: #1991ee1f;
}

.rating-circle .bg {
    stroke: #05b3681f;
}

.rating-circle .progress {
    stroke: var(--accent-color);
    stroke-dasharray: 283;
    stroke-dashoffset: 283;
    transition: stroke-dashoffset 1.2s ease;
}

.spo .rating-circle .progress {
    stroke: #1991ee;
    stroke-dasharray: 283;
    stroke-dashoffset: 283;
    transition: stroke-dashoffset 1.2s ease;
}

.rating-circle .value {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 24px;
    font-weight: 600;
    font-size: clamp(1.5rem, 1.397307073954984rem + 0.45016077170418006vw, 1.9375rem);
}

.facts-list {
    display: flex;
    gap: clamp(15px, 2.5vw, 20px);
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0;
}

.fact-item {
    transition: transform .2s;
    cursor: default;
    border-radius: 20px;
    position: relative;
    background: radial-gradient(47.2% 50% at 50.39% 88.37%, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0) 100%), rgba(255, 255, 255, 0.04);
    position: relative;
    transition: background 0.3s ease;
    border-radius: 34px;
    color: rgba(255, 255, 255, 0.8);
    border: 1px solid rgb(255 255 255 / 21%);
    backdrop-filter: blur(6px);
    transition: all 0.25s ease;
    width: 100%;
    max-width: 260px;
    display: flex;
    flex-direction: column;
    justify-content: end;
    box-shadow: 0 20px 40px rgb(0 0 0 / 7%);
    align-items: flex-end;
    padding: 20px;
}

.fact-item::before {
    background: radial-gradient(47.2% 50% at 50.39% 88.37%, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0) 100%), rgba(255, 255, 255, 0.04);
    position: relative;
    transition: background 0.3s ease;
    border-radius: 34px;
    width: fit-content;
    height: fit-content;
    color: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(5px);
    z-index: 5;
}

.fact-item:hover {
    transform: translateY(-5px);
}

.fact-number {
    font-weight: 400;
    color: #ffffff;
    margin-bottom: 0px;
    line-height: 1;
    font-size: clamp(1.275rem, 1.2815916398713825rem + 0.8861736334405145vw, 1.925rem);
}

.fact-title {
    font-size: 16px;
    font-weight: 300;
    margin-bottom: 0px;
    color: #ffffff;
}

.fact-desc {
    font-size: 14px;
    color: #ffffff;
}

.persons-block {
    display: block;
    position: relative;
    width: 100%;
    border-radius: 30px;
    overflow: hidden;
    text-decoration: none;
    color: var(--bg-white);
    flex: 0 0 260px;
    border-radius: 30px;
    overflow: hidden;
    opacity: .24;
    transition: opacity .3s;
    background: var(--block-color);
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    height: auto;
    --nb-w: clamp(87px, 3vw, 110px);
    --nb-h: clamp(12px, 1.6vw, 15px);
}

.img-wrapper {
    width: 100%;
    height: clamp(300px, 55.5vw, 400px);
    background-size: cover;
    background-position: center;
    position: relative;
}

.overlay {
    position: absolute;
    left: 0;
    width: 100%;
    height: 50%;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 100%);
    display: flex;
    align-items: flex-end;
    padding: clamp(15px, 2.5vw, 25px);
    box-sizing: border-box;
    transition: background 0.3s;
    bottom: 0;
}

.text-bottom h3 {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: var(--bg-white);
    margin-bottom: 10px;
    line-height: 1.3;
    font-size: clamp(1.25rem, 1.1913183279742765rem + 0.2572347266881029vw, 1.5rem);
}

.text-bottom p {
    margin: 0;
    font-size: 15px;
    color: var(--bg-white);
    opacity: .8;
}

.place-faq {
    background-color: #f8fafc;
    border-radius: 60px;
    padding: 70px;
}

.spo .place-layout {
    background: #0a83c1;
}

.place-layout {
    padding: clamp(20px, 3.5vw, 60px);
    background: #0ac172;
    z-index: 5;
    --nb-r: clamp(17px, 2.5vw, 30px);
    --nb-w: clamp(110px, 14.5vw, 180px);
    --nb-h: 0px;
    padding-top: 80px;
    min-height: 500px;
}

.place-layout .text {
    color: var(--bg-white);
    width: 100%;
    font-size: clamp(0.9625rem, 0.8326923076923077rem + 0.576923076923077vw, 1.425rem);
    font-weight: 500;
    margin-bottom: clamp(10px, 2.5vw, 30px);
    z-index: 1;
    position: relative;
    line-height: 1.4;
}

.content {
    z-index: 3;
}

.image-place {
    z-index: 0;
}

.image-place .image-container {
    position: absolute;
    bottom: 0;
    width: clamp(350px, 49vw, 470px);
    height: clamp(350px, 40vw, 580px);
    transform: translate(0%, -5%);
}

 
.inline-form input,
.inline-form button {
    border: none;
    outline: none;
    background: none;
    font-family: inherit;
}

.spo .inline-form {}

.inline-form {}

.inline-form-group {
    flex: 1;
    position: relative;
    width: 100%;
}

.inline-form-group input::placeholder {
    color: #000;
}

.inline-form-group .iti {
    flex: 1;
    position: relative;
    width: 100%;
}

@media (max-width: 1024px) {
    .inline-form {
        flex-direction: column;
        border-radius: 20px;
    }

    .inline-form-btn {
        width: 100%;
    }
}

.former-place {
    position: relative;
    z-index: 3;
    margin-top: 30px;
}

.spo .former-place .admission-btn {
    background: linear-gradient(135deg, #63bbff, #1991ee);
    box-shadow: 9px 20px 26px rgb(54 124 165 / 31%);
}

.former-place .admission-btn {
    color: var(--bg-white);
    margin: 0;
    padding: 25px 35px;
    box-shadow: none;
    font-size: 20px;
    border-radius: 120px;
    border: 1px #ffffff59 solid;
    background: linear-gradient(135deg, #05b368, #247c28);
    color: #ffffff;
    box-shadow: 9px 20px 26px rgb(77 165 54 / 31%);
}

.toc-dzen {
    position: sticky;
    left: 80%;
    transform: translateX(10%);
    top: 130px;
    z-index: 50;
}

.spo .toc-lines {
    background: #f1f5fb;
}

.toc-lines {
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: #ecf7f1;
    padding: 25px 12px;
    width: max-content;
    border-radius: 40px;
    height: 100%;
}

.spo .toc-line {
    background: #e5edf9;
}

.toc-line {
    width: 15px;
    height: 15px;
    background: #5288663b;
    border-radius: 10px;
    transition: 0.3s;
    cursor: pointer;
    transform: scale(1);
    transition: .3s linear;
}

.spo .toc-line:hover {
    background: #1991ee;
}

.toc-line:hover {
    background: #14c784;
    transform: scale(1.3);
    transition: .3s linear;
}

.spo .toc-line.active {
    background: #1991ee;
    height: 15px;
}

.toc-line.active {
    background: #14c784;
    height: 15px;
}

.toc-dzen:hover .toc-popup {
    opacity: 1;
    pointer-events: auto;
}

.toc-popup-inner {
    background: var(--bg-white);
    border-radius: 25px;
    padding: 20px 25px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
    max-width: 300px;
    width: 300px;
    z-index: 34;
}

.toc-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.toc-list li {
    margin-bottom: 5px;
}

.toc-list a {
    text-decoration: none;
    color: #333;
    font-size: 17px;
    transition: 0.2s;
    font-weight: 600;
    letter-spacing: -.03em;
}

.spo .toc-list a:hover {
    color: #1991ee;
}

.toc-list a:hover {
    color: #0d8850;
}

.toc-list a.active {
    font-weight: 600;
    color: #11ac5c;
}

.toc-dzen {
    display: none;
}

.toc-wrapper {
    position: sticky;
    top: 120px;
    z-index: 2;
}

body.toc-collapsed .toc-dzen {
    display: flex;
}

.toc-popup {
    left: 60px;
    top: 0;
    opacity: 0;
    transition: 0.2s;
    z-index: 1;
}

.toc-dzen.open .toc-popup {
    opacity: 1;
    pointer-events: auto;
}

.toc-dzen.open .toc-popup {
    opacity: 1;
    pointer-events: auto;
}

.toc-dzen {
    position: sticky;
    left: 80%;
    transform: translateX(10%);
    top: 130px;
    z-index: 1;
}

.toc-dzen::after {
    content: "";
    position: absolute;
    left: 100%;
    top: 0;
    height: 100%;
}

@media (max-width: 1024px) {

    .toc-panel,
    .toc-title {
        display: none;
    }

    .toc-dzen {
        position: fixed;
        right: 16px;
        bottom: 16px;
    }

    .toc-popup {
        position: absolute;
        right: 100%;
        bottom: 0;
        width: 280px;
        max-height: 70vh;
        overflow: auto;
    }

    .toc-dzen {
        display: flex !important;
        left: 10px;
        top: 50%;
        transform: translateY(-50%);
    }

    .toc-dzen {
        width: fit-content;
        height: fit-content;
        z-index: 20;
    }
}

.toc-popup {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: .2s;
}

.toc-dzen.open .toc-popup {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.price-note {
    font-size: 14px;
    color: #919191;
    margin-top: 5px;
    line-height: 1.3;
    font-weight: 700;
}

/* =====================================
EXAMS GREEN PREMIUM
===================================== */
.exam-grid {
    display: grid;
    grid-template-columns:
        repeat(auto-fit,
            minmax(min(100%, 360px),
                1fr));
    gap: 22px;
    margin-bottom: 30px;
}

/* =====================================
CARD
===================================== */
.exam-col {
    position: relative;
    overflow: hidden;
    padding: 30px;
    border-radius: 30px;
    background:
        linear-gradient(180deg,
            #ffffff,
            #f7fcf8);
    border: 1px solid #edf5ef;
    box-shadow:
        0 18px 70px rgba(16, 83, 48, .06);
    transition: .28s;
}
.spo .exam-col {
   background: linear-gradient(180deg, #ffffff, #f7fbfc);
   border: 1px solid #edf3f5;
   box-shadow: 0 18px 70px rgb(16 71 83 / 6%);
   transition: .28s;
}

.exam-col:hover {
    transform: translateY(-4px);
    box-shadow:
        0 35px 80px rgba(16, 83, 48, .10);
}

/* =====================================
TOP ACCENT
===================================== */
.exam-col::before {
    right: 0;
}

.required::before {
    /* background:
        linear-gradient(
            90deg,
            #16a34a,
            #46c86d
        ); */
}

.optional::before {
    background:
        linear-gradient(90deg,
            #34d399,
            #6ee7b7);
}

/* =====================================
TITLE
===================================== */
.exam-title {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 26px;
    font-size: 20px;
    font-weight: 600;
    color: #0f3b1f;
}

.exam-col ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.seo-section .exam-col ul li {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 50px;
    margin-bottom: 12px;
    padding: 12px 18px 12px 60px;
    border-radius: 18px;
    background: #ffffff;
    font-size: 16px;
    font-weight: 600;
    color: #234530;
    transition: .22s;
    box-shadow: inset 0 0 0 1px #edf5ef;
}

.exam-col li:last-child {
    margin-bottom: 0;
}

.exam-col li:hover {
    transform: translateX(6px);
}

/* =====================================
DOT
===================================== */
.seo-section .exam-col li::after {
    display: none;
}

.seo-section .exam-col li::before {
    content: '';
    position: absolute;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    inset: initial;
    left: 22px;
}

.required li::before {
    background: #16a34a !important;
    box-shadow:
        0 0 18px rgba(22, 163, 74, .45);
}

.optional li::before {
    background: #34d399 !important;
    box-shadow:
        0 0 18px rgba(52, 211, 153, .45);
}

.spo .required li::before {
    background: #1991ee !important;
    box-shadow: 0 0 18px rgb(22 102 163 / 45%);
}

.spo .optional li::before {
    background: #1991ee !important;
    box-shadow: 0 0 18px rgb(22 102 163 / 45%);
}

/* =====================================
SOFT GLOW
===================================== */
.exam-col::after {
    content: '';
    position: absolute;
    width: 240px;
    height: 240px;
    border-radius: 50%;
    top: -120px;
    right: -120px;
    background:
        radial-gradient(rgba(52, 211, 153, .08),
            transparent);
}
.spo .exam-col::after {
    content: '';
    background: radial-gradient(rgb(40 159 220 / 8%), transparent);
}
/* =====================================
MOBILE
===================================== */
@media(max-width:768px) {
    .exam-col {
        padding: 22px;
        border-radius: 26px;
    }

    .exam-title {
        font-size: 18px;
    }

    .exam-col li {
        font-size: 15px;
        padding-left: 54px;
    }
}

.cards {
    display: grid !important;
    grid-template-columns: 1.2fr 1fr 1fr;
    grid-template-rows: repeat(2, minmax(220px, auto));
    gap: 20px;
    align-items: stretch;
}

.cards>.card {
    height: 100%;
}

.image-card {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    padding: clamp(15px, 2.5vw, 35px);
}

.image-card .img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    
    z-index: -2;
}

.image-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg,
            rgba(0, 0, 0, 0.35) 0%,
            rgba(0, 0, 0, 0.65) 100%);
    z-index: -1;
}

.image-card .badge-place,
.image-card .btn-main,
.image-card .main-info__icon,
.image-card .spec-price,
.image-card .seo-section {
    z-index: 2;
    color: #fff;
}

.image-card h3 {
    margin-bottom: 25px;
    z-index: 1;
    color: #fff;
    font-size: clamp(1.5625rem, 1.445136655948553rem + 0.5144694533762058vw, 2.0625rem);
}

.image-card .btn-main {
    backdrop-filter: blur(10px);
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.15);
}
.image-card .btn-main:hover {
    box-shadow: 0 20px 40px rgb(0 0 0 / 33%);
}

.image-card .badge-place span {
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
}

.cards>.card:nth-child(1) {
    grid-column: 1;
    grid-row: 1 / 3;
    display: flex;
    justify-content: space-between;
}

.cards>.card:nth-child(2) {
    grid-column: 2;
    grid-row: 1;
}

.cards>.card:nth-child(3) {
    grid-column: 3;
    grid-row: 1;
}

.cards>.card:nth-child(4) {
    grid-column: 2;
    grid-row: 2;
}

.cards>.card:nth-child(5) {
    grid-column: 3;
    grid-row: 2;
}

@media (max-width: 992px) {
    .cards {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto;
    }

    .cards>.card:nth-child(1) {
        grid-column: 1 / 3;
        grid-row: 1;
        min-height: 320px;
    }

    .cards>.card:nth-child(2) {
        grid-column: 1;
        grid-row: 2;
    }

    .cards>.card:nth-child(3) {
        grid-column: 2;
        grid-row: 2;
    }

    .cards>.card:nth-child(4) {
        grid-column: 1;
        grid-row: 3;
    }

    .cards>.card:nth-child(5) {
        grid-column: 2;
        grid-row: 3;
    }
}

@media (max-width: 768px) {
    .cards {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .cards>.card {
        grid-column: auto !important;
        grid-row: auto !important;
        min-height: auto;
    }
}

.spo .disciplines {
    background: #0e2232;
}

.disciplines {
    background: var(--dark-color);
    position: relative;
    overflow: hidden;
}

.disciplines::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at center, transparent 40%, rgb(32 91 61) 100%);
    z-index: 0;
}

.spo .disciplines::after {
    content: "";
    background: radial-gradient(circle at center, transparent 40%, rgb(75 173 250 / 36%) 100%);
    z-index: 0;
}

.disciplines h2,
.disciplines .subtitle p {
    color: var(--bg-white);
    z-index: 1;
    position: relative;
}

.request-section {}

.spo .request-container {
    background: #0082b1;
}

.request-container {
    display: grid;
    grid-template-columns: 480px 1fr;
    border-radius: clamp(30px, 3.5vw, 80px);
    overflow: hidden;
    position: relative;
    box-shadow: 0 20px 60px rgb(0 0 0 / 20%);
    background: #158353;
    align-items: center;
    justify-content: center;
    padding: clamp(20px, 4.5vw, 40px);
    grid-template-columns: 530px 1fr;
}

.request-container::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at center, transparent 40%, rgb(26 62 35) 100%);
}

.spo .request-container::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at center, transparent 20%, rgb(7 59 78) 100%);
}

.request-container:before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgb(255 255 255 / 25%) 1px, transparent 1px);
    background-size: 16px 16px;
    filter: blur(0.5px);
    opacity: 1;
    pointer-events: none;
}

.request-container:after {
    filter: blur(70px);
}

.request-image {
    background-position: center;
    position: relative;
    z-index: 1;
}

.request-overlay {
    position: absolute;
    display: flex;
    align-items: flex-end;
    top: 50px;
    right: 50px;
}

.request-text {
    color: #ffffff;
    background: #dedede;
    padding: 20px;
    border-radius: 20px;
    background: #4ab567;
}

.request-text h3 {
    margin: 0 0 10px;
    font-size: 26px;
    color: var(--bg-white);
}

.request-text p {
    margin: 0;
    opacity: 0.9;
    color: var(--bg-white);
}

.request-form-wrap {
    z-index: 1;
}

.request-form-wrap .form-group label {
    font-size: 15px;
    font-weight: 600;
    color: #ffffffd4;
    margin-bottom: 2px;
}

.request-form-wrap h2 {
    margin-bottom: 20px;
    color: var(--bg-white);
    font-size: clamp(2.1875rem, 1.8207395498392283rem + 1.607717041800643vw, 3.85rem);
}

.request-form-wrap form {
    display: flex;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
}

.request-form-wrap form>*:last-child {
    grid-column: 1 / -1;
    font-size: 19px;
}

.request-form-wrap form .form-group {
    margin-bottom: 0px;
}

.request-form-wrap form .form-group input,
.form-group textarea {
    background: #fffffff5;
    border: none;
    padding: clamp(10px, 3.5vw, 15px) clamp(10px, 3.5vw, 15px);
    color: #050505;
    padding-left: 50px;
    border: 1px #dedede solid;
}

.request-form-wrap form .form-group input::placeholder,
.form-group textarea::placeholder {
    color: var(--bg-white);
}

.request-form-wrap .subtitle {
    color: #ffffff;
    margin-bottom: clamp(20px, 2.5vw, 40px);
}

.form-group {
    margin-bottom: 15px;
    display: flex;
    flex-direction: column;
}

.form-group input:focus,
.form-group textarea:focus {
    border-color: #14c784;
}

.form-group.agree {
    align-items: flex-start;
}

.form-group.agree label {
    font-size: 15px;
    display: flex;
    gap: 8px;
    align-items: baseline;
}

.btn-main.full {
    width: max-content;
    border-radius: 120px;
    background: #14c784;
    color: var(--bg-white);
    border: none;
    font-weight: 600;
    cursor: pointer;
    transition: 0.3s;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
    cursor: pointer;
    transition: .25s;
    font-weight: 600;
    margin-top: 0px;
    box-shadow: 9px 20px 26px rgb(54 165 56 / 31%);
    font-size: clamp(1.125rem, 1.0809887459807075rem + 0.19292604501607719vw, 1.3125rem);
}

.spo .btn-main.full {
    background: linear-gradient(135deg, #1991ee, #53c3ff);
    color: var(--bg-white);
    cursor: pointer;
    transition: .25s;
    font-weight: 600;
    margin-top: 0px;
    box-shadow: 9px 20px 26px rgb(54 114 165 / 31%);
}

.btn-main.full:hover {}

@media (max-width: 992px) {
    .request-container {}

    .request-image {
        min-height: 320px;
    }

    .request-form-wrap {}
}

.request-benefits {
    display: flex;
    gap: 15px;
    margin-bottom: 15px;
    flex-wrap: wrap;
}

.benefit {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    background: #2e553f;
    padding: 6px 10px;
    border-radius: 15px;
    color: var(--bg-white);
    font-weight: 600;
}

.benefit i {
    color: var(--bg-white);
    font-size: 16px;
    color: var(--dark-color);
    font-weight: 600;
    display: flex;
    gap: 5px;
    font-size: 14px;
    background: #00df75;
    padding: 6px;
    display: inline-flex;
    align-items: center;
    width: max-content;
    color: #ffffff;
    border-radius: 9px;
    background: #1e392a38;
}

.consultant-widget {
    position: absolute;
    bottom: 20px;
    right: 40px;
    display: flex;
    align-items: center;
    gap: 12px;
    background: rgb(0 0 0 / 33%);
    backdrop-filter: blur(10px);
    padding: 10px 14px;
    border-radius: 16px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    transition: 0.3s;
}

.consultant-widget:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
}

.consultant-avatar {
    position: relative;
}

.consultant-avatar img {
    width: 47px;
    height: 47px;
    border-radius: 50%;
    object-fit: cover;
}

.consultant-status {
    position: absolute;
    bottom: 0px;
    right: 2px;
    width: 12px;
    height: 12px;
    background: #14c784;
    border-radius: 50%;
    border: 2px solid #48514d;
    box-shadow: 0 0 0 2px rgba(20, 199, 132, 0.2);
}

.consultant-info {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.consultant-name {
    font-size: 19px;
    font-weight: 600;
    color: #ffffff;
}

.consultant-role {
    font-size: 13px;
    color: #ffffff;
}

.consultant-online {
    font-size: 12px;
    color: #FFEB3B;
    margin-top: 2px;
    font-weight: 600;
}

.form-group small {
    font-size: 12px;
    color: #888;
    margin-top: 4px;
}

.form-group input:focus,
.form-group textarea:focus {}

.services-slider {
    position: relative;
}

.services-nav {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    transform: translateY(-50%);
    z-index: 5;
    pointer-events: none;
}

.services-prev,
.services-next {
    pointer-events: all;
    width: 64px;
    height: 64px;
    background: var(--bg-white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 25px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
    transition: 0.2s;
}

.services-prev:hover,
.services-next:hover {
    transform: scale(1.1);
}

.services-prev {
    margin-left: 30px;
}

.services-next {
    margin-right: 30px;
}

@media (max-width: 768px) {

    .services-prev,
    .services-next {
        width: 36px;
        height: 36px;
        font-size: 14px;
    }
}

.hero-extra {
    margin-top: 35px;
}

.hero-badges {}
 .spo .career-wrap .badge {
     background: #42a4f0;  
    
}
.spo .badge {
    
    color: var(--bg-white);
}

.badge {}

.hero-stats {
    display: flex;
    gap: 45px;
    margin-bottom: 15px;
    flex-wrap: wrap;
}

.stat .num {
    font-weight: 400;
    color: #ffffff;
    line-height: 1;
    font-size: clamp(1.875rem, 1.7282958199356913rem + 0.843087vw, 1.9rem);
}

.stat .label {
    font-size: 15px;
    color: rgb(255 255 255);
    font-weight: 600;
}

.hero-quick {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.chip {
    padding: 9px 25px;
    border-radius: 15px;
    background: rgb(15 15 15 / 13%);
    color: #ffffff;
    text-decoration: none;
    font-size: 15px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    transition: 0.2s;
    font-weight: 600;
    display: block;
    width: max-content;
    margin-top: 12px;
}

.chip:hover {
    background: #FFD400;
    color: #000;
}

.curator-text {
    position: relative;
    padding-bottom: 24px;
}

.curator-meta {
    position: absolute;
    right: 12px;
    bottom: 6px;
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    color: #8f8f8f;
}

.msg-status {
    position: relative;
    width: 16px;
    height: 10px;
}

.check {
    position: absolute;
    width: 7px;
    height: 3px;
    border-left: 2px solid #7ea3ff;
    border-bottom: 2px solid #7ea3ff;
    transform: rotate(-45deg);
    left: 0;
    top: 2px;
}

.check.second {
    left: 4px;
}

.popular {
    position: absolute;
    top: 20px;
    left: 20px;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 0;
    padding: 8px;
    border-radius: 30px;
    color: #ffffff;
}

.spo .popular {
    position: absolute;
    top: 20px;
    left: 20px;
    background: linear-gradient(135deg, #2aabf1, #1991ee);
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 0;
    padding: 9px;
    border-radius: 30px;
    color: #ffffff;
}

.section-line {
    background-color: #f8fafb;
    border-radius: clamp(20px, 5.5vw, 60px);
    padding: clamp(20px, 3.5vw, 60px);
}

.section-line h2 {}

.section-line .subtitle {}

.toc-layout .big-header {
    background-color: #ffffff;
    border-radius: 0px;
    padding: 0px;
    border: none;
    border-bottom: none;
    padding-bottom: 30px;
}

.big-header {
    background-color: #ffffff;
    border-bottom: 1px #e8eaed00 solid;
    padding-bottom: 30px;
}

.burger-mobile {
    display: none;
}

@media (max-width:1280px) {

    .nav-linkers,
    .levels-header-buttons,
    .header__city {
        display: none;
    }
}

.mobile-sidebar,
.mobile-menu-overlay,
.burger-mobile {
    display: none;
}

@media (max-width:1280px) {

    .mobile-sidebar,
    .mobile-menu-overlay,
    .burger-mobile {
        display: block;
    }
}

.vipusk-grid {
    margin-bottom: 30px;
}

.black-block {
    background: var(--dark-color);
    padding: 50px;
    border-radius: 40px;
    margin-bottom: 40px;
}

.black-block h2 {
    color: var(--bg-white);
}

.black-block p {
    color: var(--bg-white);
}

.black-block ul li {
    color: var(--bg-white);
}

.black-block .subtitle {
    color: var(--bg-white);
}

.vipusk-grid .black-block .seo-section ul li:before {
    background: #47e0801f;
}

.vipusk-grid .seo-section ul li:before {}

.vipusk-grid .seo-section h3 {
    margin-top: 0px;
}

.line-container {
    gap: 30px;
    border: 1px #292d31 solid;
    padding: 40px;
    border-radius: 30px;
}

.bg-place {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    filter: grayscale(1) brightness(0.5);
    object-fit: cover;
    height: 100%;
}

.bg-place-overview {
    background: #000;
    position: absolute;
    height: 100%;
    width: 100%;
    z-index: 1;
    left: 0;
    inset: 0;
    background: linear-gradient(320deg, rgba(0, 0, 0, 0.02) 0%, rgb(48 139 82 / 95%) 55%);
}

.tech-flow-section {
    position: relative;
    overflow: hidden;
}

.tech-flow-head {
    text-align: center;
    max-width: 850px;
    margin: 0 auto 30px;
}

.tech-flow-label {
    display: inline-block;
    padding: 8px 18px;
    border-radius: 100px;
    background: rgb(237 248 242);
    color: #35a35e;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: clamp(10px, 2.5vw, 20px);
}

.spo .tech-flow-label {
    background: rgb(53 150 244 / 13%);
    color: #3ca5f6;
}

.tech-flow-head h2 {
    text-align: center;
}

.tech-flow-head p {
}

.tech-flow-line {
    position: relative;
    max-width: 1100px;
    margin: auto;
    margin-bottom: clamp(25px, 2.5vw, 80px);
    margin-top: clamp(20px, 2.5vw, 60px);
}

.tech-flow-line::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    width: 2px;
    height: 100%;
    transform: translateX(-50%);
    background: linear-gradient(to bottom, transparent, #41c874 30%, #41c874 70%, transparent);
}

.spo .tech-flow-line::before {
    content: "";
    background: linear-gradient(to bottom, transparent, #4faffa 30%, #1991ee 70%, transparent);
}

.tech-node {
    position: relative;
    width: 50%;
    margin-bottom: 10px;
}

.tech-node.left {
    padding-right: 40px;
    position: relative;
}

.tech-node.left .tech-node-content {
    position: relative;
}

.tech-node.left .tech-node-content::before {
    content: "";
    position: absolute;
    top: 25px;
    right: -10px;
    width: 22px;
    height: 22px;
    background: inherit;
    transform: rotate(45deg);
    z-index: 2;
}

.tech-node.right {
    padding-left: 40px;
    margin-left: auto
}

.tech-node.right .tech-node-content {
    position: relative;
}

.tech-node.right .tech-node-content::before {
    content: "";
    position: absolute;
    top: 25px;
    left: -10px;
    width: 22px;
    height: 22px;
    background: inherit;
    transform: rotate(45deg);
    z-index: 2;
}

.tech-node-dot {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #41c874;
    position: absolute;
    top: 30px;
    z-index: 3;
}

.spo .tech-node-dot {
    background: #1991ee;
}

.tech-node.left .tech-node-dot {
    right: -9px;
}

.tech-node.right .tech-node-dot {
    left: -9px;
}

.spo .tech-node-content {
    background: rgb(229 241 254);
}

.tech-node-content {
    background: rgb(237 248 242);
    border-radius: 28px;
    padding: clamp(15px, 2.5vw, 30px);
    position: relative;
    padding-right: 50px;
}

.tech-step {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #dcf3e7;
    color: #42c974;
    font-weight: 500;
    margin-bottom: 10px;
    font-size: 19px;
    right: 20px;
    top: 20px;
}

.spo .tech-step {
    background: #40a6f640;
    color: #39a3f5;
}

.tech-node-content h3 {
    font-size: 19px;
    margin-bottom: 0px;
    line-height: 1.6;
    color: var(--dark-color);
    font-weight: 600;
    color: #000000;
}

.tech-node-content ul {}

.tech-node-content ul li {
    position: relative;
    padding-left: 35px;
    margin-bottom: 10px;
    line-height: 1.6;
}

.tech-node-content ul li::before {
    content: "";
    width: 18px;
    height: 2px;
    border-radius: 0;
    background: #42c974;
    position: absolute;
    left: 0;
    top: 10px;
}

.tech-node-content p {
    line-height: 1.8;
    color: #596172;
}

@media (max-width: 900px) {
    .tech-flow-line::before {
        left: 18px;
    }

    .tech-node {
        width: 100%;
        padding-left: clamp(35px, 2.5vw, 60px) !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
    }

    .tech-node-dot {
        left: 9px !important;
        right: auto !important;
    }

    .tech-flow-head h2 {
    }

    .tech-node-content {
    }
}

.bg-darkest {
    background: #000;
    position: absolute;
    height: 100%;
    width: 100%;
    z-index: 1;
    left: 0;
    inset: 0;
    background: linear-gradient(-30deg, rgba(0, 0, 0, 0.02) 0%, rgb(0 0 0 / 47%) 95%);
}

.img-container-form {
    overflow: hidden;
    position: relative;
}

.text-form {
    position: absolute;
    color: var(--bg-white);
    z-index: 2;
    width: 650px;
    top: clamp(30px, 4.5vw, 100px);
    left: clamp(30px, 4.5vw, 100px);
    display: flex;
    flex-direction: column;
}

.text-form p {
    color: var(--bg-white);
    font-size: 18px;
    line-height: 1.2;
    font-size: clamp(1.125rem, 1.0369774919614148rem + 0.38585209003215437vw, 1.5rem);
}

.text-form h2 {
    color: var(--bg-white);
    z-index: 3;
    font-size: 35px;
    font-weight: 700;
    font-size: clamp(1.7875rem, 0.7006832797427653rem + 2.572347266881029vw, 4.6875rem);
}

.image-form-section {
    border-radius: clamp(30px, 3.5vw, 60px);
    overflow: hidden;
    max-width: 1280px;
    margin: 0 auto;
    --nb-r: clamp(30px, 3.5vw, 60px);
    --nb-w: clamp(60px, 7.5vw, 200px);
    --nb-h: 0px;
}

.consult-button {
    line-height: 1.55;
    font-weight: 600;
    border-radius: 12px;
    background-color: var(--accent-color2);
    border: none;
    color: var(--bg-white);
    padding: 13px 40px;
    margin-top: 0;
    cursor: pointer;
    font-weight: 600;
    font-size: 20px;
    text-align: center;
    width: max-content;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
    color: var(--bg-white);
    box-shadow: 0 12px 30px rgb(21 192 56 / 27%);
}

.image-place {
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
}

.image-place .image-container {
    position: absolute;
    bottom: 0;
    width: 100%;
    max-width: clamp(290px, 26.5vw, 480px);
    height: auto;
    transform: translate(0%, 0%);
    transform: translateY(80px) scale(0.95);
    opacity: 0;
    animation: girlIn 1s ease forwards;
}

.image-place .image-container .image {
    width: 100%;
    border-radius: 0px;
    height: auto;
    object-fit: contain;
    transform: translateY(80px) scale(0.95);
    opacity: 0;
    animation: girlIn 1s ease forwards;
}

.place-layout {}

.spo .place-layout::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at center, transparent 20%, rgb(29 44 86 / 64%) 100%);
}

.place-layout::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at center, transparent 10%, rgb(8 81 46) 100%);
}

.place-layout:before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgb(255 255 255 / 39%) 1px, #00000000 1px);
    background-size: 16px 16px;
    filter: blur(0.5px);
    opacity: 0.9;
    pointer-events: none;
}

.side-label {
    position: absolute;
    right: -60px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 4;
}

.side-label span {
    position: relative;
    display: inline-block;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    font-size: 14px;
    letter-spacing: 2px;
    font-weight: 600;
    color: #4a4a4a;
}

.side-label span::before,
.side-label span::after {
    content: "";
    position: absolute;
    left: 50%;
    width: 2px;
    height: 40px;
    background: #999999;
    transform: translateX(-50%);
}

.side-label span::before {
    top: -55px;
}

.side-label span::after {
    bottom: -55px;
}

.levels-container-main {
    display: flex;
    gap: 25px;
}

.level-position {
    padding: 30px;
    background: #11111140;
    border-top-left-radius: 60px;
    border-top-right-radius: 60px;
    backdrop-filter: blur(9px);
    display: flex;
    padding-bottom: 0px;
    position: relative;
    border-radius: 40px;
    min-width: 260px;
    max-width: 300px;
}

.level-image {
    width: 160px;
}

.level-image img {
    position: absolute;
    width: 175px;
    bottom: 0;
    left: 10px;
    filter: grayscale(1);
    transition: 0.25s linear;
}

.level-position:hover img {
    bottom: 0;
    left: 10px;
}

.level-content {}

.level-title {
    line-height: 1.1;
    font-weight: 500;
    margin-bottom: clamp(9px, 1vw, 12px);
    color: var(--bg-white);
    font-size: clamp(1.25rem, 1.1913183279742765rem + 0.2572347266881029vw, 1.5rem);
}

.level-descr {
    font-size: 15px;
    font-weight: 500;
    color: var(--bg-white);
    line-height: 1.4;
}

.bg-direction {
    filter: grayscale(1) brightness(.8);
    opacity: .5;
    right: 0;
    position: absolute;
    z-index: -1;
    bottom: 0;
    height: 100%;
    -webkit-mask-image: linear-gradient(to left, rgba(0, 0, 0, 1) 60%, rgb(0 0 0 / 0%) 100%);
}

.swiper {
    z-index: 0;
}

.tilt-card {
    perspective: 400px;
    display: inline-block;
    position: absolute;
    bottom: 60px;
    right: 60px;
    z-index: 1;
    position: absolute;
}

.tilt-card__body {
    position: relative;
    width: 220px;
    height: 220px;
    border-radius: 35px;
    box-shadow:
        0 25px 50px rgba(0, 0, 0, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.6);
    transform: rotateY(-18deg) rotateX(6deg);
    transform-style: preserve-3d;
    transition: all .4s ease;
    backdrop-filter: blur(6px);
}

.tilt-card__body:hover {
    transform: rotateY(-18deg) rotateX(6deg) translateY(-8px) scale(1.02);
    box-shadow:
        0 35px 70px rgba(0, 0, 0, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

.tilt-card__img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 70%;
    transform: translate(-50%, -50%) translateZ(40px) rotateY(-10deg);
    filter: drop-shadow(0 15px 25px rgba(0, 0, 0, 0.25)) invert(100%) sepia(6%) saturate(7477%) hue-rotate(270deg) brightness(109%) contrast(102%);
    transition: all .4s ease;
    border-radius: 20px;
}

.tilt-card__body:hover .tilt-card__img {
    transform: translate(-50%, -55%) translateZ(60px) rotateY(-10deg) scale(1.05);
}

.tilt-card__body::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 35px;
    background: linear-gradient(120deg, rgba(255, 255, 255, 0.4), transparent 40%);
    pointer-events: none;
}

.block-bg {
    position: relative;
    overflow: hidden;
}

.block-bg::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(300deg, rgba(0, 0, 0, 0.15), rgb(0 0 0 / 55%));
    z-index: 1;
    transition: .35s linear;
}

.block-bg .content {
    position: relative;
    z-index: 2;
    color: var(--bg-white);
}

.block-bg .link-arrow {
    z-index: 2;
}

.block-bg {
    transition: transform .35s ease, box-shadow .35s ease;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
    transition: .35s linear;
}

.block-bg:hover {
    
    filter: grayscale(0);
    transition: .35s linear;
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.25);
}

.block-bg:hover::before {
    /* content: ''; */
    position: absolute;
    inset: 0;
    background: linear-gradient(300deg, rgba(0, 0, 0, 0.15), rgb(0 0 0 / 56%));
    z-index: 1;
    transition: .2s linear;
    backdrop-filter: blur(3px);
    transition: .35s linear;
}

.block-bg {
    position: relative;
    overflow: hidden;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.block-bg::after {
    /* content: ''; */
    position: absolute;
    inset: 0;
    /* background-image: inherit; */
    background-size: cover;
    background-position: right;
    background-repeat: no-repeat;
    transition: transform .8s ease;
    z-index: 0;
    transition: .35s linear;
}

.block-bg:hover::after {
    transform: scale(1.08);
}

.edu-slide-bg {
    position: relative;
    min-height: 450px;
    border-radius: 20px;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    transition: transform .35s ease, box-shadow .35s ease;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
    height: 100%;
}

.edu-slide-bg::before {
    content: '';
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 70%;
    z-index: 1;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.75) 0%, rgb(0 0 0 / 51%) 30%, rgba(0, 0, 0, 0.2) 60%, rgba(0, 0, 0, 0) 100%);
}

.swiper-pagination-bullet {
    background: #ffffff !important;
}

.swiper-pagination-bullet-active {
    background: #fff !important;
}

.edu-slide-content {
    position: relative;
    z-index: 2;
    padding: clamp(10px, 2.5vw, 30px);
    color: var(--bg-white);
    padding-bottom: clamp(35px, 3.5vw, 70px);
    margin: 0 auto;
}

.edu-slide-bg:hover {
    transform: translateY(-3px);
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.25);
}

.edu-slide-bg::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: inherit;
    background-size: contain;
    
    transition: transform .7s ease;
    z-index: 0;
}

.edu-slide-bg:hover::after {
    transform: scale(1.08);
}

.swiper-pagination {
    bottom: clamp(10px, 2.5vw, 25px) !important;
}

.hero-video-section {
    position: relative;
    overflow: hidden;
    color: var(--bg-white);
    margin: 0 auto;
    padding: clamp(25px, 2.5vw, 65px);
    background: #38844b;
    margin-top: -80px;
    padding-top: clamp(210px, 10.5vw, 270px) !important;
    border-bottom-left-radius: 70px;
    border-bottom-right-radius: 70px;
    border-radius: clamp(20px, 2.5vw, 40px);
    margin-left: clamp(10px, 0.5vw, 15px);
    margin-right: clamp(10px, 0.5vw, 15px);
}

.hero-video-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.hero-video-bg video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: contrast(1.05) brightness(0.7);
}

.spo .hero-overlay::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgb(255 255 255 / 25%) 1px, transparent 1px);
    background-size: 16px 16px;
    filter: blur(0.5px);
    opacity: 1;
    pointer-events: none;
}

.spo .hero-overlay::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at center, transparent 40%, rgb(29 40 86) 100%);
}

.hero-overlay::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgb(255 255 255 / 25%) 1px, transparent 1px);
    background-size: 16px 16px;
    filter: blur(0.5px);
    opacity: 1;
    pointer-events: none;
}

.hero-overlay::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at center, transparent 40%, rgb(29 86 43) 100%);
}

.hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.hero-overlay {
    overflow: hidden;
}

.spec-hero .hero-overlay::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgb(131 131 131 / 46%) 1px, transparent 1px);
    background-size: 16px 16px;
    filter: blur(0.5px);
    opacity: 1;
    pointer-events: none;
}

.spec-hero .hero-overlay::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at center, transparent 40%, #dde3e6 100%);
}

.spo .spec-hero .hero-overlay::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgb(25 145 238 / 36%) 1px, transparent 1px);
    background-size: 16px 16px;
    filter: blur(0.5px);
    opacity: 1;
    pointer-events: none;
    z-index: 0;
}

.spo .spec-hero .hero-overlay::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at center, transparent 40%, #e7f1ff 100%);
    z-index: 0;
}

.hero-grid {
    z-index: 0;
    display: flex;
    align-items: end;
    justify-content: space-between;
    padding-left: 0px;
    padding-right: 0px;
    z-index: 4;
}

.hero-main {
    width: 600px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.spo .hero-main h1 {
    z-index: 0;
}

.hero-main h1 span {
    position: relative;
    font-size: 20px;
    padding: clamp(10px, 1vw, 15px) clamp(15px, 2vw, 20px);
    height: 70px;
    align-items: center;
    right: -15px;
    top: -5px;
    text-transform: uppercase;
    font-weight: 300;
    font-size: clamp(1.25rem, 0.9565916398713826rem + 1.2861736334405145vw, 2.5rem);
}

.hero-main h1 span {
    background: radial-gradient(47.2% 50% at 50.39% 88.37%,
            rgba(255, 255, 255, 0.12) 0%,
            rgba(255, 255, 255, 0) 100%),
        rgba(255, 255, 255, 0.04);
    position: relative;
    transition: background 0.3s ease;
    border-radius: 34px;
    width: fit-content;
    height: fit-content;
    color: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(5px);
    z-index: 5;
}

.hero-main h1 span:hover {
    background: radial-gradient(47.2% 50% at 50.39% 88.37%,
            rgba(255, 255, 255, 0.12) 0%,
            rgba(255, 255, 255, 0) 100%),
        rgba(255, 255, 255, 0.08);
}

.hero-main h1 span::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 1px;
    background: linear-gradient(150deg,
            rgba(255, 255, 255, 0.48) 16.73%,
            rgba(255, 255, 255, 0.08) 30.2%,
            rgba(255, 255, 255, 0.08) 68.2%,
            rgba(255, 255, 255, 0.6) 81.89%);
    border-radius: inherit;
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask-composite: xor;
    -webkit-mask-composite: xor;
    pointer-events: none;
}

.hero-main .description {
    line-height: 1.4;
    margin-bottom: clamp(20px, 2vw, 30px);
    font-weight: 500;
    font-size: clamp(1.05rem, 1.047307073954984rem + 0.45016077170418006vw, 1.6875rem);
    z-index: 4;
    position: relative;
}

.hero-actions {
    margin-top: 30px;
    display: flex;
    gap: 15px;
    justify-content: center;
}

.btn-primary {
    background: #FFD400;
    color: #000;
    padding: 14px 22px;
    border-radius: 10px;
    text-decoration: none;
    font-weight: 600;
}

.btn-secondary {
    border: 1px solid rgba(255, 255, 255, 0.4);
    color: var(--bg-white);
    padding: 14px 22px;
    border-radius: 10px;
    text-decoration: none;
    flex: 1;
    text-align: center;
    justify-content: center;
    align-items: center;
    display: flex;
}

.hero-side {
    z-index: 4;
    position: relative;
}

.hero-stats {
    grid-template-columns: 1fr;
    gap: 15px;
}

.stat {
    background: rgba(255, 255, 255, 0.08);
    padding: 14px;
    border-radius: 14px;
    backdrop-filter: blur(10px);
}

.levels-container-main {
    display: flex;
    gap: clamp(10px, 1.5vw, 20px);
    z-index: 234;
}

.level-position {
    display: flex;
    gap: 12px;
    background: rgb(0 0 0 / 13%);
    padding: clamp(20px, 2vw, 25px);
    border-radius: 25px;
    padding-right: clamp(50px, 5vw, 70px);
    --nb-w: clamp(17px, 1vw, 20px);
    --nb-h: clamp(0px, .14vw, 20px);
}

.level-position .link-arrow {
    display: flex;
    justify-content: center;
    background: #4343430f;
    padding: 10px 10px;
    width: 60px;
    height: 50px;
    border-radius: 20px;
    color: #2d3847;
    box-shadow: -15px -15px 20px rgb(119 119 119 / 5%), 15px 15px 20px rgb(57 124 62 / 10%);
    height: 40px;
    border-radius: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 1;
    position: absolute;
    bottom: 15px;
    width: 40px;
    right: 15px;
}

.level-position .link-arrow img {
    filter: invert(99%) sepia(1%) saturate(2%) hue-rotate(188deg) brightness(107%) contrast(100%);
}

.level-image img {}

.level-title {
    font-weight: 600;
}

.level-descr {
    opacity: 0.8;
}

.chip {
    display: inline-block;
    margin-top: 8px;
    padding: 9px 13px;
    border-radius: 8px;
    font-size: 15px;
    text-decoration: none;
    background: #00000024;
    color: #ffffff;
}

.spec-hero .cta-wrap {
    margin-top: clamp(20px, 3.5vw, 50px);
}

.cta-wrap {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 15px;
    z-index: 3;
    position: relative;
}

.cta {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: clamp(13px, 2.5vw, 18px) clamp(25px, 2.5vw, 30px);
    border-radius: clamp(15px, 2.5vw, 30px);
    text-decoration: none;
    transition: all 0.25s ease;
}

.cta i {
    font-size: 21px;
    transition: transform 0.25s ease;
}

.cta-text {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

.cta-title {
    font-weight: 600;
    font-size: clamp(1.125rem, 1.0809887459807075rem + 0.19292604501607719vw, 1.4125rem);
}

.cta-subtitle {
    font-size: 13px;
    opacity: 0.8;
    margin-top: 3px;
}

.spo .cta-primary {
    background: linear-gradient(135deg, #3bc9ff, #0083b8);
    color: #ffffff;
    box-shadow: 0 12px 26px rgb(111 189 255 / 25%);
    background: linear-gradient(135deg, #2badf1, #025ca9);
}

.cta-primary {
    background: linear-gradient(135deg, #8BC34A, #19893e);
    color: #ffffff;
    box-shadow: 0 12px 26px rgb(31 98 14 / 25%);
    line-height: 1;
    display: flex;
    position: relative;
    box-shadow: 0 12px 26px rgb(98 80 14 / 25%);
    line-height: 1;
    display: flex;
    position: relative;
    overflow: hidden;
    max-width: max-content;
    cursor:pointer;
}

.spec-hero .cta-primary {
    color: #000000;
    box-shadow: 0 12px 26px rgb(31 98 14 / 25%);
    line-height: 1;
    display: flex;
    position: relative;
    background: linear-gradient(135deg, #05b368, #247c28);
    color: #ffffff;
    box-shadow: 9px 20px 26px rgb(77 165 54 / 31%);
    line-height: 1;
    display: flex;
    position: relative;
    overflow: hidden;
}

.spo .spec-hero .cta-primary {
    background: linear-gradient(135deg, #7ac5ff, #1991ee);
    color: #ffffff;
    box-shadow: 9px 20px 26px rgb(54 117 165 / 31%);
}

.spec-hero .cta-primary::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 2px;
    background: linear-gradient(150deg, rgba(255, 255, 255, 0.48) 16.73%, rgba(255, 255, 255, 0.08) 30.2%, rgba(255, 255, 255, 0.08) 68.2%, rgba(255, 255, 255, 0.6) 81.89%);
    border-radius: inherit;
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask-composite: xor;
    -webkit-mask-composite: xor;
    pointer-events: none;
}

.spec-hero .cta-secondary {
    background: rgb(0 0 0);
    color: #000000;
    border: 1px solid rgb(28 28 28);
    backdrop-filter: blur(12px);
    background: rgb(60 60 60 / 2%);
}

.spec-hero .cta-secondary::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 2px;
    background: linear-gradient(150deg, rgba(255, 255, 255, 0.48) 16.73%, rgba(255, 255, 255, 0.08) 30.2%, rgba(255, 255, 255, 0.08) 68.2%, rgba(255, 255, 255, 0.6) 81.89%);
    border-radius: inherit;
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask-composite: xor;
    -webkit-mask-composite: xor;
    pointer-events: none;
}

.cta-secondary::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 1px;
    background: linear-gradient(150deg, rgba(255, 255, 255, 0.48) 16.73%, rgba(255, 255, 255, 0.08) 30.2%, rgba(255, 255, 255, 0.08) 68.2%, rgba(255, 255, 255, 0.6) 81.89%);
    border-radius: inherit;
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask-composite: xor;
    -webkit-mask-composite: xor;
    pointer-events: none;
}

.cta-primary::after {
    content: "";
    position: absolute;
    top: -50%;
    left: -60%;
    width: 30%;
    height: 200%;
    animation: shine 1.5s ease-in-out infinite;
    background: linear-gradient(120deg,
            transparent 0%,
            rgba(255, 255, 255, 0.7) 45%,
            rgba(255, 255, 255, 0.9) 50%,
            rgba(255, 255, 255, 0.7) 55%,
            transparent 100%);
    filter: blur(29px);
    transform: rotate(25deg);
    pointer-events: none;
}

@keyframes shine {
    0% {
        left: -60%;
    }

    100% {
        left: 120%;
    }
}

.spo .cta-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 40px rgb(22 120 163 / 35%);
}

.cta-primary:hover i {
    transform: translateX(3px);
}

.place-main-actions .cta-secondary {
    color: #000;
    background: none;
    border: 1px #000 solid;
}

.cta-secondary {
    background: rgb(0 0 0);
    color: var(--bg-white);
    border: 1px solid rgba(255, 255, 255, 0.18);
    backdrop-filter: blur(12px);
    background: rgb(0 0 0 / 13%);  cursor:pointer;
}

.cta-secondary:hover {
    transform: translateY(-2px);
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.28);
}

.cta-secondary:hover i {
    transform: translateX(3px);
}

.cta:active {
    transform: translateY(1px) scale(0.98);
}

.cta:focus-visible {
    outline: 2px solid rgb(171 225 99);
    outline-offset: 3px;
}

.hero-stats {
    display: flex;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
    position: absolute;
    top: 100px;
    right: 100px;
    max-width: 600px;
    flex-direction: row-reverse;
    z-index: 1;
}

.stat-card {
    padding: 50px;
    border-radius: 60px;
    background: rgb(0 0 0 / 9%);
    border: 1px solid rgb(255 255 255 / 21%);
    backdrop-filter: blur(6px);
    transition: all 0.25s ease;
    height: 300px;
    width: 250px;
    display: flex;
    flex-direction: column;
    justify-content: end;
    box-shadow: 0 20px 40px rgb(0 0 0 / 7%);
    align-items: flex-end;
}

.stat-card {
    background: radial-gradient(47.2% 50% at 50.39% 88.37%,
            rgba(255, 255, 255, 0.12) 0%,
            rgba(255, 255, 255, 0) 100%),
        rgba(255, 255, 255, 0.04);
    position: relative;
    transition: background 0.3s ease;
    border-radius: 34px;
    color: rgba(255, 255, 255, 0.8);
}

.stat-card:hover {
    background: radial-gradient(47.2% 50% at 50.39% 88.37%,
            rgba(255, 255, 255, 0.12) 0%,
            rgba(255, 255, 255, 0) 100%),
        rgba(255, 255, 255, 0.08);
}

.stat-card::after {}

.stat-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 1px;
    background: linear-gradient(150deg,
            rgba(255, 255, 255, 0.48) 16.73%,
            rgba(255, 255, 255, 0.08) 30.2%,
            rgba(255, 255, 255, 0.08) 68.2%,
            rgba(255, 255, 255, 0.6) 81.89%);
    border-radius: inherit;
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask-composite: xor;
    -webkit-mask-composite: xor;
    pointer-events: none;
}

.stat-card:hover {}

.stat-num {
    font-size: 40px;
    font-weight: 200;
    color: var(--bg-white);
    letter-spacing: -0.02em;
    line-height: 1.1;
    font-size: clamp(2.5rem, 2.2065916398713825rem + 1.2861736334405145vw, 3.75rem);
}

.stat-label {
    font-size: 15px;
    opacity: 1;
    margin-top: 0px;
    font-weight: 400;
    font-size: clamp(0.9375rem, 0.9641479099678456rem + 0.3215434083601286vw, 1.25rem);
}

.hero-video-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
}

.hero-video-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-girl-wrap {
    position: absolute;
    left: 55%;
    transform: translateX(-35%);
    z-index: 3;
    bottom: 0;
}

@media(max-width:1024px) {

    .place-layout .cta-wrap{
        display:none;
    }
    .image-place .image-container .image {
   
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 1) 30%, rgb(0 0 0 / 0%) 100%);
}
.image-place .image-container {
    position: absolute;
    bottom: 100px;
    width: 100%;
    max-width: clamp(300px, 39.5vw, 490px);
    height: auto;
    transform: translate(0%, 0%);
    transform: translateY(80px) scale(0.95);
    opacity: 0;
    animation: girlIn 1s ease forwards;
    /* -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 1) 60%, rgb(0 0 0 / 0%) 100%); */
    transform: translateX(10px);
}
    
    .girl-glow {
        display: none;
    }

    .hero-girl-wrap {
        position: absolute;
        top: 0px;
        left: 0;
        width: 100%;
        z-index: 4;
        width: 100%;
        height: 450px;
        mask-image: linear-gradient(to top, rgba(0, 0, 0, 1) 60%, rgba(0, 0, 0, 0) 100%);
        -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 1) 60%, rgb(0 0 0 / 0%) 100%);
        transform: initial;
        right: 0;
        bottom: initial;
    }

    .hero-girl {
        position: absolute;
        bottom: 0;
        width: clamp(320px, 53.5vw, 385px);
    }

    .hero-video-section {
        position: relative;
        overflow: hidden;
        color: var(--bg-white);
        margin: 0 auto;
        background: #38844b;
        margin-top: -75px;
        padding-top: 320px !important;
        border-radius: 0px;
    }

    .levels-container-main {
        display: flex;
        flex-wrap: wrap;
        justify-content: start;
        margin: 0 auto;
        margin-bottom: 0px;
        overflow-x: auto;
        flex-wrap: nowrap;
        width: 100%;
        scrollbar-color: #ffffff00 #ffffff12;
        scroll-behavior: smooth;
        scrollbar-width: none;
        scrollbar-color: #f7f7f7 #ffffff;
    }

    .cta-primary,
    .cta-secondary {
        width: 100%;
        justify-content: center;
        max-width: 100%;
    }

    .hero-main {
        width: 100%;
        z-index: 4;
    }

    .hero-stats {
        display: flex;
        grid-template-columns: repeat(3, 1fr);
        gap: 15px;
        position: absolute;
        top: 60px;
        right: 10px;
        max-width: 600px;
        flex-direction: row-reverse;
        z-index: 1;
    }

    .stat-card {
        padding: clamp(20px, 4.5vw, 50px);
        border-radius: clamp(20px, 5.5vw, 60px);
        background: rgb(0 0 0 / 9%);
        border: 1px solid rgb(255 255 255 / 21%);
        transition: all 0.25s ease;
        height: clamp(115px, 31.5vw, 270px);
        width: clamp(155px, 31.5vw, 250px);
        display: flex;
        flex-direction: column;
        justify-content: end;
        box-shadow: 0 20px 40px rgb(0 0 0 / 7%);
        align-items: flex-end;
    }
}

.hero-girl {
    display: block;
    transform: translateY(80px) scale(0.95);
    opacity: 0;
    filter: blur(10px);
    animation: girlIn 1s ease forwards;
}

.girl-glow {
    position: absolute;
    width: 390px;
    height: 390px;
    border-radius: 50%;
    filter: blur(80px);
    opacity: 0;
    z-index: -1;
}

.glow-1 {
    background: rgb(0 255 122 / 21%);
    top: -20%;
    left: -80px;
    animation: glowFade 1.2s ease forwards;
    animation-delay: 0.5s;
    z-index: -1;
}

.glow-2 {
    background: rgb(0 255 169 / 54%);
    bottom: -23%;
    right: -220px;
    animation: glowFade 1.2s ease forwards;
    animation-delay: 0.8s;
}

.spo .glow-1 {
    background: rgb(0 177 255 / 40%);
    top: -20%;
    left: -80px;
    animation: glowFade 1.2s ease forwards;
    animation-delay: 0.5s;
    z-index: -1;
}

.spo .glow-2 {
    background: rgb(36 135 231 / 29%);
    bottom: -23%;
    right: -220px;
    animation: glowFade 1.2s ease forwards;
    animation-delay: 0.8s;
}

@keyframes girlIn {
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
        filter: blur(0);
    }
}

@keyframes glowFade {
    to {
        opacity: 1;
    }
}

@keyframes cardIn {
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.gallery-wrapper,
.gallery-main,
.gallery-thumbs,
.swiper,
.swiper-wrapper,
.swiper-slide {
    min-width: 0;
}

.grid-2>div {
    min-width: 0;
}

@media(max-width:1024px) {
    .gallery-wrapper {
        display: flex;
        flex-direction: column-reverse;
        gap: 12px;
        overflow: hidden;
    }

    .gallery-main {
        width: 100%;
        overflow: hidden;
        border-radius: 20px;
    }

    .gallery-thumbs {
        width: 100%;
        overflow: hidden;
    }

    .gallery-thumbs .swiper-slide {
        width: 80px !important;
        flex-shrink: 0;
    }

    .main-image {
        aspect-ratio: 1 / 1;
        background-size: cover;
        background-position: center;
    }

    .swiper {
        width: 100%;
        max-width: 100%;
    }

    .spec-hero {
        padding-top: clamp(30px, 2.5vw, 200px);
        margin-top: 10px;
    }

    .subtitle {
        max-width: 100%;
    }

    .former-place {
        position: absolute;
        bottom: 0;
        left: 10px;
        width: 100%;
        z-index: 1;
        display: none;
    }
 .static-header-section .bc{
   z-index: 6;
   }
    .static-header-section .breadcrumb__separator{
        color: #000000;
    }
section:first-child {
    padding-top: 0px;
}section.spec-hero {
    padding-bottom: 0px;
    background: #e6ebea;
    margin: 15px;
    border-radius: clamp(20px, 2.5vw, 50px);
    padding-top: 40px;
}
    .place-layout {
        display: grid;
        position: relative;
        grid-template-columns: 1fr;
        gap: clamp(15px, 2.5vw, 40px);
        padding-top: 55px;
        height: 100%;
        display: flex;
        grid-template-columns: auto;
        gap: 10px;
        flex-direction: column-reverse;
        min-height: 480px;
        /* align-items: end; */
    }

    .tilt-card {
   display:none;
}
.bg-direction {
    filter: grayscale(1) brightness(.8);
    opacity: .5;
    right: 0;
    position: absolute;
    z-index: -1;
    bottom: 0;
    height: 100%;
    -webkit-mask-image: linear-gradient(to left, rgba(0, 0, 0, 1) 60%, rgb(0 0 0 / 0%) 100%);
    object-fit: cover;
}

   
    .toc-dzen {
        position: fixed;
        left: -80px;
        top: 50%;
        transform: translateY(-50%);
        z-index: 100;
        transition:
            left .35s cubic-bezier(.4, 0, .2, 1),
            opacity .35s;
        opacity: 0;
    }

    .toc-dzen.visible {
        left: 12px;
        opacity: 1;
    }

    .former-place .admission-btn {}

    .hero-cutout {
        display: none;
    }

    .services-slider .cards {
        flex-direction: column;
        grid-template-columns: 1fr;
    }

    .request-form-wrap form {
        flex-direction: column;
        flex-wrap: wrap;
        width: 100%;
    }

    .form .form-panel {
        flex-direction: column;
        flex-wrap: wrap;
        width: 100%;
    }

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {}
}

.mobile-fixed-cta {
    display: none;
}

.layoutcontentindex {
    padding-right: 10px;
    z-index: 3;
}
@media (max-width:1024px) {
    .mobile-fixed-cta {
        position: fixed;
        left: 12px;
        right: 12px;
        bottom: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        height: 52px;
        padding: 0 20px;
        border-radius: 18px;
        background: var(--blue);
        color: #fff;
        font-size: 17px;
        font-weight: 600;
        text-decoration: none;
        z-index: 90;
        box-shadow:
            0 10px 30px rgba(0, 0, 0, .18),
            0 4px 12px rgba(0, 0, 0, .12);
        transition:
            transform .25s ease,
            opacity .25s ease;
        background: #1a8d3c;
        background: linear-gradient(135deg, var(--accent-color), var(--accent-color2));
        color: var(--bg-white);
        box-shadow: 0 12px 30px rgb(21 192 56 / 27%);
    }
  .spo .mobile-fixed-cta {
  }
    .mobile-fixed-cta:active {
        transform: scale(.97);
    }

    body {
        padding-bottom: 90px;
    }

    .mobile-fixed-cta {
        transform: translateY(120px);
        opacity: 0;
    }

    .spo .mobile-fixed-cta.visible {
        transform: translateY(0);
        opacity: 1;
        background: #2aacf1;
        box-shadow: 0 12px 30px rgb(21 134 192 / 27%);
    }

    .mobile-fixed-cta.visible {
        transform: translateY(0);
        opacity: 1;
    }

    .directions-list {
        display: flex;
        gap: 15px;
        flex-wrap: wrap;
        gap: 5px;
        justify-content: start;
        margin: 0 auto;
        padding: clamp(0px, 1vw, 0px) clamp(8px, 2.5vw, 15px);
        margin: 0 auto;
        margin-bottom: 0px;
        overflow-x: auto;
        flex-wrap: nowrap;
        white-space: nowrap;
        width: 100%;
        scrollbar-color: #ffffff00 #ffffff12;
        scroll-behavior: smooth;
        scrollbar-width: none;
        scrollbar-color: #f7f7f7 #ffffff;
    }
.image-logo{
    display:none;
}.layoutcontentindex{padding:0px}
.layoutcontentindex:before {
         content: "";
         position: absolute;
         bottom: 0px;
         left: 0;
         width: 100%;
         background: linear-gradient(180deg, rgba(255, 255, 255, 0) 50%, rgb(0 0 0) 100%
100%
);
         opacity: 1;
         z-index: 1;
         width: 100%;
         height: 500px;
         background: linear-gradient(180deg, rgba(255, 255, 255, 0) 20%, rgb(0 0 0 / 63%) 90%);
         /* backdrop-filter: blur(7px); */
         mask-image: linear-gradient(to top, rgba(0, 0, 0, 1) 60%, rgba(0, 0, 0, 0) 100%);
         -webkit-mask-image: linear-gradient(to top, rgba(0, 0, 0, 1) 60%, rgb(0 0 0 / 0%) 100%);
}

    .request-container {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    }
}

.container-hero {
    max-width: 1340px;
    margin: 0 auto;
}


.image-logo {
    position: absolute;
    z-index: 0;
    opacity: .4;
    width: 390px;
    right: 120px;
}

.spo .image-logo {
    filter: invert(40%) sepia(91%) saturate(546%) hue-rotate(158deg) brightness(100%) contrast(89%);
}

.spo .header-modal {
    background: linear-gradient(135deg, #2badf1, #025ca9);
    color: #ffffff;
    box-shadow: 0 12px 26px rgb(111 189 255 / 25%);
    width: max-content;
    padding: 15px 18px;
    gap: 10px;
    outline: 1px #ffffff3b solid;
    display: flex;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    margin-bottom: 0px;
    font-weight: 500;
    border-radius: 40px;
    gap: 8px;
    align-items: baseline;
    line-height: 1;
}

.spo .header-modal i {
    font-size: 15px;
    transition: transform 0.25s ease;
}

.spo .header-modal .text {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

.spo .header-modal .text {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

.spo .header-modal .text .title {
    font-weight: 600;
    font-size: 18px;
}

.spo .header-modal::after {
    content: "";
    position: absolute;
    top: -50%;
    left: -60%;
    width: 30%;
    height: 200%;
    animation: shine 1.5s ease-in-out infinite;
    background: linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, 0.7) 45%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.7) 55%, transparent 100%);
    filter: blur(29px);
    transform: rotate(25deg);
    pointer-events: none;
}

.header-modal {
    color: #ffffff;
    width: max-content;
    background: linear-gradient(135deg, #05b368, #247c28);
    color: #ffffff;
    box-shadow: 9px 20px 26px rgb(77 165 54 / 31%);
    padding: 15px 18px;
    gap: 10px;
    outline: 1px #ffffff3b solid;
    display: flex;
    position: relative;
    overflow: hidden;
    margin-bottom: 0px;
    font-weight: 500;
    border-radius: 40px;
    cursor: pointer;
    gap: 8px;
    align-items: baseline;
    line-height: 1;
}

.header-modal i {
    font-size: 15px;
    transition: transform 0.25s ease;
}

.header-modal .text {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

.header-modal .text {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

.header-modal .text .title {
    font-weight: 600;
    font-size: 18px;
}

.header-modal::after {
    content: "";
    position: absolute;
    top: -50%;
    left: -60%;
    width: 30%;
    height: 200%;
    animation: shine 1.5s ease-in-out infinite;
    background: linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, 0.7) 45%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.7) 55%, transparent 100%);
    filter: blur(29px);
    transform: rotate(25deg);
    pointer-events: none;
}

.mega-city {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right,
            rgba(84, 132, 255, .18),
            transparent 45%),
        linear-gradient(180deg,
            #121826 0%,
            #0f1724 100%);
    min-height: 100%;
}

.mega-city::before {
    content: '';
    position: absolute;
    right: -210px;
    bottom: -50px;
    width: 680px;
    height: 420px;
    background: url('/img/map-glow.svg') center/contain no-repeat;
    opacity: .1;
    pointer-events: none;
    z-index: 0;
}

.mega-city-top {
    margin-bottom: 24px;
    z-index: 1;
    position: relative;
}

.mega-city-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    color: #fff;
    font-size: 13px;
}

.mega-city h3 {
    margin-top: 18px;
    margin-bottom: 10px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
}

.mega-city p {
    color: rgba(255, 255, 255, .72);
    line-height: 1.5;
}

.city-selector-container {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 16px 18px;
    border-radius: 18px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .08);
    color: #fff;
    cursor: pointer;
    transition: .25s;
}

.city-selector-container:hover {
    background: rgba(255, 255, 255, .12);
    transform: translateY(-2px);
    background: #22cf76;
}

.mega-city-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
}

.mega-city-list button {
    border: none;
    padding: 10px 14px;
    border-radius: 14px;
    background: rgba(255, 255, 255, .06);
    color: #fff;
    transition: .2s;
}

.mega-city-list button:hover {
    background: rgba(255, 255, 255, .14);
}

/* =========================================
MAIN
========================================= */
.place-hero-grid-section {
    position: relative;
    /* padding: 30px; */
    overflow: hidden;
    margin-bottom: clamp(15px, 2.5vw, 50px);
}

/* =========================================
TOP GRID
========================================= */
.place-hero-grid-v2 {
    display: grid;
    grid-template-columns: 330px 1fr 320px;
    gap: 20px;
}

/* =========================================
SIDE
========================================= */
.place-side-gallery {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.place-side-card {
    position: relative;
    height: 250px;
    overflow: hidden;
    border-radius: 30px;
    background: #f3f6fb;
    border: 1px solid #e6ebf2;
}

.place-side-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 1.2s ease;
}

.place-side-card:hover img {
    transform: scale(1.06);
}

/* =========================================
CENTER
========================================= */
.place-center-column {
    position: relative;
    z-index: 2;
}

.place-info-card {
    position: relative;
    overflow: hidden;
    border-radius: clamp(20px, 2.5vw, 40px);
    padding: clamp(20px, 3vw, 40px);
    background: #ffffff;
    display: flex;
    align-items: center;
    --nb-r: clamp(15px, 2.5vw, 30px);
    --nb-w: clamp(60px, 14.5vw, 270px);
    --nb-h: 0px;
}

.place-info-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgb(36 36 36 / 34%) 1px, #00000000 1px);
    background-size: 15px 15px;
    opacity: .7;
}

.spo .place-info-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at center, transparent 40%, rgb(25 145 238 / 8%) 100%);
}

.place-info-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at center, transparent 50%, rgb(228 245 241) 100%);
}

.place-info-content {
    position: relative;
    z-index: 2;
}

.spo .place-type-badge {
    background: #1991ee14;
    color: #2486cb;
}

.place-type-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px clamp(10px, 1.5vw, 20px);
    border-radius: 999px;
    background: #42c97417;
    color: #05b368;
    font-weight: 700;
    margin-bottom: clamp(15px, 2.5vw, 25px);
    font-size: 14px;
}

.place-main-title {
    margin-bottom: clamp(15px, 2.5vw, 25px);
}

.place-main-descr {
    font-size: 20px;
    line-height: 1.6;
    color: #111;
    font-weight: 500;
}

.place-main-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 36px;
}

/* =========================================
BOTTOM GRID
========================================= */
.place-bottom-grid {
    margin-top: 20px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}

.place-bottom-card {
    position: relative;
    overflow: hidden;
    border-radius: clamp(15px, 2.5vw, 30px);
    height: clamp(100px, 25.5vw, 260px);
    background: #f3f6fb;
    border: 1px solid #e6ebf2;
}

.place-bottom-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 1.2s ease;
}

.place-bottom-card:hover img {
    transform: scale(1.07);
}

/* =========================================
FACTS
========================================= */
.place-facts-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: flex-end;
    padding: 18px;
    background: linear-gradient(to top, rgba(0, 0, 0, .78), rgb(0 0 0 / 39%), transparent);
}

.place-facts-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.place-fact-item {
    padding: 10px 16px;
    border-radius: 14px;
    background: rgba(255, 255, 255, .14);
    backdrop-filter: blur(12px);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    border: 1px solid rgba(255, 255, 255, .16);
}

/* =========================================
LOGO CARD
========================================= */
.logo-card {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px;
    background:
        radial-gradient(circle at top,
            rgba(91, 124, 255, .12),
            transparent 60%),
        #fff;
}

.logo-card img {
    object-fit: contain;
    max-width: 100%;
    max-height: 100%;
}

/* =========================================
RESPONSIVE
========================================= */
@media(max-width:1400px) {
    .place-hero-grid-v2 {
        grid-template-columns: 220px 1fr 220px;
    }
}

@media(max-width:1100px) {
    .place-hero-grid-v2 {
        grid-template-columns: 1fr;
    }
    .navigation-container-slider{
        display:none;
    }
.toc-layout section {
    padding: 15px;
  
}
    .place-side-gallery {
        flex-direction: row;
    }

    .place-side-card {
        flex: 1;
        height: 220px;
    }

    .place-bottom-grid {
        /* grid-template-columns: repeat(2, 1fr); */
    }
}

@media(max-width:768px) {
    .place-hero-grid-section {
        /* padding: 16px; */
    }

    .place-side-gallery {
        flex-direction: column;
        display: none;
    }
.place-center-column .bc{
    display:none;
}
    .place-main-descr {
        font-size: 16px;
    }

    .place-bottom-grid {
        /* grid-template-columns: 1fr; */
    }

    .place-info-card {
        min-height: auto;
    }
}

/* =========================================================
FAQ PREMIUM
========================================================= */
.faq-premium-section {
    position: relative;
    overflow: hidden;
    padding: 120px 0;
    isolation: isolate;
    background: #ccecde3b;
    margin-bottom: 40px;
    margin: 15px;
    border-radius: clamp(20px, 2.5vw, 50px);
    overflow: hidden;
    background: #f7f9fa;
    padding: clamp(20px, 4.5vw, 80px);
    margin-bottom: 40px;
}
.faq-premium-section .container{
    padding:0px;
}
/* =========================================================
BACKGROUND
========================================================= */
.faq-bg-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(100px);
    opacity: .5;
    pointer-events: none;
}

.spo .faq-glow-1 {
    width: 1000px;
    height: 1000px;
    background: #0563b317;
    top: -120px;
    left: -150px;
}

.faq-glow-1 {
    width: 1000px;
    height: 1000px;
    background: #05b36817;
    top: -120px;
    left: -150px;
}

.spo .faq-glow-2 {
    width: 1200px;
    height: 1200px;
    background: #32699812;
    right: -100px;
    bottom: -120px;
}

.faq-glow-2 {
    width: 1200px;
    height: 1200px;
    background: #32985612;
    right: -100px;
    bottom: -120px;
}

/* =========================================================
TOP
========================================================= */
.faq-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: clamp(15px, 2.5vw, 40px);
    margin-bottom: clamp(20px, 3.5vw, 50px);
}

.faq-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px;
    border-radius: 999px;
    background: rgb(255 255 255);
    border: 1px solid rgba(255, 255, 255, .6);
    font-size: 13px;
    font-weight: 700;
    margin-bottom: clamp(15px, 1.5vw, 20px);
    color: var(--text);
    box-shadow: 0 10px 40px rgba(0, 0, 0, .04);
}

.faq-badge span {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #22c55e;
    box-shadow: 0 0 12px #22c55e;
}

.faq-premium-title {
    /* line-height: 1; */
    /* font-weight: 500; */
    /* letter-spacing: -3px; */
    /* margin-bottom: 20px; */
    /* max-width: 850px; */
}

.faq-premium-subtitle {
    max-width: 650px;
    font-size: clamp(1.025rem, 0.9809887459807075rem + .22292604501607719vw, 1.5125rem);
    line-height: 1.6;
    color: var(--text2);
}

.faq-premium-subtitle a {
    color: var(--primary);
    font-weight: 700;
}

/* =========================================================
STATS
========================================================= */
.faq-stats-card {
    display: flex;
    align-items: center;
    gap: 13px;
    padding: clamp(10px, 1.5vw, 20px);
    border-radius: clamp(15px, 2.5vw, 30px);
    min-width: 300px;
    background: rgba(255, 255, 255, .65);
    border: 1px solid rgba(255, 255, 255, .8);
    box-shadow:
        0 30px 80px rgba(0, 0, 0, .07);
    z-index: 1;
    position: relative;
}

.faq-stats-icon {
    width: clamp(36px, 3.5vw, 50px);
    height: clamp(36px, 3.5vw, 50px);
    border-radius: clamp(10px, 1.5vw, 20px);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: clamp(1.0625rem, 0.9744774919614148rem + 0.38585209003215437vw, 1.4375rem);
    background: linear-gradient(135deg, #05b368, #247c28);
    color: #ffffff;
    box-shadow: 9px 20px 26px rgb(77 165 54 / 31%);
    line-height: 1;
}

.spo .faq-stats-icon {
    background: linear-gradient(135deg, #3bc9ff, #0083b8);
    color: #ffffff;
    box-shadow: 0 12px 26px rgb(111 189 255 / 25%);
    background: linear-gradient(135deg, #2badf1, #025ca9);
}

.faq-stats-number {
    font-weight: 500;
    line-height: 1;
    margin-bottom: 4px;
    font-size: clamp(1.4375rem, 1.2907958199356913rem + 0.6430868167202572vw, 2.0625rem);
}

.faq-stats-text {
    color: #000000;
    line-height: 1.5;
    font-weight: 500;
    font-size: 14px;
}

/* =========================================================
TOOLBAR
========================================================= */
.faq-toolbar {
    position: sticky;
    top: 20px;
    z-index: 20;
    display: flex;
    flex-direction: column;
    gap: clamp(10px, 1.5vw, 22px);
    margin-bottom: clamp(25px, 3.5vw, 50px);
    padding: 24px;
    border-radius: 34px;
    background: rgba(255, 255, 255, .7);
    border: 1px solid rgba(255, 255, 255, .8);
    box-shadow: 0 20px 60px rgba(0, 0, 0, .06);
}

/* =========================================================
SEARCH
========================================================= */
.faq-search-wrap {
    position: relative;
}

.faq-search-icon {
    position: absolute;
    left: 24px;
    top: 50%;
    transform: translateY(-50%);
    color: #707f94;
    font-size: 18px;
    line-height: 0;
}

.faq-search-input {
    width: 100%;
    height: 72px;
    border: none;
    outline: none;
    padding: 0 24px 0 55px;
    border-radius: 24px;
    background: rgb(247 247 247 / 80%);
    font-size: 17px;
    font-weight: 600;
    color: #000;
    box-shadow: inset 0 0 0 1px rgb(0 0 0 / 15%);
    transition: .3s ease;
}

.faq-search-input:focus {
    box-shadow:
        inset 0 0 0 2px #1991ee,
        0 10px 30px rgba(25, 145, 238, .12);
}

/* =========================================================
TAGS
========================================================= */
.faq-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.faq-tag {
    border: none;
    outline: none;
    cursor: pointer;
    padding: clamp(5px, 1.5vw, 10px) clamp(10px, 1.5vw, 20px);
    border-radius: 23px;
    background: rgba(255, 255, 255, .85);
    color: #707a8a;
    font-size: 13px;
    font-weight: 700;
    transition: .25s ease;
    box-shadow: inset 0 0 0 1px rgb(0 0 0 / 11%);
}

.faq-tag:hover {
    transform: translateY(-2px);
}

.spo .faq-tag.active {
    color: #000000;
}

.faq-premium-card:hover .faq-premium-arrow {
    transform: scale(1.08);
    background: #4caf50;
    color: #fff;
}

;

.faq-tag.active {
    background: linear-gradient(135deg, #05b368, #247c28);
    color: #ffffff;
    box-shadow: 9px 20px 26px rgb(77 165 54 / 31%);
}

/* =========================================================
GRID
========================================================= */
.faq-premium-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr));
    gap: 15px;
}

/* =========================================================
CARD
========================================================= */
.faq-premium-card {
    position: relative;
    overflow: hidden;
    border-radius: clamp(15px, 2.5vw, 30px);
    background: rgba(255, 255, 255, .72);
    border: 1px solid rgba(255, 255, 255, .9);
    transition: .35s ease;
    /* box-shadow:
        0 20px 60px rgba(0,0,0,.05); */
    min-height: clamp(110px, 22.5vw, 150px);
}

.faq-premium-card:last-child {
    grid-column: 1 / -1;
}

.faq-premium-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgb(25 238 124 / 12%), transparent 45%);
    opacity: 0;
    transition: .35s ease;
}

.spo .faq-premium-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgb(25 149 238 / 12%), transparent 45%);
    opacity: 0;
    transition: .35s ease;
}

.faq-premium-card:hover {
    transform: translateY(-6px);
    /* box-shadow:
        0 35px 90px rgba(0,0,0,.08); */
}

.faq-premium-card:hover::before {
    opacity: 1;
}

.faq-premium-card input {
    display: none;
}

/* =========================================================
HEAD
========================================================= */
.faq-premium-head {
    display: flex;
    justify-content: space-between;
    gap: clamp(10px, 1.5vw, 20px);
    padding: clamp(15px, 1.5vw, 20px);
    cursor: pointer;
    user-select: none;
    width: 100%;
}

.faq-premium-head * {
    pointer-events: none;
    line-height: 0;
}

.faq-premium-card:hover .faq-premium-arrow {
    transform: scale(1.08);
    background: #4caf50;
    color: #fff;
}

.spo .faq-premium-card:hover .faq-premium-arrow {
    transform: scale(1.08);
    background: #078bc0;
    color: #fff;
}

.spo .faq-premium-card:hover .faq-premium-question {
    color: #088cc1;
}

.faq-premium-card:hover .faq-premium-question {
    color: #368039;
}

.faq-premium-head::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
}

.faq-premium-head {
    position: relative;
}

.faq-left {
    display: flex;
    gap: clamp(10px, 1.5vw, 18px);
}

/* =========================================================
ICON
========================================================= */
.faq-premium-icon {
    width: clamp(35px, 3.5vw, 50px);
    min-width: clamp(35px, 3.5vw, 50px);
    height: clamp(35px, 3.5vw, 50px);
    border-radius: clamp(10px, 1.5vw, 22px);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background:
        linear-gradient(135deg,
            #1991ee,
            #6f7bf7);
    box-shadow:
        0 15px 35px rgba(25, 145, 238, .25);
    background: linear-gradient(135deg, #05b368, #247c28);
    color: #ffffff;
    box-shadow: 9px 20px 26px rgb(77 165 54 / 31%);
    font-size: clamp(1.0625rem, 0.9598070739549839rem + 0.45016077170418006vw, 1.5rem);
}

.spo .faq-premium-icon {
    color: #ffffff;
    box-shadow: 0 12px 26px rgb(111 189 255 / 25%);
    background: linear-gradient(135deg, #2badf1, #025ca9);
}

/* =========================================================
QUESTION
========================================================= */
.faq-premium-question {
    font-size: 21px;
    line-height: 1.2;
    font-weight: 600;
    color: #000;
}

/* =========================================================
ARROW
========================================================= */
.spo .faq-premium-arrow {
    background: #e5edf9;
}

.faq-premium-arrow {
    width: clamp(24px, 2.5vw, 39px);
    min-width: clamp(24px, 2.5vw, 39px);
    height: clamp(24px, 2.5vw, 39px);
    border-radius: clamp(10px, 0.5vw, 13px);
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgb(231 242 236);
    color: var(--text2);
    transition: .35s ease;
    font-size: 12px;
    font-size: clamp(0.75rem, 0.7206591639871383rem + 0.12861736334405144vw, 0.875rem);
}

.faq-premium-card input:checked+.faq-premium-head .faq-premium-arrow {
    background: #4caf50;
    color: #fff;
    transform: rotate(45deg);
}

.spo .faq-premium-card input:checked+.faq-premium-head .faq-premium-arrow {
    background: #088cc1;
    color: #fff;
    transform: rotate(45deg);
}

/* =========================================================
CONTENT
========================================================= */
.faq-premium-content {
    display: grid;
    grid-template-rows: 0fr;
    transition: .4s ease;
}

.faq-premium-answer {
    overflow: hidden;
    padding: 0 28px;
    color: #000;
    line-height: 1.6;
    font-size: clamp(0.9375rem, 0.9081591639871383rem + 0.12861736334405144vw, 1.0625rem);
}

.faq-premium-answer p:last-child {
    margin-bottom: 0;
}

.faq-premium-card input:checked~.faq-premium-content {
    grid-template-rows: 1fr;
}

.faq-premium-card input:checked~.faq-premium-content .faq-premium-answer {
    padding-bottom: 32px;
}

/* =========================================================
OPEN STATE
========================================================= */
.faq-premium-card input:checked+.faq-premium-head {
    background:
        linear-gradient(180deg,
            rgba(25, 145, 238, .06),
            transparent);
}

/* =========================================================
HIDDEN
========================================================= */
.faq-premium-card.hidden {
    display: none;
}

/* =========================================================
HIGHLIGHT
========================================================= */
.faq-highlight {
    background: #4CAF50;
    color: #fff;
    padding: 3px 8px;
    border-radius: 10px;
}

/* =========================================================
SCROLLBAR
========================================================= */
.faq-premium-answer::-webkit-scrollbar {
    width: 6px;
}

.faq-premium-answer::-webkit-scrollbar-thumb {
    background: #1991ee;
    border-radius: 999px;
}

/* =========================================================
RESPONSIVE
========================================================= */
@media(max-width:1200px) {
    .faq-premium-grid {
        grid-template-columns: 1fr;
    }

    .faq-top {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media(max-width:768px) {
    .faq-premium-section {
    }

    .faq-toolbar {
        padding: 18px;
        border-radius: 28px;
    }

    .faq-premium-head {
        /* padding: 22px; */
    }

    .faq-premium-question {
        font-size: 17px;
    }

    .faq-premium-icon {
    }

    .faq-search-input {
        height: 45px;
        border-radius: 20px;
    }

    .faq-stats-card {
        width: 100%;
        min-width: unset;
    }
}

.program-layout {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: clamp(15px, 2.5vw, 30px);
    align-items: start;
}

.program-filter {
    position: sticky;
    top: 120px;
}

.program-content {
    min-width: 0;
}

.program-container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 20px;
}

@media (max-width: 991px) {
    .program-layout {
        grid-template-columns: 1fr;
    }

    .program-filter {
        position: static;
        z-index: 90;
    }
}

.universities-section {
}

.other-directions {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.universities-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill,
            minmax(360px, 360px));
    gap: 25px;
}

.universities-grid>* {}

.universities-grid>* {
    min-width: 0;
}

@media (max-width:1200px) {
    .universities-grid {
        grid-template-columns:
            repeat(2,
                minmax(0, 1fr));
        gap: 24px;
    }
}

@media (max-width:768px) {
    .universities-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .title-with-link h2 {
        font-size: 30px;
    }
}

.edu-modal {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: .35s;
    padding: 20px;
    /* overflow-y: auto; */
    /* height: fit-content; */
    /* overflow-y: auto; */
}

.edu-modal.active {
    opacity: 1;
    visibility: visible;
}

.edu-modal__overlay {
    position: absolute;
    inset: 0;
    background: rgba(15, 18, 25, .55);
    /* width: 100%; */
    /* height: 100%; */
}

.edu-modal__box {
    position: relative;
    border-radius: 26px;
    overflow: hidden;
    background: #ffffff00;
    transform: translateY(18px);
    transition: .35s;
    overflow-y: auto;
    z-index: 2;
}

.edu-modal.active .edu-modal__box {
    transform: translateY(0);
}


.edu-modal__content {
    display: grid;
    grid-template-columns: 420px 1fr;
}


.edu-modal__left {
    position: relative;
    padding: 50px;
    color: #fff;
    background: linear-gradient(135deg, #087c43, #16a34a);
    overflow: hidden;
}

.spo .edu-modal__left {
    background: linear-gradient(135deg, #3b82f6, #217dc8);
}

.edu-glow {
    position: absolute;
    inset: -80px;
    background: radial-gradient(circle at top,
            rgba(255, 255, 255, .35),
            transparent 60%);
    filter: blur(40px);
}

.edu-left-inner {
    position: relative;
    z-index: 2;
}

.edu-badge {
    display: inline-flex;
    gap: 8px;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .18);
    font-size: 13px;
    margin-bottom: 18px;
}

.edu-modal__left h2 {
    font-size: 40px;
    margin-bottom: 10px;
    color: #fff;
}

.edu-modal__left p {
    opacity: .9;
    line-height: 1.5;
    color: #fff;
    font-size: 16px;
    margin-bottom: clamp(15px, 2.5vw, 40px);
}

.edu-trust {
    margin-top: 30px;
    display: grid;
    gap: 10px;
}

.edu-trust div {
    display: flex;
    gap: 10px;
    padding: clamp(5px, 1.5vw, 12px) clamp(10px, 1.5vw, 15px);
    border-radius: 14px;
    background: rgba(255, 255, 255, .14);
    font-weight: 600;
    font-size: 14px;
}


.edu-modal__right {
    padding: 50px;
    background: #fff;
}


.edu-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: clamp(10px, 1.5vw, 17px);
}

.edu-input.full {
    grid-column: 1/-1;
}


.edu-input {
    position: relative;
    display: flex;
    align-items: center;
}


.edu-input i {
    position: absolute;
    left: 20px;
    font-size: 15px;
    color: #313131;
    line-height: 0;
}


.edu-input input,
.edu-input textarea {
    width: 100%;
    padding: clamp(13px, 1.5vw, 18px) 14px clamp(13px, 1.5vw, 18px) 42px;
    border-radius: 15px;
    border: 1px solid #e6eaf0;
    background: #f8fafc;
    color: #111827;
    outline: none;
    transition: .2s;
    font-size: 14px;
}


.edu-input textarea {
    resize: none;
    padding-top: 20px;
}


.edu-input label {
    position: absolute;
    left: 42px;
    top: 50%;
    transform: translateY(-50%);
    color: #303030;
    font-size: 14px;
    transition: .2s;
    pointer-events: none;
    background: #ffffff00;
    padding: 0 4px;
    font-weight: 600;
}


.edu-input input:focus+label,
.edu-input input:not(:placeholder-shown)+label,
.edu-input textarea:focus+label,
.edu-input textarea:not(:placeholder-shown)+label {
    top: 2px;
    font-size: 12px;
    color: #22c55e;
    background: #fff;
}


.spo .edu-input input:focus+label,
.spo .edu-input input:not(:placeholder-shown)+label,
.spo .edu-input textarea:focus+label,
.spo .edu-input textarea:not(:placeholder-shown)+label {
    top: 2px;
    font-size: 12px;
    color: #3f8bde;
    background: #fff;
}


.edu-input input:focus,
.edu-input textarea:focus {
    border-color: #22c55e;
    background: #fff;
    box-shadow: none;
}

.spo .edu-input input:focus,
.spo .edu-input textarea:focus {
    border-color: #3b82f6;
    box-shadow: none;
}


.edu-check {
    display: flex;
    gap: 10px;
    margin: 18px 0;
    font-size: 13px;
    color: #64748b;
}


.edu-btn {
    width: 100%;
    border: none;
    border-radius: 14px;
    font-weight: 600;
    cursor: pointer;
    color: #fff;
    background: linear-gradient(135deg, #22c55e, #16a34a);
    transition: .2s;
    color: var(--bg-white);
    margin: 0;
    padding: clamp(13px, 1.5vw, 17px) clamp(20px, 2.5vw, 35px);
    box-shadow: none;
    font-size: 19px;
    border-radius: 120px;
    border: 1px #ffffff59 solid;
    background: linear-gradient(135deg, #05b368, #247c28);
    color: #ffffff;
    box-shadow: 9px 20px 26px rgb(77 165 54 / 31%);
    overflow: hidden;
    position: relative;
}

.edu-btn::after {
    content: "";
    position: absolute;
    top: -50%;
    left: -60%;
    width: 30%;
    height: 200%;
    animation: shine 1.5s ease-in-out infinite;
    background: linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, 0.7) 45%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.7) 55%, transparent 100%);
    filter: blur(69px);
    transform: rotate(50deg);
    pointer-events: none;
}

.edu-btn:hover {
    transform: translateY(-2px);
}

.spo .edu-btn {
    background: linear-gradient(135deg, #86b4ff, #1074bf);
    box-shadow: 9px 20px 26px rgb(54 117 165 / 31%);
}


.edu-success {
    display: none;
    padding: 70px;
    text-align: center;
}

.edu-success-icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 20px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    font-size: 34px;
    color: #fff;
    background: linear-gradient(135deg, #22c55e, #16a34a);
}

.spo .edu-success-icon {
    background: linear-gradient(135deg, #3b82f6, #6366f1);
}


.edu-modal.success .edu-success {
    display: block;
}

.edu-modal.success .edu-modal__content {
    display: none;
}


.edu-modal__close {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 40px;
    height: 40px;
    border: none;
    border-radius: 10px;
    background: #0b0b0b00;
    cursor: pointer;
    font-size: 40px;
    color: #000000;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
}


@media(max-width:900px) {
    .edu-modal__content {
        grid-template-columns: 1fr;
    }

    .edu-modal__left {
        padding: clamp(15px, 1.5vw, 35px);
    }

    .edu-modal__right {
        padding: clamp(15px, 1.5vw, 25px);
    }.edu-modal{
        align-items:initial;
    }
.edu-grid {
    display: grid;
    grid-template-columns: 1fr;
  
}.edu-trust {
   
    display: flex;
    gap: 10px;
    margin: 0 auto;
    margin-bottom: 0px;
    overflow-x: auto;
    flex-wrap: nowrap;
    white-space: nowrap;
    width: 100%;
    scrollbar-color: #ffffff00 #ffffff12;
    scroll-behavior: smooth;
    scrollbar-width: none;
    scrollbar-color: #f7f7f7 #ffffff;
    padding: 0 0px;
    justify-content: start;
}
    .edu-modal__left h2 {
        font-size: 30px;
    }
}

.stories {
    background: var(--bg-white);
}

.stories-title {
    text-align: center;
    font-size: 48px;
    margin-bottom: 60px;
}

.stories-wrapper {
    display: flex;
    gap: clamp(30px, 2.5vw, 50px);
    align-items: flex-start;
    flex-wrap: wrap;
    max-width: 1100px;
    margin: 0 auto;
}

.stories-tabs {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

@media(max-width:1280px) {
    .stories-tabs {
        display: flex;
        flex-direction: row;
        gap: 10px;
        margin: 0 auto;
        margin-bottom: 0px;
        overflow-x: auto;
        flex-wrap: nowrap;
        white-space: nowrap;
        width: 100%;
        scrollbar-color: #ffffff00 #ffffff12;
        scroll-behavior: smooth;
        scrollbar-width: none;
        scrollbar-color: #f7f7f7 #ffffff;
    }
}

.story-tab {
    width: clamp(90px, 7.5vw, 120px);
    height: clamp(90px, 7.5vw, 120px);
    border-radius: 30%;
    cursor: pointer;
    border: 3px solid transparent;
    transition: .3s;
    padding: 10px;
}

.spo .story-tab.active {
    border-color: #1991ee;
}

.story-tab.active {
    border-color: var(--accent-color2);
}

.stories-content {
    flex: 1;
    position: relative;
}

.story-panel {
    display: none;
    animation: fade .4s ease;
}

.story-panel.active {
    display: block;
}

@keyframes fade {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.story-header h3 {
    font-size: 22px;
    margin-bottom: 15px;
    font-size: clamp(1.375rem, 1.3016479099678457rem + 0.3215434083601286vw, 1.5875rem);
}

.story-place {
    color: #6b7a90;
    font-size: 15px;
    font-weight: 600;
}

.story-blocks {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-top: 30px;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
}

.spo .story-card {
    background: #f1f5fb;
}

.story-card {
    background: var(--block-color);
    padding: clamp(20px, 2vw, 35px);
    border-radius: 25px;
    font-size: 15px;
    line-height: 1.6;
    font-weight: 500;
    font-size: clamp(0.9375rem, 0.8934887459807074rem + 0.19292604501607719vw, 1.125rem);
}

/* =========================
SEARCH WRAPPER
========================= */
.main-search-container {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-bottom: clamp(15px, 2.5vw, 40px);
}

/* =========================
SEARCH BOX
========================= */
.search-hero {
    height: clamp(45px, 2.5vw, 52px);
    padding: 7px clamp(14px, 2.5vw, 35px);
    border-radius: 14px;
    background: #2b2f39;
    color: #fff;
    border: none;
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 500;
    cursor: pointer;
    font-size: 15px;
    background: #fff;
    color: #000000;
    border-radius: clamp(20px, 3.5vw, 70px);
    text-decoration: none;
    font-weight: 600;
    font-size: 18px;
    box-shadow: 0 12px 30px rgb(255 255 255 / 35%);
}

.search-inner {
    width: min(820px, 100%);
    display: flex;
    align-items: center;
    gap: 10px;
    padding: clamp(10px, 0.5vw, 15px);
    border-radius: clamp(30px, 3.5vw, 75px);
    background: rgb(0 0 0 / 14%);
    backdrop-filter: blur(14px);
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow:
        0 10px 30px rgba(0, 0, 0, .06);
    transition: .25s ease;
}


.search-inner:hover {
    box-shadow:
        0 15px 40px rgba(25, 145, 238, .15);
    border-color: rgba(25, 145, 238, .25);
}

/* =========================
ICON
========================= */
.search-icon {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 212px;
    background: rgb(255 255 255 / 8%);
    color: #ffffff;
    flex: 0 0 auto;
    line-height: 1;
}

/* =========================
INPUT
========================= */
.search-inner input {
    flex: 1;
    border: none;
    outline: none;
    background: transparent;
    font-size: 18px;
    color: #ffffff;
    padding: 10px 5px;
}

.search-inner input::placeholder {
    color: #fff;
    opacity: .7;
}


.search-inner:focus-within {
    box-shadow:
        0 20px 50px rgba(25, 145, 238, .18);
    border-color: #1991ee;
}

/* =========================
BUTTON
========================= */
.search-submit {
    padding: 10px 18px;
    border-radius: 14px;
    border: none;
    background: linear-gradient(135deg, #1991ee, #63bbff);
    color: #fff;
    font-weight: 600;
    cursor: pointer;
    transition: .2s ease;
}

.search-submit:hover {
    transform: translateY(-2px);
}

/* =========================
RESPONSIVE
========================= */
@media(max-width:600px) {
    .search-inner {
        
        align-items: stretch;
        gap: 12px;
        justify-content: center;
        align-items: center;
        width: 100%;
    }

    .search-icon {
        display: none;
    }
.search-hero{
    font-size:0px;
    gap: 0;
}.search-hero i{
    font-size: 17px;
    line-height:1;
}
    .search-submit {
        width: 100%;
    }
}

:root {
    --e-main: #14975b;
    --e-soft: #f0fff7;
    --e-glow: rgba(20, 151, 91, .2);
}

.spo {
    --e-main: #1991ee;
    --e-soft: #f1f5fb;
    --e-glow: rgba(39, 104, 255, .2);
}


.error404 {
    /* padding:
120px
0; */
    overflow: hidden;
    position: relative;
    /* background:
radial-gradient(
circle at top,
var(--e-soft),
white
); */
}

.error404-grid {
    display: grid;
    grid-template-columns:
        1.2fr 1fr;
    gap: 50px;
    align-items: flex-start;
}

.error404-code {
    display: flex;
    gap: 20px;
    font-size: 180px;
    font-weight: 900;
    color:
        var(--e-main);
}

.error404-zero {
    width: 180px;
    height: 180px;
    padding: 20px;
    border-radius: 999px;
    background:
        linear-gradient(145deg,
            var(--e-main),
            white);
    box-shadow:
        0 40px 100px var(--e-glow);
    animation:
        float 7s infinite;
}

.planet {
    height: 100%;
    border-radius: 999px;
    background:
        radial-gradient(circle,
            white,
            var(--e-main));
}

.error404-tag {
    display: inline-flex;
    padding:
        12px 18px;
    margin: 14px 0;
    background:
        var(--e-soft);
    border-radius: 999px;
    font-weight: 600;
    color:
        var(--e-main);
}

.error404 h1 {
    font-size: 53px;
    margin-bottom: 20px;
}

.error404-text {
    font-size: 18px;
    font-weight: 500;
}


.search-wrap {
    margin-top: 34px;
    display: flex;
    background: white;
    padding: 12px;
    border-radius: 30px;
    box-shadow:
        0 20px 60px rgba(0, 0, 0, .06);
}

.search-wrap i {
    padding: 15px;
    font-size: 22px;
    color:
        var(--e-main);
    line-height: 1;
}

.search-wrap input {
    flex: 1;
    border: 0;
    outline: none;
    font-size: 18px;
    font-weight: 600;
}

.search-wrap button {
    width: 170px;
    border: 0;
    border-radius: 18px;
    background:
        var(--e-main);
    color: white;
    font-weight: 600;
}


.error404-actions {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 28px;
}
.spo .e-btn {    color: #2196F3;}
.e-btn {
    padding: 10px 28px;
    display: flex;
    align-items: center;
    background: white;
    border-radius: 18px;
    box-shadow:
        0 10px 40px rgba(0, 0, 0, .08);
    font-weight: 600;
    color: #14975b;
}

.e-btn-main {
    background:
        var(--e-main);
    color: white;
}


.error404-popular {
    margin-top: 50px;
}

.popular-grid {
    display: grid;
    grid-template-columns:
        repeat(3, 1fr);
    gap: 10px;
}

.popular-grid a {
    padding: 11px;
    background: white;
    border-radius: 20px;
    text-decoration: none;
    color: #222;
    font-weight: 600;
}


.error404-help {
    display: flex;
    gap: 20px;
    margin-top: 40px;
    padding: 24px;
    background: white;
    border-radius: 28px;
    box-shadow:
        0 20px 80px rgba(0, 0, 0, .06);
}

.error404-help img {
    width: 70px;
    height: 70px;
    object-fit: cover;
    border-radius: 24px;
}

.help-name {
    display: flex;
    gap: 10px;
    font-size: 22px;
    font-weight: 600;
}

.live {
    width: 10px;
    height: 10px;
    background: #17c964;
    border-radius: 999px;
    margin-top: 10px;
}

.help-text {

    font-size: 14px;

    font-weight: 600;
}

.help-btn {
    margin-top: 16px;
    padding: 0 24px;
    border: 0;
    background:
        var(--e-main);
    color: white;
    border-radius: 16px;
    color: #ffffff;
    box-shadow: 0 12px 26px rgb(140 255 111 / 25%);
    width: max-content;
    padding: 15px 18px;
    gap: 10px;
    outline: 1px #ffffff3b solid;
    display: flex;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    margin-bottom: 0px;
    font-weight: 500;
    border-radius: 40px;
    gap: 8px;
    align-items: baseline;
    line-height: 1;
}

.spo .help-btn {
   
    background: linear-gradient(135deg, #2badf1, #025ca9);
    color: #ffffff;
    box-shadow: 0 12px 26px rgb(111 189 255 / 25%);
    
}

.error404-contact {
    margin-top: 30px;
    padding: 26px;
    display: flex;
    justify-content: space-between;
    background: white;
    border-radius: 22px;
    z-index: 1;
    position: relative;
}

.error404-contact a {
    font-size: 26px;
    font-weight: 900;
    color:
        var(--e-main);
}


.error404-visual {
    position: relative;
}

.error404-visual img {
    width: 100%;
    animation:
        float2 7s infinite;
}

.float-card {
    position: absolute;
    bottom: 0;
    padding: 24px;
    background: white;
    display: flex;
    gap: 20px;
    border-radius: 24px;
    box-shadow:
        0 20px 70px rgba(0, 0, 0, .08);
}

.pulse {
    width: 14px;
    height: 14px;
    border-radius: 999px;
    background:
        var(--e-main);
    animation:
        pulse 2s infinite;
}

.cloud {
    position: absolute;
    background: #f0f4fe;
    border-radius: 999px;
    filter: blur(20px);
}

.c1 {
    width: 260px;
    height: 90px;
    top: 120px;
    left: -120px;
    animation:
        move 25s linear infinite;
}

.c2 {
    width: 170px;
    height: 70px;
    top: 340px;
    right: -70px;
    animation:
        move 18s linear infinite;
}

.c3 {
    width: 300px;
    height: 100px;
    bottom: 140px;
    left: -160px;
    animation:
        move 34s linear infinite;
}

@keyframes move {
    to {
        transform:
            translateX(180vw);
    }
}

@keyframes float {
    50% {
        transform:
            translateY(-20px);
    }
}

@keyframes float2 {
    50% {
        transform:
            translateY(-30px);
    }
}

@keyframes pulse {
    70% {
        box-shadow:
            0 0 0 18px transparent;
    }
}

@media(max-width:1100px) {
    .error404-grid {
        grid-template-columns: 1fr;
    }

    .error404-code {
        font-size: 110px;
    }

    .error404-zero {
        width: 110px;
        height: 110px;
    }
}

@media(max-width:700px) {
    .error404 {
        padding: 80px 0;
    }

    .error404 h1 {
        font-size: 36px;
    }

    .search-wrap {
        flex-direction: column;
    }

    .search-wrap button {
        width: 100%;
        height: 60px;
    }

    .popular-grid {
        grid-template-columns: 1fr;
    }

    .error404-contact {
        flex-direction: column;
        gap: 20px;
    }

    .float-card {
        position: relative;
        margin-top: 20px;
    }
}


.error404-visual {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 760px;
}


.visual-stage {
    position: relative;
    width: 620px;
    height: 620px;
}


.glass-core {
    position: absolute;
    inset: 50% auto auto 50%;
    transform:
        translate(-50%, -50%);
    width: 360px;
    height: 360px;
    border-radius: 999px;
    backdrop-filter:
        blur(40px);
    background:
        linear-gradient(145deg,
            rgba(255, 255, 255, .65),
            rgba(255, 255, 255, .18));
    border:
        1px solid rgba(255, 255, 255, .9);
    box-shadow:
        0 40px 160px var(--e-glow),
        inset 0 1px 0 rgba(255, 255, 255, .9);
    display: flex;
    justify-content: center;
    align-items: center;
    animation:
        sphereFloat 9s ease infinite;
}

.glass-glow {
    position: absolute;
    inset: -80px;
    background:
        radial-gradient(circle,
            var(--e-glow),
            transparent 70%);
    filter:
        blur(40px);
}


.error-number {
    display: flex;
    align-items: center;
    gap: 20px;
    font-size: 140px;
    font-weight: 900;
    color:
        var(--e-main);
}

.orb {
     width: 140px;
    height: 140px;
    padding: 12px;
    border-radius: 999px;
    background: linear-gradient(145deg, white, rgba(255, 255, 255, .4));
    box-shadow: 0 20px 90px var(--e-glow);
    animation: rotateOrb 20s linear infinite;
}

.orb-inner {
    width: 100%;
    height: 100%;
    border-radius: 999px;
    background:
        radial-gradient(circle at 30% 20%,
            white,
            var(--e-main));
}


.ring {
    position: absolute;
    left: 50%;
    top: 50%;
    border:
        1px solid rgba(255, 255, 255, .55);
    border-radius: 999px;
    transform:
        translate(-50%, -50%);
}

.ring1 {
    width: 420px;
    height: 420px;
    animation:
        rotate1 18s linear infinite;
}

.ring2 {
    width: 520px;
    height: 520px;
    animation:
        rotate2 22s linear infinite reverse;
}

.ring3 {
    width: 620px;
    height: 620px;
    animation:
        rotate1 28s linear infinite;
}

.ring::after {
    content: "";
    position: absolute;
    top: -6px;
    left: 50%;
    width: 12px;
    height: 12px;
    border-radius: 999px;
    background:
        var(--e-main);
}


.float-chip {
    position: absolute;
    padding:
        14px 18px;
    background:
        rgba(255, 255, 255, .92);
    backdrop-filter:
        blur(20px);
    border-radius: 18px;
    box-shadow:
        0 20px 80px rgba(0, 0, 0, .08);
    font-weight: 700;
}

.chip1 {
    top: 60px;
    left: 20px;
    animation:
        floatA 7s infinite;
}

.chip2 {
    right: 0;
    top: 220px;
    animation:
        floatB 8s infinite;
}

.chip3 {
    left: 10px;
    bottom: 150px;
    animation:
        floatC 9s infinite;
}


.particle {
    position: absolute;
    border-radius: 999px;
    background:
        var(--e-main);
    opacity: .25;
}

.p1 {
    width: 18px;
    height: 18px;
    left: 10%;
    top: 30%;
}

.p2 {
    width: 26px;
    height: 26px;
    right: 20%;
    top: 18%;
}

.p3 {
    width: 12px;
    height: 12px;
    right: 0;
    bottom: 20%;
}

.p4 {
    width: 40px;
    height: 40px;
    left: 12%;
    bottom: 10%;
}


.float-card {
    position: absolute;
    bottom: 50px;
    left: 50%;
}


@keyframes sphereFloat {
    50% {
        transform:
            translate(-50%,
                -65%);
    }
}

@keyframes rotateOrb {
    to {
        transform:
            rotate(360deg);
    }
}

@keyframes rotate1 {
    to {
        transform:
            translate(-50%, -50%) rotate(360deg);
    }
}

@keyframes rotate2 {
    to {
        transform:
            translate(-50%, -50%) rotate(-360deg);
    }
}

@keyframes floatA {
    50% {
        transform:
            translateY(-20px);
    }
}

@keyframes floatB {
    50% {
        transform:
            translateX(-20px);
    }
}

@keyframes floatC {
    50% {
        transform:
            translateY(18px);
    }
}


@media(max-width:900px) {
    .error404-visual {
        min-height: 500px;
    }

    .visual-stage {
        width: 340px;
        height: 340px;
    }

    .glass-core {
        width: 230px;
        height: 230px;
    }

    .error-number {
        font-size: 70px;
    }

    .orb {
        width: 80px;
        height: 80px;
    }

    .ring1 {
        width: 270px;
        height: 270px;
    }

    .ring2 {
        width: 320px;
        height: 320px;
    }

    .ring3 {
        width: 360px;
        height: 360px;
    }

    .float-chip {
        display: none;
    }
}

.university-container{
        display: grid;
    grid-template-columns: repeat(auto-fill, minmax(310px, 1fr));
    gap: 24px;
}


.article-counter{
        position: absolute;
        background: #ffffff;
        right: 50px;
        bottom: 30px;
        padding: 10px 20px;
        border-radius: 30px;
        font-weight: 700;
}

.article-list{
        display: grid;
    gap: 25px;
    grid-template-columns: repeat(auto-fit, minmax(260px, 330px));
    justify-content: start;
}#clickFxLayer {
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 999999;
}


.click-bubble {
    position: absolute;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    animation: bubble 600ms ease-out forwards;
}

.click-ring {
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 2px solid;
    transform: translate(-50%, -50%);
    animation: ring 700ms ease-out forwards;
}


.click-particle {
    position: absolute;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    animation: particle 700ms ease-out forwards;
}


body:not(:has(.spo)) .click-bubble{
    background:
    radial-gradient(
        circle,
        rgba(0,200,120,.9),
        rgba(0,200,120,0)
    );
}

body:not(:has(.spo)) .click-ring{
    border-color:rgba(0,200,120,.6);
}

body:not(:has(.spo)) .click-particle{
    background:rgba(0,200,120,.9);
}




body:has(.spo) .click-bubble{
    background:
    radial-gradient(
        circle,
        rgba(60,140,255,.95),
        rgba(60,140,255,0)
    );
}

body:has(.spo) .click-ring{
    border-color:rgba(60,140,255,.65);
}

body:has(.spo) .click-particle{
    background:rgba(60,140,255,.95);
}


@keyframes bubble {
    0% { transform: translate(-50%, -50%) scale(1); opacity: 1; }
    100% { transform: translate(-50%, -50%) scale(5); opacity: 0; }
}

@keyframes ring {
    0% { transform: translate(-50%, -50%) scale(1); opacity: 0.8; }
    100% { transform: translate(-50%, -50%) scale(10); opacity: 0; }
}

@keyframes particle {
    0% { opacity: 1; transform: translate(-50%, -50%) scale(1); }
    100% { opacity: 0; transform: translate(var(--dx), var(--dy)) scale(0.3); }
}








/* ========================================================= */
/* VARIABLES */
/* ========================================================= */

:root {

--quiz-bg: #0f1117;

--quiz-card: rgba(255,255,255,.06);

--quiz-border: rgba(255,255,255,.09);

--quiz-text: #fff;

--quiz-muted: rgba(255,255,255,.65);

--quiz-main: linear-gradient(135deg, #18c139, #0fb96c);

--quiz-shadow:
        0 20px 80px rgba(0,0,0,.45);
}

/* SPO */

.spo {

    --quiz-main:
        linear-gradient(135deg,#3b82ff,#67a8ff);

}

/* ========================================================= */
/* FLOAT BUTTON */
/* ========================================================= */

.smart-quiz-launch {
        position: fixed;
        left: 24px;
        bottom: 24px;
        z-index: 9999;
        border: 0;
        cursor: pointer;
        border-radius: 124px;
        background: rgb(0 0 0);
        /* backdrop-filter: blur(20px); */
        color: #ffffff;
        display: flex;
        align-items: center;
        gap: clamp(8px, 1.5vw, 14px);
        padding: clamp(5px, 1.5vw, 12px) clamp(5px, 1.5vw, 16px);
        box-shadow:
        0 15px 40px rgba(0,0,0,.35);
        overflow: hidden;
        transition: .35s;
        }

.smart-quiz-launch:hover {
    transform: translateY(-4px);
}

.smart-quiz-launch__pulse {

position: absolute;

inset: 0;

background: var(--quiz-main);

opacity: .3;
}

.smart-quiz-launch__icon {width: clamp(30px, 2.5vw, 40px);height: clamp(30px, 2.5vw, 40px);border-radius: clamp(51px, 1.5vw, 15px);background: var(--quiz-main);display: flex;align-items: center;justify-content: center;font-size: 17px;position: relative;z-index: 2;line-height: 0;}

.smart-quiz-launch__content {
    position: relative;
    z-index: 2;
    text-align: left;
    line-height: 1.1;
}

.smart-quiz-launch__content strong {

display: block;

font-size: clamp(0.8125rem, 0.7831591639871383rem + 0.12861736334405144vw, 0.9375rem);
}

.smart-quiz-launch__content span {

font-size: 12px;

opacity: .7;
}

/* ========================================================= */
/* MODAL */
/* ========================================================= */

.career-quiz-modal {

position: fixed;

inset: 0;

z-index: 99999;

display: flex;

align-items: center;

justify-content: center;

opacity: 0;

visibility: hidden;

transition: .35s;
}

.career-quiz-modal.active {

    opacity: 1;
    visibility: visible;
}

.career-quiz-modal__overlay {

position: absolute;

inset: 0;

background: rgba(0,0,0,.7);

/* backdrop-filter: blur(8px); */
}

.career-quiz {position: relative;width: min(1200px, calc(100% - 40px));height: min(660px, calc(100vh - 40px));border-radius: clamp(15px, 2.5vw, 35px);overflow: hidden;background: #0d1117;display: grid;grid-template-columns: 480px 1fr;box-shadow: var(--quiz-shadow);transform: translateY(20px);transition: .4s;}

.career-quiz-modal.active .career-quiz {

    transform: translateY(0);
}

.career-quiz__close {position: absolute;right: 0px;top: 0px;z-index: 20;width: clamp(30px, 2.5vw, 48px);height: clamp(30px, 2.5vw, 48px);border-radius: 50%;border: 0;cursor: pointer;color: #000000;background: rgb(204 204 204 / 0%);font-size: clamp(1.45rem, 1.1232958199356913rem + 0.6430868167202572vw, 1.875rem);display: flex;align-items: center;align-items: center;justify-content: center;}

/* ========================================================= */
/* LEFT */
/* ========================================================= */

.career-quiz__left {

    position: relative;

    overflow: hidden;

    background:
        radial-gradient(circle at top left, rgba(255,255,255,.08), transparent 50%),
        #11151d;
}

.career-quiz__bg {

    position: absolute;
    inset: 0;

    background:
        radial-gradient(circle at 20% 20%, rgba(255,255,255,.08), transparent 30%),
        radial-gradient(circle at 80% 80%, rgba(255,255,255,.06), transparent 30%);
}

.career-quiz__left-content {

position: relative;

z-index: 2;

height: 100%;

display: flex;

flex-direction: column;

justify-content: center;

padding: 50px;
}

.career-quiz__right .career-badge {

width: fit-content;

padding: 10px 18px;

border-radius: 999px;

background: rgba(255,255,255,.08);

border: 1px solid rgba(255,255,255,.09);

color: #fff;

font-size: 10px;

letter-spacing: .12em;

margin-bottom: 24px;
}

.career-quiz__left h2 {

color: #fff;

font-size: 40px;

line-height: 1.04;

margin-bottom: 24px;
}

.career-quiz__left p {

color: rgba(255,255,255,.72);

font-size: 17px;

line-height: 1.7;
}

.career-features {

display: grid;

gap: 16px;

margin-top: 20px;
}

.career-feature {

display: flex;

align-items: center;

gap: 14px;

color: #fff;

padding: 13px 15px;

border-radius: 20px;

background: rgba(255,255,255,.05);

border: 1px solid rgba(255,255,255,.06);

font-weight: 600;
}

.career-feature i {

    width: 42px;
    height: 42px;

    border-radius: 14px;

    background: var(--quiz-main);

    display: flex;
    align-items: center;
    justify-content: center;
}

.career-orbs span {

position: absolute;

border-radius: 50%;

background: var(--quiz-main);

filter: blur(60px);

opacity: .2;
}

.career-orbs span:nth-child(1){

    width: 240px;
    height: 240px;

    top: -40px;
    right: -60px;
}

.career-orbs span:nth-child(2){

    width: 180px;
    height: 180px;

    bottom: 80px;
    left: -60px;
}

.career-orbs span:nth-child(3){

    width: 120px;
    height: 120px;

    bottom: 20px;
    right: 40px;
}

/* ========================================================= */
/* RIGHT */
/* ========================================================= */

.career-quiz__right {

    background: #fff;

    display: flex;
    flex-direction: column;

    overflow: hidden;
}

.career-top {

padding: clamp(20px, 2.5vw, 20px) clamp(15px, 3.5vw, 55px);

display: flex;

align-items: center;

gap: 20px;

border-bottom: 1px solid #edf1f5;
}

.career-back {width: clamp(30px, 2.5vw, 39px);height: clamp(30px, 2.5vw, 39px);border-radius: clamp(10px, 1.5vw, 15px);border: 1px solid #000000;background: #fff;cursor: pointer;font-size: 15px;line-height: 0;}

.career-progress {

flex: 1;

height: 6px;

border-radius: 999px;

background: #edf2f7;

overflow: hidden;
}

.career-progress__line {

    width: 0;

    height: 100%;

    background: var(--quiz-main);

    transition: .4s;
}

.career-step {

font-weight: 700;

color: #666;

font-size: 13px;
}

.career-body {

flex: 1;

overflow: auto;

padding: clamp(15px, 2.5vw, 40px);
}

/* ========================================================= */
/* SCREENS */
/* ========================================================= */

.career-screen,
.career-loading,
.career-result,
.career-success {

    display: none;
}

.career-screen.active,
.career-loading.active,
.career-result.active,
.career-success.active {

    display: block;

    animation: fadeUp .45s ease;
}

@keyframes fadeUp {

    from {
        opacity: 0;
        transform: translateY(14px);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

/* ========================================================= */
/* HERO */
/* ========================================================= */

    .career-hero h2{margin-bottom: 15px;  font-size: clamp(1.5625rem, 1.4157958199356913rem + 0.6430868167202572vw, 2.1875rem);font-size: clamp(1.5625rem, 1.4157958199356913rem + 0.6430868167202572vw, 2.1875rem);}

.career-mini-badge {

width: fit-content;

padding: 10px 16px;

border-radius: 999px;

background: rgba(0,0,0,.04);

margin-bottom: clamp(15px, 2.5vw, 25px);

font-weight: 700;
}

.career-hero h1 {

    font-size: 54px;
    line-height: 1.04;

    margin-bottom: 20px;
}

.career-hero p {font-size: 17px;line-height: 1.7;color: #666;}

.career-meta {

display: flex;

gap: clamp(10px, 1.5vw, 20px);

margin-top: clamp(10px, 1.5vw, 20px);
}

.career-meta div {

flex: 1;

border-radius: clamp(15px, 1.5vw, 20px);

padding: clamp(10px, 1.5vw, 25px);

background: #f7f9fc;
}

.career-meta strong {display: block;font-weight: 500;font-size: clamp(1.25rem, 1.1766479099678457rem + 0.3215434083601286vw, 1.5625rem);}

.career-meta span {

color: #666;
}

.career-start,
.career-next,
.career-submit {border: 0;cursor: pointer;background: var(--quiz-main);color: #fff;font-weight: 600;border-radius: 18px;padding: 17px 28px;margin-top: clamp(15px, 2.5vw, 25px);transition: .3s;}

.career-start:hover,
.career-next:hover,
.career-submit:hover {

    transform: translateY(-2px);
}

/* ========================================================= */
/* QUESTIONS */
/* ========================================================= */

.career-title {

font-weight: 600;

margin-bottom: clamp(15px, 1.5vw, 25px);

font-size: clamp(1.375rem, 1.257636655948553rem + 0.5144694533762058vw, 1.875rem);
}

.career-screen .career-grid {display: grid;gap: 10px;grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));}

.career-grid-lg {

    grid-template-columns: repeat(2,1fr);
}

.career-quiz__right .career-card {border: 1px solid #edf1f5;background: #fff;border-radius: 24px;padding: 15px;cursor: pointer;font-size: 16px;font-weight: 700;transition: .3s;min-height: 70px;display: flex;flex-direction: column;justify-content: center;gap: 14px;}

.career-quiz__right .career-card:hover {

    transform: translateY(-4px);

    border-color: transparent;

    box-shadow:
        0 14px 40px rgba(0,0,0,.08);

    background:
        linear-gradient(#fff,#fff) padding-box,
        var(--quiz-main) border-box;

    border: 1px solid transparent;
}

.career-checks {

display: grid;

gap: 14px;

grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
}

.career-check {display: flex;align-items: center;gap: 8px;/* padding: 15px 20px; */border-radius: 18px;/* border: 1px solid #00000038; */cursor: pointer;font-weight: 600;}

.career-check input {

width: 17px;

height: 17px;
}

.career-stack {

display: grid;

gap: 14px;

grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.career-stack button {

border: 1px solid #000000;

background: #fff;

border-radius: 18px;

padding: 15px;

font-weight: 600;

cursor: pointer;

transition: .3s;

border: 1px solid #00000038;
}

.career-stack button:hover {

    background: #f8fafc;
}

.career-budget {
}

.career-budget__value {

font-size: 25px;

font-weight: 600;

margin-bottom: 24px;
}

.career-budget input {

    width: 100%;
}
.career-loading{
}
.career-input {

    width: 100%;

    height: 64px;

    border-radius: 18px;
    border: 1px solid #edf1f5;

    padding: 0 20px;

    margin-bottom: 20px;
}

/* ========================================================= */
/* RESULT */
/* ========================================================= */

.career-result-badge {

width: fit-content;

padding: 10px 16px;

border-radius: 999px;

background: rgba(0,0,0,.05);

margin-bottom: clamp(15px, 1.5vw, 20px);

font-weight: 600;

font-size: 13px;
}

.career-result h2 {

 
line-height: 1.1;

margin-bottom: clamp(15px, 1.5vw, 20px);

font-size: clamp(1.375rem, 1.257636655948553rem + 0.5144694533762058vw, 1.875rem);
}

.career-result-text {/* color: #666; */line-height: 1.7;margin-bottom: clamp(15px, 1.5vw, 30px);font-size: 16px;}

.career-result-list {

display: flex;

gap: 16px;

margin: 0 auto;

margin-bottom: 0px;

overflow-x: auto;

flex-wrap: nowrap;

white-space: nowrap;

width: 100%;

scrollbar-color: #ffffff00 #ffffff12;

scroll-behavior: smooth;

scrollbar-width: none;

scrollbar-color: #f7f7f7 #ffffff;

padding: 0 0px;

justify-content: start;

margin-bottom: 20px;
}

.career-result-card {

padding: 10px 15px;

border-radius: 25px;

background: #f8fafc;

border: 1px solid #edf1f5;

font-weight: 700;
}

.career-advantages {

    display: grid;
    gap: 12px;

    margin-top: 26px;
}

.career-advantage {

    padding: 16px 18px;

    border-radius: 16px;

    background: rgba(0,0,0,.04);
}

.career-lead {

    display: grid;
    gap: 14px;

    margin-top: 34px;
}

.career-lead input {

    height: 64px;

    border-radius: 18px;
    border: 1px solid #edf1f5;

    padding: 0 18px;
}

.career-trust {margin-top: 22px;color: #919191;font-size: 13px;text-align: center;font-weight: 600;}

/* ========================================================= */
/* LOADING */
/* ========================================================= */

.career-loading {text-align: center;/* padding-top: 120px; */padding: 0;}
.career-loading h3 {text-align: center;}

.career-loader {

    width: 80px;
    height: 80px;

    border-radius: 50%;

    border: 4px solid #edf1f5;
    border-top-color: #00c26e;

    margin: auto auto 26px;

    animation: spin 1s linear infinite;
}

.spo .career-loader {

    border-top-color: #3b82ff;
}

@keyframes spin {

    to {
        transform: rotate(360deg);
    }
}

/* ========================================================= */
/* SUCCESS */
/* ========================================================= */

.career-success {

    text-align: center;

    padding-top: 120px;
}

.career-success-icon {/* width: 120px; *//* height: 120px; */border-radius: 40px;margin: auto auto 24px;display: flex;align-items: center;justify-content: center;font-size: 70px;line-height: 1;font-size: clamp(4.375rem, 3.6414790996784565rem + 3.215434083601286vw, 7.5rem);}
/* =========================================================
   SCREENS
========================================================= */

.career-screen,
.career-loading,
.career-result,
.career-success {
    display: none;
    animation: fadeScreen .45s ease;
}

.career-screen.active,
.career-loading.active,
.career-result.active,
.career-success.active {
    display: flex;
    flex-direction: column;
    padding: 0;
}

.career-success.active h2{
    text-align:center;
    font-size: 40px;
    margin-bottom: 10px;
    line-height: 1.1;
    margin-bottom: clamp(15px, 1.5vw, 20px);
    font-size: clamp(1.775rem, 1.357636655948553rem + 0.5144694533762058vw, 1.975rem);
}
.career-loading,
.career-result,
.career-success {
    /* min-height: 100%; */
    justify-content: center;
}
@keyframes fadeScreen {
    from {
        opacity: 0;
        transform: translateY(12px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* ========================================================= */
/* MOBILE */
/* ========================================================= */

@media (max-width: 1100px){

    .career-quiz {

        grid-template-columns: 1fr;
    }

    .career-quiz__left {

        display: none;
    }
}

@media (max-width: 768px){

    .career-body {

}

    .career-hero h1,
    .career-title,
    .career-result h2 {

}

    .career-grid {

        grid-template-columns: 1fr;
    }

    .career-meta {

flex-direction: column;

}

    .smart-quiz-launch {

left: 14px;

bottom: 74px;

}
}

/* ===================================================== */
/* SOCIAL PROOF */
/* ===================================================== */

.career-social-proof{
    margin: clamp(10px, 1.5vw, 25px) 0;
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.career-proof-top{
    display: flex;
    align-items: center;
    gap: 18px;
    /* padding: 22px; */
    border-radius: 24px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.06),
            rgba(255,255,255,.03)
        );
    border: 1px solid rgba(255,255,255,.08);
}

.career-proof-avatars{
    display: flex;
    align-items: center;
}

.career-proof-avatars img{
    width: clamp(35px, 2.5vw, 50px);
    height: clamp(35px, 2.5vw, 50px);
    border-radius: 50%;
    object-fit: cover;
    /* border: 1px solid #101114; */
    margin-left: -14px;
    box-shadow: 0 10px 30px rgba(0,0,0,.25);
}

.career-proof-avatars img:first-child{
    margin-left: 0;
}

.career-proof-content{
    display: flex;
    flex-direction: column;
    gap: 4px;
    color: #000;
}

.career-proof-content strong{
    font-size: 16px;
    color: #000;
    font-weight: 700;
}

.career-proof-content span{
    font-size: 14px;
    color: rgb(0 0 0 / 65%);
}

.career-proof-grid{
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 14px;
}

.career-proof-card{
    position: relative;
    overflow: hidden;
    padding: clamp(10px, 1.5vw, 20px);
    border-radius: clamp(10px, 1.5vw, 20px);
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.05),
            rgba(255,255,255,.02)
        );
    border: 1px solid rgb(221 221 221 / 78%);
    display: flex;
    align-items: flex-start;
    gap: 14px;
    transition: .35s ease;
}

.career-proof-card:hover{
    transform: translateY(-4px);
    border-color: rgba(255,255,255,.14);
}

.career-proof-card i{
    width: 46px;
    height: 46px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 18px;
}

/* GREEN */

 .career-proof-card i{
    background: rgba(0,194,110,.12);
    color: #00d17a;
}

 .career-proof-card:hover{
    box-shadow:
        0 15px 40px rgba(0,194,110,.12);
}

/* BLUE */

.spo .career-proof-card i{
    background: rgba(59,130,246,.14);
    color: #60a5fa;
}

.spo .career-proof-card:hover{
    box-shadow:
        0 15px 40px rgba(59,130,246,.16);
}

.career-proof-card strong{
    display: block;
    color: #000000;
    font-size: 15px;
    margin-bottom: 6px;
}

.career-proof-card span{
    display: block;
    color: rgb(0 0 0 / 60%);
    font-size: 13px;
    line-height: 1.5;
}

.career-proof-note{
    /* padding: 24px; */
    border-radius: 24px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.04),
            rgba(255,255,255,.015)
        );
    border: 1px solid rgba(255,255,255,.06);
}

.career-proof-line{
    width: 70px;
    height: 4px;
    border-radius: 999px;
    margin-bottom: 18px;
}

/* GREEN */

 .career-proof-line{
    background: linear-gradient(90deg,#00c26e,#00e087);
}

/* BLUE */

.spo .career-proof-line{
    background: linear-gradient(90deg,#3b82f6,#60a5fa);
}

.career-proof-note p{
    margin: 0;
    color: rgb(0 0 0 / 72%);
    line-height: 1.7;
    font-size: 14px;
}

.career-item{
    position: relative;
    overflow: hidden;
    min-height: clamp(100px, 10.5vw, 120px);
    padding: clamp(10px, 1.5vw, 20px);
    border-radius: clamp(15px, 2.5vw, 25px);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    gap: clamp(5px, 0.5vw, 10px);
    text-align: left;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4;
    cursor: pointer;
    transition:
        transform .3s ease,
        border-color .3s ease,
        background .3s ease,
        box-shadow .3s ease;
    color: #000000;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.06),
            rgba(255,255,255,.03)
        );
    border: 1px solid rgb(98 98 98 / 25%);
}

.career-item i{
    width: clamp(35px, 3.5vw, 49px);
    height: clamp(35px, 3.5vw, 49px);
    border-radius: clamp(10px, 1.5vw, 15px);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .3s ease;
    font-size: clamp(1rem, 0.9119774919614148rem + 0.38585209003215437vw, 1.375rem);
}

/* GREEN */

.career-item i{
        background: rgba(0, 194, 110, .12);
    color: #00d17a;
}

body:not(.spo) .career-item i{
    /* background: rgba(0,194,110,.12); */
    /* color: #00d17a; */
}
/* BLUE */

.spo .career-item i{
    background: rgba(59,130,246,.14);
    color: #60a5fa;
}

.career-item:hover{
    transform: translateY(-4px);
    border-color: rgba(255, 255, 255, .16);
    box-shadow: 0 20px 50px rgba(0, 194, 110, .12);
}

body:not(.spo) .career-item:hover{
    /* box-shadow:
        0 20px 50px rgba(0,194,110,.12); */
}

.spo .career-item:hover{
    box-shadow:
        0 20px 50px rgba(59,130,246,.16);
}

.career-item::before{
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(255, 255, 255, .08), transparent 45%);
    opacity: 0;
    transition: .35s ease;
}

.career-item:hover::before{
    opacity: 1;
}
.career-check{
    position:relative;
    display:block;
    cursor:pointer;
}

.career-check input{
    display:none;
}

.career-check span{
    position:relative;
    display:flex;
    align-items:center;
    gap:12px;
    min-height:72px;
    padding:18px 22px;
    border: 1px solid rgb(153 153 153 / 35%);
    border-radius:18px;
    /* background:#111; */
    transition:.25s;
}

 
.career-check span:after{
    content:"";

    position:absolute;
    top:14px;
    right:14px;

    width:18px;
    height:18px;

    border-radius:50%;
    border:2px solid rgba(255,255,255,.2);

    transition:.25s;
}

/* ACTIVE */

.career-check input:checked + span{
    border-color:#00d17a;
    background:rgba(0,209,122,.08);
}

.career-check input:checked + span:after{
    background:#00d17a;
    border-color:#00d17a;

    box-shadow:
        0 0 0 4px rgba(0,209,122,.15);
}

/* SPO */

.spo .career-check input:checked + span{
    border-color:#3b82f6;
    background:rgba(59,130,246,.08);
}

.spo .career-check input:checked + span:after{
    background:#3b82f6;
    border-color:#3b82f6;

    box-shadow:
        0 0 0 4px rgba(59,130,246,.15);
}.career-check span{
    display:flex;
    align-items:center;
    gap:12px;
}

.career-check i{
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:12px;
    font-size:16px;
    flex-shrink:0;
}

.career-check i{
    background: rgba(0,194,110,.12);
    color:#00d17a;
}

.spo .career-check i{
    background: rgba(59,130,246,.12);
    color:#3b82f6;
}.manager-card{
    display:flex;
    gap:16px;
    padding:18px;
    border-radius:16px;
    background:#fff;
    margin-bottom:12px;
    box-shadow:0 10px 30px rgba(0,0,0,.05);
    transition:.2s;
}

.manager-card:hover{
    transform:translateY(-2px);
}

.manager-card.premium{
    background:linear-gradient(135deg,#eef6ff,#ffffff);
    border:1px solid #dbeafe;
}

.avatar{
    width:44px;
    height:44px;
    border-radius:50%;
    background:#e5e7eb;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
}

.avatar.gradient{
    background:linear-gradient(135deg,#60a5fa,#3b82f6);
    color:#fff;
}

.manager-top{
    display: grid;
    align-items:center;
    gap: 5px;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}
.manager-info p{
   margin-bottom:5px;
   font-size: 14px;
}
.status{
    font-size:12px;
}

.status.online{ color:#22c55e; }
.status.busy{ color:#f59e0b; }
.status.offline{ color:#9ca3af; }

.manager-tags span{
    display:inline-block;
    font-size:12px;
    padding:4px 8px;
    background:#f1f5f9;
    border-radius:999px;
    margin-right:6px;
    margin-top:6px;
}

.manager-meta{
    font-size:12px;
    color:#64748b;
    margin-top:6px;
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}
.manager-meta span{
    display:flex;
    align-items:center;
    gap:5px;
    justify-content:center;
}.manager-meta span i{
   line-height:1;
}
.form-badges{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin-bottom:10px;
}

.form-badges span{
    font-size: 13px;
    padding:6px 10px;
    background:#f8fafc;
    border-radius:999px;
    font-weight: 600;
}.extra-team{
    margin-top:40px;
    padding:40px;
    background:#f8fafc;
    border-radius:30px;
}

.extra-team__title{
    font-size:24px;
    margin-bottom:6px;
}

.extra-team__subtitle{
    opacity:.7;
    margin-bottom:20px;
}

.extra-team__grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:16px;
    margin-top: 30px;
}

.extra-team__card{
    display:flex;
    gap:14px;
    align-items:center;
    background:#fff;
    padding:14px;
    border-radius:16px;
    box-shadow:0 8px 20px rgba(0,0,0,.05);
}

.extra-team__card img{
    width:54px;
    height:54px;
    border-radius:14px;
    object-fit:cover;
}

.extra-team__card strong{
    display:block;
    font-size:15px;
}

.extra-team__card span{
    font-size:13px;
    opacity:.7;
}

.extra-tag{
    margin-top:6px;
    font-size:11px;
    background:#e2e8f0;
    display:inline-block;
    padding:3px 8px;
    border-radius:999px;
}
@media(max-width:768px){

    .career-proof-top{
        flex-direction: column;
        align-items: flex-start;
    }

    .career-proof-grid{
        grid-template-columns: 1fr;
    }

}.career-summary{
    display:flex;
    flex-direction: row;
    gap: 5px;
    margin: 10px 0;
    flex-wrap: wrap;
}

.career-summary-card{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:18px;
    padding: 10px 16px;
}

.career-summary-label{
    font-size:13px;
    color:#64748b;
    margin-bottom: 4px;
}

.career-summary-value{
    font-weight:600;
    color: #000;
    line-height:1.5;
    font-size: clamp(0.875rem, 0.8456591639871383rem + 0.12861736334405144vw, 1rem);
}.career-success{
    text-align:center;
}

.career-success-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 16px;
    border-radius:999px;
    background:#dcfce7;
    color:#15803d;
    font-size:13px;
    font-weight:700;
    margin-bottom:18px;
}

.career-success h2{
    margin:0 0 14px;
    font-size:38px;
    line-height:1.1;
}

.career-success-text{
    max-width:520px;
    margin:0 auto 34px;
    line-height:1.7;
    color:#64748b;
}

.career-success-info{
    display: grid;
    flex-direction:column;
    gap:14px;
    margin-bottom: clamp(15px, 2.5vw, 30px);
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.career-success-card{
    display:flex;
    align-items:flex-start;
    gap:14px;
    text-align:left;
    padding: clamp(15px, 1.5vw, 20px);
    border-radius:18px;
    background:#f8fafc;
    border:1px solid #e2e8f0;
    line-height: 1;
}

.career-success-card i{
    font-size:22px;
    color:#16a34a;
    margin-top:2px;
}

.career-success-card strong{
    display:block;
    margin-bottom: 4px;
    font-size:15px;
}

.career-success-card span{
    color:#64748b;
    font-size:14px;
    line-height:1.5;
}

.career-success-note{
    padding: clamp(10px, 1.5vw, 20px);
    border-radius:16px;
    background:#f0fdf4;
    border:1px solid #bbf7d0;
    color:#166534;
    line-height: 1.4;
    margin-bottom: clamp(15px, 1.5vw, 25px);
    font-size: 14px;
}

.career-success-close{
    height:54px;
    padding:0 28px;
    border:none;
    border-radius:16px;
    background:#16a34a;
    color:#fff;
    font-weight:700;
    cursor:pointer;
    transition:.25s;
}

.career-success-close:hover{
    transform:translateY(-2px);
}


.career-quiz__left .career-badge {
    height: 34px;
    padding: 4px 12px;
    display: flex;
    align-items: center;
    gap: 10px;
    border-radius: 999px;
    background: rgb(5 179 104 / 16%);
    border: 1px solid rgb(93 255 95 / 15%);
    font-size: 11px;
    font-weight: 700;
    color: #089d5c;
    white-space: nowrap;
    width: max-content;
    margin-bottom: 10px;
}
.spo .career-quiz__left .career-badge {
    
    background:
        rgba(93, 173, 255, .08);
    border:
        1px solid rgba(93, 173, 255, .15);
    
    color: #2492e8;
    
}
 .mobile-consult-box{
    background:#fff;
    border:1px solid #ececec;
    border-radius:24px;
    padding:20px;
    box-shadow:
        0 10px 30px rgba(0,0,0,.06);
}

.mobile-consult-top{
    display:flex;
    gap:14px;
    align-items:center;
}

.mobile-consult-avatar{
    position:relative;
    flex-shrink:0;
}

.mobile-consult-avatar img{
    width:62px;
    height:62px;
    border-radius:18px;
    object-fit:cover;
}

.live-dot{
    width:12px;
    height:12px;
    background:#22c55e;
    border:3px solid #fff;
    border-radius:50%;
    position:absolute;
    right:-2px;
    bottom:-2px;
}

.mobile-consult-name{
    font-size:18px;
    font-weight:700;
    color:#111;
}

.mobile-consult-role{
    font-size:13px;
    color:#777;
    margin-top:2px;
}

.mobile-consult-status{
    display:flex;
    align-items: baseline;
    gap:6px;
    margin-top: 0px;
    font-size: 13px;
    color:#16a34a;
    font-weight:600;
}

.mobile-consult-status span{
    width:8px;
    height:8px;
    border-radius:50%;
    background:#16a34a;
}

.mobile-consult-message{
    margin-top: 15px;
    font-size:14px;
    line-height:1.5;
    color:#555;
}

.mobile-consult-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:18px;
}

.consult-btn{
    height:48px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    text-decoration:none;
    font-weight:600;
}

.consult-btn-phone{
    /* background:#f5f5f5; */
    color:#111;
}

.consult-btn-max{
    /* background:#111827; */
    color:#fff;
}

.consult-btn-max img{
    width:18px;
}

.mobile-consult-form{
    margin-top:16px;
}

.mobile-consult-form input{
    width:100%;
    height:50px;
    border:1px solid #ddd;
    border-radius:14px;
    padding:0 15px;
    margin-bottom:10px;
}

.spo .mobile-consult-form button{
   
    background: #26aef1;
 
}

.mobile-consult-form button{
    width:100%;
    height:50px;
    border:none;
    border-radius:14px;
    background: #4CAF50;
    color:#fff;
    font-weight:700;
    cursor:pointer;
}
.mobile-consult-trust{
    display:flex;
    justify-content: center;
    gap:10px;
    margin-top:14px;
    padding-top:14px;
    border-top:1px solid #eee;
}

.mobile-consult-trust div{
    display:flex;
    align-items:center;
    gap:6px;
    font-size:12px;
    color:#666;
}.mobile-consult-status span{
    width:8px;
    height:8px;
    border-radius:50%;
    display:block;
}

.mobile-consult-status span.online{
    background:#22c55e;
    box-shadow:0 0 10px rgba(34,197,94,.5);
}

.mobile-consult-status span.away{
    background:#f59e0b;
    box-shadow:0 0 10px rgba(245,158,11,.5);
}

.mobile-consult-status span.offline{
    background:#9ca3af;
}.status-online{
    background:#22c55e;
    box-shadow:0 0 12px rgba(34,197,94,.6);
}

.status-away{
    background:#f59e0b;
    box-shadow:0 0 12px rgba(245,158,11,.6);
}

.status-offline{
    background:#9ca3af;
    box-shadow:none;
}

.connect-container, .documents-after-section{
    background: #f8fafc;
    padding: clamp(15px, 4.5vw, 70px);
    border-radius: clamp(15px, 4.5vw, 70px);
}