:root {  
  --bs-font-sans-serif: "Manrope", system-ui, sans-serif;
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 500;
  --bs-body-line-height: 1.5;
  --bs-body-color: #141417;
  --bs-color: #30302f;
  --bs-body-bg: #fff;
  --bs-body-bg2: #30302f;
  --bs-body-bg2-rgb: 48, 48, 47;
  
  --bs-body-bg-rgb: 40, 40, 40;

  --bs-primary: #39a1ea;
  --bs-primary2: #3e57ce;
  --bs-primary2-hsl: 230deg, 60%, 53%;

  --bs-sec: #fcb100;
  --bs-sec2: #ff8600;

  --blue: #2E86E6;
  --blue-dark: #1E6ED0;
  --ink: #16273D;
  --page-bg: #EEF5FD;
  --muted: #64748B;
  --muted-2: #8496AC;
  --muted-3: #516075;
  --red: #F5563F;
  --ya-red: #FC3F1D;
  --max: 1280px;


  --bs-body-color-hover: #232529;
  --bs-body-color-rgb: 29, 31, 35;
  --bs-primary-rgb: 214, 11, 81;
  --bs-primary-light: #fbf7ff;
  --bs-light-gray: #f5f7fa;
  --bs-dark: #14161a;
  --bs-shadow: 0 0.5rem 2rem -0.25rem hsla(277,9%,44%,.1);
  --bs-btn-shadow: 0 .5rem 1.125rem -0.5rem rgba(214,11, 81,.5);
  --bs-card-shadow: 0 0 1rem 0.0625rem rgba(11,15,25,.06),0 0 .4rem -0.0625rem rgba(11,15,25,.01);
  --bs-card-shadow-big: rgba(126, 123, 160, 0.12) -7px 12px 60px 0px;
  --svg-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M235.3 331.3C229.1 337.6 218.9 337.6 212.7 331.3L148.7 267.3C142.4 261.1 142.4 250.9 148.7 244.7C154.9 238.4 165.1 238.4 171.3 244.7L224 297.4L340.7 180.7C346.9 174.4 357.1 174.4 363.3 180.7C369.6 186.9 369.6 197.1 363.3 203.3L235.3 331.3zM512 256C512 397.4 397.4 512 256 512C114.6 512 0 397.4 0 256C0 114.6 114.6 0 256 0C397.4 0 512 114.6 512 256zM256 32C132.3 32 32 132.3 32 256C32 379.7 132.3 480 256 480C379.7 480 480 379.7 480 256C480 132.3 379.7 32 256 32z' fill='%2339a1ea'/%3E%3C/svg%3E");
  --svg-check-white: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M235.3 331.3C229.1 337.6 218.9 337.6 212.7 331.3L148.7 267.3C142.4 261.1 142.4 250.9 148.7 244.7C154.9 238.4 165.1 238.4 171.3 244.7L224 297.4L340.7 180.7C346.9 174.4 357.1 174.4 363.3 180.7C369.6 186.9 369.6 197.1 363.3 203.3L235.3 331.3zM512 256C512 397.4 397.4 512 256 512C114.6 512 0 397.4 0 256C0 114.6 114.6 0 256 0C397.4 0 512 114.6 512 256zM256 32C132.3 32 32 132.3 32 256C32 379.7 132.3 480 256 480C379.7 480 480 379.7 480 256C480 132.3 379.7 32 256 32z' fill='%23fff'/%3E%3C/svg%3E");
  --svg-acc-btn-dark: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256' fill='%23000'%3e%3cpath d='M225.813 48.907L128 146.72 30.187 48.907 0 79.093l128 128 128-128z'/%3e%3c/svg%3e");
  --svg-acc-btn-light: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256' fill='%23fff'%3e%3cpath d='M225.813 48.907L128 146.72 30.187 48.907 0 79.093l128 128 128-128z'/%3e%3c/svg%3e");

  --bs-btn-gradient-5: linear-gradient(43deg, var(--bs-primary) 0%, 50%, var(--bs-primary2) 100%);
  --bs-btn-gradient-5-r: linear-gradient(-43deg, var(--bs-primary) 0%, 50%, var(--bs-primary2) 100%);
  --bs-btn-gradient-ontop: linear-gradient(43deg, var(--bs-primary) 0%, 50%, #0096ff 100%);
  --bs-btn-gradient-ontop-a: linear-gradient(-93deg, var(--bs-primary) 0%, 50%, #0096ff 100%);
  --bs-btn-gradient-test1: linear-gradient(43deg, #39a1ea 0%, 50%, #3e57ce 100%);
  --bs-btn-gradient-test2: linear-gradient(43deg, #fff1d6 0%, 50%, #fcb100 100%);
  --bs-gradient-light: linear-gradient(90deg, hsl(204deg 100% 98%) 0%, 50%, hsl(225deg 100% 98%) 100%);
  --bs-btn-gradient-6: linear-gradient(43deg, var(--blue) 0%, 50%, var(--blue-dark) 100%);
  --bs-btn-gradient-6-r: linear-gradient(-43deg, var(--blue) 0%, 50%, var(--blue-dark) 100%);
  --bs-btn-gradient-7: linear-gradient(43deg, var(--bs-sec) 0%, 50%, var(--bs-sec2) 100%);


/*  --bs-btn-gradient-2: linear-gradient(43deg, #d60bb0 0%, 50%, #4158D0 100%);
  --bs-btn-gradient-3: linear-gradient(43deg, #C850C0 0%, 50%, #4158D0 100%);
  --bs-btn-gradient-4: linear-gradient(-43deg, #4158D0 0%, #C850C0 100%);
  --bs-btn-gradient: linear-gradient(43deg, #39a1ea 0%, 50%, #ce3e99 100%);
  --bs-btn-gradient-r: linear-gradient(-43deg, #39a1ea 0%, 50%, #ce3e99 100%);

  --bs-gradient-main: linear-gradient(43deg, #4158D0 0%, #C850C0 46%, #39a1ea 100%);
  --bs-gradient-main-sm: linear-gradient(90deg, #4158D0 0%, #C850C0 100%);
  --bs-gradient-main-sm2: linear-gradient(0deg, #4158D0 0%, #C850C0 100%);
  --bs-gradient-main-2: linear-gradient(43deg, #4158D0 0%, #C850C0 55%, #39a1ea 100%);
  --bs-gradient-main-3: linear-gradient(-43deg, #4158D0 0%, #C850C0 100%);
  --bs-gradient-light-2: linear-gradient(90deg, #fcf6fb 0%, 50%, #f8f1ff 100%);
  --bs-gradient-light-3: linear-gradient(90deg, #fff6fa 0%, 50%, #f1f4ff 100%);
  --bs-gradient-light-3-sm: linear-gradient(180deg, #fff 0%, 60%, #f1f4ff 100%);
  --bs-gradient-light-4: linear-gradient(180deg, #f1f4ff 0%, 50%, #f1f4ff 100%);*/

/*    --m-base-font-color: #1c1c1c;
    --m-base-action-color: #f26aac; 
    --m-base-active-color: #f2177b; 
    --m-purple: #a044db;
    --m-light-gray: #fafaff; */
    --m-black: #1c1c1c;
    --m-black-hard: #1c1c1c;
    --m-stroke-gray: #f3f4fe; 
    --m-dropdown-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'><path d='M8.7,13.7c0.4-0.4,1.1-0.4,1.5,0l6,6l6-6c0.4-0.4,1.1-0.4,1.5,0s0.4,1.1,0,1.5l-6.7,6.7c-0.4,0.4-1.1,0.4-1.5,0l-6.7-6.7C8.3,14.6,8.3,14.1,8.7,13.7z'/></svg>") no-repeat 50% 50%;

}


* { box-sizing: border-box; }
html { overflow-x: clip; }
body {
  margin: 0;
  font-family: var(--bs-font-sans-serif);
  color: var(--ink);
  background: var(--page-bg);
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}

.mx-auto {
    margin-right: auto !important;
    margin-left: auto !important;
}

a {
    color: var(--bs-color);
    text-decoration: none;
}
a:hover {
    color: var(--bs-primary);
    text-decoration: none;
}
.rub {
    font-family: system-ui;
}
.text-center {
    text-align: center;
}
.d-md-show {
    display: none;
}
.d-xl-show {
    display: none;
}
.header {
    font-size: 1.1rem;
    font-weight: 300;
    color: #fff;
    padding: 2rem 0;
}
svg {
    width: 100%;
    height: 100%;
}
.modal-content {
    background: var(--bs-body-color);
}
.modal-backdrop {
    background: var(--bs-btn-gradient-5);
    /*backdrop-filter: blur(6px);*/
}
.modal-backdrop.show {
    opacity: 1;

}
.modal-fullscreen-xl-down .modal-content {
    height: 100%;
}
.bg-gray {
    background-color: #fafafc;
}
.bg-black {
    background-color: var(--bs-body-bg);
    color: #fff;
}
.navbar {
    min-height: 60px;
    margin: .5rem;
    margin-bottom: 0;
    padding: .5rem 0;
    border-radius: 1rem;
    transition: all 0.25s ease;
    box-shadow: var(--bs-shadow);
    -webkit-box-shadow: var(--bs-shadow);
    background: rgb(255 255 255 / 0.95);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}
.logo {
    display: flex;
    max-width: 200px;
}
.logo img {
    width: 100%;
    height: 100%;
}
.nav-icons {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3px;
}
.menu-btn,
.phone-btn,
.wa-btn {
    padding: 0.7rem;
    color: var(--bs-body-color);
}

.menu-btn {
    color: #fff;
    background: var(--bs-sec);
    border-radius: 3rem;
    /*color: #fff;
    background: var(--bs-btn-gradient-ontop);
    border-radius: 3rem;*/
}

.on-top.navbar .menu-btn {
    background: var(--bs-sec);
    border-radius: 3rem;
    color: #fff;
}

.menu-btn span,
.wa-btn span {
    width: 1.2rem;
    height: 1.2rem;
    display: flex;
}
.phone-btn span {
    width: 1rem;
    height: 1rem;
    display: flex;
}
.nav-icons a:hover {
    color: var(--bs-body-color);
}
.navbar-phone a.phone,
.navbar-nav a {
    color: var(--bs-body-color);
}

.menu-btn:hover, .menu-btn:active {color: var(--bs-primary2);}
.on-top.navbar .menu-btn:hover, .on-top.navbar .menu-btn:active {color: #fff;}

.on-top.navbar {
    background: rgb(255 255 255 / 0%);
    /*backdrop-filter: none;*/
    margin: .5rem;
    margin-bottom: 0;
    border-radius: 1rem;
    transition: all 0.15s ease;
    box-shadow: none;
    -webkit-box-shadow: none;
}

.on-top .navbar-nav a, .on-top .navbar-phone a.phone {
    color: #fff;
}
.on-top .navbar-nav a:hover, .on-top .navbar-phone a.phone:hover {
    color: #86e6fd;
}

.on-top.navbar .btn {
    /*font-size: 0.9rem;*/
    box-shadow: none;
    background-image: var(--bs-btn-gradient-ontop);
    color: #fff;
    font-weight: 600;
    transition: all 0.15s ease-in-out;
/*    font-size: 1rem;*/
}

.on-top.navbar .btn:hover {
    background-image: var(--bs-btn-gradient-ontop-a);
}

.logo-normal {
    display: block;
}

.logo-white {
    display: none;
}

.on-top .logo-white {
    display: block;
}

.on-top .logo-normal {
    display: none;
}

@media (min-width: 375px) {
    .on-top .menu-btn,
    .on-top .phone-btn,
    .on-top .wa-btn {
        padding: 0.7rem;
    }
    .wa-btn span {
        width: 1.4rem;
        height: 1.4rem;
    }
    .phone-btn span {
        width: 1.1rem;
        height: 1.1rem;
    }
}
.navbar .container-xxl {
    gap: 1rem;
    flex-wrap: nowrap;
    padding: 0 .5rem;
}
.navbar-brand {
    display: flex;
    transition: all 0.25s ease;
}
.navbar-nav,
.navbar-social,
.navbar-phone {
    display: none;
}
.navbar-nav .navbar-phone {
    color: #000;
}
.navbar-nav a,
a.phone {
    font-weight: 600;
    font-size: 0.9rem;
    text-decoration: none;
    border-radius: 3rem;
    background: #fff0;
    transition: all 0.15s ease-in-out;
}
a.phone {
    display: flex;
    /*flex-grow: 1;*/
    gap: 0.7rem;
    justify-content: center;
    align-items: center;
    padding: 0;
    color: var(--bs-body-color);
}
a.phone:hover {
    color: var(--blue);
}
a.phone span {
    width: 1rem;
    height: 1rem;
    display: flex;
    color: var(--blue);
    transition: all 0.15s ease-in-out;
}

.offcanvas .phone span, .offcanvas .btn-call span {
    width: 1.2rem;
    height: 1.2rem;
    display: flex;
    color: #fff;
    transition: all 0.15s ease-in-out;
}

.d-msg {
    display: flex;
    gap: 1rem;
    margin-bottom: 1rem;
}
a.msg {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    font-weight: 500;
}
a.msg span {
    width: 1.2rem;
    height: 1.2rem;
    display: flex;
    color: var(--bs-primary);
    transition: all 0.2s ease-in-out;
}
.navbar-nav a:hover {
    color: var(--blue);
}

.navbar-nav li.dropdown:hover > a {
    color: var(--blue);
}
.navbar-social a:hover {
    color: var(--blue);
}
.navbar-social a {
    padding: 0.7rem;
    color: var(--bs-body-color);
    border-radius: 3rem;
    transition: all 0.25s ease;
}
.navbar-social a span {
    width: 1rem;
    height: 1rem;
    display: flex;
}
.navbar-social a:hover {
    color: var(--blue);
}
.offcanvas {
    transform: translateY(-100%);
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    padding: 0;
    background: var(--bs-btn-gradient-5);

}
.offcanvas-enabled {
    margin-top: 80px;
}
.offcanvas-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem;
    min-height: 80px;
    gap: 1rem;
}
.offcanvas-body {
    flex-grow: 1;
    padding: 1rem;
}
.offcanvas-special {
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.offcanvas-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1040;
    width: 100vw;
    height: 100vh;
    background-color: #000;
}
.offcanvas-backdrop.fade {
    opacity: 0;
}
.offcanvas-backdrop.show {
    opacity: 0.2;
}
.offcanvas-scroll {
    overflow-y: scroll;
}
.offcanvas .logo-sm {
    color: var(--bs-body-color);
}
.offcanvas .btn-call,
.offcanvas .phone {
    color: #fff;
    font-size: 1rem;
    padding: 1rem 2rem;
    border-radius: 3rem;
    background: hsl(0deg 0% 100% / 5%);
    font-weight: 600;
    justify-content: flex-start;
    gap: 1rem;
}

.offcanvas a:hover, .offcanvas a:active, .offcanvas a:focus {
    color: #fff;

}

@media (max-width: 991.98px) {
    .offcanvas-collapse {
        position: fixed;
        top: 0;
        bottom: 0;
        left: 100%;
        width: 100%;
        padding-right: 1rem;
        padding-left: 1rem;
        overflow-y: auto;
        visibility: hidden;
        background-color: #fff;
        transition: transform 0.1s ease-in-out, visibility 0.1s ease-in-out;
    }
    .offcanvas-collapse.open {
        visibility: visible;
        transform: translateX(-100%);
    }
}
.offcanvas-footer {
    display: flex;
    flex-direction: column;
    row-gap: 1rem;
    font-size: 0.9rem;
    color: #fff;
    padding: 0 1rem;
}
.footer-info {
    margin: 1rem 0;
    font-size: 0.8rem;
}
.offcanvas-footer a {
    text-decoration: none;
    font-weight: 500;
    text-transform: none;
}
/*.offcanvas-footer a:hover {
    text-decoration: none;
}*/
.offcanvas .navbar-social {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    margin: 1rem 0;
}
.offcanvas .navbar-social a {
    color: var(--bs-primary);
}
.offcanvas .navbar-social a:hover {
    color: var(--bs-primary);
}
.offcanvas .navbar-social a span {
    width: 1.2rem;
    height: 1.2rem;
}
strong,
.strong {
    font-weight: 700;
}
#swiper-main {
    background-color: var(--bs-body-bg);
}
#swiper-main .row {
    margin: 0;
}
#swiper-main .row > * {
    position: relative;
    padding: 0;
    margin: 0;
}
/*@media screen and (max-width: 768px) and (min-height: 760px) {
    .swiper-slide .row.vh {
        height: 100vh;
    }
}
@media screen and (min-width: 768px) and (min-height: 800px) {
    .swiper-slide .row.vh {
        height: 100vh;
    }
}*/
.swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
}
.work .swiper-wrapper {
    align-items: center;
}
.swiper-slide img {
    width: 100%;
}
.swiper-slide .main-bg {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;

}

