/*
Theme Name: Buro12
Theme URI: https://buro12.org
Author: JustPage
Author URI: https://justpage.pl
Description: Modern theme or Buro12
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8.2
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
*, *:before, *:after {
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

html {
    -webkit-text-size-adjust: 100%;
    overflow-x: hidden
}

body {
    margin: 0
}

img, picture, video, canvas, svg {
    display: block;
    max-width: 100%;
    height:auto;
}

input, button, textarea, select {
    font: inherit
}

p, h1, h2, h3, h4, h5, h6 {
    overflow-wrap: break-word
}

a {
    color: inherit;
    text-decoration: none
}

button, [role=button] {
    cursor: pointer
}

ul, ol {
    padding: 0;
    margin: 0;
    list-style: none
}

.glide {
    position: relative;
    width: 100%;
    box-sizing: border-box
}

.glide * {
    box-sizing: inherit
}

.glide__track {
    overflow: hidden
}

.glide__slides {
    position: relative;
    width: 100%;
    list-style: none;
    backface-visibility: hidden;
    transform-style: preserve-3d;
    touch-action: pan-Y;
    overflow: hidden;
    margin: 0;
    padding: 0;
    white-space: nowrap;
    display: flex;
    flex-wrap: nowrap;
    will-change: transform
}

.glide__slides--dragging {
    -webkit-user-select: none;
    user-select: none
}

.glide__slide {
    width: 100%;
    height: 100%;
    flex-shrink: 0;
    white-space: normal;
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent
}

.glide__slide a {
    -webkit-user-select: none;
    user-select: none;
    -webkit-user-drag: none;
    -moz-user-select: none;
    -ms-user-select: none
}

.glide__arrows, .glide__bullets {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none
}

.glide--rtl {
    direction: rtl
}

:root {
    --color-bg: #F9F1E4;
    --color-bg-accent: #7D0000;
    --color-bg-light: #FFF9F0;
    --color-bg-dark: #EBD9BC;
    --color-bg-footer: #2A2630;
    --color-text: #2A2630;
    --color-text-main: #7D0000;
    --color-text-accent: #FFF9F0;
    --color-text-active: #D4A9A0;
    --color-button: #C2D5EA;
    --color-button-hover: #8CA9C8;
    --color-paceholder: #969696;
    --shadow: 0 4px 20px 0 #0000000D;
    --font-sm: 16px;
    --font-base: 18px;
    --font-lg: 20px;
    --font-xl: 24px;
    --font-xxl: 36px;
    --font-xxxl: 60px;
    --lh-base: 1.5;
    --lh-medium: 1.3;
    --lh-xl: 47px;
    --paddings-x: clamp(20px, 10vw, 120px);
    --gap: 30px;
    --gapv: 50px;
    --urban: "Lato", sans-serif;
    --manro: "Manrope", sans-serif
}

html {
    scroll-behavior: smooth
}

[container] {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto
}

[base-padding] {
    padding: 70px var(--paddings-x)
}

[horizontal-padding] {
    padding-left: var(--paddings-x);
    padding-right: var(--paddings-x)
}

body {
    background: var(--color-bg);
    font-family: var(--manro);
    font-optical-sizing: auto;
    font-weight: 300;
    font-style: normal;
    line-height: var(--lh-base);
    font-size: var(--font-base);
    color: var(--color-text);
    overflow-x: hidden
}

[heading] {
    font-family: var(--urban);
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal
}

[base_page] {
    display: flex;
    flex-direction: column;
    gap: 30px
}

[grid] {
    display: grid;
    grid-gap: var(--gapv) var(--gap)
}

[col_2] {
    grid-template-columns:repeat(2, 1fr)
}

[col_3] {
    grid-template-columns:repeat(3, 1fr)
}

[col_width_all] {
    grid-column: 1 / -1
}

[number] {
    color: var(--color-text-main);
    font-family: var(--urban);
    font-weight: 500;
    font-size: 60px;
    line-height: var(--lh-medium);
    text-transform: uppercase
}

h1, h2, [hero] strong {
    font-family: var(--urban);
    font-weight: 500;
    font-style: normal;
    font-size: var(--font-xxl);
    line-height: var(--lh-xl);
    position: relative;
    display: inline-block;
    margin-bottom: 15px;
    cursor: default;
    color: var(--color-text-main)
}

h1:after, h2:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -15px;
    height: 3px;
    width: 70px;
    background-color: currentColor
}

[hero] h1:after {
    content: none
}

h3 {
    font-family: var(--urban);
    font-weight: 600;
    font-size: var(--font-xl);
    line-height: var(--lh-medium);
    cursor: default
}

h4 {
    font-family: var(--urban);
    font-weight: 600;
    font-size: var(--font-lg);
    line-height: var(--lh-medium);
    cursor: default
}

strong, b {
    font-weight: 600
}

button, [button] {
    cursor: pointer;
    display: inline-block;
    padding: 12px 45px;
    font-family: var(--urban);
    font-weight: 600;
    font-size: var(--font-lg);
    line-height: var(--lh-medium);
    text-align: center;
    text-transform: uppercase;
    color: inherit;
    background: var(--color-button);
    border: none;
    border-radius: 50px;
    width: fit-content;
    transition: all .2s ease-out
}

button:hover, [button]:hover {
    background: var(--color-button-hover)
}

button[bordered_btn], [button][bordered_btn] {
    cursor: pointer;
    color: var(--color-text-accent);
    background: none;
    border: 2px solid var(--color-text-accent)
}

button[bordered_btn]:hover, [button][bordered_btn]:hover {
    color: var(--color-text);
    background: var(--color-bg-light);
    border-color: var(--color-bg-light)
}

input, textarea {
    border: none;
    border-bottom: 1px solid var(--color-text);
    padding: 7px 0;
    font-size: inherit;
    line-height: inherit;
    width: 100%;
    background: inherit;
    outline:none;
}

input::placeholder, textarea::placeholder {
    color: var(--color-paceholder);
    opacity: 1
}

textarea {
    resize: vertical
}

textarea::-webkit-resizer {
    background: url("data:image/svg+xml,%3Csvg width='12' height='12' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 11L11 3' stroke='%232a262f' stroke-width='1'/%3E%3Cpath d='M6 11L11 6' stroke='%232a262f' stroke-width='1'/%3E%3C/svg%3E") no-repeat center;
    background-size: contain
}

[item] {
    background: var(--color-bg-light);
    padding: var(--gap);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--gap);
    box-shadow: var(--shadow)
}

ul li {
    position: relative
}

ul li:before {
    content: "";
    position: absolute
}

[navigation] {
    height: 0;
    opacity: 0;
    overflow: hidden
}

.js-dropdown_content {
    max-height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: all .3s ease
}

.js-dropdown.open .js-dropdown_content {
    padding: 30px;
    max-height: 1000px;
    opacity: 1
}

[custom-checkbox] {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    gap: 10px;
    -webkit-user-select: none;
    user-select: none
}
[custom-checkbox] a
{
    text-decoration:underline;
}
[custom-checkbox] a:hover
{
    text-decoration:none;
}
[custom-checkbox] input[type=checkbox] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    position: absolute;
    opacity: 0;
    pointer-events: none;
    width: 0
}

[custom-checkbox-mark] {
    width: 22px;
    height: 22px;
    border: 1px solid var(--color-text);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: border-color .2s ease;
    flex-shrink: 0
}

[custom-checkbox-mark]:after {
    content: "";
    width: 10px;
    height: 10px;
    background: var(--color-text);
    border-radius: 50%;
    opacity: 0;
    transition: opacity .2s ease
}

[custom-checkbox] input:checked + [custom-checkbox-mark]:after {
    opacity: 1
}

[hidden] {
    display: none !important
}

[hidden-on-desctop], [hidden-on-desctop][grid] {
    display: none
}

[hidden-on-mobile] {
    display: inline-block
}

[hidden-on-mobile][grid] {
    display: grid
}

/*.js-photos-slider .glide__bullets {*/
/*    display: none*/
/*}*/

