/* Brand-is — Ozon-style mobile-first redesign */


:root {
  --brandis-primary: #005bff;
  --brandis-primary-hover: #0048cc;
  --brandis-accent: #ff7a00;
  --brandis-accent-soft: #ffe8d6;
  --brandis-bg: #f5f7fa;
  --brandis-surface: #ffffff;
  --brandis-surface-soft: #f0f5ff;
  --brandis-text: #111827;
  --brandis-text-soft: #667085;
  --brandis-border: rgba(17, 24, 39, 0.08);
  --brandis-shadow: 0 12px 30px rgba(15, 23, 42, 0.10);
  --brandis-radius-sm: 14px;
  --brandis-radius-md: 20px;
  --brandis-radius-lg: 28px;
  --brandis-radius-xl: 34px;
}

html,
body {
  min-height: 100%;
}

body {
  margin: 0;
  background:
    radial-gradient(circle at top left, rgba(255, 122, 0, 0.11), transparent 26%),
    radial-gradient(circle at top right, rgba(0, 91, 255, 0.08), transparent 20%),
    var(--brandis-bg);
  color: var(--brandis-text);
  font-family: Inter, "PT Root UI", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.45;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body.settings_loaded {
  background:
    radial-gradient(circle at top left, rgba(255, 122, 0, 0.11), transparent 26%),
    radial-gradient(circle at top right, rgba(0, 91, 255, 0.08), transparent 20%),
    var(--brandis-bg);
}

a {
  color: var(--brandis-primary);
  text-decoration: none;
}

a:hover {
  color: var(--brandis-primary-hover);
}

img,
svg,
video,
canvas {
  max-width: 100%;
}

img {
  display: block;
}

button,
input,
select,
textarea {
  font: inherit;
}

.page_layout {
  width: 100%;
  max-width: 1480px;
  margin: 0 auto;
  background: transparent;
}

.page_layout-clear {
  background: transparent;
}

header,
main,
footer,
aside,
.page_section_top,
.outside-widgets {
  width: 100%;
}

header {
  position: sticky;
  top: 0;
  z-index: 80;
  color: #fff;
  background: linear-gradient(180deg, #ff8a00 0%, #ff7400 58%, #ff6500 100%) !important;
  box-shadow: 0 14px 36px rgba(255, 122, 0, 0.22);
  overflow: hidden;
}

header::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 20% 10%, rgba(255, 255, 255, 0.22), transparent 18%),
    radial-gradient(circle at 82% 12%, rgba(255, 255, 255, 0.16), transparent 14%);
  pointer-events: none;
}

header > * {
  position: relative;
  z-index: 1;
}

header a,
header button,
header label,
header p,
header span,
header h1,
header h2,
header h3,
header h4,
header h5,
header h6 {
  color: inherit;
}

header svg,
header path,
header use {
  fill: currentColor;
  stroke: currentColor;
}

header input[type="search"],
header input[type="text"],
header input[type="email"],
header input[type="tel"],
header input[type="number"],
header select,
header textarea {
  color: var(--brandis-text);
  background: rgba(255, 255, 255, 0.98);
  border: 0;
  border-radius: 999px;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.12);
}

header input::placeholder,
header textarea::placeholder {
  color: #94a3b8;
}

header .button,
header .btn,
header button,
header input[type="submit"] {
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.12);
}

main {
  padding: 14px 14px 92px;
}

body[data-theme-template="index"] main {
  padding-top: 10px;
}

footer {
  padding: 0 14px 110px;
}

aside {
  padding: 0 14px 24px;
}

.page_section_top {
  padding: 10px 14px 0;
}

.outside-widgets {
  padding: 0 14px;
}

main > *,
footer > *,
aside > *,
.page_section_top > *,
.outside-widgets > * {
  margin: 0 0 14px;
  background: var(--brandis-surface);
  border: 1px solid var(--brandis-border);
  border-radius: var(--brandis-radius-lg);
  box-shadow: var(--brandis-shadow);
  overflow: hidden;
}

main > *:last-child,
footer > *:last-child,
aside > *:last-child,
.page_section_top > *:last-child,
.outside-widgets > *:last-child {
  margin-bottom: 0;
}

body[data-theme-template="index"] main > * {
  position: relative;
}

body[data-theme-template="index"] main > *:first-child {
  margin-top: 2px;
}

[data-fixed-panels="bottom"] {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 90;
  padding: 8px 10px calc(8px + env(safe-area-inset-bottom));
  background: rgba(255, 255, 255, 0.97) !important;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border-top: 1px solid var(--brandis-border);
  box-shadow: 0 -10px 30px rgba(15, 23, 42, 0.09);
}

[data-fixed-panels="bottom"] > * {
  max-width: 1480px;
  margin: 0 auto;
}

[data-fixed-panels="bottom"] a,
[data-fixed-panels="bottom"] button,
[data-fixed-panels="bottom"] [role="button"] {
  color: var(--brandis-text);
}

[data-fixed-panels="bottom"] svg,
[data-fixed-panels="bottom"] path,
[data-fixed-panels="bottom"] use {
  fill: currentColor;
  stroke: currentColor;
}

[data-fixed-panels="bottom"] [class*="badge"],
[data-fixed-panels="bottom"] [class*="counter"],
[data-fixed-panels="bottom"] [class*="count"] {
  background: var(--brandis-accent) !important;
  color: #fff !important;
}

