/* Скрыть скролл для всех страниц - используем утилитарные классы */
html {
  overflow-x: hidden;
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE and Edge */
}

html::-webkit-scrollbar {
  display: none; /* Chrome, Safari, Edge */
}

body {
  overflow-x: hidden;
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE and Edge */
}

body::-webkit-scrollbar {
  display: none; /* Chrome, Safari, Edge */
}

/* Стили скроллбара и анимаций вынесены в отдельные модули:
   - /src/css/scrollbar.css
   - /src/css/animations.css
*/
/* Компоненты OOR */


/* Media Cover */
.oor-media-cover{
  position:relative;
  overflow:hidden;
}

.oor-media-cover img,
.oor-media-cover video{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* Typography */
.h1{font-family:var(--font-ui);font-size: 7.000rem;line-height:100%;font-weight:300;letter-spacing: -0.630rem;text-transform:uppercase;margin:0;color:var(--color-text)}
.h2{font-family:var(--font-ui);font-size: 4.000rem;line-height:100%;font-weight:300;letter-spacing: -0.160rem;text-transform:uppercase;margin:0;color:var(--color-text)}
.h3{font-family:var(--font-ui);font-size: 3.000rem;line-height:100%;font-weight:300;letter-spacing: -0.120rem;text-transform:uppercase;margin:0;color:var(--color-text)}
.h4{font-family:var(--font-ui);font-size: 2.000rem;line-height:116%;font-weight:300;letter-spacing: -0.080rem;margin:0;color:var(--color-text)}
.h5{font-family:var(--font-ui);font-size: 1.500rem;line-height:120%;font-weight:300;letter-spacing: -0.060rem;margin:0;color:var(--color-text)}
.h6{font-family:var(--font-ui);font-size: 1.250rem;line-height:120%;font-weight:300;letter-spacing: -0.050rem;margin:0;color:var(--color-text)}
.p{font-family:var(--font-ui);font-size: 1.000rem;line-height:140%;font-weight:300;letter-spacing: -0.040rem;margin:0;color:var(--color-text)}
.p-sm{font-family:var(--font-ui);font-size: 0.875rem;line-height:140%;font-weight:300;letter-spacing: -0.035rem;margin:0;color:var(--color-text)}
.p-xs{font-family:var(--font-pragmatica);font-size: 0.750rem;font-weight:400;line-height:normal;letter-spacing: -0.015rem;text-transform:uppercase;margin:0;color:var(--color-black)}

/* Buttons */
.oor-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 24px;
  background:transparent;
  border:1px solid var(--color-accent);
  color:var(--color-text);
  font-family:var(--font-ui);
  font-size:var(--font-size-root);
  line-height:var(--line-height-root);
  font-weight:300;
  letter-spacing: -0.040rem;
  text-decoration:none;
  cursor:pointer;
  transition:opacity 0.2s ease;
}

.oor-btn:hover{
  opacity:0.7;
}

/* Navigation */
.oor-nav{
  display:flex;
  justify-content:space-between;
  align-items:center;
}

.oor-logo{
  display:flex;
  align-items:center;
  cursor:pointer;
}

.oor-nav-menu{
  display:flex;
  align-items:center;
  gap:var(--spacing-lg);
}

.oor-nav-list{
  display:flex;
  margin:0;
  padding:0;
  gap:var(--spacing-md);
}

.oor-nav-item{
  display:flex;
  align-items:center;
  gap:var(--spacing-xs);
}

.oor-nav-link{
  color:var(--color-text);
  text-decoration:none;
  font-family:var(--font-ui);
  font-size:var(--font-size-root);
  line-height:var(--line-height-root);
  font-weight:300;
  letter-spacing: -0.040rem;
}

.oor-nav-list span{
  color:var(--color-muted);
}

/* Header */
.oor-header{
  display:flex;
  padding:var(--spacing-md) var(--container-x);
  justify-content:space-between;
  align-items:center;
  align-self:stretch;
  position:sticky;
  top:0;
  z-index:100;
  background:transparent;
  mix-blend-mode:difference;
}

/* Отступ хедера под админ-панель WP не добавляем — убран по запросу */

.oor-logo{
  display:flex;
  align-items:center;
  cursor:pointer;
}

.oor-logo img{
  mix-blend-mode:difference;
}

/* Studio page - header with black background (no mix-blend-mode) */
body.oor-studio-page .oor-header {
  background: #000 !important;
  mix-blend-mode: normal !important;
  isolation: isolate;
}

body.oor-studio-page .oor-logo img {
  mix-blend-mode: normal !important;
  filter: brightness(0) invert(1) !important;
}