@media (max-width: 1440px) {
    :root {
        --font-sm: 14px;
        --font-base: 16px;
        --font-lg: 18px;
        --font-xl: 22px;
        --font-xxl: 28px;
        --lh-xl: 36px
    }
}

@media (max-width: 1024px) {
    [base-padding] {
        padding: 40px var(--paddings-x)
    }

    [col_2] {
        grid-template-columns:1fr
    }

    [col_3] {
        grid-template-columns:repeat(2, 1fr)
    }

    .js-photos-slider .glide__bullets {
        display: flex
    }
}

.glide, .glide__track, .glide__slides {
    height: 100%
}

.glide__bullets {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 30px
}

[hero] .glide__bullets, [reviews] .glide__bullets {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translate(-50%)
}

.glide__bullet {
    width: 50px;
    height: 6px;
    background: var(--color-bg-accent);
    cursor: pointer;
    border: none;
    padding: 0;
    opacity: .5;
    transition: all .3s;
    border-radius: 0
}

[hero] .glide__bullet, [reviews] .glide__bullet {
    background: var(--color-bg-light)
}

.glide__bullet.glide__bullet--active {
    opacity: 1;
    width: 150px
}

.glide__bullet:hover {
    background: var(--color-bg-accent)
}

[hero] .glide__bullet:hover, [reviews] .glide__bullet:hover {
    background: var(--color-bg-light)
}

