

/* Start:/local/templates/fluorite_v1/assets/css/styles.css?1780043697496*/
html {
	scrollbar-gutter: stable both-edges;
}
::-webkit-scrollbar {
	width: 8px;
}

::-webkit-scrollbar-track {
	background-color: #f1f5f9;
	border-radius: 4px;
	-webkit-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2);
}
 
::-webkit-scrollbar-thumb {
	background-color: #cbd5e1;
	border-radius: 4px;
}
 
::-webkit-scrollbar-thumb:hover {
	background-color: #94a3b8;
}
.fluorite-product-detail-action {
	cursor: pointer !important;
}
button {
	cursor: pointer !important;
}
/* End */


/* Start:/local/templates/fluorite_v1/assets/css/mobile.css?178004521142946*/
@charset "utf-8";
/* ================================================================
   FLUORITE — Mobile Adaptation Layer
   Хирургические правки только поверх main.css / site-header.css.
   Анимации, дизайн и логика секций не затронуты.
   ================================================================ */

/* ----------------------------------------------------------------
   1. BODY — убираем жёсткий overflow:hidden + 100vh/100vw.
      На мобилях body должен быть прокручиваемым контейнером.
      На десктопе (>767px) main.css управляет этим как и прежде.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {

  body.fluorite-page {
    overflow-x: hidden;
    overflow-y: auto;
    height: auto;
    min-height: 100svh;   /* small viewport height — не прыгает от адресной строки */
    width: 100%;
    max-width: 100%;
  }
}

/* ----------------------------------------------------------------
   2. SECTIONS CONTAINER — заменяем 100vh на 100dvh.
      dvh (dynamic) обновляется когда адресная строка скрывается.
      Уже частично исправлено в main.css @700px, дополняем до 767px.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  #sections-container {
    height: 100dvh;
    overflow: hidden;
  }
}

/* ----------------------------------------------------------------
   3. MENU WRAPPER — фиксированная обёртка меню.
      100vw вызывает горизонтальный скролл из-за скроллбара.
      100vh на iOS не учитывает адресную строку.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-staggered-menu-wrapper.fluorite-fixed-wrapper {
    width: 100%;
    height: 100dvh;
  }
}

/* ----------------------------------------------------------------
   4. BACKGROUND LAYERS — используем dvh вместо vh.
      position:fixed уже стоит, просто высоту исправляем.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-background-slider {
    height: 100dvh;
  }

  .fluorite-bg-text-wrapper {
    height: 100dvh;
  }
}

/* ----------------------------------------------------------------
   5. SEARCH — ограничиваем ширину на маленьких экранах.
   ---------------------------------------------------------------- */
@media (max-width: 480px) {
  .fluorite-ref-search-wrap {
    max-width: 150px;
    min-width: 120px;
  }

  .fluorite-ref-search__input {
    font-size: 16px;
  }
}

/* ----------------------------------------------------------------
   6. TOUCHABLE TARGETS — min 44×44px для кнопок (WCAG 2.5.5).
      Не меняем внешний вид, только область нажатия.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-sm-toggle,
  .fluorite-ref-search__button,
  .fluorite-ref-action,
  .fluorite-ref-cart {
    min-width: 44px;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .fluorite-ref-actions .fluorite-ref-action {
    transform: translateX(12px);
  }
}

/* ----------------------------------------------------------------
   7. COOKIE BANNER — уже адаптирован в site-header.css,
      дополняем safe-area для вырезов экрана (iPhone notch).
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-cookie-banner {
    bottom: max(16px, env(safe-area-inset-bottom));
    left: max(16px, env(safe-area-inset-left));
    right: max(16px, env(safe-area-inset-right));
  }
}

/* ----------------------------------------------------------------
   8. TABLET (768–1024px) — dvh для wrapper и container.
   ---------------------------------------------------------------- */
@media (min-width: 768px) and (max-width: 1024px) {
  .fluorite-staggered-menu-wrapper.fluorite-fixed-wrapper {
    height: 100dvh;
  }

  #sections-container {
    height: 100dvh;
  }
}

/* ================================================================
   FLUORITE — Mobile Patch 2 (2026-05-04)
   Страница /fluorite/#materials — конкретные баги
   ================================================================ */

/* ----------------------------------------------------------------
   9. HEADER — safe-area для плавающей шапки (iPhone notch/island).
      .fluorite-staggered-menu-header — position:absolute внутри fixed wrapper,
      top позиция считается от --fluorite-header-top (var CSS).
      Добавляем safe-area сверху.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  :root {
    --fluorite-header-top: calc(env(safe-area-inset-top, 0px) + 12px);
  }
}

/* ----------------------------------------------------------------
   10. MATERIALS — .card: фиксированная ширина 360px шире 320px экрана.
       Без этого фикса карточка вылезает за viewport → горизонтальный
       скролл на узких устройствах (iPhone SE, Galaxy Fold).
   ---------------------------------------------------------------- */
@media (max-width: 430px) {
  .card {
    width: 100%;
    max-width: calc(100vw - 36px); /* учитываем padding: 0 18px */
    height: clamp(340px, 43dvh, 390px);
    box-sizing: border-box;
  }

  .fluorite-card-wrapper {
    width: 100%;
    max-width: 100%;
  }
}

/* ----------------------------------------------------------------
   11. MATERIALS — .fluorite-info-block h1: слово «ГЛАЗУРИРОВАННОЕ» (15 симв.)
       в 44px ≈ 363px → шире 284px контейнера на 320px экране.
       overflow-wrap: normal (из main.css) запрещает разрыв внутри слова.
       Разрешаем безопасный перенос только на мобиле.
       Дизайн не меняется — просто строка переносится.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-info-block h1 {
    overflow-wrap: anywhere;
    word-break: break-word;
    hyphens: auto;
    -webkit-hyphens: auto;
  }
}

/* Дополнительное уменьшение на совсем узких (SE, Fold) */
@media (max-width: 374px) {
  .fluorite-info-block h1 {
    font-size: 36px;
  }
}

/* ----------------------------------------------------------------
   12. MATERIALS — .fluorite-controls: safe-area снизу.
       position:fixed; bottom:18px — без safe-area кнопки уходят
       под home indicator на iPhone X/11/12/13/14/15.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-controls {
    bottom: max(18px, env(safe-area-inset-bottom));
    /* Также ограничиваем от левого и правого выреза (landscape) */
    left: max(18px, env(safe-area-inset-left));
    right: max(18px, env(safe-area-inset-right));
  }
}

/* ----------------------------------------------------------------
   13. NEO HOME PAGE — min-height 100vh → 100dvh.
       neo-home-bitrix.css: body.fluorite-neo-home-page { min-height: 100vh }.
       На iOS Safari 100vh включает адресную строку → скачок.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  body.fluorite-neo-home-page {
    min-height: 100dvh;
  }
}

/* ----------------------------------------------------------------
   14. HOVER-ЗАЛИПАНИЕ НА ТАЧ: nav-btn, primary-btn.
       На тач-устройствах :hover залипает после тапа.
       Оборачиваем hover-правила в (hover: hover) — они уже есть
       в main.css, но без условия.
       Здесь добавляем :active как замену для тача.
   ---------------------------------------------------------------- */
@media (hover: none) {
  .fluorite-nav-btn:active {
    border-color: rgba(255, 255, 255, 0.5);
    background: rgba(255, 255, 255, 0.05);
  }

  .fluorite-primary-btn:active {
    background: #fff;
    color: #000;
    border-color: #fff;
  }
}

/* ----------------------------------------------------------------
   15. LANDSCAPE MOBILE — корректируем высоту секции и controls.
       При повороте на 90° высота экрана ≈ 375px — controls и card
       конкурируют за пространство.
   ---------------------------------------------------------------- */
@media (orientation: landscape) and (max-height: 500px) {
  #materials main {
    padding-top: 70px;
    padding-bottom: 110px;
    min-height: 100dvh;
  }

  .card {
    height: 200px;
    width: auto;
    max-width: none;
    aspect-ratio: 3 / 4;
  }

  .fluorite-controls {
    bottom: max(10px, env(safe-area-inset-bottom));
  }

  .fluorite-info-block {
    margin-top: 16px;
  }

  .fluorite-info-block h1 {
    font-size: 32px;
    margin-bottom: 10px;
  }

  .fluorite-info-block p {
    font-size: 12px;
    line-height: 1.4;
  }

  .fluorite-info-block .fluorite-cta {
    margin-top: 12px;
    margin-bottom: 10px;
  }
}

/* ================================================================
   FLUORITE — Mobile Patch 3 (2026-05-04)
   Свайп вместо кнопок + корректировка размеров
   ================================================================ */

/* ----------------------------------------------------------------
   16. NAV BUTTONS — скрываем на мобиле, навигация через свайп.
       Прогресс-бар и счётчик остаются — визуальная обратная связь.
       Кнопки скрыты через visibility (остаются в DOM для click() из swipe JS).
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-nav-btn {
    /* Визуально скрыты, но остаются в DOM — swipe JS вызывает .click() */
    width: 0;
    height: 0;
    min-width: 0;
    min-height: 0;
    border: none;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;   /* не мешают тапам */
    flex: 0 0 0;
  }

  /* Счётчик подтягивается влево, прогресс-бар занимает всю ширину */
  .fluorite-controls {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 16px;
  }

  .fluorite-progress-bar {
    margin: 0;   /* убираем margin: 0 18px — теперь grid справится */
  }

  .fluorite-counter {
    font-size: 18px;
    letter-spacing: 1px;
    white-space: nowrap;
  }
}

/* ----------------------------------------------------------------
   17. CARD HEIGHT на 431–767px (между большими мобилами).
       Блок 10 закрыл ≤430px (420px). Здесь — 431–767px.
       На 375px iPhone 13: 420px карточка отлично, дальше чуть больше.
   ---------------------------------------------------------------- */
@media (min-width: 431px) and (max-width: 767px) {
  .card {
    width: 100%;
    max-width: min(420px, calc(100vw - 36px));
    height: clamp(380px, 55vw, 460px);
  }

  .fluorite-card-wrapper {
    width: 100%;
    display: flex;
    justify-content: center;
  }
}

/* ----------------------------------------------------------------
   18. INFO BLOCK — шрифты и отступы на мобиле.
       h1 уже фикснут в patch 2 (overflow-wrap, 36px на ≤374px).
       Здесь — точечные улучшения читаемости.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-info-block .category {
    font-size: 11px;
    letter-spacing: 4px;
    margin-bottom: 10px;
  }

  .fluorite-info-block p {
    font-size: 14px;
    line-height: 1.6;
    max-width: 100%;
  }

  /* Подсказка «свайп» — появляется один раз при первом заходе */
  #materials-swipe-hint {
    position: absolute;
    bottom: 54px;
    z-index: 6;
    left: 50%;
    transform: translateX(-50%);
    font-size: 10px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.5);
    white-space: nowrap;
    pointer-events: none;
    animation: hintFade 3s ease-out 1.5s forwards;
    opacity: 0;
  }

  @keyframes hintInStay {
    from { opacity: 0;   transform: translateX(-50%) translateY(4px); }
    to   { opacity: 0.5; transform: translateX(-50%) translateY(0); }
  }

  @keyframes hintFade {
    0%   { opacity: 0; transform: translateX(-50%) translateY(4px); }
    20%  { opacity: 1; transform: translateX(-50%) translateY(0); }
    70%  { opacity: 1; }
    100% { opacity: 0; }
  }
}

/* Landscape — ещё немного компактнее */
@media (orientation: landscape) and (max-height: 500px) {
  .fluorite-nav-btn {
    width: 0; height: 0; border: none; padding: 0;
    overflow: hidden; opacity: 0; pointer-events: none; flex: 0 0 0;
  }
  .fluorite-controls {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 16px;
  }
}

/* ================================================================
   FLUORITE — Mobile Patch 4 (2026-05-04)
   ================================================================ */

/* ----------------------------------------------------------------
   19. #materials main padding-top — карточка уходила под header.
       Формула: safe-area-inset-top + 12px (header-top offset)
                + 48px (высота header) + 16px (отступ над фото)
              = safe-area-inset-top + 76px
       max(110px, ...) — на устройствах без notch остаётся 110px.
       Фото не обрезается — просто отступает ниже.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  #materials main {
    padding-top: max(110px, calc(env(safe-area-inset-top, 0px) + 76px));
  }
}

/* ----------------------------------------------------------------
   20. SWIPE HINT — скрыт на десктопе, виден только на тач-мобиле.
       По умолчанию display:none, включается через mobile media.
   ---------------------------------------------------------------- */
#materials-swipe-hint {
  display: none;
}

@media (max-width: 767px) and (hover: none) {
  #materials-swipe-hint {
    display: block;
  }
}

/* ================================================================
   FLUORITE — Mobile Patch 5 (2026-05-04)
   Z-index fix — текст не должен лезть поверх меню
   ================================================================ */