.main-bg {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    background-color: var(--bs-primary);
    background-image: var(--bs-btn-gradient-5);
    overflow: hidden;
/*    background-color:hsla(225,62%,53%,1);
    background-image:
    radial-gradient(at 99% 97%, hsla(204,100%,50%,1) 0px, transparent 50%),
    radial-gradient(at 98% 3%, hsla(225,61%,53%,1) 0px, transparent 50%),
    radial-gradient(at 4% 7%, hsla(204,100%,50%,1) 0px, transparent 50%);*/
}

.main-bg:before {
    content: "";
    background-image: url(../../img/front-min.png);
    background-repeat: no-repeat;
    position: absolute;
    right: -20%;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: top left;
    max-height: 650px;
}

.course .h1,
.course .check {
    color: #fff !important;
}
.course .check {
    font-weight: 700;
}
.course .check-icon {
    background: var(--svg-check-white);
}
.course .d-ava > span {
    color: #fff;
}
.work img,
.discount img {
    aspect-ratio: 3/4;
}
.work .swiper {
    width: 100%;
    height: 100%;
    background-color: var(--bs-body-bg);
}
/*.catalog .nav {
    margin: 1.5rem 0;
    gap: 0.5rem;
    overflow-x: scroll;
    flex-direction: row;
    flex-wrap: nowrap;
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.catalog .nav .nav-item {
    color: var(--bs-body-color);
    border-radius: 3rem;
    background: #fff0;
    border: 0;
    white-space: nowrap;
    opacity: 1;
    font-size: 1rem;
    padding: 0.7rem 1.5rem;
    font-weight: 500;
    line-height: normal;
    transition: all 0.1s ease-in-out;
}
.catalog .nav .nav-item:hover {
    opacity: 1;
    background: var(--bs-gradient-light-3);
}
.catalog .nav .nav-item.active {
    color: #fff;
    background-image: var(--bs-btn-gradient);
    opacity: 1;
}*/

/*--- filter ---*/

.nav-wrap {
    display: flex;
    margin: 30px 0 40px 0;
    align-items: stretch;
    justify-content: space-between;
    gap: 12px;
}

.nav-wrap .btn-expand {
    display: flex;
    height: 100%;
    padding: 0 7px;
    color: var(--m-black);
    background-color: var(--m-light-gray);
    border: 0;
    align-items: center;
    border-radius: 30px;
}

.nav-wrap .btn-expand span {
    background-color: currentcolor;
    -webkit-mask: var(--m-dropdown-icon);
    mask: var(--m-dropdown-icon);
    -webkit-mask-size: cover;
    mask-size: cover;
    width: 30px;
    height: 30px;
    transition: all .1s ease-in-out;
}

.nav-wrap .btn-expand.active span {
    transform: rotate(180deg);
}

.nav-wrap .btn-expand:hover {
  color: var(--m-black-hard);
  border-color: var(--m-stroke-gray);
  background-color: var(--m-stroke-gray);
}

.nav-wrap .btn-expand:hover span {
    background-color: var(--m-black-hard);
}

.nav-filter {
  gap: 6px;
  display: flex !important;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  overflow-x: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  transition: all .1s ease-in-out;
}
.nav-filter::-webkit-scrollbar {
    width: 0px;
    background: transparent;
}

.nav-filter .nav-item {
    color: var(--m-black);
    background-color: var(--m-light-gray);
    border: 0;
    /*border-color: var(--m-light-gray);*/
    font-family: var(--m-base-font-family);
    margin-bottom: 0;
    text-transform: none;
    letter-spacing: 0;
    font-weight: 400;
    display: flex;
    align-items: center;
    flex-grow: 1;
    justify-content: center;
    transition: transform 0.1s ease-in-out;
    /*border: 2px solid transparent;*/
}

.nav-filter.expand {
    flex-wrap: wrap;
}

.nav-filter .nav-item  {
    font-size: .9rem;
    font-weight: 600;
    border-radius: 30px;
    opacity: 1;
    white-space: nowrap;
    transition: all .1s ease-in-out;
    text-decoration: none;
    padding: 13px 22px;
}
.nav-filter .nav-item:hover {
  background-color: var(--m-stroke-gray);
}
.nav-filter .nav-item.active {
  color: #fff;
  background-image: var(--bs-btn-gradient);
/*  background-color: var(--m-base-action-color);
  border-color: var(--m-base-action-color);*/
}

@media (min-width: 1200px) {
    .nav-filter .nav-item {
        flex-grow: 0;
        justify-content: flex-start;
        font-size: 1rem;
    }
}

/*--- /filter ---*/


