@font-face {
    font-family: 'Cairo';
    src: url('../fonts/Cairo/Cairo-VariableFont_slnt,wght.ttf')
        format('truetype-variations');
    font-display: swap;
    /* font-weight: normal; */
}

*,
:after,
:before {
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -webkit-text-stroke-width: 0 !important;
    font-synthesis: none !important;
    text-rendering: optimizeLegibility;
    margin: 0;
    padding: 0;
    justify-content: center;
    align-items: center;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
html {
    font-family: 'Cairo', sans-serif;
    font-size: 10px;
    line-height: 1.4;
    font-optical-sizing: auto;
    font-style: normal;
    font-variation-settings: 'slnt' 0;
    font-weight: 300;
}
body {
    width: 100%;
    font-weight: 300;
    color: var(--primary);
    font-size: 1.7rem;
    overflow-x: hidden;
    overflow-x: auto;
    max-width: 100vw;

    letter-spacing: -0.01em;
    font-weight: 300;
}
body.custom-background:not(.home) {
    background: 0 0;
}
.clear:after,
.clear:before {
    content: ' ';
    display: table;
}
.clear:after {
    clear: both;
}
img {
    max-width: 100%;
    max-width: 100%;
    height: auto;
    width: auto;
    vertical-align: bottom;
}
a {
    color: inherit;
    text-decoration: none;
}
a:hover {
    color: var(--secondary);
}
a:focus {
    outline: 0;
}
a:active,
a:hover {
    outline: 0;
}
input:focus {
    outline: 0;
    border: 1px solid var(--focus);
}
h1,
p.h1,
h2,
p.h2,
h3,
p.h3,
h4 {
    font-weight: 700;
    line-height: 1.2;
    color: inherit;
}
p {
    font-size: 1.7rem;
    line-height: 1.4;
}
p + p {
    margin-top: 0.8rem;
}
blockquote {
    margin: 1.7rem 0;
    color: var(--secondary);
}
ul {
    margin: 0.8rem 0 1.7rem 1.5rem;
}
li:not(:last-child) {
    margin-bottom: 0.8rem;
}
h2,
p.h2,
h3,
p.h3,
h4,
h5,
h6 {
    margin-top: 3.2rem;
    margin-bottom: 1.7rem;
}
.scroll_top {
    position: relative;
    width: 3rem;
    height: 3rem;
    display: block;
    transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    margin: 0 2rem;
}
.scroll_top:before {
    content: url(../img/arrows.svg);
    margin: 0 1rem;
}
::selection {
    background: var(--focus);
    color: var(--menucolor);
    text-shadow: none;
}
::-webkit-selection {
    background: var(--focus);
    color: var(--menucolor);
    text-shadow: none;
}
::-moz-selection {
    background: var(--focus);
    color: var(--menucolor);
    text-shadow: none;
}
.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}
.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}
.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}
a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}
a img.alignnone {
    margin: 5px 20px 20px 0;
}
a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}
a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.wp-caption {
    background: var(--menucolor);
    border: 1px solid var(--grey);
    max-width: 96%;
    padding: 5px 3px 10px;
    text-align: center;
}
.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}
.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}
.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}
.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: 100%;
}
.gallery-caption,
.wp-caption .wp-caption-text {
    font-size: 1rem;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}
section {
    width: 100%;
}
.mce-ico.mce-i-none {
    background-size: 100%;
    background-repeat: no-repeat;
}

.tag-wrapper.contacts .phone .single-tag > * {
    display: flex;
    align-items: flex-start;
    margin: auto;
    width: 100%;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1rem 5rem;
}

.tag-wrapper.contacts .phone .single-tag .img {
    width: 100%;
}

@media screen and (max-width: 1080px) {
    .tag-wrapper.contacts .phone .single-tag > * {
        flex-direction: column;
    }
}

body:not(.home) .tag-wrapper.subpage_container p.excerpt {
    max-width: 300px;
}

.post_author {
    display: flex;
    flex-direction: row;
    gap: 1em;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 3rem;
}

.post_author img {
    aspect-ratio: 1;
    width: 10rem;
    height: auto;
    object-fit: contain;
    background-color: #eee;
    border-radius: 50%;
}

.post_author p > * {
    display: block;
}

.seo-block .wp-block-buttons {
    background-color: #eee;
    padding: 2rem 3rem;
}

.wp-block-button__link,
.entry-content a.wp-block-button__link {
    background-color: var(--secondary);
    color: var(--menucolor);
    border-radius: 0;
    text-decoration: none;
}

.wp-block-button__link:hover,
.entry-content a.wp-block-button__link:not(.button):hover,
.entry-content a.wp-block-button__link:hover {
    background-color: var(--primary);
    color: var(--menucolor);
}

.wp-block-column > .product-container:only-child {
    /* height: 100%; */
    max-width: 45rem;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.wp-block-column:last-child:nth-child(2) > .product-container:only-child {
    margin-right: 0;
}

.wp-block-column:first-child:nth-last-child(2) > .product-container:only-child {
    margin-left: 0;
}

.wp-block-column > .product-container:only-child .product .content {
    padding-left: 0;
    padding-right: 0;
}

.wp-block-column
    > .product-container:only-child
    .product
    .absolute-title
    .relative
    p.title {
    transform: translateX(1em);
}

.wp-block-column .product-container p.title a,
.wp-block-column
    > .product-container:only-child
    .product
    .content-fields
    .download-section {
    text-decoration: none;
}

.wp-block-column
    > .product-container:only-child
    .product
    .content-img
    .content-fields {
    padding-left: 2rem;
    padding-right: 2rem;
}

.wp-block-column
    > .product-container:only-child
    .product
    .content-fields
    .download-section:after {
    width: 5rem;
    transform: translateY(-50%);
}

.wp-block-columns.contains_product {
    flex-wrap: wrap !important;
}

.wp-block-column.contains_product {
    min-width: 300px;
}

.subpage_container .content-img.big_image {
    width: 100%;
    /* max-width: 30rem; */
    background-size: cover;
    aspect-ratio: 2;
    height: auto;
    margin-right: 0;
    clip-path: polygon(11% 0%, 100% 0%, 89% 100%, 0% 100%);
}

.wp-block-columns.same_height {
    column-gap: 10rem;
}

.wp-block-columns.same_height .wp-block-column p:last-of-type {
    margin-bottom: auto;
}

.wp-block-columns.same_height .wp-block-column {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}

.wp-block-columns.same_height .wp-block-column p:last-of-type ~ * {
    margin-top: 2rem;
}

.entry-content .products.acf-shop-products {
    margin: 3rem 0;
    margin-left: calc(-100vw / 12 * 1);
    margin-right: calc(-100vw / 12 * 1);
}
.entry-content .products.acf-shop-products a {
    text-decoration: none;
}

@media screen and (max-width: 768px) {
    .entry-content .products.acf-shop-products {
        margin-left: 0;
        margin-right: 0;
    }
}
