/* root.css */


/* fonts*/
h1 {
    margin-bottom: clamp(40px, 80px, 6.67vw);
    font-family: "TT Norms Pro", sans-serif;
    letter-spacing: .05em;
    font-weight: 700;
    line-height: 1.3;
    font-size: 40px;
    text-transform: uppercase;
}
h2 {
    margin-bottom: clamp(20px, 40px, 3vw);
    font-family: "TT Norms Pro", sans-serif;
    letter-spacing: .05em;
    font-weight: 700;
    line-height: 1.3;
    font-size: 28px;
}
h3 {
    margin-bottom: clamp(20px, 40px, 2vw);
    font-family: "TT Norms Pro", sans-serif;
    letter-spacing: .05em;
    font-weight: 700;
    line-height: 1.3;
    font-size: 24px;
}
p + h2,
ul + h2,
ol + h2,
blockquote + h2,
.wp-block-table + h2,
.wp-block-image + h2 {
    margin-top: clamp(20px, 40px, 3vw);
}
p + h3,
ul + h3,
ol + h3,
blockquote + h3,
.wp-block-table + h3,
.wp-block-image + h3 {
    margin-top: clamp(20px, 40px, 2vw);
}
ul,
ol {
    line-height: 1.66;
}
p {
    font-size: 18px;
    margin-bottom: clamp(10px, 30px, 3vw);
    line-height: 1.66;
    letter-spacing: .05em;
}

.fs-20 {
    font-size: 20px;
}
.fs-24_20 {
    font-size: 24px;
}

/* margins */
.mb-0 {
    margin-bottom: 0 !important;
}
.mb-40 {
    margin-bottom: clamp(20px, 40px, 4vw);
}
.mb-20 {
    margin-bottom: clamp(10px, 20px, 2vw);
}
.mb-24 {
    margin-bottom: clamp(20px, 24px, 2vw);
}
.mt-24 {
    margin-top: clamp(20px, 24px, 2vw);
}
.mb-32 {
    margin-bottom: clamp(20px, 32px, 2vw);
}
.mb-64 {
    margin-bottom: clamp(48px, 64px, 5vw);
}
.mt-64 {
    margin-top: clamp(48px, 64px, 5vw);
}
.mb-140 {
    margin-bottom: clamp(80px, 140px, 11.67vw);
}

/* lists */
ul.wp-block-list:not(.custom-list) {
    margin-bottom: clamp(10px, 30px, 3vw);
    font-size: 18px;
    list-style: none;
    text-align: justify;
    letter-spacing: .05em;
}
ul.wp-block-list:not(.custom-list) li {
    margin-bottom: 10px;
}
ul.wp-block-list:not(.custom-list) li::before {
    content: '';
    display: inline-block;
    width: 30px;
    height: 15px;
    background: url(/wp-content/themes/grugany/assets/images/icons/yellow-arrow-right.svg) center left no-repeat;
    background-size: 12px 16px;
    margin-right: 0;
}
ol.wp-block-list:not(.custom-list) {
    margin-bottom: clamp(10px, 30px, 3vw);
    font-size: 18px;
    counter-reset: item;
    list-style: none;
    text-align: justify;
    letter-spacing: .05em;
}
ol.wp-block-list:not(.custom-list) li {
    margin-bottom: 10px;
}
ol.wp-block-list:not(.custom-list) li::before {
    content: counter(item) '.';
    counter-increment: item;
    display: inline-block;
    flex-shrink: 0;
    font-weight: 700;
    margin-right: 10px;
}

/* tables */
.wp-block-table {
    margin: clamp(10px, 30px, 3vw) 0;
    line-height: 1.66;
}
.wp-block-table table {
    width: 100%;
    --border: 1px solid #302C2C;
    border-radius: 8px;
    border-spacing: 0;
    border-collapse: separate;
    border: var(--border);
    overflow: hidden;
    font-size: 18px;
    letter-spacing: .05em;
}
.wp-block-table table td,
.wp-block-table table th {
    border: none;
    padding: clamp(10px, 20px, 2vw) clamp(20px, 40px, 3vw);
}
.wp-block-table table th:not(:last-child),
.wp-block-table table td:not(:last-child) {
    border-right: var(--border);
}
.wp-block-table table > thead>tr:not(:last-child)>th,
.wp-block-table table > thead>tr:not(:last-child)>td,
.wp-block-table table > tbody>tr:not(:last-child)>th,
.wp-block-table table > tbody>tr:not(:last-child)>td,
.wp-block-table table > tfoot>tr:not(:last-child)>th,
.wp-block-table table > tfoot>tr:not(:last-child)>td,
.wp-block-table table > tr:not(:last-child)>td,
.wp-block-table table > tr:not(:last-child)>th,
.wp-block-table table > thead:not(:last-child),
.wp-block-table table > tbody:not(:last-child),
.wp-block-table table > tfoot:not(:last-child) {
    border-bottom: var(--border);
}



/* blockquote */
blockquote p {
    position: relative;
    font-style: italic;
    font-size: 18px;
    margin: clamp(10px, 30px, 3vw) 0;
    letter-spacing: .05em;
}
blockquote p::before {
    content: "“";
    font-weight: 700;
    font-size: 32px;
    margin-right: 10px;
    line-height: 1;
}
blockquote p::after {
    content: "“";
    font-weight: 700;
    font-size: 32px;
    margin-left: 10px;
    line-height: 1;
}

/* images*/
.wp-block-image {
    margin-bottom: clamp(10px, 30px, 3vw);
}
.wp-block-image figcaption {
    font-size: 18px;
    text-align: center;
    margin-top: 8px;
    margin-bottom: 8px;
    letter-spacing: .05em;
}

/* styles */
p.has-background {
    padding: clamp(5px, 20px, 2vw) clamp(10px, 80px, 6vw);
    border-radius: 8px;
}
.button_trenirovka {
    font-size: clamp(20px, 24px, 2vw);
    font-weight: 700;
    text-decoration: underline;
    transition: 0.2s;
}
.button_trenirovka:hover {
    color: #F5C643;
}

p.has-background a {
    font-size: clamp(20px, 24px, 2vw);
    font-weight: 700;
    text-decoration: underline;
    transition: 0.2s;
}
p.has-background a:hover {
    color: #F5C643;
}

@media (max-width: 1024px) {
    h1 {
        font-size: 32px;
    }
    h2 {
        font-size: 24px;
    }
    h3 {
        font-size: 20px;
    }
}
@media (max-width: 768px) {

    h1 {
        font-size: 24px;
    }
    h2 {
        font-size: 20px;
    }
    h3 {
        font-size: 18px;
    }
    .fs-24_20 {
        font-size: 20px;
    }
}