.swiper:not(#swiper-main) .swiper-button-prev,
.swiper:not(#swiper-main) .swiper-button-next {
    background: var(--bs-btn-gradient);
    border-radius: 3rem;
    width: 2.2rem;
    height: 2.2rem;
    transition: all 0.1s ease-in-out;
}
.swiper:not(#swiper-main) .swiper-button-prev:hover,
.swiper:not(#swiper-main) .swiper-button-next:hover {
    background: var(--bs-btn-gradient-r);
    transform: scale(1.1);
}
.btn-left,
.btn-right,
.btn-scroll-top-icon {
    width: 100%;
    height: 100%;
    background-size: 0.7rem;
    background-repeat: no-repeat;
    background-position: center;
}
.btn-left {
    background-image: var(--svg-acc-btn-light);
    transform: rotate(90deg);
}
.btn-right {
    background-image: var(--svg-acc-btn-light);
    transform: rotate(-90deg);
}
.btn-scroll-top-icon {
    background-image: var(--svg-acc-btn-light);
    transform: rotate(180deg);
}
.btn-scroll-top {
    display: none;
    z-index: 100;
    width: 2.5rem;
    height: 2.5rem;
    background: var(--blue);
    color: #fff;
    border-radius: 50%;
    opacity: 1;
    position: fixed;
    bottom: 1rem;
    right: 1rem;
    transition: 0.2s ease-out;
}
.btn-scroll-top:hover {
    transform: scale(1.1);
    background: var(--blue-dark);
}
.btn-scroll-top.show {
    display: flex;
}
.discount .swiper,
.catalog .swiper,
.adv .swiper 
{
    padding-bottom: 2rem;
}
.catalog .swiper {
    overflow: visible;
}
.discount .swiper .swiper-button-next,
.discount .swiper .swiper-button-prev,
.catalog .swiper .swiper-button-next,
.catalog .swiper .swiper-button-prev
 {
    margin-top: calc(0px - 2rem - (var(--swiper-navigation-size) / 2));
}
.video .swiper .swiper-button-next,
.video .swiper .swiper-button-prev {
    margin-top: calc(0px - 2rem - (var(--swiper-navigation-size) / 2));
}
.discount .swiper-slide,
.catalog .swiper-slide,
.adv .swiper-slide {
    height: auto;
}
.discount .swiper-horizontal > .swiper-pagination-bullets,
.catalog .swiper-horizontal > .swiper-pagination-bullets,
.adv .swiper-horizontal > .swiper-pagination-bullets {
    bottom: 0rem !important;
}
.adv .card {
    height: 100%;
    display: flex;
    padding: 3rem;
    border-radius: 1.5rem;
    background: var(--bs-body-bg);
}
.discount .card .price {
    background-image: var(--bs-gradient-main-2);
    color: #fff0;
    background-clip: text;
}
.discount .photo {
    border-radius: 0.5rem;
    position: relative;
    display: flex;
    align-items: center;
}
.discount .name {
    line-height: 1.2;
}
.discount .date {
    opacity: 0.7;
    font-size: 0.8rem;
}
.video .card {
    width: 100%;
    row-gap: 0;
}
.video .photo {
    width: 100%;
    max-height: 700px;
    background-color: #fff0;
}
.video .photo iframe,
.video .photo video {
    width: 100%;
    height: 100%;
    aspect-ratio: 320 / 568;
    border-radius: 1.5rem;
    overflow: hidden;
}
.video .card .card-body {
    text-align: left;
}
.video .swiper {
    padding-bottom: 2rem;
}
.video .swiper .swiper-slide {
    height: auto;
}
.video .swiper .swiper-pagination-bullets {
    bottom: 0rem !important;
}
.video .swiper .swiper-button-next {
    display: flex;
    z-index: 999;
}
.head {
    margin-bottom: 2rem;
}
.company .company-text {
    display: flex;
    flex-direction: column;
    font-size: 1rem;
    font-weight: 500;
    margin: 2rem 0 0 0;
    gap: 1rem;
}
.company .company-text {
    font-size: 1rem;
    font-weight: 500;
}
.company .row {
    align-items: center;
}
.company .row > *:last-child {
    margin-top: 0;
}
.head p {
    background-image: var(--bs-btn-gradient);
    color: #fff0;
    background-clip: text;
}
.head span {
    font-size: 12px;
}
.company .company-text p,
.company .company-text ul li {
    font-size: 1rem;
}
.company .photo {
    position: relative;
    z-index: 0;
    max-width: 400px;
}
.company .photo img {
    border-radius: 50%;
}
.company .swiper-button-prev,
.catalog .swiper-button-prev,
.discount .swiper-button-prev {
    display: none !important;
}
.company .swiper-text {
    padding-bottom: 3rem;
}
.master-desc {
    background: var(--bs-gradient-light-3);
    border-radius: 1rem;
    padding: 1rem;
}
.swiper-slide .container-xxl {
    position: relative;
    width: 100%;
    height: 100%;
}
.swiper-slide .slider-inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    padding: calc(100px + 1rem) 0 0 0;
    height: 100%;
    overflow: hidden;
    color: #fff;
    row-gap: 1rem;
    position: relative;
}

.hero-inner {
    height: 100vh;
    min-height: 900px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    z-index: 1;
}

.hero-center {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.hero-inner .h1 {
    font-size: calc(2rem + 1.5vw);
    font-weight: 600;
    color: #fff;
    margin: 0;
    text-shadow: none;
    line-height: 1.1;
    max-width: 370px;
}

.hero-inner .h2 {
    color: #fff;
    font-size: clamp(1rem, 5vw, 1.5rem);
    font-weight: 500;
    margin: 0;

}

.dream { 
    font-size: 4rem;
    position: relative; display: inline-block; color: #fff; text-transform: uppercase; font-weight: 700; text-shadow: 0 -3px 10px #10daff, 0 3px 3px #10daff;} 
.dream::before{ 
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 00%;
    bottom: 0%;
    border-radius: 999px;
    background: radial-gradient(circle, hsla(189, 100%, 53%, .6) 0%, hsla(189, 100%, 53%, .6) 50%, hsla(189, 100%, 53%, .3) 100%);
    filter: blur(30px);
    height: 50px;
    z-index: -1;
}

.hero-inner .search {
    box-shadow: rgb(30 63 94 / 30%) -7px 12px 60px 0px;
    border-radius: 1rem;
    max-width: 1100px;
    width: 100%;
}
/*
.swiper-slide .h1 {
    font-size: clamp(2rem, 9vw, 4.8rem);
    font-weight: 700;
    line-height: 1;
    color: #fff;
}
.swiper-slide .h3 {
    color: #fff;
}
.swiper-slide .h1 span {
    background-image: var(--bs-gradient-main-2);
    color: #fff0;
    background-clip: text;
}
.check {
    font-size: 0.9rem;
    font-weight: 500;
    opacity: 1;
    margin: 0;
    display: flex;
    gap: 0.7rem;
    align-items: center;
}
.check-icon {
    background-image: var(--svg-check);
    width: 1.2rem;
    height: 1.2rem;
    display: block;
}
.d-check {
    border-radius: 1rem;
    padding: 1.5rem;
    margin-bottom: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}
.d-check .check {
    font-weight: 500;
}
.company-text .row {
    margin-bottom: 1.5rem;
}
.company .sepr {
    padding: 3rem 0;
}
.feature {
    font-size: 1rem;
    font-weight: 500;
    color: var(--bs-body-color);
    display: flex;
    gap: 1rem;
    align-items: flex-start;
}
.feature .icon {
    width: 3rem;
    height: 3rem;
    background-image: url(../../img/svg/check-1.svg);
    background-size: contain;
    background-repeat: no-repeat;
}
.feature-2 {
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--bs-body-color);
    display: flex;
    gap: 1rem;
    align-items: center;
    border-radius: 2rem;
    padding: 0.5rem 0;
}
.feature-2 .icon {
    width: 1.4rem;
    height: 1.4rem;
    background-image: var(--svg-check);
    background-size: contain;
    background-repeat: no-repeat;
}
.d-adv .d-adv-wrapper .d-dig {
    color: var(--bs-body-color);
}
.swiper-horizontal > .swiper-pagination-bullets {
    bottom: 2rem !important;
}
.swiper-pagination-bullet {
    background: var(--bs-primary) !important;
    opacity: 0.7 !important;
}
.swiper-pagination-bullet-active {
    opacity: 1 !important;
}
.swiper .swiper-button-next:after,
.swiper .swiper-button-prev:after {
    content: "" !important;
}
.swiper .swiper-button-next,
.swiper .swiper-button-prev {
    color: #fff;
    width: 2.5rem;
    height: 2.5rem;
    transition: all 0.15s ease-in-out;
}
.swiper .swiper-button-prev {
    display: none;
}
#swiper-main .swiper-button-next:hover,
#swiper-main .swiper-button-prev:hover {
    opacity: 1;
    transform: scale(1.2);
}
.swiper-scale-effect .swiper-slide-cover {
    transition: 4s ease-out;
    transform: scale(1);
}
.swiper-scale-effect .swiper-slide.swiper-slide-active .swiper-slide-cover {
    transform: scale(1.2);
}
.swiper-scale-effect .logosimple svg {
    transition: 3s ease-out;
    transform: scale(0.9);
}
.swiper-scale-effect .swiper-slide.swiper-slide-active .logosimple svg {
    transform: scale(1);
}
.swiper-slide.swiper-slide-active .app-cover-frame:before {
    transform: scale(1);
    background-position: center;
    transition: 12s ease-out;
}
.slider {
    position: relative;
    overflow: hidden;
}
.slider-gal {
    overflow: hidden;
    color: #fff;
    position: relative;
}
.slider-gal .container-xxl {
    position: relative;
    width: 100%;
    height: 100%;
}
.slider-gal .slider-inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    padding-bottom: 3rem;
    height: 100%;
}
.slider-img {
    height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    overflow: hidden;
    position: relative;
}
.bg {
    position: relative;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
    background-image: linear-gradient(90deg, #fff 0, #fff 100%);
    border-radius: 0;
}
.bg-over:before,
.bg-over-max:before {
    background-repeat: repeat-x;
    transition: opacity 0.25s ease-in-out;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    z-index: 0;
}
.step1 {
    position: relative;
}
.step-1-back {
    background-image: var(--bs-gradient-main);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    opacity: 1;
    z-index: -1;
}
.step-1-back:before {
    position: absolute;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    opacity: 0.8;
}
.color-invert .h1,
.color-invert .step-body {
    color: #fff;
}
.bg-over-max:before {
    background-image: linear-gradient(90deg, rgb(65 88 208 / 0.8) 0, rgb(200 80 192 / 0.7) 100%);
    backdrop-filter: blur(8px);
    background-repeat: repeat-x;
}
.app-cover-frame {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 188.1 387.7' xml:space='preserve'%3E%3Cpath d='M5.5 359.8c0 13.2 10.8 24 24 24h129.8c13.2 0 24-10.8 24-24V27.9c0-13.2-10.8-24-24-24H29.5c-13.2 0-24 10.8-24 24v331.9zM77.3 7.9h33.5c3.8 0 6.8 3.1 6.8 6.8s-3.1 6.8-6.8 6.8H77.3c-3.8 0-6.8-3.1-6.8-6.8s3.1-6.8 6.8-6.8z' fill='%23000'/%3E%3C/svg%3E");
    mask-repeat: no-repeat;
    mask-size: 100%;
    position: absolute;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.app-cover-frame:before {
    content: "";
    background-image: url(../../img/back-2.jpg);
    position: absolute;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: left;
    width: 100%;
    height: 100%;
    transform: scale(1);
}
.app-cover {
    background-image: url(../../img/phone-frame.svg);
    position: absolute;
    top: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
    width: 100%;
    aspect-ratio: 188 / 387;
    overflow: hidden;
    z-index: 1;
}
.app-cover-mask {
    background-image: url(../../img/phone-frame.svg);
    position: absolute;
    bottom: 0;
    right: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
    width: 500px;
    height: 650px;
    overflow: hidden;
}
.app-cover {
    display: none;
}
.app {
    display: none;
}
.d-play {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    z-index: 10;
}
.d-play a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 1.1rem;
    font-weight: 500;
    gap: 1rem;
}
.btn-play {
    width: 80px;
    height: 60px;
    outline: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 20'%3E%3Cpath d='M27.9727 3.12324C27.6435 1.89323 26.6768 0.926623 25.4468 0.597366C23.2197 2.24288e-07 14.285 0 14.285 0C14.285 0 5.35042 2.24288e-07 3.12323 0.597366C1.89323 0.926623 0.926623 1.89323 0.597366 3.12324C2.24288e-07 5.35042 0 10 0 10C0 10 2.24288e-07 14.6496 0.597366 16.8768C0.926623 18.1068 1.89323 19.0734 3.12323 19.4026C5.35042 20 14.285 20 14.285 20C14.285 20 23.2197 20 25.4468 19.4026C26.6768 19.0734 27.6435 18.1068 27.9727 16.8768C28.5701 14.6496 28.5701 10 28.5701 10C28.5701 10 28.5677 5.35042 27.9727 3.12324Z' fill='%23fff'%3E%3C/path%3E%3Cpath d='M11.4253 14.2854L18.8477 10.0004L11.4253 5.71533V14.2854Z' fill='%23d60b51'%3E%3C/path%3E%3C/svg%3E");
    transition: all 0.2s ease-in-out;
    z-index: 1;
}
.btn-play:hover {
    transform: scale(1.1);
}
.d-play-sm {
    border-radius: 1rem;
    background: url(../../img/back-2.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
    position: relative;
    aspect-ratio: 1500 / 1000;
    max-height: 210px;
}
.d-play-sm a span {
    display: none;
}*/


.btns {
    display: flex;
    flex-direction: column;
    padding: 0;
    border-radius: 3rem;
    background: #fff0;
    gap: 1rem;
    margin: 1rem 0;
    width: 100%;
}
.btns .btn {
    color: #fff;
    font-size: clamp(0.8rem, 10vw, 1rem);
    font-weight: 700;
    display: flex;
    flex-grow: 1;
    gap: 0.8rem;
    justify-content: center;
    align-items: center;
    background-image: var(--bs-btn-gradient-5);
    background-color: var(--bs-primary);
    transition: all 0.2s ease-in-out;
    border-radius: 3rem;
    padding: 0.9rem 1.8rem;
    box-shadow: var(--bs-btn-shadow);
    transition: all 0.2s ease-in-out;
    white-space: nowrap;
}
.navbar .btn,
.card .btn,
.order .btn,
.wrap404 .btn {
    font-size: .9rem;
    font-weight: 600;
    color: #fff;
    display: flex;
    background: var(--bs-btn-gradient-6);
    border-radius: 3rem;
    padding: 0.7rem 1.4rem;
    margin: 0;
    transition: all 0.15s ease-in-out;
    justify-content: center;
}

.offcanvas-special .btn {
    font-size: 1.2rem;
    padding: 1rem 2rem;
    border-radius: 3rem;
    font-weight: 600;
    color: #fff;
    display: flex;
    background: var(--bs-btn-gradient-7); /*#ff6b00;*/
    margin: 0;
    transition: all 0.15s ease-in-out;
    justify-content: center;
}

.navbar .btn:hover,
.card .btn:hover,
.order .btn:hover {
    background: var(--bs-btn-gradient-6-r);
}
.order .btn {
    font-size: 1.2rem;
    padding: 0.7rem 2.5rem;
}
.navbar .btn {
    display: none;
}
.btns .btn:hover {
    box-shadow: 0 0.5rem 1.125rem -0.5rem rgb(214 11 81 / 0.1);
    background: var(--bs-btn-gradient-5-r);
}
.btns .btn span {
    width: 1.8rem;
    height: 1.8rem;
    display: flex;
    color: #fff;
    transition: all 0.2s ease-in-out;
}
.btns .btn:hover span {
    transform: scale(1.1);
}
.btn-call:hover {
    color: var(--bs-dark);
}
.btn-call {
    display: flex;
    flex-grow: 1;
    gap: 0.7rem;
    justify-content: center;
    align-items: center;
    color: var(--bs-body-color);
    font-size: 0.9rem;
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: none;
    transition: all 0.2s ease-in-out;
    margin: 0;
}
.btn-call span {
    width: 1.2rem;
    height: 1.3rem;
    display: flex;
    color: var(--bs-primary);
    transition: all 0.2s ease-in-out;
}
.d-ava {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    font-size: 0.9rem;
    font-weight: 500;
}
.d-ava > span {
}
.d-dig {
    font-weight: 700;
    color: var(--bs-primary);
}
.d-flex {
    display: flex;
}
.ava {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    display: flex;
    background-color: #fff;
    justify-content: center;
    align-items: center;
}
.ava:not(:first-child) {
    margin-left: -1rem;
}
.ava img {
    width: 48px;
    height: 48px;
    border-radius: 50%;
}
.d-adv-abs {
    position: relative;
    margin: 0;
    background: var(--bs-gradient-main-sm);
}

.spacer-top {
    flex: 2;
}

.spacer-bottom {
    flex: 1;
}

.hero-bottom {
    margin-top: auto;    
}

.d-adv {
    display: flex;
    margin: 0 0 1rem 0;
    padding: 0;
    /*background: var(--red);*/
    border-radius: 1.5rem;
    background: rgb(255 255 255 / 1%);
    backdrop-filter: blur(4px);
}

.d-adv .d-adv-wrapper {
    display: flex;
    font-weight: 600;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    color: #fff;
    width: 100%;
}
.d-adv .d-adv-wrapper span:not(.d-dig) {
    max-width: 160px;
    font-size: 1rem;
    line-height: normal;
    line-break: normal;
}
.d-adv .d-adv-wrapper .d-dig {
    /*min-width: 100px;*/
    font-size: 3rem;
    font-weight: 500;
    color: #fff;
}
.d-adv .d-adv-wrapper .d-dig sup {
    position: relative;
    font-size: 0.5em;
    line-height: 0;
    vertical-align: super;
    top: 0;
}
.contacts .notice {
    padding: 1rem;
    font-size: 1rem;
}
.accordion-item {
    background: #fff;
    box-shadow: 0 0.275rem 0.75rem -0.0625rem rgb(11 15 25 / 0.06), 0 0.125rem 0.4rem -0.0625rem rgb(11 15 25 / 0.03) !important;
    border-radius: 0.7rem;
    margin: 0.7rem 0;
}
.accordion-item:first-child {
    margin-top: 0;
}
.accordion-button {
    background-color: #fff0;
    font-weight: 700;
    padding: 0.7rem;
    box-shadow: none;
}
.accordion-button:after {
    background-color: #f1f4ff;
    border-radius: 50%;
    background-size: 0.7rem;
    background-repeat: no-repeat;
    background-position: center;
    padding: 1rem;
    background-image: var(--svg-acc-btn-dark);
}
.accordion-button:not(.collapsed):after {
    background-color: var(--bs-primary);
    background-image: var(--svg-acc-btn-light);
}
.accordion-button:not(.collapsed) {
    color: var(--bs-color);
    background-color: #fff;
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
    box-shadow: none;
}
.accordion-body {
    padding: 0rem 0.7rem 0.7rem 0.7rem;
    font-size: 0.9rem;
    border-bottom-left-radius: 1rem;
    border-bottom-right-radius: 1rem;
    font-weight: 500;
}
.icon-ya {
    width: 300px;
    margin-bottom: 1rem;
}
.space {
    padding-top: 3rem;
    padding-bottom: 3rem;
}
.space-t3 {
    padding-top: 3rem !important;
}
.space-b3 {
    padding-bottom: 3rem !important;
}
.space-b0 {
    padding-bottom: 0 !important;
}
.space-p {
    padding-top: 3rem;
}
.space-sm {
    padding-top: 1.5rem;
}
.bg-grey {
    background-color: #f4f6fb;
}
h1,
.h1 {
    font-size: calc(1.5rem + 1.5vw);
    font-weight: 500;
    line-height: 1;
    color: var(--bs-color);
}
/*
.catalog,
.discount,
.adv,
.company,
.review,
.contact,
#step2,
.step3,
.video {
    position: relative;
    z-index: 0;
    overflow: hidden;
}
.catalog {
    background: var(--bs-body-bg);
    background: url(../../img/ai/back-sky.png);
}
.discount {
    background: var(--bs-gradient-light-3);
}
.adv {
    background: var(--bs-gradient-main-sm2);
}
.review {
    background: var(--bs-gradient-light-3);
}
.step3 {
    background: var(--bs-gradient-light-3);
}
.content-bg {
    z-index: -1;
}
.swiper-slide .main-bg {
    background: var(--bs-primary);
    height: 100vh;
    
}
.swiper-slide .main-bg:before {
    content: "";
    background-image: url(../../img/pattern-tr.png);
    background-repeat: repeat;
    background-size: 600px; 
    position: absolute;
    opacity: 0.5;
    width: 100%;
    height: 100%;
}
.discount:before,
.review:before,
.catalog:before,
.company:before,
.adv:before,
.contact:before,
.video:before,
#step2:before,
.step3:before {
    text-transform: uppercase;
    font-size: 16rem;
    line-height: 0.5;
    font-weight: 700;
    letter-spacing: 1rem;
    color: #fff;
    position: absolute;
    right: 0;
    opacity: 1;
    z-index: -1;
}
.discount:before {
    content: "Акции";
    top: 0;
}
.review:before {
    content: "Отзывы";
    top: -2rem;
    line-height: 1;
}
.catalog:before,
.company:before,
.adv:before,
.contact:before,
.video:before,
#step2:before {
    content: "Курсы";
    top: -2rem;
    right: 0;
    line-height: 1;
    background-image: var(--bs-gradient-light-3);
    color: #fff0;
    background-clip: text;
}
.catalog-item:before {
    content: "Курс";
}
.c-item:before {
    content: "Тариф";
}
.company:before {
    content: "Мастера";
}
.company.master:before {
    content: "Мастер";
}
.adv:before {
    content: "Факты";
    opacity: 0.1;
}
#step2:before {
    content: "Процесс";
}
.step3:before {
    content: "Старт";
    top: -2rem;
    line-height: 1;
}
.contact:before {
    content: "Контакт";
    right: 0;
    font-size: 16rem;
}
.video:before {
    content: "Видео";
}
.swiper-slide .main-bg:before {
    font-size: 6rem;
    left: 1rem;
    top: 80px;
    display: none;
}
.discount:before,
.review:before,
.catalog:before,
.company:before,
.adv:before,
.contact:before,

.video:before,
#step2:before,
.step3:before {
    font-size: 6rem;
    letter-spacing: 0.2rem;
    left: 1rem;
    top: -1rem;
    line-height: 1;
}
.review .row,
.contact .row,
.step3 .row {
    align-items: center;
}
.review-lft {
    font-size: 1rem;
    text-align: center;
}
.review-lft span {
    background-image: var(--bs-btn-gradient);
    color: #fff0;
    background-clip: text;
}
.card {
    color: var(--bs-color);
    background-color: var(--bs-body-bg);
    border: 0;
    border-radius: 1rem;
    height: 100%;
    width: 100%;
    transition: all 0.2s ease-in-out;
    row-gap: 2rem;
}
.catalog .card,
.discount .card {
    padding: 0.7rem;
    padding-bottom: 1.5rem;
    border: 0;
    box-shadow: var(--bs-card-shadow);
}
.catalog .card .name,
.discount .card .name {
    font-weight: 700;
    font-size: 1.2rem;
    padding-top: 0.5rem;
}
.catalog .card .short-desc,
.discount .card .short-desc {
    font-size: 0.9rem;
    font-weight: 500;
}
.catalog .card .img,
.discount .card .img {
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    aspect-ratio: 17 / 9;
    border-radius: 1rem;
    width: 100%;
    transition: all 0.2s;
}
.catalog .card .img a,
.discount .card .img a {
    position: absolute;
    width: 100%;
    height: 100%;
}
.discount .card {
    box-shadow: none;
}
.catalog .card .img .badge-wrap {
    position: absolute;
    right: 0;
    top: 0;
    margin: 1rem;
    display: flex;
    gap: 0.5rem;
}
.catalog .card .img .badge {
    border-radius: 0.5rem;
    padding: 0 0.6rem;
    font-size: 0.8rem;
    font-weight: 500;
    color: #fff;
}
.catalog .img .text-wrap,
.discount .img .text-wrap {
    text-transform: uppercase;
    font-size: 4.5rem;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0.5rem;
    color: #fff;
    position: absolute;
    right: 0;
    bottom: 0;
    opacity: 0.8;
}
.catalog .card .price,
.discount .card .price {
    font-size: 1.2rem;
    font-weight: 700;
    display: flex;
    flex-direction: column;
}
.catalog .card .price .price-sm,
.discount .card .price .price-sm {
    font-size: 0.8rem;
    font-weight: 500;
}
.card .card-body {
    font-size: 1rem;
    padding: 0;
    display: flex;
    flex-direction: column;
    row-gap: 1rem;
}
.card .card-footer {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    padding: 0;
    row-gap: 1rem;
}

.card.card-new {
    padding: .5rem !important;
    row-gap: 1rem;
}

.card.card-new .poster, .catalog-item .poster {
    display: block;
    position: relative;
}

.card.card-new .img-group, .catalog-item .img-group {
    overflow: hidden;
    border-radius: 1rem;
}

.card.card-new .img {
    aspect-ratio: 18 / 9 !important;
    transition: all 0.25s;
}

.card.card-new a:hover .img {
    transform: scale(1.05);
}

.card.card-new .card-body {
    padding: 0 .5rem;
}
.card.card-new .name {
    padding: 0;
}

.card.card-new .card-footer {
    flex-direction: row;
    gap: .5rem;
    padding: .5rem;
}
.card.card-new .name {
    font-size: 1.1rem;
}

.card .btn-primary,
.order .btn-primary {
    font-size: 0.9rem;
    font-weight: 500;
    padding: 1rem 2.5rem;
    border-radius: 1.5rem;
    text-transform: uppercase;
    border: 0;
    background: #fff0;
    color: var(--bs-color);
    border: 2px solid #dfff32;
    box-shadow: 0 0 10px rgba(var(--bs-primary-rgb), 0.5);
    transition: all 0.1s ease-in-out;
}
.card .btn-primary {
    display: flex;
    gap: 0.7rem;
    justify-content: center;
    align-items: center;
    padding: 0.8rem 1.2rem;
}
.card .btn-primary span {
    width: 1.6rem;
    height: 1.6rem;
    display: flex;
    color: var(--bs-primary);
    transition: all 0.1s ease-in-out;
}
.card .btn-primary.size-1 span {
    width: 1rem;
    height: 1rem;
}
.card .btn-primary:hover,
.order .btn-primary:hover {
    box-shadow: 0 0 25px rgba(var(--bs-primary-rgb), 0.5);
    color: var(--bs-primary);
    background: #fff0;
}
.card ul {
    display: flex;
    flex-direction: column;
    gap: 0.7rem;
    list-style: none;
    padding: 0;
}
.card ul li {
    display: flex;
    align-items: center;
    gap: 0.7rem;
}
.card ul li i {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M229.7 325.7C226.5 328.8 221.5 328.8 218.3 325.7L154.3 261.7C151.2 258.5 151.2 253.5 154.3 250.3C157.5 247.2 162.5 247.2 165.7 250.3L224 308.7L346.3 186.3C349.5 183.2 354.5 183.2 357.7 186.3C360.8 189.5 360.8 194.5 357.7 197.7L229.7 325.7zM512 256C512 397.4 397.4 512 256 512C114.6 512 0 397.4 0 256C0 114.6 114.6 0 256 0C397.4 0 512 114.6 512 256zM256 16C123.5 16 16 123.5 16 256C16 388.5 123.5 496 256 496C388.5 496 496 388.5 496 256C496 123.5 388.5 16 256 16z' fill='%23dfff32'/%3E%3C/svg%3E");
    width: 1.2rem;
    height: 1.2rem;
    display: block;
}
.card .prename {
    font-size: 1.2rem;
    font-weight: 500;
    color: #dfff32;
}
.card .name {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.2;
    color: var(--bs-color);
}
.card .desc {
    font-size: 0.9rem;
    font-weight: 500;
    text-align: left;
    transition: all 0.2s ease-in-out;
}
.card .price .total {
    font-weight: 500;
    font-size: 3rem;
}

.card.card-new .btn, .catalog-item .btn {
    font-size: .9rem;
    font-weight: 600;
    padding: .7rem 0;
    flex-grow: 1;
    justify-content: center;
    box-shadow: none;
    transition: all 0.15s ease-in-out;
}

.card.card-new .btn.btn-border, .catalog-item .btn.btn-border{
    background: var(--bs-light-gray);
    border: 1.5px solid var(--bs-light-gray);
    color: var(--bs-body-bg2);
    box-shadow: none;
    font-weight: 600;
    flex-grow: 1;
    /* gap: 1rem; */
    justify-content: center;

}

.card.card-new .btn.btn-border:hover, .catalog-item .btn.btn-border:hover {
    color: var(--bs-primary);
    border-color: var(--bs-primary);
    background: #fff;
}

.card.card-new .p-badge-group, .catalog-item .p-badge-group {
    position: absolute;
    z-index: 1;
    display: flex;
    align-items: center;
    padding: 12px;
    gap: 6px;
    bottom: 0;
    left: 0;
}

.card.card-new .p-badge, .catalog-item .p-badge {
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    padding: 6px 12px;
    border-radius: 24px;
    background-image: var(--bs-btn-gradient);
    background-color: var(--bs-primary);
}

.card.card-new .p-badge.purple, .catalog-item .p-badge.purple {
    background-image: var(--bs-btn-gradient-4);
    background-color: var(--m-purple);
}

.card.card-new .p-badge-round, .catalog-item .p-badge-round {
    position: absolute;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    right: -12px;
    top: -12px;
    width: 55px;
    height: 55px;
    border-radius: 50%;
    background-image: var(--bs-btn-gradient);
    background-color: var(--bs-primary);
    font-size: 16px;
    font-weight: 700;
    color: #fff;
}


.card.card-new .p-price, .catalog-item .p-price {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: 500;
    font-size: .9rem;
}

.card.card-new .p-price .p-digit, .catalog-item .p-price .p-digit {
    font-size: 15px;
    font-weight: 600;
    padding: 6px 12px;
    border-radius: 30px;

    color: var(--bs-primary);

    border: 1.5px solid;
    border-color: var(--bs-primary);

    transition: all 0.1s ease-in-out;
}

.card.card-new .p-price .p-digit del, .catalog-item .p-price .p-digit del {
    color: var(--bs-color);
    font-weight: 600;
    padding-left: 5px;
}

.card.card-new .p-price:not(:last-child) {
    margin-bottom: 6px;
}

.catalog-item .p-price:not(:last-child) {
    margin-bottom: 12px;
}

.p-payinfo {
    font-size: 12px;
    background: var(--bs-light-gray);
    border-radius: 12px;
    padding: 10px;
    font-size: 12px;
    text-align: center;
    font-weight: 500;
}

.catalog-item .p-btn-group {
    display: flex;
    align-items: center;
    gap: .5rem;
}

.catalog-item .btn {
    padding: 6px 12px;
    /*padding: 6px 24px;*/
    border-radius: 30px;
    font-size: 15px;
    font-weight: 600;
    color: var(--bs-body-bg2);
    border: 2px solid;
    background: transparent;
    border-color: var(--bs-primary);
    /*transition: all 0s;*/
    flex-grow: 1;
}

.catalog-item .btn:hover {
    color: var(--bs-primary);
    background: transparent;
}

.mt-top {
    margin-top: 60px;
}

.catalog.catalog-item {
    /*margin-top: 30px;*/
}

.catalog.catalog-item .card .name {
    padding: 0;
    margin: 0;
}

.catalog.catalog-item .p-price-group {
    display: flex;
    flex-direction: column;
}

.catalog.catalog-item .p-price {
    align-items: normal;
    flex-direction: column;
    gap: .5rem;
}

.catalog.catalog-item .p-btn-group {
    gap: .5rem;
    justify-content: space-between;
}

.catalog.catalog-item .p-price .p-digit {
    flex-grow: 1;
    text-align: center;
}

.catalog.catalog-item .p-btn-group2 {
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

.swiper.adv {
    padding-bottom: 3rem;
}
.swiper.adv .swiper-slide {
    height: auto;
}
.adv .swiper-pagination-bullets {
    bottom: 0rem !important;
}
.adv .card {
    height: 100%;
    display: flex;
    padding: 0;
    background: #fff0;
    border: 1px solid rgb(255 255 255 / 15%);
}
.adv .card .card-body {
    display: flex;
    flex-direction: column;
    row-gap: 1rem;
    padding: 1.5rem;
    color: #fff;
}
.adv .card .name {
    color: #fff;
    font-weight: 700;
}
.adv .card .desc {
    font-weight: 500;
}
.adv .card .icon {
    width: 5rem;
    height: 5rem;
    color: #fff;
}
#step1.adv:before {
    content: "";
}
#step1 .head {
    text-align: center;
}
#step1 .card {
    height: auto;
    margin-bottom: 1rem;
    background: rgb(255 255 255 / 5%);
    border: 0;
}
#step1 .app-outer {
    display: flex;
    justify-content: center;
}
#step1 .app-cover {
    position: relative;
    display: flex;
    max-width: 320px;
}
#step1 .app-cover-frame:before {
    background-position: center;
    animation: animate-step1 25s ease 1s infinite;
}
#step2.adv {
    background: none;
}
#step2 .card {
    height: auto;
    margin-bottom: 1rem;
    background: rgb(255 255 255 / 60%);
    border: 0;
    color: var(--bs-color);
    box-shadow: var(--bs-card-shadow);
}
#step2.adv .card .card-body {
    padding: 1.5rem;
    row-gap: 1rem;
    column-gap: 1.5rem;
    flex-direction: column;
}
#step2.adv .card .detail {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}
#step2.adv .card .icon,
#step2.adv .card .name,
#step2.adv .card .desc {
    color: var(--bs-color);
}
#step2.adv .card .icon {
    width: 4rem;
    height: 4rem;
}
#step2.adv .card:first-child .icon {
    padding: 0.1rem;
}
.icon-adv10,
.icon-adv11,
.icon-adv12 {
    background-size: contain;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
}
.icon-adv10 {

    padding: 0.1rem;
}
.icon-adv11 {
 
}
.icon-adv12 {
 
}
@keyframes animate-step1 {
    0% {
        background-position: center;
        transform: scale(1);
    }
    25% {
        background-position: right;
        transform: scale(1.2);
    }
    50% {
        background-position: center;
        transform: scale(1);
    }
    75% {
        background-position: left;
        transform: scale(1.2);
    }
    100% {
        background-position: center;
        transform: scale(1);
    }
}
@keyframes animate-text1 {
    0% {
        transform: translateX(0%);
    }
    100% {
        transform: translateX(-200%);
    }
}
.contacts {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 2rem 0;
    font-size: 1rem;
    color: var(--bs-body-color);
}
.contacts > div {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: space-between;
    border-radius: 3rem;
    gap: 0.5rem;
}
.contacts {
    gap: 1.5rem;
    background: #fff0;
}
.contacts > div {
    flex: 1 1 0%;
    justify-content: flex-start;
    border-radius: 1.5rem;
    background: #fff0;
}
.contacts {
    border-radius: 1.5rem;
}
.contact a {
    color: var(--bs-primary);
    font-weight: 500;
}
.contact .h3 {
    font-size: 1.2rem;
    font-weight: 500;
}
.contact .h4 {
    font-weight: 500;
    text-transform: uppercase;
}
.contacts .notice {
    font-weight: 500;
    text-transform: uppercase;
    border: 3px dashed var(--bs-primary);
    border-radius: 1.5rem;
}
.col2 {
    flex-direction: column;
}
.contact iframe {
    border-radius: 1rem;
    box-shadow: none;
}
.review iframe {
    border-radius: 1rem;
    box-shadow: var(--bs-card-shadow-big);
}
.review iframe.comments {
    height: 720px;
}
.social span {
    width: 1.5rem;
    height: 1.5rem;
    display: flex;
}
.photos {
    margin-top: 2.5rem;
    position: relative;
    border-radius: 1.5rem;
    overflow: hidden;
}
.photo {
    border-radius: 1rem;
    overflow: hidden;
}
.photo > a {
    display: block;
}
.photo img {
    width: 100%;
    height: auto;
    transition: all 0.5s ease;
}
.sq img {
    padding: 3rem;
}*/
footer {
    font-size: 0.7rem;
    padding: 3rem 0 1rem 0;
    color: #000;
    background: var(--bs-gradient-light-3);
}
footer hr {
    color: rgb(255 255 255 / 0.1);
    margin-top: 1rem;
}
.footer {
    font-size: 0.8rem;
}
.footer > div {
    flex: 1 1 auto;
}
.logo-footer {
    margin-bottom: 2rem;
}
.logo-footer .logo {
    width: 180px;
    height: 50px;
}
.footer-left {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    row-gap: 1rem;
}
.footer .navbar-social,
.offcanvas .navbar-social {
    display: flex;
    align-items: center;
    gap: 1rem;
}
.footer .navbar-social a span,
.offcanvas .navbar-social a span {
    width: 1.4rem;
    height: 1.4rem;
}
.footer .navbar-social a,
.offcanvas .navbar-social a {
    padding: 0;
}
.footer-h {
    color: rgb(255 255 255 / 0.6);
    font-weight: 500;
    font-size: 0.9rem;
}
.footer ul,
.offcanvas ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.footer ul li,
.offcanvas ul li {
    padding: 0.2rem 0;
}
.footer ul li a,
.offcanvas ul li a {
    text-decoration: none;
    color: #8c94a8;
    transition: all 0.1s ease-in-out;
}
.footer ul li a:hover,
.offcanvas ul li a:hover {
    color: #dfff32;
}
.nav li a,
.dropdown-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 13px;
    font-weight: 700;
    color: #2a2f30;
    text-transform: uppercase;
    text-decoration: none;
    border-bottom: 1px solid #e3e9ef;
    padding: 12px 16px 12px 30px;
    transition: color 0.1s ease-in-out, background-color 0.15s ease-in-out;
}
.items {
    display: flex;
    flex-direction: column;
    background: hsl(0deg 0% 100% / 5%);
    border-radius: 3rem;
    padding: 2rem 0;
}
.item > a {
    text-decoration: none;
    font-weight: 600;
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding: .7rem;
    font-size: 1.2rem;
    color: #fff;
    text-align: left;
    border: 0;
    overflow-anchor: none;
    transition: color 0.1s ease-in-out, background-color 0.15s ease-in-out;
    margin: 0 1rem;
    border-radius: 1rem;
}
.item > a:hover, .item > a:active {
    color: #fff;
}
@media (prefers-reduced-motion: reduce) {
    .item > a {
        transition: none;
    }
}
@media (prefers-reduced-motion: reduce) {
    .item > a::after {
        transition: none;
    }
}
.modal-header {
    padding: 1rem 0 0 0;
    justify-content: flex-end;
}

