/*
Theme Name: FreeCityVPN
Text Domain: l2.fcv.fastline.club
Version: 1.0.0
Tags: vpn, free, freeCity
Tested up to: 5.9
Stable tag: 1.0.0
Description: FreeCityVPN landind #2 theme for offer site
Author: KSI
*/

:root {
    font-family: 'Roboto';
    font-size: 14px;

    --color-0: #000000;
    --color-1: #FFFFFF;
    --color-2: #FAFF00;
    --color-3: #8000CF;
    --color-4: #1C006C;
    --color-5: #430092;
    --color-6: #6D00BC;
    --color-7: #EE00FF;
    --color-8: #1D0A65;
    --color-9: #61497D;
    --color-10: #41345C;
    --color-11: #00E0FF;
    --color-12: #2D0051;
    --color-13: #2E0055;
}
:root body{
    font-family: inherit;
    color: var(--color-1);
    background-color: var(--color-8);
}
:root p {
    font-weight: 500;
    line-height: 19px;
}
:root a,
:root a {
    color: var(--color-2);
}

:root h1{ 
    font-style: normal;
    font-weight: 700;
    font-size: 30px;
    line-height: 35px;
}

/*Скругление*/
:root .rounded-4 {
    border-radius: 29px;
}
:root .rounded-5 {
    border-radius: 103px;
}
:root .rounded-6 {
    border-radius: 20px;
}
:root .rounded-7 {
    border-radius: 14px;
}
:root .rounded-8 {
    border-radius: 10px;
}


/*Скругление*/
:root .gradient-1 {
    background: linear-gradient(294.5deg, var(--color-5) 62.26%, var(--color-3) 100%);
}

/*Тень блока*/
:root .shadow-0 {
    box-shadow: 0px 12px 12px rgba(0, 0, 0, 0.25);
}

/*Размер шрифта*/
:root .fsize-0 {
    font-size: 1.1428rem;
}
/*Размер шрифта*/
:root .fw-5
{
    font-weight: 500;
}

/*Цвета текста*/
:root .text-color-0 { color: var(--color-0); }
:root .text-color-1 { color: var(--color-1); }
:root .text-color-2 { color: var(--color-2); }
:root .text-color-3 { color: var(--color-3); }
:root .text-color-4 { color: var(--color-4); }
:root .text-color-5 { color: var(--color-5); }
:root .text-color-6 { color: var(--color-6); }
:root .text-color-7 { color: var(--color-7); }
:root .text-color-8 { color: var(--color-8); }
:root .text-color-9 { color: var(--color-9); }
:root .text-color-10 { color: var(--color-10); }
:root .text-color-11 { color: var(--color-11); }
:root .text-color-12 { color: var(--color-12); }
:root .text-color-13 { color: var(--color-13); }

/*Фоны*/
:root .bg-custom-0 { background-color: var(--color-0);}
:root .bg-custom-1 { background-color: var(--color-1);}
:root .bg-custom-2 { background-color: var(--color-2);}
:root .bg-custom-3 { background-color: var(--color-3);}
:root .bg-custom-4 { background-color: var(--color-4);}
:root .bg-custom-5 { background-color: var(--color-5);}
:root .bg-custom-6 { background-color: var(--color-6);}
:root .bg-custom-7 { background-color: var(--color-7);}
:root .bg-custom-8 { background-color: var(--color-8);}
:root .bg-custom-9 { background-color: var(--color-9);}
:root .bg-custom-10 { background-color: var(--color-10);}
:root .bg-custom-11 { background-color: var(--color-11);}
:root .bg-custom-12 { background-color: var(--color-12);}
:root .bg-custom-13 { background-color: var(--color-13);}

/*Иконки*/
:root [data-icon]::before {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    background-color: transparent;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    vertical-align: middle;
    position: relative;
}
:root [data-icon="burger"]::before
{
    background-image: url('./assets/images/icons/burger.svg');
    width: 45px;
    height: 45px;
}
:root [data-icon="gps"]::before
{
    background-image: url('./assets/images/icons/gps.svg');
    width: 23px;
    height: 31px;
    margin-right: 9px;
}

/*Доп стили кнопок*/
:root .btn .bi {
    font-weight: bold;
    font-size: 26px;
    margin-left: 16px;
}
:root .btn.btn-style-0,
:root .btn.btn-style-1,
:root .btn.btn-style-2 {
    font-weight: 700;
    font-size: 14px;
    line-height: 19px;
    background-color: var(--color-2);
    color: var(--color-0);
    border: 2px solid var(--color-2);
    padding: 12px 22px;
    display: flex;
    min-height: 56px;
    align-items: center;
    justify-content: center;
    
}
:root .btn.btn-style-0.disabled {
    color: var(--color-10);
    background-color: var(--color-9);
    border-color: var(--color-9);
    opacity: 1;
}
:root .btn.btn-style-0:hover {
    background-color: transparent;
    color: var(--color-2);
}
:root .btn.btn-style-0:active {
    background-color: var(--color-1);
    border-color: var(--color-1);
    color: var(--color-0);
}
:root .btn.btn-style-1 {
    background-color: var(--color-11);
    color: var(--color-0);
    border: 2px solid var(--color-11);
}
:root .btn.btn-style-1.disabled {
    color: var(--color-10);
    background-color: var(--color-9);
    border-color: var(--color-9);
    opacity: 1;
}
:root .btn.btn-style-1:hover {
    background-color: transparent;
    color: var(--color-11);
}
:root .btn.btn-style-1:active {
    background-color: var(--color-1);
    border-color: var(--color-1);
    color: var(--color-0);
}

