

/* Start:/local/templates/ethos_bri/styles.css?1781692251110176*/
@import url('https://fonts.googleapis.com/css2?family=Onest:wght@300;400&family=Oswald:wght@300;400&family=Playfair+Display:ital@1&display=swap');

:root {
    --eb-text: #111111;
    --eb-bg: #ffffff;
    --eb-invert: #ffffff;
    --eb-muted: rgba(17, 17, 17, 0.62);
    --bg-secondary: #f8f8f8;
    --eb-sidebar-width: 400px;
    --eb-transition-button: 500ms;
    --eb-transition-link: 400ms;
    --eb-transition-card: 500ms;
}

* {
    box-sizing: border-box;
}

html,
body {
    margin: 0;
    min-height: 100%;
    background: var(--eb-bg);
    color: var(--eb-text);
    font-family: Onest, Arial, sans-serif;
}

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

.eb-layout {
    --eb-sidebar-current-width: var(--eb-sidebar-width);
    --eb-sidebar-position: fixed;
    --eb-sidebar-flex: 0 0 var(--eb-sidebar-current-width);
    --eb-sidebar-flex-direction: column;
    --eb-sidebar-align: stretch;
    --eb-sidebar-justify: flex-start;
    --eb-sidebar-height: 100dvh;
    --eb-sidebar-padding: 32px 40px;
    --eb-sidebar-overflow-x: hidden;
    --eb-sidebar-overflow-y: auto;
    --eb-main-margin-left: var(--eb-sidebar-width);
    --eb-main-width: calc(100% - var(--eb-sidebar-width));
    display: block;
    min-height: 100vh;
}

.eb-sidebar {
    position: var(--eb-sidebar-position);
    z-index: 300;
    top: 0;
    left: 0;
    display: flex;
    flex: var(--eb-sidebar-flex);
    flex-direction: var(--eb-sidebar-flex-direction);
    align-items: var(--eb-sidebar-align);
    justify-content: var(--eb-sidebar-justify);
    width: var(--eb-sidebar-current-width);
    min-width: var(--eb-sidebar-current-width);
    max-width: var(--eb-sidebar-current-width);
    height: var(--eb-sidebar-height);
    padding: var(--eb-sidebar-padding);
    overflow-x: var(--eb-sidebar-overflow-x);
    overflow-y: var(--eb-sidebar-overflow-y);
    background: var(--eb-bg);
    scrollbar-width: thin;
}



.eb-sidebar-diamond {
    position: fixed;
    z-index: 0;
    left: 64px;
    width: 640px;
    max-width: none;
    height: auto;
    pointer-events: none;
    user-select: none;
    top: 0;
}

.eb-sidebar-diamond-bot {
    position: fixed;
    z-index: 0;
    left: 64px;
    width: 600px;
    max-width: none;
    height: auto;
    pointer-events: none;
    user-select: none;
    bottom: -340px;
    left: 0;
}

.eb-sidebar::after {
    left: -220px;
    bottom: -260px;
}