/* ----------------------------------------------------------------
   21. Z-INDEX FIX — main.css на ≤700px ставит .fluorite-info-block: 10040,
       .fluorite-controls: 10020, .fluorite-primary-btn: 10041 — это ВЫШЕ меню (z 240).
       При открытии меню или при overlap текст info-block лезет
       поверх menu panel.
       Фикс: на мобиле снижаем эти значения так, чтобы было:
       — меню (240, 110, 120) > controls > info-block > bg-слои
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-portfolio-authors {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
  }

  .fluorite-portfolio-authors__layout {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }

  .fluorite-portfolio-authors__gallery {
    width: 100%;
    max-width: 100%;
    gap: 8px;
    justify-content: space-between;
    overflow: hidden;
  }

  .fluorite-portfolio-authors__column {
    min-width: 0;
  }

  .fluorite-portfolio-authors__column--1 {
    width: 30%;
  }

  .fluorite-portfolio-authors__column--2 {
    width: 34%;
  }

  .fluorite-portfolio-authors__column--3 {
    width: 31%;
  }

  .fluorite-portfolio-authors__column--1 .fluorite-portfolio-authors__photo-card,
  .fluorite-portfolio-authors__column--2 .fluorite-portfolio-authors__photo-card,
  .fluorite-portfolio-authors__column--3 .fluorite-portfolio-authors__photo-card {
    width: 100%;
    height: auto;
    aspect-ratio: 0.91;
  }

  .fluorite-hotspots-layer,
  div[role="group"][aria-label="Hotspots"],
  div[role="group"][aria-label="Hotspots"] ul.hotspot-list,
  product-hotspot,
  product-hotspot button {
    pointer-events: auto;
  }

  product-hotspot [data-action="quick-add"] {
    display: none !important;
  }

  product-hotspot [data-action="open-hotspot"] {
    display: block !important;
  }

  product-hotspot dialog[open] {
    display: block !important;
  }

  product-hotspot dialog {
    min-width: 0;
    width: min(252px, calc(100vw - 40px));
    padding: 4px;
    white-space: normal;
  }

  product-hotspot dialog > div {
    gap: 8px;
    grid-template-columns: 78px 1fr;
  }

  product-hotspot dialog img {
    width: 78px;
    min-width: 78px;
  }

  product-hotspot dialog .product-info {
    gap: 3px;
    padding: 4px 8px 4px 0;
    min-width: 0;
  }

  product-hotspot dialog .product-info h2 {
    font-size: 13px;
    line-height: 1.1;
    overflow-wrap: anywhere;
  }

  product-hotspot dialog .product-info span {
    font-size: 10px;
    line-height: 1.15;
    overflow-wrap: anywhere;
  }

  product-hotspot dialog .product-info p,
  product-hotspot dialog .product-info a {
    font-size: 12px;
    line-height: 1.2;
    margin-top: 4px;
    -webkit-tap-highlight-color: transparent;
  }
  product-hotspot dialog .product-info header {
    display: flex;
    flex-direction: column;
    gap: 2px;
    margin: 0;
  }
  product-hotspot dialog .product-info a:focus,
  product-hotspot dialog .product-info a:focus-visible {
    outline: 1px solid rgba(255, 255, 255, 0.85);
    outline-offset: 2px;
    border-radius: 4px;
  }

  .fluorite-overlay-close {
    top: 60px;
  }

  .fluorite-pdf-controls {
    bottom: 10px;
    gap: 8px;
    padding: 6px 10px;
    border-radius: 22px;
  }

  .fluorite-pdf-btn {
    width: 24px;
    height: 24px;
  }

  .fluorite-pdf-btn svg {
    width: 14px;
    height: 14px;
  }

  .fluorite-pdf-page-num {
    font-size: 10px;
    letter-spacing: 1px;
  }

  body.fluorite-pdf-mobile-fullscreen-open {
    overflow: hidden;
  }

  .fluorite-custom-pdf-viewer.fluorite-is-mobile-fullscreen {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100dvh;
    aspect-ratio: auto;
    z-index: 999999;
    border-radius: 0;
    background: #000;
  }

  .fluorite-custom-pdf-viewer.fluorite-is-mobile-fullscreen .fluorite-pdf-controls {
    bottom: max(14px, env(safe-area-inset-bottom));
    opacity: 1;
  }

  .fluorite-info-block {
    z-index: 5;
  }

  /* CTA wrapper внутри info-block — поднимаем относительно info-block,
     но всё равно ниже меню (т.к. info-block z-index 5 создаёт stacking ctx) */
  .fluorite-info-block .fluorite-cta {
    z-index: 6;
  }

  /* primary-btn — внутри .fluorite-cta, остаётся на 7 в этом stacking контексте */
  .fluorite-cta .fluorite-primary-btn {
    z-index: 7;
  }

  /* Controls — fixed, ниже меню (240), но выше всего остального */
  .fluorite-controls {
    z-index: 100;
  }

  /* Swipe hint — внутри секции, не должен лезть на меню */
  #materials-swipe-hint {
    z-index: 50;
  }
}

/* MATERIALS_MOBILE_TIGHT_START — reversible 2026-05-05 */
@media (max-width: 767px) {
  #materials main {
    padding-top: max(96px, calc(env(safe-area-inset-top, 0px) + 72px));
    padding-bottom: 128px;
    overflow: hidden;
  }

  #materials .card {
    height: clamp(300px, 39dvh, 360px);
    background-color: #000;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }

  #materials .fluorite-info-block {
    margin-top: 22px;
  }

  #materials .fluorite-info-block .category {
    margin-bottom: 6px;
  }

  #materials .fluorite-info-block h1 {
    font-size: clamp(34px, 8.4vw, 42px);
    margin-bottom: 10px;
    line-height: 0.98;
    max-width: 100%;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: manual;
  }

  #materials .fluorite-info-block .fluorite-cta {
    margin-bottom: 12px;
  }

  #materials .fluorite-info-block p {
    margin-top: 0;
    line-height: 1.35;
    transform: none;
  }
}
/* MATERIALS_MOBILE_TIGHT_END */

/* ================================================================
   FLUORITE — Mobile Patch 6 (collections + product)
   /fluorite/collections/, /fluorite/collections/<mat>/,
   /fluorite/collections/<mat>/<sku>/
   ================================================================ */

/* ----------------------------------------------------------------
   22. HEADER PADDING — карточки/контент уходят под header pill.
       На 900px collections.css ставит padding-top: 90px, но при
       Dynamic Island (safe-area 59px + 12px + 48px = 119px) — мало.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-collections-page {
    padding-top: max(90px, calc(env(safe-area-inset-top, 0px) + 76px));
  }
}

/* ----------------------------------------------------------------
   23. HOVER STATES — на тач первый тап триггерит :hover, состояние
       залипает. Сбрасываем hover-эффекты, добавляем :active feedback.
   ---------------------------------------------------------------- */
@media (hover: none) {
  .fluorite-product-card:hover {
    background: transparent;
  }
  .fluorite-product-card:active {
    background: rgba(255, 255, 255, 0.04);
  }

  .fluorite-product-detail-thumb:hover {
    transform: none;
    border-color: rgba(255, 255, 255, 0.12);
  }
  .fluorite-product-detail-thumb.fluorite-is-active {
    border-color: rgba(255, 255, 255, 0.4);
  }

  .fluorite-product-detail-stage__nav:hover,
  .fluorite-product-detail-action:hover,
  .fluorite-product-detail-docs__item:hover,
  .fluorite-product-detail-specs__more:hover,
  .fluorite-collections-back-link:hover,
  .fluorite-collections-filter-btn:hover,
  .fluorite-product-showroom-stock__meta a:hover {
    background: inherit;
    color: inherit;
    transform: none;
    border-color: inherit;
  }

  .fluorite-product-detail-action:active {
    transform: scale(0.98);
  }
  .fluorite-product-detail-stage__nav:active {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.35);
  }
  .fluorite-product-detail-docs__item:active {
    background: #101010;
    color: #fff;
  }
}

/* ----------------------------------------------------------------
   24. ДЛИННЫЕ НАЗВАНИЯ — "Люстра подвесная SACREMENT GOLD FL1181-30P"
       на 320px переполняет контейнер. Безопасный перенос.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-product-card__collection-name,
  .fluorite-product-card__article,
  .fluorite-product-detail-info__title,
  .fluorite-product-detail-info__article,
  .fluorite-product-detail-info__collection {
    overflow-wrap: anywhere;
    word-break: break-word;
    hyphens: auto;
    -webkit-hyphens: auto;
  }
}

@media (max-width: 374px) {
  .fluorite-product-detail-info__title {
    font-size: var(--fluorite-fs-2xl);
  }
}

/* ----------------------------------------------------------------
   25. TOUCH TARGETS — аккордеоны, миниатюры галереи, nav-кнопки.
       WCAG 2.5.5 минимум 44×44px.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-product-detail-panel__toggle {
    min-height: 56px;
    padding: 14px 4px;
  }

  .fluorite-product-detail-thumb {
    min-height: 64px;
    min-width: 64px;
  }

  .fluorite-product-detail-stage__nav {
    width: 48px;
    height: 48px;
  }
}

/* ----------------------------------------------------------------
   26. STICKY ADD-TO-CART — на длинной странице товара кнопка
       уезжает вниз. Делаем sticky с safe-area для home indicator.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-product-detail-actions {
    position: sticky;
    bottom: 0;
    z-index: 100;
    background: linear-gradient(180deg, rgba(7, 7, 7, 0) 0, var(--fluorite-bg-dark, #070707) 18px);
    padding-top: 16px;
    padding-bottom: max(16px, env(safe-area-inset-bottom));
    margin-left: -18px;
    margin-right: -18px;
    padding-left: 18px;
    padding-right: 18px;
  }
}

/* ----------------------------------------------------------------
   27. LIGHTBOX + SPECS MODAL — safe-area для close-кнопки и nav.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-product-lightbox {
    padding-top: max(16px, env(safe-area-inset-top));
    padding-bottom: max(16px, env(safe-area-inset-bottom));
    padding-left: max(16px, env(safe-area-inset-left));
    padding-right: max(16px, env(safe-area-inset-right));
  }

  .fluorite-product-lightbox__close {
    top: max(18px, env(safe-area-inset-top));
    right: max(18px, env(safe-area-inset-right));
  }

  .fluorite-product-lightbox__nav--prev {
    left: max(16px, env(safe-area-inset-left));
  }
  .fluorite-product-lightbox__nav--next {
    right: max(16px, env(safe-area-inset-right));
  }

  .fluorite-product-specs-modal {
    padding-top: max(16px, env(safe-area-inset-top));
    padding-bottom: max(16px, env(safe-area-inset-bottom));
    padding-left: max(16px, env(safe-area-inset-left));
    padding-right: max(16px, env(safe-area-inset-right));
  }
}

/* ----------------------------------------------------------------
   28. SPECS PRIMARY TABLE — на 320px ключ 120px съедает 38% экрана.
   ---------------------------------------------------------------- */
@media (max-width: 374px) {
  .fluorite-product-detail-specs--primary .fluorite-product-detail-specs__row {
    grid-template-columns: 96px minmax(0, 1fr);
    font-size: 13px;
  }
}

/* ----------------------------------------------------------------
   29. SHOWROOM STOCK — telephone link tap target.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-product-showroom-stock__meta a {
    display: inline-block;
    min-height: 32px;
    padding: 6px 0;
  }
}

/* ----------------------------------------------------------------
   30. (зарезервировано — z-index безопасность)
       Текущий аудит безопасен. Блок оставлен для будущих фиксов.
   ---------------------------------------------------------------- */

/* ================================================================
   FLUORITE ? Mobile Patch 7 (2026-05-07)
   ??????? ? ?????????? ??????
   ================================================================ */

/* ----------------------------------------------------------------
   31. TOAST ? ?????????? ??????????? ??????????? ?? ???????
       (add-to-cart fail, ???????? ? ???????).
       ??? media query ? ????? ? ?? ?????? ? ?? ????????.
   ---------------------------------------------------------------- */
.fluorite-toast {
  position: fixed;
  bottom: max(24px, env(safe-area-inset-bottom));
  left: 50%;
  transform: translateX(-50%);
  z-index: 9999;
  padding: 12px 22px;
  border-radius: 999px;
  background: rgba(18, 18, 18, 0.92);
  border: 1px solid rgba(255, 255, 255, 0.14);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  color: #fff;
  font-size: 14px;
  line-height: 1.4;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.22s ease;
}

.fluorite-toast.fluorite-is-visible {
  opacity: 1;
}

/* ----------------------------------------------------------------
   32. CART PAGE ? safe-area ??? ??????? ??? ?????? ? cart-checkout.css.
       ????? ?????????: ?? ????? ????? ??????????? (320px) ?????
       ?? ?????? ??????????.
   ---------------------------------------------------------------- */
@media (max-width: 374px) {
  .fluorite-cart-summary__row--total strong {
    font-size: 26px;
  }

  .fluorite-cart-item__title {
    font-size: 22px;
  }

  .fluorite-cart-item__line-total {
    font-size: 22px;
  }
}

/* ----------------------------------------------------------------
   33. CHECKOUT ? ?????? ???????????? ?????? sticky ?? ??????.
       ??? ???????? ??????????? ?????????? viewport ???????? ?
       ?????? ?????? ?????????? ???????.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-checkout-actions {
    position: sticky;
    bottom: 0;
    z-index: 5;
    background: linear-gradient(to bottom, transparent 0, rgba(7, 7, 7, 0.97) 18px);
    padding-top: 16px;
    padding-bottom: max(12px, env(safe-area-inset-bottom));
  }
}

/* ================================================================
   FLUORITE — Mobile Patch 8 (2026-05-07)
   /fluorite/#portfolio — карточки проектов на тач-устройствах
   ================================================================ */

/* ----------------------------------------------------------------
   34. PROJECT CARD TAP — снимаем 300ms-задержку и tap-highlight,
       чтобы клик срабатывал моментально.
   ---------------------------------------------------------------- */
.fluorite-project-card,
.fluorite-project-card * {
  -webkit-tap-highlight-color: transparent;
}

.fluorite-project-card[data-project] {
  touch-action: manipulation;
  cursor: pointer;
}

/* ----------------------------------------------------------------
   35. OVERLAY SPAN — текст «Открыть проект» поверх фото не должен
       перехватывать касание (на тач overlay получает opacity:1 и
       его span ловит клик первым).
   ---------------------------------------------------------------- */
.fluorite-project-card-overlay,
.fluorite-project-card-overlay * {
  pointer-events: none;
}