/* Ensure navigation links are visible on black header on studio page */
body.oor-studio-page .oor-nav-link {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-studio-page .oor-nav-link--active {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

/* Separator slashes in navigation */
body.oor-studio-page .oor-nav-item > span {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

/* Button "Стать артистом" on studio page */
body.oor-studio-page .oor-btn-small {
  mix-blend-mode: normal !important;
}

body.oor-studio-page .oor-btn-small-text {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-studio-page .oor-btn-small-icon {
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

body.oor-studio-page .oor-btn-small-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

/* Бургер-меню на странице студии - белая иконка */
body.oor-studio-page .oor-header .oor-burger-menu {
  mix-blend-mode: normal !important;
  isolation: isolate !important;
}

body.oor-studio-page .oor-header .oor-burger-menu .oor-burger-icon {
  color: #fff !important;
  fill: #fff !important;
  stroke: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-studio-page .oor-header .oor-burger-menu .oor-burger-icon,
body.oor-studio-page .oor-header .oor-burger-menu .oor-burger-icon * {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

body.oor-studio-page .oor-header .oor-burger-menu .oor-burger-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
}

.oor-header-right{
  display:flex;
  align-items:center;
  gap:80px;
}

.oor-nav{
  display:flex;
  align-items:center;
  gap:var(--spacing-xs);
}

.oor-nav-list{
  display:flex;
  margin:0;
  padding:0;
  gap:var(--spacing-xs);
}

.oor-nav-item{
  display:flex;
  align-items:center;
  gap:var(--spacing-xs);
}

.oor-nav-link{
  color:white;
  text-align:center;
  font-family:var(--font-pragmatica);
  font-size: 0.750rem;
  font-weight:400;
  line-height:normal;
  letter-spacing: -0.015rem;
  text-transform:uppercase;
  text-decoration:none;
  transition:text-decoration 0.2s ease;
}


.oor-nav-link--active{
  color:white;
  text-align:center;
  font-family:var(--font-pragmatica);
  font-size: 0.750rem;
  font-weight:400;
  line-height:normal;
  letter-spacing: -0.015rem;
  text-transform:uppercase;
  text-decoration:none;
}

/* Скобки для активного пункта меню без rolling text */
.oor-nav-link--active:not(:has(.tn-atom))::before{
  content:"[";
  display: inline;
  vertical-align: baseline;
  line-height: 1.4em;
}

.oor-nav-link--active:not(:has(.tn-atom))::after{
  content:"]";
  display: inline;
  vertical-align: baseline;
  line-height: 1.4em;
}

/* Для rolling text скобки добавляются через JavaScript */

.oor-nav-list span{
  color:white;
  font-family:var(--font-pragmatica);
  font-size: 0.750rem;
  font-weight:400;
  line-height: 1.4em;
  letter-spacing: -0.015rem;
  text-transform:uppercase;
  display: flex;
  align-items: center;
}

/* Выравнивание tn-atom в навигации */
.oor-nav-item .tn-atom {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 1.4em;
  vertical-align: middle;
}

/* WordPress-совместимые классы для активных пунктов меню */
.oor-nav-link--active,
.current-menu-item .oor-nav-link,
.current_page_item .oor-nav-link,
.current-menu-ancestor .oor-nav-link {
  color: var(--color-accent);
}

/* Скобки для WordPress-совместимых классов (без rolling text) */
.current-menu-item .oor-nav-link:not(:has(.tn-atom))::before,
.current_page_item .oor-nav-link:not(:has(.tn-atom))::before,
.current-menu-ancestor .oor-nav-link:not(:has(.tn-atom))::before {
  content:"[";
  display: inline;
  vertical-align: baseline;
  line-height: 1.4em;
}

.current-menu-item .oor-nav-link:not(:has(.tn-atom))::after,
.current_page_item .oor-nav-link:not(:has(.tn-atom))::after,
.current-menu-ancestor .oor-nav-link:not(:has(.tn-atom))::after {
  content:"]";
  display: inline;
  vertical-align: baseline;
  line-height: 1.4em;
}

.oor-btn-small{
  display:flex;
  align-items:center;
  gap:4px;
  background:transparent;
  border:none;
  text-decoration: none;
  cursor:pointer;
}

.oor-btn-small-text{
  color:white;
  text-align:center;
  font-family:var(--font-pragmatica);
  font-size: 0.750rem;
  font-weight:400;
  line-height:normal;
  letter-spacing: -0.015rem;
  text-transform:uppercase;
  transition:text-decoration 0.2s ease;
}

.oor-btn-small:hover .oor-btn-small-text{
  text-decoration:underline;
}

.oor-btn-small-icon {
  width: 17px;
  height: 17px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.oor-btn-small-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 0.3s ease;
}

.oor-btn-small:hover .oor-btn-small-icon img {
  transform: rotate(180deg);
}

/* HERO Section */
.oor-section-hero{
  background-color:var(--color-bg);
  color:var(--color-text);
  position:relative;
}

.oor-hero-title-block{
  padding-top:120px;
  align-items:baseline;
}

.oor-hero-title{
  color:var(--color-black);
  font-family:var(--font-ui);
  font-size: 7.000rem;
  font-style:normal;
  font-weight:300;
  line-height:100%;
  letter-spacing: -0.630rem;
  text-transform:uppercase;
  margin:0 0 24px 0;
}

.oor-hero-year{
  color:var(--color-black);
  text-align:right;
  font-family:var(--font-ui);
  font-size: 1.000rem;
  font-style:normal;
  font-weight:300;
  line-height:normal;
  letter-spacing: -0.020rem;
  display:block;
}

.oor-hero-main{
  padding:480px 0 218px 0;
  background-color:var(--color-bg);
  position:relative;
}

/* Hero Video фон */
.oor-hero-main::before{
  content:"";
  position:absolute;
  inset:0;
  background:url("../../public/assets/hero-bg.png") center/cover no-repeat;
  z-index:1;
}

/* Hero Video элемент */
/* Fallback для видео (когда браузер не поддерживает video) */
.oor-hero-video-fallback {
  position: absolute;
  inset: 0;
  background: url('../../public/assets/video-cover.webp') center/cover no-repeat;
}

.oor-hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:1;
}

/* Стили для заглушки видео */
.oor-hero-video[poster] {
  background-image: url('../../public/assets/video-cover.avif');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* Черный оверлей поверх видео, но под текстом */
.oor-hero-main::after{
  content:"";
  position:absolute;
  inset:0;
  background-color:rgba(0,0,0,0.5);
  z-index:2;
}

/* Кликабельный оверлей для открытия полноэкранного видео */
.oor-hero-video-overlay{
  position:absolute;
  inset:0;
  z-index:3;
  cursor:pointer;
  background:transparent;
}

/* Hero Content */
.oor-hero-content{
  position:relative;
  z-index:4;
  align-items:flex-start;
  gap:10px;
}

/* Полноэкранное видео */
.oor-fullscreen-video{
  position:fixed;
  top:0;
  left:0;
  width:100vw;
  height:calc(100 * var(--oor-vh));
  background:black;
  z-index:99999;
  display:none;
  align-items:center;
  justify-content:center;
}

.oor-fullscreen-video.active{
  display:flex;
}

/* Дополнительные правила для полноэкранного режима */
.oor-fullscreen-video.active{
  position:fixed;
  top:0;
  left:0;
  width:100vw;
  height:calc(100 * var(--oor-vh));
  z-index:99999;
  background:black;
}

.oor-fullscreen-video-element{
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
  object-fit:contain;
}

/* Стили для заглушки полноэкранного видео */
.oor-fullscreen-video-element[poster] {
  background-image: url('../../public/assets/video-cover.avif');
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.oor-fullscreen-close{
  position:absolute;
  top:48px;
  right:var(--container-x);
  background:transparent;
  border:none;
  cursor:pointer;
  z-index:100000;
  transition:transform 0.3s ease;
  width:34px;
  height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.oor-fullscreen-close img{
  transition:transform 0.3s ease;
  width:17px;
  height:17px;
}

.oor-fullscreen-close:hover img{
  transform:rotate(180deg) scale(1.2);
}

/* Состояние когда полноэкранное видео открыто - поворачиваем на 45° для крестика */
.oor-fullscreen-close.active img{
  transform:rotate(45deg) scale(2);
}

/* Hover эффект когда видео открыто - дополнительный поворот */
.oor-fullscreen-close.active:hover img{
  transform:rotate(225deg) scale(2.2);
}

/* Plus иконки позиционируются относительно секции */
.oor-hero-plus-top-left,
.oor-hero-plus-top-right,
.oor-hero-plus-bottom-left,
.oor-hero-plus-bottom-right{
  display:flex;
  align-items:center;
  justify-content:center;
  position:absolute;
  z-index:5;
  cursor:pointer;
  transition:transform 0.3s ease;
}

/* Магнетизм для кнопок (исключая навигацию) */
.oor-fullscreen-close,
.oor-btn-small,
.oor-logo,
.oor-social-icon,
.oor-hero-video-overlay{
  transition:transform 0.2s ease-out;
}

.oor-fullscreen-close:hover,
.oor-btn-small:hover,
.oor-logo:hover,
.oor-social-icon:hover,
.oor-hero-video-overlay:hover{
  transform:translate(var(--mouse-x, 0), var(--mouse-y, 0));
}

.oor-hero-plus-top-right:hover img{
  transform:rotate(180deg);
}

/* Магнетизм для plus иконок - отдельно от hover эффектов */
.oor-hero-plus-top-left,
.oor-hero-plus-top-right,
.oor-hero-plus-bottom-left,
.oor-hero-plus-bottom-right{
  transition:transform 0.2s ease-out;
}

.oor-hero-plus-top-left:hover,
.oor-hero-plus-top-right:hover,
.oor-hero-plus-bottom-left:hover,
.oor-hero-plus-bottom-right:hover{
  transform:translate(var(--mouse-x, 0), var(--mouse-y, 0));
}

.oor-hero-plus-top-left{
  right:694px;
  top:80px;
}

.oor-hero-plus-top-right{
  right:var(--container-x);
  top:80px;
}

.oor-hero-plus-bottom-left{
  right:694px;
  bottom:80px;
}

.oor-hero-plus-bottom-right{
  right:var(--container-x);
  bottom:80px;
}

/* Hero Text */
.oor-hero-text{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:48px;
  align-self:stretch;
}

/* Description */
.oor-hero-description{
  align-self:stretch;
}

.oor-hero-description-grid{
  align-items:center;
}

.oor-hero-description-title{
  color:white;
  font-family:var(--font-ui);
  font-size: 4.000rem;
  font-style:normal;
  font-weight:300;
  line-height:100%;
  letter-spacing: -0.160rem;
  text-transform:uppercase;
  margin:0;
}

/* Social Icons */
.oor-social-icons{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:16px;
}

.oor-social-icon{
  opacity:0.7;
  transition:opacity 0.2s ease, transform 0.2s ease-out;
  cursor:pointer;
}

.oor-social-icon:hover{
  opacity:1;
}

/* Benefits */
.oor-hero-benefits{
  display:flex;
  justify-content:space-between;
  align-items:center;
  align-self:stretch;
}

.oor-benefit-item{
  color:white;
  font-family:var(--font-ui);
  font-size: 1.000rem;
  font-style:normal;
  font-weight:300;
  line-height:120%;
  letter-spacing: -0.040rem;
}

/* Line разделители в Benefits */
.oor-hero-benefits img{
  width:1px;
  height:16px;
  opacity:0.7;
}

/* Preloader */
.oor-preloader{
  position:fixed;
  top:0;
  left:0;
  width:100vw;
  height:100vh;
  background:white;
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:opacity 0.5s ease, visibility 0.5s ease;
  overflow:hidden;
}

html.preloader-active,
body.preloader-active{
  overflow:hidden !important;
  width:100vw;
  height:calc(100 * var(--oor-vh));
  margin:0;
  padding:0;
  position:fixed;
  top:0;
  left:0;
}

.oor-preloader.hidden{
  opacity:0;
  visibility:hidden;
}

.oor-preloader-content{
  text-align:center;
  position:relative;
  padding: 0 20px;
}

/* Progress Bar */
.oor-preloader-progress-bar{
  position: fixed;
  top: 0;
  left: 0;
  height: 8px;
  width: 0%;
  background: #000;
  z-index: 10000;
  transition: width 0.1s linear, opacity 0.3s ease;
  opacity: 1;
}

.oor-preloader-progress-bar.hidden{
  opacity: 0;
}

/* Enter Button - полностью без магнетизма и анимаций */
.oor-enter-button{
  display: inline-flex;
  padding: 12px;
  align-items: center;
  justify-content: center;
  gap: 4px;
  color: var(--color-white);
  text-align: center;
  font-family: "Pragmatica";
  font-size: 0.750rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: -0.015rem;
  text-transform: uppercase;
  background: #000;
  border: 1px solid transparent;
  cursor: pointer;
  position: fixed;
  bottom: 48px;
  left: 50%;
  width: auto;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: 10005;
  transition: opacity 0.3s ease, visibility 0.3s ease, background-color 0.2s ease, color 0.2s ease;
  will-change: auto;
}

/* Кнопка внутри splash-screen */
.oor-splash-screen .oor-enter-button{
  position: absolute;
  bottom: 48px;
  z-index: 10005;
}

.oor-enter-button.visible{
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.oor-enter-button:hover {
  background: var(--color-white);
  color: #000;
  border-color: #000;
}

/* Отключаем все эффекты при нажатии */
.oor-enter-button:active,
#enter-button-splash:active,
.oor-splash-screen .oor-enter-button:active {
  animation: none;
  transition: none;
  outline: none;
}

/* Mobile optimization for enter button */
@media (max-width: 768px) {
  .oor-preloader-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100vh;
    padding: 0;
  }
  
  .oor-enter-button,
  .oor-splash-screen .oor-enter-button {
    position: fixed;
    bottom: 16px;
    left: 16px;
    right: 16px;
    width: auto;
    padding: 18px;
    font-size: 1.125rem;
    letter-spacing: -0.023rem;
    border-radius: 0;
    transition: background-color 0.2s ease, color 0.2s ease, opacity 0.3s ease;
  }
  
  .oor-enter-button:active,
  .oor-splash-screen .oor-enter-button:active {
    transition: none;
    outline: none;
  }
}

/* Splash Screen */
.oor-splash-screen{
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: white;
  z-index: 10001;
  display: none;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.8s ease;
  margin: 0;
  padding: 0;
}

.oor-splash-screen.visible{
  display: flex;
  opacity: 1;
}

.oor-splash-screen.hidden{
  opacity: 0;
}

.oor-splash-gif{
  width: 400px;
  height: 400px;
  object-fit: contain;
  display: block;
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Стили для замороженного PNG (под GIF) */
#splash-gif-frozen{
  width: 400px;
  height: 400px;
  max-width: 400px;
  max-height: 400px;
  object-fit: contain;
  display: block;
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  cursor: pointer;
}

/* Mobile optimization for splash gif */
@media (max-width: 768px) {
  .oor-splash-gif,
  #splash-gif-frozen,
  .oor-splash-screen canvas.oor-splash-gif{
    width: 400px;
    height: 400px;
    max-width: calc(100% - 32px);
    max-height: calc(100% - 32px);
  }
}

/* Large screen optimization for splash screen */
@media (min-width: 1921px) {
  .oor-splash-screen {
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
  }
}

.oor-hero-subtitle{
  font-family:var(--font-ui);
  font-size: 4.000rem;
  line-height:100%;
  font-weight:300;
  letter-spacing: -0.160rem;
  text-transform:uppercase;
  margin:0 0 var(--spacing-lg) 0;
  color:var(--color-text);
}

.oor-hero-social{
  display:flex;
  align-items:center;
  gap:var(--spacing-sm);
}

.oor-hero-social svg{
  opacity:0.7;
}

.oor-hero-tags{
  display:flex;
  align-items:center;
  justify-content:space-between;
  align-self:stretch;
  flex-direction:row;
}

.oor-hero-tag{
  font-family:var(--font-ui);
  font-size:var(--font-size-root);
  line-height:120%;
  font-weight:300;
  letter-spacing: -0.040rem;
  color:var(--color-text);
}

/* ===== MUSICAL ASSOCIATION SECTION ===== */
.oor-musical-association {
  background: var(--color-white);
  min-height: calc(100 * var(--oor-vh));
  padding-left: var(--container-x);
}

.oor-musical-association-left {
  display: flex;
  flex-direction: column;
  gap: 40px;
  padding: 40px 0;
  padding-bottom: 40px;
  margin: 0;
  align-items: flex-start;
  justify-content: space-between;
  text-align: left;
  height: calc(100 * var(--oor-vh));
  box-sizing: border-box;
}

.oor-musical-association-right {
  display: flex;
  height: calc(100 * var(--oor-vh));
  padding: 40px 0;
  margin: 0;
  align-items: center;
  gap: 10px;
  background-image: url('../../public/assets/musical-association.png');
  background-size: cover;
  background-position: left center;
  background-repeat: no-repeat;
  position: relative;
  box-sizing: border-box;
}

.oor-section-number {
  color: var(--Black, #000);
  text-align: center;
  font-family: "Pragmatica Extended";
  font-size: 0.750rem;
  font-style: normal;
  font-weight: 300;
  line-height: 120%; /* 14.4px */
  letter-spacing: -0.015rem;
  text-transform: uppercase;
}

.oor-musical-association-title {
  color: var(--Black, #000);
  font-family: "Pragmatica Extended";
  font-size: 2.000rem;
  font-style: normal;
  font-weight: 300;
  line-height: 116%; /* 37.12px */
  letter-spacing: -0.080rem;
  text-transform: uppercase;
  margin: 0;
  max-width: calc(5 * (100% / 6)); /* Ширина 5 колонок из 6 */
  width: 100%;
}

.oor-line-divider {
  width: 18px;
  height: 0;
}

.oor-line-divider img {
  width: 18px;
  height: 1px;
  filter: brightness(0);
}

.oor-musical-association-text {
  color: var(--Black, #000);
  font-family: "Pragmatica Extended";
  font-size: 1.000rem;
  font-style: normal;
  font-weight: 300;
  line-height: 150%;
  margin: 0;
  max-width: calc(4 * (100% / 6)); /* Ширина 4 колонки из 6 */
  width: 100%;
}

.oor-musical-association-icon {
  display: flex;
  width: 156px;
  height: 567px;
  padding-left: 0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  z-index: 1;
  mix-blend-mode: difference;
}

.oor-musical-association-icon svg {
  width: 156px;
  height: 567px;
}

.oor-musical-association-plus {
  position: absolute;
  right: var(--container-x);
  bottom: 40px;
  width: 17px;
  height: 17px;
  z-index: 10;
}

.oor-musical-association-plus img {
  width: 17px;
  height: 17px;
  mix-blend-mode: difference;
}

/* ===== CURSOR LINKS STYLES ===== */
/* Убираем стандартные стили ссылок для элементов с курсором (только для изображений) */
a.text-cuberto-cursor-1:not([href^="mailto:"]),
a.text-cuberto-cursor-2:not([href^="mailto:"]) {
  color: inherit;
  text-decoration: none;
  display: block;
}

a.text-cuberto-cursor-1:not([href^="mailto:"]):hover,
a.text-cuberto-cursor-2:not([href^="mailto:"]):hover {
  color: inherit;
  text-decoration: none;
}

/* ===== CHALLENGE TO THE USUAL SECTION ===== */
.oor-challenge-section {
    display: flex;
    width: 100%;
    padding: 80px var(--container-x);
    align-items: center;
    background: #000;
    gap: 0;
}

.oor-challenge-left {
    display: flex;
    flex: 2;
    flex-direction: column;
    align-items: flex-start;
    gap: 80px;
}

.oor-challenge-gap {
    flex: 1;
}

.oor-challenge-right {
    display: flex;
    flex: 2;
    flex-direction: column;
    align-items: flex-start;
    gap: 32px;
    align-self: stretch;
    justify-content: space-between;
}

.oor-challenge-text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 64px;
    align-self: stretch;
}

.oor-challenge-title {
    align-self: stretch;
    color: var(--White, #FFF);
    font-family: "Pragmatica Extended";
    font-size: 3.000rem;
    font-style: normal;
    font-weight: 300;
    line-height: 100%;
    letter-spacing: -0.120rem;
    text-transform: uppercase;
}

.oor-manifesto-button {
    display: flex;
    padding-top: 8px;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
    border-top: 1px solid rgba(255, 255, 255, 0.70);
    background: none;
    border: none;
    border-top: 1px solid rgba(255, 255, 255, 0.70);
    outline: none;
    cursor: pointer;
    text-decoration: none;
    color: inherit;
}

.oor-manifesto-text {
    color: var(--White, #FFF);
    font-family: "Pragmatica Extended";
    font-size: 1.000rem;
    font-style: normal;
    font-weight: 300;
    line-height: 120%;
    letter-spacing: -0.040rem;
}

.oor-without-fear-text {
    align-self: stretch;
    color: var(--White, #FFF);
    font-family: "Pragmatica Extended";
    font-size: 0.875rem;
    font-style: normal;
    font-weight: 300;
    line-height: 140%;
    opacity: 0.4;
}

.oor-without-fear-text p {
    color: var(--White, #FFF);
    font-family: "Pragmatica Extended";
    font-size: 1.000rem;
    font-style: normal;
    font-weight: 300;
    line-height: 120%;
    letter-spacing: -0.040rem;
}

.oor-without-fear-images {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    align-self: stretch;
}

.oor-without-fear-image {
    flex: 1;
}

.oor-without-fear-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.oor-without-fear-image-2 {
    width: 26.5%;
}

.oor-without-fear-image-2 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.oor-quality-strength {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    align-self: stretch;
}

.oor-challenge-section-number {
    color: var(--White, #FFF);
    text-align: center;
    font-family: "Pragmatica Extended";
    font-size: 0.750rem;
    font-style: normal;
    font-weight: 300;
    line-height: 120%;
    letter-spacing: -0.030rem;
}

.oor-quality-line-divider {
    display: flex;
    align-items: center;
    justify-content: center;
}

.oor-quality-line-divider img {
    width: 18px;
    height: 2px;
    opacity: 0.5;
    filter: brightness(0) invert(1);
}

.oor-become-artist-button {
    display: flex;
    padding-top: 8px;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
    border-top: 1px solid rgba(255, 255, 255, 0.70);
    background: none;
    border: none;
    border-top: 1px solid rgba(255, 255, 255, 0.70);
    outline: none;
    cursor: pointer;
}

.oor-become-artist-text {
    color: var(--White, #FFF);
    font-family: "Pragmatica Extended";
    font-size: 1.000rem;
    font-style: normal;
    font-weight: 300;
    line-height: 120%;
    letter-spacing: -0.040rem;
}

.oor-quality-content {
    display: flex;
    flex-direction: column;
    gap: 32px;
    align-self: stretch;
    align-items: flex-start;
    text-align: left;
}

.oor-quality-strength-images {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    align-self: stretch;
}

.oor-quality-img-container-1 {
    flex: 6;
}

.oor-quality-img-container-2 {
    flex: 4;
    height: 100%;
}

.oor-quality-img-container-1 img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.oor-quality-img-container-2 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* .oor-become-artist-container - ширина задается через JavaScript */

.oor-quality-title {
    align-self: stretch;
    color: var(--White, #FFF);
    font-family: "Pragmatica Extended";
    font-size: 2.000rem;
    font-style: normal;
    font-weight: 300;
    line-height: 116%;
    letter-spacing: -0.080rem;
    text-transform: uppercase;
    opacity: 0.4;
}

/* ===== CHALLENGE TO THE USUAL 2 SECTION ===== */
.oor-challenge-2-section {
  background: #000;
  padding: 160px var(--container-x) 104px var(--container-x);
  position: relative;
}

.oor-challenge-2-counter {
  color: var(--White, #FFF);
  text-align: center;
  font-family: "Pragmatica Extended";
  font-size: 0.750rem;
  font-style: normal;
  font-weight: 300;
  line-height: 120%; /* 14.4px */
  letter-spacing: -0.015rem;
  position: absolute;
  left: 48px;
  top: 80px;
}

.oor-challenge-2-plus-1 {
  position: absolute;
  right: var(--container-x);
  top: 80px;
  width: 17px;
  height: 17px;
  mix-blend-mode: difference;
}

.oor-challenge-2-plus-1 img {
  width: 17px;
  height: 17px;
}

.oor-challenge-2-plus-2 {
  position: absolute;
  right: var(--container-x);
  bottom: 80px;
  width: 17px;
  height: 17px;
  mix-blend-mode: difference;
}

.oor-challenge-2-plus-2 img {
  width: 17px;
  height: 17px;
}

.oor-challenge-2-left {
  display: grid;
  grid-template-columns: 4fr 3fr;
  gap: 24px;
  align-items: start;
}

/* Размещение на десктопе: картинка — колонка 1, текст и music-game — колонка 2 */
.oor-challenge-2-left .oor-challenge-studio-image {
  grid-column: 1;
  grid-row: 1 / -1;
}
.oor-challenge-2-left .oor-challenge-2-text {
  grid-column: 2;
  grid-row: 1;
}
.oor-challenge-2-left .oor-challenge-2-music-game {
  grid-column: 2;
  grid-row: 2;
}

.oor-challenge-studio-image {
  display: block;
  overflow: hidden;
  width: 100%;
}

.oor-challenge-studio-image picture {
  display: block;
  width: 100%;
}

.oor-challenge-studio-image img {
  width: 100%;
  height: auto;
  display: block;
  vertical-align: top;
}

.oor-challenge-2-text {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  height: 100%;
}

.oor-challenge-2-studio {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
}

.oor-challenge-2-music-game {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  align-self: stretch;
  text-decoration: none;
  color: inherit;
}

.oor-challenge-2-studio-title {
  color: var(--White, #FFF);
  font-family: "Pragmatica Extended";
  font-size: 2.500rem;
  font-style: normal;
  font-weight: 300;
  line-height: 116%; /* 46.4px */
  letter-spacing: -0.100rem;
  text-transform: uppercase;
  margin: 0;
}

.oor-challenge-2-studio-text {
  color: var(--color-white);
  font-family: "Pragmatica Extended";
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 300;
  line-height: 140%; /* 19.6px */
  letter-spacing: -0.035rem;
  opacity: 0.6;
  margin: 0 0 48px 0;
}

.oor-challenge-2-music-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: transform 0.2s ease-out, opacity 0.2s ease-out;
  transform: translate(var(--mouse-x, 0), var(--mouse-y, 0));
  opacity: 0.6;
}

.oor-challenge-2-music-icon:hover {
  opacity: 1;
}

.oor-challenge-2-music-icon img {
  width: 32px;
  height: 32px;
}

.oor-challenge-2-music-text {
  color: var(--color-gray);
  font-family: "Pragmatica Extended";
  font-size: 1.500rem;
  font-style: normal;
  font-weight: 300;
  line-height: 130%; /* 31.2px */
  letter-spacing: -0.060rem;
  text-transform: uppercase;
  margin: 0;
}

.oor-challenge-2-good-works {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 24px;
  flex-shrink: 0;
}

.oor-challenge-2-good-works-image {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
}

.oor-challenge-2-good-works-image img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.oor-challenge-2-good-works-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  align-self: stretch;
}

.oor-challenge-2-good-works-header {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  align-self: stretch;
  justify-content: space-between;
}

.oor-challenge-2-good-works-title {
  color: var(--White, #FFF);
  font-family: "Pragmatica Extended";
  font-size: 2.000rem;
  font-style: normal;
  font-weight: 300;
  line-height: 116%; /* 37.12px */
  letter-spacing: -0.080rem;
  text-transform: uppercase;
  margin: 0;
}

.oor-challenge-2-good-works-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: transform 0.2s ease-out, opacity 0.2s ease-out;
  transform: translate(var(--mouse-x, 0), var(--mouse-y, 0));
  opacity: 0.6;
}

.oor-challenge-2-good-works-icon:hover {
  opacity: 1;
}

.oor-challenge-2-good-works-icon img {
  width: 32px;
  height: 32px;
}

.oor-challenge-2-good-works-description {
  color: var(--White, #FFF);
  font-family: "Pragmatica Extended";
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 300;
  line-height: 140%; /* 19.6px */
  opacity: 0.6;
  margin: 0;
}

/* ===== OUT OF TALK SECTION ===== */
.oor-out-of-talk-section {
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: flex-start;
}

.oor-out-of-talk-text {
  display: flex;
  padding: 80px var(--container-x) 0 var(--container-x);
  align-items: flex-start;
  align-self: stretch;
}

.oor-out-of-talk-media {
  display: grid;
  grid-template-columns: 3fr 9fr;
  gap: 80px;
  padding: 120px 0 0 var(--container-x);
  align-items: stretch;
  align-self: stretch;
}

.oor-out-of-talk-move {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  flex: 1 0 0;
}

.oor-out-of-talk-line-1,
.oor-out-of-talk-line-2 {
  display: flex;
  align-items: center;
}

.oor-out-of-talk-line-1 img,
.oor-out-of-talk-line-2 img {
  width: 18px;
  height: 1px;
  filter: brightness(0);
}

.oor-out-of-talk-link {
  color: #000;
  font-family: "Pragmatica Extended";
  font-size: 1.000rem;
  font-style: normal;
  font-weight: 300;
  line-height: 120%; /* 19.2px */
  letter-spacing: -0.040rem;
  text-decoration: none;
  transition: none;
}

.oor-out-of-talk-link:hover {
  text-decoration: none;
}

.oor-out-of-talk-images {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 24px;
  align-items: start;
}

.oor-out-of-talk-image-1,
.oor-out-of-talk-image-2,
.oor-out-of-talk-image-3 {
  width: 100%;
}

.oor-out-of-talk-image-1 {
  position: relative;
}

.oor-out-of-talk-image-1 img,
.oor-out-of-talk-image-2 img,
.oor-out-of-talk-image-3 img {
  width: 100%;
  height: auto;
  display: block;
}


.oor-out-of-talk-title {
  display: flex;
  width: calc(5 * (100% / 12));
  flex-direction: column;
  align-items: flex-start;
  gap: 32px;
  flex-shrink: 0;
}

.oor-out-of-talk-heading {
  align-self: stretch;
  color: #000;
  font-family: "Pragmatica Extended";
  font-size: 3.000rem;
  font-style: normal;
  font-weight: 300;
  line-height: 100%; /* 48px */
  letter-spacing: -0.120rem;
  text-transform: uppercase;
  margin: 0;
}

.oor-out-of-talk-description {
  color: #000;
  font-family: "Pragmatica Extended";
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 300;
  line-height: 140%; /* 19.6px */
  letter-spacing: -0.018rem;
  margin: 0;
  width: 100%;
  padding-right: 80px;
}

.oor-out-of-talk-counter {
  color: #000;
  text-align: center;
  font-family: "Pragmatica Extended";
  font-size: 0.750rem;
  font-style: normal;
  font-weight: 300;
  line-height: 120%; /* 14.4px */
  letter-spacing: -0.030rem;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 1;
}

.oor-out-of-talk-plus {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 1;
}

.oor-out-of-talk-plus img {
  width: 17px;
  height: 17px;
  filter: brightness(0);
}

/* Events Section */
.oor-events-section {
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: flex-start;
  padding-top: 120px;
}

.oor-events-text {
  display: flex;
  padding: 80px var(--container-x) 0 var(--container-x);
  align-items: flex-start;
  align-self: stretch;
}

.oor-events-media {
  display: grid;
  grid-template-columns: 7fr 2fr 3fr;
  padding: 80px var(--container-x);
  align-items: stretch;
  width: 100%;
}

.oor-events-posters {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  align-items: stretch;
}

.oor-events-poster-1,
.oor-events-poster-2 {
  width: 100%;
  position: relative;
}

.oor-events-poster-1 img,
.oor-events-poster-2 img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

.oor-events-sold-out {
  display: inline-flex;
  padding: 12px;
  align-items: center;
  gap: 4px;
  color: var(--color-white);
  text-align: center;
  font-family: "Pragmatica";
  font-size: 0.750rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: -0.015rem;
  text-transform: uppercase;
  background: #000;
  border: none;
  cursor: not-allowed;
  position: absolute;
  bottom: 16px;
  right: 16px;
  transition: all 0.3s ease;
  transform: translate(var(--mouse-x, 0), var(--mouse-y, 0));
}

.oor-events-sold-out:hover {
  background: var(--color-white);
  color: #000;
}

.oor-events-sold-out:active {
  animation: shake 1.2s ease-in-out;
  --mouse-x: 0px !important;
  --mouse-y: 0px !important;
}

@keyframes shake {
  0%, 100% { transform: translate(0, 0) translateX(0); }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% { transform: translate(0, 0) translateX(-8px); }
  10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% { transform: translate(0, 0) translateX(8px); }
}

.oor-events-buy-ticket {
  display: inline-flex;
  padding: 12px;
  align-items: center;
  gap: 4px;
  color: #000;
  text-align: center;
  font-family: "Pragmatica";
  font-size: 0.750rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: -0.015rem;
  text-transform: uppercase;
  background: var(--color-white);
  border: none;
  cursor: pointer;
  position: absolute;
  bottom: 16px;
  right: 16px;
  transition: all 0.3s ease;
  transform: translate(var(--mouse-x, 0), var(--mouse-y, 0));
}

.oor-events-buy-ticket:hover {
  background: #000;
  color: var(--color-white);
}

.oor-events-buy-ticket img {
  width: 18px;
  height: 1px;
  filter: brightness(0);
}

.oor-events-buy-ticket:hover img {
  filter: brightness(0) invert(1);
}

.oor-events-photo {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
}

.oor-events-photo-image {
  width: 100%;
}

.oor-events-photo-image img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

.oor-events-photo-link {
  color: #000;
  font-family: "Pragmatica Extended";
  font-size: 1.000rem;
  font-style: normal;
  font-weight: 300;
  line-height: 120%; /* 19.2px */
  letter-spacing: -0.040rem;
  text-decoration: none;
  transition: none;
}

.oor-events-photo-link:hover {
  text-decoration: none;
}


.oor-events-title {
  display: flex;
  width: calc(5 * (100% / 12));
  flex-direction: column;
  align-items: flex-start;
  gap: 32px;
}

.oor-events-heading {
  align-self: stretch;
  color: #000;
  font-family: "Pragmatica Extended";
  font-size: 3.000rem;
  font-style: normal;
  font-weight: 300;
  line-height: 100%; /* 48px */
  letter-spacing: -0.120rem;
  text-transform: uppercase;
  margin: 0;
}

.oor-events-description {
  color: #000;
  font-family: "Pragmatica Extended";
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 300;
  line-height: 140%; /* 19.6px */
  letter-spacing: -0.018rem;
  margin: 0;
  width: 100%;
  padding-right: 80px;
}

.oor-events-counter {
  color: #000;
  text-align: center;
  font-family: "Pragmatica Extended";
  font-size: 0.750rem;
  font-style: normal;
  font-weight: 300;
  line-height: 120%; /* 14.4px */
  letter-spacing: -0.030rem;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 1;
}

.oor-events-plus {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 1;
}

.oor-events-plus img {
  width: 17px;
  height: 17px;
  filter: brightness(0);
}

/* Merch Section */
.oor-merch-section {
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: flex-start;
  overflow-x: hidden;
  padding-bottom: 120px;
}

.oor-merch-text {
  display: grid;
  grid-template-columns: 3fr 2fr 5fr;
  padding: 120px var(--container-x) 0 var(--container-x);
  align-items: stretch;
  width: 100%;
}

.oor-merch-move {
  grid-column: 1;
}

.oor-merch-content {
  grid-column: 3;
}

/* Merch Images Flex */
.oor-merch-images-grid {
  padding: 120px var(--container-x) 0 var(--container-x);
  width: 100%;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
}

.oor-merch-images-wrapper {
  display: flex;
  gap: 16px;
  width: fit-content;
}

.oor-merch-image-item {
  height: auto;
  overflow: hidden;
  border-radius: 0;
}

.oor-merch-image-item img {
  width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
}



.oor-merch-move {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  flex: 1 0 0;
}

.oor-merch-counter {
  color: #000;
  text-align: center;
  font-family: "Pragmatica Extended";
  font-size: 0.750rem;
  font-style: normal;
  font-weight: 300;
  line-height: 120%; /* 14.4px */
  letter-spacing: -0.030rem;
}

.oor-merch-line-2 {
  display: flex;
  align-items: center;
}

.oor-merch-line-2 img {
  width: 18px;
  height: 1px;
  filter: brightness(0);
}

.oor-merch-title {
  color: #000;
  font-family: "Pragmatica Extended";
  font-size: 4.000rem;
  font-style: normal;
  font-weight: 300;
  padding: 80px 0;
  line-height: 100%; /* 64px */
  letter-spacing: -0.280rem;
  text-transform: uppercase;
  margin: 0;
}

.oor-merch-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 40px;
  position: relative;
}

.oor-merch-plus-icon {
  position: absolute;
  top: 0;
  right: 0;
}

.oor-merch-plus-icon img {
  width: 17px;
  height: 17px;
  filter: brightness(0);
}

.oor-merch-description {
  color: #000;
  font-family: "Pragmatica Extended";
  font-size: 1.500rem;
  font-style: normal;
  font-weight: 300;
  line-height: 140%; /* 19.6px */
  letter-spacing: -0.035rem;
  margin: 0;
  padding-top: 80px;
  width: calc(5 * (100% / 7));
}

.oor-merch-buttons {
  display: flex;
  align-items: center;
  gap: 16px;
  align-self: stretch;
}

.oor-merch-button {
  display: flex;
  padding: 12px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  color: #000;
  font-family: "Pragmatica";
  font-size: 0.750rem;
  font-style: normal;
  font-weight: 400;
  line-height: 100%; /* 12px */
  text-transform: uppercase;
  background: transparent;
  border: 1px solid #000;
  cursor: pointer;
  transition: all 0.3s ease;
  transform: translate(var(--mouse-x, 0), var(--mouse-y, 0));
}

.oor-merch-button:hover {
  background: #000;
  color: var(--color-white);
}


/* Slider Section */
.overlay-top,
.slider-heading {
  color: #000;
  font-family: "Pragmatica Extended";
  font-size: 2.000rem;
  font-style: normal;
  font-weight: 300;
  line-height: 116%; /* 37.12px */
  letter-spacing: -0.080rem;
  text-transform: uppercase;
}

.overlay-bottom,
.slider-all-link {
  color: #000;
  font-family: "Pragmatica Extended";
  font-size: 1.000rem;
  font-style: normal;
  font-weight: 300;
  line-height: 120%; /* 19.2px */
  letter-spacing: -0.040rem;
  text-decoration: none;
  transition: none;
}

/* Desktop only styles for slider overlay */


.slide-meta-top {
  overflow: hidden;
  color: var(--Color-Base---black, #000);
  text-overflow: ellipsis;
  font-family: var(--font-family-extended, "Pragmatica Extended");
  font-size: 0.750rem;
  font-style: normal;
  font-weight: var(--font-weight-light, 300);
  line-height: var(--font-leading-5, 1.25rem); /* 166.667% */
  letter-spacing: var(--font-tracking-normal, 0);
}

.artist-name {
  overflow: hidden;
  color: var(--Color-Base---black, #000);
  text-overflow: ellipsis;
  font-family: var(--font-family-extended, "Pragmatica Extended");
  font-size: 0.875rem;
  font-style: normal;
  font-weight: var(--font-weight-light, 300);
  line-height: var(--font-leading-5, 1.25rem); /* 142.857% */
  letter-spacing: var(--font-tracking-normal, 0);
}

/* Footer Section */
.oor-footer {
  display: flex;
  width: 100%;
  padding: 120px 0 40px 0; /* горизонтальный отступ только у .oor-container внутри */
  flex-direction: column;
  align-items: flex-start;
  gap: 120px;
  background: #000;
}

.oor-footer-content {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  align-self: stretch;
  gap: 80px; /* Минимальный отступ между left и links */
}

.oor-footer-content-left {
  display: flex;
  width: fit-content;
  flex-direction: column;
  align-items: flex-start;
  gap: 72px;
  flex-shrink: 0; /* Запрещаем сжатие, чтобы сохранить gap */
}

.oor-footer-logo {
  align-self: stretch;
}

.oor-footer-logo-image {
  width: 100%;
  height: auto;
  display: block;
}

.oor-footer-email {
  color: var(--color-white);
  font-family: "Pragmatica Extended";
  font-size: 4.000rem;
  font-style: normal;
  font-weight: 400;
  line-height: 100%; /* 64px */
  letter-spacing: -0.160rem;
  text-transform: uppercase;
  align-self: stretch;
  text-decoration: none;
  cursor: pointer;
  transition: none;
}

.oor-footer-email:hover {
  color: #FA4144;
}

.oor-footer-links {
  display: flex;
  width: fit-content;
  min-width: 0; /* Разрешаем сжатие */
  max-width: 100%; /* Ограничиваем максимальную ширину */
  padding-bottom: 8px;
  flex-direction: column;
  align-items: flex-start;
  gap: 80px;
  flex-shrink: 1; /* Разрешаем сжатие при нехватке места */
}

.oor-footer-links-top {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 12px;
  align-self: stretch;
  min-width: 0; /* Разрешаем сжатие */
  max-width: 100%; /* Ограничиваем максимальную ширину */
}

.oor-footer-nav-title {
  color: var(--color-white);
  font-family: "Pragmatica";
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.018rem;
  text-transform: uppercase;
  opacity: 0.3;
  margin: 0;
}

.oor-footer-links-top-group {
  display: flex;
  align-items: flex-start;
  column-gap: 32px; /* Горизонтальный отступ между ссылками */
  row-gap: 8px; /* Отступ между строками при переносе */
  flex-wrap: wrap; /* Разрешаем перенос при нехватке места */
  max-width: 100%; /* Ограничиваем ширину для переноса */
}

.oor-footer-link {
  color: var(--color-white);
  font-family: "Pragmatica";
  font-size: 0.750rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: -0.015rem;
  text-decoration: none;
  text-transform: uppercase;
  transition: none;
  cursor: pointer;
  white-space: nowrap; /* Предотвращаем перенос текста внутри ссылки */
  flex-shrink: 0; /* Ссылки не сжимаются */
}

.oor-footer-link:hover {
  color: #FA4144;
}

.oor-footer-links-bottom {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
}

.oor-footer-social-title {
  color: var(--color-white);
  font-family: "Pragmatica";
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.018rem;
  text-transform: uppercase;
  opacity: 0.3;
  margin: 0;
}

.oor-footer-links-bottom-group {
  display: flex;
  align-items: flex-start;
  gap: 32px;
}

.oor-footer-privacy {
  display: flex;
  justify-content: space-between;
  align-items: center;
  align-self: stretch;
}

.oor-footer-privacy-left {
  display: flex;
  align-items: center;
  gap: 24px;
}

.oor-footer-privacy-link {
  color: var(--color-white);
  font-family: "Pragmatica";
  font-size: 0.750rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.015rem;
  text-decoration: none;
  text-transform: uppercase;
  transition: none;
  opacity: 0.3;
  cursor: pointer;
}

.oor-footer-privacy-link:hover {
  color: #FA4144;
}

.oor-footer-copyright {
  color: var(--color-white);
  text-align: right;
  font-family: "Pragmatica Extended";
  font-size: 4.000rem;
  font-style: normal;
  font-weight: 400;
  line-height: 100%; /* 64px */
  letter-spacing: -0.280rem;
  text-transform: uppercase;
  opacity: 0.1;
}

/* Мобильная адаптация футера */



/* UPPERCASE стили для заголовков */
.oor-hero-description-title {
  text-transform: uppercase;
}

.overlay-top {
  text-transform: uppercase;
}

.slider-heading {
  text-transform: uppercase;
}

.oor-out-of-talk-heading {
  text-transform: uppercase;
}

.oor-challenge-title {
  text-transform: uppercase;
}

.oor-musical-association-title {
  text-transform: uppercase;
}

.oor-challenge-2-music-text {
  text-transform: uppercase;
}

/* Стили для бургер-меню */
.oor-header .oor-burger-menu {
  display: flex; /* По умолчанию показан */
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  position: relative;
  transform: translateX(8px) translateZ(0); /* Принудительный отступ вправо + GPU ускорение */
  transition: all 0.3s ease;
  /* Создаем новый контекст наложения */
  mix-blend-mode: normal;
  isolation: isolate;
  will-change: transform;
  z-index: 999;
}

.oor-header .oor-burger-menu:hover {
  background: none;
  border: none;
}

.oor-burger-menu .oor-burger-icon {
  width: 48px;
  height: 48px;
  transition: opacity 0.3s ease;
  color: #000;
  fill: #000;
  stroke: #000;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 999;
  /* Сбрасываем mix-blend-mode */
  mix-blend-mode: normal;
  isolation: isolate;
  will-change: transform;
}

.oor-burger-menu .oor-burger-icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* Кнопка закрыть в сайдбаре */
#close-menu {
  opacity: 1;
  visibility: visible;
  background: none;
  border: none;
  cursor: pointer;
  position: absolute;
  top: 24px;
  right: calc(var(--container-x) - 8px); /* Принудительный отступ влево на 8px */
  z-index: 10001;
  width: 48px;
  height: 48px;
  transform: none;
}

#close-menu img {
  width: 48px;
  height: 48px;
  filter: brightness(0) invert(1);
  fill: white;
}


/* Мобильное меню (сайдбар) */
.oor-mobile-menu {
  position: fixed;
  top: 0;
  right: -100%;
  width: 360px;
  height: calc(100 * var(--oor-vh));
  background: #000;
  z-index: 1000;
  transition: right 0.3s ease;
  overflow-y: auto;
}

.oor-mobile-menu.active {
  right: 0;
}

/* Блокируем скролл body когда меню открыто */
body:has(.oor-mobile-menu.active) {
  overflow: hidden !important;
  position: fixed !important;
  width: 100% !important;
}

.oor-mobile-menu-content {
  padding: 80px 40px 0;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.oor-mobile-menu-main {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.oor-mobile-menu-link {
  color: var(--color-white);
  font-family: var(--font-ui);
  font-size: 1.5rem;
  font-weight: 300;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: -0.02rem;
  transition: all 0.3s ease;
  padding: 8px 0;
  opacity: 0.8;
}

.oor-mobile-menu-link:hover {
  color: var(--color-white);
  opacity: 1;
}

.oor-mobile-menu-link--active {
  color: rgba(255, 255, 255, 0.6);
  opacity: 1;
}

.oor-mobile-menu-bottom {
  margin-top: auto;
  padding-top: 40px;
  padding-bottom: 16px;
}

.oor-mobile-menu-btn {
  background: none;
  border: 1px solid var(--color-white);
  color: var(--color-white);
  font-family: var(--font-ui);
  font-size: 1rem;
  font-weight: 300;
  text-transform: uppercase;
  letter-spacing: -0.01rem;
  padding: 16px var(--container-x);
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 12px;
  transition: all 0.3s ease;
  width: 100%;
  justify-content: center;
  text-decoration: none;
}

.oor-mobile-menu-btn:hover {
  background: var(--color-white);
  color: #000;
}

.oor-mobile-menu-btn-icon {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.oor-mobile-menu-btn-icon img {
  width: 100%;
  height: 100%;
  filter: brightness(0) invert(1);
}

.oor-mobile-menu-btn:hover .oor-mobile-menu-btn-icon img {
  filter: brightness(0) invert(0);
}

/* ========================================
   MEDIA QUERIES - все медиа-запросы собраны здесь
   ======================================== */

/* Десктопные стили - скрываем бургер, показываем обычное меню */
@media (min-width: 1025px) {
  .oor-header .oor-burger-menu {
    display: none !important;
  }
  
  .oor-nav {
    display: block;
  }
  
  .oor-btn-small {
    display: flex;
  }

  /* Musical Association: desktop-only larger bottom padding */
  .oor-musical-association-left {
    padding-bottom: 96px;
  }
}

/* Стили для экранов меньше 1440px - уменьшаем font-size для merch description */
@media (max-width: 1439px) {
  .oor-merch-description {
    font-size: 1.250rem; /* Уменьшаем с 1.500rem до 1.250rem */
  }
}

/* Медиа-запрос для диапазона 1680px - 1025px: включаем wrap для навигации */
@media (min-width: 1025px) and (max-width: 1680px) {
  .oor-footer-content {
    justify-content: space-between;
    gap: 80px;
  }
  
  .oor-footer-links {
    /* Разрешаем сжатие, но с ограничением */
    flex: 0 1 auto;
    min-width: 0;
  }
  
  .oor-footer-links-top {
    width: 100%;
    max-width: 100%;
  }
  
  .oor-footer-links-top-group {
    flex-wrap: wrap;
    width: 100%; /* Полная ширина для переноса */
    max-width: 100%;
  }
}

@media (max-width: 1024px) {
  .oor-footer {
    padding: 60px 0 20px 0;
    gap: 60px;
  }
  
  .oor-footer-content {
    flex-direction: column;
    align-items: flex-start;
    gap: 120px;
  }
  
  .oor-footer-content-left {
    width: 100%;
    gap: 40px;
  }
  
  .oor-footer-logo {
    width: fit-content;
  }
  
  .oor-footer-logo-image {
    width: auto;
    height: auto;
  }
  
  .oor-footer-links {
    width: 100%;
    gap: 40px;
  }
  
  .oor-footer-links-top-group {
    flex-wrap: wrap;
    gap: 24px;
  }
  
  .oor-footer-links-bottom-group {
    flex-wrap: wrap;
    gap: 24px;
  }
  
  .oor-footer-privacy {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
  
  .oor-footer-privacy-left {
    flex-direction: row;
    gap: 24px;
  }
  
  .oor-footer-copyright {
    text-align: left;
    font-size: 2.5rem;
  }
  
  /* Hero секция - выравниваем year по низу title с отступом 8px */
  .oor-hero-title-block {
    align-items: flex-end;
  }
  
  .oor-hero-year {
    margin-bottom: 16px;
  }
  
  /* Скрываем десктопное меню на планшетах и мобильных */
  .oor-nav {
    display: none;
  }
  
  .oor-btn-small {
    display: none;
  }
  
  /* Уменьшаем gap для header-right на мобильной версии */
  .oor-header-right {
    gap: 0;
  }
  
  /* Показываем бургер-меню */
  .oor-header .oor-burger-menu {
    display: flex !important;
  }
  
  /* На странице studio сохраняем черный фон даже на мобилке */
  body.oor-studio-page .oor-header {
    background: #000 !important;
    mix-blend-mode: normal !important;
  }
  
  body.oor-studio-page .oor-logo img {
    mix-blend-mode: normal !important;
    filter: brightness(0) invert(1) !important;
  }

  /* Бургер-меню на странице студии на мобильных - белая иконка */
  body.oor-studio-page .oor-header .oor-burger-menu .oor-burger-icon img {
    filter: brightness(0) invert(1) !important;
    mix-blend-mode: normal !important;
    opacity: 1 !important;
  }
  
  /* Отключаем mix-blend-mode: difference на мобилке (только для не-studio страниц) */
  body:not(.oor-studio-page) .oor-header {
    mix-blend-mode: normal !important;
  }
  
  body:not(.oor-studio-page) .oor-logo img {
    mix-blend-mode: normal !important;
    filter: brightness(0) !important;
  }
}

/* Desktop only styles for slider overlay */
@media (min-width: 769px) {
  .overlay-top {
    padding-left: var(--container-x);
    padding-top: 80px;
  }
  
  .overlay-center {
    padding-left: var(--container-x);
  }
  
  .overlay-bottom {
    padding-left: var(--container-x);
    padding-bottom: 80px;
  }

  /* Musical Association: tablet/desktop bottom padding */
  .oor-musical-association-left {
    padding-bottom: 40px;
  }
  
  /* Studio page - ensure black header on desktop */
  body.oor-studio-page .oor-header {
    background: #000 !important;
    mix-blend-mode: normal !important;
  }
  
  body.oor-studio-page .oor-logo img {
    mix-blend-mode: normal !important;
    filter: brightness(0) invert(1) !important;
  }
}

/* Адаптивные стили для мобильных устройств (768px и ниже) */
@media (max-width: 768px) {
  /* Уменьшаем базовый размер шрифта для мобильных */
  html {
    font-size: 14px; /* Уменьшаем с 16px по умолчанию до 14px */
  }
  
  .oor-musical-association {
    padding-left: var(--container-x);
  }
  
  .oor-challenge-section {
    padding: 80px var(--container-x);
  }
  
  .oor-challenge-2-section {
    padding: 160px var(--container-x) 104px var(--container-x);
  }
  
  .oor-out-of-talk-text {
    padding: 80px var(--container-x) 0 var(--container-x);
  }
  
  .oor-out-of-talk-media {
    padding: 120px 0 0 var(--container-x);
  }
  
  .oor-events-text {
    padding: 80px var(--container-x) 0 var(--container-x);
  }
  
  .oor-events-media {
    padding: 80px var(--container-x);
  }
  
  .oor-merch-text {
    padding: 120px var(--container-x) 0 var(--container-x);
  }
  
  .oor-merch-images-grid {
    padding: 120px var(--container-x) 0 var(--container-x);
  }
  
  /* Plus иконки - позиционирование для мобильных */
  .oor-hero-plus-top-left {
    left: 24px;
    right: auto;
  }
  
  .oor-hero-plus-bottom-left {
    left: 24px;
    right: auto;
  }
  
  .oor-challenge-2-counter {
    left: 24px;
  }
  
  .oor-hero-description-title {
    font-size: 3.000rem;
  }
  
  .oor-merch-description {
    width: auto;
  }
  
  .oor-nav-item .tn-atom {
    line-height: 24px !important;
  }

  .oor-quality-title {
    font-size: 1.4rem;
  }

  .oor-become-artist-container .oor-become-artist-button {
    width: 100%;
  }

  .oor-challenge-2-good-works-header {
    flex-wrap: wrap;
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-start;
    align-self: stretch;
    justify-content: space-between;
  }

  .oor-challenge-2-good-works-icon {
    flex-basis: 100%;
    justify-content: flex-start;
    margin-top: 16px;
  }

  .oor-challenge-2-good-works-description {
    font-size: 0.875rem;
  }
  .oor-footer {
    padding-left: 0;
    padding-right: 0;
  }
  .oor-footer-email {
    font-size: 3.000rem;
  }
}

/* Адаптация для экранов 375px и меньше */
@media (max-width: 375px) {
  .oor-footer-content-left {
    gap: 24px;
  }
  
  .oor-footer-email {
    font-size: 2.250rem;
    letter-spacing: -0.090rem;
  }

  .oor-events-hero-title {
    font-size: 48px;
    letter-spacing: -4.8px;
  }

  .oor-events-hero-overlay {
    top: calc(76px + 48px);
  }
}

/* Адаптация для больших телефонов (≥460px) */
@media (max-width: 460px) {
  .oor-hero-main {
    padding: 380px 0 160px 0;
  }
  .oor-mobile-menu {
    width: 100%;
    right: -100%;
  }
  
  .oor-mobile-menu.active {
    right: 0;
  }

  /* Скрыть счетчики и декоративные плюс-элементы */
  .oor-challenge-2-counter,
  .oor-out-of-talk-counter,
  .oor-events-counter,
  .oor-merch-counter,
  .oor-hero-plus-top-left,
  .oor-hero-plus-top-right,
  .oor-hero-plus-bottom-left,
  .oor-hero-plus-bottom-right,
  .oor-musical-association-plus,
  .oor-challenge-2-plus-1,
  .oor-challenge-2-plus-2,
  .oor-out-of-talk-plus,
  .oor-events-plus,
  .oor-merch-plus-icon {
    display: none !important;
  }

  /* Переносим колонки в строки — одна колонка во всю ширину */
  .oor-challenge-2-left {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
  /* На мобильных: порядок — текст (отступ 64px сверху), картинка, music-game */
  .oor-challenge-2-left .oor-challenge-2-text {
    order: 1;
    margin-top: 64px;
  }
  .oor-challenge-2-left .oor-challenge-studio-image {
    order: 2;
  }
  .oor-challenge-2-left .oor-challenge-2-music-game {
    order: 3;
  }
  .oor-challenge-2-left .oor-challenge-2-text,
  .oor-challenge-2-left .oor-challenge-studio-image,
  .oor-challenge-2-left .oor-challenge-2-music-game {
    grid-column: 1;
    grid-row: auto;
  }

  .oor-out-of-talk-media {
    grid-template-columns: 1fr;
    gap: 24px;
    padding: 48px var(--container-x) 0 var(--container-x);
  }

  .oor-out-of-talk-images {
    grid-template-columns: 1fr;
    gap: 16px;
    padding-right: 0;
  }

  .oor-out-of-talk-text {
    padding-top: 88px;
  }

  /* Доп. страховка для очень узких экранов */
  @media (max-width: 460px) {
    .oor-out-of-talk-section,
    .oor-out-of-talk-media,
    .oor-out-of-talk-images {
      width: 100%;
      box-sizing: border-box;
      overflow-x: hidden;
    }

    /* Добавляем симметричные внутренние отступы контейнеру картинок */
    .oor-out-of-talk-images {
      padding-right: 0;
      padding-left: 0;
    }

    /* Гарантируем, что ссылки и картинки не выходят за пределы */
    .oor-out-of-talk-image-1,
    .oor-out-of-talk-image-2,
    .oor-out-of-talk-image-3 {
      width: 100%;
    }

    .oor-out-of-talk-image-1 img,
    .oor-out-of-talk-image-2 img,
    .oor-out-of-talk-image-3 img {
      max-width: 100%;
      height: auto;
      display: block;
    }
  }

  .oor-events-section {
    padding-top: 0 !important;
  }

  .oor-events-text {
    padding: 88px var(--container-x) 88px var(--container-x) !important;
  }

  .oor-events-media {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    padding: 0 var(--container-x) !important;
  }

  .oor-events-posters {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .oor-events-photo {
    margin-top: -16px;
  }

  .oor-events-photo-image {
    margin: 0;
  }

  .oor-merch-text {
    grid-template-columns: 1fr;
    padding: 88px var(--container-x) 0 var(--container-x);
    display: flex;
    flex-direction: column;
  }

  .oor-merch-title {
    padding: 0 0 48px 0;
  }

  .oor-merch-description {
    padding-top: 48px;
  }

  .oor-merch-buttons {
    flex-wrap: wrap;
  }

  .oor-merch-images-grid {
    padding: 64px var(--container-x) 0 var(--container-x) !important;
  }

  .oor-merch-images-wrapper {
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
    width: 100% !important;
  }

  .oor-merch-image-item {
    flex: 1 1 calc(50% - 8px) !important;
    min-width: calc(50% - 8px) !important;
    max-width: calc(50% - 8px) !important;
    width: calc(50% - 8px) !important;
    aspect-ratio: 3/4 !important;
    overflow: hidden !important;
    border-radius: 0 !important;
  }

  .oor-merch-image-item img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: top !important;
  }

  .oor-merch-section {
    padding-bottom: 16px;
  }

  

  /* Hero: крупный заголовок на мобиле */
  .oor-hero-title {
    font-size: 5.000rem;
  }

  /* Утилита: 10 колонок превращаем в вертикальный стек с отступами */
  .oor-col-10 {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  /* Описание Hero: вертикальный стек с отступами */
  .oor-hero-description-grid {
    display: flex;
    flex-direction: column;
    gap: 32px !important;
  }

  /* Social Icons: увеличиваем gap для мобильных */
  .oor-social-icons {
    gap: 24px !important;
  }

  /* Musical Association: левая колонка — отступы для мобильных */
  .oor-musical-association-left {
    padding: 0 0 24px 0 !important;
  }

  /* Глобальная сетка: на мобиле в колонку */
  .oor-grid {
    display: flex;
    flex-direction: column;
    align-content: flex-start;
    align-items: flex-start;
    gap: 16px;
  }

  /* Скрыть номер секции на маленьких экранах */
  .oor-section-number {
    display: none;
  }

  /* Musical Association: левая колонка — авто-высота, элементы на 100% ширины */
  .oor-musical-association-left {
    height: auto;
  }

  .oor-musical-association-left > * {
    width: 100%;
    max-width: none;
  }

  /* Musical Association: правая колонка — фон занимает всё, внутренние отступы 16px */
  .oor-musical-association-right {
    width: calc(100% - 16px); /* Отступ только справа 16px */
    height: auto;
    min-height: 0;
    margin: 0 0 16px 0; /* Отступ только снизу 16px */
    padding: 16px;
    box-sizing: border-box;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }

  /* Challenge section: на мобиле в колонку с большим отступом между блоками */
  .oor-challenge-section {
    flex-direction: column !important;
    gap: 80px !important;
    padding: 88px var(--container-x) 16px var(--container-x) !important;
  }

  /* Good Works image — отступ сверху */
  .oor-challenge-2-good-works-image {
    margin-top: 16px !important;
  }

  /* Good Works title — выравнивание по левому краю */
  .oor-challenge-2-good-works-title {
    text-align: left !important;
    align-self: flex-start !important;
    width: 100% !important;
  }

  /* Out of Talk: заголовок на всю ширину */
  .oor-out-of-talk-title {
    width: 100%;
  }

  /* Out of Talk: скрываем декоративные линии */
  .oor-out-of-talk-line-1,
  .oor-out-of-talk-line-2 {
    display: none;
  }

  /* Out of Talk link: как "Все артисты" на мобиле, со стрелкой */
  .oor-out-of-talk-link {
    display: inline-block;
    margin: 0 16px 0 16px;
    text-transform: uppercase;
    position: relative;
    line-height: 24px;
    margin: 0;
  }

  .oor-out-of-talk-link::after {
    content: '';
    display: inline-block;
    width: 24px;
    height: 24px;
    margin-left: 8px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 17 17' fill='none'%3E%3Cpath d='M11.7909 11.0826L13.6659 9.20837H2.125V8.50004H13.6659L11.7909 6.62579L12.2917 6.125L15.0216 8.85421L12.2917 11.5841L11.7909 11.0826Z' fill='black'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
  }

  .oor-out-of-talk-description {
    padding-right: 0;
  }

  .oor-out-of-talk-link {
    margin: 0;
  }

  .oor-events-title {
    width: 100%;
  }

  .oor-events-photo-link {
    display: inline-block;
    margin: 0 16px 0 16px;
    text-transform: uppercase;
    position: relative;
    line-height: 24px;
    margin: 0;
  }

  .oor-events-photo-link::after {
    content: '';
    display: inline-block;
    width: 24px;
    height: 24px;
    margin-left: 8px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 17 17' fill='none'%3E%3Cpath d='M11.7909 11.0826L13.6659 9.20837H2.125V8.50004H13.6659L11.7909 6.62579L12.2917 6.125L15.0216 8.85421L12.2917 11.5841L11.7909 11.0826Z' fill='black'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
  }

  .oor-merch-images-grid {
    padding: 120px var(--container-x) 0 var(--container-x);
  }

  .oor-merch-images-wrapper {
    flex-direction: column;
  }

  /* Дополнительные стили для challenge секций */
  .oor-challenge-left {
    gap: 64px !important;
  }

  .oor-challenge-gap {
    display: none !important;
  }

  .oor-challenge-2-section {
    padding: 0px var(--container-x) 64px var(--container-x) !important;
  }

  .oor-challenge-2-studio {
    gap: 32px !important;
  }

  .oor-challenge-2-music-game {
    display: flex !important;
    flex-direction: column-reverse !important;
    align-items: flex-start !important;
    gap: 16px !important;
    align-self: stretch !important;
  }

  .oor-challenge-2-good-works-text {
    gap: 16px !important;
  }

  .oor-challenge-2-good-works-header {
    display: flex !important;
    flex-direction: row-reverse !important;
    align-items: flex-start !important;
    align-self: stretch !important;
    justify-content: flex-start !important;
  }
}

/* Новая кнопка входа в splash-screen с эффектом волны */
.oor-splash-enter-button {
  position: absolute;
  top: calc(50% + 200px + 40px);
  left: 50%;
  transform: translateX(-50%);
  margin-top: -104px;
  z-index: 10005;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  font-family: "Pragmatica";
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: -0.015rem;
  text-transform: uppercase;
  color: #000;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.oor-splash-enter-button.visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.oor-splash-enter-button .tn-atom {
  color: #000;
}

.oor-splash-enter-button:hover .tn-atom {
  color: #000;
}

.oor-splash-enter-button:active {
  outline: none;
}

/* ===== STUDIO PAGE STYLES ===== */

/* Studio Hero Section */
.oor-studio-hero {
  background: #000;
  padding-top: 80px;
  padding-bottom: 0 !important;
}

.oor-studio-hero-grid {
  padding-bottom: 0 !important;
}

.oor-studio-hero-title {
  font-family: var(--font-ui);
  font-size: 96px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -9.6px;
  text-transform: uppercase;
  color: #fff;
  margin: 0 0 24px 0;
}

.oor-studio-hero-index {
  font-family: var(--font-ui);
  font-size: 12px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.48px;
  color: #fff;
  opacity: 0.6;
  text-align: right;
}

.oor-studio-hero-image {
  width: 100%;
  height: 853px;
  position: relative;
  overflow: hidden;
}

.oor-studio-hero-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center bottom;
}

/* Studio Content Section [02] */
.oor-studio-content-section {
  background: #000;
  position: relative;
  padding: 80px 0;
  overflow: hidden;
}

.oor-studio-content-wrapper {
  position: relative;
  overflow: visible;
}

.oor-studio-content {
  display: flex;
  gap: 32px;
  position: relative;
  overflow: visible;
  padding: 0 48px;
}

.oor-studio-content-images {
  display: flex;
  flex-direction: column;
  gap: 24px;
  width: min(var(--studio-image-width), 100%);
  overflow: visible;
}

.oor-studio-image-row {
  display: flex;
  overflow: visible;
}

.oor-studio-image-item {
  width: min(var(--studio-image-width), 100%);
  height: var(--studio-image-height);
  flex-shrink: 0;
  opacity: 0.8;
  position: relative;
  overflow: hidden;
}

.oor-studio-image-item:nth-child(2) {
  transform: translateX(32px);
}

.oor-studio-image-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.oor-studio-content-text {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #fff;
  opacity: 0.5;
  max-width: 455px;
  margin: 24px 0 0;
}

.oor-studio-content-left {
  flex: 0 0 33.333%;
  max-width: 33.333%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow: visible;
  z-index: 3!important;
}

.oor-studio-content-right {
  flex: 0 0 66.666%;
  max-width: 66.666%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  overflow: visible;
  --studio-image-height: clamp(320px, 54vh, 760px);
  --studio-image-width: calc(var(--studio-image-height) * (569 / 402));
  z-index: 2!important;
}

.oor-studio-content-title-wrapper {
  padding-top: 140px;
}

.oor-studio-section-index {
  font-family: var(--font-ui);
  font-size: 12px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.48px;
  color: #fff;
  opacity: 0.6;
}

.oor-studio-equipment-section .oor-studio-section-index {
  color: #000;
  opacity: 0.6;
}


.oor-studio-content-title {
  font-family: var(--font-ui);
  font-size: 48px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -1.92px;
  text-transform: uppercase;
  color: #fff;
  margin: 0;
  width: 860px!important;
}

.oor-studio-content-icon,
.oor-studio-plus-icon {
  width: 18px;
  height: 18px;
}

.oor-studio-plus-icons-group {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 426px;
  height: 100%;
  align-items: flex-start;
  width: 18px;
  position: absolute;
  right: 0;
  top: 0;
  pointer-events: none;
  padding-top: 24px;
  z-index: 4!important;
}

/* Studio Equipment Section [03] */
.oor-studio-equipment-section {
  background: #fff;
  padding: 80px 0;
}

.oor-studio-equipment-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 48px;
}

.oor-studio-equipment-title {
  font-family: var(--font-ui);
  font-size: 30px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -1.2px;
  text-transform: uppercase;
  color: #000;
  margin: 0;
}

.oor-studio-equipment-icon {
  width: 25px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.oor-studio-equipment-icon img {
  filter: brightness(0);
  mix-blend-mode: normal !important;
}


.oor-studio-equipment-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-top: 1px solid #d0d0d0;
  border-bottom: 1px solid #d0d0d0;
  min-height: 100%;
}

.oor-studio-equipment-table {
  border-right: none;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.oor-studio-equipment-image {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 116px;
  border-left: 1px solid #d0d0d0;
  position: relative;
}

.oor-studio-equipment-image img {
  width: auto;
  height: auto;
  max-width: 100%;
  object-fit: cover;
  aspect-ratio: 1440 / 960;
  transition: opacity 0.4s ease;
  opacity: 1;
}

.oor-studio-equipment-row {
  display: flex;
  align-items: stretch;
  border-bottom: 1px solid #d0d0d0;
  cursor: pointer;
  transition: all 0.3s ease;
  min-height: 76px;
}

.oor-studio-equipment-row:last-child {
  border-bottom: none;
  flex: 1;
}

.oor-studio-equipment-item-description {
  display: none;
  transition: opacity 0.3s ease;
  opacity: 0;
  margin: 0;
}

.oor-studio-equipment-row-active .oor-studio-equipment-item-description {
  display: block;
  opacity: 1;
}

.oor-studio-equipment-index {
  width: 73px;
  padding: 24px 24px 24px 0;
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.56px;
  color: #000;
  text-align: right;
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
}

.oor-studio-equipment-content {
  flex: 1;
  padding: 24px;
  border-left: 1px solid #d0d0d0;
  display: flex;
  flex-direction: column;
  gap: 88px;
  height: 100%;
  align-self: stretch;
}

.oor-studio-equipment-header-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.oor-studio-equipment-item-title {
  font-family: var(--font-ui);
  font-size: 22px;
  line-height: 116%;
  font-weight: 300;
  letter-spacing: -0.88px;
  text-transform: uppercase;
  color: #000;
  margin: 0;
  flex: 1;
}

.oor-studio-equipment-item-icon {
  width: 17px;
  height: 17px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.oor-studio-equipment-item-icon img {
  transform: rotate(180deg);
  filter: brightness(0);
  mix-blend-mode: normal !important;
}

.oor-studio-equipment-item-icon-open img {
  transform: none;
  width: 17px;
  height: 17px;
  filter: brightness(0);
  mix-blend-mode: normal !important;
}

.oor-studio-equipment-item-image {
  display: none; /* Скрываем изображения внутри пунктов на десктопе */
}

.oor-studio-equipment-item-description {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #000;
  margin: 0;
}


/* Studio Services Section */
.oor-studio-services-section {
  background: #fff;
  padding: 80px 0;
}

.oor-studio-services-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 48px;
}

.oor-studio-services-title {
  font-family: var(--font-ui);
  font-size: 30px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -1.2px;
  text-transform: uppercase;
  color: #000;
  margin: 0;
}

.oor-studio-services-icon {
  width: 25px;
  height: 18px;
}

.oor-studio-services-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  align-items: stretch;
  border-top: 1px solid #d0d0d0;
  border-bottom: 1px solid #d0d0d0;
}

.oor-studio-service-column {
  display: flex;
  flex-direction: column;
  border-right: 1px solid #d0d0d0;
}

.oor-studio-service-column:last-child {
  border-right: none;
}

.oor-studio-service-item {
  display: flex;
  align-items: stretch;
  border-bottom: 1px solid #d0d0d0;
}

.oor-studio-service-index {
  width: 64px;
  padding: 24px 24px 24px 32px;
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.56px;
  color: #000;
  text-align: right;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  height: 100%;
  border-right: 1px solid #d0d0d0;
}

.oor-studio-service-content {
  flex: 1;
  padding: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.oor-studio-service-title {
  font-family: var(--font-ui);
  font-size: 22px;
  line-height: 116%;
  font-weight: 300;
  letter-spacing: -0.88px;
  text-transform: uppercase;
  color: #000;
  margin: 0;
}

.oor-studio-service-description {
  flex: 1;
  padding: 24px;
  display: flex;
  align-items: flex-start;
  box-sizing: border-box;
}

.oor-studio-service-description-header {
  display: none; /* Скрываем заголовки внутри описаний на десктопе */
}

/* На десктопе показываем заголовки в .oor-studio-service-item, скрываем в описаниях */
@media (min-width: 769px) {
  .oor-studio-service-item {
    display: flex;
  }

  .oor-studio-service-description-header {
    display: none !important;
  }
}

/* Промежуточные размеры (планшеты) - используем десктопную структуру */
@media (min-width: 769px) and (max-width: 1023px) {
  .oor-studio-services-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 0;
    align-items: stretch;
  }

  .oor-studio-service-column {
    border-right: 1px solid #d0d0d0;
  }

  .oor-studio-service-column:last-child {
    border-right: none;
  }

  .oor-studio-service-description-header {
    display: none !important;
  }

  .oor-studio-service-description p {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    border-top: none !important;
    margin: 0;
  }
}

/* Десктоп - используем десктопную структуру */
@media (min-width: 1024px) {
  .oor-studio-services-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 0;
    align-items: stretch;
  }

  .oor-studio-service-description-header {
    display: none !important;
  }

  .oor-studio-service-description p {
    max-width: none !important;
    width: 100% !important;
    padding: 0 !important;
    border-top: none !important;
    margin: 0;
    box-sizing: border-box;
  }
}

.oor-studio-service-description p {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #000;
  margin: 0;
}

/* Studio Recording Section [04] */
.oor-studio-recording-section {
  background: #000;
  padding: 80px 0;
}

.oor-studio-recording-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 24px;
}

.oor-studio-recording-title {
  font-family: var(--font-ui);
  font-size: 30px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -1.2px;
  text-transform: uppercase;
  color: #fff;
  margin: 0;
  width: 560px;
}

.oor-studio-recording-divider {
  width: 100%;
  height: 1px;
  background: #fff;
  opacity: 0.3;
  margin-top: 48px;
}

.oor-studio-recording-grid {
  margin-top: 48px;
  gap: 56px;
}

.oor-studio-recording-image {
  height: 550px;
  position: relative;
  overflow: hidden;
}

.oor-studio-recording-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.oor-studio-recording-list {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 550px;
}

.oor-studio-recording-items {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.oor-studio-recording-item {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.oor-studio-recording-item-title {
  font-family: var(--font-ui);
  font-size: 22px;
  line-height: 116%;
  font-weight: 300;
  letter-spacing: -0.88px;
  text-transform: uppercase;
  color: #fff;
  margin: 0;
}

.oor-studio-recording-item-divider {
  width: 100%;
  height: 1px;
  background: #fff;
  opacity: 0.3;
}

.oor-studio-contact {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.oor-studio-contact-text {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #fff;
  opacity: 0.5;
  margin: 0;
}

.oor-studio-contact-button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 8px;
  border-top: 1px solid rgba(255, 255, 255, 0.7);
  text-decoration: none;
  color: #fff;
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.64px;
}

.oor-studio-contact-button img {
  width: 32px;
  height: 32px;
}

/* Responsive adjustments for studio page */
@media (max-width: 1919px) {
  .oor-studio-hero-title {
    font-size: clamp(48px, 6.67vw, 96px);
    letter-spacing: clamp(-4.8px, -0.67vw, -9.6px);
  }
  
  .oor-studio-content-title {
    font-size: clamp(32px, 3.33vw, 48px);
    letter-spacing: clamp(-1.28px, -0.13vw, -1.92px);
    width: 860px!important;
    z-index: 3!important;
  }
  
  .oor-studio-image-item {
    height: clamp(350px, 29.17vw, 560px);
    width: clamp(500px, 41.56vw, 798px);
  }
  
  .oor-studio-image-item:nth-child(2) {
    width: clamp(500px, 41.56vw, 798px);
  }
}

/* Studio page - ensure scroll works after preloader */
/* Убрали !important, чтобы JS мог блокировать скролл через inline-стили */
body:not(.preloader-active):not(.scroll-locked) {
  overflow-y: auto;
}

html:not(.preloader-active):not(.scroll-locked) {
  overflow-y: auto;
}

/* Блокировка скролла через класс (для мобильного меню, полноэкранного видео и т.д.) */
body.scroll-locked,
html.scroll-locked {
  overflow: hidden !important;
}

/* ===== DAWGS PAGE STYLES ===== */

/* DAWGS page - black header */
body.oor-dawgs-page .oor-header {
  background: #000 !important;
  mix-blend-mode: normal !important;
  isolation: isolate;
}

body.oor-dawgs-page .oor-logo img {
  mix-blend-mode: normal !important;
  filter: brightness(0) invert(1) !important;
}

body.oor-dawgs-page .oor-nav-link {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-dawgs-page .oor-nav-link--active {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-dawgs-page .oor-nav-item > span {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-dawgs-page .oor-btn-small {
  mix-blend-mode: normal !important;
}

body.oor-dawgs-page .oor-btn-small-text {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-dawgs-page .oor-btn-small-icon {
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

body.oor-dawgs-page .oor-btn-small-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

/* Бургер-меню на странице DAWGS - белая иконка */
body.oor-dawgs-page .oor-header .oor-burger-menu {
  mix-blend-mode: normal !important;
  isolation: isolate !important;
}

body.oor-dawgs-page .oor-header .oor-burger-menu .oor-burger-icon {
  color: #fff !important;
  fill: #fff !important;
  stroke: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-dawgs-page .oor-header .oor-burger-menu .oor-burger-icon,
body.oor-dawgs-page .oor-header .oor-burger-menu .oor-burger-icon * {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

body.oor-dawgs-page .oor-header .oor-burger-menu .oor-burger-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
}

/* DAWGS Hero Section */
.oor-dawgs-hero {
  background: #000;
  padding-top: 80px;
  padding-bottom: 80px;
  position: relative;
}

.oor-dawgs-hero-grid {
  position: relative;
  align-items: flex-start;
  margin-bottom: 64px;
}

.oor-dawgs-hero-title {
  font-family: var(--font-ui);
  font-size: 96px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -9.6px;
  text-transform: uppercase;
  color: #fff;
  margin: 0 0 24px 0;
}

.oor-dawgs-hero-description-wrapper {
  display: flex;
  justify-content: flex-end;
  position: relative;
}

.oor-dawgs-hero-description {
  display: flex;
  flex-direction: column;
  gap: 89px;
  width: 100%;
}

.oor-dawgs-hero-index {
  font-family: var(--font-ui);
  font-size: 12px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.48px;
  color: #fff;
  opacity: 0.6;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.oor-dawgs-hero-description-content {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.oor-dawgs-hero-subtitle {
  font-family: var(--font-ui);
  font-size: 32px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -3.2px;
  text-transform: uppercase;
  color: #fff;
  margin: 0;
}

.oor-dawgs-hero-text {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #fff;
  margin: 0;
}

.oor-dawgs-hero-plus-wrapper {
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
}

.oor-dawgs-hero-plus {
  width: 18px;
  height: 18px;
}

.oor-dawgs-hero-plus img {
  width: 100%;
  height: 100%;
  filter: brightness(0) invert(1);
}

/* DAWGS Hero Gallery */
.oor-dawgs-hero-gallery {
  display: flex;
  gap: 24px;
  width: 100%;
  margin-bottom: 64px;
  align-items: flex-end;
}

.oor-dawgs-hero-gallery-item {
  position: relative;
  overflow: hidden;
  flex-shrink: 0;
  flex-grow: 0;
}

.oor-dawgs-gallery-1 {
  flex-basis: calc((100% - 96px) * 0.22);
  aspect-ratio: 400 / 455;
}

.oor-dawgs-gallery-2 {
  flex-basis: calc((100% - 96px) * 0.18);
  aspect-ratio: 350 / 324;
}

.oor-dawgs-gallery-3 {
  flex-basis: calc((100% - 96px) * 0.25);
  aspect-ratio: 472 / 487;
}

.oor-dawgs-gallery-4 {
  flex-basis: calc((100% - 96px) * 0.18);
  aspect-ratio: 350 / 255;
}

.oor-dawgs-gallery-5 {
  flex-basis: calc((100% - 96px) * 0.17);
  aspect-ratio: 300 / 205;
}

.oor-dawgs-hero-gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* DAWGS Hero Footer */
.oor-dawgs-hero-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.oor-dawgs-hero-footer-left {
  display: flex;
  align-items: center;
}

.oor-dawgs-hero-stats {
  display: flex;
  gap: 24px;
  align-items: center;
}

.oor-dawgs-hero-stats-number {
  font-family: var(--font-ui);
  font-size: 56px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -5.6px;
  text-transform: uppercase;
  color: #fff;
}

.oor-dawgs-hero-stats-text {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #fff;
  max-width: 258px;
}

.oor-dawgs-hero-footer-right {
  display: flex;
  align-items: center;
}

.oor-dawgs-hero-sponsors {
  display: flex;
  gap: 64px;
  align-items: center;
}

.oor-dawgs-sponsor-1,
.oor-dawgs-sponsor-2 {
  display: flex;
  align-items: center;
}

.oor-dawgs-sponsor-1 img,
.oor-dawgs-sponsor-2 img {
  height: auto;
  max-height: 60px;
  width: auto;
}

/* DAWGS Team Section */
.oor-dawgs-team-section {
  background: #fff;
  padding: 80px 0;
}

.oor-dawgs-team-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 48px;
}

.oor-dawgs-team-title {
  font-family: var(--font-ui);
  font-size: 30px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -1.2px;
  text-transform: uppercase;
  color: #000;
  margin: 0;
}

.oor-dawgs-team-plus {
  width: 18px;
  height: 18px;
}

.oor-dawgs-team-plus img {
  width: 100%;
  height: 100%;
  filter: brightness(0);
}

/* DAWGS Team Grid */
.oor-dawgs-team-grid {
  display: flex;
  flex-direction: column;
  gap: 48px;
}

.oor-dawgs-team-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 44px;
}

.oor-dawgs-team-member {
  display: flex;
  flex-direction: column;
  gap: 11px;
}

.oor-dawgs-team-member-image {
  width: 100%;
  height: 273px;
  position: relative;
  overflow: hidden;
}

.oor-dawgs-team-member-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.oor-dawgs-team-member-info {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.oor-dawgs-team-member-name {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 700;
  letter-spacing: -0.28px;
  color: #000;
  margin: 0;
}

.oor-dawgs-team-member-role {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #000;
  margin: 0;
}

/* ===== EVENTS PAGE STYLES ===== */

/* Events page - black header */
body.oor-events-page .oor-header {
  background: #000 !important;
  mix-blend-mode: normal !important;
  isolation: isolate;
}

body.oor-events-page .oor-logo img {
  mix-blend-mode: normal !important;
  filter: brightness(0) invert(1) !important;
}

body.oor-events-page .oor-nav-link {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-events-page .oor-nav-link--active {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-events-page .oor-nav-item > span {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-events-page .oor-btn-small {
  mix-blend-mode: normal !important;
}

body.oor-events-page .oor-btn-small-text {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-events-page .oor-btn-small-icon {
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

body.oor-events-page .oor-btn-small-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

/* Events Hero Section */
.oor-events-hero {
  background: #000;
  padding-top: 80px;
  padding-bottom: 0;
  position: relative;
  min-height: 705px;
  overflow: hidden;
  width: 100%;
  max-width: none;
}

.oor-events-hero-grid {
  position: relative;
  align-items: flex-start;
  margin-bottom: 0;
}

.oor-events-hero-title {
  font-family: var(--font-ui);
  font-size: 96px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -9.6px;
  text-transform: uppercase;
  color: #fff;
  margin: 0;
  position: absolute;
  top: 165px;
  left: var(--container-x);
  width: 940px;
  white-space: pre-wrap;
  z-index: 2;
}

.oor-events-hero-index {
  font-family: var(--font-ui);
  font-size: 12px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.48px;
  color: #fff;
  opacity: 0.6;
  text-align: center;
  position: absolute;
  top: 191px;
  right: var(--container-x);
  transform: translateY(-50%);
  white-space: nowrap;
  z-index: 2;
}

/* Events Hero Gallery */
.oor-events-hero-gallery {
  position: absolute;
  top: 285px;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 420px;
  margin-bottom: 0;
  z-index: 1;
}

.oor-events-hero-gallery-row {
  display: flex;
  width: 100%;
  height: 210px;
  gap: 0;
  position: absolute;
  left: 0;
  right: 0;
}

.oor-events-hero-gallery-row:first-child {
  top: 0;
}

.oor-events-hero-gallery-row:last-child {
  top: 210px;
}

@media (min-width: 1920px) {
  .oor-events-hero-gallery-row {
    height: 280px;
  }
  
  .oor-events-hero-gallery-row:last-child {
    top: 280px;
  }
  
  .oor-events-hero-gallery {
    height: 560px;
  }
}

.oor-events-hero-gallery-item {
  flex: 1;
  height: 100%;
  position: relative;
  overflow: hidden;
  min-width: 0;
}

.oor-events-hero-gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Events Hero Overlay */
.oor-events-hero-overlay {
  position: absolute;
  top: 285px;
  left: 0;
  right: 0;
  width: 100%;
  height: 420px;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.77) 0%, rgba(0, 0, 0, 0.00) 100%);
  pointer-events: none;
  z-index: 2;
}

@media (min-width: 1920px) {
  .oor-events-hero-overlay {
    height: 560px;
  }
}


/* Events Hero Plus Icons */
.oor-events-hero-plus-bottom-left {
  position: absolute;
  bottom: 42px;
  left: 48px;
  width: 18px;
  height: 18px;
  z-index: 2;
}

.oor-events-hero-plus-bottom-left img {
  width: 100%;
  height: 100%;
  filter: brightness(0) invert(1);
}

.oor-events-hero-plus-bottom-right {
  position: absolute;
  bottom: 42px;
  right: 48px;
  width: 18px;
  height: 18px;
  z-index: 2;
}

.oor-events-hero-plus-bottom-right img {
  width: 100%;
  height: 100%;
  filter: brightness(0) invert(1);
}

/* Plus icon in last image of second row (only on 1920px+) */
@media (min-width: 1920px) {
  .oor-events-hero-gallery-row:last-child .oor-events-hero-gallery-item:last-child {
    position: relative;
  }
  
  .oor-events-hero-gallery-row:last-child .oor-events-hero-gallery-item:last-child::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 18px;
    height: 18px;
    background-image: url('/public/assets/plus-large.svg');
    background-size: 18px 18px;
    background-repeat: no-repeat;
    background-position: center;
    filter: brightness(0) invert(1);
    z-index: 2;
  }
}

/* Events Listing Section */
.oor-events-listing-section {
  background: #fff;
  padding: 64px 0 0 0;
  min-height: 831px;
  position: relative;
}

.oor-events-listing-header {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  align-items: start;
  position: relative;
  padding: 0;
  margin-bottom: 48px;
}

.oor-events-listing-title-wrapper {
  grid-column: 1;
  position: relative;
}

.oor-events-listing-title {
  font-family: var(--font-ui);
  font-size: 48px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -1.92px;
  text-transform: uppercase;
  color: #000;
  margin: 0 0 24px 0;
  width: 521px;
  white-space: pre-wrap;
  position: relative;
}

.oor-events-listing-description {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #000;
  margin: 0;
  width: 408px;
  white-space: pre-wrap;
  position: relative;
}

.oor-events-listing-index-wrapper {
  grid-column: 3;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  align-self: end;
  position: relative;
}

.oor-events-listing-index {
  font-family: var(--font-ui);
  font-size: 12px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.48px;
  color: #000;
  margin: 0;
}

.oor-events-listing-plus {
  width: 18px;
  height: 18px;
}

.oor-events-listing-plus img {
  width: 100%;
  height: 100%;
  filter: brightness(0);
}

/* Events Listing Grid */
.oor-events-listing-grid {
  display: flex;
  gap: 25px;
  width: 100%;
  padding: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  cursor: grab;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.oor-events-listing-grid::-webkit-scrollbar {
  display: none;
}

.oor-events-listing-grid.is-dragging {
  cursor: grabbing;
  user-select: none;
}

.oor-events-listing-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0;
  flex-shrink: 0;
  width: 408px;
}

.oor-events-listing-card:nth-child(2),
.oor-events-listing-card:nth-child(4) {
  width: 409px;
}

.oor-events-listing-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 16px;
  gap: 16px;
}

.oor-events-listing-card-image {
  width: 100%;
  height: 489px;
  position: relative;
  overflow: hidden;
}

.oor-events-listing-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.oor-events-listing-card-button {
  position: relative;
  padding: 12px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-family: var(--font-pragmatica);
  font-size: 12px;
  line-height: normal;
  font-weight: 400;
  letter-spacing: -0.24px;
  text-transform: uppercase;
  border: 1px solid #000;
  cursor: pointer;
  transition: all 0.3s ease;
  backdrop-filter: blur(85.15px);
  -webkit-backdrop-filter: blur(85.15px);
  margin: 0;
  flex-shrink: 0;
}

.oor-events-listing-card-button-soldout {
  background: #000;
  color: #fff;
  border-color: #000;
}

.oor-events-listing-card-button-buy {
  background: #fff;
  color: #000;
  border-color: #000;
}

.oor-events-listing-card-button-buy:hover {
  background: #000;
  color: #fff;
}

.oor-events-listing-card-button-buy img {
  width: 12px;
  height: 1px;
  filter: brightness(0);
}

.oor-events-listing-card-button-buy:hover img {
  filter: brightness(0) invert(1);
}

.oor-events-listing-card-title {
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: 116%;
  font-weight: 300;
  letter-spacing: -0.64px;
  text-transform: uppercase;
  color: #000;
  margin: 0;
  flex: 1;
}

/* ===== TALK SHOW PAGE STYLES ===== */

/* Talk Show page - black header */
body.oor-talk-show-page .oor-header {
  background: #000 !important;
  mix-blend-mode: normal !important;
  isolation: isolate;
}

body.oor-talk-show-page .oor-logo img {
  mix-blend-mode: normal !important;
  filter: brightness(0) invert(1) !important;
}

body.oor-talk-show-page .oor-nav-link {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-talk-show-page .oor-nav-link--active {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-talk-show-page .oor-nav-item > span {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-talk-show-page .oor-btn-small {
  mix-blend-mode: normal !important;
}

body.oor-talk-show-page .oor-btn-small-text {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-talk-show-page .oor-btn-small-icon {
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

body.oor-talk-show-page .oor-btn-small-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

/* ===== ARTISTS PAGE STYLES ===== */

/* Artists page - black header */
body.oor-artists-page .oor-header {
  background: #000 !important;
  mix-blend-mode: normal !important;
  isolation: isolate;
}

body.oor-artists-page .oor-logo img {
  mix-blend-mode: normal !important;
  filter: brightness(0) invert(1) !important;
}

body.oor-artists-page .oor-nav-link {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-artists-page .oor-nav-link--active {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-artists-page .oor-nav-item > span {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-artists-page .oor-btn-small {
  mix-blend-mode: normal !important;
}

body.oor-artists-page .oor-btn-small-text {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-artists-page .oor-btn-small-icon {
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

body.oor-artists-page .oor-btn-small-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

/* Artists Hero Section */
.oor-artists-hero {
  background: #fff;
  padding-top: 80px;
  padding-bottom: 16px;
  border-bottom: 1px solid #000;
}

.oor-artists-hero-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
}

.oor-artists-hero-title {
  font-family: var(--font-ui);
  font-size: 96px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -8.64px;
  text-transform: uppercase;
  color: #000;
  margin: 0;
}

.oor-artists-hero-copyright {
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.32px;
  color: #000;
  margin: 0;
}

/* Artists Grid Section */
.oor-artists-grid-section {
  background: #fff;
  padding: 63px 0 80px;
}

.oor-artists-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 44px 44px;
  width: 100%;
}

.oor-artist-card {
  display: flex;
  flex-direction: column;
  gap: 11px;
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}

a.oor-artist-card {
  text-decoration: none;
  color: inherit;
}

a.oor-artist-card:hover {
  opacity: 0.8;
}

.oor-artist-image {
  width: 100%;
  aspect-ratio: 3 / 4;
  position: relative;
  overflow: hidden;
}

.oor-artist-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.oor-artist-name {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #000;
  margin: 0;
}

/* ===== MANIFEST PAGE STYLES ===== */

/* Manifest page - white header */
body.oor-manifest-page .oor-header {
  background: #fff !important;
  mix-blend-mode: normal !important;
  isolation: isolate;
}

body.oor-manifest-page .oor-logo img {
  mix-blend-mode: normal !important;
  filter: brightness(0) !important; /* черный логотип на белом фоне */
  opacity: 1 !important;
}

body.oor-manifest-page .oor-nav-link,
body.oor-manifest-page .oor-nav-item > span {
  color: #000 !important;
  mix-blend-mode: normal !important;
}

/* Для текста внутри header на странице манифеста (включая rolling-button/tn-atom) */
/* Исключаем мобильное меню из этих стилей */
body.oor-manifest-page .oor-header > a,
body.oor-manifest-page .oor-header > .oor-header-right > .oor-nav .rolling-button,
body.oor-manifest-page .oor-header > .oor-header-right > .oor-nav .rolling-button .tn-atom,
body.oor-manifest-page .oor-header > .oor-header-right > .oor-nav .tn-atom,
body.oor-manifest-page .oor-header > .oor-header-right > .oor-btn-small,
body.oor-manifest-page .oor-header > .oor-header-right > .oor-btn-small .tn-atom {
  color: #000 !important;
  mix-blend-mode: normal !important;
}

body.oor-manifest-page .oor-btn-small-text {
  color: #000 !important;
}

body.oor-manifest-page .oor-btn-small-icon img {
  filter: brightness(0) !important;
}

/* Жесткое отключение любых режимов наложения и белого текста в header на странице манифеста */
/* Исключаем мобильное меню из этих стилей - оно должно быть белым */
body.oor-manifest-page .oor-header .oor-logo,
body.oor-manifest-page .oor-header .oor-header-right,
body.oor-manifest-page .oor-header .oor-header-right .oor-nav,
body.oor-manifest-page .oor-header .oor-header-right .oor-nav *,
body.oor-manifest-page .oor-header .oor-header-right .oor-btn-small,
body.oor-manifest-page .oor-header .oor-header-right .oor-btn-small *,
body.oor-manifest-page .oor-header .oor-header-right .oor-burger-menu,
body.oor-manifest-page .oor-header .oor-header-right .oor-burger-menu * {
  mix-blend-mode: normal !important;
}

@media (min-width: 1025px) {
  body.oor-manifest-page .oor-header .oor-logo,
  body.oor-manifest-page .oor-header .oor-header-right,
  body.oor-manifest-page .oor-header .oor-header-right .oor-nav,
  body.oor-manifest-page .oor-header .oor-header-right .oor-nav *,
  body.oor-manifest-page .oor-header .oor-header-right .oor-btn-small,
  body.oor-manifest-page .oor-header .oor-header-right .oor-btn-small * {
    color: #000 !important;
  }
}

/* Мобильное меню должно оставаться с белым текстом на черном фоне на всех страницах */
/* Исключаем мобильное меню из всех стилей header на странице манифеста */
body.oor-manifest-page .oor-header .oor-mobile-menu,
body.oor-manifest-page .oor-header .oor-mobile-menu * {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-manifest-page .oor-mobile-menu {
  background: #000 !important;
}

body.oor-manifest-page .oor-mobile-menu a,
body.oor-manifest-page .oor-mobile-menu button,
body.oor-manifest-page .oor-mobile-menu span,
body.oor-manifest-page .oor-mobile-menu div {
  color: #fff !important;
}

body.oor-manifest-page .oor-mobile-menu-link,
body.oor-manifest-page .oor-mobile-menu-link.rolling-button {
  color: #fff !important;
  opacity: 0.8;
}

body.oor-manifest-page .oor-mobile-menu-link:hover,
body.oor-manifest-page .oor-mobile-menu-link.rolling-button:hover {
  color: #fff !important;
  opacity: 1;
}

body.oor-manifest-page .oor-mobile-menu-link--active {
  color: rgba(255, 255, 255, 0.6) !important;
  opacity: 1;
}

body.oor-manifest-page .oor-mobile-menu-btn {
  color: #fff !important;
  border-color: #fff !important;
}

body.oor-manifest-page .oor-mobile-menu-btn .oor-mobile-menu-btn-text {
  color: #fff !important;
}

body.oor-manifest-page .oor-mobile-menu-btn:hover {
  background: #fff !important;
  color: #000 !important;
}

body.oor-manifest-page .oor-mobile-menu-btn:hover .oor-mobile-menu-btn-text {
  color: #000 !important;
}

/* Дополнительная защита - переопределяем все возможные стили для мобильного меню */
body.oor-manifest-page .oor-mobile-menu *,
body.oor-manifest-page .oor-mobile-menu a.rolling-button,
body.oor-manifest-page .oor-mobile-menu a.rolling-button span,
body.oor-manifest-page .oor-mobile-menu .oor-mobile-menu-link,
body.oor-manifest-page .oor-mobile-menu .oor-mobile-menu-link.rolling-button {
  color: #fff !important;
}

/* Убеждаемся, что текст внутри ссылок тоже белый */
body.oor-manifest-page .oor-mobile-menu .oor-mobile-menu-main a,
body.oor-manifest-page .oor-mobile-menu .oor-mobile-menu-main a.rolling-button {
  color: #fff !important;
}

/* Hero */
.oor-manifest-hero {
  background: #fff;
  padding-top: 63px;
  position: relative;
}

.oor-manifest-hero-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.oor-manifest-hero-plus-left {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

.oor-manifest-hero-plus-left img {
  width: 100%;
  height: 100%;
  filter: brightness(0);
}

.oor-manifest-hero-title {
  font-family: var(--font-ui);
  font-size: 96px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -9.6px;
  text-transform: uppercase;
  color: #000;
  margin: 0;
  max-width: 869px;
  text-align: left;
}

.oor-manifest-hero-video-wrapper {
  width: 100%;
  height: 668px;
  position: relative;
  overflow: hidden;
}

.oor-manifest-hero-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.oor-manifest-hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.oor-manifest-hero-col-left {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 48px;
}

.oor-manifest-hero-col-right {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 48px;
}

.oor-manifest-hero-card {
  width: 227px;
  height: 225px;
  position: relative;
}

.oor-manifest-hero-card img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.oor-manifest-hero-text {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 400;
  letter-spacing: -0.28px;
  color: #fff;
  margin: 0;
  max-width: 521px;
  text-shadow: 0 2px 9px rgba(0, 0, 0, 0.4);
}

/* Manifest section */
.oor-manifest-section {
  background: #fff;
  padding: 80px 0;
  overflow: hidden;
}

.oor-manifest-section-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: flex-start;
}

.oor-manifest-section-left {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  min-height: 180px;
}

.oor-manifest-section-label {
  font-family: var(--font-ui);
  font-size: 12px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.24px;
  color: #000;
  text-transform: uppercase;
}

.oor-manifest-section-line {
  width: 18px;
  height: 1px;
  margin-top: auto;
}

.oor-manifest-section-line img {
  width: 100%;
  height: 100%;
  display: block;
}

.oor-manifest-section-content {
  display: flex;
  flex-direction: column;
  gap: 48px;
}

.oor-manifest-section-title {
  font-family: var(--font-ui);
  font-size: 48px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -1.92px;
  text-transform: uppercase;
  color: #000;
  margin: 0;
}

.oor-manifest-section-text {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #000;
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 497px;
}

.oor-manifest-section-text p {
  margin: 0;
}

/* CEO section */
.oor-manifest-ceo-section {
  background: #fff;
  padding: 80px 0;
  overflow: hidden;
}

.oor-manifest-ceo-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 66px;
}

.oor-manifest-ceo-label {
  font-family: var(--font-ui);
  font-size: 12px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.24px;
  color: #000;
  text-transform: uppercase;
}

.oor-manifest-ceo-plus {
  width: 18px;
  height: 18px;
}

.oor-manifest-ceo-plus img {
  width: 100%;
  height: 100%;
  filter: brightness(0);
}

.oor-manifest-ceo-quote {
  font-family: var(--font-ui);
  font-size: 48px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -1.92px;
  text-transform: uppercase;
  color: #000;
  margin: 0 0 64px 0;
  max-width: 1214px;
  text-align: left;
}

.oor-manifest-ceo-content {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  gap: 120px;
  position: relative;
}

.oor-manifest-ceo-plus-top-right {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 18px;
  height: 18px;
}

.oor-manifest-ceo-plus-top-right img {
  width: 100%;
  height: 100%;
  filter: brightness(0);
}

.oor-manifest-ceo-text {
  display: flex;
  flex-direction: column;
  max-width: 428px;
  align-self: stretch;
}

.oor-manifest-ceo-info {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-bottom: 64px;
}

.oor-manifest-ceo-name {
  font-family: var(--font-ui);
  font-size: 24px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.96px;
  color: #000;
  max-width: 188px;
}

.oor-manifest-ceo-role {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.56px;
  color: #000;
  text-transform: uppercase;
}

.oor-manifest-ceo-description {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #000;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.oor-manifest-ceo-description p {
  margin: 0;
}

.oor-manifest-ceo-link {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.56px;
  color: #000;
  text-decoration: underline;
  text-underline-position: from-font;
  margin-top: auto;
}

.oor-manifest-ceo-image {
  width: 411px;
  height: 532px;
  position: relative;
  overflow: hidden;
  flex-shrink: 0;
  background: #777;
}

.oor-manifest-ceo-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.oor-manifest-ceo-plus-bottom {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 18px;
  height: 18px;
}

.oor-manifest-ceo-plus-bottom img {
  width: 100%;
  height: 100%;
}

/* ===== MANIFEST PAGE MOBILE STYLES ===== */

/* Мобильная версия для страницы манифеста (≤768px) */
@media (max-width: 768px) {
  /* Hero секция */
  .oor-manifest-hero {
    padding-top: 0;
  }

  .oor-manifest-hero .oor-container:first-child {
    padding: 0;
  }

  .oor-manifest-hero-top {
    padding: 0;
    justify-content: flex-start;
    align-items: flex-start;
    position: relative;
  }

  .oor-manifest-hero-plus-left {
    display: none; /* Скрываем plus на мобильных */
  }

  .oor-manifest-hero-title {
    font-size: 56px;
    letter-spacing: -5.6px;
    line-height: 100%;
    margin: 0;
    padding: 81px 0 0 12px;
    max-width: 416px;
    width: calc(100% - 12px);
  }

  .oor-manifest-hero .oor-container:last-child {
    padding: 0;
    margin-top: 0;
  }

  .oor-manifest-hero-video-wrapper {
    margin-top: 0;
    height: 668px;
    padding: 64px 32px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 64px;
    position: relative;
  }

  .oor-manifest-hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 64px;
    width: 100%;
    height: 100%;
    z-index: 2;
  }

  .oor-manifest-hero-col-left {
    padding: 0;
    width: 227px;
    height: 225px;
    position: relative;
    z-index: 3;
  }

  .oor-manifest-hero-col-right {
    padding: 0 var(--container-x);
    width: 100%;
    display: flex;
    justify-content: flex-start;
    position: relative;
    z-index: 3;
  }

  .oor-manifest-hero-text {
    font-size: 14px;
    line-height: 140%;
    letter-spacing: -0.28px;
    text-align: left;
    color: #fff;
    text-shadow: 0px 2px 9px rgba(0, 0, 0, 0.4);
    max-width: 100%;
    position: relative;
    z-index: 4;
  }

  /* Manifest section */
  .oor-manifest-section {
    padding: 0;
  }

  .oor-manifest-section .oor-container {
    padding-left: 0;
    padding-right: 0;
  }

  .oor-manifest-section-inner {
    display: flex;
    flex-direction: column;
    gap: 32px;
    padding: 32px 12px;
  }

  .oor-manifest-section-left {
    min-height: auto;
    gap: 32px;
  }

  .oor-manifest-section-label {
    font-size: 12px;
    line-height: 120%;
    letter-spacing: -0.24px;
  }

  .oor-manifest-section-line {
    display: none; /* Скрываем линию на мобильных */
  }

  .oor-manifest-section-content {
    gap: 32px;
    width: 100%;
  }

  .oor-manifest-section-title {
    font-size: 48px;
    line-height: 100%;
    letter-spacing: -1.92px;
    max-width: 100%;
  }

  .oor-manifest-section-text {
    font-size: 14px;
    line-height: 140%;
    letter-spacing: -0.28px;
    max-width: 100%;
  }

  /* CEO section */
  .oor-manifest-ceo-section {
    padding: 0;
  }

  .oor-manifest-ceo-section .oor-container {
    padding: 32px 12px;
  }

  .oor-manifest-ceo-header {
    margin-bottom: 32px;
    gap: 0;
  }

  .oor-manifest-ceo-label {
    font-size: 12px;
    line-height: 120%;
    letter-spacing: -0.24px;
  }

  .oor-manifest-ceo-plus {
    display: none; /* Скрываем plus на мобильных */
  }

  .oor-manifest-ceo-quote {
    font-size: 32px;
    line-height: 100%;
    letter-spacing: -1.28px;
    margin-bottom: 32px;
    text-align: left;
    max-width: 100%;
  }

  .oor-manifest-ceo-content {
    flex-direction: column;
    gap: 40px;
    align-items: flex-start;
  }

  .oor-manifest-ceo-plus-top-right {
    display: none; /* Скрываем plus на мобильных */
  }

  .oor-manifest-ceo-text {
    max-width: 100%;
    width: 100%;
    gap: 32px;
  }

  .oor-manifest-ceo-info {
    gap: 24px;
    margin-bottom: 0;
    width: 226px;
  }

  .oor-manifest-ceo-name {
    font-size: 24px;
    line-height: 120%;
    letter-spacing: -0.96px;
    max-width: 188px;
  }

  .oor-manifest-ceo-role {
    font-size: 14px;
    line-height: 120%;
    letter-spacing: -0.56px;
  }

  .oor-manifest-ceo-description {
    font-size: 14px;
    line-height: 140%;
    letter-spacing: -0.28px;
    width: 100%;
  }

  .oor-manifest-ceo-link {
    font-size: 14px;
    line-height: 120%;
    letter-spacing: -0.56px;
    text-decoration: underline;
    margin-top: 0;
  }

  .oor-manifest-ceo-image {
    width: 100%;
    max-width: 428px;
    height: 532px;
    margin: 0 auto;
  }

  .oor-manifest-ceo-plus-bottom {
    display: none; /* Скрываем plus на мобильных */
  }
}

/* Дополнительные стили для очень маленьких экранов (≤460px) */
@media (max-width: 460px) {
  .oor-manifest-hero-title {
    font-size: 48px;
    letter-spacing: -4.8px;
    padding: 0 16px;
  }

  .oor-manifest-hero-video-wrapper {
    padding: 64px 16px;
  }

  .oor-manifest-section .oor-container {
    padding-left: 0;
    padding-right: 0;
  }

  .oor-manifest-section-inner {
    padding: 32px 16px;
  }

  .oor-manifest-ceo-section .oor-container {
    padding: 32px 16px;
  }
}

/* ===== STUDIO PAGE MOBILE STYLES ===== */

/* Мобильная версия для страницы студии (≤768px) */
@media (max-width: 768px) {
  /* Hero секция */
  .oor-studio-hero {
    padding-top: 0;
  }

  .oor-studio-hero .oor-container {
    padding: 0;
  }

  .oor-studio-hero-grid {
    padding: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    padding: 16px 12px;
  }

  .oor-studio-hero-title {
    font-size: 35px;
    letter-spacing: -3.5px;
    line-height: 100%;
    margin: 0;
    padding: 0;
    max-width: 416px;
    width: 100%;
  }

  .oor-studio-hero-index {
    display: none; /* Скрываем индекс на мобильных в hero */
  }

  .oor-studio-hero-image {
    height: 348px;
    margin-top: 0;
  }

  /* Content Section [02] */
  .oor-studio-content-section {
    padding: 0;
  }

  .oor-studio-content-wrapper {
    padding: 0;
  }

  .oor-studio-content {
    flex-direction: column;
    gap: 24px;
    padding: 32px 12px;
  }

  .oor-studio-content-left {
    flex: none;
    max-width: 100%;
    gap: 16px;
  }

  .oor-studio-section-index {
    font-size: 12px;
    line-height: 120%;
    letter-spacing: -0.48px;
    opacity: 0.6;
  }

  .oor-studio-content-title-wrapper {
    padding-top: 0;
  }

  .oor-studio-content-title {
    font-size: 35px;
    line-height: 100%;
    letter-spacing: -1.4px;
    width: 100% !important;
    max-width: 418px;
  }

  .oor-studio-content-icon,
  .oor-studio-plus-icons-group {
    display: none; /* Скрываем декоративные иконки на мобильных */
  }

  .oor-studio-content-right {
    flex: none;
    max-width: 100%;
    gap: 12px;
  }

  .oor-studio-image-row {
    gap: 12px;
    width: 100%;
    overflow: visible;
  }

  .oor-studio-image-item {
    flex: 1 0 0;
    width: auto;
    min-width: 0;
    max-width: 100%;
    height: 295px;
    opacity: 0.8;
    transform: none;
  }

  .oor-studio-image-item:nth-child(2) {
    transform: none;
  }

  .oor-studio-content-text {
    font-size: 14px;
    line-height: 140%;
    letter-spacing: -0.28px;
    opacity: 0.5;
    max-width: 372px;
    margin: 0;
  }

  /* Equipment Section [03] */
  .oor-studio-equipment-section {
    padding: 0;
    background: #fff;
  }

  .oor-studio-equipment-section .oor-container {
    padding: 32px 12px;
  }

  .oor-studio-equipment-wrapper {
    max-width: 100%;
    overflow: visible;
  }

  .oor-studio-equipment-header {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
    gap: 0;
    padding-bottom: 0;
  }

  .oor-studio-equipment-title {
    font-size: 30px;
    line-height: 120%;
    letter-spacing: -1.2px;
    margin: 0;
  }

  .oor-studio-equipment-icon {
    display: none; /* Скрываем иконку на мобильных */
  }

  .oor-studio-equipment-wrapper {
    flex-direction: column;
    gap: 0;
    max-width: 100%;
    overflow: visible;
    border-top: none;
    border-bottom: none;
    grid-template-columns: 1fr;
  }

  .oor-studio-equipment-table {
    border-top: 1px solid #d0d0d0;
    border-bottom: none;
    width: 100%;
  }

  .oor-studio-equipment-row {
    flex-direction: row;
    border-top: none;
    border-bottom: 1px solid #d0d0d0;
    min-height: 76px;
    align-items: flex-start;
    width: 100%;
  }

  .oor-studio-equipment-row:first-child {
    border-top: none;
  }

  .oor-studio-equipment-row:last-child {
    border-bottom: 1px solid #d0d0d0;
  }

  .oor-studio-equipment-index {
    width: 48px;
    min-width: 48px;
    padding: 24px 12px 24px 24px;
    text-align: right;
    font-size: 12px;
    line-height: 120%;
    letter-spacing: -0.48px;
    border-right: none;
    flex-shrink: 0;
  }

  .oor-studio-equipment-content {
    flex: 1 1 auto;
    border-left: 1px solid #d0d0d0;
    padding: 24px;
    gap: 16px;
    min-height: 76px;
    align-items: flex-start;
    min-width: 0;
    width: 100%;
    box-sizing: border-box;
  }

  .oor-studio-equipment-row-active .oor-studio-equipment-content {
    align-items: flex-start;
  }

  .oor-studio-equipment-header-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    width: 100%;
    min-width: 0;
  }

  .oor-studio-equipment-item-title {
    font-size: 22px;
    line-height: 116%;
    letter-spacing: -0.88px;
    flex: 1;
  }

  .oor-studio-equipment-item-icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
  }

  .oor-studio-equipment-item-description {
    font-size: 14px;
    line-height: 140%;
    letter-spacing: -0.28px;
    display: none; /* Скрываем описание по умолчанию */
  }

  .oor-studio-equipment-row-active .oor-studio-equipment-item-description {
    display: block;
  }

  .oor-studio-equipment-item-image {
    display: none; /* Скрываем изображение по умолчанию */
    height: 200px;
    width: 100%;
    position: relative;
    overflow: hidden;
    margin-top: 0;
  }

  .oor-studio-equipment-row-active .oor-studio-equipment-item-image {
    display: block; /* Показываем изображение для активного пункта */
  }

  .oor-studio-equipment-item-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .oor-studio-equipment-image {
    display: none; /* Скрываем отдельное изображение на мобильных */
  }

  /* Services Section */
  .oor-studio-services-section {
    padding: 0;
    background: #fff;
  }

  .oor-studio-services-section .oor-container {
    padding: 32px 12px;
  }

  .oor-studio-services-grid {
    max-width: 100%;
    overflow: visible;
  }

  .oor-studio-services-header {
    margin-bottom: 0;
    padding: 12px 12px 16px 12px;
  }

  .oor-studio-services-title {
    font-size: 30px;
    line-height: 120%;
    letter-spacing: -1.2px;
    margin: 0;
  }

  .oor-studio-services-icon {
    display: none; /* Скрываем иконку на мобильных */
  }

  .oor-studio-services-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 0;
    max-width: 100%;
    overflow: visible;
    border-top: 1px solid #d0d0d0;
    border-bottom: 1px solid #d0d0d0;
  }

  .oor-studio-service-column {
    border-right: none !important;
    border-top: none !important;
    border-bottom: none;
  }

  .oor-studio-service-item {
    display: none !important; /* Скрываем заголовки на мобильных */
  }

  .oor-studio-service-description {
    border-top: 1px solid #d0d0d0;
    border-bottom: none;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    flex: none !important;
    min-height: auto !important;
    height: auto !important;
    box-shadow: none !important;
  }

  .oor-studio-service-column:first-child .oor-studio-service-description {
    border-top: none !important; /* Убираем двойной бордер у первого элемента */
  }

  /* Заголовок внутри описания */
  .oor-studio-service-description-header {
    display: flex;
    height: 100px;
    border-bottom: none;
  }

  .oor-studio-service-description-index {
    width: 48px;
    min-width: 48px;
    padding: 24px 12px 24px 24px;
    text-align: right;
    font-family: var(--font-ui);
    font-size: 12px;
    line-height: 120%;
    font-weight: 300;
    letter-spacing: -0.48px;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: flex-end;
  }

  .oor-studio-service-description-title-wrapper {
    flex: 1;
    border-left: 1px solid #d0d0d0;
    padding: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .oor-studio-service-description-title {
    font-size: 22px;
    line-height: 116%;
    letter-spacing: -0.88px;
    text-transform: uppercase;
    margin: 0;
  }

  .oor-studio-service-description p {
    font-family: var(--font-ui);
    font-size: 14px;
    line-height: 140%;
    font-weight: 300;
    letter-spacing: -0.28px;
    color: #000;
    max-width: 100%;
    width: 100%;
    padding: 24px;
    margin: 0;
    border-top: 1px solid #d0d0d0;
    box-sizing: border-box;
  }

  .oor-studio-service-description:nth-child(3) p {
    padding-bottom: 48px;
  }

  .oor-studio-service-description-title {
    font-family: var(--font-ui);
    font-weight: 300;
    color: #000;
  }

  /* Recording Section [04] */
  .oor-studio-recording-section {
    padding: 0;
    background: #000;
  }

  .oor-studio-recording-section .oor-container {
    padding: 32px 12px;
  }

  .oor-studio-recording-header {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 12px;
    gap: 0;
  }

  .oor-studio-recording-title {
    font-size: 30px;
    line-height: 120%;
    letter-spacing: -1.2px;
    flex: 1;
    width: auto;
    max-width: 100%;
  }

  .oor-studio-recording-divider {
    margin-top: 0;
    margin-bottom: 12px;
  }

  .oor-studio-recording-grid {
    flex-direction: column;
    gap: 56px;
    margin-top: 12px;
  }

  .oor-studio-recording-image {
    order: 2;
    height: 267px;
    width: 100%;
  }

  .oor-studio-recording-list {
    order: 1;
    height: auto;
    gap: 24px;
  }

  .oor-studio-recording-items {
    gap: 20px;
  }

  .oor-studio-recording-item {
    gap: 20px;
  }

  .oor-studio-recording-item-title {
    font-size: 22px;
    line-height: 116%;
    letter-spacing: -0.88px;
  }

  .oor-studio-contact {
    gap: 24px;
  }

  .oor-studio-contact-text {
    font-size: 14px;
    line-height: 140%;
    letter-spacing: -0.28px;
    opacity: 0.5;
  }

  .oor-studio-contact-button {
    font-size: 16px;
    line-height: 120%;
    letter-spacing: -0.64px;
    padding-top: 8px;
    border-top: 1px solid rgba(255, 255, 255, 0.7);
  }
}

/* Дополнительные стили для очень маленьких экранов (≤460px) */
@media (max-width: 460px) {
  .oor-studio-hero-title {
    font-size: 30px;
    letter-spacing: -3px;
  }

  .oor-studio-content-title {
    font-size: 30px;
    letter-spacing: -1.2px;
  }

  .oor-studio-content,
  .oor-studio-equipment-section .oor-container,
  .oor-studio-services-section .oor-container,
  .oor-studio-recording-section .oor-container {
    padding-left: 16px;
    padding-right: 16px;
  }
}

/* ===== ARTISTS PAGE STYLES ===== */

/* Artists page - black header */
body.oor-artists-page .oor-header {
  background: #000 !important;
  mix-blend-mode: normal !important;
  isolation: isolate;
}

body.oor-artists-page .oor-logo img {
  mix-blend-mode: normal !important;
  filter: brightness(0) invert(1) !important;
}

body.oor-artists-page .oor-nav-link {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-artists-page .oor-nav-link--active {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-artists-page .oor-nav-item > span {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-artists-page .oor-btn-small {
  mix-blend-mode: normal !important;
}

body.oor-artists-page .oor-btn-small-text {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-artists-page .oor-btn-small-icon {
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

body.oor-artists-page .oor-btn-small-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

/* Artists Hero Section */
.oor-artists-hero {
  background: #fff;
  padding-top: 80px;
  padding-bottom: 16px;
  border-bottom: 1px solid #000;
}

.oor-artists-hero-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
}

.oor-artists-hero-title {
  font-family: var(--font-ui);
  font-size: 96px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -8.64px;
  text-transform: uppercase;
  color: #000;
  margin: 0;
}

.oor-artists-hero-copyright {
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.32px;
  color: #000;
  margin: 0;
}

/* Artists Grid Section */
.oor-artists-grid-section {
  background: #fff;
  padding: 63px 0 80px;
}

.oor-artists-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 44px 44px;
  width: 100%;
}

.oor-artist-card {
  display: flex;
  flex-direction: column;
  gap: 11px;
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}

a.oor-artist-card {
  text-decoration: none;
  color: inherit;
}

a.oor-artist-card:hover {
  opacity: 0.8;
}

.oor-artist-image {
  width: 100%;
  aspect-ratio: 3 / 4;
  position: relative;
  overflow: hidden;
}

.oor-artist-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.oor-artist-name {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #000;
  margin: 0;
}

/* ===== SERVICES PAGE STYLES ===== */

/* Services page - black header */
body.oor-services-page {
  background: #000;
}

body.oor-services-page .oor-header {
  background: #000 !important;
  mix-blend-mode: normal !important;
  isolation: isolate;
}

body.oor-services-page .oor-logo img {
  mix-blend-mode: normal !important;
  filter: brightness(0) invert(1) !important;
}

body.oor-services-page .oor-nav-link {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-services-page .oor-nav-link--active {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-services-page .oor-nav-item > span {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-services-page .oor-btn-small {
  mix-blend-mode: normal !important;
}

body.oor-services-page .oor-btn-small-text {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-services-page .oor-btn-small-icon {
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

body.oor-services-page .oor-btn-small-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

/* Services Hero Section */
.oor-services-hero {
  background: #000;
  padding: 80px 0 0;
}

.oor-services-hero-title {
  font-family: var(--font-ui);
  font-size: 96px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -9.6px;
  text-transform: uppercase;
  color: #fff;
  margin: 0;
}

/* Services Recording Section */
.oor-services-recording {
  background: #000;
  padding: 56px 0 0;
}

.oor-services-recording-divider {
  width: 100%;
  height: 1px;
  background: rgba(255, 255, 255, 0.3);
}

.oor-services-recording-content {
  display: flex;
  gap: 56px;
  padding: 56px 0;
  align-items: stretch;
}

.oor-services-recording-list {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.oor-services-recording-item {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.oor-services-recording-item-title {
  font-family: var(--font-ui);
  font-size: 22px;
  line-height: 116%;
  font-weight: 300;
  letter-spacing: -0.88px;
  text-transform: uppercase;
  color: #fff;
  margin: 0;
}

.oor-services-recording-item-text {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: rgba(255, 255, 255, 0.7);
  margin: 0;
}

.oor-services-recording-item-divider {
  width: 100%;
  height: 1px;
  background: rgba(255, 255, 255, 0.3);
}

.oor-services-contact {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-top: 131px;
}

.oor-services-contact-text {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: rgba(255, 255, 255, 0.5);
  margin: 0;
}

.oor-services-contact-button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 0 0;
  border-top: 1px solid rgba(255, 255, 255, 0.7);
  text-decoration: none;
  color: #fff;
}

.oor-services-contact-button .tn-atom {
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.64px;
  color: #fff;
}

.oor-services-contact-button img {
  width: 32px;
  height: 32px;
}

.oor-services-recording-image {
  width: 644px;
  flex-shrink: 0;
  position: relative;
  overflow: hidden;
  align-self: stretch;
}

.oor-services-recording-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transform: scale(1.15);
  transform-origin: center center;
}

.oor-services-recording-image picture {
  display: block;
  width: 100%;
  height: 100%;
}

.oor-services-recording-image .oor-parallax-wrap {
  width: 100% !important;
  height: 100% !important;
}

.oor-services-recording-image-desktop {
  width: 644px;
  flex-shrink: 0;
  position: relative;
  overflow: hidden;
  align-self: stretch;
  display: block;
}

.oor-services-recording-image-desktop img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transform: scale(1.15);
  transform-origin: center center;
}

.oor-services-recording-image-desktop picture {
  display: block;
  width: 100%;
  height: 100%;
}

.oor-services-recording-image-desktop .oor-parallax-wrap {
  width: 100% !important;
  height: 100% !important;
}

/* ===== SERVICES PAGE MOBILE STYLES ===== */

/* Мобильная версия для страницы услуг (≤768px) */
@media (max-width: 768px) {
  /* Hero секция */
  .oor-services-hero {
    padding-top: 0;
  }

  .oor-services-hero .oor-container {
    padding: 0;
  }

  .oor-services-hero-title {
    font-size: 72px;
    line-height: 100%;
    letter-spacing: -7.2px;
    padding: 76px 0 0 12px;
    margin: 0;
  }

  /* Recording Section */
  .oor-services-recording {
    padding: 0;
  }

  .oor-services-recording .oor-container {
    padding: 0;
  }

  .oor-services-recording-divider:first-of-type {
    display: none; /* Скрываем верхний разделитель на мобильных */
  }

  .oor-services-recording-content {
    flex-direction: column;
    gap: 0;
    padding: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }

  .oor-services-recording-divider:last-of-type {
    display: none; /* Скрываем нижний разделитель на мобильных */
  }

  .oor-services-recording-list {
    padding: 40px 12px 40px 12px;
    gap: 0;
  }

  .oor-services-recording-item {
    gap: 12px;
    padding: 0;
  }

  .oor-services-recording-item-title {
    font-size: 22px;
    line-height: 116%;
    letter-spacing: -0.88px;
    text-align: left;
    margin: 0;
  }

  .oor-services-recording-item-text {
    font-size: 14px;
    line-height: 140%;
    letter-spacing: -0.28px;
    opacity: 0.7;
    text-align: left;
    margin: 0;
  }

  .oor-services-recording-item-divider {
    height: 1px;
    background: rgba(255, 255, 255, 0.2);
    margin: 20px 0;
  }

  /* Изображение записи на мобильных */
  .oor-services-recording-image {
    display: block;
    width: 100%;
    height: 348px;
    margin: 40px 0;
    position: relative;
    overflow: hidden;
  }

  .oor-services-recording-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: none;
  }

  .oor-services-recording-image picture {
    display: block;
    width: 100%;
    height: 100%;
  }

  .oor-services-recording-image-desktop {
    display: none; /* Скрываем десктопное изображение на мобильных */
  }

  /* Contact Block */
  .oor-services-contact {
    margin-top: 40px;
    gap: 24px;
    padding-bottom: 0;
  }

  .oor-services-contact-text {
    font-size: 14px;
    line-height: 140%;
    letter-spacing: -0.28px;
    opacity: 0.5;
    text-align: left;
  }

  .oor-services-contact-button {
    padding: 8px 0 0;
    border-top: 1px solid rgba(255, 255, 255, 0.7);
  }

  .oor-services-contact-button .tn-atom {
    font-size: 16px;
    line-height: 120%;
    letter-spacing: -0.64px;
  }

  .oor-services-contact-button img {
    width: 32px;
    height: 32px;
  }

  /* Бургер-меню на странице услуг - белая иконка */
  body.oor-services-page .oor-header .oor-burger-menu {
    mix-blend-mode: normal !important;
    isolation: isolate !important;
  }

  body.oor-services-page .oor-header .oor-burger-menu .oor-burger-icon {
    color: #fff !important;
    fill: #fff !important;
    stroke: #fff !important;
    mix-blend-mode: normal !important;
  }

  body.oor-services-page .oor-header .oor-burger-menu .oor-burger-icon,
  body.oor-services-page .oor-header .oor-burger-menu .oor-burger-icon * {
    filter: brightness(0) invert(1) !important;
    mix-blend-mode: normal !important;
    opacity: 1 !important;
  }

  body.oor-services-page .oor-header .oor-burger-menu .oor-burger-icon img {
    filter: brightness(0) invert(1) !important;
    mix-blend-mode: normal !important;
    opacity: 1 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
  }

  /* Мобильное меню на странице услуг */
  body.oor-services-page .oor-mobile-menu *,
  body.oor-services-page .oor-mobile-menu a.rolling-button,
  body.oor-services-page .oor-mobile-menu a.rolling-button span,
  body.oor-services-page .oor-mobile-menu .oor-mobile-menu-link,
  body.oor-services-page .oor-mobile-menu .oor-mobile-menu-link.rolling-button {
    color: #fff !important;
  }

  body.oor-services-page .oor-mobile-menu-link,
  body.oor-services-page .oor-mobile-menu-link.rolling-button {
    color: #fff !important;
    opacity: 0.8;
  }

  body.oor-services-page .oor-mobile-menu-link:hover,
  body.oor-services-page .oor-mobile-menu-link.rolling-button:hover {
    color: #fff !important;
    opacity: 1;
  }

  body.oor-services-page .oor-mobile-menu-btn {
    color: #fff !important;
    border-color: #fff !important;
  }

  body.oor-services-page .oor-mobile-menu-btn .oor-mobile-menu-btn-text {
    color: #fff !important;
  }

  body.oor-services-page .oor-mobile-menu-btn:hover {
    background: #fff !important;
    color: #000 !important;
  }

  body.oor-services-page .oor-mobile-menu-btn:hover .oor-mobile-menu-btn-text {
    color: #000 !important;
  }
}

/* Десктопные стили - скрываем мобильное изображение */
@media (min-width: 769px) {
  .oor-services-recording-image {
    display: none; /* Скрываем мобильное изображение на десктопе */
  }

  .oor-services-recording-image-desktop {
    display: block; /* Показываем десктопное изображение */
  }
}

/* ===== DAWGS PAGE MOBILE STYLES ===== */

/* Мобильная версия для страницы DAWGS (≤768px) */
@media (max-width: 768px) {
  /* Hero секция */
  .oor-dawgs-hero {
    padding-top: 0;
    padding-bottom: 0;
  }

  .oor-dawgs-hero .oor-container {
    padding: 0;
  }

  .oor-dawgs-hero-grid {
    padding: 0;
  }

  .oor-dawgs-hero-title {
    font-size: 56px;
    letter-spacing: -5.6px;
    line-height: 100%;
    padding: 76px 0 0 12px;
    margin: 0;
  }
}

/* ===== ARTISTS PAGE MOBILE STYLES ===== */

/* Мобильная версия для страницы артистов (≤768px) */
@media (max-width: 768px) {
  /* Hero секция */
  .oor-artists-hero {
    padding-top: 0;
    padding-bottom: 0;
    border-bottom: 1px solid #000;
  }

  .oor-artists-hero .oor-container {
    padding: 0;
  }

  .oor-artists-hero-header {
    flex-direction: column;
    align-items: flex-start;
    padding: 76px 0 16px 12px;
    gap: 0;
  }

  .oor-artists-hero-title {
    font-size: 72px;
    line-height: 100%;
    letter-spacing: -7.2px;
    margin: 0;
  }

  .oor-artists-hero-copyright {
    font-size: 16px;
    line-height: 140%;
    letter-spacing: -0.32px;
    margin: 0;
    margin-top: 0;
  }

  /* Grid Section */
  .oor-artists-grid-section {
    padding: 32px 0 40px;
  }

  .oor-artists-grid-section .oor-container {
    padding: 0 12px;
  }

  .oor-artists-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 32px;
    width: 100%;
  }

  .oor-artist-card {
    gap: 11px;
    width: 100%;
  }

  .oor-artist-image {
    width: 100%;
    aspect-ratio: 3 / 4;
    position: relative;
    overflow: hidden;
  }

  .oor-artist-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .oor-artist-name {
    font-family: var(--font-ui);
    font-size: 22px;
    line-height: 116%;
    font-weight: 300;
    letter-spacing: -0.88px;
    text-transform: uppercase;
    color: #000;
    margin: 0;
  }

  /* Бургер-меню на странице артистов - белая иконка */
  body.oor-artists-page .oor-header .oor-burger-menu {
    mix-blend-mode: normal !important;
    isolation: isolate !important;
  }

  body.oor-artists-page .oor-header .oor-burger-menu .oor-burger-icon {
    color: #fff !important;
    fill: #fff !important;
    stroke: #fff !important;
    mix-blend-mode: normal !important;
  }

  body.oor-artists-page .oor-header .oor-burger-menu .oor-burger-icon,
  body.oor-artists-page .oor-header .oor-burger-menu .oor-burger-icon * {
    filter: brightness(0) invert(1) !important;
    mix-blend-mode: normal !important;
    opacity: 1 !important;
  }

  body.oor-artists-page .oor-header .oor-burger-menu .oor-burger-icon img {
    filter: brightness(0) invert(1) !important;
    mix-blend-mode: normal !important;
    opacity: 1 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
  }

  /* Мобильное меню на странице артистов */
  body.oor-artists-page .oor-mobile-menu *,
  body.oor-artists-page .oor-mobile-menu a.rolling-button,
  body.oor-artists-page .oor-mobile-menu a.rolling-button span,
  body.oor-artists-page .oor-mobile-menu .oor-mobile-menu-link,
  body.oor-artists-page .oor-mobile-menu .oor-mobile-menu-link.rolling-button {
    color: #fff !important;
  }

  body.oor-artists-page .oor-mobile-menu-link,
  body.oor-artists-page .oor-mobile-menu-link.rolling-button {
    color: #fff !important;
    opacity: 0.8;
  }

  body.oor-artists-page .oor-mobile-menu-link:hover,
  body.oor-artists-page .oor-mobile-menu-link.rolling-button:hover {
    color: #fff !important;
    opacity: 1;
  }

  body.oor-artists-page .oor-mobile-menu-btn {
    color: #fff !important;
    border-color: #fff !important;
  }

  body.oor-artists-page .oor-mobile-menu-btn .oor-mobile-menu-btn-text {
    color: #fff !important;
  }

  body.oor-artists-page .oor-mobile-menu-btn:hover {
    background: #fff !important;
    color: #000 !important;
  }

  body.oor-artists-page .oor-mobile-menu-btn:hover .oor-mobile-menu-btn-text {
    color: #000 !important;
  }
}

/* ===== TALK SHOW PAGE STYLES ===== */

/* Talk Show page - black header */
body.oor-talk-show-page {
  background: #000;
}

body.oor-talk-show-page .oor-header {
  background: #000 !important;
  mix-blend-mode: normal !important;
  isolation: isolate;
}

body.oor-talk-show-page .oor-logo img {
  mix-blend-mode: normal !important;
  filter: brightness(0) invert(1) !important;
}

body.oor-talk-show-page .oor-nav-link {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-talk-show-page .oor-nav-item span {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-talk-show-page .oor-btn-small {
  border-color: #fff !important;
  color: #fff !important;
}

body.oor-talk-show-page .oor-btn-small-icon img {
  filter: brightness(0) invert(1) !important;
}

/* Hero Section */
.oor-talk-show-hero {
  background: #000;
  padding-top: 97px;
  padding-bottom: 48px;
  position: relative;
  min-height: 603px;
}

.oor-talk-show-hero-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 28px;
}

.oor-talk-show-hero-left {
  max-width: 700px;
}

.oor-talk-show-hero-title {
  font-family: var(--font-ui);
  font-size: 112px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -11.2px;
  text-transform: uppercase;
  color: #fff;
  margin: 0;
}

.oor-talk-show-hero-right {
  display: flex;
  flex-direction: column;
  gap: 17px;
  width: 321px;
  flex-shrink: 0;
}

.oor-talk-show-hero-video-small {
  width: 321px;
  height: 179px;
  overflow: hidden;
  position: relative;
}

.oor-talk-show-hero-video-small video,
.oor-talk-show-hero-video-small img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.oor-talk-show-hero-description {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #fff;
  margin: 0;
  max-width: 265px;
}

.oor-talk-show-hero-bottom {
  display: flex;
  justify-content: flex-start;
}

.oor-talk-show-hero-video-large {
  width: 700px;
  height: 262px;
  flex-shrink: 0;
  overflow: hidden;
  position: relative;
}

.oor-talk-show-hero-video-large video,
.oor-talk-show-hero-video-large img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.oor-talk-show-hero-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.oor-talk-show-hero-line {
  position: absolute;
  bottom: 48px;
  right: 48px;
  width: 18px;
  height: 1px;
}

.oor-talk-show-hero-line img {
  filter: brightness(0) invert(1);
  opacity: 0.6;
}

/* Episodes Section */
.oor-talk-show-episodes {
  background: #000;
  padding: 60px 0 86px;
  position: relative;
}

.oor-talk-show-episodes-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 55px;
  position: relative;
}

.oor-talk-show-episodes-index {
  font-family: var(--font-ui);
  font-size: 12px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.48px;
  color: #fff;
  text-align: center;
}

.oor-talk-show-episodes-plus-center {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 18px;
  height: 18px;
}

.oor-talk-show-episodes-plus-center img {
  width: 100%;
  height: 100%;
  filter: brightness(0) invert(1);
}

.oor-talk-show-episodes-plus-right {
  width: 18px;
  height: 18px;
}

.oor-talk-show-episodes-plus-right img {
  width: 100%;
  height: 100%;
  filter: brightness(0) invert(1);
}

.oor-talk-show-episodes-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
  margin-bottom: 22px;
}

.oor-talk-show-episode-card {
  display: block;
  text-decoration: none;
  position: relative;
}

.oor-talk-show-episode-image {
  width: 100%;
  height: 240px;
  position: relative;
  overflow: hidden;
}

.oor-talk-show-episode-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease, filter 0.4s ease;
}

.oor-talk-show-episode-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 100%);
  pointer-events: none;
}

.oor-talk-show-episode-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50px;
  height: 50px;
  opacity: 0;
  transition: opacity 0.3s ease, transform 0.3s ease;
  z-index: 2;
}

.oor-talk-show-episode-play img {
  width: 100%;
  height: 100%;
}

/* Hover states for episode cards */
.oor-talk-show-episode-card:hover .oor-talk-show-episode-image img {
  transform: scale(1.05);
  filter: brightness(0.7);
}

.oor-talk-show-episode-card:hover .oor-talk-show-episode-play {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1.1);
}

.oor-talk-show-episode-title {
  font-family: var(--font-ui);
  font-size: 12px;
  line-height: 20px;
  font-weight: 300;
  letter-spacing: 0;
  color: #fff;
  margin: 16px 0 0;
  padding: 0 16px;
}

.oor-talk-show-episodes-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.oor-talk-show-episodes-more {
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: 20px;
  font-weight: 300;
  letter-spacing: 0;
  color: #fff;
  text-decoration: underline;
  text-underline-position: from-font;
  transition: text-decoration 0.3s ease;
}

.oor-talk-show-episodes-more:hover {
  text-decoration: none;
}

.oor-talk-show-episodes-counter {
  font-family: var(--font-ui);
  font-size: 12px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.48px;
  color: #fff;
  text-align: center;
}

/* Rules Section - Parallax Scroll */
.oor-talk-show-rules {
  background: #fff;
  position: relative;
  height: 100vh;
  overflow: hidden;
}

.oor-talk-show-rules-wrapper {
  height: 100%;
  padding-top: 64px;
  padding-bottom: 0;
  box-sizing: border-box;
}

.oor-talk-show-rules-header {
  margin-bottom: 64px;
}

.oor-talk-show-rules-index {
  font-family: var(--font-ui);
  font-size: 12px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.48px;
  color: #000;
  text-align: left;
}

.oor-talk-show-rules-content {
  display: flex;
  gap: 64px;
  align-items: flex-start;
  height: calc(100vh - 64px - 14px - 64px);
}

.oor-talk-show-rules-left {
  width: 50%;
  padding-top: 0;
  padding-right: 64px;
}

.oor-talk-show-rules-title {
  font-family: var(--font-ui);
  font-size: 30px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -1.2px;
  text-transform: uppercase;
  color: #000;
  margin: 0 0 64px;
}

.oor-talk-show-rules-line,
.oor-talk-show-rules-line-2 {
  width: 18px;
  height: 1px;
  margin-bottom: 64px;
}

.oor-talk-show-rules-line img,
.oor-talk-show-rules-line-2 img {
  width: 100%;
  height: 100%;
}

.oor-talk-show-rules-description {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #000;
  margin: 0 0 64px;
  max-width: 439px;
}

.oor-talk-show-rules-participants {
  max-width: 439px;
}

.oor-talk-show-rules-participants-title {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 700;
  letter-spacing: -0.28px;
  color: #000;
  margin: 0 0 8px;
}

.oor-talk-show-rules-participants-list {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #000;
  margin: 0;
}

.oor-talk-show-rules-right {
  width: 50%;
  display: flex;
  gap: 24px;
  height: 100%;
  overflow: visible;
}

.oor-talk-show-rules-col {
  display: flex;
  flex-direction: column;
  gap: 24px;
  flex: 1;
  will-change: transform;
}

.oor-talk-show-rules-col-1 {
  padding-top: 0;
}

.oor-talk-show-rules-col-2 {
  padding-top: 136px;
}

.oor-talk-show-participant-card {
  width: 100%;
  aspect-ratio: 308 / 288;
  overflow: hidden;
  flex-shrink: 0;
}

.oor-talk-show-participant-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Footer plus icons for talk-show */
.oor-footer-plus-left,
.oor-footer-plus-right,
.oor-footer-plus-bottom {
  position: absolute;
  width: 18px;
  height: 18px;
}

.oor-footer-plus-left {
  top: 0;
  left: 0;
}

.oor-footer-plus-right {
  top: 0;
  right: 0;
}

.oor-footer-plus-bottom {
  bottom: 0;
  left: 0;
}

.oor-footer-plus-left img,
.oor-footer-plus-right img,
.oor-footer-plus-bottom img {
  width: 100%;
  height: 100%;
  filter: brightness(0) invert(1);
}

/* ===== TALK SHOW PAGE MOBILE STYLES ===== */

/* Мобильная версия для страницы talk-show (≤768px) */
@media (max-width: 768px) {
  /* Hero секция */
  .oor-talk-show-hero {
    padding-top: 0;
    padding-bottom: 0;
    min-height: auto;
  }

  .oor-talk-show-hero .oor-container {
    padding: 0;
  }

  .oor-talk-show-hero-top {
    flex-direction: column;
    gap: 24px;
    margin-bottom: 24px;
    padding: 76px 12px 0 12px;
  }

  .oor-talk-show-hero-left {
    max-width: 100%;
    width: 100%;
  }

  .oor-talk-show-hero-title {
    font-size: 56px;
    line-height: 100%;
    letter-spacing: -5.6px;
    margin: 0;
  }

  .oor-talk-show-hero-right {
    width: 100%;
    gap: 12px;
  }

  .oor-talk-show-hero-video-small {
    width: 100%;
    height: 200px;
  }

  .oor-talk-show-hero-description {
    font-size: 14px;
    line-height: 140%;
    letter-spacing: -0.28px;
    max-width: 100%;
  }

  .oor-talk-show-hero-bottom {
    padding: 0 12px 24px 12px;
  }

  .oor-talk-show-hero-video-large {
    width: 100%;
    height: 200px;
  }

  .oor-talk-show-hero-line {
    display: none; /* Скрываем линию на мобильных */
  }

  /* Episodes Section */
  .oor-talk-show-episodes {
    padding: 32px 0 40px;
  }

  .oor-talk-show-episodes .oor-container {
    padding: 0 12px;
  }

  .oor-talk-show-episodes-header {
    margin-bottom: 24px;
    padding: 0;
  }

  .oor-talk-show-episodes-index {
    font-size: 12px;
    line-height: 120%;
    letter-spacing: -0.48px;
  }

  .oor-talk-show-episodes-plus-center,
  .oor-talk-show-episodes-plus-right {
    display: none; /* Скрываем plus на мобильных */
  }

  .oor-talk-show-episodes-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    margin-bottom: 24px;
  }

  .oor-talk-show-episode-image {
    height: 200px;
  }

  .oor-talk-show-episode-title {
    font-size: 12px;
    line-height: 20px;
    margin: 12px 0 0;
    padding: 0;
  }

  .oor-talk-show-episodes-footer {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .oor-talk-show-episodes-more {
    font-size: 14px;
    line-height: 20px;
  }

  .oor-talk-show-episodes-counter {
    font-size: 12px;
    line-height: 120%;
    letter-spacing: -0.48px;
  }

  /* Rules Section */
  .oor-talk-show-rules {
    height: auto;
    min-height: auto;
    overflow: visible;
  }

  .oor-talk-show-rules-wrapper {
    height: auto;
    padding-top: 32px;
    padding-bottom: 40px;
  }

  .oor-talk-show-rules .oor-container {
    padding: 0 12px;
  }

  .oor-talk-show-rules-header {
    margin-bottom: 24px;
  }

  .oor-talk-show-rules-index {
    font-size: 12px;
    line-height: 120%;
    letter-spacing: -0.48px;
  }

  .oor-talk-show-rules-content {
    flex-direction: column;
    gap: 32px;
    height: auto;
  }

  .oor-talk-show-rules-left {
    width: 100%;
    padding-right: 0;
  }

  .oor-talk-show-rules-title {
    font-size: 30px;
    line-height: 120%;
    letter-spacing: -1.2px;
    margin: 0 0 24px;
  }

  .oor-talk-show-rules-line,
  .oor-talk-show-rules-line-2 {
    width: 18px;
    height: 1px;
    margin-bottom: 24px;
  }

  .oor-talk-show-rules-description {
    font-size: 14px;
    line-height: 140%;
    letter-spacing: -0.28px;
    margin: 0 0 24px;
  }

  .oor-talk-show-rules-participants {
    margin-top: 24px;
  }

  .oor-talk-show-rules-participants-title {
    font-size: 12px;
    line-height: 120%;
    letter-spacing: -0.48px;
    margin: 0 0 12px;
  }

  .oor-talk-show-rules-participants-list {
    font-size: 14px;
    line-height: 140%;
    letter-spacing: -0.28px;
    margin: 0;
  }

  .oor-talk-show-rules-right {
    width: 100%;
    display: flex;
    gap: 12px;
    overflow: visible;
    height: auto;
  }

  .oor-talk-show-rules-col {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
    height: auto;
  }

  .oor-talk-show-rules-col-1,
  .oor-talk-show-rules-col-2 {
    padding-top: 0; /* Убираем отступ сверху на мобильных */
  }

  .oor-talk-show-participant-card {
    width: 100%;
    aspect-ratio: 1 / 1;
    position: relative;
    overflow: hidden;
  }

  .oor-talk-show-participant-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  /* Бургер-меню на странице talk-show - белая иконка */
  body.oor-talk-show-page .oor-header .oor-burger-menu {
    mix-blend-mode: normal !important;
    isolation: isolate !important;
  }

  body.oor-talk-show-page .oor-header .oor-burger-menu .oor-burger-icon {
    color: #fff !important;
    fill: #fff !important;
    stroke: #fff !important;
    mix-blend-mode: normal !important;
  }

  body.oor-talk-show-page .oor-header .oor-burger-menu .oor-burger-icon,
  body.oor-talk-show-page .oor-header .oor-burger-menu .oor-burger-icon * {
    filter: brightness(0) invert(1) !important;
    mix-blend-mode: normal !important;
    opacity: 1 !important;
  }

  body.oor-talk-show-page .oor-header .oor-burger-menu .oor-burger-icon img {
    filter: brightness(0) invert(1) !important;
    mix-blend-mode: normal !important;
    opacity: 1 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
  }

  /* Мобильное меню на странице talk-show */
  body.oor-talk-show-page .oor-mobile-menu *,
  body.oor-talk-show-page .oor-mobile-menu a.rolling-button,
  body.oor-talk-show-page .oor-mobile-menu a.rolling-button span,
  body.oor-talk-show-page .oor-mobile-menu .oor-mobile-menu-link,
  body.oor-talk-show-page .oor-mobile-menu .oor-mobile-menu-link.rolling-button {
    color: #fff !important;
  }

  body.oor-talk-show-page .oor-mobile-menu-link,
  body.oor-talk-show-page .oor-mobile-menu-link.rolling-button {
    color: #fff !important;
    opacity: 0.8;
  }

  body.oor-talk-show-page .oor-mobile-menu-link:hover,
  body.oor-talk-show-page .oor-mobile-menu-link.rolling-button:hover {
    color: #fff !important;
    opacity: 1;
  }

  body.oor-talk-show-page .oor-mobile-menu-btn {
    color: #fff !important;
    border-color: #fff !important;
  }

  body.oor-talk-show-page .oor-mobile-menu-btn .oor-mobile-menu-btn-text {
    color: #fff !important;
  }

  body.oor-talk-show-page .oor-mobile-menu-btn:hover {
    background: #fff !important;
    color: #000 !important;
  }

  body.oor-talk-show-page .oor-mobile-menu-btn:hover .oor-mobile-menu-btn-text {
    color: #000 !important;
  }
}

/* ===== ARTIST PAGE STYLES ===== */

/* Artist page - full height, no footer */
body.oor-artist-page {
  height: 100vh;
  overflow: hidden;
  background: #fff;
}


body.oor-artist-page .oor-footer {
  display: none;
}

/* Artist page - white header on image background */
/* Artist page - desktop header styles (default mix-blend-mode: difference) */
body.oor-artist-page .oor-header {
  background: transparent !important;
  mix-blend-mode: difference !important;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
}

body.oor-artist-page .oor-logo img {
  mix-blend-mode: difference !important;
  filter: brightness(0) invert(1) !important;
}

body.oor-artist-page .oor-nav-link {
  color: #fff !important;
  mix-blend-mode: difference !important;
}

body.oor-artist-page .oor-nav-link--active {
  color: #fff !important;
  mix-blend-mode: difference !important;
}

body.oor-artist-page .oor-nav-item > span {
  color: #fff !important;
  mix-blend-mode: difference !important;
}

body.oor-artist-page .oor-btn-small {
  mix-blend-mode: difference !important;
}

body.oor-artist-page .oor-btn-small-text {
  color: #fff !important;
  mix-blend-mode: difference !important;
}

body.oor-artist-page .oor-btn-small-icon {
  mix-blend-mode: difference !important;
  opacity: 1 !important;
}

body.oor-artist-page .oor-btn-small-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: difference !important;
  opacity: 1 !important;
}

body.oor-artist-page .oor-btn-small {
  mix-blend-mode: difference !important;
}

body.oor-artist-page .oor-btn-small-text {
  color: #fff !important;
  mix-blend-mode: difference !important;
}

body.oor-artist-page .oor-btn-small-icon {
  mix-blend-mode: difference !important;
}

body.oor-artist-page .oor-btn-small-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: difference !important;
}

/* Breadcrumbs */
.oor-artist-breadcrumbs {
  position: fixed;
  top: 92px;
  left: 48px;
  display: flex;
  align-items: center;
  gap: 4px;
  z-index: 50;
}

.oor-artist-breadcrumb-link {
  font-family: var(--font-ui);
  font-size: 10px;
  line-height: normal;
  font-weight: 300;
  letter-spacing: -0.2px;
  text-transform: uppercase;
  color: #000;
  text-decoration: underline;
  text-underline-position: from-font;
}

.oor-artist-breadcrumb-dot {
  width: 3px;
  height: 3px;
  background: #000;
  border-radius: 50%;
}

.oor-artist-breadcrumb-current {
  font-family: var(--font-ui);
  font-size: 10px;
  line-height: normal;
  font-weight: 300;
  letter-spacing: -0.2px;
  text-transform: uppercase;
  color: #000;
}

/* Main Content - Flex layout: fixed left column + flexible image + fixed right column */
.oor-artist-main {
  display: flex;
  gap: 24px;
  height: calc(100vh - 84px - 48px);
  position: relative;
  background: #fff;
  margin-top: 84px;
  overflow: visible;
}

/* Artist Image Container */
.oor-artist-image-container {
  flex: 1;
  position: relative;
  overflow: hidden;
  min-width: 0;
  height: 100%;
  z-index: 1;
  pointer-events: none;
  box-sizing: border-box;
}

/* Десктоп: картинка с отступом 24px слева, 24px справа (не слипаться с треками) */
.oor-artist-image-container picture,
.oor-artist-image-container > img {
  position: absolute;
  top: 0;
  left: 24px;
  right: 24px;
  bottom: 0;
  width: calc(100% - 48px);
  height: 100%;
  display: block;
  pointer-events: none;
  object-fit: cover;
  object-position: center top;
}

.oor-artist-image-main {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

/* Left - Description with gradient background (fixed width) */
.oor-artist-description-container {
  position: relative;
  z-index: 2;
  width: 338px;
  flex-shrink: 0;
  height: 100%;
  padding: 97px 48px 48px 48px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  background: linear-gradient(to right, rgba(255,255,255,1) 70%, rgba(255,255,255,0) 100%);
  overflow-y: auto;
}

.oor-artist-title {
  font-family: var(--font-ui);
  font-size: 24px;
  line-height: 116%;
  font-weight: 300;
  letter-spacing: -0.96px;
  text-transform: uppercase;
  color: #000;
  margin: 0;
}

.oor-artist-description-wrapper {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.oor-artist-description-content {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 130%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #000;
}

.oor-artist-description-content p {
  margin: 0 0 12px 0;
}

.oor-artist-description-content p:last-child {
  margin-bottom: 0;
}

/* Полное описание скрыто по умолчанию; по клику «подробнее» добавляется класс .expanded на .oor-artist-description-content */
.oor-artist-description-content .oor-artist-description-expanded {
  display: none !important;
}

.oor-artist-description-content.expanded .oor-artist-description-expanded {
  display: block !important;
}

.oor-artist-description-toggle {
  font-family: var(--font-ui);
  font-size: 10px;
  line-height: normal;
  font-weight: 300;
  letter-spacing: -0.2px;
  color: #000;
  text-decoration: underline;
  text-underline-position: from-font;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  text-align: left;
  align-self: flex-start;
  position: relative;
  z-index: 2;
}

.oor-artist-description-toggle:hover {
  opacity: 0.7;
}

.oor-artist-social-links {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: auto;
  padding-top: 24px;
}

.oor-artist-social-link {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #000;
  text-decoration: underline;
  text-underline-position: from-font;
}

/* Right - Tracks Grid (fixed width, scrollable), отступ от блока с обложкой */
.oor-artist-tracks-container {
  position: relative;
  z-index: 10;
  width: 636px;
  flex-shrink: 0;
  height: 100%;
  overflow-y: auto !important;
  overflow-x: hidden;
  padding: 0 48px 100px 0;
  -webkit-overflow-scrolling: touch;
  pointer-events: auto;
  will-change: scroll-position;
  scroll-behavior: auto;
}

/* Ensure tracks container can scroll even if Lenis is active */
body.oor-artist-page .oor-artist-tracks-container {
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

.oor-artist-tracks-grid {
  display: grid;
  grid-template-columns: repeat(3, 180px);
  gap: 36px 24px;
  padding: 0;
  min-height: min-content;
}

.oor-artist-track {
  display: flex;
  flex-direction: column;
  gap: 16px;
  cursor: pointer;
}

.oor-artist-track-cover {
  position: relative;
  width: 180px;
  height: 180px;
  aspect-ratio: 1 / 1;
  overflow: hidden;
}

.oor-artist-track-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.oor-artist-track-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.67);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.oor-artist-track:hover .oor-artist-track-overlay,
.oor-artist-track.playing .oor-artist-track-overlay {
  opacity: 1;
}

.oor-artist-track-progress {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 1;
}

.oor-artist-track-progress-bg {
  opacity: 0.3;
}

.oor-artist-track-progress-fill {
  transition: stroke-dashoffset 0.1s linear;
}

.oor-artist-track-play-icon {
  width: 68px;
  height: 68px;
  display: block;
  position: relative;
  z-index: 2;
}

.oor-artist-track.playing .oor-artist-track-overlay .oor-artist-track-play-icon {
  display: none;
}

.oor-artist-track-info {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: var(--font-ui);
  font-size: 12px;
  line-height: 130%;
  font-weight: 300;
  letter-spacing: -0.24px;
  color: #000;
}

.oor-artist-track-name {
  flex: 1;
}

.oor-artist-track-year {
  opacity: 0.6;
}

/* Player - positioned with offset from left column and right/bottom edges */
.oor-artist-player {
  position: fixed;
  bottom: 20px;
  left: 386px;
  right: 20px;
  height: 48px;
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(8.05px);
  -webkit-backdrop-filter: blur(8.05px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 24px 12px 12px;
  z-index: 200;
  border-top: none;
  border-image: none;
}

.oor-artist-player-left {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}

.oor-artist-player-controls {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 2px;
}

.oor-artist-player-btn {
  width: 24px;
  height: 24px;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.oor-artist-player-btn img {
  width: 100%;
  height: 100%;
  filter: brightness(0);
}

/* Скрытие pause-icon по умолчанию (показывается через JS при воспроизведении) */
.oor-artist-player-pause-icon {
  display: none;
}

.oor-artist-player-btn:hover {
  opacity: 0.7;
}

.oor-artist-player-track-name {
  font-family: var(--font-ui);
  font-size: 15px;
  line-height: normal;
  font-weight: 300;
  letter-spacing: 0.3px;
  color: #000;
  white-space: nowrap;
}

.oor-artist-player-center {
  flex: 1;
  padding: 0 24px;
}

.oor-artist-player-progress-bar {
  position: relative;
  width: 100%;
  height: 24px;
  padding: 11.5px 0;
  background: transparent;
  cursor: pointer;
  display: flex;
  align-items: center;
}

.oor-artist-player-progress-bar::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  height: 1px;
  background: #000;
  z-index: 0;
  pointer-events: none;
}

.oor-artist-player-progress-fill {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 1px;
  background: #000;
  width: 0%;
  transition: width 0.1s linear;
  z-index: 1;
}

.oor-artist-player-progress-handle {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 8px;
  height: 8px;
  background: #000;
  border-radius: 50%;
  cursor: grab;
  opacity: 1;
  transition: opacity 0.2s ease;
}

.oor-artist-player-progress-bar:hover .oor-artist-player-progress-handle {
  opacity: 1;
}

.oor-artist-player-progress-handle:active {
  cursor: grabbing;
  opacity: 1;
}

.oor-artist-player-right {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-shrink: 0;
}

.oor-artist-player-time {
  font-family: var(--font-ui);
  font-size: 15px;
  line-height: normal;
  font-weight: 300;
  letter-spacing: 0.3px;
  color: #000;
  white-space: nowrap;
}

.oor-artist-player-volume {
  display: flex;
  align-items: center;
  gap: 8px;
}

.oor-artist-player-volume-btn {
  width: 24px;
  height: 24px;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.oor-artist-player-volume-btn img {
  width: 100%;
  height: 100%;
}

.oor-artist-player-volume-bar-wrapper {
  position: relative;
}

.oor-artist-player-volume-bar {
  width: 78px;
  height: 24px;
  padding: 11.5px 0;
  background: transparent;
  position: relative;
  cursor: pointer;
  display: flex;
  align-items: center;
}

.oor-artist-player-volume-bar::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  height: 1px;
  background: #000;
  z-index: 0;
}

.oor-artist-player-volume-fill {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 1px;
  background: #000;
  width: 100%;
  z-index: 1;
}

.oor-artist-player-volume-handle {
  position: absolute;
  left: 100%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 8px;
  height: 8px;
  background: #000;
  border-radius: 50%;
  cursor: grab;
  opacity: 1;
  transition: opacity 0.2s ease;
  z-index: 2;
}

.oor-artist-player-volume-handle:active {
  cursor: grabbing;
  opacity: 1;
}

/* Принудительные стили для бургер-меню на странице студии - в конце файла для максимального приоритета */
body.oor-studio-page .oor-header .oor-burger-menu,
body.oor-studio-page .oor-header .oor-burger-menu *,
body.oor-studio-page .oor-header .oor-burger-menu .oor-burger-icon,
body.oor-studio-page .oor-header .oor-burger-menu .oor-burger-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
  color: #fff !important;
  fill: #fff !important;
  stroke: #fff !important;
}

/* ===== ARTIST PAGE MOBILE STYLES ===== */

/* Artist page - burger menu - только для мобильных */
@media (max-width: 768px) {
  body.oor-artist-page .oor-header .oor-burger-menu,
  body.oor-artist-page .oor-header .oor-burger-menu * {
    mix-blend-mode: normal !important;
    isolation: isolate !important;
  }

  body.oor-artist-page .oor-header .oor-burger-menu {
    background: transparent !important;
  }

  body.oor-artist-page .oor-header .oor-burger-menu .oor-burger-icon {
    color: #000 !important;
    fill: #000 !important;
    stroke: #000 !important;
    mix-blend-mode: normal !important;
    isolation: isolate !important;
  }

  body.oor-artist-page .oor-header .oor-burger-menu .oor-burger-icon,
  body.oor-artist-page .oor-header .oor-burger-menu .oor-burger-icon * {
    filter: brightness(0) !important;
    mix-blend-mode: normal !important;
    isolation: isolate !important;
    opacity: 1 !important;
  }

  body.oor-artist-page .oor-header .oor-burger-menu .oor-burger-icon img {
    filter: brightness(0) !important;
    mix-blend-mode: normal !important;
    isolation: isolate !important;
    opacity: 1 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
  }
}

/* Artist Page Mobile */
@media (max-width: 768px) {
  /* Убираем ограничения body на мобильном, как на других страницах */
  body.oor-artist-page {
    height: auto !important;
    overflow: visible !important;
    overflow-x: hidden !important;
  }

  /* Блокируем скролл когда меню открыто на странице артиста */
  body.oor-artist-page:has(.oor-mobile-menu.active) {
    overflow: hidden !important;
    position: fixed !important;
    width: 100% !important;
    height: 100% !important;
  }

  /* Header - не фиксированный на мобильном, белый фон */
  body.oor-artist-page .oor-header {
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    background: #fff !important;
    mix-blend-mode: normal !important;
    isolation: auto !important;
    z-index: auto !important;
  }

  body.oor-artist-page .oor-logo img {
    mix-blend-mode: normal !important;
    filter: brightness(0) !important;
  }

  body.oor-artist-page .oor-nav-link {
    color: #000 !important;
    mix-blend-mode: normal !important;
  }

  body.oor-artist-page .oor-nav-link--active {
    color: #000 !important;
    mix-blend-mode: normal !important;
  }

  body.oor-artist-page .oor-nav-item > span {
    color: #000 !important;
    mix-blend-mode: normal !important;
  }

  body.oor-artist-page .oor-btn-small {
    mix-blend-mode: normal !important;
  }

  body.oor-artist-page .oor-btn-small-text {
    color: #000 !important;
    mix-blend-mode: normal !important;
  }

  body.oor-artist-page .oor-btn-small-icon {
    mix-blend-mode: normal !important;
    opacity: 1 !important;
  }

  body.oor-artist-page .oor-btn-small-icon img {
    filter: brightness(0) !important;
    mix-blend-mode: normal !important;
    opacity: 1 !important;
  }

  /* Breadcrumbs */
  .oor-artist-breadcrumbs {
    position: static;
    top: auto;
    left: auto;
    padding: 12px 12px 0 12px;
    margin-top: 16px;
    margin-bottom: 16px;
  }

  /* Main Content */
  .oor-artist-main {
    display: flex;
    flex-direction: column;
    gap: 32px;
    height: auto;
    margin-top: 0;
    padding: 0;
    position: static !important;
    z-index: 1 !important;
  }

  /* Artist Image Container - сверху, 9:16, позиционирование bottom */
  .oor-artist-image-container {
    width: 100%;
    height: auto;
    flex: none;
    order: 1;
    aspect-ratio: 9 / 16;
    overflow: hidden;
    position: static;
  }

  .oor-artist-image-container picture,
  .oor-artist-image-container > img {
    position: static;
    top: auto;
    left: auto;
    right: auto;
    bottom: 0;
    width: 100%;
    height: 100%;
    display: block;
  }

  .oor-artist-image-main {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center bottom;
  }

  /* Description Container - без градиента, показывать полностью */
  .oor-artist-description-container {
    width: 100%;
    flex: none;
    order: 2;
    height: auto;
    padding: 40px 12px;
    background: #fff;
    gap: 24px;
    overflow-y: visible;
    position: static;
  }

  .oor-artist-title {
    font-size: 72px;
    letter-spacing: -7.2px;
    line-height: 100%;
    margin: 0;
  }

  .oor-artist-description-wrapper {
    display: block;
  }

  .oor-artist-description-content {
    max-height: none !important;
    overflow: visible !important;
  }

  .oor-artist-description-toggle {
    display: none;
  }

  /* На мобильной кнопки нет — показываем полное описание сразу */
  .oor-artist-description-content .oor-artist-description-expanded {
    display: block !important;
  }

  /* Social Links - вертикально, только текст */
  .oor-artist-social-links {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: flex-start;
  }

  .oor-artist-social-link {
    font-size: 14px;
    line-height: 140%;
    letter-spacing: -0.28px;
  }

  /* Tracks Container - 2 колонки, без горизонтальной прокрутки */
  .oor-artist-tracks-container {
    width: 100%;
    flex: none;
    order: 3;
    height: auto;
    overflow-y: visible;
    overflow-x: hidden;
    padding: 0 12px 100px 12px;
  }

  .oor-artist-tracks-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px 12px;
    padding: 0;
  }

  .oor-artist-track-cover {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
  }

  .oor-artist-track-info {
    font-size: 12px;
    line-height: 130%;
    letter-spacing: -0.24px;
  }

  /* Player - компактная версия */
  .oor-artist-player {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: 64px;
    padding: 12px;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(8.05px);
    -webkit-backdrop-filter: blur(8.05px);
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    z-index: 999 !important;
  }

  .oor-artist-player-left {
    gap: 8px;
    flex: 1;
    min-width: 0;
  }

  .oor-artist-player-controls {
    gap: 4px;
    flex-shrink: 0;
  }

  .oor-artist-player-btn {
    width: 24px;
    height: 24px;
  }

  .oor-artist-player-track-name {
    font-size: 14px;
    letter-spacing: 0.28px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
    min-width: 0;
  }

  .oor-artist-player-center {
    display: none;
  }

  .oor-artist-player-right {
    gap: 12px;
    flex-shrink: 0;
  }

  .oor-artist-player-time {
    font-size: 12px;
    letter-spacing: 0.24px;
  }

  .oor-artist-player-volume {
    gap: 4px;
  }

  .oor-artist-player-volume-btn {
    width: 20px;
    height: 20px;
  }

  .oor-artist-player-volume-bar-wrapper {
    display: none;
  }
}

/* ===== EVENTS PAGE MOBILE STYLES ===== */

/* Events page - burger menu */
body.oor-events-page .oor-header .oor-burger-menu {
  mix-blend-mode: normal !important;
  isolation: isolate !important;
}

body.oor-events-page .oor-header .oor-burger-menu .oor-burger-icon {
  color: #fff !important;
  fill: #fff !important;
  stroke: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-events-page .oor-header .oor-burger-menu .oor-burger-icon,
body.oor-events-page .oor-header .oor-burger-menu .oor-burger-icon * {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

body.oor-events-page .oor-header .oor-burger-menu .oor-burger-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
}

/* Events Hero Mobile */
@media (max-width: 768px) {
  .oor-events-hero {
    padding-top: 0;
    min-height: auto;
    padding-bottom: 0;
  }

  .oor-events-hero-title {
    font-size: 56px;
    letter-spacing: -5.6px;
    position: static;
    padding: 76px 0 0 12px;
    width: auto;
    margin: 0;
  }

  .oor-events-hero-index {
    display: none;
  }

  .oor-events-hero-gallery {
    position: static;
    transform: none;
    top: auto;
    height: auto;
    margin-top: 0;
    margin-bottom: 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(4, 1fr);
    gap: 0;
    padding: 0;
  }

  .oor-events-hero-gallery-row {
    display: contents;
  }

  .oor-events-hero-gallery-row:last-child {
    top: auto;
    margin-top: 0;
  }

  .oor-events-hero-gallery-item {
    aspect-ratio: 1 / 1;
    width: 100%;
    height: auto;
  }

  .oor-events-hero-gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
  }

  /* Скрываем лишние картинки (оставляем только 16 из 18) */
  /* Скрываем последние 2 элемента из второго ряда (элементы 8 и 9 во втором ряду) */
  .oor-events-hero-gallery-row:last-child .oor-events-hero-gallery-item:nth-child(n+8) {
    display: none;
  }

  .oor-events-hero-overlay {
    top: calc(76px + 56px);
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
  }

  .oor-events-hero-plus-bottom-left,
  .oor-events-hero-plus-bottom-right {
    display: none;
  }
}

/* Events Listing Section Mobile */
@media (max-width: 768px) {
  .oor-events-listing-section {
    padding: 0;
    min-height: auto;
    background: #fff;
  }

  .oor-events-listing-section .oor-container {
    padding: 0;
    overflow: visible;
  }

  .oor-events-listing-header {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 32px 12px;
    margin-bottom: 0;
  }

  .oor-events-listing-title-wrapper {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
  }

  .oor-events-listing-title {
    font-size: 30px;
    letter-spacing: -1.2px;
    width: 100%;
    margin: 0;
  }

  .oor-events-listing-description {
    font-size: 14px;
    letter-spacing: -0.28px;
    width: 100%;
    margin: 0;
  }

  .oor-events-listing-index-wrapper {
    display: none;
  }

  .oor-events-listing-grid {
    display: flex;
    flex-direction: row;
    gap: 12px;
    padding: 0 12px 32px 12px;
    overflow-x: auto !important;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    cursor: default;
    touch-action: pan-x !important;
    overscroll-behavior-x: contain;
    width: 100%;
    min-width: 100%;
  }

  .oor-events-listing-grid::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
  }

  .oor-events-listing-card {
    width: 248px;
    flex-shrink: 0;
  }

  .oor-events-listing-card:nth-child(2),
  .oor-events-listing-card:nth-child(4) {
    width: 248px;
  }

  .oor-events-listing-card-image {
    height: 297px;
  }

  .oor-events-listing-card-footer {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    margin-top: 12px;
  }

  .oor-events-listing-card-title {
    font-size: 16px;
    letter-spacing: -0.64px;
    text-align: center;
    width: 100%;
  }

  .oor-events-listing-card-button {
    width: 100%;
    justify-content: center;
  }
}

/* ========================================
   MERCH PAGE - Shop Page Styles
   ======================================== */

/* Merch Page Body */
body.oor-merch-page {
  background: #fff;
}

/* Параграфы в магазине: размер шрифта 12px (мерч, товар, корзина, оформление) */
body.oor-merch-page p,
body.oor-product-page p,
body.oor-cart-page p,
body.oor-checkout-page p {
  font-size: 12px;
}

/* Артикул (SKU) в магазине: 12px и opacity 60% */
body.oor-product-page .product_meta,
body.oor-product-page .product_meta .sku_wrapper,
body.oor-product-page .product_meta .sku {
  font-size: 12px;
  opacity: 0.6;
}

/* Заголовки в магазине: font-weight 300 */
body.oor-merch-page h1,
body.oor-merch-page h2,
body.oor-merch-page h3,
body.oor-merch-page h4,
body.oor-merch-page h5,
body.oor-merch-page h6,
body.oor-product-page h1,
body.oor-product-page h2,
body.oor-product-page h3,
body.oor-product-page h4,
body.oor-product-page h5,
body.oor-product-page h6,
body.oor-cart-page h1,
body.oor-cart-page h2,
body.oor-cart-page h3,
body.oor-cart-page h4,
body.oor-cart-page h5,
body.oor-cart-page h6,
body.oor-checkout-page h1,
body.oor-checkout-page h2,
body.oor-checkout-page h3,
body.oor-checkout-page h4,
body.oor-checkout-page h5,
body.oor-checkout-page h6,
body.oor-merch-page .oor-merch-title,
body.oor-product-page .summary.entry-summary .product_title,
body.oor-cart-page .oor-cart-title,
body.oor-checkout-page .oor-checkout-title {
  font-weight: 300;
}

/* Merch Cart in Header */
.oor-merch-cart {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-right: 16px;
}

.oor-merch-cart-info {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-pragmatica);
  font-size: 12px;
  line-height: normal;
  letter-spacing: -0.24px;
  text-transform: uppercase;
  color: var(--color-text);
  mix-blend-mode: difference;
}

.oor-merch-cart-price {
  color: var(--color-text);
}

.oor-merch-cart-count {
  opacity: 0.6;
}

.oor-merch-cart-link {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  color: inherit;
}

.oor-merch-cart-link:hover {
  opacity: 0.7;
}

.oor-merch-cart-icon {
  width: 16px;
  height: 16px;
  padding: 0;
  background: transparent;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.oor-merch-cart-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  filter: brightness(0) invert(1);
  mix-blend-mode: difference;
}

/* Страницы магазина (мерч, товар, корзина, оформление): хедер чёрный, белый текст */
body.oor-merch-page .oor-header,
body.oor-product-page .oor-header,
body.oor-cart-page .oor-header,
body.oor-checkout-page .oor-header {
  background: #000 !important;
  mix-blend-mode: normal !important;
  isolation: isolate !important;
}

body.oor-merch-page .oor-header .oor-logo img,
body.oor-product-page .oor-header .oor-logo img,
body.oor-cart-page .oor-header .oor-logo img,
body.oor-checkout-page .oor-header .oor-logo img {
  mix-blend-mode: normal !important;
  filter: brightness(0) invert(1) !important;
  opacity: 1 !important;
}

body.oor-merch-page .oor-header .oor-merch-cart-info,
body.oor-product-page .oor-header .oor-merch-cart-info,
body.oor-cart-page .oor-header .oor-merch-cart-info,
body.oor-checkout-page .oor-header .oor-merch-cart-info {
  mix-blend-mode: normal !important;
  color: #fff !important;
}

body.oor-merch-page .oor-header .oor-merch-cart-price,
body.oor-product-page .oor-header .oor-merch-cart-price,
body.oor-cart-page .oor-header .oor-merch-cart-price,
body.oor-checkout-page .oor-header .oor-merch-cart-price {
  color: #fff !important;
}

body.oor-merch-page .oor-header .oor-merch-cart-count,
body.oor-product-page .oor-header .oor-merch-cart-count,
body.oor-cart-page .oor-header .oor-merch-cart-count,
body.oor-checkout-page .oor-header .oor-merch-cart-count {
  color: #fff !important;
  opacity: 0.8;
}

body.oor-merch-page .oor-header .oor-merch-cart-icon img,
body.oor-product-page .oor-header .oor-merch-cart-icon img,
body.oor-cart-page .oor-header .oor-merch-cart-icon img,
body.oor-checkout-page .oor-header .oor-merch-cart-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

body.oor-merch-page .oor-header .oor-header-right .oor-merch-cart,
body.oor-merch-page .oor-header .oor-header-right .oor-merch-cart *,
body.oor-product-page .oor-header .oor-header-right .oor-merch-cart,
body.oor-product-page .oor-header .oor-header-right .oor-merch-cart *,
body.oor-cart-page .oor-header .oor-header-right .oor-merch-cart,
body.oor-cart-page .oor-header .oor-header-right .oor-merch-cart *,
body.oor-checkout-page .oor-header .oor-header-right .oor-merch-cart,
body.oor-checkout-page .oor-header .oor-header-right .oor-merch-cart * {
  mix-blend-mode: normal !important;
}

body.oor-merch-page .oor-header .oor-nav-link,
body.oor-merch-page .oor-header .oor-nav-item > span,
body.oor-product-page .oor-header .oor-nav-link,
body.oor-product-page .oor-header .oor-nav-item > span,
body.oor-cart-page .oor-header .oor-nav-link,
body.oor-cart-page .oor-header .oor-nav-item > span,
body.oor-checkout-page .oor-header .oor-nav-link,
body.oor-checkout-page .oor-header .oor-nav-item > span {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-merch-page .oor-header > .oor-header-right > .oor-nav .rolling-button,
body.oor-merch-page .oor-header > .oor-header-right > .oor-nav .rolling-button .tn-atom,
body.oor-merch-page .oor-header > .oor-header-right > .oor-nav .tn-atom,
body.oor-product-page .oor-header > .oor-header-right > .oor-nav .rolling-button,
body.oor-product-page .oor-header > .oor-header-right > .oor-nav .rolling-button .tn-atom,
body.oor-product-page .oor-header > .oor-header-right > .oor-nav .tn-atom,
body.oor-cart-page .oor-header > .oor-header-right > .oor-nav .rolling-button,
body.oor-cart-page .oor-header > .oor-header-right > .oor-nav .rolling-button .tn-atom,
body.oor-cart-page .oor-header > .oor-header-right > .oor-nav .tn-atom,
body.oor-checkout-page .oor-header > .oor-header-right > .oor-nav .rolling-button,
body.oor-checkout-page .oor-header > .oor-header-right > .oor-nav .rolling-button .tn-atom,
body.oor-checkout-page .oor-header > .oor-header-right > .oor-nav .tn-atom {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-merch-page .oor-header .oor-header-right,
body.oor-merch-page .oor-header .oor-header-right .oor-nav,
body.oor-merch-page .oor-header .oor-header-right .oor-nav *,
body.oor-merch-page .oor-header .oor-header-right .oor-burger-menu,
body.oor-merch-page .oor-header .oor-header-right .oor-burger-menu *,
body.oor-product-page .oor-header .oor-header-right,
body.oor-product-page .oor-header .oor-header-right .oor-nav,
body.oor-product-page .oor-header .oor-header-right .oor-nav *,
body.oor-product-page .oor-header .oor-header-right .oor-burger-menu,
body.oor-product-page .oor-header .oor-header-right .oor-burger-menu *,
body.oor-cart-page .oor-header .oor-header-right,
body.oor-cart-page .oor-header .oor-header-right .oor-nav,
body.oor-cart-page .oor-header .oor-header-right .oor-nav *,
body.oor-cart-page .oor-header .oor-header-right .oor-burger-menu,
body.oor-cart-page .oor-header .oor-header-right .oor-burger-menu *,
body.oor-checkout-page .oor-header .oor-header-right,
body.oor-checkout-page .oor-header .oor-header-right .oor-nav,
body.oor-checkout-page .oor-header .oor-header-right .oor-nav *,
body.oor-checkout-page .oor-header .oor-header-right .oor-burger-menu,
body.oor-checkout-page .oor-header .oor-header-right .oor-burger-menu * {
  mix-blend-mode: normal !important;
}

body.oor-merch-page .oor-header .oor-btn-small-text,
body.oor-product-page .oor-header .oor-btn-small-text,
body.oor-cart-page .oor-header .oor-btn-small-text,
body.oor-checkout-page .oor-header .oor-btn-small-text {
  color: #fff !important;
}

body.oor-merch-page .oor-header .oor-btn-small-icon img,
body.oor-product-page .oor-header .oor-btn-small-icon img,
body.oor-cart-page .oor-header .oor-btn-small-icon img,
body.oor-checkout-page .oor-header .oor-btn-small-icon img {
  filter: brightness(0) invert(1) !important;
}

body.oor-merch-page .oor-header .oor-burger-menu .oor-burger-icon,
body.oor-merch-page .oor-header .oor-burger-menu .oor-burger-icon *,
body.oor-product-page .oor-header .oor-burger-menu .oor-burger-icon,
body.oor-product-page .oor-header .oor-burger-menu .oor-burger-icon *,
body.oor-cart-page .oor-header .oor-burger-menu .oor-burger-icon,
body.oor-cart-page .oor-header .oor-burger-menu .oor-burger-icon *,
body.oor-checkout-page .oor-header .oor-burger-menu .oor-burger-icon,
body.oor-checkout-page .oor-header .oor-burger-menu .oor-burger-icon * {
  filter: brightness(0) invert(1) !important;
}

/* Все страницы магазина: один класс для чёрного хедера (каталог, товар, корзина, оформление) */
body.oor-shop-header .oor-header {
  background: #000 !important;
  mix-blend-mode: normal !important;
  isolation: isolate !important;
}
body.oor-shop-header .oor-header .oor-logo img {
  mix-blend-mode: normal !important;
  filter: brightness(0) invert(1) !important;
  opacity: 1 !important;
}
body.oor-shop-header .oor-header .oor-merch-cart-info,
body.oor-shop-header .oor-header .oor-merch-cart-price,
body.oor-shop-header .oor-header .oor-merch-cart-count {
  mix-blend-mode: normal !important;
  color: #fff !important;
}
body.oor-shop-header .oor-header .oor-merch-cart-count { opacity: 0.8; }
body.oor-shop-header .oor-header .oor-merch-cart-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}
body.oor-shop-header .oor-header .oor-header-right .oor-merch-cart,
body.oor-shop-header .oor-header .oor-header-right .oor-merch-cart * {
  mix-blend-mode: normal !important;
}
body.oor-shop-header .oor-header .oor-nav-link,
body.oor-shop-header .oor-header .oor-nav-item > span {
  color: #fff !important;
  mix-blend-mode: normal !important;
}
body.oor-shop-header .oor-header > .oor-header-right > .oor-nav .rolling-button,
body.oor-shop-header .oor-header > .oor-header-right > .oor-nav .rolling-button .tn-atom,
body.oor-shop-header .oor-header > .oor-header-right > .oor-nav .tn-atom {
  color: #fff !important;
  mix-blend-mode: normal !important;
}
body.oor-shop-header .oor-header .oor-header-right,
body.oor-shop-header .oor-header .oor-header-right .oor-nav,
body.oor-shop-header .oor-header .oor-header-right .oor-nav *,
body.oor-shop-header .oor-header .oor-header-right .oor-burger-menu,
body.oor-shop-header .oor-header .oor-header-right .oor-burger-menu * {
  mix-blend-mode: normal !important;
}
body.oor-shop-header .oor-header .oor-btn-small-text { color: #fff !important; }
body.oor-shop-header .oor-header .oor-btn-small-icon img {
  filter: brightness(0) invert(1) !important;
}
body.oor-shop-header .oor-header .oor-burger-menu .oor-burger-icon,
body.oor-shop-header .oor-header .oor-burger-menu .oor-burger-icon * {
  filter: brightness(0) invert(1) !important;
}

/* Merch Hero Section */
.oor-merch-hero {
  padding-top: 120px;
  padding-bottom: 0;
  position: relative;
}

.oor-merch-hero-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--color-black);
  position: relative;
}

.oor-merch-hero-title {
  font-family: var(--font-ui);
  font-size: 112px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -10.08px;
  text-transform: uppercase;
  margin: 0;
  color: var(--color-text);
  mix-blend-mode: luminosity;
  position: relative;
}

.oor-merch-hero-copyright {
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: normal;
  letter-spacing: -0.32px;
  text-align: center;
  color: var(--color-text);
  margin-top: 0;
}

/* Merch Filters Section */
.oor-merch-filters-section {
  padding: 40px 0;
}

.oor-merch-filters {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.oor-merch-filter-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px;
  background: transparent;
  border: 1px solid var(--color-black);
  color: var(--color-text);
  font-family: var(--font-pragmatica);
  font-size: 12px;
  line-height: normal;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;
}

.oor-merch-filter-btn:hover {
  opacity: 0.7;
}

.oor-merch-filter-btn--active {
  background: var(--color-black);
  color: var(--color-white);
  border-color: var(--color-black);
}

/* Merch Products Grid Section */
.oor-merch-products-section {
  padding: 0 0 120px 0;
}

.oor-merch-products-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 8px;
  margin-top: 0;
}

.oor-merch-product {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.oor-merch-product-image-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

.oor-merch-product-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #f8f7f8;
  z-index: 1;
}

.oor-merch-product-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  object-position: top center;
  z-index: 2;
  pointer-events: none;
  display: block;
}

.oor-merch-product-link {
  display: block;
  width: 100%;
  aspect-ratio: 3 / 4;
  height: auto;
  text-decoration: none;
  color: inherit;
  flex-shrink: 0;
}

.oor-merch-product-price {
  padding: 12px 0 0 0;
  font-family: var(--font-ui);
  font-size: 12px;
  line-height: 20px;
  font-weight: 300;
  letter-spacing: 0;
  color: var(--color-text);
  text-align: right;
}

.oor-merch-product-price .woocommerce-Price-amount {
  display: inline;
}

.oor-merch-product-price .woocommerce-Price-currencySymbol {
  display: inline;
}

/* Mobile Styles for Merch / Shop Pages */
@media (max-width: 768px) {
  /* Merch Cart in Header - отступ от бургера */
  body.oor-merch-page .oor-header .oor-header-right,
  body.oor-product-page .oor-header .oor-header-right,
  body.oor-cart-page .oor-header .oor-header-right,
  body.oor-checkout-page .oor-header .oor-header-right {
    gap: 0;
    justify-content: flex-end;
  }
  
  body.oor-merch-page .oor-header .oor-merch-cart,
  body.oor-product-page .oor-header .oor-merch-cart,
  body.oor-cart-page .oor-header .oor-merch-cart,
  body.oor-checkout-page .oor-header .oor-merch-cart {
    margin-right: 8px;
    margin-left: auto;
  }

  body.oor-merch-page .oor-header .oor-merch-cart-info,
  body.oor-product-page .oor-header .oor-merch-cart-info,
  body.oor-cart-page .oor-header .oor-merch-cart-info,
  body.oor-checkout-page .oor-header .oor-merch-cart-info {
    mix-blend-mode: normal !important;
    color: #fff !important;
  }

  body.oor-merch-page .oor-header .oor-merch-cart-icon img,
  body.oor-product-page .oor-header .oor-merch-cart-icon img,
  body.oor-cart-page .oor-header .oor-merch-cart-icon img,
  body.oor-checkout-page .oor-header .oor-merch-cart-icon img,
  body.oor-shop-header .oor-header .oor-merch-cart-icon img {
    filter: brightness(0) invert(1) !important;
    mix-blend-mode: normal !important;
    opacity: 1 !important;
  }

  body.oor-shop-header .oor-header .oor-header-right {
    gap: 0;
    justify-content: flex-end;
  }
  body.oor-shop-header .oor-header .oor-merch-cart {
    margin-right: 8px;
    margin-left: auto;
  }
  body.oor-shop-header .oor-header .oor-merch-cart-info {
    mix-blend-mode: normal !important;
    color: #fff !important;
  }

  .oor-merch-cart-info {
    font-size: 10px;
    gap: 4px;
  }

  .oor-merch-cart-icon {
    width: 14px;
    height: 14px;
  }

  /* Merch Hero Section */
  .oor-merch-hero {
    padding-top: 76px;
    padding-bottom: 0;
  }

  .oor-merch-hero-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    padding: 0 16px 24px 16px;
  }

  .oor-merch-hero-title {
    font-size: 72px;
    letter-spacing: -7.2px;
  }

  .oor-merch-hero-copyright {
    font-size: 14px;
    letter-spacing: -0.28px;
  }

  /* Merch Filters Section */
  .oor-merch-filters-section {
    padding: 24px 0;
  }

  .oor-merch-filters {
    padding: 0 16px;
    gap: 12px;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    -webkit-overflow-scrolling: touch;
  }

  .oor-merch-filters::-webkit-scrollbar {
    display: none;
  }

  .oor-merch-filter-btn {
    flex-shrink: 0;
    padding: 10px 16px;
    font-size: 11px;
  }

  /* Merch Products Grid Section */
  .oor-merch-products-section {
    padding: 0 0 100px 0;
  }

  .oor-merch-products-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    padding: 0 16px;
  }

  .oor-merch-product {
    height: auto;
    aspect-ratio: auto;
  }

  .oor-merch-product-link {
    height: auto;
    aspect-ratio: 1 / 1;
  }

  .oor-merch-product-price {
    padding: 8px 0 0 0;
    font-size: 11px;
  }
}

/* ========================================
   PRODUCT PAGE - Single Product Page Styles
   ======================================== */

/* Fallback: если на body нет класса oor-product-page (кэш/сервер), вёрстка всё равно применяется по классу секции */
.oor-product-section.oor-product-page-layout .oor-container {
  display: block;
  padding-top: 40px;
  padding-bottom: 40px;
  padding-left: var(--container-x);
  padding-right: var(--container-x);
  box-sizing: border-box;
}
.oor-product-section.oor-product-page-layout .oor-container > .product {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 78px;
  width: 100%;
  min-height: 0;
  position: relative;
}
.oor-product-section.oor-product-page-layout .oor-container > .product .summary.entry-summary {
  grid-column: 2;
  grid-row: 1;
  width: 100%;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.oor-product-section.oor-product-page-layout .oor-container > .product .woocommerce-product-gallery {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: calc((100% - 78px) / 2);
  min-height: 0;
  display: flex;
  flex-direction: column;
  opacity: 1 !important;
}
.oor-product-section.oor-product-page-layout .oor-container > .product .woocommerce-product-gallery__wrapper {
  width: 100%;
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
}
.oor-product-section.oor-product-page-layout .oor-container > .product .woocommerce-product-gallery__wrapper::-webkit-scrollbar {
  display: none;
}
@media (max-width: 768px) {
  .oor-product-section.oor-product-page-layout .oor-container {
    padding: 0;
  }
  .oor-product-section.oor-product-page-layout .oor-container > .product {
    grid-template-columns: 1fr;
    grid-template-rows: minmax(200px, min(55vh, 400px)) auto;
    gap: 40px;
  }
  .oor-product-section.oor-product-page-layout .oor-container > .product .woocommerce-product-gallery {
    top: 0;
    left: 0;
    width: 100%;
    height: max(200px, min(55vh, 400px));
    min-height: 200px;
    max-height: 400px;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    opacity: 1 !important;
    padding: 0 24px;
    box-sizing: border-box;
  }
  .oor-product-section.oor-product-page-layout .oor-container > .product .woocommerce-product-gallery__wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    gap: 24px;
    padding: 0;
    margin: 0;
    min-height: 200px;
    align-items: flex-start;
  }
  .oor-product-section.oor-product-page-layout .oor-container > .product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image {
    flex: 0 0 auto;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    height: max(200px, min(55vh, 400px));
    min-height: 200px;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    box-sizing: border-box;
    display: block !important;
    overflow: hidden;
  }
  .oor-product-section.oor-product-page-layout .oor-container > .product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
  }
  .oor-product-section.oor-product-page-layout .oor-container > .product .summary.entry-summary {
    grid-row: 2;
    grid-column: 1;
    max-width: 100%;
    padding: 0 var(--container-x);
  }
}

/* Product Page Body: высота страницы по контенту (summary + отступы), не фиксированный 100vh */
body.oor-product-page {
  background: #fff;
  min-height: 100vh;
  overflow-x: hidden;
}

/* Контент страницы товара ниже хедера по слоям (чтобы меню/контент не перекрывали хедер) */
body.oor-product-page #main-content,
body.oor-product-page .oor-product-section {
  position: relative;
  z-index: 0;
}

/* Хедер страницы товара — как на мерче (общие стили выше: чёрный фон, белый текст) */
body.oor-product-page .oor-header {
  padding: var(--spacing-md) var(--container-x);
  background: #000 !important;
  mix-blend-mode: normal !important;
  isolation: isolate !important;
}

body.oor-product-page .oor-header .oor-logo img {
  mix-blend-mode: normal !important;
  filter: brightness(0) invert(1) !important;
  opacity: 1 !important;
}

body.oor-product-page .oor-nav-link,
body.oor-product-page .oor-nav-item > span {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-product-page .oor-header .oor-nav-link {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-product-page .oor-header .oor-nav-link--active {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-product-page .oor-header .oor-nav-item > span {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-product-page .oor-header .oor-nav-item .tn-atom {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-product-page .oor-header > a,
body.oor-product-page .oor-header > .oor-header-right > .oor-nav .rolling-button,
body.oor-product-page .oor-header > .oor-header-right > .oor-nav .rolling-button .tn-atom,
body.oor-product-page .oor-header > .oor-header-right > .oor-nav .tn-atom {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

/* Жесткое отключение любых режимов наложения в header на странице продукта */
body.oor-product-page .oor-header .oor-logo,
body.oor-product-page .oor-header .oor-header-right,
body.oor-product-page .oor-header .oor-header-right .oor-nav,
body.oor-product-page .oor-header .oor-header-right .oor-nav *,
body.oor-product-page .oor-header .oor-header-right .oor-merch-cart,
body.oor-product-page .oor-header .oor-header-right .oor-merch-cart *,
body.oor-product-page .oor-header .oor-header-right .oor-burger-menu,
body.oor-product-page .oor-header .oor-header-right .oor-burger-menu * {
  mix-blend-mode: normal !important;
}

@media (min-width: 1025px) {
  body.oor-product-page .oor-header .oor-logo,
  body.oor-product-page .oor-header .oor-header-right,
  body.oor-product-page .oor-header .oor-header-right .oor-nav,
  body.oor-product-page .oor-header .oor-header-right .oor-nav *,
  body.oor-product-page .oor-header .oor-header-right .oor-merch-cart,
  body.oor-product-page .oor-header .oor-header-right .oor-merch-cart * {
    color: #fff !important;
  }
}

body.oor-product-page .oor-header .oor-merch-cart-info {
  mix-blend-mode: normal !important;
  color: #fff !important;
}

body.oor-product-page .oor-header .oor-merch-cart-price {
  color: #fff !important;
}

body.oor-product-page .oor-header .oor-merch-cart-count {
  color: #fff !important;
  opacity: 0.8;
}

body.oor-product-page .oor-header .oor-merch-cart-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

body.oor-product-page .oor-header .oor-burger-menu {
  mix-blend-mode: normal !important;
  isolation: isolate !important;
}

body.oor-product-page .oor-header .oor-burger-menu .oor-burger-icon {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-product-page .oor-header .oor-burger-menu .oor-burger-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

/* Product Section: высота определяется summary + отступы сверху и снизу */
body.oor-product-page .oor-product-section {
  padding: 0;
  min-height: 0;
  display: block;
  margin-top: 0;
  position: relative;
}

body.oor-product-page .oor-product-section .oor-container {
  display: block;
  padding-top: 40px;
  padding-bottom: 40px;
  padding-left: var(--container-x);
  padding-right: var(--container-x);
  box-sizing: border-box;
}

/* WooCommerce: на десктопе высота задаётся колонкой summary; слева — галерея с прокруткой, скроллбар скрыт */
body.oor-product-page .oor-product-section .oor-container > .product {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 78px;
  width: 100%;
  min-height: 0;
  position: relative;
}
/* Summary задаёт высоту строки (единственный элемент в потоке сетки по высоте) */
body.oor-product-page .oor-product-section .oor-container > .product .summary.entry-summary {
  grid-column: 2;
  grid-row: 1;
  width: 100%;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
/* Галерея: вынесена из потока, высота = высоте summary, внутри — скролл изображений, скроллбар скрыт */
/* opacity: 1 — WooCommerce выводит галерею с style="opacity: 0" и включает через JS; если скрипт не сработал, картинки не видны */
body.oor-product-page .oor-product-section .oor-container > .product .woocommerce-product-gallery {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: calc((100% - 78px) / 2); /* ширина первой колонки при gap 78px */
  min-height: 0;
  display: flex;
  flex-direction: column;
  opacity: 1 !important;
}
body.oor-product-page .oor-product-section .oor-container > .product .woocommerce-product-gallery__wrapper {
  width: 100%;
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE/Edge */
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
}
body.oor-product-page .oor-product-section .oor-container > .product .woocommerce-product-gallery__wrapper::-webkit-scrollbar {
  display: none; /* Chrome, Safari */
}
/* Первое изображение в галерее не показываем только на десктопе — на мобильном показываем всю галерею */
@media (min-width: 769px) {
  body.oor-product-page .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image:first-child {
    display: none !important;
  }
}
/* Галерея: одно изображение под другим (не плитка), перебиваем WooCommerce columns */
body.oor-product-page .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image,
body.oor-product-page .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image:nth-child(n+2) {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  flex: 0 0 auto;
}
body.oor-product-page .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image a {
  pointer-events: none;
  cursor: default;
  display: block;
  width: 100%;
}
body.oor-product-page .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image img,
body.oor-product-page .woocommerce-product-gallery__wrapper img {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
}

/* Бейдж «Sale» / onsale: без фона, 10px, uppercase, не жирный, внутри изображения с отступом 4px */
.woocommerce .onsale,
.woocommerce span.onsale {
  background: none !important;
  background-color: transparent !important;
  color: inherit;
  font-size: 10px !important;
  font-weight: 300 !important;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  padding: 0;
  margin: 0;
  border: none;
  border-radius: 0;
  min-height: 0;
  line-height: 1.2;
}
/* onsale поверх галереи (слева), отступ 4px от краёв */
body.oor-product-page .oor-product-section .oor-container > .product > .onsale {
  position: absolute;
  top: 4px;
  left: 4px;
  z-index: 1;
}
/* В цикле (похожие товары и т.п.): onsale внутри карточки изображения, отступ 4px */
.woocommerce ul.products li a,
.woocommerce .related.products li .woocommerce-loop-product__link {
  position: relative;
}
.woocommerce ul.products li .onsale,
.woocommerce .related.products li .onsale {
  position: absolute;
  top: 4px;
  left: 4px;
  z-index: 1;
}

/* Описание товара: перенос строк, не в одну строку */
body.oor-product-page .woocommerce-product-details__short-description,
body.oor-product-page .woocommerce-Tabs-panel--description {
  display: block !important;
  width: 100%;
  max-width: 100%;
}
body.oor-product-page .woocommerce-product-details__short-description p,
body.oor-product-page .woocommerce-Tabs-panel--description p,
body.oor-product-page .summary.entry-summary .woocommerce-product-details__short-description p,
body.oor-product-page .summary.entry-summary p {
  white-space: normal !important;
  word-wrap: break-word;
  word-break: break-word;
  overflow-wrap: break-word;
  max-width: 100%;
  line-height: 1.5;
  display: block;
  font-size: 12px;
}
body.oor-product-page .woocommerce-product-details__short-description p,
body.oor-product-page .woocommerce-Tabs-panel--description p {
  margin: 0 0 1em;
}
body.oor-product-page .woocommerce-product-details__short-description p:last-child,
body.oor-product-page .woocommerce-Tabs-panel--description p:last-child {
  margin-bottom: 0;
}

/* WooCommerce: заголовок и типографика как в product.html */
body.oor-product-page .summary.entry-summary .product_title {
  font-family: var(--font-ui);
  font-size: 32px;
  line-height: 116%;
  font-weight: 300;
  letter-spacing: -1.28px;
  text-transform: uppercase;
  margin: 0 0 0.5em;
  color: #000;
}
body.oor-product-page .summary.entry-summary .price {
  font-family: var(--font-pragmatica);
  font-size: 24px;
  color: #000;
  width: 100%;
  max-width: 100%;
  display: block;
}

/* Табы WooCommerce на странице товара не показываем (описание выводится в summary) */
body.oor-product-page .woocommerce-tabs,
body.oor-product-page .wc-tabs {
  display: none !important;
}

/* У блока описания в summary не показываем заголовок (убирается фильтром) */
body.oor-product-page .woocommerce-Tabs-panel--description > h2:first-child {
  display: none !important;
}

/* Похожие товары в summary: отступ от заголовка 24px */
body.oor-product-page .summary.entry-summary .related.products {
  margin-top: 24px;
}
/* Отступ 24px между заголовком «Похожие товары» и сеткой товаров (.products.columns-4) */
body.oor-product-page .related.products h2 {
  margin-bottom: 24px;
}

/* В блоке похожих товаров скрываем кнопку «Подробнее» / «В корзину» */
body.oor-product-page .related.products .button,
body.oor-product-page .related.products a.button,
body.oor-product-page .related.products .add_to_cart_button,
body.oor-product-page .related.products li .button {
  display: none !important;
  visibility: hidden !important;
  position: absolute !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
}

/* Цена в похожих/рекомендуемых товарах — чёрная */
body.oor-product-page .related.products .price,
body.oor-product-page .related.products .price .amount,
body.oor-product-page .related.products .price ins,
body.oor-product-page .related.products .price del,
body.oor-product-page .up-sells.products .price,
body.oor-product-page .upsells.products .price,
body.oor-product-page .up-sells .price .amount,
body.oor-product-page .upsells .price .amount,
body.oor-product-page .up-sells .price ins,
body.oor-product-page .upsells .price ins,
body.oor-product-page .up-sells .price del,
body.oor-product-page .upsells .price del {
  color: #000 !important;
}
body.oor-product-page .summary.entry-summary .price .amount,
body.oor-product-page .summary.entry-summary .price ins,
.price ins,
.price.oor-price-fixed ins {
  color: #000;
  text-decoration: none !important;
  font-weight: normal !important;
}
body.oor-product-page .summary.entry-summary .price ins .woocommerce-Price-currencySymbol,
.price ins .woocommerce-Price-currencySymbol,
.price.oor-price-fixed ins .woocommerce-Price-currencySymbol {
  font-weight: inherit !important;
}
body.oor-product-page .summary.entry-summary .price del,
body.oor-product-page .price del {
  color: #000;
  text-decoration: line-through !important;
}

/* Сток: только чёрный */
body.oor-product-page .summary.entry-summary .stock,
body.oor-product-page .summary.entry-summary .stock.in-stock,
body.oor-product-page .summary.entry-summary .stock.out-of-stock {
  color: #000 !important;
}

/* Форма корзины: поля той же высоты, что и кнопка; кнопка чёрная; без gap (убирает лишний отступ слева) */
body.oor-product-page .summary.entry-summary form.cart {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-left: 0;
  padding-left: 0;
}
/* Форма вариаций (размер и др.): колонка — сначала выбор атрибутов, потом кнопка; селекты в стиле темы */
body.oor-product-page .summary.entry-summary form.cart.variations_form {
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}
body.oor-product-page .summary.entry-summary form.cart.variations_form .variations {
  display: table;
  width: 100%;
  max-width: 100%;
  border: none;
  margin: 0 0 8px 0;
}
body.oor-product-page .summary.entry-summary form.cart.variations_form .variations tr {
  display: table-row;
}
body.oor-product-page .summary.entry-summary form.cart.variations_form .variations .label {
  display: none; /* подпись выводится внутри баблов (.oor-product-size-label) */
}
body.oor-product-page .summary.entry-summary form.cart.variations_form .variations .value {
  padding: 0 0 8px 0;
}
body.oor-product-page .summary.entry-summary form.cart.variations_form .variations select,
body.oor-product-page .summary.entry-summary form.cart.variations_form select {
  min-height: 52px;
  height: 52px;
  padding: 12px 16px;
  border: 1px solid #000;
  border-radius: 0 !important;
  background: #fff;
  font-family: var(--font-ui);
  font-size: var(--font-size-root);
  color: #000;
  width: 100%;
  max-width: 280px;
  box-sizing: border-box;
}
body.oor-product-page .summary.entry-summary form.cart.variations_form .single_variation_wrap {
  width: 100%;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}
body.oor-product-page .summary.entry-summary form.cart.variations_form .reset_variations {
  display: inline-block;
  margin-top: 4px;
  font-size: 12px;
  color: #000;
  text-decoration: underline;
  cursor: pointer;
}
/* Скрытый select вариаций (значение меняется по клику на бабл) */
body.oor-product-page .oor-variation-select-wrapper,
body.oor-product-page .oor-variation-select-hidden {
  position: absolute !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}
/* Блок атрибута вариаций — баблы как в product.html */
body.oor-product-page .summary.entry-summary .oor-variation-attribute-wrap {
  margin-bottom: 8px;
}
body.oor-product-page .summary.entry-summary .oor-variation-attribute-wrap .oor-product-size-label {
  font-family: var(--font-ui);
  font-size: 12px;
  font-weight: 300;
  color: #000;
  margin: 0 0 8px 0;
}
body.oor-product-page .summary.entry-summary .oor-variation-attribute-wrap .oor-product-size-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
body.oor-product-page .summary.entry-summary .oor-variation-attribute-wrap .oor-product-size-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 20px;
  min-height: 52px;
  background: transparent;
  border: 1px solid #000;
  border-radius: 100px;
  color: #000;
  font-family: var(--font-ui);
  font-size: var(--font-size-root);
  font-weight: 300;
  cursor: pointer;
  transition: opacity 0.2s ease, background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
body.oor-product-page .summary.entry-summary .oor-variation-attribute-wrap .oor-product-size-btn:hover {
  opacity: 0.85;
}
body.oor-product-page .summary.entry-summary .oor-variation-attribute-wrap .oor-product-size-btn--active {
  background: #000;
  color: #fff;
  border-color: #000;
}
body.oor-product-page .summary.entry-summary form.cart .quantity {
  display: flex;
  align-items: stretch;
  margin-right: 12px;
}
body.oor-product-page .summary.entry-summary form.cart .quantity .qty {
  width: 60px;
  min-height: 52px;
  height: 52px;
  padding: 12px 16px;
  border: 1px solid #000;
  border-radius: 0 !important;
  background: transparent;
  font-family: var(--font-ui);
  font-size: var(--font-size-root);
  color: #000;
  text-align: center;
  box-sizing: border-box;
}
/* Кнопки в магазине: чёрные, без скруглений, единая высота с инпутами */
body.oor-merch-page .button,
body.oor-product-page .button,
body.oor-cart-page .button,
body.oor-checkout-page .button,
body.oor-merch-page .woocommerce .button,
body.oor-product-page .woocommerce .button,
body.oor-cart-page .woocommerce .button,
body.oor-checkout-page .woocommerce .button,
body.oor-merch-page button[type="submit"],
body.oor-product-page button[type="submit"],
body.oor-cart-page button[type="submit"],
body.oor-checkout-page button[type="submit"],
body.oor-product-page .summary.entry-summary form.cart .single_add_to_cart_button,
body.oor-merch-page a.add_to_cart_button,
body.oor-merch-page .add_to_cart_button,
body.oor-merch-page .product_type_simple,
body.oor-merch-page a.product_type_simple,
body.oor-cart-page .checkout-button,
body.oor-cart-page input[name="update_cart"],
body.oor-checkout-page #place_order {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 12px 24px;
  background: #000 !important;
  border: 1px solid #000 !important;
  border-radius: 0 !important;
  color: #fff !important;
  font-family: var(--font-ui);
  font-size: var(--font-size-root);
  line-height: var(--line-height-root);
  font-weight: 300;
  letter-spacing: -0.040rem;
  text-decoration: none;
  cursor: pointer;
  transition: opacity 0.2s ease;
  box-sizing: border-box;
  text-align: center;
}
/* Кнопка «В корзину» на мерче: текст строго по центру */
body.oor-merch-page .add_to_cart_button,
body.oor-merch-page .product_type_simple,
body.oor-merch-page a.add_to_cart_button.product_type_simple {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  width: 100%;
}
body.oor-merch-page .add_to_cart_button *,
body.oor-merch-page .product_type_simple * {
  text-align: center !important;
}
body.oor-merch-page .button:hover,
body.oor-product-page .button:hover,
body.oor-cart-page .button:hover,
body.oor-checkout-page .button:hover,
body.oor-merch-page .woocommerce .button:hover,
body.oor-product-page .woocommerce .button:hover,
body.oor-cart-page .woocommerce .button:hover,
body.oor-checkout-page .woocommerce .button:hover,
body.oor-merch-page button[type="submit"]:hover,
body.oor-product-page button[type="submit"]:hover,
body.oor-cart-page button[type="submit"]:hover,
body.oor-checkout-page button[type="submit"]:hover,
body.oor-product-page .summary.entry-summary form.cart .single_add_to_cart_button:hover,
body.oor-merch-page .add_to_cart_button:hover,
body.oor-cart-page .checkout-button:hover,
body.oor-cart-page input[name="update_cart"]:hover,
body.oor-checkout-page #place_order:hover {
  opacity: 0.85;
  color: #fff !important;
  background: #000 !important;
  border-color: #000 !important;
}

/* Перебиваем стили кнопок: в блоке похожих товаров кнопку не показываем */
body.oor-product-page .related.products .button,
body.oor-product-page .related.products a.button,
body.oor-product-page .related.products .add_to_cart_button,
body.oor-product-page .related.products li .button,
body.oor-product-page .related.products li a[class*="button"] {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  width: 0 !important;
  height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  position: absolute !important;
}

/* Инпуты в магазине: та же высота 52px, без скруглений */
body.oor-merch-page input[type="text"],
body.oor-merch-page input[type="number"],
body.oor-merch-page input[type="email"],
body.oor-merch-page input[type="tel"],
body.oor-merch-page select,
body.oor-product-page .summary.entry-summary form.cart .quantity .qty,
body.oor-product-page input[type="text"],
body.oor-product-page input[type="number"],
body.oor-product-page input[type="email"],
body.oor-product-page select,
body.oor-cart-page input[type="text"],
body.oor-cart-page input[type="number"],
body.oor-cart-page input[type="email"],
body.oor-cart-page select,
body.oor-cart-page .oor-cart-quantity-input,
body.oor-checkout-page input[type="text"],
body.oor-checkout-page input[type="number"],
body.oor-checkout-page input[type="email"],
body.oor-checkout-page input[type="tel"],
body.oor-checkout-page select {
  min-height: 52px;
  height: 52px;
  padding: 12px 16px;
  border: 1px solid #000;
  border-radius: 0 !important;
  box-sizing: border-box;
  font-family: var(--font-ui);
  font-size: var(--font-size-root);
}

/* Все инпуты и кнопки WooCommerce в магазине — без скруглений */
body.oor-merch-page .woocommerce input,
body.oor-merch-page .woocommerce select,
body.oor-merch-page .woocommerce .button,
body.oor-product-page .woocommerce input,
body.oor-product-page .woocommerce select,
body.oor-product-page .woocommerce .button,
body.oor-cart-page .woocommerce input,
body.oor-cart-page .woocommerce select,
body.oor-cart-page .woocommerce .button,
body.oor-checkout-page .woocommerce input,
body.oor-checkout-page .woocommerce select,
body.oor-checkout-page .woocommerce .button {
  border-radius: 0 !important;
}

/* Подсветка выбранного пункта в select — чёрная вместо оранжевой */
body.oor-shop-header .woocommerce select,
body.oor-shop-header select {
  accent-color: #000 !important;
}

/* Фокус на полях и блоках Woo — подсветка #fade55 */
body.oor-shop-header .woocommerce input:focus,
body.oor-shop-header .woocommerce select:focus,
body.oor-shop-header .woocommerce textarea:focus,
body.oor-shop-header .woocommerce .input-text:focus,
body.oor-shop-header .woocommerce input[type="text"]:focus,
body.oor-shop-header .woocommerce input[type="email"]:focus,
body.oor-shop-header .woocommerce input[type="tel"]:focus,
body.oor-shop-header .woocommerce input[type="number"]:focus {
  outline: 2px solid #fade55 !important;
  outline-offset: 2px;
  border-color: #fade55 !important;
}

/* Старая цена — перечёркнутая (перебивает любые reset) */
body.oor-product-page .price del,
body.oor-product-page .price del * {
  text-decoration: line-through !important;
}

.oor-product-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 78px;
  align-items: stretch;
  height: 100%;
  max-height: 100%;
  width: 100%;
  min-height: 0;
  overflow: visible;
}

/* Left Column - Product Images (Scrollable) */
.oor-product-images {
  display: flex;
  flex-direction: column;
  gap: 0;
  height: calc(100vh - 80px - 80px);
  max-height: calc(100vh - 80px - 80px);
  overflow-y: auto !important;
  overflow-x: hidden !important;
  scrollbar-width: thin;
  scrollbar-color: rgba(0, 0, 0, 0.2) transparent;
  will-change: scroll-position;
  padding-right: 8px;
  -webkit-overflow-scrolling: touch;
  position: relative;
  min-height: 0;
  align-self: stretch;
}

body.oor-product-page .oor-product-images img,
body.oor-product-page .oor-product-image-item,
body.oor-merch-page .oor-merch-product img,
body.oor-merch-page .oor-merch-product-image {
  transform: none !important;
  will-change: auto !important;
  object-fit: cover !important;
  object-position: top center !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  display: block !important;
}

.oor-product-images::-webkit-scrollbar {
  width: 4px;
}

.oor-product-images::-webkit-scrollbar-track {
  background: transparent;
}

.oor-product-images::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.2);
  border-radius: 2px;
}

.oor-product-image-item {
  width: 100%;
  flex-shrink: 0;
  flex-grow: 0;
  min-height: 0;
  display: block;
  position: relative;
}

.oor-product-image-item:last-child {
  margin-bottom: 0;
}

.oor-product-image {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
  min-height: 0;
  flex-shrink: 0;
}

body.oor-product-page .oor-product-images {
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overscroll-behavior: contain;
}

/* Переопределяем для мобильных */
@media (max-width: 768px) {
  body.oor-product-page .oor-product-images {
    overflow-y: hidden !important;
    overflow-x: scroll !important;
    touch-action: pan-x !important;
  }
}

/* Right Column - Product Info (Fixed) */
.oor-product-info {
  display: flex;
  flex-direction: column;
  gap: 64px;
  max-width: 608px;
  height: 100%;
  max-height: 100%;
  overflow-y: visible;
  overflow-x: hidden;
  position: relative;
  min-height: 0;
  align-self: stretch;
}

.oor-product-info::-webkit-scrollbar {
  width: 4px;
}

.oor-product-info::-webkit-scrollbar-track {
  background: transparent;
}

.oor-product-info::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.2);
  border-radius: 2px;
}

/* Breadcrumbs */
.oor-product-breadcrumbs {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-wrap: wrap;
  font-family: var(--font-pragmatica);
  font-size: 12px;
  line-height: normal;
  letter-spacing: -0.24px;
  text-transform: uppercase;
  color: #000;
  mix-blend-mode: normal;
}

.oor-product-breadcrumb-link {
  color: #000;
  text-decoration: underline;
  mix-blend-mode: normal;
}

.oor-product-breadcrumb-link:hover {
  opacity: 0.7;
}

.oor-product-breadcrumb-separator {
  width: 6px;
  height: 6px;
  display: inline-block;
  position: relative;
  margin: 0 2px;
  transform: rotate(270deg);
}

.oor-product-breadcrumb-separator::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 6px;
  height: 6px;
  background: url('/public/assets/breadcrumb-separator.svg') no-repeat center;
  background-size: contain;
  opacity: 0.6;
}

.oor-product-breadcrumb-current {
  color: #000;
  mix-blend-mode: normal;
}

/* Product Title */
.oor-product-title {
  font-family: var(--font-ui);
  font-size: 32px;
  line-height: 116%;
  font-weight: 300;
  letter-spacing: -1.28px;
  text-transform: uppercase;
  margin: 0;
  color: #000;
}

/* Size Selection */
.oor-product-size {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.oor-product-size-label {
  font-family: var(--font-ui);
  font-size: 24px;
  line-height: 116%;
  font-weight: 300;
  letter-spacing: -0.96px;
  text-transform: uppercase;
  margin: 0;
  color: #000;
}

.oor-product-size-options {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.oor-product-size-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 16px 24px;
  background: transparent;
  border: 1px solid #000;
  border-radius: 100px;
  color: #000;
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 130%;
  font-weight: 300;
  letter-spacing: 0;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.2s ease;
  min-width: 50px;
}

.oor-product-size-btn:hover {
  opacity: 0.7;
}

.oor-product-size-btn--active {
  background: var(--color-black);
  color: var(--color-white);
  border-color: var(--color-black);
}

/* Add to Cart Button */
.oor-product-add-to-cart {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 16px 24px;
  background: var(--color-black);
  backdrop-filter: blur(85.15px);
  border: none;
  color: var(--color-white);
  font-family: var(--font-ui);
  font-size: 24px;
  line-height: 116%;
  font-weight: 300;
  letter-spacing: -0.96px;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  transition: opacity 0.2s ease;
  width: 100%;
}

.oor-product-add-to-cart:hover {
  opacity: 0.8;
}

/* Product Characteristics */
.oor-product-characteristics {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-family: var(--font-pragmatica);
  font-size: 12px;
  line-height: normal;
  letter-spacing: -0.24px;
  text-transform: uppercase;
  color: #000;
  mix-blend-mode: normal;
}

.oor-product-characteristics-title {
  margin: 0;
  font-weight: 400;
}

.oor-product-characteristics-list {
  list-style: none;
  padding: 0;
  margin: 0;
  padding-left: 18px;
}

.oor-product-characteristics-list li {
  position: relative;
  margin-bottom: 0;
  text-transform: none;
  font-size: 12px;
  line-height: normal;
  color: #000;
}

.oor-product-characteristics-list li:before {
  content: '•';
  position: absolute;
  left: -18px;
}

.oor-product-characteristics-list li:last-child {
  margin-bottom: 0;
}

/* Mobile Styles for Product Page */
@media (max-width: 768px) {
  body.oor-product-page {
    height: auto;
    overflow: visible;
  }

  /* WooCommerce: на мобильных — одна колонка, высота первой строки = высоте изображений */
  body.oor-product-page .oor-product-section .oor-container > .product {
    grid-template-columns: 1fr;
    grid-template-rows: minmax(200px, min(55vh, 400px)) auto;
    gap: 40px;
  }
  /* Галерея (.woocommerce-product-gallery): боковые отступы 24px, высота = высоте изображений */
  body.oor-product-page .oor-product-section .oor-container > .product .woocommerce-product-gallery {
    top: 0;
    left: 0;
    width: 100%;
    height: max(200px, min(55vh, 400px));
    min-height: 200px;
    max-height: 400px;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    opacity: 1 !important;
    padding: 0 24px;
    box-sizing: border-box;
  }
  /* Горизонтальная галерея: скролл по горизонтали, без своего padding (отступ у родителя) */
  body.oor-product-page .oor-product-section .oor-container > .product .woocommerce-product-gallery__wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    gap: 24px;
    padding: 0;
    margin: 0;
    min-height: 200px;
    align-items: flex-start;
  }
  body.oor-product-page .oor-product-section .oor-container > .product .woocommerce-product-gallery__wrapper::-webkit-scrollbar {
    display: none;
  }
  /* Каждый слайд — ширина 100% видимой области (галерея уже с padding 24px) */
  body.oor-product-page .oor-product-section .oor-container > .product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image {
    flex: 0 0 auto;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    height: max(200px, min(55vh, 400px));
    min-height: 200px;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    box-sizing: border-box;
    display: block !important;
    overflow: hidden;
  }
  body.oor-product-page .oor-product-section .oor-container > .product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image a {
    display: block;
    width: 100%;
    height: 100%;
  }
  body.oor-product-page .oor-product-section .oor-container > .product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
  }
  body.oor-product-page .oor-product-section .oor-container > .product > .onsale {
    left: 32px;
    top: 8px;
  }
  body.oor-product-page .oor-product-section .oor-container > .product .summary.entry-summary {
    grid-row: 2;
    grid-column: 1;
    max-width: 100%;
    padding: 0 var(--container-x);
  }
  body.oor-product-page .summary.entry-summary .product_title {
    font-size: 24px;
    letter-spacing: -0.96px;
  }

  /* Merch Cart in Header for Product Page */
  body.oor-product-page .oor-header .oor-header-right {
    gap: 0;
    justify-content: flex-end;
  }
  
  body.oor-product-page .oor-header .oor-merch-cart {
    margin-right: 8px;
    margin-left: auto;
  }

  body.oor-product-page .oor-product-section {
    padding: 76px 0 100px 0;
    min-height: auto;
    height: auto;
    overflow: visible !important;
    margin-top: 0;
  }

  body.oor-product-page .oor-product-section .oor-container {
    padding: 0;
    height: auto;
    overflow: visible !important;
  }

  .oor-product-wrapper {
    display: flex;
    flex-direction: column;
    gap: 40px;
    height: auto;
    padding: 0;
  }

  /* Product Images - Horizontal Scroll (First) */
  .oor-product-images {
    display: flex !important;
    flex-direction: row !important;
    gap: 12px;
    max-height: none !important;
    height: auto !important;
    overflow-y: hidden !important;
    overflow-x: scroll !important;
    scrollbar-width: none;
    -ms-overflow-style: none;
    -webkit-overflow-scrolling: touch;
    padding: 0 var(--container-x);
    margin: 0;
    order: 1;
    width: 100%;
    touch-action: pan-x !important;
    scroll-snap-type: x mandatory;
    overscroll-behavior-x: contain;
  }

  .oor-product-images::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
  }

  .oor-product-image-item {
    width: calc(100vw - var(--container-x) * 2);
    min-width: calc(100vw - var(--container-x) * 2);
    max-width: calc(100vw - var(--container-x) * 2);
    flex-shrink: 0;
    margin-bottom: 0;
    box-sizing: border-box;
    scroll-snap-align: start;
  }

  .oor-product-image {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    display: block;
  }

  /* Product Info - Below Images (Second) */
  .oor-product-info {
    position: static;
    top: auto;
    max-width: 100%;
    padding: 0 var(--container-x);
    gap: 40px;
    height: auto;
    overflow-y: visible;
    overflow-x: visible;
    order: 2;
    width: 100%;
  }

  /* Breadcrumbs */
  .oor-product-breadcrumbs {
    font-size: 11px;
    gap: 3px;
  }

  /* Product Title */
  .oor-product-title {
    font-size: 24px;
    letter-spacing: -0.96px;
    line-height: 120%;
  }

  /* Size Selection */
  .oor-product-size {
    gap: 12px;
  }

  .oor-product-size-label {
    font-size: 18px;
    letter-spacing: -0.72px;
  }

  .oor-product-size-options {
    gap: 6px;
  }

  .oor-product-size-btn {
    padding: 12px 20px;
    font-size: 12px;
    min-width: 45px;
  }

  /* Add to Cart Button */
  .oor-product-add-to-cart {
    padding: 14px 20px;
    font-size: 18px;
    letter-spacing: -0.72px;
  }

  /* Product Characteristics */
  .oor-product-characteristics {
    gap: 6px;
    font-size: 11px;
  }

  .oor-product-characteristics-list {
    padding-left: 16px;
  }

  .oor-product-characteristics-list li:before {
    left: -16px;
  }
}

/* ========================================
   CART PAGE - Cart Page Styles
   ======================================== */

/* Cart Page Body */
body.oor-cart-page {
  background: #fff;
  height: auto;
  overflow: visible;
}

/* Cart Page - чёрный хедер как на мерче */
body.oor-cart-page .oor-header {
  background: #000 !important;
  mix-blend-mode: normal !important;
  isolation: isolate !important;
}

body.oor-cart-page .oor-header .oor-logo img {
  mix-blend-mode: normal !important;
  filter: brightness(0) invert(1) !important;
  opacity: 1 !important;
}

body.oor-cart-page .oor-header .oor-nav-link,
body.oor-cart-page .oor-header .oor-nav-item > span {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-cart-page .oor-header > .oor-header-right > .oor-nav .rolling-button,
body.oor-cart-page .oor-header > .oor-header-right > .oor-nav .rolling-button .tn-atom,
body.oor-cart-page .oor-header > .oor-header-right > .oor-nav .tn-atom {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-cart-page .oor-header .oor-header-right,
body.oor-cart-page .oor-header .oor-header-right .oor-nav,
body.oor-cart-page .oor-header .oor-header-right .oor-nav *,
body.oor-cart-page .oor-header .oor-header-right .oor-merch-cart,
body.oor-cart-page .oor-header .oor-header-right .oor-merch-cart *,
body.oor-cart-page .oor-header .oor-header-right .oor-burger-menu,
body.oor-cart-page .oor-header .oor-header-right .oor-burger-menu * {
  mix-blend-mode: normal !important;
}

body.oor-cart-page .oor-header .oor-merch-cart-info {
  mix-blend-mode: normal !important;
  color: #fff !important;
}

body.oor-cart-page .oor-header .oor-merch-cart-price {
  color: #fff !important;
}

body.oor-cart-page .oor-header .oor-merch-cart-count {
  color: #fff !important;
  opacity: 0.8;
}

body.oor-cart-page .oor-header .oor-merch-cart-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

/* Cart Section */
.oor-cart-section {
  padding: 120px var(--container-x) 100px var(--container-x);
  min-height: calc(100vh - 80px);
}

/* Все цветные панели Woo на страницах магазина — единый стиль: чёрная полоска, без иконок */
body.oor-shop-header .woocommerce-info,
body.oor-shop-header .woocommerce-message,
body.oor-shop-header .woocommerce-error,
body.oor-shop-header .cart-empty,
body.oor-shop-header .woocommerce-notice {
  border-left-color: #000 !important;
  border-top-color: #000 !important;
  border-color: #000 !important;
  padding-left: 16px !important;
}

body.oor-shop-header .woocommerce-info::before,
body.oor-shop-header .woocommerce-message::before,
body.oor-shop-header .woocommerce-error::before,
body.oor-shop-header .cart-empty::before,
body.oor-shop-header .woocommerce-notice::before {
  display: none !important;
}

/* Информационные панели в корзине: без иконок, полоска слева чёрная, остальное как было */
body.oor-cart-page .woocommerce-info,
body.oor-cart-page .cart-empty,
body.oor-cart-page .woocommerce-message,
body.oor-cart-page .woocommerce-error {
  border-left-color: #000 !important;
  border-top-color: #000 !important;
  border-color: #000 !important;
  padding-left: 16px !important;
}

body.oor-cart-page .woocommerce-info::before,
body.oor-cart-page .cart-empty::before,
body.oor-cart-page .woocommerce-message::before,
body.oor-cart-page .woocommerce-error::before {
  display: none !important;
}

/* Панели сообщений на странице товара — без цветных полос и иконок */
body.oor-product-page .woocommerce-info,
body.oor-product-page .woocommerce-message,
body.oor-product-page .woocommerce-error,
.oor-product-section .woocommerce-message {
  border-left-color: #000 !important;
  border-top-color: #000 !important;
  border-color: #000 !important;
  padding-left: 16px !important;
}

body.oor-product-page .woocommerce-info::before,
body.oor-product-page .woocommerce-message::before,
body.oor-product-page .woocommerce-error::before,
.oor-product-section .woocommerce-message::before {
  display: none !important;
}

/* Панели сообщений на чекауте — без цветных полос и иконок */
body.oor-checkout-page .woocommerce-info,
body.oor-checkout-page .woocommerce-message,
body.oor-checkout-page .woocommerce-error,
.oor-checkout-section .woocommerce-info,
.oor-checkout-section .woocommerce-message,
.oor-checkout-section .woocommerce-error {
  border-left-color: #000 !important;
  border-top-color: #000 !important;
  border-color: #000 !important;
  padding-left: 16px !important;
}

body.oor-checkout-page .woocommerce-info::before,
body.oor-checkout-page .woocommerce-message::before,
body.oor-checkout-page .woocommerce-error::before,
.oor-checkout-section .woocommerce-info::before,
.oor-checkout-section .woocommerce-message::before,
.oor-checkout-section .woocommerce-error::before {
  display: none !important;
}

.oor-cart-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 24px;
}

.oor-cart-title {
  font-family: var(--font-ui);
  font-size: 112px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -10.08px;
  text-transform: uppercase;
  margin: 0;
  color: var(--color-text);
}

.oor-cart-copyright {
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: normal;
  letter-spacing: -0.32px;
  color: var(--color-text);
}

.oor-cart-divider {
  width: 100%;
  height: 1px;
  background: var(--color-black);
  margin: 24px 0;
  opacity: 0.2;
}

/* Cart Items */
.oor-cart-items {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin: 40px 0;
}

.oor-cart-item {
  display: grid;
  grid-template-columns: 120px 1fr auto;
  gap: 24px;
  align-items: start;
  padding: 24px 0;
}

.oor-cart-item-image {
  width: 120px;
  height: 120px;
  flex-shrink: 0;
}

.oor-cart-item-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.oor-cart-item-info {
  display: flex;
  flex-direction: column;
  gap: 16px;
  flex: 1;
}

.oor-cart-item-title {
  font-family: var(--font-ui);
  font-size: 18px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.36px;
  margin: 0;
  color: var(--color-text);
  text-transform: uppercase;
}

.oor-cart-item-controls {
  display: flex;
  align-items: center;
  gap: 24px;
}

.oor-cart-item-quantity {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.oor-cart-quantity-label {
  font-family: var(--font-pragmatica);
  font-size: 11px;
  line-height: normal;
  letter-spacing: -0.22px;
  text-transform: uppercase;
  color: var(--color-text);
  opacity: 0.6;
}

.oor-cart-quantity-input {
  width: 60px;
  min-height: 52px;
  height: 52px;
  padding: 12px 16px;
  border: 1px solid #000;
  border-radius: 0 !important;
  background: transparent;
  font-family: var(--font-ui);
  font-size: var(--font-size-root);
  line-height: normal;
  color: var(--color-text);
  box-sizing: border-box;
  -moz-appearance: textfield;
}

.oor-cart-quantity-input::-webkit-outer-spin-button,
.oor-cart-quantity-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.oor-cart-item-remove {
  background: transparent;
  border: none;
  padding: 0;
  font-family: var(--font-pragmatica);
  font-size: 12px;
  line-height: normal;
  letter-spacing: -0.24px;
  text-transform: uppercase;
  color: #ff0000;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.oor-cart-item-remove:hover {
  opacity: 0.7;
}

.oor-cart-item-price {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-width: 120px;
}

.oor-cart-item-price-amount {
  font-family: var(--font-ui);
  font-size: 18px;
  line-height: normal;
  letter-spacing: -0.36px;
  color: var(--color-text);
}

/* Cart Summary */
.oor-cart-summary {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-top: 40px;
  padding-top: 24px;
}

.oor-cart-total {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.oor-cart-total-label {
  font-family: var(--font-ui);
  font-size: 24px;
  line-height: normal;
  font-weight: 300;
  letter-spacing: -0.48px;
  text-transform: uppercase;
  color: var(--color-text);
}

.oor-cart-total-amount {
  font-family: var(--font-ui);
  font-size: 24px;
  line-height: normal;
  font-weight: 300;
  letter-spacing: -0.48px;
  color: var(--color-text);
}

.oor-cart-actions {
  display: flex;
  justify-content: flex-end;
  gap: 16px;
}

.oor-cart-update-btn,
.oor-cart-checkout-btn {
  padding: 14px 32px;
  border: 1px solid var(--color-black);
  background: transparent;
  font-family: var(--font-pragmatica);
  font-size: 12px;
  line-height: normal;
  letter-spacing: -0.24px;
  text-transform: uppercase;
  color: var(--color-text);
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.oor-cart-update-btn:hover,
.oor-cart-checkout-btn:hover {
  opacity: 0.7;
}

.oor-cart-checkout-btn {
  background: var(--color-black);
  color: #fff;
  border-color: var(--color-black);
}

.oor-cart-checkout-btn:hover {
  background: var(--color-text);
  opacity: 1;
}

/* Mobile Styles for Cart Page */
@media (max-width: 768px) {
  body.oor-cart-page {
    height: auto;
    overflow: visible;
  }

  body.oor-cart-page .oor-header {
    background: #000 !important;
    mix-blend-mode: normal !important;
  }

  /* Cart Section */
  .oor-cart-section {
    padding: 76px 0 100px 0;
  }
  
  .oor-cart-section .oor-container {
    padding-left: var(--container-x);
    padding-right: var(--container-x);
  }

  .oor-cart-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
  }

  .oor-cart-title {
    font-size: 56px;
    letter-spacing: -5.6px;
  }

  .oor-cart-copyright {
    font-size: 14px;
    letter-spacing: -0.28px;
  }

  .oor-cart-divider {
    margin: 16px 0;
  }

  /* Cart Items */
  .oor-cart-items {
    gap: 24px;
    margin: 24px 0;
  }

  .oor-cart-item {
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 16px 0;
  }

  .oor-cart-item-image {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
  }

  .oor-cart-item-title {
    font-size: 16px;
    letter-spacing: -0.32px;
  }

  .oor-cart-item-controls {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }

  .oor-cart-item-price {
    justify-content: flex-start;
    min-width: auto;
  }

  .oor-cart-item-price-amount {
    font-size: 16px;
    letter-spacing: -0.32px;
  }

  /* Cart Summary */
  .oor-cart-summary {
    gap: 16px;
    margin-top: 24px;
    padding-top: 16px;
  }

  .oor-cart-total {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  .oor-cart-total-label,
  .oor-cart-total-amount {
    font-size: 20px;
    letter-spacing: -0.4px;
  }

  .oor-cart-actions {
    flex-direction: column;
    width: 100%;
  }

  .oor-cart-update-btn,
  .oor-cart-checkout-btn {
    width: 100%;
    justify-content: center;
  }
}

/* ========================================
   CHECKOUT PAGE - Checkout Page Styles
   ======================================== */

/* Checkout Page Body */
body.oor-checkout-page {
  background: #fff;
  height: auto;
  overflow: visible;
}

/* Checkout Page - чёрный хедер как на мерче */
body.oor-checkout-page .oor-header {
  background: #000 !important;
  mix-blend-mode: normal !important;
  isolation: isolate !important;
}

body.oor-checkout-page .oor-header .oor-logo img {
  mix-blend-mode: normal !important;
  filter: brightness(0) invert(1) !important;
  opacity: 1 !important;
}

body.oor-checkout-page .oor-header .oor-nav-link,
body.oor-checkout-page .oor-header .oor-nav-item > span {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-checkout-page .oor-header > .oor-header-right > .oor-nav .rolling-button,
body.oor-checkout-page .oor-header > .oor-header-right > .oor-nav .rolling-button .tn-atom,
body.oor-checkout-page .oor-header > .oor-header-right > .oor-nav .tn-atom {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-checkout-page .oor-header .oor-header-right,
body.oor-checkout-page .oor-header .oor-header-right .oor-nav,
body.oor-checkout-page .oor-header .oor-header-right .oor-nav *,
body.oor-checkout-page .oor-header .oor-header-right .oor-merch-cart,
body.oor-checkout-page .oor-header .oor-header-right .oor-merch-cart *,
body.oor-checkout-page .oor-header .oor-header-right .oor-burger-menu,
body.oor-checkout-page .oor-header .oor-header-right .oor-burger-menu * {
  mix-blend-mode: normal !important;
}

body.oor-checkout-page .oor-header .oor-merch-cart-info {
  mix-blend-mode: normal !important;
  color: #fff !important;
}

body.oor-checkout-page .oor-header .oor-merch-cart-price {
  color: #fff !important;
}

body.oor-checkout-page .oor-header .oor-merch-cart-count {
  color: #fff !important;
  opacity: 0.8;
}

body.oor-checkout-page .oor-header .oor-merch-cart-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

/* Checkout Section */
.oor-checkout-section {
  padding: 120px var(--container-x) 100px var(--container-x);
  min-height: calc(100vh - 80px);
}

.oor-checkout-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 24px;
}

.oor-checkout-title {
  font-family: var(--font-ui);
  font-size: 112px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -10.08px;
  text-transform: uppercase;
  margin: 0;
  color: var(--color-text);
}

.oor-checkout-copyright {
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: normal;
  letter-spacing: -0.32px;
  color: var(--color-text);
}

.oor-checkout-divider {
  width: 100%;
  height: 1px;
  background: var(--color-black);
  margin: 24px 0;
  opacity: 0.2;
}

/* Checkout Content - Two Column Layout */
.oor-checkout-content {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  margin-top: 40px;
}

/* Блок чекаута от Woo — на всю доступную ширину (шорткод выводит один div.woocommerce) */
.oor-checkout-content > .woocommerce {
  grid-column: 1 / -1;
  width: 100%;
  min-width: 0;
}

.oor-checkout-content .woocommerce * {
  font-weight: 400 !important;
}

/* Поля чекаута Woo: обёртки и ряды принудительно видимы (исправляет скрытые обязательные поля) */
.oor-checkout-section .woocommerce-billing-fields,
.oor-checkout-section .woocommerce-billing-fields__field-wrapper,
.oor-checkout-section .woocommerce .form-row {
  display: block !important;
  overflow: visible !important;
  visibility: visible !important;
  opacity: 1 !important;
}
/* Поля billing и shipping — принудительно через ID */
input[id*="billing_"],
select[id*="billing_"],
textarea[id*="billing_"],
input[id*="shipping_"],
select[id*="shipping_"],
textarea[id*="shipping_"] {
  display: block !important;
  visibility: visible !important;
  width: 100% !important;
  min-height: 52px !important;
  opacity: 1 !important;
}
/* Обязательные поля (.validate-required) — принудительно показываем (максимальная специфичность) */
.woocommerce .form-row.validate-required,
.woocommerce .form-row.validate-required .woocommerce-input-wrapper,
.woocommerce .form-row.validate-required input,
.woocommerce .form-row.validate-required input.input-text,
.woocommerce .form-row.validate-required select,
.woocommerce .form-row.validate-required textarea,
body.oor-checkout-page .woocommerce .form-row.validate-required,
body.oor-checkout-page .woocommerce .form-row.validate-required .woocommerce-input-wrapper,
body.oor-checkout-page .woocommerce .form-row.validate-required input,
body.oor-checkout-page .woocommerce .form-row.validate-required select,
body.oor-checkout-page .woocommerce .form-row.validate-required textarea {
  display: block !important;
  visibility: visible !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 52px !important;
  height: auto !important;
  opacity: 1 !important;
  position: relative !important;
  clip: auto !important;
  overflow: visible !important;
}
.oor-checkout-section .woocommerce .form-row .woocommerce-input-wrapper,
.oor-checkout-section .woocommerce .form-row input,
.oor-checkout-section .woocommerce .form-row input.input-text,
.oor-checkout-section .woocommerce .form-row select,
.oor-checkout-section .woocommerce .form-row textarea {
  display: block !important;
  visibility: visible !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  opacity: 1 !important;
  position: relative !important;
  clip: auto !important;
}
.oor-checkout-section .woocommerce .form-row-first,
.oor-checkout-section .woocommerce .form-row-last {
  width: 100% !important;
  float: none !important;
  margin-bottom: 1em;
}
@media (min-width: 768px) {
  .oor-checkout-section .woocommerce .col2-set .col-1 .form-row-first,
  .oor-checkout-section .woocommerce .col2-set .col-1 .form-row-last {
    width: 48% !important;
    float: left !important;
  }
  .oor-checkout-section .woocommerce .col2-set .col-1 .form-row-last {
    float: right !important;
  }
}

/* Left Column - Form */
.oor-checkout-form-column {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.oor-checkout-form-title {
  font-family: var(--font-ui);
  font-size: 18px;
  line-height: normal;
  font-weight: 300;
  letter-spacing: -0.36px;
  text-transform: uppercase;
  margin: 0 0 24px 0;
  color: var(--color-text);
}

.oor-checkout-form {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.oor-checkout-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.oor-checkout-form-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.oor-checkout-form-label {
  font-family: var(--font-pragmatica);
  font-size: 11px;
  line-height: normal;
  letter-spacing: -0.22px;
  text-transform: uppercase;
  color: var(--color-text);
  opacity: 0.6;
}

.oor-checkout-form-input,
.oor-checkout-form-select {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid var(--color-black);
  background: transparent;
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: normal;
  color: var(--color-text);
  transition: border-color 0.2s ease;
}

.oor-checkout-form-input:focus,
.oor-checkout-form-select:focus {
  outline: none;
  border-color: var(--color-black);
}

.oor-checkout-form-input::placeholder {
  color: var(--color-text);
  opacity: 0.4;
}

.oor-checkout-form-select {
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1L6 6L11 1' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  padding-right: 40px;
}

/* Right Column - Order Summary */
.oor-checkout-summary-column {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.oor-checkout-summary-title {
  font-family: var(--font-ui);
  font-size: 18px;
  line-height: normal;
  font-weight: 300;
  letter-spacing: -0.36px;
  text-transform: uppercase;
  margin: 0 0 24px 0;
  color: var(--color-text);
}

.oor-checkout-order-items {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 24px;
}

.oor-checkout-order-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.oor-checkout-order-item:last-of-type {
  border-bottom: none;
  padding-bottom: 0;
}

.oor-checkout-order-item-name {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  letter-spacing: -0.28px;
  color: var(--color-text);
  flex: 1;
}

.oor-checkout-order-item-price {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: normal;
  letter-spacing: -0.28px;
  color: var(--color-text);
  white-space: nowrap;
}

.oor-checkout-order-total {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 24px;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  margin-bottom: 24px;
}

.oor-checkout-order-total-label {
  font-family: var(--font-ui);
  font-size: 18px;
  line-height: normal;
  font-weight: 300;
  letter-spacing: -0.36px;
  text-transform: uppercase;
  color: var(--color-text);
}

.oor-checkout-order-total-amount {
  font-family: var(--font-ui);
  font-size: 18px;
  line-height: normal;
  font-weight: 300;
  letter-spacing: -0.36px;
  color: var(--color-text);
}

.oor-checkout-buy-btn {
  width: 100%;
  padding: 16px 32px;
  border: 1px solid var(--color-black);
  background: var(--color-black);
  color: #fff;
  font-family: var(--font-pragmatica);
  font-size: 12px;
  line-height: normal;
  letter-spacing: -0.24px;
  text-transform: uppercase;
  cursor: pointer;
  transition: opacity 0.2s ease;
  margin-bottom: 16px;
}

.oor-checkout-buy-btn:hover {
  opacity: 0.8;
}

.oor-checkout-disclaimer {
  font-family: var(--font-pragmatica);
  font-size: 11px;
  line-height: 140%;
  letter-spacing: -0.22px;
  color: var(--color-text);
  margin: 0;
  opacity: 0.6;
}

/* Mobile Styles for Checkout Page */
@media (max-width: 768px) {
  body.oor-checkout-page {
    height: auto;
    overflow: visible;
  }

  body.oor-checkout-page .oor-header {
    background: #000 !important;
    mix-blend-mode: normal !important;
  }

  /* Checkout Section */
  .oor-checkout-section {
    padding: 76px 0 100px 0;
  }
  
  .oor-checkout-section .oor-container {
    padding-left: var(--container-x);
    padding-right: var(--container-x);
  }

  .oor-checkout-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
  }

  .oor-checkout-title {
    font-size: 56px;
    letter-spacing: -5.6px;
  }

  .oor-checkout-copyright {
    font-size: 14px;
    letter-spacing: -0.28px;
  }

  .oor-checkout-divider {
    margin: 16px 0;
  }

  /* Checkout Content - Stack columns on mobile */
  .oor-checkout-content {
    grid-template-columns: 1fr;
    gap: 40px;
    margin-top: 24px;
  }

  /* Form adjustments */
  .oor-checkout-form-row {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .oor-checkout-form-field {
    gap: 8px;
  }

  .oor-checkout-form-input,
  .oor-checkout-form-select {
    padding: 12px 16px;
    font-size: 14px;
  }

  /* Order Summary adjustments */
  .oor-checkout-summary-title {
    font-size: 16px;
    letter-spacing: -0.32px;
    margin-bottom: 16px;
  }

  .oor-checkout-order-items {
    gap: 12px;
    margin-bottom: 16px;
  }

  .oor-checkout-order-item {
    flex-direction: column;
    gap: 8px;
    padding-bottom: 12px;
  }

  .oor-checkout-order-item-name {
    font-size: 12px;
    letter-spacing: -0.24px;
  }

  .oor-checkout-order-item-price {
    font-size: 12px;
  }
}

/* ===== CONTACTS PAGE STYLES ===== */

/* Contacts page - white background like artists page */
body.oor-contacts-page {
  background: #fff;
}

body.oor-contacts-page .oor-header {
  background: #000 !important;
  mix-blend-mode: normal !important;
  isolation: isolate;
}

body.oor-contacts-page .oor-logo img {
  mix-blend-mode: normal !important;
  filter: brightness(0) invert(1) !important;
}

body.oor-contacts-page .oor-nav-link {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-contacts-page .oor-nav-link--active {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-contacts-page .oor-nav-item > span {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-contacts-page .oor-btn-small {
  mix-blend-mode: normal !important;
}

body.oor-contacts-page .oor-btn-small-text {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-contacts-page .oor-btn-small-icon {
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

body.oor-contacts-page .oor-btn-small-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

/* Contacts Hero Section */
.oor-contacts-hero {
  background: #fff;
  padding-top: 80px;
  padding-bottom: 16px;
  border-bottom: 1px solid #000;
}

.oor-contacts-hero-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
}

.oor-contacts-hero-title {
  font-family: var(--font-ui);
  font-size: 96px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -8.64px;
  text-transform: uppercase;
  color: #000;
  margin: 0;
  mix-blend-mode: luminosity;
}

.oor-contacts-hero-copyright {
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.32px;
  color: #000;
  margin: 0;
  text-align: center;
}

/* Contacts Content Section */
.oor-contacts-content-section {
  background: #fff;
  padding: 80px 0 80px;
}

.oor-contacts-content-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 64px;
  width: 100%;
  max-width: 1364px;
}

/* Main Title Frame */
.oor-contacts-main-frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  width: 100%;
}

.oor-contacts-main-title {
  font-family: var(--font-ui);
  font-size: 48px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -1.92px;
  text-transform: uppercase;
  color: #000;
  margin: 0;
  width: 100%;
}

/* Email Contacts Frame */
.oor-contacts-emails-frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 48px;
  width: 100%;
}

.oor-contacts-email-frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  width: 100%;
}

.oor-contacts-email-label {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.56px;
  color: #000;
  opacity: 0.6;
  margin: 0;
}

.oor-contacts-email-link {
  font-family: var(--font-ui);
  font-size: 31px;
  line-height: 130%;
  font-weight: 300;
  letter-spacing: -1.24px;
  text-transform: uppercase;
  color: #000;
  text-decoration: underline;
  text-decoration-style: solid;
  text-underline-offset: 4px;
  display: inline-block;
  width: fit-content;
}

.oor-contacts-email-link:hover {
  opacity: 0.7;
}

/* Social Links Frame */
.oor-contacts-social-frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
  width: 100%;
}

.oor-contacts-social-title {
  font-family: var(--font-ui);
  font-size: 24px;
  line-height: 130%;
  font-weight: 300;
  letter-spacing: -0.96px;
  text-transform: uppercase;
  color: #4f4f4f;
  margin: 0;
}

.oor-contacts-social-links {
  display: flex;
  align-items: flex-start;
  gap: 24px;
  flex-wrap: wrap;
}

.oor-contacts-social-link {
  font-family: var(--font-ui);
  font-size: 31px;
  line-height: 130%;
  font-weight: 300;
  letter-spacing: -1.24px;
  text-transform: uppercase;
  color: #000;
  text-decoration: underline;
  text-decoration-style: solid;
  text-underline-offset: 4px;
  display: inline-block;
  white-space: nowrap;
}

.oor-contacts-social-link:hover {
  opacity: 0.7;
}

/* Responsive adjustments for contacts page */
@media (max-width: 1919px) {
  .oor-contacts-hero-title {
    font-size: clamp(48px, 6.67vw, 96px);
    letter-spacing: clamp(-4.8px, -0.67vw, -8.64px);
  }
  
  .oor-contacts-main-title {
    font-size: clamp(32px, 3.33vw, 48px);
    letter-spacing: clamp(-1.28px, -0.13vw, -1.92px);
  }
}

/* Mobile styles for contacts page (≤768px) */
@media (max-width: 768px) {
  .oor-contacts-hero {
    padding-top: 0;
    padding-bottom: 0;
    border-bottom: 1px solid #000;
  }

  .oor-contacts-hero .oor-container {
    padding: 0;
  }

  .oor-contacts-hero-header {
    flex-direction: column;
    align-items: flex-start;
    padding: 76px 0 16px 12px;
    gap: 0;
  }

  .oor-contacts-hero-title {
    font-size: 72px;
    line-height: 100%;
    letter-spacing: -7.2px;
    margin: 0;
  }

  .oor-contacts-hero-copyright {
    font-size: 16px;
    letter-spacing: -0.32px;
    margin-top: 0;
  }

  .oor-contacts-content-section {
    padding: 32px 0 40px;
  }

  .oor-contacts-content-section .oor-container {
    padding: 0 12px;
  }

  .oor-contacts-content-wrapper {
    gap: 40px;
  }

  .oor-contacts-main-title {
    font-size: 32px;
    letter-spacing: -1.28px;
  }

  .oor-contacts-emails-frame {
    gap: 32px;
  }

  .oor-contacts-email-label {
    font-size: 14px;
    letter-spacing: -0.56px;
  }

  .oor-contacts-email-link {
    font-size: 24px;
    letter-spacing: -0.96px;
  }

  .oor-contacts-social-title {
    font-size: 20px;
    letter-spacing: -0.8px;
  }

  .oor-contacts-social-links {
    gap: 16px;
  }

  .oor-contacts-social-link {
    font-size: 24px;
    letter-spacing: -0.96px;
  }
}

/* Дополнительные стили для очень маленьких экранов (≤460px) */
@media (max-width: 460px) {
  .oor-contacts-hero-title {
    font-size: 48px;
    letter-spacing: -4.8px;
  }

  .oor-contacts-content-section,
  .oor-contacts-content-section .oor-container {
    padding-left: 16px;
    padding-right: 16px;
  }

  .oor-contacts-hero-header {
    padding-left: 16px;
    padding-right: 16px;
  }

  .oor-contacts-main-title {
    font-size: 24px;
    letter-spacing: -0.96px;
  }

  .oor-contacts-email-link {
    font-size: 20px;
    letter-spacing: -0.8px;
  }

  .oor-contacts-social-link {
    font-size: 20px;
    letter-spacing: -0.8px;
  }
}

/* ===== BECOME ARTIST PAGE STYLES ===== */

/* Become Artist page - white background */
body.oor-become-artist-page {
  background: #fff;
}

body.oor-become-artist-page .oor-header {
  background: #000 !important;
  mix-blend-mode: normal !important;
  isolation: isolate;
}

body.oor-become-artist-page .oor-logo img {
  mix-blend-mode: normal !important;
  filter: brightness(0) invert(1) !important;
}

body.oor-become-artist-page .oor-nav-link {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-become-artist-page .oor-nav-link--active {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-become-artist-page .oor-nav-item > span {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-become-artist-page .oor-btn-small {
  mix-blend-mode: normal !important;
  border-color: #fff !important;
  color: #fff !important;
}

body.oor-become-artist-page .oor-btn-small-text {
  color: #fff !important;
  mix-blend-mode: normal !important;
}

body.oor-become-artist-page .oor-btn-small-icon {
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

body.oor-become-artist-page .oor-btn-small-icon img {
  filter: brightness(0) invert(1) !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

/* Become Artist Hero Section */
.oor-become-artist-hero {
  background: #fff;
  padding-top: 80px;
  padding-bottom: 16px;
  border-bottom: 1px solid #000;
}

.oor-become-artist-hero-header {
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  width: 100%;
}

.oor-become-artist-hero-title {
  font-family: var(--font-ui);
  font-size: 96px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -8.64px;
  text-transform: uppercase;
  color: #000;
  margin: 0;
  mix-blend-mode: luminosity;
}

/* Become Artist Content Section */
.oor-become-artist-content-section {
  background: #fff;
  padding: 80px 0 80px;
}

/* Контейнер с особенностью ширины: до 1440px тянется, после фиксируется, контент слева
   Применяем только на странице "Стать артистом", чтобы не ломать блоки на других страницах */
body.oor-become-artist-page .oor-become-artist-container {
  width: 100%;
  max-width: none;
  margin: 0;
  padding-left: var(--container-x, 80px);
  padding-right: var(--container-x, 80px);
}

/* На экранах больше 1440px фиксируем ширину и выравниваем контент слева */
@media (min-width: 1441px) {
  body.oor-become-artist-page .oor-become-artist-container {
    max-width: 1440px;
    margin-left: 0;
    margin-right: auto;
  }
}

.oor-become-artist-content-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 64px;
  width: 100%;
  max-width: 100%;
}

/* Main Heading */
.oor-become-artist-main-heading {
  width: 100%;
}

.oor-become-artist-subtitle {
  font-family: var(--font-ui);
  font-size: 48px;
  line-height: 100%;
  font-weight: 300;
  letter-spacing: -1.92px;
  text-transform: uppercase;
  color: #000;
  margin: 0;
  text-align: left;
}

/* Instructions (Two Columns) */
.oor-become-artist-instructions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 56px;
  width: 100%;
}

.oor-become-artist-instructions-col {
  display: flex;
  flex-direction: column;
  position: relative;
  padding-left: 24px;
}

.oor-become-artist-instructions-col::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 2px;
  background: #000;
}

.oor-become-artist-instructions-text {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  color: #000;
  margin: 0;
}

/* Form Wrapper */
.oor-become-artist-form-wrapper {
  width: 100%;
  max-width: 100%;
}

/* Contact Form 7 Styles */
.oor-become-artist-form-fields {
  display: flex;
  flex-direction: column;
  gap: 40px;
  width: 100%;
}

.oor-form-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}

.oor-form-label {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.28px;
  text-transform: uppercase;
  color: #000;
  margin: 0;
}

.oor-form-required {
  color: #000;
}

.oor-form-input,
.oor-form-textarea {
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.32px;
  color: #000;
  background: transparent;
  border: none;
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  padding: 8px 0 10px 0; /* Увеличиваем padding-bottom для textarea */
  width: 100%;
  outline: none;
  transition: border-color 0.3s ease;
  box-sizing: border-box;
}

.oor-form-input:focus,
.oor-form-textarea:focus {
  border-bottom-color: #000;
}

.oor-form-input::placeholder,
.oor-form-textarea::placeholder {
  color: rgba(0, 0, 0, 0.5);
  opacity: 1;
}

.oor-form-textarea {
  min-height: 28px; /* немного выше одной строки, чтобы placeholder и текст точно помещались */
  max-height: 300px;
  resize: none;
  overflow-y: hidden; /* Скрываем скролл до тех пор, пока не достигнем max-height */
  line-height: 140%;
  height: 28px; /* начальная высота */
  padding-bottom: 4px; /* дополнительный запас снизу, чтобы ничего не обрезалось */
  transition: height 0.2s ease;
  box-sizing: border-box;
}

/* Показываем скролл только когда достигли max-height */
.oor-form-textarea[style*="height: 300px"] {
  overflow-y: auto;
}

.oor-form-note {
  margin-top: -20px;
}

.oor-form-note-text {
  font-family: var(--font-ui);
  font-size: 12px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.24px;
  color: rgba(0, 0, 0, 0.6) !important; /* 60% прозрачность */
  font-style: italic;
  margin: 0;
}

.oor-form-submit {
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.64px;
  text-transform: uppercase;
  color: #fff;
  background: #000;
  border: 1px solid #000;
  padding: 16px 32px;
  cursor: pointer;
  transition: all 0.3s ease;
  width: fit-content;
  margin-top: 8px;
}

.oor-form-submit:hover {
  background: #333;
  border-color: #333;
}

.oor-form-submit:active {
  background: #000;
}

/* Стили для стандартных полей Contact Form 7 */
.wpcf7-form {
  width: 100%;
}

.wpcf7-form .oor-form-field {
  margin-bottom: 0;
}

.wpcf7-form p {
  margin: 0 0 40px 0;
  padding: 0;
  position: relative;
}

/* Примечание про демо-материалы (класс навешивается JS) */
.wpcf7-form p.oor-demo-note {
  font-size: 12px;
  line-height: 140%;
  letter-spacing: -0.24px;
}

@media (min-width: 1025px) {
  .wpcf7-form p.oor-demo-note {
    max-width: 25%;
  }
}

.wpcf7-form br {
  display: none;
}

/* Скрываем текст перед полями - используем только placeholder */
.wpcf7-form p:has(.wpcf7-form-control-wrap) {
  position: relative;
}

/* Скрываем текстовые узлы перед полями */
.wpcf7-form p:has(.wpcf7-form-control-wrap) > text:first-child,
.wpcf7-form p:has(.wpcf7-form-control-wrap) > *:not(.wpcf7-form-control-wrap):not(.oor-form-label) {
  display: none;
}

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="url"],
.wpcf7-form textarea {
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.32px;
  color: #000;
  background: transparent;
  border: none;
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  padding: 8px 0 10px 0; /* Увеличиваем padding-bottom для textarea */
  width: 100%;
  outline: none;
  transition: border-color 0.3s ease;
  position: relative;
  box-sizing: border-box;
}

.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form input[type="url"]:focus,
.wpcf7-form textarea:focus {
  border-bottom-color: #000;
}

/* Placeholder как лейбл внутри поля */
.wpcf7-form input[type="text"]::placeholder,
.wpcf7-form input[type="email"]::placeholder,
.wpcf7-form input[type="url"]::placeholder,
.wpcf7-form textarea::placeholder {
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: 140%;
  font-weight: 300;
  letter-spacing: -0.32px;
  text-transform: uppercase;
  color: #000;
  opacity: 1;
  transition: opacity 0.3s ease;
}

/* Placeholder исчезает при фокусе или когда поле заполнено */
.wpcf7-form input[type="text"]:focus::placeholder,
.wpcf7-form input[type="email"]:focus::placeholder,
.wpcf7-form input[type="url"]:focus::placeholder,
.wpcf7-form textarea:focus::placeholder,
.wpcf7-form input[type="text"]:not(:placeholder-shown)::placeholder,
.wpcf7-form input[type="email"]:not(:placeholder-shown)::placeholder,
.wpcf7-form input[type="url"]:not(:placeholder-shown)::placeholder,
.wpcf7-form textarea:not(:placeholder-shown)::placeholder {
  opacity: 0;
}

.wpcf7-form textarea {
  min-height: 40px !important;
  max-height: 300px !important;
  resize: none !important;
  overflow-y: hidden !important;
  line-height: 140% !important;
  height: 40px !important;
  padding: 8px 0 16px 0 !important;
  box-sizing: border-box !important;
}

/* Показываем скролл только когда достигли max-height */
.wpcf7-form textarea[style*="height: 300px"] {
  overflow-y: auto;
}

.wpcf7-form input[type="submit"] {
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: 120%;
  font-weight: 300;
  letter-spacing: -0.64px;
  text-transform: uppercase;
  color: #fff;
  background: #000;
  border: 1px solid #000;
  padding: 16px 32px;
  cursor: pointer;
  transition: all 0.3s ease;
  width: fit-content;
  margin-top: 8px;
}

.wpcf7-form input[type="submit"]:hover {
  background: #333;
  border-color: #333;
}

.wpcf7-form .wpcf7-not-valid-tip {
  font-family: var(--font-ui);
  font-size: 12px;
  color: #d32f2f;
  margin-top: 4px;
}

.wpcf7-form .wpcf7-validation-errors,
.wpcf7-form .wpcf7-mail-sent-ok {
  font-family: var(--font-ui);
  font-size: 14px;
  padding: 12px;
  margin-top: 16px;
}

.wpcf7-form .wpcf7-mail-sent-ok {
  background: #4caf50;
  color: #fff;
}

.wpcf7-form .wpcf7-validation-errors {
  background: #f44336;
  color: #fff;
}

/* Responsive adjustments for become artist page */
@media (max-width: 1919px) {
  .oor-become-artist-hero-title {
    font-size: clamp(48px, 6.67vw, 96px);
    letter-spacing: clamp(-4.8px, -0.67vw, -8.64px);
  }
  
  .oor-become-artist-subtitle {
    font-size: clamp(32px, 3.33vw, 48px);
    letter-spacing: clamp(-1.28px, -0.13vw, -1.92px);
  }
}

/* Особенность ширины: до 1440px тянется, после фиксируется, контент слева */
@media (min-width: 1441px) {
  body.oor-become-artist-page .oor-become-artist-container {
    max-width: 1440px;
    margin-left: 0;
    margin-right: auto;
  }
  
  .oor-become-artist-content-wrapper {
    align-items: flex-start;
    text-align: left;
  }
}

/* Mobile styles for become artist page (≤768px) */
@media (max-width: 768px) {
  .oor-become-artist-hero {
    padding-top: 0;
    padding-bottom: 0;
    border-bottom: 1px solid #000;
  }

  .oor-become-artist-hero .oor-container {
    padding: 0;
  }

  .oor-become-artist-hero-header {
    padding: 76px 0 16px 12px;
  }

  .oor-become-artist-hero-title {
    font-size: 72px;
    line-height: 100%;
    letter-spacing: -7.2px;
    margin: 0;
  }

  .oor-become-artist-content-section {
    padding: 32px 0 40px;
  }

  body.oor-become-artist-page .oor-become-artist-container {
    padding-left: 12px;
    padding-right: 12px;
  }

  .oor-become-artist-content-wrapper {
    gap: 40px;
  }

  .oor-become-artist-subtitle {
    font-size: 32px;
    letter-spacing: -1.28px;
  }

  .oor-become-artist-instructions {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .oor-become-artist-instructions-col {
    padding-left: 16px;
  }

  .oor-become-artist-instructions-col::before {
    width: 1px;
  }

  .oor-become-artist-instructions-text {
    font-size: 14px;
    letter-spacing: -0.28px;
  }

  .oor-become-artist-form-fields {
    gap: 32px;
  }

  .oor-form-label {
    font-size: 14px;
    letter-spacing: -0.28px;
  }

  .oor-form-input,
  .oor-form-textarea {
    font-size: 16px;
    letter-spacing: -0.32px;
  }

  .oor-form-submit {
    width: 100%;
    font-size: 16px;
    letter-spacing: -0.64px;
  }
}

/* Дополнительные стили для очень маленьких экранов (≤460px) */
@media (max-width: 460px) {
  .oor-become-artist-hero-title {
    font-size: 48px;
    letter-spacing: -4.8px;
  }

  body.oor-become-artist-page .oor-become-artist-container {
    padding-left: 16px;
    padding-right: 16px;
  }

  .oor-become-artist-hero-header {
    padding-left: 16px;
    padding-right: 16px;
  }

  .oor-become-artist-subtitle {
    font-size: 24px;
    letter-spacing: -0.96px;
  }

  .oor-become-artist-instructions {
    gap: 20px;
  }
}

    letter-spacing: -0.24px;
  }

  .oor-checkout-order-total {
    padding-top: 16px;
    margin-bottom: 16px;
  }

  .oor-checkout-order-total-label,
  .oor-checkout-order-total-amount {
    font-size: 16px;
    letter-spacing: -0.32px;
  }

  .oor-checkout-buy-btn {
    padding: 14px 24px;
    font-size: 11px;
    letter-spacing: -0.22px;
  }

  .oor-checkout-disclaimer {
    font-size: 10px;
    letter-spacing: -0.2px;
  }
}

/* ========================================
   Страница товара: старая цена перечёркнута (финальный оверрайд)
   ======================================== */
body.oor-product-page .price del,
body.oor-product-page .price del .amount,
body.oor-product-page .price del bdi,
body.oor-product-page .price del *,
/* JS вставил <del>/<ins> (класс .oor-price-fixed) — зачёркивание без зависимости от body */
.price.oor-price-fixed del,
.price.oor-price-fixed del * {
  text-decoration: line-through !important;
}
/* Когда в .price два блока с суммой без <del> (два .amount подряд) — зачёркиваем первый */
body.oor-product-page .price:has(.woocommerce-Price-amount + .woocommerce-Price-amount) .woocommerce-Price-amount:first-of-type,
body.oor-product-page .price:has(.amount + .amount) .amount:first-of-type {
  text-decoration: line-through !important;
}

/* Отступ хедера/меню под админ-панель WP не добавляем (убрано по запросу) */


