/* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 License: none (public domain) */
 html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
     margin: 0;
     padding: 0;
     border: 0;
     font-size: 100%;
     font: inherit;
     vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
 article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
     display: block;
}
 body {
     line-height: 1;
}
 ol, ul {
     list-style: none;
}
 blockquote, q {
     quotes: none;
}
 blockquote:before, blockquote:after, q:before, q:after {
     content: '';
     content: none;
}
 table {
     border-collapse: collapse;
     border-spacing: 0;
}
 input {
     outline: none;
}
 input::-webkit-outer-spin-button, input::-webkit-inner-spin-button {
     -webkit-appearance: none;
     margin: 0;
}
 input[type=number] {
     -moz-appearance: textfield;
}
 * {
     -webkit-box-sizing: border-box;
     box-sizing: border-box;
     outline: none;
}
 .nav-btn span {
     display: block;
}
 button, a {
     cursor: pointer;
     -webkit-transition: all .3s ease;
     -o-transition: all .3s ease;
     transition: all .3s ease;
     border: none;
     background: none;
     text-decoration: none;
}
 button {
     font-family: "Inter", sans-serif;
}
 textarea {
     resize: vertical;
     font-family: "Inter", sans-serif;
}
 input, textarea {
     font-weight: normal;
     font-size: 16px;
     line-height: 24px;
     color: #1D1D1F;
}
 input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
     font-family: "Inter", sans-serif;
     opacity: 1;
}
 input::-moz-placeholder, textarea::-moz-placeholder {
     font-family: "Inter", sans-serif;
     opacity: 1;
}
 input:-ms-input-placeholder, textarea:-ms-input-placeholder {
     font-family: "Inter", sans-serif;
     opacity: 1;
}
 input::-ms-input-placeholder, textarea::-ms-input-placeholder {
     font-family: "Inter", sans-serif;
     opacity: 1;
}
 input::placeholder, textarea::placeholder {
     font-family: "Inter", sans-serif;
     opacity: 1;
}
 body {
     font-family: "Inter", sans-serif;
     font-style: normal;
     font-weight: 500;
     font-size: 18px;
     line-height: 22px;
     color: #333333;
     min-height: 100vh;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -webkit-box-orient: vertical;
     -webkit-box-direction: normal;
     -ms-flex-direction: column;
     flex-direction: column;
     overflow-x: hidden;
     background: #E5E5E5;
}
 .wrapper {
     max-width: 1248px;
     padding-left: 15px;
     padding-right: 15px;
     width: 100%;
     margin-left: auto;
     margin-right: auto;
}
 .wrapper--xs {
     max-width: 990px;
}
 .wrapper.ui-wrapper {
     max-width: 100%;
}
 main {
     -webkit-box-flex: 1;
     -ms-flex: 1;
     flex: 1;
     padding-bottom: 120px;
     overflow-x: hidden;
}
 img {
     display: block;
     max-width: 100%;
}
 .main-header {
     padding-top: 20px;
     padding-bottom: 20px;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -webkit-box-align: center;
     -ms-flex-align: center;
     align-items: center;
     -webkit-box-pack: justify;
     -ms-flex-pack: justify;
     justify-content: space-between;
}
 .main-header span {
     font-weight: 600;
     font-size: 24px;
     line-height: 140%;
     text-align: right;
     color: #111111;
}
 .main-header span img {
     display: inline;
     vertical-align: middle;
}
 .logo {
     min-width: 126px;
}
 .section {
     background: #FFFFFF;
     border-radius: 56px;
     overflow: hidden;
     padding: 80px 60px;
     min-height: 470px;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -webkit-box-align: center;
     -ms-flex-align: center;
     align-items: center;
}
 .section + .section {
     margin-top: 80px;
}
 .hero-section {
     background-color: #FFC727;
     padding: 80px 60px;
     background-image: url("../img/bg.svg");
     background-position: right 0 top 0;
     background-size: auto 100%;
     background-repeat: no-repeat;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -webkit-box-align: center;
     -ms-flex-align: center;
     align-items: center;
}
 .form-block {
     max-width: 534px;
     width: 100%;
}
 .form-block h1 {
     margin-bottom: 40px;
}
 .form-block .subtitle {
     font-weight: 400;
     font-size: 18px;
     line-height: 140%;
     color: #111111;
     margin-bottom: 32px;
     margin-top: -28px;
}
 h1 {
     font-weight: bold;
     font-size: 36px;
     line-height: 38px;
     color: #000000;
}
 .form-row {
     display: grid;
     grid-template-columns: 1fr 200px;
     grid-column-gap: 8px;
     grid-row-gap: 10px;
}
 .hidden {
     display: none;
}
 .step2 {
     margin-top: 0 !important;
}
 .form-hidden {
     display: none;
}
 .form-loader {
     font-weight: 600;
     font-size: 12px;
     line-height: 120%;
     margin-top: 4px;
     color: #fff;
     position: absolute;
}
 .form-error {
     color: #ff0000;
     font-size: 12px;
     position: absolute;
}
 .loading {
     color: #fff;
}
 .input {
     display: block;
     height: 56px;
     width: 100%;
     background: #FFFFFF;
     border: 1px solid #E9D6A4;
     border-radius: 8px;
     padding: 0 16px;
     font-size: 18px;
     font-weight: bold;
     line-height: 19px;
     font-family: "Inter", sans-serif;
}
 .input::-webkit-input-placeholder {
     font-weight: bold;
     font-size: 18px;
     line-height: 19px;
     color: #1D1D1F;
}
 .input::-moz-placeholder {
     font-weight: bold;
     font-size: 18px;
     line-height: 19px;
     color: #1D1D1F;
}
 .input:-ms-input-placeholder {
     font-weight: bold;
     font-size: 18px;
     line-height: 19px;
     color: #1D1D1F;
}
 .input::-ms-input-placeholder {
     font-weight: bold;
     font-size: 18px;
     line-height: 19px;
     color: #1D1D1F;
}
 .input::placeholder {
     font-weight: 4bold00;
     font-size: 18px;
     line-height: 19px;
     color: #1D1D1F;
}
 .primery-btn {
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -webkit-box-align: center;
     -ms-flex-align: center;
     align-items: center;
     -webkit-box-pack: center;
     -ms-flex-pack: center;
     justify-content: center;
     height: 56px;
     width: 100%;
     background: #111111;
     border-radius: 8px;
     font-weight: 600;
     font-size: 16px;
     line-height: 19px;
     color: #FFFFFF;
}
 .primery-btn:hover {
     background: black;
}
 h2 {
     font-weight: 600;
     font-size: 40px;
     line-height: 48px;
     color: #000000;
     margin-bottom: 32px;
}
 ul {
     max-width: 594px;
}
 ul li {
     position: relative;
     font-weight: 500;
     font-size: 18px;
     line-height: 22px;
     color: #333333;
     padding-left: 19px;
}
 ul li::before {
     content: "";
     position: absolute;
     top: 7px;
     left: 0;
     width: 7px;
     height: 7px;
     border-radius: 50%;
     background: #FFC727;
}
 ul li + li {
     margin-top: 16px;
}
 body .grid-section {
     padding: 28px 60px 28px 20px;
     display: grid;
     grid-template-columns: 43.02% 1fr;
     grid-column-gap: 85px;
}
 body .grid-section--reverce {
     padding: 28px 20px 28px 60px;
     grid-template-columns: 1fr 43.02%;
}
 body .grid-section .content-side, body .grid-section .img-side {
     -webkit-box-orient: vertical;
     -webkit-box-direction: normal;
     -ms-flex-direction: column;
     flex-direction: column;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -ms-flex-line-pack: center;
     align-content: center;
}
 .main-footer {
     padding-top: 48px;
     padding-bottom: 48px;
}
 .main-footer-top {
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -webkit-box-pack: justify;
     -ms-flex-pack: justify;
     justify-content: space-between;
     padding-bottom: 48px;
}
 .contacts a {
     font-weight: 400;
     font-size: 18px;
     line-height: 150%;
     color: #1F1F2C;
     text-align: right;
     display: block;
}
 .contacts a + a {
     margin-top: 16px;
}
 .main-footer-bottom {
     border-top: 1px solid #DFDFDF;
     padding-top: 28px;
}
 .links {
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
}
 .links a {
     font-weight: 400;
     font-size: 16px;
     line-height: 150%;
     color: #757575;
}
 .links a + a {
     margin-left: 16px;
}
 .copy {
     margin-top: 24px;
     font-weight: 400;
     font-size: 16px;
     line-height: 150%;
     color: #B8B8B8;
}
 .main-footer {
     border-top: 1px solid #DFDFDF;
}
 a:hover {
     opacity: 0.7;
}
 .tip {
     font-weight: 400;
     font-size: 16px;
     line-height: 19px;
     color: #111111;
     margin-top: 12px;
}
 .tip b {
     font-weight: 600;
}
 .checkbox-row {
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -webkit-box-align: baseline;
     -ms-flex-align: baseline;
     align-items: baseline;
     margin-top: 24px;
}
 .checkbox-row span {
     font-weight: 400;
     font-size: 12px;
     line-height: 140%;
     color: #111111;
}
 .checkbox-row span a {
     color: inherit;
     text-decoration: underline;
}
 .checkbox {
     width: 20px;
     min-width: 20px;
     height: 20px;
     margin-right: 14px;
     position: relative;
}
 .checkbox input {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     margin: 0;
     z-index: 1;
     opacity: 0;
     cursor: pointer;
}
 .checkbox input:checked ~ .mask svg {
     opacity: 1;
}
 .checkbox .mask {
     width: 100%;
     height: 100%;
     background: #111111;
     border-radius: 4px;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -webkit-box-align: center;
     -ms-flex-align: center;
     align-items: center;
     -webkit-box-pack: center;
     -ms-flex-pack: center;
     justify-content: center;
}
 .checkbox .mask svg {
     opacity: 0;
}
 .btn--fix {
     padding: 0 47px;
     width: -webkit-fit-content;
     width: -moz-fit-content;
     width: fit-content;
     margin-top: 24px;
}
 .text-block {
     margin-left: auto;
}
 .text-block strong {
     display: block;
     font-weight: 600;
     font-size: 24px;
     line-height: 105.6%;
     color: #FFFFFF;
     margin-bottom: 24px;
}
 .list {
     max-width: 429px;
     margin-left: auto;
}
 .list .item {
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -webkit-box-align: unset;
     -ms-flex-align: unset;
     align-items: unset;
     font-weight: 500;
     font-size: 20px;
     line-height: 130%;
     color: #FFFFFF;
}
 .list .item svg {
     margin-right: 12px;
     width: 28px;
     min-width: 28px;
     height: 28px;
}
 .list .item + .item {
     margin-top: 24px;
}
 .section--bg2 {
     background-image: url("../img/bg2.svg");
}
 nav {
     margin-left: 60px;
}
 nav ul {
     flex-wrap: wrap;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     max-width: none;
     width: -webkit-fit-content;
     width: -moz-fit-content;
     width: fit-content;
}
 nav ul li {
     padding-left: 0;
     margin: 0;
     margin-bottom: 5px;
}
 nav ul li:before {
     display: none;
}
 nav ul li:not(:last-child) {
     margin-right: 25px;
}
 nav ul li a {
     color: #000000;
}
 .menu {
     margin-left: 50px;
}
 .menu ul {
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     max-width: none;
     -ms-flex-wrap: wrap;
     flex-wrap: wrap;
     margin-top: -10px;
     margin-left: -10px;
}
 .menu ul li {
     padding-left: 0;
     margin: 0;
     padding: 10px;
}
 .menu ul li:before {
     display: none;
}
 .menu ul li:not(:last-child) {
     margin-right: 25px;
}
 .menu ul li a {
     color: #000000;
}
 ul span {
     display: block;
     margin-top: 5px;
     font-size: 15px;
     color: #757575;
}
 ul.columns2 {
     -webkit-columns: 2;
     -moz-columns: 2;
     columns: 2;
}
 ul.columns3 {
     -webkit-columns: 3;
     -moz-columns: 3;
     columns: 3;
}
 @media (max-width: 1210px) {
     .section--bg-none {
         background-position: right -56px top 0;
    }
}
 @media (max-width: 1160px) {
     .section--bg2 {
         display: -webkit-box;
         display: -ms-flexbox;
         display: flex;
         -webkit-box-orient: vertical;
         -webkit-box-direction: normal;
         -ms-flex-direction: column;
         flex-direction: column;
         background-image: none;
         padding-bottom: 0 !important;
         -webkit-box-align: start;
         -ms-flex-align: start;
         align-items: flex-start;
    }
     .text-block {
         width: calc(100% + 120px);
         margin-left: -60px;
         margin-right: -60px;
         background: #2D2D2D;
         padding: 60px 60px 80px 60px;
         margin-top: 60px;
    }
     .list {
         max-width: 100%;
         margin-left: 0;
    }
}
 @media (max-width: 980px) {
     .main-header span {
         font-size: 18px;
    }
     .section {
         min-height: 360px;
    }
     .hero-section {
         padding: 40px 30px;
    }
     .section + .section {
         margin-top: 40px;
    }
     .text-block {
         width: calc(100% + 60px);
         margin-left: -30px;
         margin-right: -30px;
         background: #2D2D2D;
         padding: 30px 30px 40px 30px;
         margin-top: 40px;
    }
     h1 {
         font-size: 30px;
         line-height: 40px;
    }
     h2 {
         font-weight: 600;
         font-size: 28px;
         line-height: 36px;
         color: #000000;
         margin-bottom: 20px;
    }
     body .grid-section {
         grid-column-gap: 30px;
    }
     main {
         padding-bottom: 60px;
    }
}
 @media (max-width: 768px) {
     .form-block h1 {
         margin-bottom: 10px !important;
         max-width: 300px;
    }
     ul.columns2 {
         -webkit-columns: 2;
         -moz-columns: 2;
         columns: 2;
    }
     .menu ul {
         -webkit-box-orient: vertical;
         -webkit-box-direction: normal;
         -ms-flex-direction: column;
         flex-direction: column;
         text-align: center;
         margin-left: 0;
    }
     .menu ul li {
         margin-right: 0;
    }
     .menu ul li:not(:last-child) {
         margin-right: 0;
    }
     .menu {
         margin-left: 0;
         margin-bottom: 40px;
    }
     .section {
         min-height: 260px;
    }
     body .grid-section {
         padding: 30px;
         grid-template-columns: none;
         display: -webkit-box;
         display: -ms-flexbox;
         display: flex;
         -webkit-box-orient: vertical;
         -webkit-box-direction: normal;
         -ms-flex-direction: column;
         flex-direction: column;
    }
     body .grid-section .img-side {
         display: -webkit-box;
         display: -ms-flexbox;
         display: flex;
         -webkit-box-pack: center;
         -ms-flex-pack: center;
         justify-content: center;
         -webkit-box-ordinal-group: 0;
         -ms-flex-order: -1;
         order: -1;
    }
     body .grid-section .img-side img {
         max-width: 300px;
    }
     body .grid-section--reverce {
         padding: 30px;
    }
     ul {
         max-width: 100%;
    }
     .content-side {
         width: 100%;
    }
     h2 {
         text-align: center;
    }
     .main-footer {
         padding-top: 30px;
         padding-bottom: 30px;
    }
     .main-footer-top {
         padding-bottom: 30px;
    }
     .main-footer-bottom {
         padding-top: 30px;
    }
     .main-footer-top, .links {
         -webkit-box-orient: vertical;
         -webkit-box-direction: normal;
         -ms-flex-direction: column;
         flex-direction: column;
         -webkit-box-align: center;
         -ms-flex-align: center;
         align-items: center;
    }
     .main-footer-top .logo, .links .logo {
         margin-bottom: 20px;
    }
     .contacts a {
         text-align: center;
    }
     .links a {
         text-align: center;
    }
     .links a + a {
         margin-left: 0;
         margin-top: 16px;
    }
     .copy {
         text-align: center;
    }
     ul li {
         font-size: 16px;
    }
     .form-row {
         grid-template-columns: 100%;
    }
     body .grid-section .img-side {
         margin-bottom: 30px;
    }
     .form-block .subtitle {
         margin-top: -18px;
    }
}
 @media (max-width: 577px) {
     .section {
         border-radius: 15px;
    }
     .section {
         padding: 40px 20px;
    }
     h1 {
         font-size: 25px;
         line-height: 30px;
    }
     .text-block {
         width: calc(100% + 40px);
         margin-left: -20px;
         margin-right: -20px;
         background: #2D2D2D;
         padding: 20px 20px 30px 20px;
         margin-top: 30px;
    }
     .hero-section {
         background-image: none;
    }
     .hero-section, body .grid-section {
         padding: 30px 20px 40px 20px;
    }
     h2 {
         font-size: 22px;
         line-height: 34px;
    }
     .main-header span {
         font-size: 12px;
    }
     .main-header span img {
         display: inline-block;
         vertical-align: middle;
         max-width: 20px;
    }
     .logo {
         max-width: 100px;
    }
     .list .item {
         font-size: 18px;
    }
     .btn--fix {
         width: 100%;
    }
     .text-block strong {
         font-size: 20px;
    }
}
 @media (max-width: 460px) {
     ul.columns2, ul.columns3 {
         -webkit-columns: 1;
         -moz-columns: 1;
         columns: 1;
    }
}
 @media (min-width: 768px) {
     .hamburger {
         display: none;
    }
     nav {
         display: block !important;
    }
}
 @media (max-width: 768px) {
     nav {
         position: absolute;
         top: 102px;
         left: 0;
         width: 100%;
         background-color: #fff;
         margin-left: 0;
         padding: 40px 15px;
         display: none;
    }
     nav ul {
         display: -webkit-box;
         display: -ms-flexbox;
         display: flex;
         -webkit-box-orient: vertical;
         -webkit-box-direction: normal;
         -ms-flex-direction: column;
         flex-direction: column;
    }
     nav ul li:not(:last-child) {
         margin-right: 0;
         margin-bottom: 20px;
    }
     .hdnmob {
         display: none;
    }
     nav ul li a {
         color: #000000;
         font-size: 18px;
    }
}
/* .articles-cards {
     padding-top: 60px;
}
 */
 .article-card {
     max-width: 70%;
}
 .article-card + .article-card {
     margin-top: 40px;
}
 .article-image {
     margin-bottom: 30px;
}
 .article-image img {
     width: 100%;
}
 .article-exerpt p + p {
     margin-top: 10px;
}
 .more-link {
     display: block;
     width: fit-content;
     color: #FFC727;
     margin-top: 20px;
}
 .article-full__header>:not(:last-child) {
     margin-bottom: 16px;
}
 .article-full__header:not(:last-child) {
     margin-bottom: 24px;
}
 .formatted-blocks__paragraph:not(:last-child) {
     margin-bottom: 1.25em;
}
 .formatted-blocks__header a, .formatted-blocks__list a, .formatted-blocks__paragraph a, .formatted-blocks__table a {
     color: #14589d;
}
 .formatted-blocks__header--level--2 {
     font-size: 2em;
     line-height: 1.25;
     margin-top: 1.5em;
     margin-bottom: 0.5625em;
}
 .formatted-blocks__header {
     color: #1a1a1a;
     font-weight: 400;
}
 .formatted-blocks__paragraph:not(:last-child) {
     margin-bottom: 1.25em;
}
 .formatted-blocks__raw:not(:last-child) {
     margin-bottom: 1.25em;
}
 .formatted-blocks__image:not(:last-child) {
     margin-bottom: 1.5em;
}
 .formatted-blocks__image:not(:first-child) {
     margin-top: 1.5em;
}
 .formatted-content h2 {
     margin-top: 1.5em;
     margin-bottom: 0.5625em;
}
 nav {
     margin-left: 0;
}
 nav ul li a {
     font-size: 14px;
     font-weight: 500;
}
 .main-header-box {
     background-color: #fff;
     padding-bottom: 15px;
     box-shadow: 0px 6px 40px rgb(31 31 31 / 5%);
}
 .main-footer {
     background-color: #fff;
}
 main {
     padding-top: 20px;
}
 .disclaimer-inner ul li + li {
     margin-top: 0;
}
 .disclaimer-inner ul li::before {
     content: none;
}
 .disclaimer-inner ul li a {
     font-size: 14px;
     line-height: 16px;
     color: #7f7f7f;
}
 .disclaimer-inner p {
     font-size: 14px;
     line-height: 16px;
     color: #969696;
     padding-top: 15px;
}
 .section-agreement {
     margin-top: 20px !important;
     margin-bottom: 80px;
     padding: 40px 80px;
     min-height: auto;
}
 .registration-agreement {
     margin: 1.5rem auto 0;
     text-align: center;
     box-sizing: border-box;
}
 .agreement-label {
     display: inline-flex;
     align-items: flex-start;
     text-align: left;
     gap: 10px;
     cursor: pointer;
     font-size: 0.825rem;
     line-height: 1.4;
     color: rgb(var(--color-gray));
     user-select: none;
     margin-bottom: 1.5rem;
}
 .agreement-label input[type="checkbox"] {
     margin-top: 2px;
     width: 16px;
     height: 16px;
     flex-shrink: 0;
     cursor: pointer;
}
 .subscription-info {
     margin-bottom: 1.25rem;
     padding: 0 1rem;
}
 .subscription-info .info-title {
     font-size: 0.875rem;
     font-weight: 600;
     color: rgb(var(--color-gray));
     margin-bottom: 0.25rem;
     text-align: center;
}
 .subscription-info .info-text {
     font-size: 0.775rem;
     line-height: 1.5;
     color: rgb(var(--color-gray));
     opacity: 0.85;
     margin: 0;
     text-align: center;
}
 .agreement-links {
     display: flex;
     justify-content: center;
     gap: 24px;
     margin-top: 1rem;
}
 .agreement-links a {
     font-size: 0.825rem;
     font-weight: 600;
     color: #dda400;
     text-decoration: none;
     transition: opacity 0.2s;
}
 .agreement-links a:hover {
     text-decoration: underline;
     opacity: 0.85;
}
 .subtext {
     font-weight: bold;
     font-size: 22px;
     line-height: 26px;
     color: #ffffff;
     text-align: left;
}
 @media (max-width: 768px) {
     .article-card {
         max-width: 100%;
    }
     .main-header-box {
         padding-bottom: 0;
    }
     .article-full__main-image {
         height: auto !important;
    }
     nav {
         padding-top: 20px;
    }
     .subtext {
         font-size: 18px;
         line-height: 21px;
    }
     .form-block p.m {
         font-size: 16px !important;
         line-height: 19px;
    }
     .section.section-agreement{
         padding: 30px 20px 40px 20px;
    }
     .registration-agreement {
         margin: 0;
         text-align: center;
         box-sizing: border-box;
    }
    .primery-btn {
		font-size: 18px;
	}
}
 .custom-modal-backdrop {
     position: fixed;
     top: 0;
     left: 0;
     width: 100vw;
     height: 100vh;
     background: rgba(15, 23, 42, 0.65);
     backdrop-filter: blur(8px);
     -webkit-backdrop-filter: blur(8px);
     z-index: 999999;
     display: flex;
     align-items: center;
     justify-content: center;
     padding: 16px;
     opacity: 0;
     visibility: hidden;
     transition: opacity 0.25s ease, visibility 0.25s ease;
     box-sizing: border-box;
}
 .custom-modal-backdrop.active {
     opacity: 1;
     visibility: visible;
     display: flex !important;
}
 .custom-modal-dialog {
     position: relative;
     background: #FFC727;
     width: 100%;
     max-width: 440px;
     border-radius: 20px;
     padding: 36px 28px 30px;
     text-align: center;
     box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25), 0 0 0 1px rgba(0, 0, 0, 0.9);
     transform: scale(0.9) translateY(12px);
     transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
     box-sizing: border-box;
}
 .custom-modal-backdrop.active .custom-modal-dialog {
     transform: scale(1) translateY(0);
}
 .custom-modal-close {
     position: absolute;
     top: 16px;
     right: 16px;
     width: 36px;
     height: 36px;
     border-radius: 50%;
     background: #000;
     border: none;
     display: flex;
     align-items: center;
     justify-content: center;
     color: #fff;
     cursor: pointer;
     transition: background-color 0.2s, color 0.2s, transform 0.15s;
     padding: 0;
}
 .custom-modal-close:hover {
     background: #000;
     color: #b9b9b9;
     transform: rotate(90deg);
}
 .custom-modal-icon-wrap {
     position: relative;
     width: 76px;
     height: 76px;
     margin: 0 auto 20px;
     display: flex;
     align-items: center;
     justify-content: center;
}
 .custom-modal-icon-pulse {
     position: absolute;
     inset: -6px;
     border-radius: 50%;
     background: rgba(74, 80, 230, 0.15);
     animation: modalPulseRing 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
 @keyframes modalPulseRing {
     0%, 100% {
         transform: scale(0.95);
         opacity: 0.7;
    }
     50% {
         transform: scale(1.12);
         opacity: 0.3;
    }
}
 .custom-modal-icon {
     position: relative;
     z-index: 1;
     width: 68px;
     height: 68px;
     border-radius: 50%;
     background: linear-gradient(135deg, #111111 0%, #4c4c4c 100%);
     display: flex;
     align-items: center;
     justify-content: center;
     box-shadow:0 10px 25px -5px rgb(0 0 0 / 45%);
}
 .custom-modal-title {
     font-size: 22px;
     font-weight: 700;
     color: #1e293b;
     margin: 0 0 10px;
     line-height: 1.3;
}
 .custom-modal-text {
     font-size: 15px;
     color: #475569;
     line-height: 1.55;
     margin: 0 0 26px;
     font-weight: 500;
}
 .custom-modal-btn {
     width: 100%;
     height: 52px;
     font-size: 16px;
     font-weight: 700;
     border-radius: 12px;
     border: none;
     cursor: pointer;
     background: #111111;
     color: #ffffff;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     gap: 10px;
     box-shadow: 0 8px 20px rgb(0 0 0 / 45%);
     transition: background-color 0.2s, transform 0.15s, box-shadow 0.2s;
     box-sizing: border-box;
}
 .custom-modal-btn:hover {
     background: #3c42cc;
     transform: translateY(-1px);
     box-shadow: 0 10px 24px rgb(0 0 0 / 45%);
}
 .custom-modal-btn:active {
     transform: translateY(0);
}
 @keyframes inputFocusGlow {
     0% {
         box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.6);
         border-color: #4a50e6 !important;
    }
     50% {
         box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.3);
         border-color: #4a50e6 !important;
    }
     100% {
         box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
         border-color: #4a50e6 !important;
    }
}
 .input-highlight-pulse {
     animation: inputFocusGlow 1.2s ease-in-out;
}
 input.input.tel::placeholder {
  color: #939393;
}