/* ----------------------------------------------------------------
   36. HOVER на тач — отключаем transform/scale, оставляем только
       :active feedback. Без этого карточка залипает приподнятой.
   ---------------------------------------------------------------- */
@media (hover: none) {
  .fluorite-project-card:hover {
    transform: none;
  }
  .fluorite-project-card:hover .fluorite-preview-img {
    transform: none;
  }
  .fluorite-project-card:hover .fluorite-project-card-overlay {
    opacity: 0;
  }
  .fluorite-project-card:active {
    transform: scale(0.98);
    transition: transform 0.1s ease-out;
  }
}

/* ----------------------------------------------------------------
   37. PORTFOLIO GRID на мобиле — единая колонка, нормальные отступы.
       main.css даёт padding: 120px 5% 60px и minmax(450px, 1fr).
       На 375px 5% = 18px, но карточка хочет 450px → надо сжать.
       @ 1200px main.css уже ставит 1fr, но gap 40px и font-size
       project-info остаются десктопные → подгоняем.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  #portfolio {
    padding-left: 18px;
    padding-right: 18px;
  }

  .fluorite-portfolio-grid {
    grid-template-columns: 1fr;
    gap: 22px;
    max-width: 100%;
  }

  .fluorite-project-card {
    border-radius: 18px;
  }

  .fluorite-project-image-preview {
    aspect-ratio: 16 / 11;
  }

  .fluorite-project-info {
    padding: 18px 18px 22px;
  }

  .fluorite-project-info h3 {
    font-size: 18px;
    line-height: 1.15;
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  .fluorite-project-info p {
    font-size: 14px;
  }

  .fluorite-portfolio-header {
    margin-bottom: 32px;
  }

  .fluorite-portfolio-header .fluorite-section-tag {
    font-size: clamp(28px, 8.4vw, 44px);
    margin-top: 10px;
    margin-bottom: 14px;
  }
}

/* ----------------------------------------------------------------
   38. PROJECT OVERLAY на мобиле — safe-area для close-кнопки,
       отступы для нотча, корректное поведение overflow.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-project-overlay {
    padding-top: max(120px, calc(env(safe-area-inset-top, 0px) + 80px)) !important;
    padding-bottom: max(60px, env(safe-area-inset-bottom)) !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .fluorite-overlay-content {
    flex-direction: column !important;
    gap: 20px !important;
  }

  .fluorite-overlay-image-wrapper {
    flex: none !important;
    max-height: none !important;
    width: 100% !important;
  }

  .fluorite-overlay-info {
    flex: none !important;
    width: 100% !important;
  }

  .fluorite-overlay-title {
    font-size: clamp(28px, 7vw, 38px) !important;
    line-height: 1 !important;
  }

  .fluorite-overlay-desc {
    font-size: 14px !important;
    line-height: 1.6 !important;
  }

  .fluorite-overlay-close {
    top: max(18px, env(safe-area-inset-top)) !important;
    right: max(18px, env(safe-area-inset-right)) !important;
    width: 44px !important;
    height: 44px !important;
    z-index: 10 !important;
  }
}


/* ================================================================
   FLUORITE — Mobile Patch 9 (2026-05-07)
   #brand — секция «О бренде»: padding, fluorite-brand-content, PDF-viewer
   ================================================================ */

/* ----------------------------------------------------------------
   39. #brand PADDING на мобиле — 120px top слишком много для
       header-pill высотой ~60px. Приводим к той же формуле что
       у других скролл-секций: safe-area + 64px запас.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  #brand {
    padding-top: max(80px, calc(env(safe-area-inset-top, 0px) + 64px));
    padding-left: 18px;
    padding-right: 18px;
    padding-bottom: 40px;
  }
}

/* ----------------------------------------------------------------
   40. BRAND-CONTENT на мобиле — дочерние флекс-элементы в колонке
       могут иметь неверные flex-значения из строчной раскладки.
       Явно ставим flex: none + 100% ширину для чёткого стека.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-brand-content {
    width: 100%;
    gap: 24px;
  }
  .fluorite-brand-image-wrapper {
    flex: none;
    width: 100%;
  }
  .fluorite-brand-text-content {
    flex: none;
    width: 100%;
  }
  /* Выравниваем статы и описание по левому краю на мобиле */
  .fluorite-brand-text-content {
    align-items: flex-start;
    text-align: left;
  }
  .fluorite-brand-text-content .fluorite-brand-desc {
    margin-left: 0;
  }
  .fluorite-brand-text-content .fluorite-brand-stats {
    justify-content: flex-start;
  }
}

/* ----------------------------------------------------------------
   41. TABLET (768–1199px) — fluorite-brand-content в колонке, правильный
       padding для #brand и нормальная ширина компонентов.
   ---------------------------------------------------------------- */
@media (min-width: 768px) and (max-width: 1199px) {
  #brand {
    padding: max(100px, calc(env(safe-area-inset-top, 0px) + 80px)) 5% 48px;
  }
  .fluorite-brand-content {
    gap: 32px;
  }
  .fluorite-portfolio-certificates {
    margin-top: clamp(48px, 5vh, 64px);
  }
}

/* ----------------------------------------------------------------
   42. PDF-VIEWER — на тач-устройствах делаем контролы всегда видимыми.
       Уже есть в main.css (hover: none), но safe-area bottom мало.
       Добавляем явный bottom для мобила чтобы не перекрывалось
       home indicator.
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-brand-image-wrapper {
    border-radius: 16px;
  }
  .fluorite-custom-pdf-viewer {
    aspect-ratio: auto;
    min-height: 50vh;
  }
}

/* ================================================================
   FLUORITE — Mobile Patch 7 (2026-05-19)
   Регресс: MATERIALS_MOBILE_TIGHT вернул overflow-wrap:normal для
   #materials .fluorite-info-block h1 (выше специфичность, идёт позже файла),
   отменив фикс Patch-2 #11. Длинное «ГЛАЗУРИРОВАННОЕ» (15 симв.)
   на ≤360px шире контейнера → обрезается (#materials main
   overflow:hidden). Точечно возвращаем безопасный перенос +
   уменьшаем кегль ТОЛЬКО на узких экранах. Десктоп и 375px+ — без изменений.
   ================================================================ */
/* MATERIALS_NARROW_WRAP_START — reversible 2026-05-19 */
@media (max-width: 360px) {
  #materials .fluorite-info-block h1 {
    font-size: clamp(28px, 8.4vw, 34px);
    overflow-wrap: anywhere;
    word-break: break-word;
    hyphens: auto;
    -webkit-hyphens: auto;
  }
}
/* MATERIALS_NARROW_WRAP_END */

/* ================================================================
   FLUORITE — Mobile Patch 8 (2026-05-19)
   Текст #materials лез ПОВЕРХ виджета мессенджеров и бургер-меню.
   Причина: header.php грузит mobile.css (139) ДО main.css (157),
   Patch-5 #21 (.fluorite-info-block{z-index:5}) и main.css ≤700px
   (.fluorite-info-block{z-index:10040}) имеют одну специфичность (0,1,0) —
   побеждает позже-загруженный main.css → текст с z 10040 был выше
   .fluorite-side-nav (9999), чата (10000) и меню (site-header 240).
   Фикс: те же значения, но селектор #materials… (специфичность
   1,1,0) — бьёт main.css независимо от порядка файлов.
   Иерархия: меню(240)/виджет(9999) > controls(100) > info-block(5).
   Только ≤767px; десктоп не затронут.
   ================================================================ */
/* MATERIALS_ZFIX_START — reversible 2026-05-19 */
@media (max-width: 767px) {
  #materials .fluorite-info-block        { z-index: 5; }
  #materials .fluorite-info-block .fluorite-cta   { z-index: 6; }
  #materials .fluorite-cta .fluorite-primary-btn  { z-index: 7; }
  #materials .fluorite-controls          { z-index: 100; }
}
/* MATERIALS_ZFIX_END */

/* ----------------------------------------------------------------
   FONT-SIZE AUDIT (mobile): поля ввода <16px заставляют iOS/Android
   зумить вьюпорт при фокусе и текст уезжает за экран. Минимум 16px.
   .fluorite-ref-search__input база 14px (site-header.css:175),
   .chat-input база 14px (milana_style.css:370).
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  /* спец. .wrap .input (0,2,0) перебивает базовое site-header.css
     .fluorite-ref-search__input 14px, т.к. site-header.css грузится
     ПОСЛЕ mobile.css (header.php:139 vs :140) при равной спецификации */
  .fluorite-ref-search-wrap .fluorite-ref-search__input { font-size: 16px; }
  .milana-chat-widget .chat-input { font-size: 16px; }
}


/* ----------------------------------------------------------------
   Галерея товара на мобиле: навигация свайпом (стрелки скрыты) +
   подсказка «← свайп →» (CSS-only, keyframe hintFade выше).
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-product-detail-stage__nav { display: none; }
}
.fluorite-gallery-swipe-hint { display: none; }
@media (max-width: 767px) and (hover: none) {
  .fluorite-gallery-swipe-hint {
    display: block;
    position: absolute;
    bottom: 14px; left: 50%; transform: translateX(-50%);
    z-index: 5;
    font-size: 10px; letter-spacing: 0.15em; text-transform: uppercase;
    color: rgba(255, 255, 255, 0.55);
    pointer-events: none;
    opacity: 0;
    animation: hintFade 3s ease-out 1.2s forwards;
  }
}


/* ----------------------------------------------------------------
   Лайтбокс (полноэкранный просмотр) на мобиле: скрыть стрелки ‹ ›,
   навигация свайпом (attachSwipe уже навешан) + та же подсказка
   .fluorite-gallery-swipe-hint (стиль/keyframe hintFade выше).
   ---------------------------------------------------------------- */
@media (max-width: 767px) {
  .fluorite-product-lightbox__nav { display: none; }
}

/* End */


/* Start:/local/templates/fluorite_v1/assets/css/site-header.css?178004537517515*/
@charset "utf-8";
:root {
  --fluorite-header-top: calc(var(--fluorite-bx-panel-offset, 0px) + 20px);
}

.fluorite-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.fluorite-staggered-menu-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 240;
  pointer-events: none;
}

.fluorite-staggered-menu-wrapper.fluorite-fixed-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100dvh;
  z-index: 240;
  overflow: hidden;
}

.fluorite-staggered-menu-header {
  position: absolute;
  top: var(--fluorite-header-top);
  left: 50%;
  transform: translateX(-50%);
  width: calc(99% - 20px);
  max-width: 1800px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 20px 0 10px;
  background: rgba(255, 255, 255, 0.70);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-radius: 12px;
  pointer-events: auto;
  z-index: 20;
  box-shadow: 0 5px 25px rgba(0, 0, 0, 0.2);
}

.fluorite-staggered-menu-header > * {
  pointer-events: auto;
}

.fluorite-sm-toggle {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  background-color: #000000;
  border-radius: 50%;
  border: none;
  cursor: pointer;
  color: #ffffff !important;
  font-weight: 500;
  line-height: 1;
  overflow: visible;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
  transition: transform 0.2s ease, background-color 0.2s ease;
}

.fluorite-sm-toggle:hover {
  transform: scale(1.05);
  background-color: #1a1a1a;
}

.fluorite-sm-toggle:focus-visible {
  outline: 2px solid #000000;
  outline-offset: 4px;
}

.fluorite-sm-icon {
  position: relative;
  width: 14px;
  height: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  will-change: transform;
  transition: transform 0.35s ease;
}

.fluorite-sm-icon-line {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 2px;
  background: currentColor;
  border-radius: 2px;
  margin-left: -7px;
  margin-top: -1px;
  transform-origin: center center;
  will-change: transform;
  transition: transform 0.35s ease;
}

.fluorite-sm-icon-line-v {
  transform: rotate(90deg);
}

body.fluorite-menu-open .fluorite-sm-icon {
  transform: rotate(225deg);
}

.fluorite-ref-search-wrap {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 258px;
  pointer-events: auto;
  --fluorite-search-marquee-font: "Consolas", "SFMono-Regular", "Liberation Mono", "Courier New", monospace;
}

.fluorite-ref-search {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  height: 40px;
  padding: 0 12px 0 16px;
  background: #111111;
  border: 1px solid rgba(0, 0, 0, 0.88);
  border-radius: 16px;
  box-sizing: border-box;
  overflow: hidden;
}

.fluorite-ref-search::before {
  content: "Поиск товаров ...";
  position: absolute;
  left: 100%;
  top: 50%;
  transform: translateY(-50%);
  max-width: calc(100% - 58px);
  white-space: nowrap;
  color: rgba(255, 255, 255, 0.75);
  font-size: 14px;
  line-height: 1;
  font-family: var(--fluorite-search-marquee-font);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  pointer-events: none;
  z-index: 1;
  animation: fluoriteSearchMarquee 7s linear infinite;
}

.fluorite-ref-search__input {
  position: relative;
  z-index: 2;
  flex: 1;
  min-width: 0;
  border: 0;
  outline: none;
  background: transparent;
  color: #ffffff;
  font-size: 14px;
  font-weight: 400;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

.fluorite-ref-search__input::placeholder {
  color: transparent;
}

.fluorite-ref-search__input::-webkit-search-cancel-button {
  filter: brightness(0) invert(1);
  opacity: 1;
}

.fluorite-ref-search:has(.fluorite-ref-search__input:focus)::before,
.fluorite-ref-search:has(.fluorite-ref-search__input:not(:placeholder-shown))::before {
  display: none;
}

.fluorite-ref-search__button > .fluorite-ref-search__marquee {
  display: none;
}

.fluorite-ref-search__marquee {
  position: absolute;
  left: 16px;
  right: 52px;
  top: 50%;
  transform: translateY(-50%);
  overflow: hidden;
  pointer-events: none;
  z-index: 1;
}

.fluorite-ref-search__marquee-track {
  display: inline-block;
  white-space: nowrap;
  color: rgba(255, 255, 255, 0.75);
  font-size: 14px;
  line-height: 1;
  font-family: var(--fluorite-search-marquee-font);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  animation: fluoriteSearchMarquee 9s linear infinite;
}

.fluorite-ref-search__input:focus ~ .fluorite-ref-search__marquee,
.fluorite-ref-search__input:not(:placeholder-shown) ~ .fluorite-ref-search__marquee {
  display: none;
}

@keyframes fluoriteSearchMarquee {
  0% {
    transform: translate(0, -50%);
  }
  100% {
    transform: translate(-320px, -50%);
  }
}

.fluorite-ref-search__button {
  position: relative;
  z-index: 2;
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: #ffffff;
  cursor: pointer;
}

.fluorite-ref-search__button svg {
  width: 18px;
  height: 18px;
}

.fluorite-search-suggest {
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  width: 100%;
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 12px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.12);
  overflow: hidden;
}