.modal-quick-view.modal-form .modal-header {
    padding: .5rem 0 .5rem 0;
}

.btn-close {
    display: flex;
    padding: .7rem;
    margin: 0;
    background: var(--bs-sec);
    border-radius: 3rem;
    color: #fff;
    transition: border-color 0.1s ease-in-out, background-color 0.1s ease-in-out;
}

.btn-close span {
    width: 1.2rem;
    height: 1.2rem;
    display: flex;
}
.btn-close:hover {
    color: #fff;
}
.d-btn-close {
    display: flex;
    justify-content: flex-end;
}
.d-in-btn-close {
    position: absolute;
    right: 0;
    top: 0;
    padding: 1rem;
}

.modal .btn-close {
    color: #fff;
    width: 2.5rem;
    height: 2.5rem;
    margin: 0;
}
.modal .btn-close:hover {
    transform: scale(1.1);
}
hr {
    color: #e3e9ef;
    margin: 2rem 0;
    background-color: currentColor;
    border: 0;
    height: 1px;
}
.collapse:not(.show) {
    display: none;
}
.content {
    font-size: 0.9rem;
    font-weight: 300;
    background: #fff;
    border-radius: 1.5rem;
    padding: 0rem;
    box-shadow: none;
}
.content p {
    margin-bottom: 0.5rem;
}
.content-top {
    margin-bottom: 0;
    margin-top: 5rem;
}
.content h1,
.content h2,
.content h3 {
    margin-bottom: 2rem;
    margin-top: 2rem;
}
.lead {
    font-size: 1.2rem;
    font-weight: 300;
    margin-top: 1rem;
    color: #8c94a8;
}
.content ol {
    margin: 0rem;
}
.content ol li {
    padding: 0.1rem;
}
.content > p > a,
table a {
    border-bottom: 1px solid #f9af17;
    text-decoration: none;
    font-weight: 500;
}
.content > p > a:hover,
table a:hover {
    color: #f9af17;
}
.content strong {
    font-weight: 400;
}
.img-wrap {
    min-height: 120px;
    max-height: 500px;
    margin: 20px 20px 0 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-grow: 1;
}
.img-wrap img {
    max-width: 100%;
    overflow: hidden;
    max-height: 500px;
}
.card .add {
    display: flex;
    align-items: center;
    font-size: 1rem;
    gap: 1rem;
}
.btn-sm {
    padding: 0.25rem 0.5rem;
    font-size: 1rem;
    border-radius: 0.7rem;
    font-weight: 700;
}
.input-spinner {
    width: auto;
    height: 100%;
    min-height: 2.6rem;
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}
.input-spinner .form-input {
    color: #2a2f30;
    border: 1px solid #fff0;
    min-height: 2.6rem;
    margin: 0 0.5rem;
    text-align: center;
    width: 3.2rem;
    padding: 0.25rem 0.5rem;
    outline: none;
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
    appearance: textfield;
    transition: border-color 0.1s ease-in-out, background-color 0.1s ease-in-out;
    border-radius: 0.75rem;
    font-size: 0.9rem;
    font-weight: 500;
}
.input-spinner .form-input:hover,
.input-spinner .form-input:focus {
    border: 1px solid #e3e9ef;
}
.input-spinner .form-input:focus {
    border: 1px solid #dfff32;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
}
.input-spinner .button-minus,
.input-spinner .button-plus {
    background-color: #f4f6fb;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 3rem;
    transition: all 0.2s ease-in-out;
}
.input-spinner .button-minus:hover,
.input-spinner .button-plus:hover {
    background-color: #dfff32;
    color: #fff;
}
.btn-primary {
    font-size: 0.9rem;
    color: var(--bs-body-color);
    background: #fff0;
    border: 2px solid #dfff32;
    border-radius: 3rem;
    box-shadow: 0 0 15px rgba(var(--bs-primary-rgb), 0.5);
    padding: 0.7rem 1.5rem;
    margin: 1rem 0;
    transition: all 0.2s ease-in-out;
}
.btn-primary:hover {
    box-shadow: 0 0 20px rgba(var(--bs-primary-rgb), 0.5);
    color: var(--bs-primary);
    background: #fff0;
}
.btn-sec {
    color: #fff;
    background-color: #000;
}
.btn-sec:hover {
    background-color: #e3e9ef;
    border-color: #b3c0cd;
}
.btn-primary > i {
    width: 18px;
    height: 18px;
    margin-right: 10px;
}
.inCart,
.editCart,
.removeCart {
    background-color: #fff !important;
    border-color: #ffd009;
}
.inCart:hover,
.editCart:hover,
.removeCart:hover {
    background-color: #f9af17;
}
.btn-danger {
    color: #bb2d3b;
    background-color: #fff;
    border-color: #bb2d3b;
}
.btn-danger:hover {
    background-color: #bb2d3b;
    border-color: #b02a37;
    color: #fff;
}
.order {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.order .btn-primary {
    padding: 1.5rem 2rem;
    width: 100%;
}
.modal h5 {
    margin-bottom: 2rem;
    color: #fff;
    font-size: clamp(2.5rem, 5vw, 3.5rem);
    font-weight: 500;
    text-align: center;
}
.modal-quick-view .modal-dialog {
    min-height: 100vh;
    max-width: 100%;
    margin: 0;
}
.modal-quick-view .modal-body {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
}

.modal-quick-view.modal-form .modal-body {
    align-items: center;
}

.modal-quick-view.modal-form .form-outer {
    max-width: 768px;
    /*height: 100%;*/
    margin: 0;
    border-radius: 0;
    margin: 0;
    position: relative;
}

.modal-content {
    border-radius: 0 !important;
    box-shadow: 0;
    background: #fff0;
}
.modal .row {
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 0;
}
.modal-body {
    padding: 0;
}
.product-list {
    display: flex;
    flex-direction: column;
    color: var(--bs-color);
    text-transform: none;
    font-size: 0.9rem;
    font-weight: 500;
}
.product-list > div {
    display: flex;
    /*flex-direction: column;*/
    justify-content: space-between;
    flex-wrap: nowrap;
    color: var(--bs-color);
    padding: 0.3rem 0;
}

.product-list > div > div:last-child {
    text-align: right;
}


.product-list .product {
    font-weight: 500;
    color: var(--bs-color);
}
.product-list i {
    background-image: var(--svg-check);
    width: 1.2rem;
    height: 1.2rem;
    display: block;
}
.product-list .border-dashed {
    display: none;
    flex-grow: 1;
    border-bottom: 1px dashed #e0e0e0;
    margin: 0.5rem 0.5rem 0 0.5rem;
}
.loader {
    min-height: 10rem;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    align-self: center;
}
.spinner {
    border: 4px solid #fff0;
    border-top: 4px solid var(--bs-primary);
    border-radius: 50%;
    width: 50px;
    height: 50px;
    animation: spin 1s linear infinite;
}
.sm {
    width: 35px;
    height: 35px;
    margin: 1rem auto;
    display: none;
}
@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
@keyframes dropdown {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes dropup {
    0% {
        transform: translateY(100px);
        opacity: 0;
    }
    100% {
        transform: translateY(0);
        opacity: 1;
    }
}
@keyframes blur {
    0% {
        filter: blur(8px);
        opacity: 0;
    }
    100% {
        filter: blur(0);
        opacity: 1;
    }
}
.form-outer {
    margin: 0;
    padding: 3rem 1rem;
    /*padding-bottom: 0;*/
    background: #fff;
    box-shadow: var(--bs-card-shadow);
    border-radius: 1rem;
}
.form-outer .row > * {
    margin-top: 1rem;
}
.form-outer .h4 {
    margin-bottom: 1.5rem;
    text-align: center;
}
.form-control {
    color: #000;
    background: #f4f7ff;
    border: 1px solid #f4f7ff; /*#d4d7e5;*/
    border-radius: 1rem;
    font-weight: 500;
}
.form-control:focus {
    color: #000;
    outline: 0;
    border-color: rgb(99 102 241 / 0.35);
    background: var(--bs-body-bg);
    box-shadow: inset 0 0 0 transparent, 0 0.5rem 1.125rem -0.5rem rgb(99 102 241 / 0.2);
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:active,
input:-webkit-autofill:focus,
input:-internal-autofill-selected,
input:-internal-autofill-previewed {
    -webkit-text-fill-color: #000;
    transition: background-color 5000s ease-in-out 0s;
}
.form-floating > .form-control,
.form-floating > label {
    padding: 1rem 1.2rem;
}
.form-floating > label {
    color: #000;
    opacity: .9;
}
.alert {
    position: relative;
    padding: 1rem 1rem;
    border: 1px solid #fff0;
    border-radius: 1rem;
    font-size: 0.9rem;
    color: #dfff32;
    font-weight: 500;
}
.alert-danger {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545;
}
.alert-success {
    color: #fff;
    background-color: #36af27;
    border-color: #36af27;
}
.confirm {
    font-size: 0.8rem;
    text-align: center;
    color: #a2a8c6;
    padding: 1rem 0;
}
.status {
    text-align: center;
    font-size: 0.9rem;
}
.pr7 {
    padding-right: 0.7rem;
}
.invalid-feedback {
    font-size: 0.7rem;
    margin-left: 1.2rem;
}
.offcanvas-scroll,
.filter,
.modal-body {
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.offcanvas-scroll::-webkit-scrollbar,
.filter::-webkit-scrollbar,
.modal-body::-webkit-scrollbar {
    display: none;
}
.work .swiper-button-prev,
.work .swiper-button-next {
    display: none;
}
.work .swiper:hover .swiper-button-prev,
.work .swiper:hover .swiper-button-next {
    display: flex;
}
.txt {
    margin-bottom: 3rem;
}

.txt div.h2 {
    margin-bottom: 1.5rem;
}
.txt h2 {
    margin-bottom: 1.5rem;
    margin-top: 2.5rem;
}
.txt h3 {
    font-weight: 500;
    margin: 1.5rem 0;
    font-size: calc(1.3rem + 0.2vw);
}
.steps {
    --steps-padding-y: 1.5rem;
    --steps-padding-x: 1.5rem;
    --steps-padding-y-sm: 0.75rem;
    --steps-number-size: 7.625rem;
    --steps-number-inner-size: 5.625rem;
    --steps-number-size-sm: 5rem;
    --steps-number-inner-size-sm: 3.5rem;
    --steps-number-border-radius: 50%;
    --steps-number-bg: #f3f6ff;
    --steps-number-bg-3: rgba(255, 255, 255, 0.5);
    --steps-number-bg-sm: #fff;
    --steps-number-inner-bg: #fff;
    --steps-number-inner-box-shadow: 0 0.275rem 0.75rem -0.0625rem rgba(11, 15, 25, 0.06), 0 0.125rem 0.4rem -0.0625rem rgba(11, 15, 25, 0.03);
    --steps-number-font-size: 2rem;
    --steps-number-font-size-sm: 1.5rem;
    --steps-number-color: var(--bs-body-color);
    --steps-connect-width: 1px;
    --steps-connect-color: #e2e5f1;
    display: flex;
    flex-direction: column;
}
.step {
    position: relative;
    display: flex;
    align-items: center;
    padding: var(--steps-padding-y) 0;
}
.step:first-child {
    padding-top: 0 !important;
}
.step:last-child {
    padding-bottom: 0 !important;
}
.step:before,
.step:after {
    position: absolute;
    left: calc(var(--steps-number-size) * 0.5);
    width: var(--steps-connect-width);
    height: 50%;
    content: "";
}
.step:before {
    top: 0;
}
.step:after {
    top: 50%;
}
.step:not(:first-child):before {
    background-color: var(--steps-connect-color);
}
.step:not(:last-child):after {
    background-color: var(--steps-connect-color);
}
.step-number {
    position: relative;
    z-index: 2;
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: var(--steps-number-size);
    height: var(--steps-number-size);
    border-radius: var(--steps-number-border-radius);
    color: var(--steps-number-color);
    background: var(--bs-gradient-light-4);
    font-size: var(--steps-number-font-size);
    font-weight: 700;
}
.step-number .step-number-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--steps-number-inner-size);
    height: var(--steps-number-inner-size);
    border-radius: var(--steps-number-border-radius);
    background-color: var(--steps-number-inner-bg);
    box-shadow: var(--steps-number-inner-box-shadow);
}
.step-body {
    padding-left: var(--steps-padding-x);
    font-size: 1rem;
    font-weight: 500;
}
@media (max-width: 991px) {
    .steps-sm .step-body {
        font-size: 0.9rem;
        padding-left: calc(var(--steps-padding-x) * 0.8);
    }
    .steps-sm .step-number {
        width: var(--steps-number-size-sm);
        height: var(--steps-number-size-sm);
        font-size: var(--steps-number-font-size-sm);
    }
    .steps-sm .step-number .step-number-inner {
        width: var(--steps-number-inner-size-sm);
        height: var(--steps-number-inner-size-sm);
    }
    .steps-sm .step {
        padding: var(--steps-padding-y-sm) 0;
    }
    .steps-sm .step:before,
    .steps-sm .step:after {
        position: absolute;
        left: calc(var(--steps-number-size-sm) * 0.5);
        width: var(--steps-connect-width);
        height: 50%;
        content: "";
    }
}
.step1 .step-number {
    background: var(--steps-number-bg-sm);
}
.step1 .step-body {
    font-weight: 500;
}
.catalog-item .card .img {
    aspect-ratio: 17 / 9;
}
.c-item .accordion-item {
    background: #f1f4ff;
    margin: 0;
    box-shadow: none !important;
}
.c-item .accordion-button {
    font-size: 0.9rem;
    padding: 0.7rem 0.7rem 0.7rem 1rem;
    font-weight: 700;
}
.c-item .accordion-button:not(.collapsed) {
    background: #f1f4ff;
}
.c-item .accordion-button:after {
    background-color: #f1f4ff;
}
.c-item .accordion-button:not(.collapsed):after {
    background-image: var(--svg-acc-btn-dark);
}
.c-item .accordion-button.disable:after {
    background-image: none;
}
.c-item .card {
    border: 2px solid #fff0;
    transition: all 0s ease;
}
.c-item .card:hover {
    border: 2px solid var(--bs-primary);
}
.c-item .card .card-body {
    font-size: 0.9rem;
    row-gap: 0.7rem;
}
.c-item .card .name {
    font-size: 1.2rem;
    padding: 1rem 0 1rem 0;
}
.c-item .card .price {
    font-size: 1.2rem;
}
.c-item .price-add {
    padding: 0.7rem 1rem;
    border: 1px dashed var(--bs-primary);
    border-radius: 0.7rem;
}
.c-item .head .h2 {
    margin: 2rem 0 2rem 0;
}
.c-item-body {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.c-item-body .card-footer .price {font-size: 1.5rem}
.c-item-body .card-footer {padding-top: .5rem}

.notice {
    font-size: 0.9rem;
    margin-top: 2.5rem;
}

.dropdown-menu .nav-group {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.dropdown-menu .nav-item {
    display: block;
    width: 100%;
    padding: 12px 20px;
    font-weight: 400;
    color: var(--bs-body-color);
    white-space: nowrap;
    background-color: transparent;
    border: 0;
    background-color: var(--bs-light-gray);
    border-radius: 48px;
    /*transition: all 0.1s ease-in-out;*/
}

.dropdown-menu .nav-item-h {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 100%;
    padding: 12px 20px;
    font-weight: 300;
    color: var(--bs-body-color);
    text-align: right;
}

.dropdown-menu .nav-item:focus, .dropdown-menu .nav-item:hover {
    /*color: var(--bs-primary);*/
    color: var(--m-black);
    text-decoration: none;
    background-color: var(--m-stroke-gray);
}

@media (min-width: 350px) {
    .catalog-item .btn {
        padding: 6px 24px;
        font-size: 1rem;
    }
}

@media (min-width: 500px) {
    .catalog.catalog-item .p-price-group {

    }
    .catalog.catalog-item .p-price {
        flex-direction: row;
        align-items: center;

    }
    .catalog-item .card .img {
        aspect-ratio: 20 / 9;
    }
}

@media (min-width: 768px) {

    .swiper .swiper-button-next,
    .swiper .swiper-button-prev {
        display: flex;
    }
    .swiper .swiper-button-lock {
        display: none;
    }
    .order .btn-primary {
        width: auto !important;
    }
    .btns {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        width: unset;
    }
    .swiper-slide .h1 {
        font-size: clamp(2rem, 6vw, 6rem);
        font-weight: 700;
        text-transform: uppercase;
    }
    .app {
        margin-top: 100px !important;
        display: flex;
    }
    .app-cover {
        display: flex;
    }
    .swiper-slide .slider-inner {
        padding: 100px 0 calc(100px + 1rem) 0;
    }
    .d-play-sm {
        display: none;
    }
    .d-adv-abs {
        position: absolute;
        margin: 0;
        bottom: 0;
        background: var(--bs-gradient-main);
        width: 100%;
    }
    .adv {
        background: var(--bs-gradient-main-2);
    }
    .d-adv {
        gap: 0.5rem;
        padding: 0.5rem 0;
        /*background: hsla(var(--bs-primary2-hsl), .5);*/
        margin: 0 0 2rem 0;

        /*overflow-x: unset;*/
    }

    .d-adv .d-adv-wrapper div {
        gap: 0.5rem;
    }
    .d-adv .d-adv-wrapper span:not(.d-dig) {
        min-width: unset;
    }
    .catalog .card,
    .discount .card {
        padding: 1rem;
    }
    .d-md-show {
        display: block;
    }
    .company .row > *:last-child {
        margin-top: var(--bs-gutter-y);
    }
    .company .photo {
        max-width: none;
    }
    #step1 .app-cover {
        max-width: none;
    }
    #step2.adv .card .card-body {
        flex-direction: row;
    }
    .swiper-slide .main-bg:before {
        font-size: 12rem;
        right: 0;
        left: auto;
        top: 80px;
        display: flex;
    }
    .discount:before,
    .review:before,
    .catalog:before,
    .company:before,
    .adv:before,
    .contact:before,
    .video:before,
    #step2:before,
    .step3:before {
        font-size: 12rem;
        right: 0;
        left: auto;
        top: -2rem;
        line-height: 1;
        letter-spacing: 1rem;
    }

    .modal-quick-view.modal-form .form-outer {
        border-radius: 1rem;
        padding: 1rem 2rem 2rem 2rem;
        margin: 0;
        height: auto;
    }
    .catalog.catalog-item .p-btn-group2 {
        flex-direction:row;
    }
    .catalog-item .card .img {
        aspect-ratio: 20 / 9;
    }

    .navbar-brand .logo {max-width: 200px;}
    .main-bg:before {
        background-position: center right;
        background-size: contain;
        max-height: 700px;
        right: -30%;
    }

    .hero-inner .h1 {
        max-width: unset;
    }

    .navbar-phone {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        flex-grow: 1;
    }
    .navbar .btn {
        display: flex;
    }
    .navbar-nav,
    .navbar-social,
    .navbar-phone a.phone {
        display: none;
    }

}
@media (min-width: 992px) {
    .d-lg-none {
        display: none !important;
    }
    .order-first {
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1;
    }
    .on-top.navbar {
/*        transition: all 0.25s ease;
        margin: 0;
        border-radius: 0;*/
    }
    .navbar > .container-xxl {
        flex-wrap: nowrap;
        gap: 0.5rem;
    }
    .navbar-nav {
        display: flex;
        flex-direction: row;
        justify-content: space-evenly;
        align-items: center;
        flex-grow: 1;
    }
    .navbar-nav li {
        display: flex;
        position: relative;
    }
/*    .navbar-nav li:hover {
        border-color: var(--bs-primary);
    }

    .navbar-nav li:after {
        content: '';
        position: absolute;
        width: 100%;
        height: 2px;
        display: block;
        bottom: 0;
        background-color: var(--blue);
        opacity: 0;
        transition: all 0.15s ease-in-out
    }
    .navbar-nav li:hover:after {
        opacity: 1
    }*/

    .on-top .navbar-nav li:after {
        background-color: transparent;
    }

    .navbar .btn {
        display: flex;
    }
    .navbar-social {
        display: none;
    }
    .nav-icons {
        display: none;
    }
    .btn-call {
        display: none;
    }
    .navbar-nav a {
        padding: 0 .5rem;
    }
    .col2 {
        flex-direction: row !important;
    }
    .content ol {
        margin: 1.5rem !important;
    }
    .slider-img {
        height: 100vh;
    }
    .logosimple {
        display: block;
    }
    .contacts .notice {
        padding: 1.5rem;
        font-size: 1.5rem;
    }
    .navbar .container-xxl {
        height: 100%;
        padding: 0 1rem;
    }
    .navbar-nav {
        height: 100%;
    }
    .navbar-nav a {
        display: flex;
        width: 100%;
        height: 100%;
        align-items: center;
    }
    .navbar-nav li {
        height: 100%;
        display: flex;
        align-items: center;
        position: relative;
    }
    .btn-call,
    .phone {
        height: 100%;
        position: relative;
    }
    .icon-ya {
        max-height: 300px;
    }
    .swiper-slide .slider-inner {
        padding: calc(100px + 3rem) 0;
    }
    .product-list > div {
        flex-direction: row;
        align-items: center;
        padding: 0.25rem 0;
    }
    .product-list .border-dashed {
        display: block;
    }
    .card .card-footer {
        justify-content: space-between;
    }
    .card .card-footer {
        flex-direction: row;
        align-items: center;
    }
    .card .btn {
        justify-content: inherit;
    }
    .catalog .card,
    .discount .card {
        padding: 1.5rem;
        border-radius: 1.5rem;
    }
    .master-desc {
        background: var(--bs-gradient-light-3);
        border-radius: 1rem;
        padding: 1.5rem;
        width: 80%;
    }
    .feature-2 {
        border-radius: 2rem;
        padding: 1rem;
        margin-bottom: 1rem;
        background: var(--bs-gradient-light-3);
    }
    .company .company-text {
        align-items: center;
    }
    .company .row {
        align-items: center;
    }
    .form-outer {
        margin-left: 1rem;
        padding: 3rem 2rem;
    }
    .modal-quick-view.modal-form .modal-body {
        padding: 1rem;
    }
    .modal iframe {
        width: 853px !important;
        height: 480px !important;
    }
    .catalog-item .card .img {
        aspect-ratio: 16 / 9;
    }
/*    .card.card-new .img-group {
        border-radius: 1.5rem;
    }*/

    .navbar {padding-top: 0; padding-bottom: 0; height: 70px;}

    .navbar-phone {
        flex-grow: 0;
    }

    .navbar-nav .dropdown-menu {
        position: absolute;
    }

    .dropdown:hover > .dropdown-menu {
        display:block
    }

    .dropdown-menu {
        display: none;
        position: absolute;
        top: 100%;
        left: -44px;
        /*width: 100%;*/
        z-index: 1000;
        padding: 0;
        margin: 0;
        list-style: none;
        background-color: #fff;
        background-clip: padding-box;
        border: 0 solid transparent;
        border-radius: 1rem;
    }

    .dropdown-menu .dropdown-wrap {
        display: flex;
        align-items: flex-start;
        gap: 50px;
        padding: 16px;
        border-radius: 16px;
        box-shadow: 0 0.5rem 2rem -0.25rem hsla(216, 9%, 44%, .2);
    }

    .dropdown-menu .nav-group {
        flex-grow: 1;
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .dropdown-menu .nav-item {
        display: block;
        width: 100%;
        padding: 10px 20px;
        font-weight: 400;
        color: var(--bs-body-color);
        white-space: nowrap;
        background-color: transparent;
        border: 0;
        /*transition: all 0.1s ease-in-out;*/
    }

    .dropdown-menu .nav-item-h {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        width: 100%;
        padding: 12px 20px;
        font-weight: 600;
        color: var(--bs-body-color);
        text-align: left;
    }

    .dropdown-menu .nav-item:focus, .dropdown-menu .nav-item:hover {
        /*color: var(--bs-primary);*/
        color: var(--m-black);
        text-decoration: none;
        background-color: var(--m-stroke-gray);
    }

    .main-bg:before {
        background-position: bottom right;
        background-size: contain;
        max-height: 750px;
        right: 0;
    }

    .hero-inner .h1 {
        text-shadow: 0 0 5px rgb(51 93 153 / 50%);
    }
    .hero-center { gap: 2rem }


}
@media (min-width: 1200px) {
    .d-xl-show {
        display: flex;
    }
    .logo {
        width: 210px;
        display: flex;
    }
    .logo-sm {
        display: none;
    }
    .navbar .btn {
        display: flex;
    }

    .navbar-nav {
        display: flex;
        flex-direction: row;
        justify-content: space-evenly;
        align-items: center;
        flex-grow: 1;
    }
    .navbar-social,
    .btn-call {
        display: flex;
    }
    .navbar-phone {
        gap: 1rem;
    }
    .slider-gal .slider-inner {
        padding-bottom: 8rem;
        justify-content: flex-end;
        align-items: center;
    }
    .filter {
        flex-direction: row !important;
        padding-bottom: 0 !important;
        margin: 3rem 0 !important;
    }
    .tab-content .filter {
        column-gap: 0.7rem !important;
        margin: 0 0 3rem 0 !important;
    }
    .delivery-price > div {
        gap: 1.5rem !important;
    }
    .contacts {
        margin: 4rem 0 !important;
    }
    .contacts > div {
        padding: 0 !important;
    }
    .contacts .map {
        padding: 0;
        box-shadow: var(--bs-card-shadow-big);
        border-radius: 1rem;
    }
    .contact .map {
        box-shadow: none;
    }
    .company .swiper {
        height: 100%;
    }
    .modal-content {
        border-radius: 2rem !important;
    }
    #swiper-main .swiper-button-next,
    #swiper-main .swiper-button-prev {
        opacity: 0.7;
        width: 3rem;
        height: 3rem;
    }
    #swiper-main .swiper-button-next {
        right: 3rem;
    }
    #swiper-main .swiper-button-prev {
        left: 3rem;
    }
    .accordion-button {
        font-size: 1.1rem;
        padding: 1rem 1.5rem;
    }
    .accordion-body {
        padding: 0rem 1.5rem 2rem 1.5rem;
        font-size: 1rem;
    }
    .icon-ya {
        max-height: 420px;
        width: auto;
        margin-bottom: 2rem;
    }
    .step2 .photo {
        margin: 0 1rem 0 0;
    }
    .check {
        margin-left: 0.5rem;
        font-size: 0.9rem;
    }
    .btns {
        gap: 1rem;
        margin: 2rem 0;
    }
    .btns .btn {
        font-size: clamp(0.8rem, 5vw, 1.1rem);
        padding: 1rem 2.5rem;
    }
    .d-adv {
        gap: 1rem;
        margin: 0 0 1rem 0;
        padding: 0;
    }
    .d-adv .d-adv-wrapper div {
        /*font-size: 0.9rem;*/
        gap: 1rem;
    }
    .d-adv .d-adv-wrapper span:not(.d-dig) {
        max-width: 180px;
    }
    .d-adv .d-adv-wrapper .d-dig {
        font-size: 3.8rem;
        font-weight: 500;
    }
    .modal-body {
        padding: 1rem 2rem 1rem 2rem;
    }
    .modal .row {
        --bs-gutter-x: 1.5rem;
        --bs-gutter-y: 0.5rem;
    }
    .card .btn-primary,
    .order .btn-primary {
        font-size: 1rem;
    }
    .catalog .card .short-desc,
    .discount .card .short-desc {
        font-size: .9rem;
    }
    .catalog .card .img,
    .discount .card .img {
        aspect-ratio: 24 / 9;
    }
/*    .catalog .card.card-new .img {
        aspect-ratio: 17 / 9;
    }*/
    .nav-filter {
        gap: 8px;
    }
    .catalog .card,
    .discount .card {
        padding: 2rem;
    }
    .feature-2 {
        min-height: 80px;
        font-size: 1rem;
    }
    .form-outer {
        margin-left: 3rem;
        padding: 3rem 4rem;
    }
    .modal-quick-view.modal-form .form-outer {
        padding: 3rem;
    }
    .review-lft {
        padding: 0 3rem;
        font-size: 1.2rem;
    }
    .catalog-item .card .row {
        --bs-gutter-x: 2.5rem;
        --bs-gutter-y: 2.5rem;
    }
    .catalog-item .card .img {
        aspect-ratio: 16 / 9;
    }
    .nav-wrap { gap: 16px }

    .card.card-new .btn.btn-border {
        padding: .7rem 0;
    }
    .card.card-new .p-price .p-digit {
        padding: 5px 16px;
        font-size: 16px;
    }
    .card.card-new .p-badge-group {
        padding: 16px;
    }

    .card.card-new .p-badge {
        padding: 8px 16px;
    }
    .dropdown-menu .dropdown-wrap {
        gap: 60px;
        padding: 24px;
    }

    .navbar {
        margin: 1rem;
        margin-bottom: 0;
        border-radius: 1.5rem;
    }
    .on-top.navbar {
        margin: 1rem;
        margin-bottom: 0;
        border-radius: 1.5rem;
    }
    .d-adv .d-adv-wrapper span:not(.d-dig) {
        font-size: 1.2rem;
    }

    .navbar-phone a.phone {
        display: flex;
    }

}
@media (min-width: 1400px) {
    .on-top.navbar {
    }
    .factory {
        padding-bottom: 0 !important;
    }
    .head {
        margin-bottom: 2.5rem;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    .head span {font-size: 14px}
    .space {
        padding-top: 6rem !important;
        padding-bottom: 6rem !important;
    }
    .content {
        font-size: 1rem !important;
    }
    .navbar {
        height: 90px;
    }

    .navbar .container-xxl {
        padding-right: 3rem;
        padding-left: 3rem;
    }
    .navbar-nav a,
    a.phone {
        font-size: 1rem !important;
    }
    .navbar-phone {
        gap: 3 rem;
    }
    .navbar-social a span {
        width: 1.3rem;
        height: 1.3rem;
    }
    .app {
        margin-top: 150px !important;
    }
    .check {
        font-size: 1rem;
    }
    .nav-filter .nav-item {
        font-size: 1rem;
        padding: 14px 28px;
    }
    .catalog .card,
    .discount .card {
        padding: 3rem;
    }
    .catalog .img .text-wrap,
    .discount .img .text-wrap {
        font-size: 6rem;
        line-height: 1;
    }
    .catalog .card .name,
    .discount .card .name {
        font-size: 1.2rem;
    }

    .catalog.catalog-item .card .name {
        font-size: 1.7rem;
        padding: 0;
        margin: 0;
    }
    .c-item .card {
        padding: 2.5rem;
    }
    .c-item .card .name {
        font-size: 1.2rem;
        padding: 0 0 1.5rem 0;
    }
    .c-item .card .price {
        font-size: 1.5rem;
    }

    .company .company-text {
        font-size: 1.1rem;
    }
    .master-desc {
        width: 70%;
    }
    #step1 .app-outer {
        margin: 0 1rem;
    }
    #step1 .head {
        margin-bottom: 6rem;
    }
    #step1 .card:first-child {
        margin-top: 3rem;
    }
    #step2.adv .card .card-body {
        padding: 2rem;
        column-gap: 2rem;
    }
    .product-list > div {
        padding: 0.5rem 0;
    }
    .card .desc {
        font-size: 1rem;
    }
    .adv .card .card-body {
        padding: 2.5rem;
        row-gap: 1.5rem;
    }
    .swiper-slide .main-bg:before {
        font-size: 18rem;
        right: 0;
        left: auto;
        top: 80px;
    }
    .discount:before,
    .review:before,
    .catalog:before,
    .company:before,
    .adv:before,
    .contact:before,

    .video:before,
    #step2:before,
    .step3:before {
        font-size: 16rem;
        right: 0;
        left: auto;
        top: -2rem;
        line-height: 1;
    }
    .c-item .head .h2 {
        margin: 2.5rem 0 2.5rem 0;
    }
    .notice {
        font-size: 1rem;
    }
    .c-item .card .card-body {
        font-size: 1rem;
    }
    .c-item .accordion-button {
        font-size: 1rem;
        font-weight: 700;
        padding: 0.7rem 0.7rem 0.7rem 1rem;
    }