@media (max-width: 768px) {
    :root {
        --paddings-x: 20px
    }

    [col_2], [col_3] {
        grid-template-columns:1fr
    }

    button, a[button] {
        width: 100%
    }

    [hidden-on-desctop] {
        display: inline-block
    }

    [hidden-on-desctop][grid] {
        display: grid
    }
}

@media (max-width: 768px) {
    :root {
        --gap: 20px
    }

    [mobile_menu_el] {
        font-family: var(--urban);
        font-weight: 600;
        font-style: normal;
        font-size: var(--font-xxl);
        line-height: var(--lh-xl);
        text-transform: uppercase;
        position: relative;
        display: inline-block;
        margin-bottom: 15px;
        cursor: default;
        color: var(--color-text-main)
    }

    [base_page] {
        gap: 30px
    }
}

[text] [container] {
    display: flex;
    flex-direction: column;
    gap: 20px
}

[text] h2, [text] h1 {
    margin-bottom: 30px
}

@media (max-width: 1024px) {
    [text] [container] {
        gap: 15px
    }

    [text] h2, [text] h1 {
        margin-bottom: 20px
    }
}
[text] ul
{
    padding-left:30px;
    list-style:circle;
}
[top-m] {
    margin-top: var(--gap)
}

@media (max-width: 768px) {
    [hidden-on-mobile], [hidden-on-mobile][grid] {
        display: none
    }
}

header {
    padding: 15px var(--paddings-x);
    position: sticky;
    top: 0;
    background: inherit;
    z-index: 1000;
    box-shadow: var(--shadow);
    max-width: 100vw
}

header [container] {
    display: flex;
    justify-content: space-between;
    align-items: center
}

header [container] [menu] {
    display: flex;
    align-items: center;
    gap: 30px;
    color: var(--color-text-main)
}

header [container] [menu] ul {
    display: flex;
    align-items: center;
    gap: 30px
}

header [container] [menu] ul li.js-dropdown {
    cursor: pointer
}

header [container] [menu] ul li:not(.js-dropdown) {
    border-bottom: 1px solid transparent
}

[burger] {
    display: none;
    background: none;
    border: none;
    cursor: pointer
}

header [container] [menu] [menu-dropdown-header] {
    display: flex;
    gap: 5px;
    align-items: center
}

header [container] [menu] ul[menu-dropdown] {
    display: flex;
    flex-direction: column;
    position: absolute;
    background: var(--color-bg);
    align-items: flex-start;
    padding: 20px;
    width: max-content;
    border: 1px solid #EBD9BC;
    box-shadow: var(--shadow);
    top: 35px
}

header .js-dropdown [arrow] {
    transform: rotate(0);
    transition: all .5s ease
}

header .js-dropdown.open [arrow] {
    transform: rotate(180deg)
}

header [container] [menu] ul li[active] {
    color: var(--color-text-active)
}

header [container] [menu] ul li:not([active]):hover {
    border-color: var(--color-text-main)
}

@media (max-width: 1024px) {
    header a[social] {
        display: none
    }
}