.fluorite-search-suggest__state {
  padding: 12px 14px;
  color: rgba(0, 0, 0, 0.58);
  font-size: 12px;
  line-height: 1.4;
}

.fluorite-search-suggest__list {
  list-style: none;
  margin: 0;
  padding: 0;
  max-height: 360px;
  overflow: auto;
}

.fluorite-search-suggest__item + .fluorite-search-suggest__item {
  border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.fluorite-search-suggest__link {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 10px 12px;
  color: #111111;
  text-decoration: none;
  transition: background-color 0.2s ease;
}

.fluorite-search-suggest__link:hover,
.fluorite-search-suggest__link.fluorite-is-active {
  background: rgba(0, 0, 0, 0.05);
}

.fluorite-search-suggest__thumb {
  width: 46px;
  height: 46px;
  border-radius: 8px;
  overflow: hidden;
  background: #111111;
}

.fluorite-search-suggest__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.fluorite-search-suggest__meta {
  min-width: 0;
}

.fluorite-search-suggest__title {
  display: block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.fluorite-search-suggest__subtitle,
.fluorite-search-suggest__article {
  display: block;
  font-size: 11px;
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.fluorite-search-suggest__subtitle {
  color: rgba(0, 0, 0, 0.6);
}

.fluorite-search-suggest__article {
  color: rgba(0, 0, 0, 0.86);
}

.fluorite-ref-toplinks {
  display: flex;
  align-items: center;
  gap: 30px;
  font-weight: 600;
  font-size: 0.85rem;
  color: #000;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-left: auto;
  margin-right: 50px;
}

.fluorite-ref-toplinks a,
.fluorite-ref-actions a,
.fluorite-ref-cart {
  color: inherit;
  text-decoration: none;
  transition: opacity 0.2s;
}

.fluorite-ref-toplinks a:hover,
.fluorite-ref-actions a:hover,
.fluorite-ref-cart:hover {
  opacity: 0.6;
}

.fluorite-ref-actions {
  display: flex;
  align-items: center;
  gap: 25px;
  font-weight: 500;
  font-size: 0.9rem;
  color: #000;
}

.fluorite-ref-action {
  display: flex;
  align-items: center;
  gap: 8px;
}

.fluorite-ref-action svg,
.fluorite-ref-cart svg {
  width: 22px;
  height: 22px;
}

.fluorite-ref-cart {
  display: flex;
  align-items: center;
  gap: 5px;
  cursor: pointer;
}

.fluorite-sm-item-container {
  display: flex;
  flex-direction: column;
}

.fluorite-sm-panel-itemWrap {
  position: relative;
  overflow: hidden;
  line-height: 1;
  width: 100%;
}

.fluorite-staggered-menu-panel {
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  width: 320px;
  height: 100%;
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  display: flex;
  flex-direction: column;
  padding: 6em 1.5em 2em 1.5em;
  overflow-y: auto;
  z-index: 10;
  pointer-events: auto;
  transform: translateX(-100%);
  transition: transform 0.32s ease;
}

.fluorite-sm-prelayers {
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 320px;
  pointer-events: none;
  z-index: 5;
}

.fluorite-sm-prelayer {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  transform: translateX(-100%);
  transition: transform 0.3s ease;
}

.fluorite-sm-prelayer:first-child {
  background: rgba(255, 255, 255, 0.4);
}

.fluorite-sm-prelayer:last-child {
  background: rgba(255, 255, 255, 0);
}

.fluorite-sm-panel-inner {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.fluorite-sm-panel-list,
.fluorite-sm-subpanel-list {
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}

.fluorite-sm-panel-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.fluorite-sm-panel-item {
  position: relative;
  color: #000;
  font-weight: 600;
  font-size: 1.8rem;
  cursor: pointer;
  line-height: 1.4;
  letter-spacing: -1px;
  text-transform: uppercase;
  transition: color 0.25s;
  text-decoration: none;
  display: block;
  width: 100%;
}

.fluorite-sm-panel-itemLabel {
  display: flex !important;
  width: 100%;
  justify-content: space-between;
  align-items: center;
  transform-origin: 50% 100%;
}

.fluorite-sm-panel-item:hover,
.fluorite-sm-subpanel-link:hover {
  color: #000000;
}

.fluorite-sm-subpanel {
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 320px;
  width: 300px;
  height: 100%;
  background: rgba(250, 250, 250, 0.7);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  z-index: 9;
  display: flex;
  flex-direction: column;
  padding: 6em 1.5em 2em 1.5em;
  box-shadow: 4px 0 15px rgba(0, 0, 0, 0.03);
  pointer-events: none;
  border-left: 1px solid #eee;
  transform: translateX(-100%);
  opacity: 0;
  transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.3s;
}

body.fluorite-menu-open .fluorite-sm-subpanel.fluorite-is-visible {
  pointer-events: auto;
}

.fluorite-sm-subpanel-link {
  color: #000000;
  text-decoration: none;
  font-size: 1.1rem;
  font-weight: 600;
  text-transform: uppercase;
  transition: color 0.2s;
}

/* ── 3rd level: material → light-type dropdown ─────────────────────── */
/* Single click on the material toggles its type list, double click
   navigates to the collections page section (handled in neo-header.js). */
.fluorite-sm-subpanel-link--has-types {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  cursor: pointer;
}

.fluorite-sm-subpanel-link__label {
  flex: 1;
}

.fluorite-sm-subpanel-plus {
  flex: 0 0 auto;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1;
  color: #000;
  transition: transform 0.35s ease;
  pointer-events: none;
}

/* The hidden attribute MUST win over the grid display below, otherwise
   the dropdown is permanently expanded. */
.fluorite-sm-subpanel-sublist[hidden] {
  display: none !important;
}

.fluorite-sm-subpanel-sublist {
  list-style: none;
  margin: 10px 0 2px;
  padding: 0 0 0 14px;
  border-left: 1px solid rgba(0, 0, 0, 0.14);
  display: grid;
  gap: 9px;
  animation: fluoriteSubListReveal 0.32s ease-out;
}

@keyframes fluoriteSubListReveal {
  from { opacity: 0; transform: translateY(-6px); }
  to   { opacity: 1; transform: translateY(0); }
}

.fluorite-sm-subpanel-sublink {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  color: #2a2a2a;
  text-decoration: none;
  font-size: 0.92rem;
  font-weight: 500;
  text-transform: none;
  letter-spacing: 0.01em;
  transition: color 0.2s;
}

.fluorite-sm-subpanel-sublink:hover {
  color: #000;
}

.fluorite-sm-subpanel-sublink__count {
  flex: 0 0 auto;
  font-size: 0.74rem;
  font-weight: 600;
  color: #9a9a9a;
  font-variant-numeric: tabular-nums;
}

.fluorite-sm-subpanel-catalog {
  display: flex;
  width: 100%;
  min-height: 42px;
  margin: 16px 0 0;
  padding: 0 18px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(0, 0, 0, 0.72);
  background: #000;
  color: #fff;
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.14em;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: background 0.22s ease, color 0.22s ease, transform 0.22s ease;
}

.fluorite-sm-subpanel-catalog:hover {
  transform: translateY(-1px);
  background: transparent;
  color: #000;
}

.fluorite-menu-backdrop {
  position: fixed;
  inset: 0;
  z-index: 200;
  background: transparent;
  pointer-events: none;
}

body.fluorite-menu-open .fluorite-sm-prelayer,
body.fluorite-menu-open .fluorite-staggered-menu-panel {
  transform: translateX(0);
}

body.fluorite-menu-open .fluorite-sm-subpanel.fluorite-is-visible {
  transform: translateX(0);
  opacity: 1;
}

@media (max-width: 1200px) {
  .fluorite-ref-toplinks {
    display: none;
  }
}

@media (max-width: 767px) {
  .fluorite-ref-actions {
    display: flex;
    gap: 12px;
  }

  .fluorite-ref-action span,
  .fluorite-ref-cart span {
    display: none;
  }
}

@media (max-width: 640px) {
  .fluorite-staggered-menu-panel,
  .fluorite-sm-prelayers {
    width: 54vw;
  }

  .fluorite-sm-subpanel {
    left: 54vw;
    width: 46vw;
    padding: 6em 1rem 1.5em 1rem;
  }

  .fluorite-sm-panel-item {
    font-size: 1.28rem;
  }

  .fluorite-sm-subpanel-link {
    font-size: 0.95rem;
    line-height: 1.2;
    word-break: break-word;
  }

  .fluorite-ref-search-wrap {
    width: 210px;
  }
}

.fluorite-cookie-banner {
  position: fixed;
  left: 24px;
  right: 24px;
  bottom: 24px;
  z-index: 10050;
  display: flex;
  justify-content: center;
  pointer-events: auto;
}

.fluorite-cookie-banner__inner {
  position: relative;
  z-index: 10051;
  width: min(640px, 100%);
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 14px 22px;
  align-items: center;
  padding: 14px 18px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 18px;
  background: rgba(10, 10, 10, 0.82);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.28);
  pointer-events: auto;
}

.fluorite-cookie-banner__text {
  color: #ffffff;
  font-size: 14px;
  line-height: 1.55;
}

.fluorite-cookie-banner__actions {
  position: relative;
  z-index: 10052;
  display: flex;
  align-items: center;
  gap: 14px;
}

.fluorite-cookie-banner__link {
  color: rgba(255, 255, 255, 0.76);
  text-decoration: none;
  font-size: 13px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.fluorite-cookie-banner__button {
  position: relative;
  z-index: 10053;
  min-width: 128px;
  height: 42px;
  padding: 0 18px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px;
  background: #ffffff;
  color: #111111;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
  pointer-events: auto;
}

.fluorite-cookie-banner__button:hover,
.fluorite-cookie-banner__link:hover {
  opacity: 0.8;
}

@media (max-width: 767px) {
  .fluorite-cookie-banner {
    left: 16px;
    right: 16px;
    bottom: 16px;
  }

  .fluorite-cookie-banner__inner {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 14px;
  }

  .fluorite-cookie-banner__actions {
    justify-content: space-between;
  }
}


/* Возврат на главную — фирменный логотип-SVG (вордмарк Fluorite).
   Десктоп: вязь в шапке у toggle. Мобайл: та же вязь по центру вверху панели меню.
   База + media-оверрайды в ОДНОМ файле (load-order safe). */
.fluorite-sm-home {
  display: inline-flex;
  align-items: center;
  margin-left: 16px;
  text-decoration: none;
  line-height: 0;
  transition: opacity 0.2s ease;
}
.fluorite-sm-home img { height: 26px; width: auto; display: block; }
.fluorite-sm-home:hover { opacity: 0.6; }
.fluorite-sm-home:focus-visible { outline: 2px solid #000000; outline-offset: 4px; }

.fluorite-sm-panel-home {
  display: none;
  text-align: center;
  text-decoration: none;
  line-height: 0;
  margin-bottom: 1.1rem;
  padding-bottom: 0.9rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.fluorite-sm-panel-home img {
  height: 40px;
  width: auto;
  display: inline-block;
  transition: transform 0.18s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.18s ease;
}
.fluorite-sm-panel-home:active img { transform: scale(0.9); opacity: 0.75; }

@media (max-width: 767px) {
  .fluorite-sm-home { display: none; }
  .fluorite-sm-panel-home { display: block; }
}
@media (max-width: 400px) {
  .fluorite-sm-panel-home img { height: 34px; }
}

/* End */


/* Start:/local/templates/fluorite_v1/assets/css/account.css?178004544942889*/
@charset "utf-8";
.fluorite-page *, .fluorite-neo-home-page * {
  box-sizing: border-box;
}

.fluorite-account-page {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  padding: 40px 24px;
  background: #000;
  color: #fff;
  font-family: "Manrope", sans-serif;
}

.fluorite-account-page--login {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  padding: 24px;
  background: #000;
}

.fluorite-account-shell {
  width: 100%;
  max-width: 540px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.fluorite-account-login {
  width: min(100%, 420px);
}

.fluorite-account-login__wrapper {
  position: relative;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 100%);
  backdrop-filter: blur(25px);
  -webkit-backdrop-filter: blur(25px);
  color: #fff;
  padding: 60px 48px;
  box-shadow: 
    0 40px 80px rgba(0, 0, 0, 0.6),
    inset 0 1px 1px rgba(255, 255, 255, 0.1);
  overflow: hidden;
}

.fluorite-account-login__wrapper::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
}

.fluorite-account-login__message {
  margin-bottom: 24px;
  padding: 12px 16px;
  background: rgba(255, 50, 50, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 8px;
  font-size: 13px;
  color: #ff9e9e;
}

.fluorite-account-login__form {
  display: grid;
  gap: 0;
}

.fluorite-account-login__title {
  margin: 0 0 32px;
  font-family: var(--fluorite-font-editorial, "Oswald", sans-serif);
  font-size: 32px;
  font-weight: 600;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.fluorite-account-login__field {
  position: relative;
  display: block;
  width: 100%;
  height: 50px;
  margin: 30px 0;
}

.fluorite-account-login__field input,
.fluorite-account-login__captcha input {
  width: 100%;
  height: 54px;
  background: rgba(255, 255, 255, 0.03);
  outline: none;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 12px;
  font-family: inherit;
  font-size: 15px;
  color: #fff;
  padding: 0 52px 0 20px;
  transition: all 0.3s ease;
}

.fluorite-account-login__field input::placeholder,
.fluorite-account-login__captcha input::placeholder {
  color: #fff;
}

.fluorite-account-login__field input:focus,
.fluorite-account-login__captcha input:focus {
  border-color: rgba(255, 255, 255, 0.46);
}

.fluorite-account-login__icon {
  position: absolute;
  top: 50%;
  right: 18px;
  width: 20px;
  height: 20px;
  color: #fff;
  transform: translateY(-50%);
  pointer-events: none;
}

.fluorite-account-login__icon svg {
  width: 100%;
  height: 100%;
}

.fluorite-account-login__meta {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  margin: -15px 0 15px;
  font-family: "Nunito", sans-serif;
  font-size: 14.5px;
}

.fluorite-account-login__remember {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.fluorite-account-login__remember input {
  accent-color: #fff;
}

.fluorite-account-login__meta a,
.fluorite-account-login__register a {
  color: #fff;
  text-decoration: none;
}

.fluorite-account-login__meta a:hover,
.fluorite-account-login__register a:hover {
  color: #fff;
  text-decoration: none;
  opacity: 1;
}

.fluorite-account-login__meta a,
.fluorite-account-login__register p {
  opacity: 0.6;
  transition: opacity 0.3s ease;
}

.fluorite-account-login__captcha {
  display: grid;
  gap: 14px;
  margin: 0 0 18px;
}

.fluorite-account-login__captcha img {
  max-width: 100%;
  border-radius: 10px;
}

.fluorite-account-login__submit {
  width: 100%;
  height: 54px;
  border: 0;
  outline: none;
  border-radius: 12px;
  background: #fff;
  color: #000;
  cursor: pointer;
  font-family: inherit;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  transition: all 0.3s ease;
  margin-top: 10px;
}

.fluorite-account-login__submit:hover {
  background: #e6e6e6;
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(0,0,0,0.2);
}

.fluorite-account-login__register {
  margin: 20px 0 15px;
  font-family: "Nunito", sans-serif;
  font-size: 14.5px;
  text-align: center;
}

.fluorite-account-login__register a {
  font-weight: 600;
}

.fluorite-account-card {
  width: min(100%, 540px);
  padding: 80px 60px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 100%);
  backdrop-filter: blur(25px);
  -webkit-backdrop-filter: blur(25px);
  box-shadow: 
    0 40px 80px rgba(0, 0, 0, 0.6),
    inset 0 1px 1px rgba(255, 255, 255, 0.1);
  text-align: center;
}

.fluorite-account-card__eyebrow {
  margin-bottom: 24px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.4em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.4);
}

.fluorite-account-card__title {
  margin: 0 0 24px;
  font-family: var(--fluorite-font-editorial, "Oswald", sans-serif);
  font-size: clamp(36px, 5vw, 48px);
  line-height: 1.1;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #fff;
}

.fluorite-account-card__text {
  margin: 0 0 48px;
  color: rgba(255, 255, 255, 0.7);
  font-size: 17px;
  line-height: 1.6;
}

.fluorite-account-form {
  display: grid;
  gap: 16px;
}

.fluorite-account-form__row {
  display: grid;
  gap: 8px;
}

.fluorite-account-form__label {
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.52);
}

.fluorite-account-form__field {
  width: 100%;
  min-height: 52px;
  padding: 0 16px;
  border: 1px solid rgba(255,255,255,0.16);
  background: rgba(255,255,255,0.02);
  color: #fff;
  font: inherit;
}

.fluorite-account-card input[type="text"],
.fluorite-account-card input[type="password"],
.fluorite-account-card input[type="email"],
.fluorite-account-card select,
.fluorite-account-card textarea {
  width: 100%;
  min-height: 52px;
  padding: 0 16px;
  border: 1px solid rgba(255,255,255,0.16);
  background: rgba(255,255,255,0.02);
  color: #fff;
  font: inherit;
}

.fluorite-account-card textarea {
  min-height: 120px;
  padding: 14px 16px;
}

.fluorite-account-card input[type="submit"],
.fluorite-account-card button[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 22px;
  border: 1px solid rgba(255,255,255,0.18);
  background: #fff;
  color: #000;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
}

.fluorite-account-form__field:focus {
  outline: none;
  border-color: rgba(255,255,255,0.4);
}

.fluorite-account-form__check {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  color: rgba(255,255,255,0.72);
}

.fluorite-account-inline-actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 16px !important;
  width: 100%;
  margin-top: 24px;
}

.fluorite-account-inline-actions form {
  display: contents !important;
}

.fluorite-account-inline-actions .fluorite-account-btn {
  width: 100% !important;
  margin: 0 !important;
}

.fluorite-account-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 0 20px;
  border: 1px solid transparent;
  border-radius: 12px;
  background: #fff;
  color: #000;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}

.fluorite-account-btn:hover {
  background: #e6e6e6;
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(0,0,0,0.3);
}

.fluorite-account-btn--ghost {
  background: transparent;
  color: #fff;
  border-color: rgba(255, 255, 255, 0.2);
}

.fluorite-account-btn--ghost:hover {
  background: rgba(255, 255, 255, 0.05);
  border-color: #fff;
}

.fluorite-account-links {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 24px;
  margin-top: 20px;
}

.fluorite-account-links a {
  color: rgba(255,255,255,0.72);
  text-decoration: none;
  font-size: 13px;
}

.fluorite-account-links a:hover {
  color: #fff;
}

.fluorite-account-message {
  margin-bottom: 18px;
  padding: 14px 16px;
  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(255,255,255,0.04);
  color: rgba(255,255,255,0.84);
  font-size: 14px;
  line-height: 1.6;
}

.fluorite-account-grid {
  display: grid;
  gap: 28px;
}

.fluorite-account-grid .sale-personal-section-wrapper,
.fluorite-account-grid .basket-items-list-wrapper,
.fluorite-account-grid .sale-order-list-container,
.fluorite-account-grid .sale-personal-profile-list-container {
  color: #fff;
}

.fluorite-account-grid a {
  color: #fff;
}

@media (max-width: 700px) {
  .fluorite-account-page {
    padding-top: 110px;
  }

  .fluorite-account-page--login {
    min-height: 100vh;
    padding: 0 16px;
  }

  .fluorite-account-login__wrapper {
    padding: 24px 20px;
  }

  .fluorite-account-login__meta {
    flex-direction: column;
    align-items: flex-start;
  }

  .fluorite-account-card {
    padding: 24px 20px;
  }

  .fluorite-account-form__actions,
  .fluorite-account-inline-actions {
    flex-direction: column;
  }

  .fluorite-account-btn {
    width: 100%;
  }
}

/* ── main.register custom template (fluorite) ──────────────────────── */
.fluorite-account-reg {
  text-align: left;
}

.fluorite-account-card .fluorite-account-form {
  margin-top: 8px;
}

.fluorite-account-form__field::placeholder {
  color: rgba(255, 255, 255, 0.45);
}

.fluorite-account-card select.fluorite-account-form__field option {
  color: #000;
}

.fluorite-account-card .fluorite-account-form__submit {
  width: 100%;
  margin-top: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 0 22px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: #fff;
  color: #000;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.fluorite-account-card .fluorite-account-form__submit:hover {
  opacity: 0.85;
}

.fluorite-account-form__captcha img {
  display: block;
  margin: 4px 0 10px;
  border-radius: 6px;
}

.fluorite-account-form__note {
  margin: 16px 0 0;
  font-size: 13px;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.5);
}

.fluorite-account-message {
  margin-bottom: 20px;
  padding: 12px 16px;
  background: rgba(255, 80, 80, 0.12);
  border: 1px solid rgba(255, 120, 120, 0.3);
  border-radius: 8px;
  font-size: 13px;
  color: #ff9e9e;
}

/* ── Social login block (bitrix:socserv.auth.form .default) ────────── */
.fluorite-account-social {
  margin-top: 28px;
}

.fluorite-account-social__divider {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 20px;
  color: rgba(255, 255, 255, 0.45);
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.fluorite-account-social__divider::before,
.fluorite-account-social__divider::after {
  content: '';
  flex: 1;
  height: 1px;
  background: rgba(255, 255, 255, 0.12);
}

.fluorite-account-social .bx-auth-title,
.fluorite-account-social .bx-auth-note,
.fluorite-account-social .bx-auth-line {
  display: none;
}

.fluorite-account-social .bx-auth-services {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.fluorite-account-social .bx-auth-services > div {
  display: flex;
}

.fluorite-account-social .bx-auth-services a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-height: 50px;
  padding: 0 16px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.03);
  color: #fff;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  transition: background 0.2s ease, border-color 0.2s ease;
}

.fluorite-account-social .bx-auth-services a:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.32);
}

.fluorite-account-social .bx-auth-services a b {
  font-weight: 500;
}

.fluorite-account-social .bx-auth-services i.bx-ss-icon {
  width: 22px;
  height: 22px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  filter: brightness(0) invert(1);
}

@media (max-width: 480px) {
  .fluorite-account-social .bx-auth-services {
    grid-template-columns: 1fr;
  }
}

/* ── Privacy-policy consent (registration) ─────────────────────────── */
.fluorite-account-form__consent {
  align-items: flex-start;
  gap: 12px;
  margin: 4px 0 4px;
  text-align: left;
  line-height: 1.5;
}

.fluorite-account-form__consent input[type="checkbox"] {
  margin-top: 3px;
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  accent-color: #fff;
  cursor: pointer;
}

.fluorite-account-form__consent a {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.fluorite-account-form__consent a:hover {
  opacity: 0.8;
}

/* ── Native bitrix:main.userconsent.request inside the form ────────── */
.fluorite-account-form__consent .main-user-consent-request {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 4px 0;
  text-align: left;
  line-height: 1.5;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.72);
  cursor: pointer;
}

.fluorite-account-form__consent .main-user-consent-request input[type="checkbox"] {
  margin-top: 3px;
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  accent-color: #fff;
  cursor: pointer;
}

.fluorite-account-form__consent .main-user-consent-request-announce a,
.fluorite-account-form__consent .main-user-consent-request-announce-link {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}

.fluorite-account-form__consent .main-user-consent-request-announce-required {
  color: #ff9e9e;
}

/* consent agreement popup — keep readable on the dark theme */
.main-user-consent-request-popup-cont {
  color: #1c1c1c;
}

/* ── Personal dashboard (sale.personal.section index) ──────────────── */
.fluorite-account-dash {
  align-items: stretch;
  justify-content: flex-start;
  min-height: 100vh;
  padding: 140px 24px 90px;
}

.fluorite-account-dash .fluorite-account-shell {
  display: block;
  width: min(1200px, 100%);
  max-width: none;
  margin: 0 auto;
}

.fluorite-account-dash__head {
  margin-bottom: 48px;
}

.fluorite-account-dash__eyebrow {
  display: block;
  margin-bottom: 16px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.4em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.4);
}