:root .btn.btn-style-2 {
    background-color: var(--color-5);
    color: var(--color-2);
    border: 2px solid var(--color-5);
}
:root .btn.btn-style-2.disabled {
    color: var(--color-10);
    background-color: var(--color-9);
    border-color: var(--color-9);
    opacity: 1;
}
:root .btn.btn-style-2:hover {
    background-color: transparent;
    color: var(--color-5);
}
:root .btn.btn-style-2:active {
    background-color: var(--color-1);
    border-color: var(--color-1);
    color: var(--color-0);
}

@media (min-width: 768px){ 
    :root .btn.btn-style-0,
    :root .btn.btn-style-1,
    :root .btn.btn-style-2 {
        font-size: 16px;
    }
}

/*Меню*/
:root .offcanvas .navbar-nav {

}
:root .offcanvas .navbar-nav > .nav-item{
    
}
:root .offcanvas .navbar-nav > .nav-item > .nav-link{
    font-weight: 500;
    font-size: 14px;
    line-height: 16px;
    color: var(--color-5); 
}
:root .offcanvas .navbar-nav > .nav-item > [data-bs-toggle="collapse"].nav-link:after{
    content: "\F286";
    font-weight: bold;
    font-family: bootstrap-icons !important;
    font-size: 18px;
    border: none;
    vertical-align: middle;
    line-height: 14px;
    margin-left: 4px;
}

:root .offcanvas .navbar-nav > .nav-item > [data-bs-toggle="collapse"].nav-link.collapsed:after{
    content: "\F282";
}
:root .offcanvas .navbar-nav > .nav-item  .navbar-nav .nav-link
{
    color: var(--color-0); 
    font-weight: 400;
}
:root .offcanvas .navbar-nav > .nav-item  .navbar-nav .nav-link:hover,
:root .offcanvas .navbar-nav > .nav-item  .navbar-nav .nav-link:active
{
    color: var(--color-5); 
}

/*Кнопка закрытия*/
:root .btn-close {
    background-image: url('./assets/images/close.svg');
    position: absolute;
    right: 30px;
    width: 18px;
    height: 18px;
    background-size: cover;
    padding: 0 !important;
} 
/*Модальное окно регистрации*/
:root .modal .modal-header {
    border-color: var(--color-5);
    padding: 2px 7px 6px;
    position: relative;
}
@media (min-width: 768px){
    :root .modal-dialog {
        max-width: 625px;
    }
}

/*Форма*/
:root input.form-control {
    font-family: inherit;
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 16px;
    height: 37px;
    color: var(--color-0);
    border: none;
    border-bottom: solid 1px var(--color-5);
    border-radius: 0;
}
:root .form-label {
    font-weight: 300;
    color: var(--color-0);
    margin-bottom: 0;
}
:root #regUserModal form {
    margin: auto;
    max-width: 454px;
}
:root #regUserModal .btn-close {
    right: 15px;
}


/*Уведомления*/
:root #alertModal .btn-close {
    right: 15px;
}

/*Шапка*/
:root .header {
    min-height: 120px;
}
:root .header .nav-item {
    margin: 0 0.5em;
}
:root .header .nav-link {
    color: var(--color-1);
    font-size: 14px;
    line-height: 16px;
    font-weight: 500;
}
:root .header .nav-link.dropdown-toggle::after {
    content: "\F282";
    font-weight: bold;
    font-family: bootstrap-icons !important;
    border: none;
    vertical-align: middle;
    line-height: 1em;
}
:root .header .nav-link.dropdown-toggle.show::after {
    content: "\F286";
}
:root .header .nav-link.active,
:root .header .nav-link:hover,
:root .header .nav-link.show {
    color: var(--color-2);
}
:root .header .btn.btn-reg {
    color: var(--color-5);
}
:root .header .btn.btn-reg:hover {
    color: var(--color-2);
}
:root .header .btn.btn-reg:active {
    color: var(--color-5);
}
:root .header .nav-item .nav-item .nav-link {
    color: var(--color-0);
}
:root .header .nav-item .nav-item .nav-link:hover,
:root .header .nav-item .nav-item .nav-link:active {
    color: var(--color-5);
}
:root .header .nav-item ul {
    border-radius: 10px;
}

