/* style.css - переопределение цветов зеленой гаммы
   Подключать после main.css
   Для смены цвета достаточно изменить --brand-color
*/

:root,
.brand-crown-green {
  --brand-color: #202720;
  --black: #000000;
  --white: #ffffff;
  
  /* Настройки кнопок */
  --button-color: #F7A812;
  --button-text-color: #000000;


  --gradient-button-start: color-mix(in srgb, var(--button-color) 100%, var(--white) 70%);
  --gradient-button-middle: var(--button-color);
  --gradient-button-end: color-mix(in srgb, var(--button-color) 100%, var(--black) 70%);

  --button-primary-bg-default: linear-gradient(180deg, var(--gradient-button-start) -24.36%, var(--gradient-button-middle) 23.01%, var(--gradient-button-end) 100%);
  --button-primary-bg-hover: linear-gradient(335deg, var(--gradient-button-start) 23.63%, var(--gradient-button-middle) 64.48%, var(--gradient-button-end) 116.85%);
  
  /* Оттенки (темная тема) */
  --color-neutral-1000: color-mix(in srgb, var(--brand-color) 70%, var(--black) 30%);
  --color-neutral-900: color-mix(in srgb, var(--brand-color) 80%, var(--black) 80%);
  --color-neutral-800: color-mix(in srgb, var(--brand-color) 90%, var(--black) 50%);
  --color-neutral-700: var(--brand-color);
  --color-neutral-600: color-mix(in srgb, var(--brand-color) 85%, var(--white) 15%);
  --color-neutral-500: color-mix(in srgb, var(--brand-color) 73%, var(--white) 5%);
  --color-neutral-400: color-mix(in srgb, var(--brand-color) 62%, var(--white) 12%);
  --color-neutral-300: color-mix(in srgb, var(--brand-color) 52%, var(--white) 48%);
  --color-neutral-200: color-mix(in srgb, var(--brand-color) 38%, var(--white) 62%);
  --color-neutral-150: color-mix(in srgb, var(--brand-color) 15%, var(--white) 85%);
  --color-neutral-100: color-mix(in srgb, var(--brand-color) 10%, var(--white) 90%);
  --color-neutral-50: color-mix(in srgb, var(--brand-color) 5%, var(--white) 95%);
  
  --color-neutral-100-50: color-mix(in srgb, var(--color-neutral-100) 50%, transparent);
  --color-neutral-400-0: var(--color-neutral-400);
  --color-neutral-700-0: var(--color-neutral-700);
  --color-neutral-1000-70: color-mix(in srgb, var(--color-neutral-1000) 70%, transparent);
  
  /* Alpha-каналы (белый) */
  --color-alpha-10: color-mix(in srgb, var(--white) 10%, transparent);
  --color-alpha-15: color-mix(in srgb, var(--white) 15%, transparent);
  --color-alpha-25: color-mix(in srgb, var(--white) 25%, transparent);
  --color-alpha-40: color-mix(in srgb, var(--white) 40%, transparent);
  --color-alpha-50: color-mix(in srgb, var(--white) 50%, transparent);
  --color-alpha-60: color-mix(in srgb, var(--white) 60%, transparent);
  
  --color-alpha-contrast: var(--white);
  --color-alpha-contrast-60: color-mix(in srgb, var(--white) 60%, transparent);
  --color-alpha-contrast-50: color-mix(in srgb, var(--white) 50%, transparent);
  --color-alpha-contrast-40: color-mix(in srgb, var(--white) 40%, transparent);
  --color-alpha-contrast-10: color-mix(in srgb, var(--white) 10%, transparent);
  --color-alpha-default: var(--white);
  
  /* Производные переменные (bg, border, text, icon) */
  --bg-basic-1000: var(--color-neutral-1000);
  --bg-basic-1000-70: var(--color-neutral-1000-70);
  --bg-basic-900: var(--color-neutral-900);
  --bg-basic-800: var(--color-neutral-800);
  --bg-basic-700: var(--color-neutral-700);
  --bg-basic-600: var(--color-neutral-600);
  --bg-basic-500: color-mix(in srgb, var(--brand-color) 100%, var(--white) 5%);
  --bg-basic-400: var(--color-neutral-400);
  --bg-basic-300: var(--color-neutral-300);
  --bg-basic-200: color-mix(in srgb, var(--brand-color) 100%, var(--white) 20%);
  --bg-basic-150: var(--color-neutral-150);
  --bg-basic-100: var(--color-neutral-100);
  --bg-basic-50: var(--color-neutral-50);
  --bg-basic-000-10: var(--color-alpha-10);
  --bg-basic-000-60: var(--color-alpha-60);
  --bg-basic-000-contrast: var(--color-alpha-contrast);
  --hidden-bg: var(--color-neutral-700);
  
  --bg-accent-12: var(--color-neutral-800);
  --bg-accent-13: var(--color-neutral-500);
  
  --border-basic-500: var(--color-neutral-500);
  --border-basic-400: var(--color-neutral-400);
  --border-basic-200: var(--color-neutral-200);
  --border-basic-000-40: var(--color-alpha-40);
  --border-basic-000-10: var(--color-alpha-10);
  --hidden-border: var(--color-neutral-400);
  
  --border-accent-12: var(--color-neutral-800);
  --border-accent-13: var(--color-neutral-500);
  
  --text-primary: var(--color-alpha-default);
  --text-secondary: var(--color-alpha-50);
  --text-contrast: var(--color-alpha-contrast);
  --text-banner-contrast: var(--color-alpha-contrast);
  
  --text-accent-12: var(--color-neutral-800);
  --text-accent-13: var(--color-neutral-500);
  
  --icon-basic-contrast: var(--color-alpha-contrast);
  --icon-basic-white: var(--color-alpha-contrast);
  --icon-basic-white-50: var(--color-alpha-50);
  --icon-basic-white-25: var(--color-alpha-25);
  --icon-basic-100: var(--color-neutral-100);
  --icon-basic-100-50: var(--color-neutral-100-50);
  
  --icon-accent-12: var(--color-neutral-800);
  --icon-accent-13: var(--color-neutral-500);
  
  --icon-default-sidebar: var(--color-alpha-50);
  --icon-active-sidebar: var(--color-alpha-default);
  --icon-default-category: var(--color-alpha-50);
  --icon-active-category: var(--color-alpha-default);
  
  --bg-step-back: var(--color-neutral-400);
  
  --bg-di-bg-default: var(--color-neutral-500);
  --bg-di-bg-hover: var(--color-neutral-400);
  --bg-di-bg-active: var(--color-neutral-400);
  --border-di-border-default: color-mix(in srgb, var(--brand-color) 100%, var(--white) 20%);
  --border-di-border-active: color-mix(in srgb, var(--brand-color) 100%, var(--white) 50%);
  --border-di-border-focus: var(--color-neutral-100);
  --text-di-text-placeholder: var(--color-alpha-50);
  --text-di-text: var(--color-alpha-default);
  --text-di-icon-default: var(--color-alpha-50);
  --text-di-icon-active: var(--color-alpha-default);
  
  --button-secondary-bg-default: color-mix(in srgb, var(--brand-color) 73%, var(--white) 27%);
  --button-secondary-bg-active: color-mix(in srgb, var(--brand-color) 38%, var(--white) 62%);
  --button-secondary-border-default: color-mix(in srgb, var(--brand-color) 52%, var(--white) 15%);
  --button-secondary-border-active: var(--color-alpha-10);
  --button-secondary-text-default: var(--color-alpha-default);
  --button-secondary-text-active: var(--color-alpha-contrast);
  --button-secondary-icon-default: var(--color-alpha-50);
  --button-secondary-icon-active: var(--color-alpha-contrast);
  
  /* Градиенты */
  --bg-gradient-0-700: linear-gradient(270deg, var(--brand-color), color-mix(in srgb, var(--brand-color) 0%, transparent));
  --bg-gradient-service-page: radial-gradient(67.63% 97.68% at 50% 0, var(--color-neutral-500) 0, var(--color-neutral-900) 64.25%, var(--color-neutral-1000) 87.18%, color-mix(in srgb, var(--brand-color) 95%, var(--black) 5%) 100%);
  --bg-gradient-collection-card: linear-gradient(180deg, var(--color-neutral-400) -149.6%, var(--color-neutral-800) 81.2%);
  --bg-gradient-loader: radial-gradient(104.17% 118.85% at 50% 0, var(--color-neutral-600) 0, var(--color-neutral-800) 40.64%, var(--color-neutral-900) 82.6%, var(--color-neutral-1000) 100%);
  --bg-gradient-bubble-menu: radial-gradient(35.44% 35.44% at 50% 64.56%, color-mix(in srgb, var(--brand-color) 90%, transparent) 46%, color-mix(in srgb, var(--brand-color) 90%, var(--black) 10%) 100%);
  --bg-gradient-vip-card: radial-gradient(138.69% 41.85% at 50% 0, var(--color-neutral-800) 0, var(--color-neutral-800) 30%, var(--color-neutral-800) 100%);
  
  --html-background: var(--color-neutral-900);
  --main-container-background: var(--color-neutral-500);
  --sidebar-desktop-background: var(--color-neutral-800);
  --sidebar-tablet-background: var(--color-neutral-800);
  --sidebar-mobile-background: var(--color-neutral-800);
}