.fluorite-account-dash__title {
  margin: 0 0 14px;
  font-family: var(--fluorite-font-editorial, "Oswald", sans-serif);
  font-size: clamp(40px, 6vw, 80px);
  line-height: 0.95;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #fff;
}

.fluorite-account-dash__subtitle {
  max-width: 560px;
  margin: 0;
  font-size: 15px;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.6);
}

.fluorite-account-dash .fluorite-account-grid {
  display: block;
}

.fluorite-account-dash .row {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
  gap: 18px;
  margin: 0;
}

.fluorite-account-dash [class*="col-"] {
  width: auto;
  max-width: none;
  flex: none;
  padding: 0;
}

.fluorite-account-dash .sale-personal-section-index-block,
.fluorite-account-dash .sale-personal-section-index-block.bx-green {
  height: 100%;
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 100%);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  box-shadow: 0 24px 50px rgba(0, 0, 0, 0.45);
  overflow: hidden;
  transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1), border-color 0.3s ease, background 0.3s ease;
}

.fluorite-account-dash .sale-personal-section-index-block:hover {
  transform: translateY(-4px);
  border-color: rgba(255, 255, 255, 0.28);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.09) 0%, rgba(255, 255, 255, 0.01) 100%);
}

.fluorite-account-dash .sale-personal-section-index-block-link {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 22px;
  min-height: 190px;
  padding: 30px 28px;
  color: #fff;
  text-decoration: none;
}

.fluorite-account-dash .sale-personal-section-index-block-ico {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.04);
}

.fluorite-account-dash .sale-personal-section-index-block-ico i.fa {
  font-size: 20px;
  color: rgba(255, 255, 255, 0.85);
}

.fluorite-account-dash .sale-personal-section-index-block-name {
  margin: auto 0 0;
  font-family: var(--fluorite-font-editorial, "Oswald", sans-serif);
  font-size: 19px;
  font-weight: 600;
  line-height: 1.25;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #fff;
}