button,
.button,
.btn,
input[type="submit"],
input[type="button"],
input[type="reset"],
[type="button"] {
  appearance: none;
  border: 0;
  border-radius: 999px;
  background: var(--brandis-primary);
  color: #fff;
  box-shadow: 0 12px 24px rgba(0, 91, 255, 0.20);
  transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease, background 0.2s ease;
}

button:hover,
.button:hover,
.btn:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
[type="button"]:hover {
  background: var(--brandis-primary-hover);
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(0, 91, 255, 0.24);
}

button:active,
.button:active,
.btn:active,
input[type="submit"]:active,
input[type="button"]:active,
input[type="reset"]:active,
[type="button"]:active {
  transform: translateY(0);
}

input,
textarea,
select {
  border: 1px solid rgba(17, 24, 39, 0.10);
  border-radius: 18px;
  background: #fff;
  color: var(--brandis-text);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

input:focus,
textarea:focus,
select:focus {
  outline: none;
  border-color: rgba(0, 91, 255, 0.55);
  box-shadow: 0 0 0 4px rgba(0, 91, 255, 0.12);
}

input::placeholder,
textarea::placeholder {
  color: #98a2b3;
}

table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: #fff;
  border-radius: var(--brandis-radius-md);
  overflow: hidden;
  box-shadow: var(--brandis-shadow);
}

th,
td {
  padding: 12px 14px;
  border-bottom: 1px solid rgba(17, 24, 39, 0.06);
}

tr:last-child td {
  border-bottom: 0;
}

[class*="breadcrumb"],
.breadcrumbs,
[class*="crumb"] {
  color: var(--brandis-text-soft);
}

[class*="breadcrumb"] a,
.breadcrumbs a,
[class*="crumb"] a {
  color: inherit;
}

[class*="badge"],
[class*="label"],
[class*="sticker"],
[class*="tag"] {
  border-radius: 999px;
}

[class*="sticker"] {
  background: var(--brandis-accent) !important;
  color: #fff !important;
}

[class*="price"],
[class*="sale"] {
  color: var(--brandis-primary);
}

[class*="favorite"],
[class*="wish"] {
  color: var(--brandis-primary);
}

[class*="favorite"] svg,
[class*="wish"] svg {
  fill: currentColor;
}

[class*="product"],
[class*="catalog"],
[class*="collection"],
[class*="cart"],
[class*="search"] {
  border-radius: inherit;
}

body[data-theme-template="collection"] main > *,
body[data-theme-template="product"] main > *,
body[data-theme-template="cart"] main > *,
body[data-theme-template="search"] main > *,
body[data-theme-template="page"] main > * {
  overflow: visible;
}

body[data-theme-template="index"] main > *,
body[data-theme-template="collection"] main > *,
body[data-theme-template="product"] main > *,
body[data-theme-template="cart"] main > *,
body[data-theme-template="search"] main > * {
  padding-left: 0;
  padding-right: 0;
}

[class*="slider"],
[class*="swiper"],
[class*="carousel"] {
  overflow: hidden;
}

[class*="slider"] [class*="slide"],
[class*="swiper"] [class*="slide"],
[class*="carousel"] [class*="slide"] {
  border-radius: var(--brandis-radius-lg);
}

[class*="menu"],
[class*="nav"] {
  border-radius: inherit;
}

[class*="menu"] a,
[class*="nav"] a {
  color: var(--brandis-text);
}

[class*="menu"] a:hover,
[class*="nav"] a:hover {
  color: var(--brandis-primary);
}

[class*="menu"] .active,
[class*="nav"] .active,
[class*="menu"] [aria-current="page"],
[class*="nav"] [aria-current="page"] {
  color: var(--brandis-primary);
}

[class*="header"] {
  border-radius: inherit;
}

[class*="footer"] {
  border-radius: inherit;
}

[class*="banner"],
[class*="promo"],
[class*="hero"],
[class*="tile"] {
  border-radius: var(--brandis-radius-lg);
}

[class*="banner"] img,
[class*="promo"] img,
[class*="hero"] img {
  border-radius: inherit;
}

@media (min-width: 769px) {
  main {
    padding: 20px 20px 100px;
  }

  footer,
  aside,
  .page_section_top,
  .outside-widgets {
    padding-left: 20px;
    padding-right: 20px;
  }

  main > *,
  footer > *,
  aside > *,
  .page_section_top > *,
  .outside-widgets > * {
    border-radius: var(--brandis-radius-xl);
  }

  body[data-theme-template="index"] header {
    border-bottom-left-radius: 30px;
    border-bottom-right-radius: 30px;
  }

  [data-fixed-panels="bottom"] {
    left: 50%;
    transform: translateX(-50%);
    width: min(100%, 1480px);
    border-top-left-radius: 26px;
    border-top-right-radius: 26px;
  }
}

@media (max-width: 768px) {
  main {
    padding: 12px 12px 90px;
  }

  footer,
  aside,
  .page_section_top,
  .outside-widgets {
    padding-left: 12px;
    padding-right: 12px;
  }

  main > *,
  footer > *,
  aside > *,
  .page_section_top > *,
  .outside-widgets > * {
    border-radius: 22px;
  }

  header {
    border-bottom-left-radius: 24px;
    border-bottom-right-radius: 24px;
  }

  [data-fixed-panels="bottom"] {
    padding-left: 8px;
    padding-right: 8px;
  }

  body {
    padding-bottom: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation: none !important;
    transition: none !important;
  }
}
