:root {
  --site-bg: #0b0b0b;
  --site-bg-soft: #151515;
  --site-surface: #dcdcdc;
  --site-red: #d3321f;
  --site-red-hover: #b82416;
  --site-text: #ffffff;
  --site-muted: #cfcfcf;
  --site-card-dark-1: #0f0f0f;
  --site-card-dark-2: #555555;
  --radius-lg: 12px;
  --radius-md: 8px;
  --radius-sm: 6px;
  --container-max: 1320px;
  --shadow-soft: 0 10px 30px rgba(0,0,0,.35);
}

{font-family: 'Public Sans'; font-style: normal; font-weight: 400; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; src: url(../fonts/PublicSans.ttf) format('ttf'); }
{font-family: 'Inter'; font-style: normal; font-weight: 400; src: url(../fonts/Inter-Regular.otf) format('otf'); }



html, body {
  background: var(--site-bg);
  color: var(--site-text);
/*  font-family: "Inter", sans-serif; */
}

.font-inter{
  font-family: "Inter", sans-serif;
}

.font-public-sans{
  font-family: "Public Sans", sans-serif;
}

.font-montserrat{
  font-family: "Montserrat", sans-serif;
}

.font-inder{
  font-family: "Inder", sans-serif;
}

.tm-page,
.uk-section-default,
.uk-section-muted,
.uk-section-secondary {
  background: transparent; 
}


/*
h1, h2, h3, h4, h5, h6,
.uk-heading-small,
.uk-heading-medium,
.uk-heading-large,
.uk-heading-xlarge,
.uk-heading-2xlarge {
  font-family: "Tenor Sans", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .02em;
  line-height: 1.05;
}
*/
/*
.site-title-xl {
  font-size: clamp(42px, 7vw, 92px);
  line-height: .95;
}

.site-title-lg {
  font-size: clamp(32px, 4.2vw, 58px);
  line-height: 1;
}

.site-title-md {
  font-size: clamp(28px, 3vw, 44px);
  line-height: 1.05;
  font-family: "Inter";
}
*/

.site-white{
   color: #ECECEC;
}

.site-red {
  color: var(--site-red);
}

.site-muted {
  color: var(--site-muted);
}

.site-overlay-dark {
/*  position: relative;  */
}

.site-overlay-dark::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.78) 0%, rgba(0,0,0,.55) 45%, rgba(0,0,0,.82) 100%);
  pointer-events: none;
}

.site-overlay-dark > * {
  position: relative;
  z-index: 2;
}


.site-panel-light {
  background: var(--site-surface);
  border-radius: var(--radius-lg);
  padding: 32px;
  box-shadow: var(--shadow-soft);
}

.site-card-dark {
  background: linear-gradient(180deg, var(--site-card-dark-1) 0%, var(--site-card-dark-2) 100%);
  border-radius: var(--radius-md);
  color: #fff;
  box-shadow: var(--shadow-soft);
  overflow: hidden;
  min-height: 320px;
}

.site-card-dark .uk-card-body,
.site-card-dark.uk-card-body {
  padding: 30px;
}

.site-card-title{
font-family: Inder;
font-weight: 400;
font-size: 16px;
line-height: 1.2;
letter-spacing: 0%;
text-transform: uppercase;
color: #ffffff;
}

.site-card-text{
/*font-family: Montserrat;*/
font-weight: 400;
font-size: 14px;
line-height: 1.2;
letter-spacing: 4%;
color: #ffffff;
min-height: 100px;
}

.site-card-number {
  font-family: "Oswald", sans-serif;
  font-size: clamp(40px, 4vw, 68px);
  line-height: 1;
  color: rgba(255,255,255,.65);
}

.site-button,
.uk-button-primary {
  background: var(--site-red);
  color: #fff;
  border-radius: var(--radius-sm);
  border: 0;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .03em;
  transition: .2s ease;
  text-align: center;
}

.site-button:hover,
.uk-button-primary:hover {
  background: var(--site-red-hover);
  color: #fff;
}

.site-socials .uk-icon-button {
  border: 2px solid #6e6e6e;
  width: 38px;
  height: 38px; 
}

.site-socials .uk-icon-button:hover {
  background: var(--site-red);
  border-color: var(--site-red);
}

.site-form .uk-input,
.site-form .uk-textarea,
.site-form input,
.site-form textarea {
  background: #fff;
  border-radius: 6px;
  border: 0;
/*  min-height: 48px; */
  color: #111;
}

.site-form .uk-textarea,
.site-form textarea {
  min-height: 140px;
}

.site-form .textlabel {
  display: block;
  margin-bottom: 8px;
  color: #fff;
  font-size: 14px;
}

.site-form .zakonrf a{
  color: #fff;
}

.site-accordion .el-item,
.site-faq .el-item {
  margin-bottom: 10px;
  border-radius: 6px;
  overflow: hidden;
  background: rgba(211,50,31,.45);
  backdrop-filter: blur(3px);
  border: 0px;
}

.site-accordion .el-title,
.site-faq .el-title {
  font-family: "Inter", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.1;
  text-transform: uppercase;
  color: #fff;
  padding: 16px 18px;
}