@media (max-width: 860px) {
    header [container] .js-dropdown ul[menu-dropdown] {
        display: none
    }

    header [container] .js-dropdown.open ul[menu-dropdown] {
        display: flex
    }

    header [burger] {
        display: block;
        width: 40px;
        height: 40px;
        padding: 0
    }

    header [burger] .top_line, header [burger] .bottom_line {
        transition: transform .4s ease, opacity .4s ease;
        transform-origin: center
    }

    header.active [burger] .top_line {
        transform: rotate(45deg) translate(5px, 5px)
    }

    header.active [burger] .bottom_line {
        transform: rotate(-45deg) translate(21px) scaleX(-2)
    }

    header [container] [menu] ul[menu-dropdown] {
        position: relative;
        border: none;
        box-shadow: none;
        top: 0;
        padding-bottom: 0
    }

    header [container] [menu] ul[menu-content] {
        flex-direction: column;
        align-items: flex-start;
        position: absolute;
        right: 0;
        top: 100px;
        background: var(--color-bg);
        box-shadow: var(--shadow);
        width: max-content;
        padding: 20px;
        min-width: 375px;
        max-width: 100vw;
        transform: translate(100%);
        transition: all 1s ease-out;
        height: 100vh
    }

    header [container] [menu].open ul[menu-content] {
        display: flex;
        transform: translate(0)
    }

    [hidden-on-mobile] {
        display: none
    }
}

header button:hover {
    background: inherit
}

@media (max-width: 767px) {
    header [container] [menu] ul[menu-content] {
        width: 100vw;
        max-height: calc(100vh - 100px);
        transition: all .5s ease-out;
        overflow-y: scroll
    }
}

[hero] {
    height: calc(100vh - 100px)
}

[hero] [hero_item] {
    width: 100%;
    height: 100%;
    display: flex;
    color: var(--color-text-accent);
    align-items: center;
    justify-content: center;
    position: relative
}

[hero] [hero_item] img,
[hero] [hero_item] picture
{
    object-fit: cover;
    width: 100%;
    height: 100%
}

[hero] [hero_item] [blur] {
    position: absolute;
    width: 100%;
    height: 100%;
    background: var(--color-bg-footer);
    opacity: 40%
}

[hero] [hero_item] h1, 
[hero] [hero_item] strong {
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: var(--color-text-accent);
    text-transform: uppercase;
}

[about_us] [content] {
    display: flex;
    flex-direction: column;
    gap: var(--gap);
    justify-content: flex-start
}

[about_us] [photo] img {
    /*aspect-ratio: 1/1*/
    height:auto;
}

[services] {
    background: var(--color-bg-accent)
}

[services] h2 {
    color: var(--color-text-accent)
}

[services] [item] 
{
    min-height: 380px;
    position: relative;
}
[services] [item] form {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--gap);
    width:100%;
}

[services] [number] {
    position: relative;
    padding: 0 8px
}

[services] [number]:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 4px;
    width: 100%;
    background-color: currentColor
}

[services] [item] ul {
    margin-top: -15px
}

[services] [item] ul li {
    margin-left: 20px
}

[services] [item] ul li:before {
    left: -20px;
    top: -2px;
    content: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='7' height='7' viewBox='0 0 7 7' fill='none'><rect width='7' height='7' fill='%232a262f'/></svg>")
}

[services] [item] h2 {
    color: var(--color-text);
    margin-top: 4px
}

[services] [item] button {
    margin-top: auto
}

@media (max-width: 1024px) {
    [services] [item] {
        min-height: auto
    }
}

[options] [container] > div {
    display: flex;
    flex-direction: column;
    gap: var(--gap)
}

[options] [item] {
    padding: 0;
    gap: 0;
    width: 100%
}

[options] [item] [item-header] {
    display: flex;
    align-items: center;
    gap: var(--gap);
    border-bottom: 4px solid var(--color-text-main);
    width: 100%;
    padding: 15px 30px;
    color: var(--color-text-main)
}

[options] [item-header] svg {
    margin-left: auto
}

[options] [item] [item_content] p
{
    margin-bottom:20px;
}
[options] [item] [item_content] p[disclaimer]
{
    margin-top:20px;
}
[options] [item] [item_content] ul {
    display: flex;
    flex-direction: column;
    gap: 20px
}