.eb-sidebar__top {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.eb-logo {
    display: block;
    width: 201px;
    height: 60px;
}

.eb-logo img {
    display: block;
    width: 100%;
    height: 100%;
}

.eb-lang {
    display: none;
    align-items: center;
    justify-content: center;
    gap: 2px;
    width: 52px;
    height: 28px;
    border: 1px solid var(--eb-text);
    border-radius: 999px;
    font: 400 10px/16px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-lang span + span {
    opacity: 0.3;
}

.eb-sidebar__scroll {
    position: relative;
    z-index: 1;
    min-height: 0;
    flex: 1 1 auto;
    margin-top: 60px;
    padding-bottom: 32px;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: thin;
    transition: opacity 240ms ease, visibility 240ms ease;
}

.eb-menu {
    position: relative;
    z-index: 1;
    width: 100%;
    min-height: 0;
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    margin-top: 0;
    padding-bottom: 0;
    overflow: visible;
    font: 300 20px/24px Oswald, Arial, sans-serif;
    text-transform: uppercase;
    scrollbar-width: thin;
    transition: opacity 240ms ease, visibility 240ms ease;
}

.eb-menu__main {
    display: grid;
    gap: 12px;
}

.eb-menu__mark {
    display: block;
    width: 36px;
    height: 9px;
    margin-bottom: 20px;
    background:
        linear-gradient(var(--eb-text), var(--eb-text)) 0 0 / 36px 1px no-repeat,
        linear-gradient(var(--eb-text), var(--eb-text)) 0 8px / 20px 1px no-repeat;
}

.eb-menu a {
    display: inline-block;
    width: fit-content;
    max-width: 100%;
    justify-self: start;
    opacity: 0.42;
    transition: transform var(--eb-transition-link) ease, opacity var(--eb-transition-link) ease;
}

.eb-menu__item {
    display: grid;
    gap: 8px;
    margin-bottom: 12px;
}

.eb-menu a.is-active {
    opacity: 1;
}

.eb-menu.is-submenu-open .eb-menu__main {
    display: none;
}

.eb-menu__submenu-panel {
    display: none;
}

.eb-menu.is-submenu-open .eb-menu__submenu-panel.is-active {
    display: grid;
    gap: 20px;
}

.eb-menu__back {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 5px;
    border: 0;
    color: var(--eb-text);
    background: transparent;
    font: inherit;
    text-transform: uppercase;
    cursor: pointer;
}

.eb-menu__back::before {
    content: "";
    width: 9px;
    height: 9px;
    border-bottom: 1px solid currentColor;
    border-left: 1px solid currentColor;
    transform: rotate(45deg);
}

body:not(.is-home-page):not(:has(.eb-hero)) .eb-menu:has(a:hover) a {
    transform: none;
    opacity: 0.42;
}

body:not(.is-home-page):not(:has(.eb-hero)) .eb-menu:has(a:hover) a.is-active {
    opacity: 0.42;
}

body:not(.is-home-page):not(:has(.eb-hero)) .eb-menu:has(a:hover) a:hover {
    opacity: 1;
}

.eb-submenu {
    display: grid;
    gap: 14px;
    font-size: 20px;
    line-height: 24px;
}

.eb-submenu a {
    opacity: 0.34;
}

.eb-sidebar__cta {
    position: relative;
    z-index: 1;
    flex: 0 0 auto;
    margin-top: 0;
    padding-top: 16px;
    min-height: 56px;
}

.eb-sidebar__cta-content {
    transition: opacity 300ms ease-out, transform 300ms ease-out;
}

.eb-sidebar__cta--compact .eb-sidebar__cta-content {
    position: static;
}

.eb-sidebar__copy {
    margin-top: 36px;
    max-width: 100%;
}

.eb-sidebar__copy h1 {
    margin: 0 0 12px;
    max-width: 100%;
    font-family: Oswald, Arial, sans-serif;
    font-weight: 400;
    text-transform: uppercase;
    overflow-wrap: break-word;
    font-size: 18px;
    line-height: 1.22;
}

.eb-sidebar__copy-line {
    display: block;
}

.eb-sidebar__copy p {
    margin: 0 0 16px;
    max-width: 319px;
    font-family: Onest, Arial, sans-serif;
    font-weight: 300;
    font-size: 13px;
    line-height: 1.5;
}

@media (min-width: 1680px) and (max-width: 1919px) {
    .eb-sidebar__copy h1 {
        margin-bottom: 16px;
        font-size: 24px;
        line-height: 1.28;
    }

    .eb-sidebar__copy p {
        font-size: 14px;
        line-height: 1.55;
    }
}

@media (min-width: 1920px) {
    .eb-sidebar__copy {
        margin-top: 72px;
    }

    .eb-sidebar__copy h1 {
        margin-bottom: 24px;
        font-size: 34px;
        line-height: 46px;
    }

    .eb-sidebar__copy p {
        margin-bottom: 24px;
        font-size: 16px;
        line-height: 26px;
    }
}

/* Ниже «полной» ширины: плотнее меню и отступы, чтобы колонка чаще умещалась без прокрутки по высоте. */
@media (min-width: 1026px) and (max-width: 1919px) {
    .eb-sidebar__scroll {
        margin-top: 36px;
        padding-bottom: 12px;
    }

    .eb-menu__main {
        gap: 8px;
    }

    .eb-menu__mark {
        margin-bottom: 12px;
    }

    .eb-menu {
        font-size: 18px;
        line-height: 22px;
    }

    .eb-submenu {
        font-size: 18px;
        line-height: 22px;
    }
}

.eb-consultation-cta {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    gap: 40px;
    opacity: 0;
    pointer-events: none;
    transform: translateY(24px);
    transition: opacity 300ms ease-out, transform 300ms ease-out;
}

.eb-sidebar__cta.is-consultation-open .eb-consultation-cta {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.eb-sidebar.is-consultation-open .eb-sidebar__scroll {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.eb-consultation-cta__links {
    display: grid;
    gap: 20px;
    font: 300 20px/24px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-consultation-cta__links a {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    gap: 10px;
}

.eb-button {
    --eb-button-color: var(--eb-text);
    --eb-button-hover-color: var(--eb-invert);
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 7px 20px 9px;
    border: 1px solid currentColor;
    border-radius: 999px;
    color: var(--eb-button-color);
    background: linear-gradient(var(--eb-button-color), var(--eb-button-color)) 0 0 / 100% 0 no-repeat;
    font: 300 20px/24px Oswald, Arial, sans-serif;
    text-transform: uppercase;
    overflow: hidden;
    transition: color var(--eb-transition-button) ease, background-size var(--eb-transition-button) ease;
}

button.eb-button {
    margin: 0;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    color: var(--eb-button-color);
}

.eb-button:hover,
a:hover .eb-button {
    background-size: 100% 100%;
    color: var(--eb-button-hover-color);
}

.eb-roll-text {
    position: relative;
    display: inline-block;
    overflow: hidden;
    vertical-align: top;
}

.eb-roll-text__inner,
.eb-roll-text::after {
    display: block;
    transition: transform var(--eb-transition-button) ease;
}

.eb-roll-text::after {
    content: attr(data-roll-text);
    position: absolute;
    top: 100%;
    left: 0;
    white-space: nowrap;
}

a:hover .eb-roll-text__inner,
.eb-button:hover .eb-roll-text__inner {
    transform: translateY(-110%);
}

a:hover .eb-roll-text::after,
.eb-button:hover .eb-roll-text::after {
    transform: translateY(-100%);
}

/* Переключатели «Консультация» / «Заказать» → «Закрыть»: одна строка без дубля roll-text. */
[data-consultation].is-consultation-open [data-consultation-trigger] .eb-roll-text::after,
.eb-product-card.is-card-cta-open [data-product-card-cta-trigger] .eb-roll-text::after,
.eb-product-drawer.is-cta-open [data-product-cta-open] .eb-roll-text::after {
    content: none;
}

[data-consultation].is-consultation-open [data-consultation-trigger] .eb-roll-text__inner,
[data-consultation].is-consultation-open [data-consultation-trigger]:hover .eb-roll-text__inner,
[data-consultation].is-consultation-open [data-consultation-trigger]:focus-visible .eb-roll-text__inner,
.eb-product-card.is-card-cta-open [data-product-card-cta-trigger] .eb-roll-text__inner,
.eb-product-card.is-card-cta-open [data-product-card-cta-trigger]:hover .eb-roll-text__inner,
.eb-product-card.is-card-cta-open [data-product-card-cta-trigger]:focus-visible .eb-roll-text__inner,
.eb-product-drawer.is-cta-open [data-product-cta-open] .eb-roll-text__inner,
.eb-product-drawer.is-cta-open [data-product-cta-open]:hover .eb-roll-text__inner,
.eb-product-drawer.is-cta-open [data-product-cta-open]:focus-visible .eb-roll-text__inner {
    transform: none;
}

.eb-main {
    min-width: 0;
    margin-left: var(--eb-main-margin-left);
    width: var(--eb-main-width);
}

.eb-menu-toggle,
.eb-mobile-menu {
    display: none;
}

.eb-mobile-menu__close {
    appearance: none;
    -webkit-appearance: none;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    cursor: pointer;
    flex-shrink: 0;
}

.eb-mobile-menu__close:focus-visible {
    outline: 2px solid var(--eb-text);
    outline-offset: 4px;
}

.eb-hero {
    position: relative;
    min-height: 100vh;
    overflow: hidden;
    color: var(--eb-invert);
    background: #8fb6bd url(/local/templates/ethos_bri/./assets/hero-main.png) center / cover no-repeat;
}

.eb-hero video,
.eb-page-hero video,
.eb-lookbook-tile__video,
.eb-article-media video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.eb-hero__video,
.eb-page-hero__video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background: #8fb6bd;
    z-index: 1;
}

.eb-hero__video iframe,
.eb-page-hero__video iframe,
.eb-hero__video-el {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.eb-hero__video iframe {
    transform: scale(1.01);
}

.eb-hero video.eb-hero__video-el {
    object-fit: cover;
}

.eb-hero__video-el--mobile {
    display: none;
}

.eb-hero::before,
.eb-hero::after {
    content: "";
    position: absolute;
    right: 0;
    left: 0;
    pointer-events: none;
}

.eb-hero::before {
    top: 0;
    height: 360px;
    background: linear-gradient(180deg, rgba(17, 17, 17, 0.4), rgba(17, 17, 17, 0));
}

.eb-hero::after {
    bottom: 0;
    height: 150px;
    background: linear-gradient(180deg, rgba(17, 17, 17, 0), rgba(17, 17, 17, 0.4));
}

.eb-hero__content {
    position: relative;
    z-index: 1;
    width: min(450px, calc(100% - 96px));
    padding: 32px 0 0 48px;
}

.eb-hero__title {
    margin: 0 0 20px;
    font: italic 400 80px/88px "Playfair Display", Georgia, serif;
}

.eb-hero__text {
    margin: 0 0 28px;
    font: 300 16px/26px Onest, Arial, sans-serif;
}

.eb-hero__mobile-copy {
    display: none;
}

.eb-hero .eb-button {
    --eb-button-color: var(--eb-invert);
    --eb-button-hover-color: var(--eb-text);
}

.eb-hero__footer {
    position: absolute;
    z-index: 1;
    right: 48px;
    bottom: 20px;
    left: 48px;
    display: flex;
    justify-content: space-between;
    gap: 32px;
    font: 300 14px/18px Oswald, Arial, sans-serif;
    text-transform: uppercase;
    opacity: 0.8;
}

.eb-hero__links {
    display: flex;
    gap: 32px;
}

.eb-page {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-height: 100vh;
    background: var(--eb-bg);
    position: relative;
}

.eb-page-hero {
    position: relative;
    z-index: 11;
    min-height: 419px;
    display: flex;
    align-items: flex-end;
    gap: 40px;
    padding: 48px;
    overflow: hidden;
    color: var(--eb-invert);
    background: #a9b2ad var(--hero-image) center / cover no-repeat;
}

.eb-page-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(17, 17, 17, 0), rgba(17, 17, 17, 0.4));
}

.eb-page-hero__inner {
    position: relative;
    z-index: 1;
    width: min(773px, 100%);
}

.eb-page-hero__breadcrumbs,
.eb-page-breadcrumbs {
    position: relative;
    z-index: 1;
    margin: 0;
    font: 300 14px/18px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-page-hero__breadcrumbs {
    position: absolute;
    top: 40px;
    left: 48px;
    color: var(--eb-invert);
}

.eb-page-breadcrumbs {
    padding: 40px 48px 0;
    color: rgba(17, 17, 17, 0.48);
}

.eb-kicker {
    position: relative;
    z-index: 11;
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 0 0 16px;
    font: 300 20px/24px Oswald, Arial, sans-serif;
    text-transform: uppercase;
    color: rgba(17, 17, 17, 0.4);
    background: var(--eb-bg);
    opacity: 1;
}

.eb-hero__footer-scrab {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.eb-footer-legal-name {
    text-transform: none;
}

@media (max-width: 1025px) {
    .eb-footer-legal-name {
        flex-basis: 100%;
    }
}

.eb-hero__footer-scrab span {
    cursor: default;
    transition: none;
}

.eb-kicker::after {
    content: "";
    width: 36px;
    height: 1px;
    background: currentColor;
}

.eb-page-hero .eb-kicker {
    color: var(--eb-invert);
    background: transparent;
    opacity: 1;
}

.eb-page-title {
    margin: 0;
    font: italic 400 48px/52px "Playfair Display", Georgia, serif;
}

.eb-page-hero__lead {
    max-width: 560px;
    margin: 20px 0 0;
    font: 300 16px/26px Onest, Arial, sans-serif;
}

.eb-page-lead {
    margin: 0;
    max-width: 520px;
    font: italic 400 48px/52px "Playfair Display", Georgia, serif;
}

.eb-section {
    padding: 60px 48px;
}

.eb-text-section {
    display: grid;
    grid-template-columns: 296px minmax(0, 1fr);
    gap: 40px;
    align-items: start;
}

.eb-text-section .eb-button--icon-diamond {
    margin-top: 20px;
}

.eb-section-title {
    position: relative;
    z-index: 11;
    margin: 0 0 32px;
    background: var(--eb-bg);
    font: 400 38px/46px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-section-subtitle {
    position: relative;
    z-index: 11;
    margin: 0 0 24px;
    background: var(--eb-bg);
    font: 400 24px/26px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-copy {
    position: relative;
    z-index: 11;
    margin: 0;
    background: var(--eb-bg);
    font: 300 16px/26px Onest, Arial, sans-serif;
}

.eb-copy + .eb-copy {
    margin-top: 24px;
}

.eb-value-list {
    display: grid;
    gap: 32px;
}

.eb-about-feature-list {
    display: grid;
    gap: 32px;
}

.eb-image-band {
    position: relative;
    z-index: 11;
    min-height: 419px;
    background: var(--bg-secondary, #f8f8f8) var(--band-image) center / cover no-repeat;
}

.eb-faq-list {
    display: grid;
    gap: 4px;
}

.eb-faq-item {
    display: grid;
    grid-template-columns: 296px minmax(0, 669px);
    gap: 40px;
    align-items: start;
    padding: 60px 48px;
    background: var(--eb-bg);
}

.eb-faq-item__number {
    display: flex;
    align-items: center;
    gap: 16px;
    color: rgba(17, 17, 17, 0.4);
    font: 300 20px/24px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-faq-item__number::after {
    content: "";
    width: 36px;
    height: 1px;
    background: currentColor;
}

.eb-faq-item__content {
    display: grid;
    gap: 32px;
}

.eb-faq-item h2 {
    margin: 0;
    font: 400 28px/34px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-faq-item p {
    margin: 0;
    font: 300 16px/26px Onest, Arial, sans-serif;
}


@media (max-width: 1025px) {
    .eb-faq-item {
        grid-template-columns: 1fr;
        gap: 24px;
        padding: 40px 16px;
    }

    .eb-faq-item__content {
        gap: 24px;
    }

    .eb-faq-item h2 {
        font-size: 24px;
        line-height: 30px;
    }
}

.eb-lookbook-hero {
    position: relative;
    aspect-ratio: 1101 / 600;
    min-height: 520px;
    overflow: hidden;
    background-color: #6a848c;
    background-image: var(--lookbook-image);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    color: var(--eb-invert);
    isolation: isolate;
    z-index: 40;
}

.eb-lookbook-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background: linear-gradient(180deg, rgba(17, 17, 17, 0) 0%, rgba(17, 17, 17, 0.4) 100%);
    pointer-events: none;
}

.eb-lookbook-hero__breadcrumbs {
    position: absolute;
    z-index: 1;
    top: 40px;
    left: 48px;
    margin: 0;
    font: 300 14px/18px Oswald, Arial, sans-serif;
    letter-spacing: 0;
    text-transform: uppercase;
}

.eb-lookbook-hero__content {
    position: absolute;
    z-index: 1;
    left: 48px;
    bottom: 48px;
    width: min(502px, calc(100% - 96px));
}

.eb-lookbook-hero__content p {
    margin: 0;
    font: 400 24px/26px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-lookbook-hero__content span {
    display: block;
    width: 36px;
    height: 1px;
    margin: 12px 0 16px;
    background: rgba(255, 255, 255, 0.4);
}

.eb-lookbook-hero__content h1 {
    margin: 0;
    font: italic 400 48px/52px Playfair Display, Georgia, serif;
}

.eb-lookbook-stream {
    display: grid;
    gap: 4px;
}

.eb-lookbook-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px;
}

.eb-lookbook-frame {
    position: relative;
    isolation: isolate;
    z-index: 40;
    display: block;
    min-width: 0;
    margin: 0;
    aspect-ratio: 548.5 / 420;
    overflow: hidden;
    background: var(--bg-secondary, #f8f8f8) var(--lookbook-image) var(--lookbook-position, center) / cover no-repeat;
}

.eb-lookbook-frame--product {
    color: var(--eb-invert);
}

/* Нижний градиент под подписью: товарная плитка, PNG из макета, широкий кадр. */
.eb-lookbook-frame--overlay {
    color: var(--eb-invert);
}

.eb-lookbook-frame--product::after,
.eb-lookbook-frame--overlay::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    height: 45%;
    background: linear-gradient(180deg, rgba(17, 17, 17, 0), rgba(17, 17, 17, 0.4));
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    mask-image: linear-gradient(to bottom, transparent 0%, #000 100%);
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 100%);
    pointer-events: none;
}

.eb-lookbook-frame__caption {
    position: absolute;
    z-index: 2;
    right: 48px;
    bottom: 36px;
    left: 48px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    color: var(--eb-invert);
}

.eb-lookbook-frame__caption span {
    min-width: 0;
    font: 400 16px/24px Onest, Arial, sans-serif;
}

.eb-lookbook-frame__caption b {
    flex: 0 0 auto;
    font: 400 24px/26px Oswald, Arial, sans-serif;
    letter-spacing: 0;
    text-transform: uppercase;
}

.eb-lookbook-frame--wide {
    aspect-ratio: auto;
    min-height: 600px;
}

.eb-lookbook-note {
    position: absolute;
    top: 0;
    right: 0;
    width: min(548.5px, 100%);
    padding: 24px 32px;
    display: grid;
    gap: 12px;
    background: var(--eb-bg);
    color: var(--eb-text);
}

.eb-lookbook-note--glass {
    top: auto;
    right: auto;
    bottom: 32px;
    left: 20px;
    width: min(405px, calc(100% - 40px));
    border-radius: 20px;
    background: rgba(65, 44, 44, 0.2);
    color: var(--eb-invert);
}

.eb-lookbook-note span {
    font: 400 14px/22px Onest, Arial, sans-serif;
}

.eb-lookbook-note b {
    font: 400 20px/24px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-lookbook-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px;
}

.eb-lookbook-tile {
    position: relative;
    display: block;
    min-height: 420px;
    padding: 40px 48px;
    overflow: hidden;
    background: var(--bg-secondary, #f8f8f8) var(--tile-image) center / cover no-repeat;
}

.eb-lookbook-tile::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--tile-image) center / cover no-repeat;
    transition: transform var(--eb-transition-card) ease;
}

.eb-lookbook-tile:hover::before {
    transform: scale(1.035);
}

.eb-lookbook-tile__video {
    z-index: 0;
}

.eb-lookbook-tile--wide {
    grid-column: 1 / -1;
    min-height: 400px;
}

.eb-lookbook-tile__caption {
    position: relative;
    z-index: 1;
    width: min(260px, 100%);
}

.eb-lookbook-tile__caption h2 {
    margin: 0 0 16px;
    font: 400 14px/22px Onest, Arial, sans-serif;
}

.eb-lookbook-tile__caption h2::after {
    content: "";
    display: block;
    width: 36px;
    height: 1px;
    margin-top: 16px;
    background: rgba(17, 17, 17, 0.3);
}

.eb-lookbook-tile__caption p {
    margin: 0;
    font: 400 20px/24px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-product-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0 4px;
    padding: 40px 48px 0;
}

.eb-product-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 24px;
    padding-bottom: 60px;
    cursor: pointer;
    touch-action: manipulation;
    z-index: 30;
}

.eb-product-card__content {
    display: block;
}

.eb-product-card__image {
    position: relative;
    overflow: hidden;
    aspect-ratio: 1;
    background: var(--bg-secondary, #f8f8f8);
}

.eb-product-card__image::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--product-image) center / cover no-repeat;
    mix-blend-mode: multiply;
    transition: opacity var(--eb-transition-card) ease, transform var(--eb-transition-card) ease;
}

.eb-product-card:hover .eb-product-card__image::before {
    transform: scale(1.04);
}

.eb-product-card.is-card-cta-open .eb-product-card__image::before {
    opacity: 0;
    transform: none;
}

.eb-product-card__cta {
    position: absolute;
    z-index: 1;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 24px;
    padding: 30px;
    background: #fff;
    opacity: 0;
    pointer-events: none;
    transform: translateY(16px);
    transition: opacity var(--eb-transition-card) ease, transform var(--eb-transition-card) ease;
}

.eb-product-card.is-card-cta-open .eb-product-card__cta {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.eb-product-card__cta-title {
    max-width: 230px;
    color: var(--eb-muted);
    font: 300 16px/26px Onest, Arial, sans-serif;
}

.eb-product-card__cta-links {
    display: grid;
    gap: 20px;
    font: 300 20px/24px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-product-card__cta-links a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.eb-consultation-cta__links a::before,
.eb-product-card__cta-links a::before,
.eb-product-detail-cta__links a::before {
    content: "";
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    background: currentColor;
    mask: var(--social-icon) center / var(--social-icon-size, 16px 16px) no-repeat;
    -webkit-mask: var(--social-icon) center / var(--social-icon-size, 16px 16px) no-repeat;
}

.eb-consultation-cta__links a:nth-child(1),
.eb-product-card__cta-links a:nth-child(1),
.eb-product-detail-cta__links a:nth-child(1) {
    --social-icon: url('/local/templates/ethos_bri/./assets/social-tg.svg');
    --social-icon-size: 16px 14px;
}

.eb-consultation-cta__links a:nth-child(2),
.eb-product-card__cta-links a:nth-child(2),
.eb-product-detail-cta__links a:nth-child(2) {
    --social-icon: url('/local/templates/ethos_bri/./assets/social-whatsapp.svg');
    --social-icon-size: 15px 15px;
}

.eb-consultation-cta__links a:nth-child(3),
.eb-product-card__cta-links a:nth-child(3),
.eb-product-detail-cta__links a:nth-child(3) {
    --social-icon: url('/local/templates/ethos_bri/./assets/social-email.svg');
    --social-icon-size: 14px 12px;
}

.eb-consultation-cta__links a:nth-child(4),
.eb-product-card__cta-links a:nth-child(4),
.eb-product-detail-cta__links a:nth-child(4) {
    --social-icon: url('/local/templates/ethos_bri/./assets/social-phone.svg');
    --social-icon-size: 14px 14px;
}

.eb-product-card h2,
.eb-product-card__title {
    display: block;
    margin: 0 0 16px;
    min-height: 44px;
    padding-right: 40px;
    font: 400 14px/22px Onest, Arial, sans-serif;
}

.eb-product-card__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-right: 8px;
    margin-top: 20px;
}

.eb-price {
    font: 400 24px/26px Oswald, Arial, sans-serif;
    text-transform: uppercase;
    white-space: nowrap;
}

.eb-button--sm {
    min-height: 36px;
    padding: 5px 16px 7px;
    margin-right: 20px;
}

.eb-pagination {
    display: flex;
    gap: 8px;
    padding: 20px 48px;
}

.eb-pagination a {
    display: inline-flex;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    font: 300 20px/24px Oswald, Arial, sans-serif;
    opacity: 0.4;
    transition: opacity var(--eb-transition-link) ease, transform var(--eb-transition-link) ease;
}

.eb-pagination a.is-active {
    border: 1px solid var(--eb-text);
    opacity: 1;
}

.eb-pagination a:hover {
    transform: scale(1.06);
    opacity: 1;
}

.eb-gallery-sections {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px;
}

.eb-gallery-section-card {
    display: grid;
    min-height: 240px;
    align-content: end;
    gap: 12px;
    padding: 32px;
    background: var(--bg-secondary, #f8f8f8);
    transition: transform var(--eb-transition-card) ease;
}

.eb-gallery-section-card:hover {
    transform: translateY(-4px);
}

.eb-gallery-section-card span {
    color: var(--eb-muted);
    font: 300 14px/18px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-gallery-section-card strong {
    font: 400 32px/38px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-articles {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 80px 40px;
    padding: 60px 48px 72px;
}

.eb-article-card {
    display: grid;
    gap: 32px;
    z-index: 30;
}

.eb-article-card__image {
    aspect-ratio: 482 / 280;
    background: var(--bg-secondary, #f8f8f8) var(--article-image) center / cover no-repeat;
    transition: transform var(--eb-transition-card) ease;
}

.eb-article-card:hover .eb-article-card__image {
    transform: scale(1.02);
}

.eb-article-card h2 {
    margin: 0 0 16px;
    font: 400 24px/26px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-article-card p {
    margin: 0 0 20px;
    color: var(--eb-muted);
    font: 300 16px/26px Onest, Arial, sans-serif;
}

.eb-article {
    padding: 80px 48px 0;
}

.eb-article-media {
    position: relative;
    overflow: hidden;
}

.eb-article__inner {
    width: min(669px, 100%);
    margin: 0 auto;
}

.eb-article__image {
    width: 100%;
    aspect-ratio: 669 / 390;
    margin: 0 0 40px;
    background: var(--bg-secondary, #f8f8f8) var(--article-detail-image) center / cover no-repeat;
}

.eb-back-link {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    min-height: 20px;
    margin-bottom: 32px;
    color: rgba(17, 17, 17, 0.4);
    font: 400 16px/20px Oswald, Arial, sans-serif;
    text-transform: uppercase;
    transition: color var(--eb-transition-link) ease, opacity var(--eb-transition-link) ease;
}

.eb-back-link:hover {
    color: var(--eb-text);
}

.eb-back-link::before {
    content: "";
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    background: currentColor;
    mask: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.5 5L7.5 10L12.5 15' stroke='black' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 20px 20px no-repeat;
    -webkit-mask: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.5 5L7.5 10L12.5 15' stroke='black' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 20px 20px no-repeat;
}

.eb-article h1 {
    margin: 0 0 16px;
    font: 400 38px/46px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-article time {
    display: block;
    margin-bottom: 32px;
    color: var(--eb-muted);
    font: 300 14px/22px Onest, Arial, sans-serif;
}

.eb-article p {
    margin: 0 0 24px;
    font: 300 16px/26px Onest, Arial, sans-serif;
}

.eb-article-block .eb-article__intro {
    margin-bottom: 32px;
    font: 300 18px/30px Onest, Arial, sans-serif;
}

.eb-article-block h2 {
    margin: 48px 0 16px;
    font: 400 24px/30px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-article-block h2:first-of-type {
    margin-top: 8px;
}

.eb-article-block h3 {
    margin: 32px 0 12px;
    font: 400 18px/24px Oswald, Arial, sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.eb-article-block .eb-article__tip {
    padding-left: 20px;
    border-left: 1px solid rgba(17, 17, 17, 0.12);
}

.eb-article-block .eb-article__tip strong {
    font-weight: 500;
}

.eb-article-block p strong {
    font-weight: 500;
}

.eb-article-block .eb-article__summary {
    margin: 0 0 32px;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 16px;
}

.eb-article-block .eb-article__summary li {
    position: relative;
    padding-left: 20px;
    font: 300 16px/26px Onest, Arial, sans-serif;
}

.eb-article-block .eb-article__summary li strong {
    font-weight: 500;
}

.eb-article-block .eb-article__summary li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 11px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
    opacity: 0.35;
}

.eb-article-block .eb-article__outro {
    margin-top: 8px;
    font: 300 18px/30px Onest, Arial, sans-serif;
}

.eb-article-more {
    padding: 56px 48px 72px;
    border-top: 1px solid rgba(17, 17, 17, 0.08);
    overflow-x: clip;
}

.eb-article-more__title {
    margin: 0 0 28px;
    font: 400 24px/28px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-article-more__track {
    display: flex;
    gap: 20px;
    overflow-x: auto;
    overflow-y: visible;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    padding-bottom: 8px;
    scroll-padding-inline: 16px;
}

.eb-article-more__card {
    flex: 0 0 calc((100% - 40px) / 3);
    min-width: 220px;
    display: grid;
    gap: 14px;
    scroll-snap-align: start;
    color: inherit;
    text-decoration: none;
}

.eb-article-more__image {
    position: relative;
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: var(--bg-secondary, #f8f8f8);
}

.eb-article-more__image::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--article-image) center / cover no-repeat;
    transition: transform var(--eb-transition-card) ease;
}

.eb-article-more__card:hover .eb-article-more__image::before {
    transform: scale(1.04);
}

.eb-article-more__body {
    display: grid;
    gap: 8px;
}

.eb-article-more__name {
    font: 400 16px/20px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-article-more__text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    color: var(--eb-muted);
    font: 300 16px/26px Onest, Arial, sans-serif;
}

@media (max-width: 1024px) {
    .eb-article-more__card {
        flex: 0 0 calc((100% - 20px) / 2);
        min-width: 200px;
    }
}

.eb-article-block .eb-article__compare {
    width: 100%;
    margin: 0 0 32px;
    border-collapse: collapse;
    font: 300 15px/22px Onest, Arial, sans-serif;
}

.eb-article-block .eb-article__compare th,
.eb-article-block .eb-article__compare td {
    padding: 14px 16px;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid rgba(17, 17, 17, 0.1);
}

.eb-article-block .eb-article__compare thead th {
    font: 400 14px/18px Oswald, Arial, sans-serif;
    text-transform: uppercase;
    color: rgba(17, 17, 17, 0.55);
}

.eb-article-block .eb-article__compare tbody th {
    font-weight: 500;
    width: 28%;
}

.eb-product-detail {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 553px;
    min-height: 100vh;
    background: var(--eb-bg);
}

.eb-product-detail__media {
    min-height: 553px;
    background: var(--bg-secondary, #f8f8f8) var(--product-detail-image, none) center / min(76%, 620px) no-repeat;
}

.eb-product-detail__panel {
    position: sticky;
    top: 0;
    align-self: start;
    max-height: 100dvh;
    padding: 48px;
    overflow-y: auto;
    background: var(--eb-bg);
}

.eb-product-detail__breadcrumbs,
.eb-article__breadcrumbs {
    padding: 0;
    margin-bottom: 28px;
}

.eb-product-detail h1 {
    margin: 0 0 40px;
    font: 400 38px/46px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-product-meta {
    display: grid;
    gap: 8px;
    margin-bottom: 20px;
    font: 300 14px/22px Onest, Arial, sans-serif;
}

.eb-product-meta__row {
    display: flex;
    gap: 16px;
    align-items: center;
}

.eb-product-meta__label {
    width: 85px;
    color: var(--eb-muted);
}

.eb-materials {
    display: flex;
    gap: 4px;
}

/* Чипы с подписью (drawer галереи): перенос строк как в макете, без круглых 24×24 от легаси. */
.eb-materials--chips {
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 8px;
    width: 100%;
    max-width: 100%;
}

/* Легаси: только круглые свотчи-прямые потомки (см. /product/racquet-ring/). */
.eb-materials:not(.eb-materials--chips) > a,
.eb-materials:not(.eb-materials--chips) > button,
.eb-materials:not(.eb-materials--chips) > span {
    width: 24px;
    height: 24px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: var(--material) center / cover no-repeat;
    cursor: pointer;
}

.eb-materials:not(.eb-materials--chips) > a.is-active,
.eb-materials:not(.eb-materials--chips) > button.is-active,
.eb-materials:not(.eb-materials--chips) > span:first-child {
    border: 1.5px solid var(--eb-text);
}

.eb-materials .eb-material-chip {
    display: inline-flex;
    width: auto;
    height: 34px;
    align-items: center;
    gap: 8px;
    padding: 6px 12px 6px 7px;
    border: 1px solid rgba(17, 17, 17, 0.1);
    border-radius: 999px;
    background: var(--eb-bg);
    color: var(--eb-text);
    font: 300 14px/22px Onest, Arial, sans-serif;
}

.eb-materials .eb-material-chip.is-active {
    border-color: var(--eb-text);
}

.eb-material-chip__swatch {
    display: block;
    width: 20px;
    height: 20px;
    border: 0;
    border-radius: 50%;
    background: var(--material) center / cover no-repeat;
}

.eb-materials .eb-material-chip__label {
    width: auto;
    height: auto;
    border: 0;
    border-radius: 0;
    background: none;
    cursor: inherit;
}

.eb-product-detail .eb-price {
    display: block;
    margin: 0;
}

.eb-product-detail__order {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

.eb-product-drawer {
    position: fixed;
    /* Выше сайдбара (.eb-sidebar z-index 300), ниже открытого моб. меню (400). */
    z-index: 350;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.eb-product-drawer.is-open {
    pointer-events: auto;
}

.eb-product-drawer__backdrop {
    position: absolute;
    inset: 0;
    padding: 0;
    border: 0;
    background: rgba(17, 17, 17, 0.38);
    opacity: 0;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    transition: opacity 320ms ease;
}

.eb-product-drawer.is-open .eb-product-drawer__backdrop {
    opacity: 1;
}

.eb-product-drawer__panel {
    position: absolute;
    top: 0;
    right: 0;
    width: min(553px, 100%);
    max-width: 100vw;
    height: 100dvh;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    /* Домашний индикатор iOS и нижний край — иначе контент не докручивается до конца. */
    padding-bottom: env(safe-area-inset-bottom, 0px);
    background: var(--eb-bg);
    transform: translateX(100%);
    transition: transform 320ms ease;
}

.eb-product-drawer.is-open .eb-product-drawer__panel {
    transform: translateX(0);
}

@media (min-width: 1026px) {
    .eb-product-drawer {
        left: var(--eb-sidebar-width);
    }
}

.eb-product-detail--drawer {
    display: flex;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: 100%;
    flex-direction: column;
    overflow-x: hidden;
}

.eb-product-detail--drawer .eb-product-detail__media {
    position: relative;
    min-height: 553px;
    flex: 0 0 553px;
    transition: background var(--eb-transition-card) ease;
}

.eb-product-drawer__slider {
    position: absolute;
    right: 24px;
    left: 24px;
    top: 50%;
    display: flex;
    justify-content: space-between;
    transform: translateY(-50%);
    pointer-events: none;
}

.eb-product-drawer__slider-button {
    position: relative;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid rgba(17, 17, 17, 0.18);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.82);
    cursor: pointer;
    pointer-events: auto;
    transition: opacity var(--eb-transition-button) ease, border-color var(--eb-transition-button) ease;
}

.eb-product-drawer__slider-button::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    border-bottom: 1px solid var(--eb-text);
    border-left: 1px solid var(--eb-text);
    transform: translate(-35%, -50%) rotate(45deg);
}

.eb-product-drawer__slider-button--next::before {
    transform: translate(-65%, -50%) rotate(225deg);
}

.eb-product-drawer__slider-button:hover {
    border-color: var(--eb-text);
}

.eb-product-drawer__slider-button:disabled {
    opacity: 0;
    pointer-events: none;
}

.eb-product-detail--drawer .eb-product-detail__panel {
    position: relative;
    top: auto;
    display: grid;
    min-height: calc(100dvh - 553px);
    grid-template-rows: auto auto;
    align-content: start;
    gap: 20px;
    max-height: none;
    flex: 0 0 auto;
    overflow: visible;
}

.eb-product-detail__swap {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 32px;
    align-items: stretch;
}

.eb-product-detail--drawer h1 {
    margin-bottom: 24px;
    overflow-wrap: anywhere;
    font-size: 34px;
    line-height: 40px;
}

.eb-product-detail__intro {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 300ms ease-out, transform 300ms ease-out;
}

.eb-product-drawer__close {
    position: absolute;
    top: 24px;
    right: 24px;
    z-index: 1;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.eb-product-drawer__close::before,
.eb-product-drawer__close::after {
    content: "";
    position: absolute;
    top: 23px;
    left: 12px;
    width: 24px;
    height: 1px;
    background: rgba(17, 17, 17, 0.35);
    transition: background var(--eb-transition-button) ease, transform var(--eb-transition-button) ease;
}

.eb-product-drawer__close::before {
    transform: rotate(45deg);
}

.eb-product-drawer__close::after {
    transform: rotate(-45deg);
}

.eb-product-drawer__close:hover::before {
    transform: rotate(135deg);
    background: var(--eb-text);
}

.eb-product-drawer__close:hover::after {
    transform: rotate(45deg);
    background: var(--eb-text);
}

.eb-product-detail-cta {
    display: grid;
    padding: 0;
    align-content: start;
    gap: 20px;
    background: var(--eb-bg);
}

.eb-product-drawer:not(.is-cta-open) .eb-product-detail-cta {
    display: none;
}

.eb-product-drawer.is-cta-open .eb-product-detail__intro {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
    opacity: 0;
    pointer-events: none;
}

@media (min-width: 1026px) {
    .eb-product-drawer.is-cta-open .eb-product-about {
        display: none;
    }
}

.eb-product-drawer.is-cta-open .eb-product-detail-cta {
    display: grid;
    opacity: 1;
    pointer-events: auto;
    background: #ffffff;
}

.eb-product-detail-cta__text {
    margin: 0;
    max-width: 276px;
    color: var(--eb-muted);
    font: 400 14px/22px Onest, Arial, sans-serif;
}

.eb-product-detail-cta__links {
    display: grid;
    gap: 20px;
    font: 300 20px/24px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-product-detail-cta__links a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

html.eb-product-drawer-open,
body.eb-product-drawer-open {
    overflow: hidden;
}

@media (prefers-reduced-motion: reduce) {
    .eb-product-drawer__backdrop {
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }
}

.eb-contacts-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 40px clamp(24px, 4vw, 64px);
    align-items: start;
}

.eb-contact-item span {
    display: block;
    margin-bottom: 8px;
    color: var(--eb-muted);
    font: 300 16px/26px Onest, Arial, sans-serif;
}

.eb-contact-item > a {
    display: block;
    max-width: 100%;
    padding-right: min(12px, 2vw);
    font: 400 38px/46px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-socials {
    display: flex;
    gap: 8px;
}

.eb-socials__link {
    display: inline-flex;
    width: 46px;
    height: 46px;
    align-items: center;
    justify-content: center;
}

.eb-socials__link img {
    display: block;
    width: 24px;
    height: 24px;
    object-fit: contain;
}

.eb-requisites {
    display: grid;
    gap: 32px;
    margin-top: 80px;
    padding-top: 80px;
    border-top: 1px solid rgba(17, 17, 17, 0.1);
}

.eb-requisites h2 {
    margin: 0;
    font: 400 24px/26px Oswald, Arial, sans-serif;
    text-transform: uppercase;
}

.eb-requisites__list {
    display: grid;
    gap: 16px;
}

.eb-requisites__row {
    display: grid;
    grid-template-columns: 248px minmax(0, 1fr);
    gap: 4px;
    font: 300 16px/26px Onest, Arial, sans-serif;
}

.eb-requisites__row span:first-child {
    color: var(--eb-muted);
}

@media (max-width: 950px) {
    .eb-requisites__row {
        grid-template-columns: 1fr;
        gap: 2px;
    }
}

.eb-page-footer {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 20px 48px 28px;
    border-top: 1px solid rgba(17, 17, 17, 0.1);
    background: var(--eb-bg);
    color: rgba(17, 17, 17, 0.4);
    font: 300 14px/18px Oswald, Arial, sans-serif;
    text-transform: uppercase;
    z-index: 100 !important;
}

.eb-page-footer nav {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 32px;
}

.eb-page-footer a:hover {
    color: var(--eb-text);
    opacity: 1;
}

@media (min-width: 1026px) {
    .eb-page-footer .eb-hero__footer-scrab {
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: baseline;
        gap: 10px;
        max-width: min(720px, 70%);
    }

    .eb-page-footer .eb-footer-legal-name {
        flex-basis: auto;
        width: auto;
        opacity: 1;
    }
}

@media (max-width: 1200px) {
    .eb-text-section {
        display: block;
    }

    .eb-contact-item > a {
        font-size: 30px;
        line-height: 36px;
    }
}

@media (max-width: 1025px) {
    .eb-layout {
        --eb-sidebar-current-width: 100%;
        --eb-sidebar-position: relative;
        --eb-sidebar-flex: none;
        --eb-sidebar-flex-direction: row;
        --eb-sidebar-align: center;
        --eb-sidebar-justify: space-between;
        --eb-sidebar-height: 130px;
        --eb-sidebar-padding: 0px 16px 0;
        --eb-sidebar-overflow-y: hidden;
        --eb-main-margin-left: 0;
        --eb-main-width: 100%;
    }

    .eb-logo {
        width: 168px;
        height: 50px;
    }

    .eb-sidebar-diamond {
        display: none;
    }

    .eb-sidebar__top {
        width: 100%;
    }

    .eb-sidebar__scroll,
    .eb-menu,
    .eb-sidebar__cta {
        display: none;
    }

    .eb-lang {
        display: none;
    }

    .eb-menu-toggle {
        display: inline-flex;
        margin-left: auto;
        width: 48px;
        height: 48px;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 7px;
        border-radius: 999px;
    }

    .eb-menu-toggle span {
        width: 24px;
        height: 1px;
        background: var(--eb-text);
    }

    .eb-mobile-menu {
        position: fixed;
        z-index: 20;
        inset: 0;
        display: block;
        margin: 0;
        padding: 0;
        overflow: hidden;
        background: transparent;
        visibility: hidden;
        pointer-events: none;
    }

    .eb-mobile-menu.eb-mobile-menu-open {
        visibility: visible;
        pointer-events: auto;
        z-index: 400;
        background: var(--eb-bg);
    }

    .eb-mobile-menu[data-eb-menu-closing="1"] {
        visibility: visible;
        pointer-events: none;
        z-index: 400;
        background: var(--eb-bg);
    }

    .eb-mobile-menu__sheet {
        display: flex;
        flex-direction: column;
        gap: 40px;
        min-height: 100%;
        box-sizing: border-box;
        padding: 48px 32px 40px;
        background: var(--eb-bg);
        transform: translateX(100%);
        transition: transform var(--eb-transition-link) ease;
        will-change: transform;
    }

    .eb-mobile-menu.eb-mobile-menu-open .eb-mobile-menu__sheet {
        transform: translateX(0);
    }

    .eb-mobile-menu__top {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 24px;
    }

    .eb-mobile-menu__scroll-stack[data-consultation] {
        position: relative;
        display: flex;
        flex: 1 1 auto;
        flex-direction: column;
        gap: 36px;
        min-height: 0;
    }

    .eb-mobile-menu__nav {
        display: grid;
        gap: 22px;
        flex: 1 1 auto;
        align-content: start;
        align-self: stretch;
        min-height: 0;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        font: 300 22px/24px Oswald, Arial, sans-serif;
        text-transform: uppercase;
    }

    .eb-mobile-menu__main,
    .eb-mobile-menu__submenu-panel.is-active {
        display: grid;
        gap: 22px;
    }

    .eb-mobile-menu__submenu-panel,
    .eb-mobile-menu__nav.is-submenu-open .eb-mobile-menu__main {
        display: none;
    }

    .eb-mobile-menu a,
    .eb-mobile-menu__nav:has(a:hover) a,
    .eb-mobile-menu__nav:has(a:hover) a.is-active {
        opacity: 0.5;
    }

    .eb-mobile-menu__nav:has(a:hover) a:hover,
    .eb-mobile-menu a.is-active,
    .eb-mobile-menu .eb-logo,
    .eb-mobile-menu .eb-button {
        opacity: 1;
    }

    .eb-mobile-menu__nav:has(a:hover) a.is-active:not(:hover) {
        opacity: 0.5;
    }

    .eb-mobile-menu__cta,
    .eb-mobile-menu__cta-bar {
        display: flex;
        flex-direction: column;
        flex-shrink: 0;
        gap: 20px;
    }

    .eb-mobile-menu__messengers {
        display: flex;
        flex-wrap: wrap;
        gap: 16px 24px;
        font: 300 18px/22px Oswald, Arial, sans-serif;
        text-transform: uppercase;
    }

    .eb-mobile-menu__messengers a {
        opacity: 1;
    }

    .eb-mobile-menu__sub {
        padding-left: 20px;
        font-size: 16px;
        line-height: 18px;
    }

    .eb-mobile-menu__close {
        position: relative;
        width: 28px;
        height: 28px;
        opacity: 1;
    }

    .eb-mobile-menu__close::before,
    .eb-mobile-menu__close::after {
        content: "";
        position: absolute;
        top: 13px;
        left: 2px;
        width: 24px;
        height: 1px;
        background: var(--eb-text);
    }

    .eb-mobile-menu__close::before {
        transform: rotate(45deg);
    }

    .eb-mobile-menu__close::after {
        transform: rotate(-45deg);
    }

    .eb-lang {
        width: 72px;
        height: 40px;
    }

    .eb-hero {
        min-height: calc(100dvh - 130px);
    }

    .eb-hero__content {
        padding: 32px 32px 0;
    }

    .eb-hero__footer {
        right: 32px;
        left: 32px;
    }

    .eb-page-hero {
        min-height: 520px;
        padding: 40px 32px;
    }

    .eb-page-hero__breadcrumbs {
        top: 32px;
        left: 32px;
    }

    .eb-section {
        padding: 56px 32px;
    }

    .eb-page-breadcrumbs {
        padding: 32px 32px 0;
    }

    .eb-product-detail__breadcrumbs,
    .eb-article__breadcrumbs {
        padding: 0;
    }

    .eb-lookbook-hero__breadcrumbs {
        top: 32px;
        left: 32px;
    }

    .eb-lookbook-hero__content {
        left: 32px;
        bottom: 40px;
        width: min(502px, calc(100% - 64px));
    }

    .eb-product-grid,
    .eb-articles {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding-right: 32px;
        padding-left: 32px;
    }

    .eb-lookbook-tile {
        min-height: 360px;
        padding: 32px;
    }

    .eb-articles {
        gap: 56px 24px;
    }

    .eb-product-detail {
        display: block;
    }

    .eb-product-detail__media {
        min-height: 520px;
        background-size: min(72%, 520px);
    }

    .eb-product-detail__panel {
        position: relative;
        max-height: none;
        padding: 40px 32px 56px;
    }

    .eb-contacts-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .eb-page-footer {
        padding-right: 32px;
        padding-left: 32px;
    }
}

@media (max-width: 480px) {
    .eb-product-detail--drawer h1 {
        margin-bottom: 32px;
        font-size: 26px;
        line-height: 32px;
    }

    .eb-product-meta {
        gap: 8px;
        margin-bottom: 20px;
        font-size: 13px;
        line-height: 20px;
    }

    .eb-materials:not(.eb-materials--chips) {
        gap: 8px;
    }

    .eb-materials:not(.eb-materials--chips) > a,
    .eb-materials:not(.eb-materials--chips) > button,
    .eb-materials:not(.eb-materials--chips) > span {
        width: 28px;
        height: 28px;
    }

    .eb-product-detail__order {
        flex: 0 0 auto;
        align-items: stretch;
        flex-direction: column;
        gap: 28px;
    }

    .eb-product-detail .eb-price {
        font-size: 20px;
        line-height: 22px;
    }

    .eb-product-detail__order .eb-button {
        width: 100%;
        height: 48px;
        min-height: 48px;
        justify-content: center;
        font-size: 18px;
        line-height: 22px;
    }

    .eb-product-drawer__slider {
        right: 8px;
        left: 8px;
    }

    .eb-product-drawer__slider-button {
        width: 48px;
        height: 48px;
        border: 0;
        background: transparent;
    }

    .eb-layout {
        --eb-sidebar-current-width: 100%;
        --eb-sidebar-position: relative;
        --eb-sidebar-flex: none;
        --eb-sidebar-flex-direction: row;
        --eb-sidebar-align: center;
        --eb-sidebar-justify: space-between;
        --eb-sidebar-height: 60px;
        --eb-sidebar-padding: 0px 16px 0;
        --eb-sidebar-overflow-y: hidden;
        --eb-main-margin-left: 0;
        --eb-main-width: 100%;
    }

    .eb-logo {
        width: 168px;
        height: 50px;
    }

    .eb-sidebar__scroll,
    .eb-menu,
    .eb-sidebar__cta {
        display: none;
    }

    .eb-menu-toggle {
        display: inline-flex;
        width: 48px;
        height: 48px;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 7px;
        border-radius: 999px;
    }

    .eb-menu-toggle span {
        width: 24px;
        height: 1px;
        background: var(--eb-text);
    }

    .eb-mobile-menu {
        position: fixed;
        z-index: 20;
        inset: 0;
        display: block;
        margin: 0;
        padding: 0;
        overflow: hidden;
        background: transparent;
        visibility: hidden;
        pointer-events: none;
    }

    .eb-mobile-menu.eb-mobile-menu-open {
        visibility: visible;
        pointer-events: auto;
        z-index: 400;
        background: var(--eb-bg);
    }

    .eb-mobile-menu__sheet {
        display: flex;
        flex-direction: column;
        gap: 40px;
        min-height: 100%;
        box-sizing: border-box;
        padding: 20px 16px 32px;
        background: var(--eb-bg);
        transform: translateX(100%);
        transition: transform var(--eb-transition-link) ease;
        will-change: transform;
    }

    .eb-mobile-menu.eb-mobile-menu-open .eb-mobile-menu__sheet {
        transform: translateX(0);
    }

    .eb-mobile-menu__scroll-stack[data-consultation] {
        position: relative;
        display: flex;
        flex: 1 1 auto;
        flex-direction: column;
        gap: 36px;
        min-height: 0;
    }

    .eb-mobile-menu__nav {
        display: grid;
        gap: 22px;
        flex: 1 1 auto;
        align-content: start;
        align-self: stretch;
        min-height: 0;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        font: 300 22px/24px Oswald, Arial, sans-serif;
        text-transform: uppercase;
    }

    .eb-mobile-menu a,
    .eb-mobile-menu__nav:has(a:hover) a,
    .eb-mobile-menu__nav:has(a:hover) a.is-active {
        opacity: 0.5;
    }

    .eb-mobile-menu__nav:has(a:hover) a:hover,
    .eb-mobile-menu a.is-active,
    .eb-mobile-menu .eb-logo,
    .eb-mobile-menu .eb-button {
        opacity: 1;
    }

    .eb-mobile-menu__nav:has(a:hover) a.is-active:not(:hover) {
        opacity: 0.5;
    }

    .eb-mobile-menu__cta,
    .eb-mobile-menu__cta-bar {
        display: flex;
        flex-direction: column;
        flex-shrink: 0;
        gap: 20px;
    }

    .eb-mobile-menu__close {
        position: relative;
        width: 28px;
        height: 28px;
        margin: 0;
        padding: 0;
        border: 0;
        background: transparent;
        color: inherit;
        cursor: pointer;
        appearance: none;
        opacity: 1;
    }

    .eb-mobile-menu__close::before,
    .eb-mobile-menu__close::after {
        content: "";
        position: absolute;
        top: 13px;
        left: 2px;
        width: 24px;
        height: 1px;
        background: var(--eb-text);
    }

    .eb-mobile-menu__close::before {
        transform: rotate(45deg);
    }

    .eb-mobile-menu__close::after {
        transform: rotate(-45deg);
    }

    .eb-lang {
        width: 72px;
        height: 40px;
    }

    .eb-hero {
        min-height: 0;
        background: none;
        color: var(--eb-text);
    }

    .eb-hero::before,
    .eb-hero::after {
        display: none;
    }

    .eb-hero__video {
        bottom: auto;
        height: calc(100dvh - 130px);
    }

    .eb-hero__content {
        position: relative;
        display: flex;
        min-height: calc(100dvh - 130px);
        width: 100%;
        align-items: flex-end;
        overflow: hidden;
        color: var(--eb-invert);
        background: transparent;
        padding: 0 16px 32px;
    }

    .eb-hero__video-el--desktop {
        display: none;
    }

    .eb-hero__video-el--mobile {
        display: block;
    }

    .eb-hero__content::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(17, 17, 17, 0) 45%, rgba(17, 17, 17, 0.48) 100%);
        pointer-events: none;
    }

    .eb-hero__desktop-copy {
        display: none;
    }

    .eb-hero__mobile-copy {
        position: relative;
        z-index: 1;
        display: block;
        width: min(340px, 100%);
        min-height: 230px;
    }

    .eb-hero__mobile-actions {
        width: min(260px, 100%);
    }

    .eb-hero__mobile-copy h1 {
        margin: 0 0 24px;
        font: 400 30px/36px Oswald, Arial, sans-serif;
        text-transform: uppercase;
    }

    .eb-hero__mobile-copy p {
        margin: 0 0 24px;
        color: rgba(255, 255, 255, 0.72);
        font: 300 16px/26px Onest, Arial, sans-serif;
    }

    .eb-hero__mobile-content > h1,
    .eb-hero__mobile-content > p {
        transition: opacity 300ms ease-out, transform 300ms ease-out;
    }

    .eb-hero__mobile-copy.is-consultation-open .eb-hero__mobile-content > h1,
    .eb-hero__mobile-copy.is-consultation-open .eb-hero__mobile-content > p {
        opacity: 0;
        pointer-events: none;
        transform: translateY(-16px);
    }

    .eb-hero__mobile-cta {
        right: auto;
        bottom: 0;
        width: min(260px, 100%);
        color: var(--eb-invert);
    }

    .eb-hero__mobile-copy.is-consultation-open .eb-hero__mobile-cta {
        position: relative;
        right: auto;
        bottom: auto;
        left: auto;
        margin-top: 20px;
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0);
    }

    .eb-hero__mobile-copy.is-consultation-open .eb-hero__mobile-actions {
        margin-top: 20px;
    }

    .eb-hero__title {
        font-size: 56px;
        line-height: 62px;
    }

    .eb-hero__footer {
        position: static;
        padding: 20px 16px 28px;
        background: var(--eb-bg);
        color: rgba(17, 17, 17, 0.42);
        opacity: 1;
        flex-direction: column;
        gap: 12px;
    }

    .eb-hero__links {
        display: grid;
        gap: 12px;
    }

    .eb-page-hero {
        min-height: 340px;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-end;
        gap: 16px;
        padding: 24px 16px;
    }

    .eb-page-hero__breadcrumbs {
        top: 24px;
        left: 16px;
        font-size: 12px;
        line-height: 16px;
    }

    .eb-page-breadcrumbs {
        padding: 24px 16px 0;
        font-size: 12px;
        line-height: 16px;
    }

    .eb-product-detail__breadcrumbs,
    .eb-article__breadcrumbs {
        padding: 0;
    }

    .eb-page-title,
    .eb-page-lead {
        font-size: 34px;
        line-height: 38px;
    }

    .eb-page:has(.eb-article-block) .eb-page-hero {
        min-height: 300px;
    }

    .eb-page:has(.eb-article-block) .eb-page-title {
        font-size: 26px;
        line-height: 30px;
    }

    .eb-page:has(.eb-article-block) .eb-page-hero__lead {
        display: none;
    }

    .eb-section {
        padding: 40px 16px;
    }

    .eb-text-section {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .eb-section-title {
        font-size: 30px;
        line-height: 36px;
    }

    .eb-image-band {
        min-height: 287px;
    }

    .eb-lookbook-hero {
        min-height: 420px;
        aspect-ratio: 375 / 420;
    }

    .eb-lookbook-hero__breadcrumbs {
        top: 24px;
        left: 16px;
        font-size: 12px;
        line-height: 16px;
    }

    .eb-lookbook-hero__content {
        left: 16px;
        bottom: 32px;
        width: calc(100% - 32px);
    }

    .eb-lookbook-hero__content p {
        font-size: 20px;
        line-height: 24px;
    }

    .eb-lookbook-hero__content h1 {
        font-size: 34px;
        line-height: 38px;
    }

    .eb-lookbook-row {
        grid-template-columns: 1fr;
    }

    .eb-lookbook-frame,
    .eb-lookbook-frame--wide {
        aspect-ratio: 375 / 420;
        min-height: 0;
    }

    .eb-lookbook-frame__caption {
        right: 20px;
        bottom: 24px;
        left: 20px;
        align-items: flex-end;
        gap: 12px;
    }

    .eb-lookbook-frame__caption span {
        font-size: 14px;
        line-height: 20px;
    }

    .eb-lookbook-frame__caption b {
        font-size: 20px;
        line-height: 24px;
    }

    .eb-lookbook-note {
        width: 100%;
        padding: 18px 20px;
    }

    .eb-lookbook-note--glass {
        bottom: 16px;
        left: 16px;
        width: calc(100% - 32px);
    }

    .eb-lookbook-grid,
    .eb-product-grid,
    .eb-articles,
    .eb-gallery-sections,
    .eb-contacts-grid {
        grid-template-columns: 1fr;
    }

    .eb-lookbook-grid {
        gap: 4px;
    }

    .eb-lookbook-tile,
    .eb-lookbook-tile--wide {
        min-height: 287px;
        padding: 16px;
    }

    .eb-product-grid {
        gap: 0;
        padding: 16px 16px 0;
    }

    .eb-product-card {
        padding-bottom: 34px;
    }

    .eb-product-card h2 {
        min-height: auto;
        line-height: 20px;
    }

    .eb-articles {
        gap: 48px;
        padding: 40px 16px 56px;
    }

    .eb-pagination {
        padding: 20px 16px;
        overflow-x: auto;
    }

    .eb-back-link {
        margin-bottom: 16px;
        font-size: 16px;
        line-height: 20px;
        gap: 4px;
    }

    .eb-back-link::before {
        width: 20px;
        height: 20px;
        flex-basis: 20px;
    }

    .eb-article {
        padding: 40px 16px 0;
    }

    .eb-article-more {
        padding: 40px 16px 48px;
    }

    .eb-article-more__title {
        margin-bottom: 20px;
        font-size: 20px;
        line-height: 24px;
    }

    .eb-article-more__track {
        gap: 16px;
        margin-inline: 0;
        padding-inline: 0;
        padding-bottom: 4px;
        scrollbar-width: none;
    }

    .eb-article-more__track::-webkit-scrollbar {
        display: none;
    }

    .eb-article-more__card {
        flex: 0 0 min(280px, calc(100vw - 32px));
        min-width: 0;
        scroll-snap-align: start;
    }

    .eb-article-more__text {
        display: block;
        overflow: visible;
        -webkit-line-clamp: unset;
        -webkit-box-orient: unset;
    }

    .eb-article__image {
        margin-bottom: 28px;
    }

    .eb-gallery-section-card {
        min-height: 180px;
        padding: 24px;
    }

    .eb-gallery-section-card strong {
        font-size: 26px;
        line-height: 30px;
    }

    .eb-contact-item > a {
        overflow-wrap: anywhere;
        font-size: 26px;
        line-height: 32px;
    }

    .eb-requisites {
        margin-top: 48px;
        padding-top: 48px;
    }

    .eb-requisites__row {
        grid-template-columns: 1fr;
    }

    .eb-product-detail {
        display: block;
    }

    .eb-product-detail__media {
        min-height: 375px;
        background-size: min(84%, 360px);
    }

    .eb-product-detail__panel {
        position: relative;
        max-height: none;
        padding: 24px 16px 32px;
    }

    .eb-product-drawer__close {
        top: 8px;
        right: 8px;
    }

    .eb-product-drawer__slider {
        right: 16px;
        left: 16px;
    }

    .eb-product-drawer__slider-button {
        width: 40px;
        height: 40px;
    }

    .eb-product-detail__swap {
        min-height: 0;
    }

    .eb-product-detail__order {
        align-items: flex-start;
        flex-direction: column;
    }

    .eb-product-detail h1 {
        font-size: 30px;
        line-height: 36px;
    }

    .eb-contact-item > a {
        font-size: 30px;
        line-height: 36px;
        white-space: normal;
    }

    .eb-requisites {
        margin-top: 40px;
        padding-top: 40px;
    }

    .eb-requisites__row {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    .eb-page-footer {
        align-items: flex-start;
        flex-direction: column;
        padding: 20px 16px 28px;
    }

    .eb-page-footer nav {
        flex-wrap: wrap;
        gap: 12px 20px;
        display: grid;
    }
    /* Типографика drawer — раскладка скролла см. финальный блок @media (max-width: 1025px). */
    .eb-product-detail--drawer h1 {
        margin-bottom: 32px;
        font-size: 26px;
        line-height: 32px;
    }

    .eb-product-meta {
        gap: 8px;
        margin-bottom: 20px;
        font-size: 13px;
        line-height: 20px;
    }

    .eb-materials:not(.eb-materials--chips) {
        gap: 8px;
    }

    .eb-materials:not(.eb-materials--chips) > a,
    .eb-materials:not(.eb-materials--chips) > button,
    .eb-materials:not(.eb-materials--chips) > span {
        width: 28px;
        height: 28px;
    }

    .eb-product-detail__order {
        flex: 0 0 auto;
        align-items: stretch;
        flex-direction: column;
        gap: 28px;
    }

    .eb-product-detail .eb-price {
        font-size: 20px;
        line-height: 22px;
    }

    .eb-product-detail__order .eb-button {
        width: 100%;
        height: 48px;
        min-height: 48px;
        justify-content: center;
        font-size: 18px;
        line-height: 22px;
    }

    .eb-product-drawer__slider {
        right: 8px;
        left: 8px;
    }

    .eb-product-drawer__slider-button {
        width: 48px;
        height: 48px;
        border: 0;
        background: transparent;
    }
}

.eb-page-hero--editable-media {
    background: #a9b2ad;
}

body.is-faq-page .eb-page-hero {
    z-index: 11;
}

.eb-page-hero__media {
    position: absolute;
    inset: 0;
}

.eb-page-hero__media img,
.eb-image-band img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.eb-image-band {
    overflow: hidden;
}
/* About editable image bands follow the Figma proportions. */
.eb-about-page .eb-image-band {
    min-height: 0;
    aspect-ratio: 1101 / 419;
}

@media (max-width: 480px) {
    .eb-about-page .eb-image-band {
        min-height: 0;
        aspect-ratio: 375 / 287;
    }
}
.eb-article__header {
    display: grid;
    gap: 16px;
    margin-bottom: 32px;
}

.eb-article__title {
    margin-bottom: 0;
}

.eb-article__date {
    margin: 0;
    color: rgba(17, 17, 17, 0.4);
    font: 300 14px/22px Onest, Arial, sans-serif;
}

.eb-article__inner > p,
.eb-article__inner > div:not(.eb-article__header),
.eb-article__inner > figure {
    max-width: 669px;
}

.eb-article__image--inline {
    width: 100%;
    max-width: none;
    margin: 80px 0;
    aspect-ratio: 1101 / 419;
    overflow: hidden;
}

.eb-article__image--inline img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 30;
}

@media (max-width: 480px) {
    .eb-article__image--inline {
        margin: 40px 0;
        aspect-ratio: 375 / 287;
    }
}

/* Media article inline image spans the main content width like the hero. */
.eb-article__image--inline {
    position: relative;
    left: 50%;
    width: calc(100vw - var(--eb-sidebar-width));
    max-width: none;
    margin-left: calc(-0.5 * (100vw - var(--eb-sidebar-width)));
    transform: translateX(0);
}

@media (max-width: 1200px) {
    .eb-article__image--inline {
        left: 50%;
        width: 100vw;
        margin-left: -50vw;
    }
}
/* Media detail: full-width inline visual and fixed content footer. */
.eb-article__inner > figure.eb-article__image--inline {
    left: 50%;
    width: var(--eb-main-width);
    max-width: none;
    margin-left: calc(-0.5 * var(--eb-main-width));
}

@media (min-width: 1201px) {
    body:has(.eb-article-block) {
        overflow: hidden;
    }

    body:has(.eb-article-block) .eb-main {
        height: 100dvh;
        overflow-y: auto;
    }

    body:has(.eb-article-block) .eb-page {
        padding-bottom: 86px;
    }

    body:has(.eb-article-block) .eb-page-footer {
        position: fixed;
        z-index: 9;
        right: 0;
        bottom: 0;
        left: var(--eb-sidebar-width);
    }
}

@media (max-width: 1200px) {
    .eb-article__inner > figure.eb-article__image--inline {
        width: 100vw;
        margin-left: -50vw;
    }
}
/* Final desktop footer and media article width normalization. */
.eb-article__inner > figure.eb-article__image--inline {
    position: relative;
    left: calc(-1 * ((100vw - var(--eb-sidebar-width) - 669px) / 2));
    width: calc(100vw - var(--eb-sidebar-width));
    max-width: none;
    margin-left: 0;
}

@media (min-width: 1201px) {
    body {
        overflow: hidden;
    }

    .eb-main {
        height: 100dvh;
        overflow-y: auto;
    }

    .eb-page {
        padding-bottom: 86px;
    }

    .eb-page-footer {
        position: fixed;
        z-index: 9;
        right: 0;
        bottom: 0;
        left: var(--eb-sidebar-width);
    }
}

@media (max-width: 1200px) {
    .eb-article__inner > figure.eb-article__image--inline {
        left: 50%;
        width: 100vw;
        margin-left: -50vw;
    }
}
.eb-content-page {
    min-height: 100dvh;
}

.eb-content {
    padding: 40px 48px 80px;
}

.eb-content .eb-page-breadcrumbs {
    padding: 0;
    margin: 0 0 24px;
}

.eb-content__inner {
    width: min(753px, 100%);
}

.eb-content__body {
    display: grid;
    gap: 16px;
    font: 300 16px/26px Onest, Arial, sans-serif;
}

.eb-sidebar__cta p {
    color: rgba(17, 17, 17, 0.6);
}

.eb-hero .eb-button:hover,
.eb-hero .eb-button:focus-visible {
    border-color: var(--eb-invert);
}

.eb-product-card__image {
    transition: background-color var(--eb-transition-card) ease;
}

.eb-product-card__image::before {
    transform-origin: center;
}

.eb-product-card:hover .eb-product-card__image {
    background-color: #ffffff;
}

.eb-product-card:hover .eb-product-card__image::before {
    transform: scale(1.09);
}

.eb-product-card__badges {
    position: absolute;
    z-index: 2;
    bottom: 16px;
    left: 16px;
    display: flex;
    gap: 5px;
}

/* На мобильной вёрстке расширенная зона нажатия (не открывает карточку, только tooltip). */
.eb-product-card__badge-hit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: help;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}

@media (max-width: 1025px) {
    .eb-product-card__badge-hit {
        padding: 20px;
        margin: -20px;
        min-width: 44px;
        min-height: 44px;
        box-sizing: content-box;
    }
}

.eb-product-card__badge {
    position: relative;
    display: inline-flex;
    width: 30px;
    height: 30px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.52);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    color: var(--eb-text);
    transition: background var(--eb-transition-card) ease, transform var(--eb-transition-card) ease;
}

.eb-product-card__badge::before {
    font: 400 16px/1 Onest, Arial, sans-serif;
}

.eb-product-card__badge--design::before {
    content: "i";
}

.eb-product-card__badge--sketch::before {
    content: "+";
    font-size: 19px;
}

.eb-product-card__badge::after {
    content: attr(data-card-note);
    position: absolute;
    bottom: calc(100% + 10px);
    left: 0;
    width: min(260px, calc(100vw - 64px));
    padding: 12px 14px;
    background: #ffffff;
    box-shadow: 0 14px 34px rgba(17, 17, 17, 0.12);
    color: var(--eb-text);
    font: 300 13px/18px Onest, Arial, sans-serif;
    opacity: 0;
    pointer-events: none;
    transform: translateY(8px);
    transition: opacity var(--eb-transition-card) ease, transform var(--eb-transition-card) ease;
}

.eb-product-card__badge:hover {
    background: rgba(255, 255, 255, 0.86);
    transform: translateY(-1px);
}

.eb-product-card__badge:hover::after {
    opacity: 1;
    transform: translateY(0);
}

.eb-product-card.is-card-cta-open .eb-product-card__badges {
    opacity: 0;
    pointer-events: none;
}

@media (min-width: 1026px) and (max-width: 1200px) {
    .eb-layout {
        --eb-sidebar-current-width: var(--eb-sidebar-width);
        --eb-sidebar-position: fixed;
        --eb-sidebar-flex: 0 0 var(--eb-sidebar-current-width);
        --eb-sidebar-flex-direction: column;
        --eb-sidebar-align: stretch;
        --eb-sidebar-justify: flex-start;
        --eb-sidebar-height: 100dvh;
        --eb-sidebar-padding: 32px 40px;
        --eb-sidebar-overflow-y: auto;
        --eb-main-margin-left: var(--eb-sidebar-width);
        --eb-main-width: calc(100% - var(--eb-sidebar-width));
    }

    .eb-sidebar__top {
        width: auto;
    }

    .eb-logo {
        width: 201px;
        height: 60px;
    }

    .eb-menu {
        display: flex;
    }

    .eb-sidebar__cta {
        display: block;
    }

    .eb-menu {
        font-size: 20px;
        line-height: 24px;
    }

    .eb-menu-toggle,
    .eb-mobile-menu {
        display: none;
    }

    .eb-main {
        margin-left: var(--eb-main-margin-left);
        width: var(--eb-main-width);
    }

    body {
        overflow: hidden;
    }

    .eb-main {
        height: 100dvh;
        overflow-y: auto;
    }

    .eb-page-footer {
        position: fixed;
        z-index: 9;
        right: 0;
        bottom: 0;
        left: var(--eb-sidebar-width);
    }

.eb-page::after {
    content: "";
    display: block;
    flex: 0 0 120px;
    height: 120px;
}
}

.eb-product-drawer.is-cta-open .eb-product-detail__badges {
    opacity: 1;
    pointer-events: auto;
}

@media (max-width: 1025px) {
    html.eb-mobile-menu-open,
    body.eb-mobile-menu-open {
        overflow: hidden;
    }
    .eb-sidebar-diamond,
    .eb-sidebar-diamond-bot {
        display: none;
    }

    .eb-mobile-menu__scroll-stack[data-consultation].is-consultation-open .eb-mobile-menu__nav {
        display: none;
    }

    .eb-mobile-menu__scroll-stack[data-consultation].is-consultation-open {
        gap: 24px;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        padding-bottom: max(12px, env(safe-area-inset-bottom));
    }

    .eb-mobile-menu__scroll-stack[data-consultation].is-consultation-open .eb-consultation-cta {
        position: relative;
        inset: auto;
        flex: 0 0 auto;
        align-self: stretch;
        width: 100%;
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0);
        gap: 28px;
    }

    .eb-hero__content:has(.eb-hero__mobile-copy.is-consultation-open) {
        overflow: visible;
        padding-bottom: max(32px, env(safe-area-inset-bottom));
    }
}

@media (max-width: 1025px) and (min-width: 481px) {
    .eb-hero {
        min-height: 0;
        background: none;
        color: var(--eb-text);
    }

    .eb-hero::before,
    .eb-hero::after {
        display: none;
    }

    .eb-hero__video {
        bottom: auto;
        height: calc(100dvh - 130px);
    }

    .eb-hero__content {
        position: relative;
        display: flex;
        min-height: calc(100dvh - 130px);
        width: 100%;
        align-items: flex-end;
        overflow: hidden;
        color: var(--eb-invert);
        background: transparent;
        padding: 0 16px 32px;
    }

    .eb-hero__video-el--desktop {
        display: none;
    }

    .eb-hero__video-el--mobile {
        display: block;
    }

    .eb-hero__content::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(17, 17, 17, 0) 45%, rgba(17, 17, 17, 0.48) 100%);
        pointer-events: none;
    }

    .eb-hero__desktop-copy {
        display: none;
    }

    .eb-hero__mobile-copy {
        position: relative;
        z-index: 1;
        display: block;
        width: min(340px, 100%);
        min-height: 230px;
    }

    .eb-hero__mobile-actions {
        width: min(260px, 100%);
    }

    .eb-hero__mobile-copy h1 {
        margin: 0 0 24px;
        font: 400 30px/36px Oswald, Arial, sans-serif;
        text-transform: uppercase;
    }

    .eb-hero__mobile-copy p {
        margin: 0 0 24px;
        color: rgba(255, 255, 255, 0.72);
        font: 300 16px/26px Onest, Arial, sans-serif;
    }

    .eb-hero__mobile-content > h1,
    .eb-hero__mobile-content > p {
        transition: opacity 300ms ease-out, transform 300ms ease-out;
    }

    .eb-hero__mobile-copy.is-consultation-open .eb-hero__mobile-content > h1,
    .eb-hero__mobile-copy.is-consultation-open .eb-hero__mobile-content > p {
        opacity: 0;
        pointer-events: none;
        transform: translateY(-16px);
    }

    .eb-hero__mobile-cta {
        right: auto;
        bottom: 0;
        width: min(260px, 100%);
        color: var(--eb-invert);
    }

    .eb-hero__mobile-copy.is-consultation-open .eb-hero__mobile-cta {
        position: relative;
        right: auto;
        bottom: auto;
        left: auto;
        margin-top: 20px;
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0);
    }

    .eb-hero__mobile-copy.is-consultation-open .eb-hero__mobile-actions {
        margin-top: 20px;
    }

    .eb-hero__title {
        font-size: 56px;
        line-height: 62px;
    }

    .eb-hero__footer {
        position: static;
        padding: 20px 16px 28px;
        background: var(--eb-bg);
        color: rgba(17, 17, 17, 0.42);
        opacity: 1;
        flex-direction: column;
        gap: 12px;
    }

    .eb-hero__links {
        display: grid;
        gap: 12px;
    }
}

.eb-product-drawer.is-cta-open .eb-product-detail__swap {
    position: relative;
}

@media (min-width: 1026px) {
    .eb-product-drawer.is-cta-open .eb-product-detail-cta__text {
        color: rgba(17, 17, 17, 0.6);
    }
}

@media (max-width: 1025px) {
    .eb-product-drawer.is-cta-open .eb-product-detail-cta {
        padding: 20px 0 0;
    }

    .eb-product-detail-cta__links {
        gap: 16px;
    }

    .eb-product-drawer.is-cta-open .eb-product-detail__swap {
        gap: 24px;
    }

    /* Дровер на мобилке: цена и кнопка всегда в одну строку (не только в режиме связи). */
    .eb-product-drawer .eb-product-detail__order {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
    }

    .eb-product-drawer .eb-product-detail__order .eb-price {
        flex: 1 1 auto;
        min-width: 0;
    }

    .eb-product-drawer .eb-product-detail__order .eb-button {
        flex: 0 0 auto;
        width: auto;
        min-width: 0;
        height: auto;
        min-height: 40px;
        padding: 7px 22px 9px;
    }

    .eb-product-drawer.is-cta-open .eb-product-about__row--weight {
        display: none;
    }

    .eb-product-drawer.is-cta-open .eb-product-about {
        gap: 20px;
        padding-top: 4px;
    }
}

.eb-content__body p {
    margin: 0;
}

@media (max-width: 480px) {
    .eb-content {
        padding: 32px 16px 56px;
    }
}


.eb-hero::before,
.eb-hero::after {
    z-index: 1;
    display: block;
}

.eb-hero__content,
.eb-hero__footer {
    z-index: 2;
}

@media (max-width: 1025px) {
    .eb-layout {
        --eb-sidebar-position: fixed;
        padding-top: var(--eb-sidebar-height);
    }

    .eb-sidebar {
        right: 0;
        bottom: auto;
        transform: translateY(0);
        transition: transform var(--eb-transition-link) ease;
        will-change: transform;
    }

    body.is-mobile-header-hidden .eb-sidebar {
        transform: translateY(-100%);
    }

    body.eb-mobile-menu-open .eb-sidebar {
        transform: translateY(0);
    }

    body.eb-mobile-menu-open .eb-sidebar .eb-sidebar__top {
        visibility: hidden;
    }

    .eb-hero::before,
    .eb-hero::after {
        display: none !important;
    }

    .eb-hero__content::before {
        background:
            linear-gradient(180deg, rgba(17, 17, 17, 0.42) 0%, rgba(17, 17, 17, 0) 36%),
            linear-gradient(180deg, rgba(17, 17, 17, 0) 45%, rgba(17, 17, 17, 0.48) 100%);
    }
}

.eb-product-card__badge {
    background: rgba(255, 255, 255, 0.2);
    color: rgba(17, 17, 17, 0.4);
}

.eb-product-card__badge::before {
    content: "";
    width: 15px;
    height: 15px;
    background: currentColor;
    mask: var(--badge-icon) center / contain no-repeat;
    -webkit-mask: var(--badge-icon) center / contain no-repeat;
}

.eb-product-card__badge--design {
    --badge-icon: url('/local/templates/ethos_bri/./assets/product-info-circle.svg');
}

.eb-product-card__badge--sketch {
    --badge-icon: url('/local/templates/ethos_bri/./assets/product-design.svg');
}

.eb-product-card__badge--design::before,
.eb-product-card__badge--sketch::before {
    font-size: 0;
}

.eb-product-card__badge::after {
    bottom: calc(100% + 13px);
    left: 50%;
    width: max-content;
    max-width: none;
    padding: 8px 12px;
    border-radius: 6px;
    background: rgba(0, 0, 0, 0.7);
    box-shadow: none;
    color: var(--eb-invert);
    font: 300 14px/22px Onest, Arial, sans-serif;
    white-space: nowrap;
    transform: translate(-50%, 8px);
}

.eb-product-card__badge span {
    display: none;
}

.eb-product-card__badge:hover {
    background: rgba(255, 255, 255, 0.2);
    color: rgba(17, 17, 17, 0.4);
    transform: none;
}

.eb-product-card__badge:hover::after {
    transform: translate(-50%, 0);
}

.eb-product-card__badge:hover::before {
    opacity: 1;
}

.eb-product-card__badge:hover {
    z-index: 3;
}

.eb-product-card__badge::selection {
    background: transparent;
}

.eb-product-card__badge::marker {
    content: "";
}

.eb-product-card__badge:hover::after,
.eb-product-card__badge:focus-visible::after {
    opacity: 1;
}

.eb-product-card__badge:hover {
    outline: none;
}

.eb-product-card__badge::before {
    opacity: 1;
}

.eb-product-card__badge::after {
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.eb-product-card__badge:hover::after {
    pointer-events: none;
}

.eb-product-card__badge::after {
    text-transform: none;
}

.eb-product-card__badge:hover::after {
    visibility: visible;
}

.eb-product-card__badge::after {
    visibility: hidden;
}

.eb-product-card__badge:hover::after {
    visibility: visible;
}

.eb-product-card__badge::before {
    flex: 0 0 15px;
}

.eb-product-card__badge:hover::before {
    background: currentColor;
}

.eb-product-card__badge::after {
    letter-spacing: 0;
}

.eb-product-card__badge:hover::after {
    letter-spacing: 0;
}

.eb-product-card__badge::after {
    pointer-events: none;
}

.eb-product-card__badge::before {
    pointer-events: none;
}

.eb-product-card__badge {
    cursor: help;
}

.eb-product-card__badge::before {
    display: block;
}

.eb-product-card__badge:hover::after {
    opacity: 1;
}

.eb-product-card__badge::after {
    opacity: 0;
}

.eb-product-card__badge:hover::after {
    opacity: 1;
}

.eb-product-card__badge::after {
    transition: opacity var(--eb-transition-card) ease, transform var(--eb-transition-card) ease, visibility var(--eb-transition-card) ease;
}

.eb-product-card__badge::before {
    transition: opacity var(--eb-transition-card) ease;
}

.eb-product-card__badge::after {
    z-index: 4;
}

.eb-product-card__badge::before {
    z-index: 1;
}

.eb-product-card__badge:hover::after {
    z-index: 4;
}

.eb-product-card__badge::after {
    content: attr(data-card-note);
}

.eb-product-card__badge:hover::after {
    content: attr(data-card-note);
}

.eb-product-card__badge::after,
.eb-product-card__badge:hover::after {
    content: none;
}

.eb-product-card__badge .eb-product-card__badge-tooltip {
    position: fixed;
    z-index: 80;
    top: var(--tooltip-top, 0);
    left: var(--tooltip-left, 0);
    display: block;
    width: max-content;
    padding: 8px 12px;
    border-radius: 6px;
    background: rgba(0, 0, 0, 0.7);
    color: var(--eb-invert);
    font: 300 14px/22px Onest, Arial, sans-serif;
    letter-spacing: 0;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, 8px);
    transition: opacity var(--eb-transition-card) ease, transform var(--eb-transition-card) ease;
}

.eb-product-card__badge .eb-product-card__badge-tooltip::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    width: 18px;
    height: 9px;
    background: rgba(0, 0, 0, 0.7);
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    transform: translateX(-50%);
}

.eb-product-card__badge:hover .eb-product-card__badge-tooltip,
.eb-product-card__badge:focus-visible .eb-product-card__badge-tooltip {
    opacity: 1;
    transform: translate(-50%, 0);
}

/* Плавающие подсказки по hover/focus; иконки бейджей всегда видимы (см. блок .eb-product-card__badges ниже). */
.eb-product-card {
    position: relative;
}

.eb-product-card__image {
    overflow: visible;
}

.eb-product-card__image::before {
    z-index: 0;
}

.eb-product-card__content {
    position: relative;
    z-index: 2;
}

.eb-product-card__badges {
    opacity: 1;
    pointer-events: auto;
    transform: none;
    transition: opacity var(--eb-transition-card) ease;
}

.eb-product-card:hover .eb-product-card__badges,
.eb-product-card:focus-within .eb-product-card__badges {
    opacity: 1;
    pointer-events: auto;
    transform: none;
}

.eb-product-card__badge .eb-product-card__badge-tooltip {
    z-index: 80;
}

.eb-product-card.is-card-cta-open .eb-product-card__badges,
.eb-product-card.is-card-cta-open:hover .eb-product-card__badges {
    opacity: 0;
    pointer-events: none;
}

/* Restore product tooltips as generated overlays, not inline card text. */
.eb-product-card__badge-tooltip {
    display: none !important;
}

.eb-product-card__badge::after,
.eb-product-card__badge:hover::after,
.eb-product-card__badge:focus-visible::after {
    content: attr(data-card-note) !important;
}

.eb-product-card__badge::after {
    position: fixed;
    z-index: 80;
    top: var(--tooltip-top, 0);
    left: var(--tooltip-left, 0);
    display: block;
    width: max-content;
    padding: 8px 12px;
    border-radius: 6px;
    background: rgba(0, 0, 0, 0.7);
    color: var(--eb-invert);
    font: 300 14px/22px Onest, Arial, sans-serif;
    letter-spacing: 0;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, 8px);
    transition: opacity var(--eb-transition-card) ease, transform var(--eb-transition-card) ease;
}

.eb-product-card__badge:hover::after,
.eb-product-card__badge:focus-visible::after {
    opacity: 1;
    transform: translate(-50%, 0);
}

/* Floating tooltip is rendered in body so it can overlap the fixed sidebar. */
.eb-product-card__badge::after,
.eb-product-card__badge:hover::after,
.eb-product-card__badge:focus-visible::after {
    content: none !important;
}

.eb-floating-card-tooltip {
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;
    display: block;
    width: max-content;
    max-width: calc(100vw - 24px);
    padding: 8px 12px;
    border-radius: 6px;
    background: rgba(0, 0, 0, 0.7);
    color: var(--eb-invert);
    font: 300 14px/22px Onest, Arial, sans-serif;
    letter-spacing: 0;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, 8px);
    transition: opacity var(--eb-transition-card) ease, transform var(--eb-transition-card) ease;
    --eb-tooltip-arrow-offset: 0px;
}

.eb-floating-card-tooltip.is-visible {
    opacity: 1;
    transform: translate(-50%, 0);
}

.eb-floating-card-tooltip::after {
    content: "";
    position: absolute;
    top: 100%;
    left: calc(50% + var(--eb-tooltip-arrow-offset, 0px));
    width: 18px;
    height: 9px;
    background: rgba(0, 0, 0, 0.7);
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    transform: translateX(-50%);
}

@media (max-width: 1025px) {
    .eb-floating-card-tooltip {
        white-space: normal;
        text-align: center;
    }
}

.eb-product-detail__media {
    background-color: var(--bg-secondary, #f8f8f8);
    background-image: var(--product-detail-image, none);
    background-repeat: no-repeat;
    background-position: center;
    background-size: min(76%, 620px);
    background-blend-mode: multiply;
}

.eb-product-detail--drawer .eb-product-detail__media {
    background-color: var(--bg-secondary, #f8f8f8);
    background-position: center calc(50% + 18px);
    background-size: min(78%, 430px);
    background-blend-mode: multiply;
}

.eb-product-drawer.is-cta-open .eb-product-detail__badges {
    opacity: 1;
    pointer-events: auto;
}

/* CTA state polish: stable buttons, link hover and drawer fit. */
.eb-product-card.is-card-cta-open [data-product-card-cta-trigger],
.eb-sidebar__cta.is-consultation-open [data-consultation-trigger],
.eb-product-drawer.is-cta-open [data-product-cta-open] {
    --eb-button-color: var(--eb-text);
    --eb-button-hover-color: var(--eb-invert);
}

.eb-sidebar__cta.is-consultation-open {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.eb-sidebar__cta.is-consultation-open .eb-consultation-cta {
    position: relative;
    inset: auto;
    bottom: auto;
    left: auto;
    right: auto;
    display: grid;
}

.eb-sidebar__cta.is-consultation-open .eb-sidebar__cta-content {
    opacity: 1;
    pointer-events: auto;
    transform: none;
}

.eb-sidebar__cta.is-consultation-open .eb-sidebar__cta-content h1,
.eb-sidebar__cta.is-consultation-open .eb-sidebar__cta-content p {
    opacity: 0;
    visibility: hidden;
}

@media (min-width: 1026px) {
    .eb-product-detail--drawer .eb-product-detail__media {
        min-height: min(52dvh, 553px);
        flex-basis: min(52dvh, 553px);
        background-color: transparent;
    }

    .eb-product-detail--drawer .eb-product-detail__panel {
        display: flex;
        min-height: calc(100dvh - min(52dvh, 553px));
        flex: 1 1 auto;
        flex-direction: column;
        justify-content: space-between;
        gap: 24px;
        /* Не режем блок цены + «Заказать»: при overflow:hidden нижняя часть панели пропадала на ПК. */
        overflow-x: hidden;
        overflow-y: visible;
    }
}

.eb-product-detail__swap {
    min-height: 0;
}

.eb-product-drawer__slider-button,
.eb-product-drawer__slider-button:hover {
    border: 0;
    background: transparent;
}

.eb-product-drawer__slider-button::before {
    width: 14px;
    height: 14px;
}

@media (min-width: 1026px) {
    .eb-product-detail--drawer h1 {
        margin-bottom: 20px;
        font-size: 32px;
        line-height: 38px;
    }

    .eb-product-detail__order {
        flex: 0 0 auto;
    }
}

@media (max-height: 820px) and (min-width: 1026px) {
    .eb-product-detail--drawer .eb-product-detail__media {
        min-height: 46dvh;
        flex-basis: 46dvh;
        background-size: min(78%, 430px);
    }

    .eb-product-detail--drawer .eb-product-detail__panel {
        min-height: 54dvh;
        padding-top: 28px;
        padding-bottom: 24px;
    }

    .eb-product-detail--drawer h1 {
        font-size: 28px;
        line-height: 34px;
    }
}

/* Drawer spacing: lower/compact media and remove the oversized gap before order. */
@media (min-width: 1026px) {
    .eb-product-detail--drawer .eb-product-detail__media {
        min-height: 50dvh;
        flex-basis: 50dvh;
        background-position: center calc(50% + 18px);
        background-size: min(78%, 430px);
    }

    .eb-product-detail--drawer .eb-product-detail__panel {
        min-height: 50dvh;
        justify-content: flex-start;
        gap: 34px;
        padding-top: 28px;
        padding-bottom: 28px;
    }

    .eb-product-detail__order {
        margin-top: auto;
    }
}

/* Карточка товара (drawer) ≤1025px: одна вертикальная прокрутка только у панели
   по всей высоте (фото + описание); без flex min-height и «перекладин» между зонами. */
@media (max-width: 1025px) {
    html.eb-product-drawer-open,
    body.eb-product-drawer-open {
        height: 100%;
        overscroll-behavior: none;
    }

    .eb-product-drawer__panel {
        touch-action: pan-y;
        -webkit-overflow-scrolling: touch;
    }

    .eb-product-drawer__close {
        position: fixed;
        top: max(8px, env(safe-area-inset-top));
        right: max(8px, env(safe-area-inset-right));
        z-index: 3;
    }

    .eb-product-detail--drawer {
        display: block;
        min-height: 0;
    }

    .eb-product-detail--drawer .eb-product-detail__media {
        flex: none;
        flex-basis: auto;
        width: 100%;
        min-height: min(88vw, 400px);
    }

    .eb-product-detail--drawer .eb-product-detail__panel {
        display: block;
        flex: none;
        min-height: 0 !important;
        max-height: none;
        overflow: visible;
        justify-content: unset;
        padding: 16px 16px 28px;
    }

    .eb-product-detail__swap {
        flex: unset;
        min-height: 0;
    }

    @media (max-height: 760px) {
        .eb-product-detail--drawer .eb-product-detail__media {
            min-height: clamp(220px, 40vh, 300px);
        }
    }
}

/* Product drawer media toolbar from Figma. */
.eb-product-detail--drawer .eb-product-detail__media {
    background-color: var(--bg-secondary, #f8f8f8);
}

.eb-product-detail__badges {
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 20px;
    display: flex;
    gap: 8px;
    opacity: 1;
    pointer-events: auto;
    transform: none;
}

.eb-product-detail__badges .eb-product-card__badge {
    cursor: help;
}

.eb-product-drawer.is-cta-open .eb-product-detail__badges {
    opacity: 0;
    pointer-events: none;
}

/* Product media image uses the same blending as product cards, so white JPG/PNG backgrounds disappear. */
.eb-product-detail__media {
    position: relative;
    background: var(--bg-secondary, #f8f8f8);
}

.eb-product-detail__media::before {
    content: "";
    position: absolute;
    z-index: 0;
    inset: 0;
    background: var(--product-detail-image, none) center / min(76%, 620px) no-repeat;
    mix-blend-mode: multiply;
    pointer-events: none;
}

.eb-product-detail__media > * {
    position: relative;
    z-index: 1;
}

@media (min-width: 1026px) {
    .eb-product-detail--drawer .eb-product-detail__media::before {
        background-position: center calc(50% + 18px);
        background-size: min(78%, 430px);
    }
}

@media (max-width: 1025px) {
    .eb-product-detail--drawer .eb-product-detail__media::before {
        background-size: min(100%, 394px);
    }
}

@media (max-height: 820px) and (min-width: 1026px) {
    .eb-product-detail--drawer .eb-product-detail__media::before {
        background-size: min(78%, 430px);
    }
}

/* Restore drawer media control positions above the blended image layer. */
.eb-product-detail--drawer .eb-product-detail__media::before {
    z-index: 0;
}

.eb-product-detail--drawer .eb-product-drawer__close {
    z-index: 4;
    top: 24px;
    right: 24px;
}

.eb-product-detail--drawer .eb-product-drawer__slider {
    z-index: 3;
    right: 16px;
    left: 16px;
}

.eb-product-detail--drawer .eb-product-detail__badges {
    z-index: 4;
    top: auto;
    bottom: 20px;
    left: 20px;
}

.eb-materials:not(.eb-materials--chips) > a,
.eb-materials:not(.eb-materials--chips) > button,
.eb-materials:not(.eb-materials--chips) > span {
    box-sizing: border-box;
    background-clip: content-box;
}

.eb-materials:not(.eb-materials--chips) > a.is-active,
.eb-materials:not(.eb-materials--chips) > button.is-active,
.eb-materials:not(.eb-materials--chips) > span:first-child {
    padding: 2px;
    background-clip: content-box;
}

/* Revert drawer media controls to the original background-based layout. */
.eb-product-detail__media::before {
    content: none !important;
}

.eb-product-detail__media {
    background-color: var(--bg-secondary, #f8f8f8);
    background-image: var(--product-detail-image, none);
    background-repeat: no-repeat;
    background-position: center;
    background-size: min(76%, 620px);
}

.eb-product-detail--drawer .eb-product-detail__media {
    background-position: center calc(50% + 18px);
    background-size: min(78%, 430px);
}

.eb-product-detail__media > * {
    position: initial;
}

.eb-product-detail--drawer .eb-product-drawer__close {
    position: absolute;
    z-index: 4;
    top: 24px;
    right: 24px;
}

.eb-product-detail--drawer .eb-product-drawer__slider {
    position: absolute;
    z-index: 3;
    right: 16px;
    left: 16px;
    top: 50%;
}

.eb-product-detail--drawer .eb-product-detail__badges {
    position: absolute;
    z-index: 4;
    top: auto;
    bottom: 20px;
    left: 20px;
}
/* Keep fixed footer from covering the scrollable page content. */
@media (min-width: 1201px) {
    .eb-main {
        padding-bottom: 96px;
        scroll-padding-bottom: 96px;
    }

    .eb-page {
        padding-bottom: 0;
    }
}
/* Real scroll spacer for fixed desktop footer. */
@media (min-width: 1201px) {
    .eb-main {
        padding-bottom: 0;
    }

    .eb-page {
        padding-bottom: 0;
    }

    .eb-page::after {
        content: "";
        display: block;
        flex: 0 0 120px;
        height: 120px;
    }
}

/* Drawer CTA must not hide the media toolbar badges. */
.eb-product-drawer.is-cta-open .eb-product-detail__badges {
    opacity: 1;
    pointer-events: auto;
}

/* Final interactive states for menu, breadcrumbs and social links. */
.eb-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    align-items: center;
}

.eb-breadcrumbs a,
.eb-breadcrumbs span {
    color: inherit;
    text-decoration: none;
}

.eb-breadcrumbs a {
    transition: color var(--eb-transition-link) ease, opacity var(--eb-transition-link) ease;
}

.eb-breadcrumbs a:hover {
    color: var(--text-primary, #111) !important;
    opacity: 1;
}

.eb-menu__back:hover {
    opacity: 0.42;
}

.eb-breadcrumbs a:not(:last-child)::after {
    content: "/";
    margin: 0 4px;
    opacity: 1;
    color: var(--eb-invert, #fff) !important;
    pointer-events: none;
}

.eb-menu__back {
    transition: opacity var(--eb-transition-link) ease;
}

body.is-home-page .eb-menu__main > a,
body.is-home-page .eb-menu__main > a.is-active,
body.is-home-page .eb-menu__main:has(> a:hover) > a,
body.is-home-page .eb-menu__main:has(> a:hover) > a.is-active,
body:has(.eb-hero) .eb-menu__main > a,
body:has(.eb-hero) .eb-menu__main > a.is-active,
body:has(.eb-hero) .eb-menu__main:has(> a:hover) > a,
body:has(.eb-hero) .eb-menu__main:has(> a:hover) > a.is-active {
    opacity: 1;
}

body.is-home-page .eb-menu__main > a:hover,
body.is-home-page .eb-menu__main > a.is-active:hover,
body:has(.eb-hero) .eb-menu__main > a:hover,
body:has(.eb-hero) .eb-menu__main > a.is-active:hover {
    opacity: 0.42;
}

.eb-consultation-cta__links:has(a:hover) a,
.eb-product-card__cta-links:has(a:hover) a,
.eb-product-detail-cta__links:has(a:hover) a {
    opacity: 1;
}

.eb-consultation-cta__links a:hover,
.eb-product-card__cta-links a:hover,
.eb-product-detail-cta__links a:hover {
    opacity: 0.42;
}

.eb-consultation-cta__links a,
.eb-product-card__cta-links a,
.eb-product-detail-cta__links a {
    position: relative;
    min-height: 24px;
    padding-left: 34px;
    gap: 0;
    overflow: hidden;
}

.eb-consultation-cta__links a::before,
.eb-consultation-cta__links a::after,
.eb-product-card__cta-links a::before,
.eb-product-card__cta-links a::after,
.eb-product-detail-cta__links a::before,
.eb-product-detail-cta__links a::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 24px;
    height: 24px;
    background: currentColor;
    mask: var(--social-icon) center / var(--social-icon-size, 16px 16px) no-repeat;
    -webkit-mask: var(--social-icon) center / var(--social-icon-size, 16px 16px) no-repeat;
    transition: transform var(--eb-transition-link) ease;
}

.eb-consultation-cta__links a::before,
.eb-product-card__cta-links a::before,
.eb-product-detail-cta__links a::before {
    transform: translateY(-50%);
}

.eb-consultation-cta__links a::after,
.eb-product-card__cta-links a::after,
.eb-product-detail-cta__links a::after {
    transform: translateY(22px);
}

.eb-consultation-cta__links a:hover::before,
.eb-product-card__cta-links a:hover::before,
.eb-product-detail-cta__links a:hover::before {
    transform: translateY(-46px);
}

.eb-consultation-cta__links a:hover::after,
.eb-product-card__cta-links a:hover::after,
.eb-product-detail-cta__links a:hover::after {
    transform: translateY(-50%);
}

/* About hero media layer and bounded article-card image zoom. */
.eb-page-hero::before {
    z-index: 1;
    pointer-events: none;
}

.eb-page-hero__media {
    z-index: 0;
}

.eb-page-hero__inner,
.eb-page-hero__breadcrumbs {
    z-index: 2;
}

.eb-article-card__image {
    position: relative;
    display: block;
    overflow: hidden;
    background: var(--bg-secondary, #f8f8f8);
    transform: none;
}

.eb-article-card__image::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--article-image) center / cover no-repeat;
    transition: transform var(--eb-transition-card) ease;
}

.eb-article-card:hover .eb-article-card__image {
    transform: none;
}

.eb-article-card:hover .eb-article-card__image::before {
    transform: scale(1.04);
}


@media (max-width: 1370px) {
    .eb-page-footer {
        display: grid;
    }
}

/* Sidebar vertical fit: menu scrolls inside its slot and CTA never overlays it. */
@media (min-width: 1026px) {
    .eb-sidebar {
        overflow: hidden;
    }

    .eb-sidebar__scroll {
        display: flex;
        flex-direction: column;
        min-height: 0;
        overflow-x: hidden;
        overflow-y: auto;
    }

    .eb-sidebar__copy {
        margin-top: auto;
        padding-top: clamp(36px, 4vh, 72px);
    }
}

/* Home hero footer matches the Figma index screen: over the video bottom edge. */
@media (min-width: 1026px) {
    .eb-hero {
        min-height: 100vh;
        overflow-x: hidden;
        overflow-y: visible;
    }

    .eb-hero__video {
        inset: 0;
        height: 100%;
    }

    .eb-hero::after {
        bottom: 0;
    }

    .eb-hero .eb-hero__footer {
        position: absolute;
        z-index: 6;
        right: 0;
        bottom: 0;
        left: 0;
        min-height: 0;
        display: flex;
        align-items: flex-end;
        align-content: flex-end;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 16px 32px;
        padding: 16px 48px 22px;
        background: transparent;
        color: var(--eb-invert);
        opacity: 0.92;
        visibility: visible;
        overflow: visible;
    }

    .eb-hero .eb-hero__footer .eb-hero__footer-scrab {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        flex: 1 1 auto;
        min-width: 0;
        max-width: min(560px, calc(100% - 220px));
        align-items: baseline;
        gap: 10px;
    }

    .eb-hero .eb-hero__footer .eb-footer-legal-name {
        flex-basis: auto;
        width: auto;
        max-width: none;
        opacity: 1;
    }

    .eb-hero .eb-hero__footer .eb-hero__links {
        display: flex;
        flex-shrink: 0;
        gap: 32px;
        align-self: flex-end;
        margin-left: auto;
    }

    .eb-page-footer .eb-hero__footer-scrab {
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: baseline;
        gap: 10px;
        max-width: min(720px, 70%);
    }

    .eb-page-footer .eb-footer-legal-name {
        flex-basis: auto;
        width: auto;
    }
}

.eb-clients-certificates-button {
    margin-top: 20px;
}

.eb-cookie-notice {
    position: fixed;
    z-index: 320;
    right: auto;
    bottom: 86px;
    left: calc(var(--eb-sidebar-width) + ((100vw - var(--eb-sidebar-width)) / 2));
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    width: min(960px, calc(100vw - var(--eb-sidebar-width) - 48px));
    min-height: 48px;
    padding: 10px 12px 10px 18px;
    border: 1px solid rgba(17, 17, 17, 0.12);
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 12px 36px rgba(17, 17, 17, 0.08);
    color-scheme: light;
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, 12px);
    transition:
        opacity var(--eb-transition-card) ease,
        transform var(--eb-transition-card) ease;
}

.eb-cookie-notice.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translate(-50%, 0);
}

.eb-cookie-notice p {
    margin: 0;
    color: var(--eb-text);
    font: 300 14px/20px Onest, Arial, sans-serif;
    text-align: center;
}

.eb-cookie-notice a {
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: opacity var(--eb-transition-link) ease;
}

.eb-cookie-notice a:hover {
    opacity: 0.52;
}

.eb-cookie-notice__button {
    /* Как сайдбар: контур + тёмный текст, hover — заливка. Литералы и transparent под базовый слой — обход чёрного filled-button от UA при системной тёмной теме. */
    --eb-button-color: #111111;
    --eb-button-hover-color: #ffffff;
    flex-shrink: 0;
    min-height: 40px;
    overflow: visible;
    background-color: transparent;
    color: var(--eb-button-color);
}

.eb-materials .eb-material-chip,
.eb-materials .eb-material-chip.is-active {
    width: auto;
    height: 34px;
    padding: 6px 12px 6px 7px;
    background: var(--eb-bg);
    background-clip: border-box;
}

.eb-materials .eb-material-chip__swatch,
.eb-materials .eb-material-chip__label {
    padding: 0;
    background-clip: border-box;
}

.eb-materials .eb-material-chip__swatch {
    width: 20px;
    height: 20px;
    background: var(--material) center / cover no-repeat;
}

.eb-materials .eb-material-chip__label {
    width: auto;
    height: auto;
}

/* Product drawer: Figma 2026-05 detail layout. */
.eb-product-detail--drawer .eb-product-detail__panel {
    justify-content: flex-start;
}

.eb-product-detail--drawer .eb-product-detail__intro {
    display: flex;
    flex-direction: column;
    gap: 32px;
    min-width: 0;
}

.eb-product-detail--drawer h1 {
    margin-bottom: 0;
}

.eb-product-detail--drawer .eb-product-meta {
    display: block;
    margin-bottom: 0;
}

.eb-product-detail--drawer .eb-materials--chips {
    min-width: 0;
}

.eb-product-detail--drawer .eb-product-detail__order {
    margin-top: 0;
}

.eb-product-about {
    display: grid;
    gap: 24px;
    font: 300 14px/22px Onest, Arial, sans-serif;
}

.eb-product-about__row {
    display: grid;
    gap: 8px;
}

.eb-product-about__label {
    color: var(--eb-muted);
}

.eb-product-about__value {
    color: var(--eb-text);
    overflow-wrap: anywhere;
}

@media (max-width: 480px) {
    .eb-product-detail--drawer .eb-product-detail__intro {
        gap: 26px;
    }

    .eb-product-about {
        gap: 20px;
    }

    .eb-page:has(.eb-article-block) .eb-page-hero {
        min-height: 260px;
    }

    .eb-page:has(.eb-article-block) .eb-page-title {
        font-size: 22px;
        line-height: 26px;
    }
}

@media (max-width: 1025px) {
    .eb-cookie-notice {
        right: auto;
        bottom: 48px;
        left: 50%;
        width: min(420px, calc(100vw - 32px));
        align-items: center;
        flex-direction: column;
        gap: 10px;
        padding: 14px;
        transform: translate(-50%, 12px);
    }

    .eb-cookie-notice p {
        font-size: 13px;
        line-height: 19px;
        text-align: center;
    }

    .eb-cookie-notice__button {
        width: min(180px, 100%);
    }

    .eb-cookie-notice.is-visible {
        transform: translate(-50%, 0);
    }

    body.has-cookie-notice .eb-page-footer,
    body.has-cookie-notice .eb-hero__footer {
        padding-bottom: 150px;
    }
}

/* End */
/* /local/templates/ethos_bri/styles.css?1781692251110176 */