@media (max-width: 700px) {
  .fluorite-account-dash {
    padding: 116px 16px 64px;
  }

  .fluorite-account-dash__head {
    margin-bottom: 32px;
  }

  .fluorite-account-dash .row {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  .fluorite-account-dash .sale-personal-section-index-block-link {
    min-height: 150px;
    padding: 22px 18px;
    gap: 16px;
  }
}

@media (max-width: 420px) {
  .fluorite-account-dash .row {
    grid-template-columns: 1fr;
  }
}

/* ── Personal subpages: scope tile grid to actual index blocks ─────── */
.fluorite-account-dash .row {
  display: block;
  margin: 0;
}

.fluorite-account-dash .row:has(.sale-personal-section-index-block) {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
  gap: 18px;
}

/* ── Default bitrix auth form (sale.personal.section guest view) ────── */
.fluorite-account-dash .row:has(.bx-authform),
.fluorite-account-dash .row:has(.alert) {
  max-width: 460px;
  margin: 0 auto;
}

.fluorite-account-dash .alert {
  margin: 0 0 18px;
  padding: 14px 18px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.04);
  color: rgba(255, 255, 255, 0.85);
  font-size: 14px;
  line-height: 1.5;
}

.fluorite-account-dash .alert-danger {
  border-color: rgba(255, 120, 120, 0.3);
  background: rgba(255, 80, 80, 0.12);
  color: #ff9e9e;
}

.fluorite-account-dash .bx-authform {
  position: relative;
  padding: 48px 40px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 100%);
  -webkit-backdrop-filter: blur(22px);
  backdrop-filter: blur(22px);
  box-shadow: 0 32px 64px rgba(0, 0, 0, 0.55);
  color: #fff;
}

.fluorite-account-dash .bx-title {
  margin: 0 0 28px;
  font-family: var(--fluorite-font-editorial, "Oswald", sans-serif);
  font-size: 26px;
  font-weight: 600;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #fff;
}

/* legacy OpenID / socserv clutter — hide entirely */
.fluorite-account-dash .bx-authform-social,
.fluorite-account-dash .bx-authform hr.bxe-light {
  display: none !important;
}

.fluorite-account-dash .bx-authform-formgroup-container {
  margin: 0 0 18px;
}

.fluorite-account-dash .bx-authform-label-container {
  margin-bottom: 8px;
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.52);
}

.fluorite-account-dash .bx-authform-input-container input {
  width: 100%;
  height: 52px;
  padding: 0 18px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.03);
  color: #fff;
  font: inherit;
  font-size: 15px;
  outline: none;
  transition: border-color 0.25s ease;
}

.fluorite-account-dash .bx-authform-input-container input:focus {
  border-color: rgba(255, 255, 255, 0.45);
}

.fluorite-account-dash .checkbox label,
.fluorite-account-dash .bx-filter-param-label {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-size: 13.5px;
  color: rgba(255, 255, 255, 0.72);
  cursor: pointer;
}

.fluorite-account-dash .checkbox input[type="checkbox"] {
  width: 16px;
  height: 16px;
  accent-color: #fff;
}

.fluorite-account-dash .bx-authform .btn,
.fluorite-account-dash .bx-authform input[type="submit"] {
  width: 100%;
  height: 54px;
  margin-top: 6px;
  border: 0;
  border-radius: 12px;
  background: #fff;
  color: #000;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  cursor: pointer;
  transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;
}

.fluorite-account-dash .bx-authform .btn:hover,
.fluorite-account-dash .bx-authform input[type="submit"]:hover {
  background: #e9e9e9;
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.35);
}

.fluorite-account-dash .bx-authform-link-container {
  margin-top: 16px;
  font-size: 13.5px;
  line-height: 1.6;
  text-align: center;
  color: rgba(255, 255, 255, 0.55);
}

.fluorite-account-dash .bx-authform-link-container a {
  color: #fff;
  text-decoration: none;
}

.fluorite-account-dash .bx-authform-link-container a:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* ── Authorized state: bootstrap_v4 lists / tables / forms ─────────── */
.fluorite-account-dash .sale-personal-section-wrapper,
.fluorite-account-dash .sale-paysystem-wrapper,
.fluorite-account-dash .sale-personal-profile-list-container,
.fluorite-account-dash .sale-order-list-container,
.fluorite-account-dash .sale-personal-account {
  color: rgba(255, 255, 255, 0.85);
}

.fluorite-account-dash table {
  width: 100%;
  border-collapse: collapse;
  margin: 0 0 20px;
  font-size: 14px;
}

.fluorite-account-dash table th,
.fluorite-account-dash table td {
  padding: 14px 16px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  text-align: left;
  color: rgba(255, 255, 255, 0.82);
}

.fluorite-account-dash table th {
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.5);
}

.fluorite-account-dash table tr:hover td {
  background: rgba(255, 255, 255, 0.03);
}

.fluorite-account-dash .btn,
.fluorite-account-dash button[type="submit"],
.fluorite-account-dash input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 24px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 10px;
  background: #fff;
  color: #000;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  text-decoration: none;
  cursor: pointer;
}

.fluorite-account-dash .btn-secondary,
.fluorite-account-dash .btn-default {
  background: transparent;
  color: #fff;
}

.fluorite-account-dash a {
  color: #fff;
}

@media (max-width: 700px) {
  .fluorite-account-dash .bx-authform {
    padding: 32px 22px;
  }

  .fluorite-account-dash .row:has(.bx-authform),
  .fluorite-account-dash .row:has(.alert) {
    max-width: none;
  }
}

/* ── Personal dashboard tiles (custom sale.personal.section/fluorite) ─ */
.fluorite-account-dash .fluorite-acc-tiles {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(232px, 1fr));
  gap: 18px;
}

.fluorite-acc-tile {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 26px;
  min-height: 196px;
  padding: 30px 28px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 100%);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  box-shadow: 0 24px 50px rgba(0, 0, 0, 0.45);
  color: #fff;
  text-decoration: none;
  transition: transform 0.45s cubic-bezier(0.19, 1, 0.22, 1), border-color 0.3s ease, background 0.3s ease;
}

.fluorite-acc-tile:hover {
  transform: translateY(-4px);
  border-color: rgba(255, 255, 255, 0.3);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.09) 0%, rgba(255, 255, 255, 0.01) 100%);
  color: #fff;
}

.fluorite-acc-tile__ico {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.04);
}

.fluorite-acc-tile__ico svg {
  width: 24px;
  height: 24px;
  color: rgba(255, 255, 255, 0.88);
}

.fluorite-acc-tile__name {
  margin-top: auto;
  font-family: var(--fluorite-font-editorial, "Oswald", sans-serif);
  font-size: 19px;
  font-weight: 600;
  line-height: 1.25;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #fff;
}

@media (max-width: 700px) {
  .fluorite-account-dash .fluorite-acc-tiles {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  .fluorite-acc-tile {
    min-height: 152px;
    padding: 22px 18px;
    gap: 18px;
  }
}

@media (max-width: 420px) {
  .fluorite-account-dash .fluorite-acc-tiles {
    grid-template-columns: 1fr;
  }
}

/* ════════════════════════════════════════════════════════════════════
   Fluorite skin for nested Bitrix sale components (bootstrap_v4 markup)
   Scoped under .fluorite-account-dash — payment/order logic untouched.
   ════════════════════════════════════════════════════════════════════ */

/* ── bootstrap grid / spacing emulation (bootstrap CSS not loaded) ──── */
.fluorite-account-dash .row {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0;
  margin: 0;
}

.fluorite-account-dash .row.align-items-center { align-items: center; }
.fluorite-account-dash [class^="col"],
.fluorite-account-dash [class*=" col"] {
  flex: 1 1 0;
  min-width: 0;
  padding: 0;
}
.fluorite-account-dash .col-auto,
.fluorite-account-dash .col-sm-auto,
.fluorite-account-dash .col-md-auto { flex: 0 0 auto; }
.fluorite-account-dash .col-12 { flex: 0 0 100%; }
.fluorite-account-dash .col-6  { flex: 0 0 50%; }

.fluorite-account-dash .mb-1 { margin-bottom: 6px; }
.fluorite-account-dash .mb-2 { margin-bottom: 12px; }
.fluorite-account-dash .mb-3 { margin-bottom: 20px; }
.fluorite-account-dash .mb-5 { margin-bottom: 40px; }
.fluorite-account-dash .mt-1 { margin-top: 6px; }
.fluorite-account-dash .mt-3 { margin-top: 20px; }
.fluorite-account-dash .pt-3 { padding-top: 16px; }
.fluorite-account-dash .mr-4 { margin-right: 24px; }
.fluorite-account-dash .mx-0 { margin-left: 0; margin-right: 0; }

/* ── typography inside cabinet ─────────────────────────────────────── */
.fluorite-account-dash h2 {
  margin: 0 0 18px;
  font-family: var(--fluorite-font-editorial, "Oswald", sans-serif);
  font-size: 24px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #fff;
}

.fluorite-account-dash h3 {
  margin: 0 0 14px;
  font-size: 17px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.92);
}

/* empty-state single heading (profiles / subscribe) */
.fluorite-account-dash .fluorite-account-grid > h3:only-child,
.fluorite-account-dash .fluorite-account-grid > p:only-child {
  margin: 40px 0;
  padding: 48px 28px;
  border: 1px dashed rgba(255, 255, 255, 0.16);
  border-radius: 18px;
  text-align: center;
  font-size: 16px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.55);
}

.fluorite-account-dash a {
  color: #fff;
  text-decoration: none;
  border-bottom: 1px solid rgba(255, 255, 255, 0.28);
  transition: border-color 0.2s ease, opacity 0.2s ease;
}
.fluorite-account-dash a:hover { border-color: #fff; }
.fluorite-account-dash a.btn,
.fluorite-account-dash a.sale-order-list-change-payment,
.fluorite-account-dash .fluorite-acc-tile { border-bottom: 0; }

.fluorite-account-dash hr {
  border: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  margin: 16px 0;
}

/* font-awesome not loaded — neutralize leftover decorative glyph boxes */
.fluorite-account-dash i.fa {
  font-style: normal;
  font-size: 0;
}
.fluorite-account-dash i.fa::before { font-size: 13px; }

/* ── buttons ───────────────────────────────────────────────────────── */
.fluorite-account-dash .btn,
.fluorite-account-dash .btn-primary,
.fluorite-account-dash button[type="submit"],
.fluorite-account-dash input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 26px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 11px;
  background: #fff;
  color: #000;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  text-decoration: none;
  cursor: pointer;
  transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;
}
.fluorite-account-dash .btn:hover,
.fluorite-account-dash .btn-primary:hover,
.fluorite-account-dash button[type="submit"]:hover,
.fluorite-account-dash input[type="submit"]:hover {
  background: #ececec;
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.35);
  color: #000;
}
.fluorite-account-dash .btn-default,
.fluorite-account-dash .btn-secondary,
.fluorite-account-dash .btn-link {
  background: transparent;
  color: #fff;
  border-color: rgba(255, 255, 255, 0.22);
}
.fluorite-account-dash .btn-default:hover,
.fluorite-account-dash .btn-secondary:hover,
.fluorite-account-dash .btn-link:hover {
  background: rgba(255, 255, 255, 0.06);
  color: #fff;
}

/* ── forms (main.profile, accountpay, generic) ─────────────────────── */
.fluorite-account-dash .form-group.row {
  display: grid;
  grid-template-columns: minmax(140px, 220px) 1fr;
  gap: 10px 20px;
  align-items: center;
  margin: 0 0 16px;
}
.fluorite-account-dash .col-form-label,
.fluorite-account-dash .main-profile-form-label,
.fluorite-account-dash label {
  font-size: 13px;
  letter-spacing: 0.04em;
  color: rgba(255, 255, 255, 0.62);
}
.fluorite-account-dash .form-control,
.fluorite-account-dash input[type="text"],
.fluorite-account-dash input[type="password"],
.fluorite-account-dash input[type="email"],
.fluorite-account-dash input[type="tel"],
.fluorite-account-dash input[type="number"],
.fluorite-account-dash select,
.fluorite-account-dash textarea {
  width: 100%;
  min-height: 48px;
  padding: 0 16px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.03);
  color: #fff;
  font: inherit;
  font-size: 14px;
  outline: none;
  transition: border-color 0.25s ease;
}
.fluorite-account-dash textarea { min-height: 110px; padding: 12px 16px; }
.fluorite-account-dash .form-control:focus,
.fluorite-account-dash input:focus,
.fluorite-account-dash select:focus,
.fluorite-account-dash textarea:focus { border-color: rgba(255, 255, 255, 0.45); }
.fluorite-account-dash select option { color: #000; }
.fluorite-account-dash input[type="checkbox"],
.fluorite-account-dash input[type="radio"] {
  width: 16px; height: 16px; min-height: 0; accent-color: #fff;
}

.fluorite-account-dash .input-group { display: flex; align-items: stretch; }
.fluorite-account-dash .input-group .form-control { border-radius: 10px 0 0 10px; }
.fluorite-account-dash .input-group-text {
  display: inline-flex;
  align-items: center;
  padding: 0 16px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-left: 0;
  border-radius: 0 10px 10px 0;
  background: rgba(255, 255, 255, 0.05);
  color: rgba(255, 255, 255, 0.7);
  font-size: 14px;
}
.fluorite-account-dash .text-right { text-align: right; }

.fluorite-account-dash .errortext,
.fluorite-account-dash font.errortext {
  display: inline-block;
  margin-bottom: 14px;
  padding: 12px 16px;
  border: 1px solid rgba(255, 120, 120, 0.3);
  border-radius: 10px;
  background: rgba(255, 80, 80, 0.12);
  color: #ff9e9e;
  font-size: 13px;
}

/* ── order list (sale.personal.order.list) ─────────────────────────── */
.fluorite-account-dash .sale-order-list-title-container,
.fluorite-account-dash .sale-order-list-inner-container {
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 100%);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}
.fluorite-account-dash .sale-order-list-title-container {
  padding: 18px 24px;
  margin: 0 0 4px;
}
.fluorite-account-dash .sale-order-list-title-container h3 {
  margin: 0;
  font-family: var(--fluorite-font-editorial, "Oswald", sans-serif);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.fluorite-account-dash .sale-order-list-inner-container { padding: 22px 24px; }
.fluorite-account-dash .sale-order-list-inner-title-line-item {
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.5);
  white-space: nowrap;
}
.fluorite-account-dash .sale-order-list-inner-title-line {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}
.fluorite-account-dash .sale-order-list-payment-title,
.fluorite-account-dash .sale-order-list-payment-price { color: rgba(255, 255, 255, 0.85); }
.fluorite-account-dash .sale-order-list-payment-element,
.fluorite-account-dash .sale-order-list-payment-title-element { color: rgba(255, 255, 255, 0.55); }
.fluorite-account-dash .sale-order-list-payment-number { font-weight: 600; color: #fff; }
.fluorite-account-dash .sale-order-list-status-alert {
  display: inline-block;
  margin-left: 8px;
  padding: 3px 10px;
  border-radius: 999px;
  background: rgba(255, 80, 80, 0.16);
  border: 1px solid rgba(255, 120, 120, 0.3);
  color: #ff9e9e;
  font-size: 11px;
  letter-spacing: 0.04em;
}
.fluorite-account-dash .sale-order-list-button-container { display: flex; align-items: center; }
.fluorite-account-dash .sale-order-list-change-payment,
.fluorite-account-dash .sale-order-list-cancel-payment {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.6);
  border-bottom: 1px dashed rgba(255, 255, 255, 0.25);
}
.fluorite-account-dash .sale-order-list-change-payment:hover,
.fluorite-account-dash .sale-order-list-cancel-payment:hover { color: #fff; }

/* ── account top-up (sale.personal.account / accountpay) ───────────── */
.fluorite-account-dash .sale-personal-section-account-sub-header {
  font-family: var(--fluorite-font-editorial, "Oswald", sans-serif);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.fluorite-account-dash .sale-accountpay-fixedpay-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 8px;
}
.fluorite-account-dash .sale-accountpay-fixedpay-item {
  padding: 10px 18px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.03);
  color: rgba(255, 255, 255, 0.85);
  cursor: pointer;
  transition: border-color 0.2s ease, background 0.2s ease;
}
.fluorite-account-dash .sale-accountpay-fixedpay-item:hover,
.fluorite-account-dash .sale-accountpay-fixedpay-item.bx-selected {
  border-color: #fff;
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}
.fluorite-account-dash .sale-accountpay-pp {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.fluorite-account-dash .sale-accountpay-pp-company {
  flex: 0 0 auto;
  padding: 14px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.03);
  cursor: pointer;
}
.fluorite-account-dash .sale-accountpay-pp-company.bx-selected {
  border-color: #fff;
  background: rgba(255, 255, 255, 0.09);
}
.fluorite-account-dash .sale-accountpay-pp-company-image {
  width: 95px;
  height: 55px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  filter: brightness(0) invert(1);
  opacity: 0.85;
}