/*Начало*/
:root .ks_opening h1 {
    font-size: 20px;
    line-height: 23px;
    margin-bottom: 495px;
}
:root .ks_opening h1 span{
    color: var(--color-2);
}
:root .ks_opening .container-fluid {
    background-repeat: no-repeat;
    background-color: transparent;
    background-position: center top;
    min-height: 695px;
    background-size: auto 695px;
}
:root .ks_opening .card {
    width: 312px;
    min-height: 348px;
    background-color: rgba(132, 22, 196, 0.5);
}
:root .ks_opening .card-title {
    font-size: 20px;
    line-height: 23px;
}
:root .ks_opening .card-text {
    line-height: 16px;
}
@media (min-width: 768px){
    :root .ks_opening h1 {
        font-size: 45px;
        line-height: 53px;
        margin-bottom: 64px;
    }
    :root .ks_opening .container-fluid {
        background-position: center center;
        background-size: cover;
    }
}

/*Устройство*/
:root .ks_devices > .container-fluid > .row > .col-12 {
    background: linear-gradient(294.5deg, var(--color-5) 62.26%, var(--color-3) 100%);
}
:root .ks_devices .block-content {
    max-width: 639px;
}
:root .ks_devices h1 {
    font-size: 20px;
    line-height: 23px;
}
@media (min-width: 768px){
    :root .ks_devices h1 {
        font-size: 30px;
        line-height: 35px;
    }
}

/*Карта*/
:root .ks_map .block-content {
    background: radial-gradient(22.34% 48.69% at 50% 50.06%, var(--color-12) 0%, var(--color-0) 100%);
}
:root .ks_map h1{
    font-size: 20px;
    line-height: 23px;
}
:root .ks_map a{
    font-size: 16px;
    line-height: 19px;
    color: var(--color-1);
}
:root .ks_map a span{
    color: var(--color-2);
}
@media (min-width: 768px){
    :root .ks_map h1{
        font-size: 30px;
        line-height: 35px;
    }
}

/*Что говорят*/
:root .ks_say {
    background: linear-gradient(180deg, var(--color-5) 0.31%, var(--color-3) 100%);
}
:root .ks_say h1{
    font-size: 20px;
    line-height: 23px;
}
:root .ks_say h1 span{
    color: var(--color-2);
    white-space: nowrap;
}
:root .ks_say .say-tabs{
    position: relative;
}
:root .ks_say .say-tabs::after {
    content: '';
    width: 100%;
    height: 2px;
    border-radius: 2px;
    background-color: var(--color-13);
    display: block;
    position: relative;
}
:root .ks_say .say-tabs .nav-item {
    display: inline-block;
}
:root .ks_say .say-tabs .nav-link{
    background-color: transparent;
    border: none;
    color: var(--color-1);
    font-size: 16px;
    line-height: 19px;
    font-weight: 700;
    position: relative;
    padding-bottom: 3px;
}
:root .ks_say .say-tabs .nav-link.active {
    color: var(--color-2);
}
:root .ks_say .say-tabs .nav-link.active:after {
    content: '';
    width: 100%;
    height: 2px;
    border-radius: 2px;
    background-color: var(--color-2);
    display: block;
    bottom: -5px;
    position: relative;
    z-index: 1;
}
:root .ks_say .say-card {
    min-height: 262px;
}
@media (min-width: 768px){
    :root .ks_say h1{
        font-size: 30px;
        line-height: 35px;
    }
    :root .ks_say .say-card > p:first-child {
        font-size: 20px;
        line-height: 23px;
    }
}

/*Обратная связь*/
:root .ks_feedback {
    background-repeat: no-repeat;
    background-color: transparent;
    background-position: center top;
    background-size: cover;
}
:root .ks_feedback .feedback-block {
    background-color: var(--color-1);
    width: 74%;
    text-align: center;
}
:root .ks_feedback .feedback-block p {
    color: var(--color-0);
    font-size: 12px;
    line-height: 14px;
    text-align: left;
}
:root .ks_feedback a.btn { 
    min-width: 243px;
}
:root .ks_feedback .block-content {
    min-height: 635px;
}
@media (min-width: 768px){
    :root .ks_feedback .feedback-block {
        background-color: transparent;
        width: 100%;
        max-width: 433px;
        text-align: center;
    }
    :root .ks_feedback .feedback-block p {
        color: var(--color-1);
        font-size: 16px;
        line-height: 19px;
    }
}


/*Footer*/
:root .footer {
}
:root .footer .footer-up {
    padding: 19px 0;
}
:root .footer .footer-down {
    padding: 33px 0;
}
:root .footer h5 {
    font-size: 16px;
    margin-bottom: 1rem;
    color: var(--color-7);
}
:root .footer .nav-item {
}
:root .footer .nav-link {
    color: var(--color-1);
    padding-left: 0;
    padding-right: 0;
}
:root .footer .nav-link.active,
:root .footer .nav-link:hover,
:root .footer .nav-link:active {
    color: var(--color-2);
}
@media (min-width: 768px){
    :root .footer .footer-up {
        padding: 58px 0 15px;
    }
    :root .footer .nav-link {
        line-height: 17px;
    }
}