/* Shared language navigation; original Russian layouts otherwise retain their styles. */
.dm-language-switch{display:flex;justify-content:flex-end;align-items:center;gap:4px;padding:4px 0;line-height:1.2;font-family:Roboto,sans-serif}
.dm-language-switch a{display:inline-block;font-size:13px;line-height:20px;padding:3px 9px;border-radius:5px;color:inherit;text-decoration:none;min-height:26px;box-sizing:border-box}
.dm-language-switch a[aria-current]{font-weight:700;box-shadow:inset 0 -2px currentColor}
.dm-language-switch a:hover{background:rgba(108,84,68,.1)}
.dm-language-switch a:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.header__white .dm-language-switch{color:#fff}
/* Reuse the original desktop contact row instead of adding header height. */
.dm-has-languages .header__top .dm-language-switch{padding:0}
@media(max-width:768px){
 .dm-has-languages .header__top.desctop{display:flex!important;justify-content:flex-end;padding:0;border:0}
 .dm-has-languages .header__top>.left,.dm-has-languages .header__top>.right{display:none}
}

@media(min-width:769px){
 .dm-has-languages .header__top{position:relative}
 .dm-has-languages .header__top .dm-language-switch{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
}
/* Keep a clear gap between the inherited absolute header and Contacts heading. */
.dm-has-languages.page-template-contacts .contacts{padding-top:32px}

/* Original theme controls imagery, typography, cards, galleries and all breakpoints. */
.dm-translated .dm-booking-language{font:400 14px/1.45 Roboto,sans-serif;max-width:540px;margin:12px 0 20px;color:inherit}
.dm-booking-language a,.dm-language-details a,.dm-translation-note a{text-decoration:underline;text-underline-offset:3px}
.dm-translated .dm-language-details{padding-top:30px;padding-bottom:40px;border-top:1px solid var(--main-border-color,#d7d0c3)}
.dm-language-details h2{font:400 26px/1.25 'Tenor Sans',sans-serif;margin:0 0 12px}
.dm-language-details p{font:400 16px/1.6 Roboto,sans-serif;max-width:1000px}
.dm-translation-note{background:#eee8dc;border-radius:10px;padding:18px 22px;margin-bottom:28px;font:400 15px/1.5 Roboto,sans-serif}
.dm-translated .banner h1{overflow-wrap:break-word}
.dm-translated .btn{white-space:normal;text-align:center}
.dm-translated .footer__requisites{overflow-wrap:anywhere}
@media(max-width:768px){.dm-translated .dm-booking-language{font-size:13px;max-width:100%;margin:10px 0 16px}.dm-translated .dm-language-details h2{font-size:23px}}

.dm-wordmark{display:block;font:400 26px/1.08 'Tenor Sans',sans-serif;color:#6c5444;width:150px}.dm-wordmark-white{color:#fff}@media(max-width:768px){.dm-wordmark{font-size:22px;width:126px}}

.dm-translated .banner__full-back .dm-booking-language{color:#fff}.dm-translated .banner__full-back .dm-booking-language a{color:inherit}.header:not(.header__white) .dm-wordmark{color:#6c5444}

@media(max-width:360px){.dm-translated .dm-wordmark{font-size:20px;width:104px}.dm-translated .header__contacts{gap:16px}}

.dm-error-page{padding-top:180px;padding-bottom:100px;min-height:65vh}.dm-error-page h1{font-size:48px;margin-bottom:24px}.dm-error-page p{margin-bottom:28px}@media(max-width:768px){.dm-error-page h1{font-size:32px}}

/* 09.11.2026: keep a footer link together when balancing columns. */
.footer__nav--products > li{-webkit-column-break-inside:avoid;break-inside:avoid}

/* Home has the same content rows in every language; the Russian layout sets the rhythm. */
.banner__main:not(.banner__main--product) h1{line-height:1.15;min-height:3.45em}
.banner__main:not(.banner__main--product) .desc{min-height:2.6em}
.banner__main:not(.banner__main--product) .banner__main--list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.banner__main:not(.banner__main--product) .banner__main--list p{min-height:2.4em}
.dm-home-language{background:var(--back-brown-two);border-top:1px solid var(--main-border-color);padding:16px 0}
.dm-translated .dm-home-language .dm-booking-language{max-width:none;margin:0;color:var(--main-brown)}
@media(min-width:769px) and (max-width:1280px){
 .banner__main:not(.banner__main--product) h1{min-height:4.6em}
 .banner__main:not(.banner__main--product) .banner__main--list{gap:30px}
}
@media(min-width:769px) and (max-width:1024px){
 .banner__main:not(.banner__main--product) h1{min-height:5.75em}
 .banner__main:not(.banner__main--product) .banner__main--list{grid-template-columns:1fr;gap:20px}
 .banner__main:not(.banner__main--product) .banner__main--list p{min-height:1.2em}
}
@media(max-width:768px){
 .banner__main:not(.banner__main--product) h1{min-height:4.6em}
 .banner__main:not(.banner__main--product) .banner__main--list{grid-template-columns:1fr;gap:30px}
 .banner__main:not(.banner__main--product) .banner__main--list p{min-height:1.2em}
}

/* A short phone screen may scroll: never clip the heading behind the header. */
@media(max-height:650px){
 .banner__main.banner__mobile:not(.banner__main--product){height:auto;max-height:none}
 .banner__main.banner__mobile:not(.banner__main--product) > .container{padding-left:20px;padding-right:20px}
 .banner__main.banner__mobile:not(.banner__main--product) .banner__grid{height:auto;grid-template-columns:1fr}
 .banner__main.banner__mobile:not(.banner__main--product) .banner__grid--left{height:auto;max-height:none;padding-top:180px;padding-bottom:50px}
 .banner__main.banner__mobile:not(.banner__main--product) h1{font-size:31px;min-height:4.6em}
 .banner__main.banner__mobile:not(.banner__main--product) .desc{max-width:100%}
 .banner__main.banner__mobile:not(.banner__main--product) .banner__main--list{grid-template-columns:1fr;gap:30px}
 .banner__main.banner__mobile:not(.banner__main--product) .banner__main--list p{min-height:1.2em}
}
@media(max-width:340px){
 .banner__main:not(.banner__main--product) .btn__list a.btn{box-sizing:border-box;min-height:60px;display:inline-flex;align-items:center;justify-content:center}
}

/* The mobile menu switches to a light header; keep the original vector visible. */
.header:not(.header__white) .dm-site-logo{fill:#6c5444}