/*    .card.card-new {
        padding: 1.5rem;
    }*/
    .card.card-new .product-list {
        font-size: .9rem;
    }

    .card.card-new .card-body {
        padding: 0 1rem;
    }

    .card.card-new .p-price {
        font-size: .9rem;
    }
    .card.card-new .card-footer {
        gap: 1rem;
        padding: 1rem;
    }
    .card.card-new .poster {
        margin: .5rem .5rem 0 .5rem;
    }
    .catalog-item .product-list, .catalog-item .p-price, .catalog-item .short-desc, .catalog .card .short-desc {
        font-size: 1rem;
    }

    .navbar {height: 90px;}
    .navbar-brand .logo {max-width: none;}
    .mt-top {
        margin-top: 30px;
    }
}
@media (min-width: 1900px) {
    .swiper-slide .h1 {
        font-size: clamp(2.6rem, 7vw, 6rem);
    }
    .swiper-slide .h2 {
        font-size: clamp(1rem, 5vw, 1.5rem);
    }
    .btns .btn {
        font-size: clamp(0.8rem, 5vw, 1.2rem);
    }
}

/*UPDATE*/

.form-check-label {
    font-size: .8rem;
    text-transform: none;
    cursor: pointer;
    padding-top: .25rem;
}
.form-check-label.is-invalid {
    color: #fc2c38;
}
.form-check-input.is-invalid {
    border: 1px solid #fc2c38;
} 