.uk-accordion>:nth-child(n+2) {
    margin-top: 0px;
}

.uk-accordion>:nth-child(n+2) {
    padding-top: 0px;
}

.site-accordion .el-content,
.site-faq .el-content {
  padding: 0 18px 18px;
  color: #f1f1f1;
  line-height: 1.6;
}

.site-accordion .uk-accordion-title::before {
    content: "";
    width: 22px;
    height: 23px;
    margin-left: 10px;
    float: right;
    background-image: url("/images/page2/accordion.svg");
    background-repeat: no-repeat;
    background-position: 50% 50%;
    color: #CC1C0D;
}
.site-accordion .uk-open>.uk-accordion-title::before {
    background-image: url("/images/page2/accordion.svg");
    transform: rotate(180deg);
}


.site-review-track img,
.site-gallery img {
  border-radius: 6px;
  display: block;
  width: 100%;
  height: auto;
}

.site-cert img {
  border-radius: 0;
  background: #fff;
}

.site-footer {
  padding: 24px 0 36px;
  font-size: 13px;
/*  color: rgba(255,255,255,.8);   */
}

.site-blur-section::after {
  content: "";
  position: absolute;
  inset: 0;
  backdrop-filter: blur(2px);
  pointer-events: none;
  z-index: 1;
}

.site-blur-section > * {
  position: relative;
  z-index: 2;
}

.site-hero-buttons .uk-button {
  min-width: 210px;
}

.site-price {
  color: var(--site-red);
  font-family: "Public Sans", sans-serif;
  font-weight: 700;
  line-height: 1;
  font-size: clamp(34px, 3vw, 56px);
  text-shadow: 
    -1px -1px 0 #fff,  
     1px -1px 0 #fff,
    -1px  1px 0 #fff,
     1px  1px 0 #fff; 
}

.site-note {
  font-size: 14px;
  line-height: 1.5;
  color: rgba(255,255,255,.82);
}

.text-through{
  text-decoration: line-through;
}


@media (max-width: 959px) {

  .site-panel-light {
    padding: 22px;
  }

  .site-card-dark .uk-card-body,
  .site-card-dark.uk-card-body {
    padding: 18px;
  }

  .site-hero-buttons .uk-button {
    width: 100%;
  }
}

@media (max-width: 639px) {
  .site-section--hero {
    min-height: auto;
    padding-top: 28px;
  }

  .site-socials .uk-icon-button {
    width: 34px;
    height: 34px;
  }
}

.page-services-hero .uk-grid,
.page-course-hero .uk-grid {
  align-items: center;
}

.page-services-benefits .site-card-dark,
.page-course-benefits .site-card-dark,
.page-course-pricing .site-card-dark {
  height: 100%;
}

.page-services-benefits .uk-button,
.page-course-pricing .uk-button {
  margin-top: 18px;
}

.page-course-program .site-accordion .el-item,
.page-course-faq .site-faq .el-item {
  border: 1px solid rgba(211,50,31,.35);
}

.page-course-program .site-accordion .el-title,
.page-course-faq .site-faq .el-title {
  font-size: 16px;
  line-height: 1.3;
}

.page-services-reviews .uk-slider-items > li img {
  aspect-ratio: 9 / 16;
  object-fit: cover;
}

.page-services-certs img {
  background: #fff;
  padding: 6px;
}

.page-course-pricing .site-card-dark {
  display: flex;
  flex-direction: column;
}

.page-course-pricing .site-card-dark .uk-card-body {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.page-course-pricing .site-price {
  margin-top: auto;
  padding-top: 16px;
}

@media (max-width: 767px) {
  .page-services-hero .uk-text-left,
  .page-course-hero .uk-text-left {
    text-align: left !important;
  }

  .page-services-hero img,
  .page-course-hero img {
    max-height: 420px;
    object-fit: contain;
  }

  .page-course-faq .uk-grid > div:last-child img {
    max-width: 320px;
    margin: 0 auto;
    display: block;
  }
}

#tm-main, .tm-main {
    background-image: 
	linear-gradient(180deg, rgba(0, 0, 0, .78) 0%, rgba(0, 0, 0, .55) 45%, rgba(0, 0, 0, .82) 100%),
	url('/images/frontpage/bg.jpg');
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
/*    background: linear-gradient(180deg, rgba(0, 0, 0, .78) 0%, rgba(0, 0, 0, .55) 45%, rgba(0, 0, 0, .82) 100%);  */
}
/* На мобильных экранах (до 959px) */
@media (max-width: 959px) {
    #ebanina {
        margin-top: -15px !important; /* Небольшой отступ сверху под заголовком */
        white-space: normal !important; /* Разрешаем тексту переноситься, если экран слишком узкий */
    }
}

/* На экранах от планшетов и десктопов (от 960px и выше — аналог @m в UIkit) */
@media (min-width: 960px) {
    #ebanina {
        position: absolute !important;
/*        left: 100% !important;  */
        margin-left: 190px !important; 
        top: 50% !important; 
        transform: translateY(-50%) !important; 
        width: max-content !important; 
        z-index: 10 !important;
    }
}