[options] [item] [item_content] ul li {
    margin-left: 35px;
    min-height: 31px
}

[options] [item] [item_content] ul li:before {
    content: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='28' viewBox='0 0 22 28' fill='none'><path d='M1 20H0V21H1V20ZM21.7071 20.7071C22.0976 20.3166 22.0976 19.6834 21.7071 19.2929L15.3431 12.9289C14.9526 12.5384 14.3195 12.5384 13.9289 12.9289C13.5384 13.3195 13.5384 13.9526 13.9289 14.3431L19.5858 20L13.9289 25.6569C13.5384 26.0474 13.5384 26.6805 13.9289 27.0711C14.3195 27.4616 14.9526 27.4616 15.3431 27.0711L21.7071 20.7071ZM1 0H0V20H1H2V0H1ZM1 20V21H21V20V19H1V20Z' fill='%232a262f'/></svg>");
    top: -7px;
    left: -35px;
    vertical-align: middle
}

[options] [item] [item_content] [button] {
    margin-top: var(--gap)
}

[options] .js-dropdown [item_content].js-dropdown_content {
    padding: 0 30px
}

[options] .js-dropdown.open [item_content].js-dropdown_content {
    padding: 30px
}

[options] .js-dropdown [arrow] {
    transform: rotate(0);
    transition: all .5s ease
}

[options] .js-dropdown.open [arrow] {
    transform: rotate(180deg)
}

[projects] [project] h2 {
    margin-bottom: 0
}

[projects] [project] h2:after {
    content: none
}

[projects] [project] img {
    width: 100%;
    /*object-fit: cover*/
    height:auto;
}
@media (max-width: 600px)
{
    [projects] [project] img
    {
        width: 100%;
        object-fit: cover;
        height:400px;
    }
}
[projects] [project] [description] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 30px;
    color: var(--color-text-main);
    gap: 20px;
    cursor: pointer
}

[projects] [project] [description] h2 {
    cursor: pointer
}

[projects] [project] [description] [button] {
    padding: 0;
    width: 40px;
    min-width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative
}

[projects] [project] [description] [button] svg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-41%, -50%)
}

@media (max-width: 1024px) {
    [projects] [project] [description] {
        margin-top: 15px
    }

    [projects] [project] [description] [button] {
        width: 34px;
        min-width: 34px;
        height: 34px
    }
}

[reviews] [container] .glide {
    margin-top: var(--gap)
}

[reviews] [container] [item] {
    gap: 15px
}

[reviews] [container] [item] p {
    margin-bottom: 15px
}

[reviews] [container] [item] button {
    margin-top: auto
}

[reviews] .glide__track {
    margin-bottom: var(--gap)
}

[reviews] .glide__bullets {
    bottom: -20px
}

[reviews] .glide__bullet, [reviews] .glide__bullet:hover {
    background: var(--color-text-main)
}

[contacts] {
    background: var(--color-bg-dark)
}

[contacts] [container] div:first-child {
    display: flex;
    flex-direction: column;
    gap: var(--gap);
    color: var(--color-text-main);
    padding-top: 60px
}

[contacts] [container] div:first-child [socials] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap);
    margin-top: 10px
}

[contacts] [container] div:first-child [socials] h3 {
    width: 100%
}

[contacts] [form]
{
    padding: 60px;
    grid-column: span 2;
    background: var(--color-bg-light);
    box-shadow: var(--shadow);
    display: flex;
    flex-direction: column;
    gap: var(--gap);
}
[contacts] form {
    grid-column: span 2;
    background: var(--color-bg-light);
    
    
    display: flex;
    flex-direction: column;
    gap: var(--gap);
}

[contacts] form input, [contacts] form textarea {
    background: inherit;
    outline: none
}

[contacts] form textarea {
    height: 107px
}

[contacts] form a {
    text-decoration: underline
}

[modal-backdrop] {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #0009;
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 999
}

[modal] {
    min-width: 50vw;
    background: var(--color-bg-light);
    padding: 60px;
    display: flex;
    flex-direction: column;
    gap: 30px;
    box-shadow: 0 4px 20px #0000000d
}