/* Светлая тема */
.light,
.brand-crown-green.light {
  --brand-color: #05221E;
  
  --button-color: #f4dd62;
  --button-text-color: #FFFFFF;
  --gradient-button-start: color-mix(in srgb, var(--button-color) 100%, var(--white) 15%);
  --gradient-button-middle: var(--button-color);
  --gradient-button-end: color-mix(in srgb, var(--button-color) 100%, var(--black) 25%);
  --button-primary-bg-default: linear-gradient(180deg, var(--gradient-button-start) -24.36%, var(--gradient-button-middle) 23.01%, var(--gradient-button-end) 100%);
  --button-primary-bg-hover: linear-gradient(335deg, var(--gradient-button-start) 23.63%, var(--gradient-button-middle) 64.48%, var(--gradient-button-end) 116.85%);
  
  --color-neutral-1000: color-mix(in srgb, var(--brand-color) 5%, var(--white) 95%);
  --color-neutral-900: color-mix(in srgb, var(--brand-color) 10%, var(--white) 90%);
  --color-neutral-800: color-mix(in srgb, var(--brand-color) 25%, var(--white) 75%);
  --color-neutral-700: color-mix(in srgb, var(--brand-color) 40%, var(--white) 60%);
  --color-neutral-600: color-mix(in srgb, var(--brand-color) 55%, var(--white) 45%);
  --color-neutral-500: color-mix(in srgb, var(--brand-color) 73%, var(--white) 27%);
  --color-neutral-400: color-mix(in srgb, var(--brand-color) 62%, var(--white) 38%);
  --color-neutral-300: color-mix(in srgb, var(--brand-color) 52%, var(--white) 48%);
  --color-neutral-200: color-mix(in srgb, var(--brand-color) 38%, var(--white) 62%);
  --color-neutral-150: color-mix(in srgb, var(--brand-color) 80%, var(--black) 20%);
  --color-neutral-100: color-mix(in srgb, var(--brand-color) 70%, var(--black) 30%);
  --color-neutral-50: color-mix(in srgb, var(--brand-color) 60%, var(--black) 40%);
  
  --color-alpha-10: color-mix(in srgb, #27272a 10%, transparent);
  --color-alpha-15: color-mix(in srgb, #27272a 15%, transparent);
  --color-alpha-25: color-mix(in srgb, #27272a 25%, transparent);
  --color-alpha-40: color-mix(in srgb, #27272a 40%, transparent);
  --color-alpha-50: color-mix(in srgb, #27272a 50%, transparent);
  --color-alpha-default: #27272a;
}



/* Стили для аккордеона */
.accordion-content {
    transition: all 0.3s ease;
}
.accordion-content[style*="display: block"] {
    display: block !important;
}
.accordion-btn svg {
    transition: transform 0.2s ease;
}
.accordion-item.open .accordion-btn svg {
    transform: rotate(180deg);
}
.accordion-item {
    border: 1px solid transparent;
    border-radius: 24px;
    transition: all 0.1s ease-in-out;
}
.accordion-item:not(.open):hover {
    background: rgba(255,255,255,0.05);
    border-color: rgba(255,255,255,0.2) !important;
}
.accordion-item.open {
    background: transparent !important;
    border-color: rgba(255,255,255,0.2) !important;
}
.accordion-item.open .accordion-content > div > div {
    border: none !important;
}
.sidebar-mobile .accordion-trigger img {
    filter: brightness(0) invert(1);
    opacity: 0.4;
}

.sidebar-mobile .accordion-trigger img {
    filter: brightness(0) invert(1);
    opacity: 0.4;
}
img[src*="icon-vip.svg"],
img[src*="icon-promotions.svg"],
img[src*="icon-support.svg"] {
    filter: brightness(0) invert(1);
    opacity: 0.4;
}
.button-secondary-bg-default:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
    border-color: rgba(255, 255, 255, 0.5) !important;
}
.burger-menu-btn .material-icons,
.accordion-btn .material-icons,
.mobile-bottom-nav .burger-menu-btn .material-icons,
#payment-prev-btn .material-icons,
#payment-next-btn .material-icons {
    color: rgba(255, 255, 255, 0.5);
}

.burger-menu-btn:hover .material-icons,
.accordion-btn:hover .material-icons,
#payment-prev-btn:hover .material-icons,
#payment-next-btn:hover .material-icons {
    color: rgba(255, 255, 255, 1);
}



/* Стили кнопок */
.button-primary { background: var(--button-primary-bg-default); color: var(--button-text-color); border: none; cursor: pointer; transition: filter 0.2s ease; border-radius: 30px; font-size: 16px; font-weight: 600; white-space: nowrap; text-transform: uppercase; box-shadow: 0 10px 16px 0 rgba(0,0,0,0.15); }
.button-primary:hover { background: var(--button-primary-bg-hover); filter: brightness(1.2); }

.button-login { display: inline-flex; align-items: center; justify-content: center; background: transparent; color: #fff; border: 1px solid rgba(255,255,255,0.3); cursor: pointer; border-radius: 30px; font-size: 16px; font-weight: 600; text-transform: uppercase; padding: 12px 24px; transition: all 0.2s ease; }
.button-login:hover { background: rgba(255,255,255,0.1); border-color: rgba(255,255,255,0.5); }

.button-login-mobile { display: inline-flex; align-items: center; justify-content: center; background: transparent; color: #fff; border: 1px solid rgba(255,255,255,0.3); cursor: pointer; border-radius: 20px; font-size: 16px; font-weight: 600; text-transform: uppercase; padding: 8px 24px; transition: all 0.2s ease; }
.button-login-mobile:hover { background: rgba(255,255,255,0.1); border-color: rgba(255,255,255,0.5); }

body { font-family: "Segoe UI", -apple-system, sans-serif; line-height: 1.5; margin: 0; padding: 0; min-height: 100vh; }

.sidebar-menu-item { font-size: 16px; font-weight: 500; letter-spacing: 0.5px; }

.content-main-outer { padding-left: 30px; padding-right: 30px; }
.content-main { padding-left: 24px; padding-right: 24px; margin-bottom: 40px; }
.content-main, .content-main * { font-size: 17px; letter-spacing: 0.5px; line-height: 1.6; }
.content-main p { margin-top: 20px; margin-bottom: 20px; }

.top-main { position: absolute; left: 20px; top: 0; z-index: 10; height: 100%; max-width: 40%; }
h1 { font-size: 32px; font-weight: 700; line-height: 1.2; margin-bottom: 20px; text-shadow: 1px 1px 0 rgba(0,0,0,1); }
.brief { font-size: 18px; letter-spacing: 0.7px; line-height: 1.4; margin-bottom: 20px; }
.content-main h2 { font-size: 28px; color: var(--button-color); }
.content-main h3 { font-size: 24px; color: var(--button-color); }



/* Мобильная перестройка как с картинкой */
.mobile-banner-layout { display: flex !important; flex-direction: column !important; padding: 0 !important; margin: 0 !important; height: auto !important; }
.mobile-banner-layout .top-video { position: relative !important; display: block !important; width: 100% !important; height: auto !important; min-height: var(--video-mobile-height); object-fit: cover !important; object-position: center !important; order: 2; }
.mobile-banner-layout .top-main { position: relative !important; max-width: 100% !important; left: auto !important; top: auto !important; height: auto !important; z-index: auto !important; padding: 20px 16px 0 16px !important; width: 100% !important; order: 1; background: transparent !important; }
.mobile-banner-layout .top-main .button-primary { display: inline-flex !important; position: relative !important; margin: 20px 0 0 0 !important; left: auto !important; bottom: auto !important; order: 3; }
.mobile-banner-layout .video-overlay { display: none !important; }

/* Настройка видео desktop */
:root, .brand-crown-green { --video-container-height: 400px; --video-mobile-height: 200px; --overlay-color: #000000; }

.top-main-outer { position: relative; overflow: hidden; isolation: isolate; height: var(--video-container-height); }
.top-main-outer .top-video { position: absolute; top: 0; right: 0; width: auto; height: 100%; min-width: 100%; object-fit: cover; object-position: right center; z-index: 1; pointer-events: none; }
.top-main-outer .video-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(90deg, color-mix(in srgb, var(--overlay-color) 80%, transparent) 0%, color-mix(in srgb, var(--overlay-color) 80%, transparent) 20%, color-mix(in srgb, var(--overlay-color) 50%, transparent) 30%, color-mix(in srgb, var(--overlay-color) 30%, transparent) 40%, transparent 50%); z-index: 2; pointer-events: none; }
.top-main-outer .top-main { position: relative; z-index: 3; }

@media (max-width: 1023px) {
    .top-main-outer { display: flex !important; flex-direction: column !important; height: auto !important; }
    .top-main-outer .top-video { order: 2; position: relative !important; width: 100% !important; height: auto !important; min-height: var(--video-mobile-height); object-fit: cover; }
    .top-main-outer .video-overlay { display: none; }
    .top-main-outer .top-main { order: 1; position: relative !important; left: auto !important; top: auto !important; max-width: 100% !important; height: auto !important; padding: 20px 16px 0 16px !important; }
    .top-main-outer .top-main .button-primary { display: block !important; position: relative !important; margin: 20px auto !important; left: auto !important; bottom: auto !important; }
}

@media (max-width: 639px) {
    .mobile-banner-layout .top-video { min-height: 150px; }
}