/* ── profile (main.profile) ────────────────────────────────────────── */
.fluorite-account-dash .bx_profile,
.fluorite-account-dash .main-profile-block-shown {
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 100%);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  padding: 32px 30px;
}
.fluorite-account-dash .main-profile-block-date-info {
  margin-bottom: 22px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  font-size: 13px;
  color: rgba(255, 255, 255, 0.55);
}
.fluorite-account-dash .main-profile-block-date-info strong { color: rgba(255, 255, 255, 0.75); font-weight: 500; }

@media (max-width: 700px) {
  .fluorite-account-dash .row { gap: 4px 0; }
  .fluorite-account-dash .form-group.row {
    grid-template-columns: 1fr;
    gap: 6px;
  }
  .fluorite-account-dash .bx_profile,
  .fluorite-account-dash .sale-order-list-inner-container { padding: 20px 16px; }
}

/* ── Account top-up: payment-method picker (override raw skin) ──────── */
.fluorite-account-dash .sale-accountpay-pp {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 4px;
}

.fluorite-account-dash .sale-accountpay-pp-company {
  position: relative;
  flex: 0 0 auto;
  width: 168px;
  max-width: 168px;
  padding: 16px 16px 14px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.03);
  cursor: pointer;
  transition: border-color 0.25s ease, background 0.25s ease, transform 0.35s cubic-bezier(0.19, 1, 0.22, 1);
}

.fluorite-account-dash .sale-accountpay-pp-company:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.06);
}

.fluorite-account-dash .sale-accountpay-pp-company.bx-selected,
.fluorite-account-dash .sale-accountpay-pp-company:has(.sale-accountpay-pp-company-checkbox:checked) {
  border-color: #fff;
  background: rgba(255, 255, 255, 0.1);
  box-shadow: 0 0 0 1px #fff inset;
}

/* selected check badge */
.fluorite-account-dash .sale-accountpay-pp-company.bx-selected::after,
.fluorite-account-dash .sale-accountpay-pp-company:has(.sale-accountpay-pp-company-checkbox:checked)::after {
  content: "";
  position: absolute;
  top: 10px;
  right: 10px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E")
    center / 12px no-repeat;
}

/* native checkbox hidden but kept in DOM (Bitrix JS toggles it) */
.fluorite-account-dash .sale-accountpay-pp-company-checkbox {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
  margin: 0;
  pointer-events: none;
}

.fluorite-account-dash .sale-accountpay-pp-company-graf-container {
  display: block;
}

/* logo on a light plate so brand colours read on the dark theme */
.fluorite-account-dash .sale-accountpay-pp-company-image {
  width: 100%;
  height: 56px;
  margin: 0 0 12px;
  border-radius: 10px;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 76% auto;
  filter: none;
}

.fluorite-account-dash .sale-accountpay-pp-company-smalltitle {
  text-align: center;
  font-size: 13px;
  line-height: 1.3;
  color: rgba(255, 255, 255, 0.82);
}

.fluorite-account-dash .sale-accountpay-pp-company.bx-selected .sale-accountpay-pp-company-smalltitle,
.fluorite-account-dash .sale-accountpay-pp-company:has(.sale-accountpay-pp-company-checkbox:checked) .sale-accountpay-pp-company-smalltitle {
  color: #fff;
  font-weight: 600;
}

@media (max-width: 700px) {
  .fluorite-account-dash .sale-accountpay-pp-company {
    width: calc(50% - 7px);
    max-width: none;
  }
}

/* ── Order history: accomplished / canceled orders (Fluorite skin) ───
   Stock sale.personal.order.list/bootstrap_v4 style.css gives the
   accomplished title container #f2f2f2/#d6d6d6 — override to dark glass
   so the order title (white) is readable. Scoped 2 classes > stock. */
.fluorite-account-dash .sale-order-list-accomplished-title-container {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 16px;
  margin: 0 0 4px;
  padding: 18px 24px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 100%);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}

.fluorite-account-dash .sale-order-list-accomplished-title-container h3 {
  margin: 0;
  font-family: var(--fluorite-font-editorial, "Oswald", sans-serif);
  font-size: 17px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #fff;
}

.fluorite-account-dash .sale-order-list-accomplished-date,
.fluorite-account-dash .sale-order-list-accomplished-date-number {
  color: rgba(255, 255, 255, 0.55);
}

.fluorite-account-dash .sale-order-list-accomplished-date.canceled-order {
  color: #ff9e9e;
}

.fluorite-account-dash .sale-order-title {
  margin: 0 0 18px;
  font-family: var(--fluorite-font-editorial, "Oswald", sans-serif);
  font-size: 24px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #fff;
}

/* stock light 1px separator -> subtle dark divider */
.fluorite-account-dash .sale-order-list-top-border {
  background: rgba(255, 255, 255, 0.1);
}

.fluorite-account-dash .sale-order-list-about-link,
.fluorite-account-dash .sale-order-list-cancel-link {
  color: #fff;
}


/* ЛК /personal/private/: блок соц-привязок (Bitrix .soc-serv-title) распирал мобайл */
@media (max-width: 767px) {
  .soc-serv-title,
  .bx-auth-serv-icons {
    width: auto !important;
    max-width: 100% !important;
    box-sizing: border-box;
    white-space: normal;
  }
}

/* End */


/* Start:/local/templates/fluorite_v1/build/neo-home/neo-home.css?17795480751622*/
:root{--bg-color: #050505;--text-color: #e1e1e1;--accent-color: #333;--font-heading: "Syne", sans-serif;--font-body: "Manrope", sans-serif;--font-serif: "Playfair Display", serif}*{box-sizing:border-box;margin:0;padding:0;cursor:auto}html{width:100%;overflow-x:hidden}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}body{font-family:var(--font-body);background-color:var(--bg-color);color:var(--text-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;width:100%;position:relative}.noise-overlay{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:800;line-height:.9;text-transform:uppercase;letter-spacing:-.02em}a{text-decoration:none;color:inherit;cursor:pointer}ul{list-style:none}.container{max-width:1800px;margin:0 auto;padding:0 4vw;width:100%}.section-padding{padding:12vh 0}.stroke-text{-webkit-text-stroke:1px rgba(255,255,255,.3);color:transparent}.font-serif-italic{font-family:var(--font-serif);font-style:italic;font-weight:400}::-webkit-scrollbar{width:0px;background:transparent}

/* End */


/* Start:/local/templates/fluorite_v1/assets/css/neo-home-bitrix.css?17798967377429*/
:root {
  --fluorite-bx-panel-offset: 0px;
}

body.fluorite-neo-home-page {
  min-height: 100vh;
  background: #050505;
  overflow-x: hidden;
}

body.fluorite-neo-home-page #panel,
body.fluorite-neo-home-page #panel * {
  cursor: auto !important;
}

body.fluorite-neo-home-page #panel {
  position: relative;
  z-index: 100001;
}

body.fluorite-neo-home-page,
body.fluorite-neo-home-page * {
  cursor: default !important;
}

body.fluorite-neo-home-page .custom-cursor {
  display: none !important;
}

body.fluorite-neo-home-page .fluorite-staggered-menu-header {
  top: var(--fluorite-header-top);
}

body.fluorite-neo-home-page.bx-panel-active .fluorite-staggered-menu-header {
  top: var(--fluorite-header-top) !important;
}

body.fluorite-neo-home-page .fluorite-fluorite-neo-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  box-sizing: border-box;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  padding: 24px 48px;
  mix-blend-mode: normal;
  color: #fff;
}

body.fluorite-neo-home-page .fluorite-neo-desktop-nav {
  display: block;
  flex: 1 1 auto;
}

body.fluorite-neo-home-page .fluorite-neo-logo-link {
  position: relative;
  z-index: 3;
  display: inline-flex;
  align-items: center;
}

body.fluorite-neo-home-page .fluorite-logo-area .logo {
  height: 56px;
  width: auto;
  display: block;
}

body.fluorite-neo-home-page .fluorite-neo-menu {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 28px;
  flex-wrap: wrap;
}

body.fluorite-neo-home-page .fluorite-neo-menu .menu-item {
  position: relative;
  display: block;
  overflow: hidden;
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  font-family: "Manrope", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.24em;
  line-height: 1.2;
  opacity: 0.75;
  transition: opacity 0.35s ease;
}

body.fluorite-neo-home-page .fluorite-neo-menu .menu-item,
body.fluorite-neo-home-page .fluorite-neo-menu .menu-item:visited,
body.fluorite-neo-home-page .fluorite-neo-menu .menu-item:active,
body.fluorite-neo-home-page .fluorite-neo-menu .menu-item.active,
body.fluorite-neo-home-page .fluorite-neo-menu .menu-item .menu-item-label {
  color: #fff !important;
}

body.fluorite-neo-home-page .fluorite-neo-menu .menu-item-label,
body.fluorite-neo-home-page .fluorite-neo-menu .menu-item-shadow {
  display: block;
  color: inherit;
  transition: transform 0.45s cubic-bezier(0.19, 1, 0.22, 1);
}

body.fluorite-neo-home-page .fluorite-neo-menu .menu-item-shadow {
  display: none;
}

body.fluorite-neo-home-page .fluorite-neo-menu .menu-item:hover,
body.fluorite-neo-home-page .fluorite-neo-menu .menu-item.active {
  opacity: 1;
}

body.fluorite-neo-home-page .fluorite-neo-menu .menu-item:hover .menu-item-label {
  transform: translateY(-100%);
}

body.fluorite-neo-home-page .fluorite-neo-header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex: 0 0 auto;
}

body.fluorite-neo-home-page .fluorite-neo-header-action {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 0 16px;
  border: 1px solid rgba(255,255,255,0.16);
  background: rgba(0,0,0,0.24);
  color: inherit;
  text-decoration: none;
  text-transform: uppercase;
  font-family: "Manrope", sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.18em;
  transition: border-color 0.3s ease, background 0.3s ease, transform 0.3s ease;
}

body.fluorite-neo-home-page .fluorite-neo-header-action:hover {
  border-color: rgba(255,255,255,0.38);
  background: rgba(255,255,255,0.06);
  transform: translateY(-1px);
}