@media (max-width: 1024px) {
    [socials] {
        margin-bottom: 40px
    }

    [contacts] [container] div:first-child {
        padding-top: 0
    }

    [contacts] form {
        padding: 20px
    }
}

footer[base-padding] {
    background: var(--color-bg-footer);
    padding-top: 22px;
    padding-bottom: 22px;
    color: var(--color-text-accent)
}

footer [container] {
    display: flex;
    justify-content: space-between
}

footer [container] a:first-of-type {
    color: inherit;
    text-decoration: underline;
    transition: all .2s
}

footer [container] a:first-of-type:hover {
    color: var(--color-text-active)
}

footer [container] a span {
    font: var(--manro)
}

@media (max-width: 1024px) {
    footer {
        padding: 20px 0
    }

    footer [container] {
        flex-direction: column;
        align-items: center;
        gap: 10px
    }
}

[not_found] {
    background: url(/wp-content/uploads/2025/09/project_1.png) no-repeat center center;
    background-size: cover;
    color: var(--color-text-accent);
    min-height: calc(100vh - 170px);
    position: relative
}

[not_found]:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
    background: #24242480;
    z-index: 1
}

[not_found] [container] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: var(--gap);
    position: relative;
    z-index: 2
}

[not_found] [number] {
    font-family: var(--urban);
    font-weight: 400;
    font-size: 200px;
    line-height: normal;
    text-transform: uppercase;
    color: var(--color-text-accent)
}

[not_found] h1 {
    color: var(--color-text-accent)
}

[not_found] [button] {
    color: var(--color-text);
    width: auto
}

@media (max-width: 860px) {
    [not_found] [number] {
        font-size: 140px
    }
}

[pagination] {
    font-family: var(--urban);
    font-weight: 500;
    font-size: var(--font-xl);
    line-height: var(--lh-base);
    color: var(--color-text-main);
    padding-bottom: 42px;
    padding-top: 42px
}

[pagination] [container] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px
}

[pagination] button {
    border: 1px solid transparent;
    padding: 0;
    background: inherit;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .3s
}

[pagination] button[active] {
    background: #d4a9a0
}

[pagination] button[arrows] {
    border-color: var(--color-text-main)
}

[pagination] button:hover {
    border-color: var(--color-text-main);
    background: #d4a9a0
}

[products] [product_description] {
    display: flex;
    flex-direction: column;
    gap: var(--gap);
    grid-column: span 2
}

[products] [product_item] {
    display: flex;
    flex-direction: column;
    gap: 10px
}

[products] [product_item] h2 {
    color: var(--color-text);
    margin-bottom: 0
}

[products] [product_item] h2:after {
    content: none
}

[products] [product_item] [price] {
    font-family: var(--urban);
    font-weight: 500;
    font-size: 24px;
    line-height: 150%;
    color: var(--color-text-main)
}

.js-dropdown_trigger {
    display: flex;
    justify-content: space-between;
    align-items: center
}

[product_item] .js-dropdown.open .js-dropdown_content[content] {
    padding: 30px 0 0
}

[product_item] .js-dropdown [arrow] {
    transition: all .3s
}

[product_item] .js-dropdown.open [arrow] {
    transform: rotate(180deg)
}

[product_item] [grid] {
    align-items: start
}

[product_item] [item_photo] {
    grid-column: span 2
}

[product_item] [item_description] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--gap);
    overflow-x: hidden
}

[product_item] [item_description] [product_item_slider] {
    display: none
}

[product_item] [item_description] [price] {
    border-top: 3px solid var(--color-text-main);
    color: var(--color-text-main);
    padding-top: var(--gap);
    width: 100%
}

[product_item] [options] [colors] {
    display: flex;
    margin: 36px auto;
    gap: 20px;
    flex-wrap: wrap
}

[product_item] [options] [materials] {
    display: flex;
    flex-direction: column;
    margin: 36px auto;
    gap: 20px;
    margin-bottom:0;
}

[product_item] [options] [color_option] {
    display: inline-block;
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 50%
}

[product_item] [options] [material_option] {
    display: flex;
    align-items: center;
    gap: 16px
}

[product_item] [glide_wrapper] {
    overflow: hidden;
    grid-row: span 7;
    grid-column: span 2;
    height: fit-content
}