.form-check-label a {
    text-decoration: underline;
    color: var(--bs-primary);
}

.form-check {
display: flex;
gap: .7rem;
  min-height: 1.5rem;
  margin-bottom: 0.125rem;
}
.form-check .form-check-input {
}

.form-check-input {
  width: 20px;
  height: 20px;
  margin-top: 0.25em;
  vertical-align: top;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border: 2px solid var(--bs-primary);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-print-color-adjust: exact;
  color-adjust: exact;
  cursor: pointer;
}
.form-check-input[type=checkbox] {
  border-radius: 0.4em;
}
.form-check-input[type=radio] {
  border-radius: 50%;
}
.form-check-input:active {
  filter: brightness(90%);
}
.form-check-input:focus, .form-check-input:hover {
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-check-input:checked {
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.form-check-input:checked[type=checkbox] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
}

.dropdown > a:after, .dropdown-menu .nav-item-h:after {
    background-color: transparent;
    display: inline-block;
    width: 7px;
    height: 7px;
    margin-left: 7px;
    /*vertical-align: .03em;*/
    content: "";
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='7' height='5' %3E%3Cpath fill-rule='evenodd' fill='%23141417' d='M0.000,0.971 C0.000,1.221 0.093,1.470 0.279,1.660 L3.500,5.000 L6.722,1.660 C7.092,1.283 7.093,0.668 6.727,0.287 C6.360,-0.093 5.762,-0.095 5.393,0.282 L3.500,2.263 L1.607,0.282 C1.238,-0.095 0.641,-0.093 0.274,0.287 C0.092,0.476 0.000,0.724 0.000,0.971 Z'/%3E%3C/svg%3E") no-repeat 50% 50%;
}

.dropdown:hover > a:after {
    transform: rotate(-180deg);
}

.offcanvas .item > a.active {
    color: var(--bs-primary);
}

.offcanvas .dropdown.active > a:after {
    transform: rotate(-180deg);
}

.dropdown-toggle:empty:after {
    margin-left: 0
}

.dropdown-menu {
    display: none;
}