body.fluorite-neo-home-page .fluorite-neo-header-action__icon {
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

body.fluorite-neo-home-page .fluorite-neo-header-action__icon svg {
  width: 100%;
  height: 100%;
}

body.fluorite-neo-home-page .fluorite-neo-header-action__badge {
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  color: #000;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: normal;
}

body.fluorite-neo-home-page .fluorite-neo-mobile-toggle {
  display: none;
  position: relative;
  z-index: 120;
  width: 40px;
  height: 40px;
  background: transparent;
  border: 0;
  padding: 0;
  color: inherit;
  cursor: pointer;
}

body.fluorite-neo-home-page .fluorite-neo-mobile-toggle span {
  display: block;
  width: 24px;
  height: 2px;
  margin: 5px auto;
  background: currentColor;
  transition: transform 0.3s ease, opacity 0.3s ease;
}

body.fluorite-neo-home-page .fluorite-neo-mobile-overlay {
  position: fixed;
  inset: 0;
  z-index: 110;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #000;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.35s ease, visibility 0.35s ease;
}

body.fluorite-neo-home-page .fluorite-neo-mobile-nav {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
}

body.fluorite-neo-home-page .fluorite-neo-mobile-link {
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  font-family: "Manrope", sans-serif;
  font-size: 28px;
  font-weight: 500;
  letter-spacing: 0.12em;
}

body.fluorite-neo-home-page .fluorite-neo-mobile-actions {
  margin-top: 18px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
}

body.fluorite-neo-home-page .fluorite-neo-mobile-link--action {
  font-size: 18px;
  letter-spacing: 0.16em;
  opacity: 0.82;
}

body.fluorite-neo-home-page.fluorite-neo-mobile-open .fluorite-neo-mobile-overlay {
  opacity: 1;
  visibility: visible;
}

body.fluorite-neo-home-page.fluorite-neo-mobile-open .fluorite-neo-mobile-toggle span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}

body.fluorite-neo-home-page.fluorite-neo-mobile-open .fluorite-neo-mobile-toggle span:nth-child(2) {
  opacity: 0;
}

body.fluorite-neo-home-page.fluorite-neo-mobile-open .fluorite-neo-mobile-toggle span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

body.fluorite-neo-home-page main {
  padding-top: 0;
}

@media (max-width: 1000px) {
  body.fluorite-neo-home-page .fluorite-fluorite-neo-header {
    padding: 20px 32px;
    gap: 24px;
    align-items: flex-start;
  }

  body.fluorite-neo-home-page .fluorite-neo-menu {
    gap: 18px;
    justify-content: flex-end;
    max-width: min(60vw, 520px);
  }

  body.fluorite-neo-home-page .fluorite-neo-header-action__label {
    display: none;
  }

  body.fluorite-neo-home-page .fluorite-neo-header-action {
    min-width: 44px;
    justify-content: center;
    padding: 0 12px;
  }

  body.fluorite-neo-home-page .fluorite-logo-area .logo {
    height: 52px;
  }
}

@media (max-width: 700px) {
  body.fluorite-neo-home-page .fluorite-fluorite-neo-header {
    padding: 14px 18px;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    mix-blend-mode: normal;
  }

  body.fluorite-neo-home-page .fluorite-neo-desktop-nav,
  body.fluorite-neo-home-page .fluorite-neo-header-actions {
    display: none;
  }

  body.fluorite-neo-home-page .fluorite-neo-mobile-toggle {
    display: block;
  }

  body.fluorite-neo-home-page .fluorite-logo-area .logo {
    height: 44px;
  }
}

/* End */


/* Start:/local/templates/fluorite_v1/build/neo-home/tailwind.css?177954807528121*/
/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial}}}@media important(body.neo-home-page){@layer theme{:root,:host{--font-sans:"Manrope", sans-serif;--font-serif:"Playfair Display", serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-green-400:oklch(79.2% .209 151.711);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-2xl:42rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--text-8xl:6rem;--text-8xl--line-height:1;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-bold:700;--font-weight-black:900;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-heading:"Syne", sans-serif;--color-bg-color:#f4f4f4;--color-dark:#111}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:calc(var(--spacing) * 0)}.top-1\/2{top:50%}.top-1\/3{top:33.3333%}.right-12{right:calc(var(--spacing) * 12)}.bottom-12{bottom:calc(var(--spacing) * 12)}.left-1\/2{left:50%}.z-0{z-index:0}.z-10{z-index:10}.col-span-2{grid-column:span 2/span 2}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.-mt-4{margin-top:calc(var(--spacing) * -4)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-32{margin-top:calc(var(--spacing) * 32)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-20{margin-bottom:calc(var(--spacing) * 20)}.mb-24{margin-bottom:calc(var(--spacing) * 24)}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.aspect-\[3\/4\]{aspect-ratio:3/4}.aspect-\[4\/5\]{aspect-ratio:4/5}.h-2{height:calc(var(--spacing) * 2)}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-\[1px\]{height:1px}.h-\[60vh\]{height:60vh}.h-\[120\%\]{height:120%}.h-full{height:100%}.h-screen{height:100vh}.max-h-0{max-height:calc(var(--spacing) * 0)}.max-h-\[300px\]{max-height:300px}.min-h-screen{min-height:100vh}.w-2{width:calc(var(--spacing) * 2)}.w-4{width:calc(var(--spacing) * 4)}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-12{width:calc(var(--spacing) * 12)}.w-16{width:calc(var(--spacing) * 16)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-\[220px\]{max-width:220px}.max-w-md{max-width:var(--container-md)}.max-w-xs{max-width:var(--container-xs)}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.origin-bottom{transform-origin:bottom}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-\[10\%\]{--tw-translate-y:calc(10% * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-4{--tw-translate-y:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-90{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-105{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-110{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.rotate-0{rotate:0deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-12{gap:calc(var(--spacing) * 12)}.gap-16{gap:calc(var(--spacing) * 16)}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-black{border-color:var(--color-black)}.border-gray-300{border-color:var(--color-gray-300)}.border-gray-700{border-color:var(--color-gray-700)}.border-gray-800{border-color:var(--color-gray-800)}.border-transparent{border-color:#0000}.border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.border-white\/10{border-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab, red, red)){.border-white\/20{border-color:color-mix(in oklab, var(--color-white) 20%, transparent)}}.border-white\/30{border-color:#ffffff4d}@supports (color:color-mix(in lab, red, red)){.border-white\/30{border-color:color-mix(in oklab, var(--color-white) 30%, transparent)}}.bg-\[\#0a0a0a\]{background-color:#0a0a0a}.bg-\[\#111\]{background-color:#111}.bg-\[\#050505\]{background-color:#050505}.bg-\[\#050505\]\/50{background-color:oklab(11.4918% 7.45058e-9 7.45058e-9/.5)}.bg-\[\#e1e1e1\]{background-color:#e1e1e1}.bg-bg-color{background-color:var(--color-bg-color)}.bg-black\/20{background-color:#0003}@supports (color:color-mix(in lab, red, red)){.bg-black\/20{background-color:color-mix(in oklab, var(--color-black) 20%, transparent)}}.bg-dark{background-color:var(--color-dark)}.bg-green-400{background-color:var(--color-green-400)}.bg-white\/40{background-color:#fff6}@supports (color:color-mix(in lab, red, red)){.bg-white\/40{background-color:color-mix(in oklab, var(--color-white) 40%, transparent)}}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-\[\#050505\]{--tw-gradient-from:#050505;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-black\/80{--tw-gradient-from:#000c}@supports (color:color-mix(in lab, red, red)){.from-black\/80{--tw-gradient-from:color-mix(in oklab, var(--color-black) 80%, transparent)}}.from-black\/80{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-transparent{--tw-gradient-via:transparent;--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.bg-cover{background-size:cover}.bg-center{background-position:50%}.object-cover{object-fit:cover}.p-4{padding:calc(var(--spacing) * 4)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-20{padding-block:calc(var(--spacing) * 20)}.py-24{padding-block:calc(var(--spacing) * 24)}.py-32{padding-block:calc(var(--spacing) * 32)}.pt-0{padding-top:calc(var(--spacing) * 0)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.pb-12{padding-bottom:calc(var(--spacing) * 12)}.pl-8{padding-left:calc(var(--spacing) * 8)}.pl-\[5vw\]{padding-left:5vw}.text-center{text-align:center}.text-right{text-align:right}.font-heading{font-family:var(--font-heading)}.font-mono{font-family:var(--font-mono)}.font-serif{font-family:var(--font-serif)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[6vw\]{font-size:6vw}.text-\[7vw\]{font-size:7vw}.text-\[8vw\]{font-size:8vw}.text-\[10px\]{font-size:10px}.text-\[10vw\]{font-size:10vw}.text-\[12vw\]{font-size:12vw}.text-\[22vw\]{font-size:22vw}.leading-\[0\.8\]{--tw-leading:.8;line-height:.8}.leading-\[1\.1\]{--tw-leading:1.1;line-height:1.1}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-\[0\.3em\]{--tw-tracking:.3em;letter-spacing:.3em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-tighter{--tw-tracking:var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.text-\[\#050505\]{color:#050505}.text-\[\#e1e1e1\]{color:#e1e1e1}.text-\[\#f4f4f4\]{color:#f4f4f4}.text-dark{color:var(--color-dark)}.text-gray-300{color:var(--color-gray-300)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-transparent{color:#0000}.text-white{color:var(--color-white)}.text-white\/40{color:#fff6}@supports (color:color-mix(in lab, red, red)){.text-white\/40{color:color-mix(in oklab, var(--color-white) 40%, transparent)}}.text-white\/60{color:#fff9}@supports (color:color-mix(in lab, red, red)){.text-white\/60{color:color-mix(in oklab, var(--color-white) 60%, transparent)}}.text-white\/\[0\.03\]{color:#ffffff08}@supports (color:color-mix(in lab, red, red)){.text-white\/\[0\.03\]{color:color-mix(in oklab, var(--color-white) 3%, transparent)}}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.opacity-0{opacity:0}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-100{opacity:1}.mix-blend-difference{mix-blend-mode:difference}.mix-blend-exclusion{mix-blend-mode:exclusion}.mix-blend-multiply{mix-blend-mode:multiply}.mix-blend-overlay{mix-blend-mode:overlay}.blur-sm{--tw-blur:blur(var(--blur-sm));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.contrast-125{--tw-contrast:contrast(125%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-75{transition-delay:75ms}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-700{--tw-duration:.7s;transition-duration:.7s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-transform{will-change:transform}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:translate-x-4:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:translate-y-0:is(:where(.group):hover *){--tw-translate-y:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:scale-100:is(:where(.group):hover *){--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\:rotate-45:is(:where(.group):hover *){rotate:45deg}.group-hover\:px-8:is(:where(.group):hover *){padding-inline:calc(var(--spacing) * 8)}.group-hover\:text-white:is(:where(.group):hover *){color:var(--color-white)}.group-hover\:opacity-0:is(:where(.group):hover *){opacity:0}.group-hover\:opacity-20:is(:where(.group):hover *){opacity:.2}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\:grayscale-0:is(:where(.group):hover *){--tw-grayscale:grayscale(0%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.hover\:border-white:hover{border-color:var(--color-white)}.hover\:bg-white:hover{background-color:var(--color-white)}.hover\:text-black:hover{color:var(--color-black)}.hover\:text-dark:hover{color:var(--color-dark)}.hover\:text-white:hover{color:var(--color-white)}.hover\:\[-webkit-text-stroke\:0\]:hover{-webkit-text-stroke:0}}@media (min-width:40rem){.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-\[8vw\]{font-size:8vw}}@media (min-width:48rem){.md\:col-span-1{grid-column:span 1/span 1}.md\:-mt-10{margin-top:calc(var(--spacing) * -10)}.md\:mt-0{margin-top:calc(var(--spacing) * 0)}.md\:mt-12{margin-top:calc(var(--spacing) * 12)}.md\:mb-0{margin-bottom:calc(var(--spacing) * 0)}.md\:mb-6{margin-bottom:calc(var(--spacing) * 6)}.md\:mb-12{margin-bottom:calc(var(--spacing) * 12)}.md\:block{display:block}.md\:flex{display:flex}.md\:h-\[80vh\]{height:80vh}.md\:w-1\/3{width:33.3333%}.md\:translate-y-24{--tw-translate-y:calc(var(--spacing) * 24);translate:var(--tw-translate-x) var(--tw-translate-y)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-end{align-items:flex-end}.md\:gap-3{gap:calc(var(--spacing) * 3)}.md\:gap-4{gap:calc(var(--spacing) * 4)}.md\:gap-6{gap:calc(var(--spacing) * 6)}.md\:gap-16{gap:calc(var(--spacing) * 16)}.md\:gap-24{gap:calc(var(--spacing) * 24)}.md\:gap-32{gap:calc(var(--spacing) * 32)}.md\:p-12{padding:calc(var(--spacing) * 12)}.md\:px-8{padding-inline:calc(var(--spacing) * 8)}.md\:px-12{padding-inline:calc(var(--spacing) * 12)}.md\:py-4{padding-block:calc(var(--spacing) * 4)}.md\:py-12{padding-block:calc(var(--spacing) * 12)}.md\:py-24{padding-block:calc(var(--spacing) * 24)}.md\:py-56{padding-block:calc(var(--spacing) * 56)}.md\:pt-8{padding-top:calc(var(--spacing) * 8)}.md\:pt-24{padding-top:calc(var(--spacing) * 24)}.md\:pl-\[120px\]{padding-left:120px}.md\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.md\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.md\:text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}.md\:text-8xl{font-size:var(--text-8xl);line-height:var(--tw-leading,var(--text-8xl--line-height))}.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.md\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.md\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.md\:text-\[5vw\]{font-size:5vw}.md\:text-\[6vw\]{font-size:6vw}.md\:text-\[7vw\]{font-size:7vw}.md\:text-\[8vw\]{font-size:8vw}.md\:opacity-100{opacity:1}}@media (min-width:64rem){.lg\:flex{display:flex}.lg\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}}}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}
/* End */
/* /local/templates/fluorite_v1/assets/css/styles.css?1780043697496 */
/* /local/templates/fluorite_v1/assets/css/mobile.css?178004521142946 */
/* /local/templates/fluorite_v1/assets/css/site-header.css?178004537517515 */
/* /local/templates/fluorite_v1/assets/css/account.css?178004544942889 */
/* /local/templates/fluorite_v1/build/neo-home/neo-home.css?17795480751622 */
/* /local/templates/fluorite_v1/assets/css/neo-home-bitrix.css?17798967377429 */
/* /local/templates/fluorite_v1/build/neo-home/tailwind.css?177954807528121 */