[product_item] [glide_wrapper] .glide {
    overflow: visible;
    width: 83.5%
}

[product_item] [glide_wrapper] .glide__track {
    overflow: visible;
}

[product_item] [modal] [product_item_slider] {
    height: 60vh;
    max-width: 70vw
}

[product_item] [modal] {
    position: relative;
    padding: 0;
    z-index: 10000;
    background: none
}

[product_item] [modal] button {
    background: none;
    padding: 0;
    position: absolute;
    z-index: 10001
}

[product_item] [modal] button[data-glide-dir="<"] {
    left: -32px;
    top: calc(50% - 12px)
}

[product_item] [modal] button[data-glide-dir=">"] {
    right: -32px;
    top: calc(50% - 12px)
}

[product_item] [modal] button[close] {
    right: 20px;
    top: 20px
}

[product_item] [modal] img {
    object-fit: contain;
    max-width: 100%;
    max-height: 100%;
    display: block;
    margin-inline: auto;
}

@media (max-width: 1024px) {
    [product_item] [grid][col_3] {
        grid-template-columns:repeat(1, 1fr)
    }

    [product_item] [item_photo][grid][col_2] {
        grid-template-columns:repeat(2, 1fr)
    }

    [product_item] [glide_wrapper] {
        grid-column: auto;
        grid-row: auto
    }
}

@media (max-width: 778px) {
    [product_item] [item_photo] {
        display: none
    }

    [product_item] [item_description] [product_item_slider] {
        display: block
    }

    [product_item] [glide_wrapper] .glide {
        width: 100%
    }
}
.hidden-fields-container
{
    display:none;
}
div.wpcf7
{
    width:100%;
}
.wpcf7-form.invalid .wpcf7-response-output
{
    display:none;
}
.wpcf7-not-valid-tip
{
    font-size: 0.8em !important;
}
.wpcf7-form.sent .wpcf7-response-output
{
    position: absolute;
    inset: 0;
    margin: 0;
    background: green;
    display: grid;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: var(--color-bg-light);
    border: 0;
}
[services] [custom-checkbox]
{
    font-size: 14px;
}
[modal-backdrop]
{
    display:none;
}
.wpcf7-form.sent:not(.submiting) [modal-backdrop]
{
    display:flex;
}
[pagination][container]
{
    padding-block:60px;
}
@media (max-width: 778px)
{
    [pagination][container]
    {
        padding-block:40px;
    }
}
[pagination][container] .nav-links
{
    display: flex;
    gap: 10px;
    justify-content: center;
    align-items: center;
}
[pagination][container] .nav-links > *
{
    padding: 0;
    width: 40px;
    min-width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}
[pagination][container] .nav-links > *.current
{
    cursor: pointer;
    font-family: var(--urban);
    font-weight: 600;
    font-size: var(--font-lg);
    line-height: var(--lh-medium);
    text-align: center;
    text-transform: uppercase;
    color: inherit;
    background: var(--color-button);
    border: none;
    border-radius: 50px;
    transition: all .2s ease-out;
    cursor:default;
}

[pagination][container] .nav-links > *.current:hover 
{
    background: var(--color-button-hover)
}
.prev.page-numbers svg
{
    transform: scaleX(-1);
    transform-origin: center;
    transform-box: fill-box;
}
[text]:has(+[top-m])
{
    padding-bottom:0;
}
[top-m] + [text],
[products] + [text],
[text] + [products]
{
    padding-top:var(--gap);
}
[product-section] + [text]
{
    padding-top:0;
}
/*@media (min-width: 778px)*/
/*{*/
/*    [product-section]:has(+ [text])*/
/*    {*/
/*        padding-bottom:0;*/
/*    }*/
/*}*/
h2[bloglinktitle]
{
    font-size: 23px;
    line-height: 25px;
}
@media (max-width: 778px)
{
    h2[bloglinktitle]
    {
        font-size: 18px;
        line-height: 20px;
    }
}
[photo] + [contacts]
{
    margin-top:60px;
}
section[options] [col_2]
{
    grid-gap: 30px;
}
@media (max-width: 778px)
{
    section[options] [col_2]
    {
        grid-gap: 20px;
    }
}
section[options] h2
{
    margin-bottom:35px;
}