/*
 * Logaz Auto — modern visual layer for the Redbox OpenCart theme.
 * Loaded after the legacy theme styles so existing extensions keep working.
 */

:root {
  --gbo-blue: #1f5fae;
  --gbo-blue-dark: #123f78;
  --gbo-blue-deep: #0b2748;
  --gbo-blue-soft: #eaf3ff;
  --gbo-green: #70b62c;
  --gbo-green-dark: #55951d;
  --gbo-green-soft: #eef8e5;
  --gbo-ink: #142033;
  --gbo-text: #445063;
  --gbo-muted: #778195;
  --gbo-border: #dfe6ef;
  --gbo-border-strong: #cbd5e2;
  --gbo-surface: #ffffff;
  --gbo-bg: #f4f7fb;
  --gbo-bg-deep: #eaf0f7;
  --gbo-danger: #d94141;
  --gbo-warning: #ec9d24;
  --gbo-success: #31945a;
  --gbo-radius-sm: 8px;
  --gbo-radius: 14px;
  --gbo-radius-lg: 22px;
  --gbo-shadow-sm: 0 6px 20px rgba(18, 43, 75, 0.07);
  --gbo-shadow: 0 16px 40px rgba(18, 43, 75, 0.11);
  --gbo-shadow-lg: 0 28px 70px rgba(8, 30, 56, 0.16);
  --gbo-transition: 180ms ease;
  --gbo-container: 1280px;
}

* {
  box-sizing: border-box;
}

html {
  min-width: 320px;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  min-width: 320px;
  overflow-x: hidden;
  color: var(--gbo-text);
  background: var(--gbo-bg);
  font-family: "Manrope", Arial, sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body.gbo-menu-open {
  overflow: hidden;
}


body.gbo-menu-open .gbo-site-header {
  z-index: 20000;
}

body > .container,
body > div > .container,
.container {
  width: 100%;
  max-width: var(--gbo-container);
  padding-right: 24px;
  padding-left: 24px;
  margin-right: auto;
  margin-left: auto;
}

img {
  max-width: 100%;
  height: auto;
}

svg {
  max-width: 100%;
}

a {
  color: var(--gbo-blue);
  text-decoration: none;
  transition: color var(--gbo-transition), background-color var(--gbo-transition), border-color var(--gbo-transition), opacity var(--gbo-transition), transform var(--gbo-transition), box-shadow var(--gbo-transition);
}

a:hover,
a:focus {
  color: var(--gbo-green-dark);
  text-decoration: none;
}

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

button,
[role="button"] {
  touch-action: manipulation;
}

button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid rgba(31, 95, 174, 0.24);
  outline-offset: 2px;
}

::selection {
  color: #fff;
  background: var(--gbo-blue);
}

h1,
h2,
h3,
h4,
h5,
h6,
.page-title,
.box-heading {
  color: var(--gbo-ink);
  font-family: "Manrope", Arial, sans-serif;
  font-weight: 800;
  line-height: 1.18;
}

h1,
.page-title {
  margin: 0 0 28px;
  font-size: clamp(28px, 3.4vw, 36px);
}

h2 {
  margin: 34px 0 18px;
  font-size: clamp(24px, 2.5vw, 30px);
}

h3 {
  margin: 26px 0 14px;
  font-size: 22px;
}

h4 {
  font-size: 17px;
}

p {
  margin: 0 0 18px;
}

ul,
ol {
  padding-left: 22px;
}

hr {
  border: 0;
  border-top: 1px solid var(--gbo-border);
}

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

.gbo-skip-link {
  position: fixed;
  top: 12px;
  left: 12px;
  z-index: 100000;
  padding: 12px 18px;
  color: #fff;
  background: var(--gbo-blue-deep);
  border-radius: var(--gbo-radius-sm);
  transform: translateY(-160%);
}

.gbo-skip-link:focus {
  color: #fff;
  transform: translateY(0);
}

/* Bootstrap components, refreshed */
.btn,
button.btn,
input.btn {
  min-height: 44px;
  padding: 11px 20px;
  border: 1px solid transparent;
  border-radius: 10px;
  box-shadow: none;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0;
  text-shadow: none;
  transition: transform var(--gbo-transition), box-shadow var(--gbo-transition), background-color var(--gbo-transition), border-color var(--gbo-transition), color var(--gbo-transition);
}

.btn:hover,
.btn:focus {
  transform: translateY(-1px);
}

.btn-primary,
.button_oc,
.buttons .btn-primary,
#button-cart,
#button-filter,
.simplecheckout-button-right .button,
.simpleregister-button-right .button {
  color: #fff !important;
  background: linear-gradient(135deg, var(--gbo-blue), #2a76c9) !important;
  border-color: var(--gbo-blue) !important;
  box-shadow: 0 8px 22px rgba(31, 95, 174, 0.22) !important;
}

.btn-primary:hover,
.btn-primary:focus,
.button_oc:hover,
#button-cart:hover,
#button-filter:hover {
  color: #fff !important;
  background: linear-gradient(135deg, var(--gbo-blue-dark), var(--gbo-blue)) !important;
  border-color: var(--gbo-blue-dark) !important;
  box-shadow: 0 11px 28px rgba(31, 95, 174, 0.3) !important;
}

.btn-default {
  color: var(--gbo-ink);
  background: #fff;
  border-color: var(--gbo-border-strong);
}

.btn-default:hover,
.btn-default:focus {
  color: var(--gbo-blue);
  background: var(--gbo-blue-soft);
  border-color: rgba(31, 95, 174, 0.35);
}

.btn-danger {
  color: #fff;
  background: var(--gbo-danger);
  border-color: var(--gbo-danger);
}

.btn-link {
  color: var(--gbo-blue);
  font-weight: 700;
}

.form-control,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="number"],
input[type="search"],
select,
textarea {
  width: 100%;
  min-height: 46px;
  padding: 11px 14px;
  color: var(--gbo-ink);
  background: #fff;
  border: 1px solid var(--gbo-border-strong);
  border-radius: 10px;
  box-shadow: none;
  font-size: 14px;
  transition: border-color var(--gbo-transition), box-shadow var(--gbo-transition), background-color var(--gbo-transition);
}

textarea.form-control,
textarea {
  min-height: 120px;
  resize: vertical;
}

.form-control:focus,
input:focus,
select:focus,
textarea:focus {
  background: #fff;
  border-color: var(--gbo-blue);
  box-shadow: 0 0 0 4px rgba(31, 95, 174, 0.1);
  outline: none;
}

.form-control::placeholder,
input::placeholder,
textarea::placeholder {
  color: #98a2b2;
  opacity: 1;
}

label,
.control-label {
  margin-bottom: 7px;
  color: var(--gbo-ink);
  font-size: 13px;
  font-weight: 700;
}

.form-group {
  margin-bottom: 18px;
}

.form-group.required .control-label::before,
.form-group.required label::before {
  color: var(--gbo-danger);
}

.checkbox label,
.radio label {
  color: var(--gbo-text);
  font-weight: 500;
}

input[type="checkbox"],
input[type="radio"] {
  accent-color: var(--gbo-blue);
}

.input-group-addon,
.input-group-btn .btn {
  border-color: var(--gbo-border-strong);
}

.table-responsive {
  margin-bottom: 24px;
  overflow: auto;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius);
  box-shadow: var(--gbo-shadow-sm);
  -webkit-overflow-scrolling: touch;
}

.table {
  margin-bottom: 0;
  color: var(--gbo-text);
  background: #fff;
}

.table > thead > tr > th,
.table > tbody > tr > td,
.table > tfoot > tr > td {
  padding: 14px 16px;
  vertical-align: middle;
  border-color: var(--gbo-border);
}

.table > thead > tr > th {
  color: var(--gbo-ink);
  background: var(--gbo-bg);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.alert {
  position: relative;
  padding: 15px 46px 15px 18px;
  border: 1px solid transparent;
  border-radius: var(--gbo-radius);
  box-shadow: var(--gbo-shadow-sm);
}

.alert-success {
  color: #1f6b3e;
  background: #ebf8f0;
  border-color: #bde6cd;
}

.alert-danger {
  color: #8d2e2e;
  background: #fff0f0;
  border-color: #f0c6c6;
}

.alert-warning {
  color: #80571a;
  background: #fff7e8;
  border-color: #efd7a8;
}

.alert-info {
  color: var(--gbo-blue-dark);
  background: var(--gbo-blue-soft);
  border-color: #c8ddf6;
}

.panel,
.well,
.list-group,
.modal-content {
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius);
  box-shadow: var(--gbo-shadow-sm);
}

.panel-heading,
.modal-header {
  color: var(--gbo-ink);
  background: var(--gbo-bg);
  border-color: var(--gbo-border);
  border-radius: var(--gbo-radius) var(--gbo-radius) 0 0;
}

.panel-title {
  color: var(--gbo-ink);
  font-weight: 800;
}

.modal-content {
  overflow: hidden;
  border: 0;
  box-shadow: var(--gbo-shadow-lg);
}

.modal-header,
.modal-body,
.modal-footer {
  padding: 22px 24px;
}

/* Header */
.gbo-header-sentinel {
  height: 0;
}


/* Bootstrap 3 adds clearfix pseudo-elements to every .container. They must not become flex/grid items. */
.gbo-notice__inner::before,
.gbo-notice__inner::after,
.gbo-topbar__inner::before,
.gbo-topbar__inner::after,
.gbo-header-main__inner::before,
.gbo-header-main__inner::after {
  display: none;
  content: none;
}

.gbo-notice {
position: relative;
z-index: 1002;
color: #fff;
background: #bd3333;
font-size: 13px;
font-weight: 600;
border-radius: 8px;
margin-bottom: 10px;
}

.gbo-notice .fa{color: #fff;}

.gbo-notice__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  gap: 9px;
  text-align: center;
    line-height: 135%;
    padding-top: 5px;
    padding-bottom: 5px;
}

.gbo-notice i {
  color: #9fc4ed;
}

.gbo-site-header {
  position: relative;
  z-index: 1000;
  background: #fff;
  box-shadow: 0 1px 0 var(--gbo-border);
}

.gbo-site-header.is-scrolled {
  box-shadow: 0 8px 32px rgba(11, 39, 72, 0.1);
}

.gbo-topbar {
  color: #607087;
  background: #f7f9fc;
  border-bottom: 1px solid #edf1f5;
  font-size: 12px;
}

.gbo-topbar__inner {
  display: flex;
  align-items: center;
  min-height: 36px;
  gap: 28px;
}

.gbo-topbar__item {
  display: flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}

.gbo-topbar__item i {
  color: var(--gbo-blue);
}

.gbo-topbar__item--right {
  margin-left: auto;
  gap: 18px;
}

.gbo-topbar a {
  color: inherit;
}

.gbo-topbar a:hover {
  color: var(--gbo-blue);
}

.gbo-topbar .dropdown-menu {
  min-width: 160px;
  padding: 8px;
  border: 1px solid var(--gbo-border);
  border-radius: 10px;
  box-shadow: var(--gbo-shadow);
}

.gbo-header-main__inner {
  display: grid;
  grid-template-columns: minmax(190px, 245px) minmax(300px, 1fr) minmax(210px, auto) auto;
  align-items: center;
  min-height: 104px;
  gap: 28px;
}

.gbo-brand {
  min-width: 0;
}

.gbo-brand__link {
  display: inline-flex;
  align-items: center;
}

.gbo-brand__image {
  display: block;
  width: auto;
  max-width: 215px;
  max-height: 56px;
  object-fit: contain;
}

.gbo-brand__text,
.gbo-footer-logo > span {
  color: var(--gbo-blue);
  font-size: 28px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.055em;
}

.gbo-brand__text span,
.gbo-footer-logo > span span {
  color: var(--gbo-green);
}

.gbo-brand__caption {
    display: block;
    max-width: 230px;
    color: var(--gbo-muted);
    font-size: 10px;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: 0.02em;
}

.gbo-header-search {
  min-width: 0;
}

.gbo-search {
  display: flex;
  width: 100%;
  padding: 4px;
  background: var(--gbo-bg);
  border: 1px solid var(--gbo-border);
  border-radius: 13px;
  transition: border-color var(--gbo-transition), box-shadow var(--gbo-transition), background-color var(--gbo-transition);
}

.gbo-search:focus-within {
  background: #fff;
  border-color: rgba(31, 95, 174, 0.55);
  box-shadow: 0 0 0 4px rgba(31, 95, 174, 0.08);
}

.gbo-search .form-control {
  min-width: 0;
  height: 46px;
  min-height: 46px;
  padding: 0 14px;
  background: transparent;
  border: 0;
  border-radius: 9px;
  box-shadow: none;
}

.gbo-search .input-group-btn {
  width: auto;
}

.gbo-search .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 46px;
  min-height: 46px;
  padding: 0 18px;
  gap: 8px;
  color: #fff;
  background: var(--gbo-blue);
  border: 0;
  border-radius: 9px;
}

.gbo-search .btn:hover,
.gbo-search .btn:focus {
  color: #fff;
  background: var(--gbo-blue-dark);
  transform: none;
}

/* Legacy Redbox ID selectors are intentionally overridden here. */
#search.gbo-search {
  position: relative;
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
  z-index: auto;
  display: flex;
  width: 100%;
  min-width: 0;
  padding: 4px;
  margin: 0;
}

#search.gbo-search .form-control,
#search.gbo-search .input-lg {
  float: none;
  width: 100%;
  height: 46px;
  min-height: 46px;
  padding: 0 14px;
  margin: 0;
  background: transparent;
  border: 0;
  border-radius: 9px;
  box-shadow: none;
}

#search.gbo-search .input-group-btn {
  position: static;
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
  display: flex;
  width: auto;
  line-height: normal;
}

#search.gbo-search .btn,
#search.gbo-search .btn-lg {
  position: static;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  height: 46px;
  min-height: 46px;
  padding: 0 18px;
  margin: 0;
  color: #fff;
  background: var(--gbo-blue);
  border: 0;
  border-radius: 9px;
  gap: 8px;
  font-size: 13px;
  line-height: 1;
}

#search.gbo-search .btn:hover,
#search.gbo-search .btn:focus {
  color: #fff;
  background: var(--gbo-blue-dark);
}

.gbo-header-contacts {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
}

.gbo-phone {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--gbo-ink);
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}

.gbo-phone:hover {
  color: var(--gbo-blue);
}

.gbo-phone--primary {
  gap: 10px;
}

.gbo-phone--primary span:last-child {
  display: flex;
  flex-direction: column;
}

.gbo-phone--primary small {
  color: var(--gbo-muted);
  font-size: 10px;
  font-weight: 600;
}

.gbo-phone--primary strong {
  color: var(--gbo-ink);
  font-size: 16px;
  font-weight: 800;
}

.gbo-phone__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  color: #fff;
  background: var(--gbo-green);
  border-radius: 50%;
  box-shadow: 0 8px 20px rgba(112, 182, 44, 0.23);
}

.gbo-header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}

.gbo-account {
  position: relative;
}

.gbo-header-action {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 66px;
  height: 62px;
  padding: 6px;
  color: var(--gbo-ink);
  background: transparent;
  border: 0;
  border-radius: 11px;
  font-size: 10px;
  font-weight: 700;
  cursor: pointer;
}

.gbo-header-action i {
  margin-bottom: 5px;
  color: var(--gbo-blue);
  font-size: 22px;
}

.gbo-header-action:hover,
.gbo-header-action[aria-expanded="true"] {
  color: var(--gbo-blue);
  background: var(--gbo-blue-soft);
}

.gbo-account__menu {
  position: absolute;
  top: calc(100% + 12px);
  right: 0;
  z-index: 1005;
  width: 230px;
  padding: 8px;
  visibility: hidden;
  opacity: 0;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius);
  box-shadow: var(--gbo-shadow);
  transform: translateY(8px);
  transition: opacity var(--gbo-transition), visibility var(--gbo-transition), transform var(--gbo-transition);
}

.gbo-account__menu::before {
  position: absolute;
  top: -7px;
  right: 24px;
  width: 12px;
  height: 12px;
  content: "";
  background: #fff;
  border-top: 1px solid var(--gbo-border);
  border-left: 1px solid var(--gbo-border);
  transform: rotate(45deg);
}

.gbo-account__menu.is-open {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.gbo-account__menu a {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  min-height: 42px;
  padding: 9px 11px;
  color: var(--gbo-ink);
  border-radius: 8px;
  gap: 10px;
  font-size: 13px;
  font-weight: 600;
}

.gbo-account__menu a:hover {
  color: var(--gbo-blue);
  background: var(--gbo-blue-soft);
}

.gbo-account__menu a i {
  width: 18px;
  color: var(--gbo-blue);
  text-align: center;
}

.gbo-header-cart {
  min-width: 90px;
}

.gbo-cart {
  position: relative;
}

.gbo-cart__toggle {
  display: flex;
  align-items: center;
  width: auto;
  min-width: 82px;
  height: 62px;
  min-height: 62px;
  padding: 6px 10px;
  color: var(--gbo-ink);
  background: transparent;
  border: 0;
  border-radius: 11px;
  gap: 8px;
  text-align: left;
}

.gbo-cart.open .gbo-cart__toggle,
.gbo-cart__toggle:hover,
.gbo-cart__toggle:focus {
  color: var(--gbo-blue);
  background: var(--gbo-blue-soft);
  box-shadow: none;
  transform: none;
}

.gbo-cart__icon {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  color: var(--gbo-blue);
  font-size: 21px;
}

.gbo-cart__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.gbo-cart__content small {
  color: var(--gbo-muted);
  font-size: 10px;
  font-weight: 600;
}

.gbo-cart__content strong {
  display: block;
  max-width: 104px;
  overflow: hidden;
  color: var(--gbo-ink);
  font-size: 11px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.gbo-cart__arrow {
  color: var(--gbo-muted);
  font-size: 11px;
}

.gbo-cart__menu {
  right: 0;
  left: auto;
  width: min(440px, calc(100vw - 30px));
  min-width: 360px;
  padding: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius);
  box-shadow: var(--gbo-shadow-lg);
}

.gbo-cart__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 17px 20px;
  color: var(--gbo-ink);
  background: var(--gbo-bg);
  border-bottom: 1px solid var(--gbo-border);
}

.gbo-cart__head span {
  color: var(--gbo-muted);
  font-size: 12px;
}

.gbo-cart__products {
  max-height: 330px;
  overflow-y: auto;
}

.gbo-cart__products .table td {
  padding: 12px 8px;
  border-top: 1px solid var(--gbo-border);
}

.gbo-cart__products .table tr:first-child td {
  border-top: 0;
}

.gbo-cart__thumb {
  width: 66px;
}

.gbo-cart__thumb img {
  width: 52px;
  height: 52px;
  padding: 3px;
  object-fit: contain;
  border-color: var(--gbo-border);
  border-radius: 8px;
}

.gbo-cart__name a {
  display: block;
  color: var(--gbo-ink);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
}

.gbo-cart__name small {
  display: block;
  color: var(--gbo-muted);
  font-size: 10px;
}

.gbo-cart__quantity,
.gbo-cart__price {
  color: var(--gbo-ink);
  font-size: 12px;
  white-space: nowrap;
}

.gbo-icon-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 7px;
}

.gbo-icon-button--danger {
  color: var(--gbo-danger);
}

.gbo-icon-button--danger:hover {
  background: #fff0f0;
}

.gbo-cart__totals {
  padding: 12px 20px;
  background: var(--gbo-bg);
  border-top: 1px solid var(--gbo-border);
}

.gbo-cart__totals > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 4px 0;
  font-size: 12px;
}

.gbo-cart__totals strong {
  color: var(--gbo-ink);
}

.gbo-cart__buttons {
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding: 14px 20px 20px;
  gap: 10px;
}

.gbo-cart__empty {
  padding: 34px 24px;
  color: var(--gbo-muted);
  text-align: center;
}

.gbo-cart__empty i {
  display: block;
  margin-bottom: 12px;
  color: #b2bdca;
  font-size: 36px;
}

.gbo-cart__empty strong {
  display: block;
  margin-bottom: 4px;
  color: var(--gbo-ink);
}

.gbo-cart__empty p {
  margin: 0;
  font-size: 12px;
}


#cart.gbo-cart {
  position: relative;
  float: none;
  width: auto;
  min-width: 0;
  padding: 0;
  margin: 0;
}

#cart.gbo-cart > .gbo-cart__toggle,
#cart.gbo-cart > .btn.gbo-cart__toggle {
  position: static;
  display: flex;
  align-items: center;
  width: auto;
  min-width: 82px;
  height: 62px;
  min-height: 62px;
  padding: 6px 10px;
  margin: 0;
  color: var(--gbo-ink);
  background: transparent;
  border: 0;
  border-radius: 11px;
  gap: 8px;
  line-height: 1.2;
  text-align: left;
  text-shadow: none;
  box-shadow: none;
}

#cart.gbo-cart.open > .gbo-cart__toggle,
#cart.gbo-cart > .gbo-cart__toggle:hover,
#cart.gbo-cart > .gbo-cart__toggle:focus {
  color: var(--gbo-blue);
  background: var(--gbo-blue-soft);
}

#cart.gbo-cart .gbo-cart__menu,
#cart.gbo-cart .dropdown-menu.gbo-cart__menu {
  top: calc(100% + 12px);
  right: 0;
  left: auto;
  width: min(440px, calc(100vw - 30px));
  min-width: 360px;
  padding: 0;
  margin: 0;
  overflow: hidden;
  color: var(--gbo-text);
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius);
  box-shadow: var(--gbo-shadow-lg);
}

/* Navigation and mega menu */
.gbo-navigation-wrap {
  color: #fff;
  background: var(--gbo-blue-deep);
}

.gbo-nav {
  position: relative;
}

.gbo-nav__mobile-toggle,
.gbo-nav__mobile-head,
.gbo-nav__mobile-search,
.gbo-nav__mobile-contacts,
.gbo-nav__backdrop {
  display: none;
}

.gbo-nav__list {
  display: flex;
  align-items: stretch;
  min-height: 54px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.gbo-nav__item {
  position: relative;
  display: flex;
  align-items: stretch;
}

.gbo-nav__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 0 14px;
  color: rgba(255, 255, 255, 0.9);
  gap: 8px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}

.gbo-nav__link:hover,
.gbo-nav__link:focus,
.gbo-nav__item.is-submenu-open > .gbo-nav__link {
  color: #fff;
  background: rgba(255, 255, 255, 0.1);
}

.gbo-nav__item.is-submenu-open i{color:#fff}


.gbo-nav__item--catalog {
  margin-right: 8px;
  background: var(--gbo-blue);
}

.gbo-nav__item--catalog:hover,
.gbo-nav__item--catalog.is-submenu-open {
  background: #2874c8;
}

.gbo-nav__link--catalog {
  padding-right: 8px;
  padding-left: 18px;
  font-size: 13px;
}

.gbo-nav__item--accent {
  margin-right: auto;
}

.gbo-nav__item--accent .gbo-nav__link {
  color: #fff;
  background: var(--gbo-green);
}

.gbo-nav__item--accent .gbo-nav__link:hover {
  background: var(--gbo-green-dark);
}

.gbo-nav__submenu-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  min-height: 54px;
  padding: 0;
  color: #fff;
  background: transparent;
  border: 0;
  cursor: pointer;
}

.gbo-nav__submenu-toggle i {
  transition: transform var(--gbo-transition);
}

.gbo-nav__item.is-submenu-open .gbo-nav__submenu-toggle i {
  transform: rotate(180deg);
}

.gbo-mega-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1004;
  width: min(1120px, calc(100vw - 48px));
  max-height: min(72vh, 680px);
  overflow-y: auto;
  visibility: hidden;
  opacity: 0;
  color: var(--gbo-text);
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 0 0 var(--gbo-radius-lg) var(--gbo-radius-lg);
  box-shadow: var(--gbo-shadow-lg);
  transform: translateY(10px);
  transition: opacity var(--gbo-transition), visibility var(--gbo-transition), transform var(--gbo-transition);
}

.gbo-nav__item--catalog:hover .gbo-mega-menu,
.gbo-nav__item--catalog:focus-within .gbo-mega-menu,
.gbo-nav__item--catalog.is-submenu-open .gbo-mega-menu {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.gbo-mega-menu__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 24px;
  background: var(--gbo-bg);
  border-bottom: 1px solid var(--gbo-border);
  gap: 24px;
}

.gbo-mega-menu__head > div {
  display: flex;
  flex-direction: column;
}

.gbo-mega-menu__head span {
  color: var(--gbo-ink);
  font-size: 16px;
  font-weight: 800;
}

.gbo-mega-menu__head small {
  color: var(--gbo-muted);
  font-size: 11px;
}

.gbo-mega-menu__head > a {
  color: var(--gbo-blue);
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}

.gbo-mega-menu__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 22px 24px 28px;
  gap: 26px 24px;
}

.gbo-mega-menu__group {
  min-width: 0;
}

.gbo-mega-menu__title {
  display: block;
  padding-bottom: 9px;
  color: var(--gbo-ink);
  border-bottom: 2px solid var(--gbo-green);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
}

.gbo-mega-menu__group > ul,
.gbo-mega-menu__group ul {
  padding: 0;
  margin: 9px 0 0;
  list-style: none;
}

.gbo-mega-menu__group li + li {
  margin-top: 5px;
}

.gbo-mega-menu__group li a {
  display: inline-block;
  color: var(--gbo-text);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
}

.gbo-mega-menu__group li a:hover {
  color: var(--gbo-blue);
}

.gbo-mega-menu__level-three {
  display: none;
}

/* Main page shell */
#common-home,
.categorypage,
.productpage,
#product-search,
#product-special,
#product-manufacturer,
#information-information,
#information-contact,
#information-sitemap,
#account-account,
#account-login,
#account-register,
#checkout-cart,
#checkout-checkout,
.simple-content,
.blog_page,
.blog_category_page {
  padding-top: 30px;
  padding-bottom: 58px;
}

#common-home {
  padding-top: 24px;
}

#common-home > .container,
.categorypage > .container,
.productpage > .container,
body > div[id] > .container {
  position: relative;
}

#common-home .content-top,
#common-home .content-bottom {
  margin: 0;
}

#common-home .content-top::before,
#common-home .content-top::after,
#common-home .content-bottom::before,
#common-home .content-bottom::after {
  display: table;
  content: "";
}

#common-home .content-top::after,
#common-home .content-bottom::after {
  clear: both;
}

#common-home #content1,
#common-home #content {
  min-width: 0;
}

#common-home .content-bottom > #content {
  padding-right: 15px;
  padding-left: 15px;
}

.breadcrumb {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding: 0;
  margin: 0 0 24px;
  color: var(--gbo-muted);
  background: transparent;
  border: 0;
  gap: 6px;
  font-size: 12px;
}

.breadcrumb > li,
.breadcrumb .breadcrumbs__item {
  display: inline-flex;
  align-items: center;
}

.breadcrumb > li + li::before,
.breadcrumb .breadcrumbs__item + .breadcrumbs__item::before {
  padding: 0 2px 0 0;
  color: #aeb7c4;
  content: "\f105";
  font-family: FontAwesome;
}

.breadcrumb a,
.breadcrumb .breadcrumbs__link {
  color: var(--gbo-muted);
}

.breadcrumb a:hover,
.breadcrumb .breadcrumbs__link:hover {
  color: var(--gbo-blue);
}

#content {
  min-height: 1px;
}

#content > h1,
#content > h2.page-title,
#content > .page-title {
  position: relative;
  padding-bottom: 16px;
}

#content > h1::after,
#content > h2.page-title::after,
#content > .page-title::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 62px;
  height: 4px;
  content: "";
  background: linear-gradient(90deg, var(--gbo-blue), var(--gbo-green));
  border-radius: 10px;
}

#content > p,
#content > div:not(.row):not(.category_filter):not(.product-layout-wrap):not(.pagination-wrapper):not(.box) {
  max-width: 100%;
}

/* Sidebar */
#column-left,
#column-right {
  position: relative;
}

#column-left .box,
#column-right .box,
.category_module,
.sidebarFilter,
.account,
.information {
  margin-bottom: 20px;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius);
  box-shadow: var(--gbo-shadow-sm);
}

.box .box-heading,
.title-wrapper .box-heading,
.category_module .box-heading,
.sidebarFilter .box-heading,
#column-left .box-heading,
#column-right .box-heading {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 54px;
  padding: 15px 18px;
  margin: 0;
  color: var(--gbo-ink);
  background: var(--gbo-bg);
  border-bottom: 1px solid var(--gbo-border);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.3;
}

.box .box-content,
.category_module .box-content,
.sidebarFilter .filterbox {
  padding: 12px 16px;
}

.box-category,
.treeview-list,
#column-left .box ul,
#column-right .box ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

.box-category > li,
.treeview-list > li {
  border-bottom: 1px solid var(--gbo-border);
}

.box-category > li:last-child,
.treeview-list > li:last-child {
  border-bottom: 0;
}

.box-category a,
.treeview-list a,
#column-left .box-content > ul > li > a,
#column-right .box-content > ul > li > a {
  display: block;
  padding: 10px 4px;
  color: var(--gbo-text);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.4;
}

.box-category a:hover,
.box-category a.active,
.treeview-list a:hover,
.treeview-list a.active {
  color: var(--gbo-blue);
}

.box-category ul,
.treeview-list ul {
  padding: 0 0 8px 14px;
}

.box-category ul li,
.treeview-list ul li {
  border: 0;
}

.sidebarFilter .list-group {
  margin: 0;
  border: 0;
  box-shadow: none;
}

.sidebarFilter .list-group-items + .list-group-items {
  border-top: 1px solid var(--gbo-border);
}

.sidebarFilter .list-group-item {
  padding: 10px 0;
  background: transparent;
  border: 0;
}

.sidebarFilter a.list-group-item {
  color: var(--gbo-ink);
  font-size: 13px;
  font-weight: 800;
}

.sidebarFilter .checkbox {
  margin: 7px 0;
}

.sidebarFilter .checkbox label {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 12px;
}

.sidebarFilter .panel-footer {
  padding: 14px 0 4px;
  background: transparent;
  border: 0;
}

.sidebarFilter #button-filter {
  width: 100%;
}

/* Product sections and carousels */
.box.featured,
.box.latest,
.box.bestseller,
.box.special,
.box.category_tab,
.home-products {
  margin: 30px 0;
  overflow: visible;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.box.featured > .box-heading,
.box.latest > .box-heading,
.box.bestseller > .box-heading,
.box.special > .box-heading,
.box.category_tab > .box-heading,
.home-products > .box-heading {
  min-height: auto;
  padding: 0 0 16px;
  color: var(--gbo-ink);
  background: transparent;
  border: 0;
  font-size: clamp(23px, 2.5vw, 32px);
}

.box.featured > .box-heading::after,
.box.latest > .box-heading::after,
.box.bestseller > .box-heading::after,
.box.special > .box-heading::after,
.home-products > .box-heading::after {
  position: absolute;
  bottom: 4px;
  left: 0;
  width: 58px;
  height: 4px;
  content: "";
  background: linear-gradient(90deg, var(--gbo-blue), var(--gbo-green));
  border-radius: 10px;
}

.box.featured > .box-content,
.box.latest > .box-content,
.box.bestseller > .box-content,
.box.special > .box-content,
.home-products > .box-content {
  padding: 0;
}

.box-product,
.productbox-grid {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -8px;
}

.box-product .product-items,
.box-product .slider-item,
.product-carousel .slider-item {
  padding: 8px;
}

.product-layout-wrap {
  margin-top: 18px;
}

.product-layout-wrap > .row,
#content .product-layout-wrap > .row {
  display: flex;
  flex-wrap: wrap;
}

.product-layout {
  margin-bottom: 20px;
}

.product-layout.product-grid,
.product-layout.product-list {
  transition: width var(--gbo-transition);
}

.product-block,
.product-thumb {
  position: relative;
  height: 100%;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius);
  box-shadow: var(--gbo-shadow-sm);
  transition: border-color var(--gbo-transition), box-shadow var(--gbo-transition), transform var(--gbo-transition);
}

.product-block:hover,
.product-thumb:hover {
  border-color: rgba(31, 95, 174, 0.28);
  box-shadow: var(--gbo-shadow);
  transform: translateY(-4px);
}

.product-block-inner {
  display: flex;
  height: 100%;
  flex-direction: column;
}

.product-block .image,
.product-thumb .image {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 215px;
  padding: 20px;
  overflow: hidden;
  background: linear-gradient(180deg, #fff 0%, #fbfcfe 100%);
  border-bottom: 1px solid var(--gbo-border);
}

.product-block .image > a,
.product-thumb .image > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.product-block .image img,
.product-thumb .image img {
  width: auto;
  max-width: 100%;
  max-height: 220px;
  object-fit: contain;
  transition: transform 300ms ease, opacity 300ms ease;
}

.product-block:hover .image img.reg-image,
.product-thumb:hover .image img.reg-image,
.product-block:hover .image > a > img:not(.hover-image),
.product-thumb:hover .image > a > img:not(.hover-image) {
  transform: scale(1.035);
}

.product-block .hover-image,
.product-thumb .hover-image {
  position: absolute;
  inset: 20px;
  width: calc(100% - 40px) !important;
  height: calc(100% - 40px);
  opacity: 0;
  object-fit: contain;
}

.product-block:hover .hover-image,
.product-thumb:hover .hover-image {
  opacity: 1;
}

.product-block:hover .reg-image,
.product-thumb:hover .reg-image {
  opacity: 0;
}

.saleback {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 2;
}

.saleicon,
.sale {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 9px;
  color: #fff;
  background: var(--gbo-danger);
  border-radius: 7px;
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.percentsaving {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 7px;
  margin-left: 7px;
  color: #fff;
  background: var(--gbo-danger);
  border-radius: 6px;
  font-size: 10px;
  font-weight: 800;
}

.product-block .caption,
.product-thumb .caption,
.product-details .caption {
  display: flex;
  min-height: 0;
  padding: 17px 18px 18px;
  flex: 1 1 auto;
  flex-direction: column;
}

.product-block .caption h4,
.product-thumb .caption h4,
.product-details .caption h4 {
  min-height: 44px;
  margin: 0 0 11px;
  font-size: 14px;
  font-weight: 750;
  line-height: 1.42;
  letter-spacing: -0.01em;
}

.product-block .caption h4 a,
.product-thumb .caption h4 a,
.product-details .caption h4 a {
  display: -webkit-box;
  overflow: hidden;
  color: var(--gbo-ink);
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.product-block .caption h4 a:hover,
.product-thumb .caption h4 a:hover {
  color: var(--gbo-blue);
}

.product-block .desc,
.product-thumb .desc,
.product-details .desc {
  display: -webkit-box;
  margin: 0 0 12px;
  overflow: hidden;
  color: var(--gbo-muted);
  font-size: 11px;
  line-height: 1.5;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.product-block .price,
.product-thumb .price,
.product-details .price {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  min-height: 31px;
  margin: auto 0 0;
  color: var(--gbo-ink);
  gap: 4px;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.2;
}

.price-new,
.special-price {
  color: var(--gbo-danger) !important;
  font-weight: 800;
}

.price-old {
  color: var(--gbo-muted) !important;
  font-size: 12px;
  font-weight: 600;
  text-decoration: line-through;
}

.price-tax {
  display: block;
  width: 100%;
  margin-top: 5px;
  color: var(--gbo-muted) !important;
  font-size: 9px !important;
  font-weight: 500;
}

.rating {
  display: flex;
  align-items: center;
  height: 22px;
  margin: 9px 0 0;
}

.rating .fa-stack {
  width: 14px;
  height: 14px;
  color: #f5b637;
  font-size: 7px;
  line-height: 14px;
}

.rating .off,
.rating .fa-star-o {
  color: #d9dee6;
}

.product-block .image .button-group,
.product-thumb .image .button-group {
  position: absolute;
  right: 12px;
  bottom: 12px;
  left: 12px;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  visibility: hidden;
  opacity: 0;
  gap: 6px;
  transform: translateY(8px);
  transition: opacity var(--gbo-transition), visibility var(--gbo-transition), transform var(--gbo-transition);
}

.product-block:hover .image .button-group,
.product-thumb:hover .image .button-group,
.product-block:focus-within .image .button-group,
.product-thumb:focus-within .image .button-group {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.product-block .button-group button,
.product-thumb .button-group button,
.product-block .button-group .quickview a,
.product-thumb .button-group .quickview a,
.product-details .button-group button,
.product-details .button-group .quickview a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  min-height: 40px;
  padding: 0;
  overflow: hidden;
  color: var(--gbo-blue);
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 10px;
  box-shadow: 0 8px 20px rgba(18, 43, 75, 0.12);
  font-size: 0;
  text-indent: 0;
}

.product-block .button-group button:hover,
.product-thumb .button-group button:hover,
.product-block .button-group .quickview a:hover,
.product-thumb .button-group .quickview a:hover,
.product-details .button-group button:hover,
.product-details .button-group .quickview a:hover {
  color: #fff;
  background: var(--gbo-blue);
  border-color: var(--gbo-blue);
}

.product-block .button-group .addtocart,
.product-thumb .button-group .addtocart,
.product-details .button-group .addtocart {
  width: auto;
  min-width: 96px;
  padding: 0 14px;
  color: #fff;
  background: var(--gbo-green);
  border-color: var(--gbo-green);
  font-size: 11px;
  font-weight: 800;
}

.product-block .button-group .addtocart:hover,
.product-thumb .button-group .addtocart:hover,
.product-details .button-group .addtocart:hover {
  background: var(--gbo-green-dark);
  border-color: var(--gbo-green-dark);
}

.product-block .button-group .wishlist::before,
.product-thumb .button-group .wishlist::before {
  content: "\f004";
  font-family: FontAwesome;
  font-size: 14px;
}

.product-block .button-group .compare::before,
.product-thumb .button-group .compare::before {
  content: "\f0ec";
  font-family: FontAwesome;
  font-size: 14px;
}

.product-block .button-group .quickview a::before,
.product-thumb .button-group .quickview a::before {
  content: "\f06e";
  font-family: FontAwesome;
  font-size: 14px;
}

.customNavigation {
  position: absolute;
  top: -56px;
  right: 0;
  display: flex;
  gap: 8px;
}

.customNavigation .prev,
.customNavigation .next,
.owl-buttons > div {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  color: var(--gbo-ink);
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 10px;
  box-shadow: var(--gbo-shadow-sm);
  cursor: pointer;
}

.customNavigation .prev:hover,
.customNavigation .next:hover,
.owl-buttons > div:hover {
  color: #fff;
  background: var(--gbo-blue);
  border-color: var(--gbo-blue);
}

/* Category toolbar and list view */
.category_filter {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  min-height: 72px;
  padding: 12px 14px;
  margin: 0 0 22px;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius);
  box-shadow: var(--gbo-shadow-sm);
  gap: 12px;
}

.category_filter::before,
.category_filter::after {
  display: none;
}

.category_filter [class*="col-"] {
  width: auto;
  padding: 0;
  float: none;
}

.category_filter .btn-list-grid {
  margin-right: 4px;
}

.category_filter .btn-group {
  display: flex;
  gap: 6px;
}

.category_filter .grid,
.category_filter .list {
  width: 42px;
  min-height: 42px;
  padding: 0;
}

.category_filter .grid.active,
.category_filter .list.active,
.category_filter .grid:hover,
.category_filter .list:hover {
  color: #fff;
  background: var(--gbo-blue);
  border-color: var(--gbo-blue);
}

.compare-total {
  margin-right: auto;
}

.compare-total a {
  color: var(--gbo-muted);
  font-size: 12px;
  font-weight: 700;
}

.pagination-right {
  display: flex;
  align-items: center;
  margin-left: auto;
  gap: 12px;
}

.sort-by-wrapper,
.show-wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
}

.category_filter label {
  margin: 0;
  color: var(--gbo-muted);
  font-size: 11px;
  white-space: nowrap;
}

.category_filter select.form-control {
  width: auto;
  min-width: 165px;
  min-height: 42px;
  padding-top: 8px;
  padding-bottom: 8px;
}

.show-wrapper select.form-control {
  min-width: 76px;
}

.product-layout.product-list {
  width: 100%;
}

.product-layout.product-list .product-block-inner {
  display: grid;
  grid-template-columns: minmax(190px, 260px) 1fr;
}

.product-layout.product-list .image {
  min-height: 230px;
  border-right: 1px solid var(--gbo-border);
  border-bottom: 0;
}

.product-layout.product-list .product-details {
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.product-layout.product-list .caption {
  padding: 22px 24px;
}

.product-layout.product-list .caption h4 {
  min-height: auto;
  font-size: 18px;
}

.product-layout.product-list .caption h4 a {
  -webkit-line-clamp: 3;
}

.product-layout.product-list .desc {
  display: block;
  max-width: 800px;
  font-size: 12px;
}

.product-layout.product-list .image .button-group {
  display: none;
}

.product-layout.product-list .list-buttoncart {
  display: flex;
  align-items: center;
  padding: 0 24px 22px;
  gap: 10px;
}

.productQuantityinput,
.quantity_table,
#input-quantity {
  width: 70px !important;
  min-height: 42px;
  text-align: center;
}

.addtocartlist {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 42px;
  padding: 0;
  color: #fff;
  background: var(--gbo-green);
  border: 0;
  border-radius: 9px;
}

.addtocartlist::before {
  content: "\f07a";
  font-family: FontAwesome;
  font-size: 16px;
}

.addtocartlist:hover {
  background: var(--gbo-green-dark);
}

/* Pagination */
.pagination-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 20px 0 0;
  margin-top: 20px;
  border-top: 1px solid var(--gbo-border);
  gap: 14px;
}

.pagination-wrapper [class*="col-"] {
  width: auto;
  padding: 0;
  float: none;
}

.pagination {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
  gap: 6px;
}

.pagination > li > a,
.pagination > li > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 38px;
  padding: 0 10px;
  color: var(--gbo-ink);
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 9px !important;
  font-size: 12px;
  font-weight: 700;
}

.pagination > .active > span,
.pagination > .active > a,
.pagination > li > a:hover {
  color: #fff;
  background: var(--gbo-blue);
  border-color: var(--gbo-blue);
}

.page-result {
  color: var(--gbo-muted);
  font-size: 12px;
}

/* Product detail */
.productpage .row,
#product-product .row {
  margin-right: -12px;
  margin-left: -12px;
}

.productpage .row > [class*="col-"],
#product-product .row > [class*="col-"] {
  padding-right: 12px;
  padding-left: 12px;
}

.product-left,
.product-right,
.product-info,
.product-box {
  min-width: 0;
}

.productpage .product-left,
.productpage .product-right,
#product-product .product-left,
#product-product .product-right {
  margin-bottom: 28px;
}

.productpage .product-left,
#product-product .product-left {
  padding: 22px;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius-lg);
  box-shadow: var(--gbo-shadow-sm);
}

.productpage .product-right,
#product-product .product-right {
  padding: 26px;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius-lg);
  box-shadow: var(--gbo-shadow-sm);
}

.productpage .product-right h1,
#product-product .product-right h1 {
  margin-bottom: 18px;
  font-size: clamp(24px, 2.5vw, 34px);
}

.productpage .thumbnails,
#product-product .thumbnails {
  padding: 0;
  margin: 0;
  list-style: none;
}

.productpage .thumbnails .image-additional,
#product-product .thumbnails .image-additional {
  padding: 4px;
}

.productpage .thumbnail,
#product-product .thumbnail {
  padding: 8px;
  border-color: var(--gbo-border);
  border-radius: var(--gbo-radius);
}

.productpage .thumbnail:hover,
#product-product .thumbnail:hover {
  border-color: var(--gbo-blue);
}

.productpage .list-unstyled,
#product-product .list-unstyled {
  padding: 0;
  margin-bottom: 18px;
  list-style: none;
}

.productpage .list-unstyled li,
#product-product .list-unstyled li {
  padding: 5px 0;
  color: var(--gbo-text);
  font-size: 12px;
}

.productpage .list-unstyled .desc,
#product-product .list-unstyled .desc {
  color: var(--gbo-muted);
  font-weight: 600;
}

.productpage ul.price,
#product-product ul.price {
  padding: 18px 0;
  margin: 18px 0;
  border-top: 1px solid var(--gbo-border);
  border-bottom: 1px solid var(--gbo-border);
}

.productpage ul.price h3,
.productpage ul.price h2,
#product-product ul.price h3,
#product-product ul.price h2 {
  margin: 0;
  font-size: 28px;
}

.product-option {
  margin-top: 22px;
  font-size: 18px;
}

#product .option {
  padding: 14px;
  background: var(--gbo-bg);
  border: 1px solid var(--gbo-border);
  border-radius: 11px;
}

#product .radio label,
#product .checkbox label {
  display: flex;
  align-items: center;
  min-height: 42px;
  padding: 8px 10px;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 9px;
  gap: 9px;
}

#product .radio label:hover,
#product .checkbox label:hover {
  border-color: var(--gbo-blue);
}

#product .cart,
.productpage .cart {
  padding-top: 10px;
}

#product .cart .input-group,
.productpage .cart .input-group {
  display: flex;
  align-items: stretch;
  width: 100%;
  max-width: 430px;
  gap: 10px;
}

#button-cart {
  min-height: 50px;
  flex: 1 1 auto;
  border-radius: 11px;
  font-size: 14px;
  font-weight: 800;
}

.nav-tabs {
  display: flex;
  flex-wrap: wrap;
  padding: 6px;
  margin: 30px 0 0;
  background: var(--gbo-bg);
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius) var(--gbo-radius) 0 0;
  gap: 4px;
}

.nav-tabs > li {
  margin: 0;
  float: none;
}

.nav-tabs > li > a {
  padding: 11px 16px;
  margin: 0;
  color: var(--gbo-text);
  background: transparent;
  border: 0 !important;
  border-radius: 9px;
  font-size: 12px;
  font-weight: 750;
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li > a:hover {
  color: var(--gbo-blue);
  background: #fff;
  box-shadow: var(--gbo-shadow-sm);
}

.tab-content {
  padding: 24px;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-top: 0;
  border-radius: 0 0 var(--gbo-radius) var(--gbo-radius);
}

.tab-content ul,
.tab-content ol,
#content .description ul,
#content .description ol {
  padding-left: 20px;
}

.tab-content li,
#content .description li {
  margin-bottom: 7px;
}

/* Information pages and blog */
#information-information #content,
#information-contact #content,
#information-sitemap #content,
.blog_page #content,
.blog_category_page #content,
#information-reviews #content {
  padding: 26px;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius-lg);
  box-shadow: var(--gbo-shadow-sm);
}

#information-information #content > :last-child,
#information-contact #content > :last-child {
  margin-bottom: 0;
}

#information-information #content img,
.blog_page #content img,
.blog_category_page #content img {
  border-radius: var(--gbo-radius);
}

#information-contact .panel-body {
  padding: 20px;
}

#information-contact .fa {
  color: var(--gbo-blue);
}

.blog_grid_holder {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.blog_grid_holder .blog_item {
  width: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius);
  box-shadow: var(--gbo-shadow-sm);
}

.blog_item .image,
.blog_item .post_hover {
  overflow: hidden;
}

.blog_item img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  transition: transform 300ms ease;
}

.blog_item:hover img {
  transform: scale(1.04);
}

.blog_item .summary,
.blog_item .blog_title,
.blog_item .blog_stats {
  padding-right: 18px;
  padding-left: 18px;
}

.blog_item .blog_title {
  margin: 16px 0 8px;
  font-size: 17px;
}

.blog_item .blog_title a {
  color: var(--gbo-ink);
}

.blog_item .summary {
  color: var(--gbo-muted);
  font-size: 12px;
}

.blog_item .blog_stats {
  padding-bottom: 16px;
  color: var(--gbo-muted);
  font-size: 10px;
}

/* Slideshow, banners and carousel */
.slideshow,
.banner,
.owl-carousel {
  overflow: hidden;
  border-radius: var(--gbo-radius-lg);
}

.slideshow img,
.banner img {
  width: 100%;
}

.owl-pagination {
  padding-top: 14px;
}

.owl-page span {
  width: 8px;
  height: 8px;
  background: #bdc7d4;
  border-radius: 50%;
}

.owl-page.active span {
  width: 24px;
  background: var(--gbo-blue);
  border-radius: 10px;
}

/* Footer */
.gbo-footer {
  position: relative;
  color: rgba(255, 255, 255, 0.72);
  background: var(--gbo-blue-deep);
}

.gbo-footer-benefits {
  position: relative;
  z-index: 2;
  padding: 0 0 34px;
  color: var(--gbo-text);
  background: var(--gbo-bg);
}

.gbo-footer-benefits__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius-lg);
  box-shadow: var(--gbo-shadow);
}

.gbo-benefit {
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  min-height: 116px;
  padding: 20px 22px;
  color: var(--gbo-text);
  gap: 13px;
}

.gbo-benefit + .gbo-benefit {
  border-left: 1px solid var(--gbo-border);
}

.gbo-benefit:hover {
  color: var(--gbo-text);
  background: var(--gbo-blue-soft);
}

.gbo-benefit__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  color: var(--gbo-blue);
  background: var(--gbo-blue-soft);
  border-radius: 13px;
  font-size: 20px;
}

.gbo-benefit:hover .gbo-benefit__icon {
  color: #fff;
  background: var(--gbo-blue);
}

.gbo-benefit > span:nth-child(2) {
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.gbo-benefit strong {
  overflow: hidden;
  color: var(--gbo-ink);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
  text-overflow: ellipsis;
}

.gbo-benefit small {
  margin-top: 4px;
  color: var(--gbo-muted);
  font-size: 9px;
  line-height: 1.4;
}

.gbo-benefit > .fa-angle-right {
  color: #b5bfca;
}

.gbo-footer-main {
  position: relative;
  overflow: hidden;
  padding: 62px 0 22px;
  background:
    radial-gradient(circle at 12% 0%, rgba(31, 95, 174, 0.24), transparent 34%),
    radial-gradient(circle at 92% 100%, rgba(112, 182, 44, 0.12), transparent 26%),
    var(--gbo-blue-deep);
}

.gbo-footer-main::before {
  position: absolute;
  top: -110px;
  right: -100px;
  width: 320px;
  height: 320px;
  content: "";
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 50%;
}

.gbo-footer-grid {
  position: relative;
  display: grid;
  grid-template-columns: 1.35fr 0.85fr 0.85fr 0.85fr 1.15fr;
  gap: 34px;
}

.gbo-footer-brand p {
  max-width: 280px;
  margin: 20px 0;
  color: rgba(255, 255, 255, 0.62);
  font-size: 12px;
}

.gbo-footer-logo {
  display: inline-flex;
  color: #fff;
}

.gbo-footer-logo > span {
  color: #8eb8e6;
}

.gbo-footer-address {
  display: flex;
  align-items: flex-start;
  max-width: 280px;
  color: rgba(255, 255, 255, 0.68);
  gap: 10px;
  font-size: 11px;
}

.gbo-footer-address i {
  margin-top: 3px;
  color: var(--gbo-green);
}

.gbo-footer-socials {
  display: flex;
  margin-top: 18px;
  gap: 8px;
}

.gbo-footer-socials a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  color: #fff;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 10px;
}

.gbo-footer-socials a:hover {
  color: #fff;
  background: var(--gbo-blue);
  border-color: var(--gbo-blue);
  transform: translateY(-2px);
}

.gbo-footer-group__title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 0;
  margin: 0 0 17px;
  color: #fff;
  background: transparent;
  border: 0;
  font-size: 13px;
  font-weight: 800;
  text-align: left;
  cursor: default;
}

.gbo-footer-group__title i {
  display: none;
}

.gbo-footer-group ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

.gbo-footer-group li + li {
  margin-top: 9px;
}

.gbo-footer-group a {
  color: rgba(255, 255, 255, 0.62);
  font-size: 11px;
  font-weight: 550;
}

.gbo-footer-group a:hover {
  color: #fff;
  padding-left: 3px;
}

.gbo-footer-contacts {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
}

.gbo-footer-contacts__caption {
  margin-bottom: 9px;
  color: rgba(255, 255, 255, 0.58);
  font-size: 10px;
}

.gbo-footer-phone {
  color: #fff;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: -0.03em;
  white-space: nowrap;
}

.gbo-footer-phone:hover {
  color: var(--gbo-green);
}

.gbo-footer-phone--secondary {
  margin-top: 3px;
  font-size: 14px;
}

.gbo-footer-schedule {
  margin-top: 8px;
  color: rgba(255, 255, 255, 0.55);
  font-size: 10px;
}

.gbo-footer-callback {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 0 14px;
  margin-top: 16px;
  color: #fff;
  background: var(--gbo-green);
  border-radius: 9px;
  gap: 9px;
  font-size: 11px;
  font-weight: 800;
}

.gbo-footer-callback:hover {
  color: #fff;
  background: var(--gbo-green-dark);
  transform: translateY(-1px);
}

.gbo-footer-bottom {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 22px;
  margin-top: 42px;
  color: rgba(255, 255, 255, 0.38);
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  gap: 20px;
  font-size: 10px;
}

.gbo-metrika {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

/* Floating contact dock */
.gbo-contact-dock {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 9990;
}

.gbo-contact-dock__toggle {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  color: #fff;
  background: var(--gbo-green);
  border: 0;
  border-radius: 50%;
  box-shadow: 0 14px 34px rgba(63, 117, 20, 0.35);
  font-size: 22px;
  cursor: pointer;
  animation: gbo-contact-pulse 2.8s ease-in-out infinite;
}

.gbo-contact-dock__toggle::before {
  position: absolute;
  inset: -7px;
  content: "";
  border: 1px solid rgba(112, 182, 44, 0.42);
  border-radius: 50%;
}

.gbo-contact-dock__toggle .fa-times {
  display: none;
}

.gbo-contact-dock.is-open .gbo-contact-dock__toggle {
  background: var(--gbo-blue-deep);
  animation: none;
}

.gbo-contact-dock.is-open .gbo-contact-dock__toggle .fa-comments {
  display: none;
}

.gbo-contact-dock.is-open .gbo-contact-dock__toggle .fa-times {
  display: inline-block;
}

.gbo-contact-dock__panel {
  position: absolute;
  right: 0;
  bottom: 74px;
  width: 290px;
  padding: 12px;
  visibility: hidden;
  opacity: 0;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius);
  box-shadow: var(--gbo-shadow-lg);
  transform: translateY(12px) scale(0.97);
  transform-origin: right bottom;
  transition: opacity var(--gbo-transition), visibility var(--gbo-transition), transform var(--gbo-transition);
}

.gbo-contact-dock.is-open .gbo-contact-dock__panel {
  visibility: visible;
  opacity: 1;
  transform: translateY(0) scale(1);
}

.gbo-contact-dock__title {
  display: block;
  padding: 6px 8px 11px;
  color: var(--gbo-ink);
  border-bottom: 1px solid var(--gbo-border);
  font-size: 13px;
  font-weight: 800;
}

.gbo-contact-dock__panel a {
  display: flex;
  align-items: center;
  min-height: 52px;
  padding: 7px 8px;
  color: var(--gbo-ink);
  border-radius: 9px;
  gap: 11px;
}

.gbo-contact-dock__panel a:hover {
  color: var(--gbo-blue);
  background: var(--gbo-blue-soft);
}

.gbo-contact-dock__panel a > i,.gbo-contact-dock__panel .img_b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  color: #fff;
  background: var(--gbo-blue);
  border-radius: 10px;
}


.gbo-contact-dock__panel .img_b{
background-color: #3b46f0;

  background-image:
radial-gradient(
      circle at 10% 90%,
      rgba(32, 214, 255, 0.95) 0%,
      rgba(31, 137, 255, 0.72) 32%,
      transparent 62%
    ),
    radial-gradient(
      circle at 92% 8%,
      rgba(173, 67, 255, 0.95) 0%,
      rgba(117, 62, 241, 0.78) 38%,
      transparent 68%
    ),
    linear-gradient(
      135deg,
      #1877ff 0%,
      #3157f4 42%,
      #7041ed 72%,
      #a840e4 100%
    );
  background-repeat: no-repeat;
  background-size: 100% 100%;

}



.gbo-contact-dock__panel a:nth-of-type(3) > i {
  background: #25d366;
}

.gbo-contact-dock__panel a:nth-of-type(4) > i {
  background: #229ed9;
}

.gbo-contact-dock__panel a > span {
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.gbo-contact-dock__panel strong {
  font-size: 12px;
  font-weight: 800;
}

.gbo-contact-dock__panel small {
  color: var(--gbo-muted);
  font-size: 9px;
}

.gbo-mobile-bar {
  display: none;
}

@keyframes gbo-contact-pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.045); }
}

/* Notifications from OpenCart */
.alert.position-fixed,
#notification .alert,
.bootstrap-growl {
  z-index: 10020 !important;
  max-width: min(420px, calc(100vw - 28px));
  border-radius: var(--gbo-radius) !important;
  box-shadow: var(--gbo-shadow-lg) !important;
}

/* Desktop refinements */
@media (min-width: 1280px) {
  .gbo-nav__link {
    padding-right: 16px;
    padding-left: 16px;
  }
}

@media (max-width: 1199px) {
  :root {
    --gbo-container: 1140px;
  }

  .gbo-header-main__inner {
    grid-template-columns: 190px minmax(260px, 1fr) 190px auto;
    gap: 18px;
  }

  .gbo-brand__image {
    max-width: 185px;
  }

  .gbo-brand__caption {
    display: none;
  }

  .gbo-phone__icon {
    display: none;
  }

  .gbo-nav__link {
    padding-right: 10px;
    padding-left: 10px;
    font-size: 11px;
  }

  .gbo-nav__link--catalog {
    padding-left: 14px;
  }

  .gbo-mega-menu__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .gbo-footer-grid {
    grid-template-columns: 1.2fr repeat(3, 0.8fr);
  }

  .gbo-footer-contacts {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: auto auto auto 1fr;
    align-items: center;
    padding-top: 24px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    gap: 12px 24px;
  }

  .gbo-footer-contacts__caption,
  .gbo-footer-schedule,
  .gbo-footer-callback {
    margin: 0;
  }

}

/* Tablet/mobile navigation */
@media (max-width: 991px) {
  body {
    padding-bottom: 0;
  }

  .container,
  body > .container,
  body > div > .container {
    padding-right: 18px;
    padding-left: 18px;
  }

  .gbo-topbar {
    display: none;
  }

  .gbo-header-main__inner {
    grid-template-columns: minmax(155px, 1fr) auto auto;
    min-height: 78px;
    gap: 8px;
  }

  .gbo-brand__image {
    max-width: 170px;
    max-height: 48px;
  }
/*
  .gbo-header-search {
    grid-row: 2;
    grid-column: 1 / -1;
    padding-bottom: 14px;
  }
*/
  .gbo-header-contacts {
    display: none;
  }
/*
  .gbo-header-actions {
    grid-column: 2 / 4;
  }
*/
  .gbo-header-action {
    width: 54px;
    height: 52px;
  }

  .gbo-header-action span {
    display: none;
  }

  .gbo-cart__toggle {
    min-width: 54px;
    height: 52px;
    min-height: 52px;
    padding: 5px 8px;
  }

  .gbo-cart__content,
  .gbo-cart__arrow {
    display: none;
  }

  .gbo-navigation-wrap {
    min-height: 50px;
  }

  .gbo-navigation-wrap > .container {
    padding: 0;
  }

  .gbo-nav__mobile-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 50px;
    padding: 0 18px;
    color: #fff;
    background: var(--gbo-blue-deep);
    border: 0;
    gap: 10px;
    font-size: 13px;
    font-weight: 800;
  }

  .gbo-nav__burger {
    display: inline-flex;
    width: 20px;
    flex-direction: column;
    gap: 4px;
  }

  .gbo-nav__burger span {
    display: block;
    width: 100%;
    height: 2px;
    background: #fff;
    border-radius: 2px;
  }

  .gbo-nav__panel {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 10020;
    display: flex;
    width: min(390px, calc(100vw - 44px));
    overflow-y: auto;
    visibility: hidden;
    flex-direction: column;
    opacity: 0;
    color: var(--gbo-text);
    background: #fff;
    box-shadow: 20px 0 60px rgba(7, 29, 53, 0.22);
    transform: translateX(-105%);
    transition: transform 240ms ease, visibility 240ms ease, opacity 240ms ease;
    -webkit-overflow-scrolling: touch;
  }

  .gbo-nav.is-open .gbo-nav__panel {
    visibility: visible;
    opacity: 1;
    transform: translateX(0);
  }

  .gbo-nav__backdrop {
    position: fixed;
    inset: 0;
    z-index: 10010;
    display: block;
    visibility: hidden;
    opacity: 0;
    background: rgba(8, 26, 47, 0.58);
    border: 0;
    transition: opacity 240ms ease, visibility 240ms ease;
  }

  .gbo-nav.is-open .gbo-nav__backdrop {
    visibility: visible;
    opacity: 1;
  }

  .gbo-nav__mobile-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 64px;
    padding: 0 18px;
    color: #fff;
    background: var(--gbo-blue-deep);
  }

  .gbo-nav__mobile-head strong {
    font-size: 16px;
    font-weight: 800;
  }

  .gbo-nav__mobile-head button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    color: #fff;
    background: rgba(255, 255, 255, 0.1);
    border: 0;
    border-radius: 9px;
  }

  .gbo-nav__mobile-search {
    display: none;
  }

  .gbo-nav__list {
    display: block;
    min-height: 0;
    padding: 12px;
    flex: 1 0 auto;
  }

  .gbo-nav__item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    width: 100%;
    background: transparent;
    border-bottom: 1px solid var(--gbo-border);
  }

  .gbo-nav__item--catalog,
  .gbo-nav__item--accent {
    margin: 0;
  }

  .gbo-nav__link,
  .gbo-nav__link--catalog,
  .gbo-nav__item--accent .gbo-nav__link {
    justify-content: flex-start;
    min-height: 52px;
    padding: 0 9px;
    color: var(--gbo-ink);
    background: transparent;
    font-size: 13px;
  }

  .gbo-nav__item--accent .gbo-nav__link {
    color: var(--gbo-green-dark);
  }

  .gbo-nav__link:hover,
  .gbo-nav__link:focus,
  .gbo-nav__item--accent .gbo-nav__link:hover {
    color: var(--gbo-blue);
    background: var(--gbo-blue-soft);
  }

  .gbo-nav__submenu-toggle {
    width: 48px;
    min-height: 52px;
    color: var(--gbo-blue);
  }

  .gbo-mega-menu {
    position: static;
    display: none;
    grid-column: 1 / -1;
    width: auto;
    max-height: none;
    overflow: visible;
    visibility: visible;
    opacity: 1;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    transform: none;
  }

  .gbo-nav__item--catalog:hover .gbo-mega-menu,
  .gbo-nav__item--catalog:focus-within .gbo-mega-menu {
    display: none;
  }

  .gbo-nav__item--catalog.is-submenu-open .gbo-mega-menu {
    display: block;
  }

  .gbo-mega-menu__head {
    display: none;
  }

  .gbo-mega-menu__grid {
    display: block;
    padding: 4px 0 12px 16px;
  }

  .gbo-mega-menu__group {
    padding: 10px 8px;
    border-top: 1px solid var(--gbo-border);
  }

  .gbo-mega-menu__title {
    padding: 0;
    border: 0;
    font-size: 12px;
  }

  .gbo-mega-menu__group > ul {
    margin-top: 7px;
  }

  .gbo-mega-menu__group li a {
    font-size: 11px;
  }

  .gbo-nav__mobile-contacts {
    display: grid;
    padding: 14px 18px calc(18px + env(safe-area-inset-bottom));
    background: var(--gbo-bg);
    border-top: 1px solid var(--gbo-border);
    gap: 8px;
  }

  .gbo-nav__mobile-contacts a {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: 0 12px;
    color: var(--gbo-ink);
    background: #fff;
    border: 1px solid var(--gbo-border);
    border-radius: 10px;
    gap: 10px;
    font-size: 12px;
    font-weight: 750;
  }

  .gbo-nav__mobile-contacts a:last-child {
    color: #fff;
    /*background: #25d366;
    border-color: #25d366;*/
    background: radial-gradient(circle at 10% 90%, rgba(32, 214, 255, 0.95) 0%, rgba(31, 137, 255, 0.72) 32%, transparent 62%), radial-gradient(circle at 92% 8%, rgba(173, 67, 255, 0.95) 0%, rgba(117, 62, 241, 0.78) 38%, transparent 68%), linear-gradient(135deg, #1877ff 0%, #3157f4 42%, #7041ed 72%, #a840e4 100%);
    box-shadow: 0 10px 24px rgba(70, 79, 232, 0.24);
  }

.gbo-nav__mobile-contacts .img_max_b {
    background: url(https://gbo.logaz-auto.ru/image/max-white.png) no-repeat;
    width: 26px;
    height: 26px;
    background-size: contain;
}


  .gbo-mega-menu__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .gbo-footer-benefits__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .gbo-benefit:nth-child(3) {
    border-left: 0;
  }

  .gbo-benefit:nth-child(n + 3) {
    border-top: 1px solid var(--gbo-border);
  }

  .gbo-footer-grid {
    grid-template-columns: 1.2fr repeat(2, 1fr);
  }

  .gbo-footer-brand {
    grid-row: span 2;
  }

  .gbo-footer-contacts {
    grid-column: 2 / -1;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    padding-top: 20px;
  }

  .blog_grid_holder {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .product-block .image .button-group,
  .product-thumb .image .button-group {
    visibility: visible;
    opacity: 1;
    transform: none;
  }

  .product-block:hover,
  .product-thumb:hover {
    transform: none;
  }
}

@media (max-width: 767px) {
  body {
    padding-bottom: calc(64px + env(safe-area-inset-bottom));
    font-size: 14px;
  }

  .container,
  body > .container,
  body > div > .container {
    padding-right: 14px;
    padding-left: 14px;
  }

  .gbo-notice__inner {
    min-height: 42px;
    justify-content: flex-start;
    padding-top: 7px;
    padding-bottom: 7px;
    text-align: left;
  }

  .gbo-header-main__inner {
    grid-template-columns: minmax(130px, 1fr) auto;
    min-height: 68px;
  }

  .gbo-brand__image {
    max-width: 150px;
    max-height: 42px;
  }

  .gbo-brand__text {
    font-size: 22px;
  }

  .gbo-header-actions {
    grid-column: 2;
  }

  .gbo-header-cart {
    min-width: 50px;
  }

  .gbo-cart__menu {
    position: fixed;
    top: 50%;
    right: 14px;
    left: 14px;
    width: auto;
    min-width: 0;
    max-height: 80vh;
    overflow-y: auto;
    transform: translateY(-50%);
  }

  .gbo-search {
    padding: 3px;
  }

  .gbo-search .form-control {
    height: 42px;
    min-height: 42px;
    padding-right: 10px;
    padding-left: 10px;
    font-size: 12px;
  }

  .gbo-search .btn {
    width: 44px;
    height: 42px;
    min-height: 42px;
    padding: 0;
  }


  #search.gbo-search .form-control,
  #search.gbo-search .input-lg {
    height: 42px;
    min-height: 42px;
    padding-right: 10px;
    padding-left: 10px;
    font-size: 12px;
  }

  #search.gbo-search .btn,
  #search.gbo-search .btn-lg {
    width: 44px;
    height: 42px;
    min-height: 42px;
    padding: 0;
    font-size: 13px;
  }

  #cart.gbo-cart > .gbo-cart__toggle,
  #cart.gbo-cart > .btn.gbo-cart__toggle {
    min-width: 50px;
    height: 52px;
    min-height: 52px;
    padding: 5px 8px;
  }

  #cart.gbo-cart .gbo-cart__menu,
  #cart.gbo-cart .dropdown-menu.gbo-cart__menu {
    position: fixed;
    top: 50%;
    right: 14px;
    left: 14px;
    width: auto;
    min-width: 0;
    max-height: 80vh;
    overflow-y: auto;
    transform: translateY(-50%);
  }

  .gbo-search__label {
    display: none;
  }

  #common-home,
  .categorypage,
  .productpage,
  #product-search,
  #product-special,
  #product-manufacturer,
  #information-information,
  #information-contact,
  #information-sitemap,
  #account-account,
  #account-login,
  #account-register,
  #checkout-cart,
  #checkout-checkout,
  .simple-content,
  .blog_page,
  .blog_category_page {
    padding-top: 20px;
    padding-bottom: 38px;
  }

  h1,
  .page-title {
    margin-bottom: 22px;
    font-size: 28px;
  }

  h2 {
    font-size: 24px;
  }

  .breadcrumb {
    margin-bottom: 17px;
    font-size: 10px;
  }

  .category_filter {
    align-items: stretch;
    padding: 10px;
  }

  .category_filter .btn-list-grid,
  .compare-total {
    display: none;
  }

  .pagination-right {
    display: grid;
    width: 100%;
    grid-template-columns: 1fr auto;
    margin: 0;
  }

  .sort-by-wrapper,
  .show-wrapper {
    display: block;
  }

  .sort-by-wrapper .sort-by,
  .show-wrapper .show {
    display: none;
  }

  .category_filter select.form-control {
    width: 100%;
    min-width: 0;
  }

  .show-wrapper select.form-control {
    width: 78px;
  }

  .product-layout-wrap > .row,
  #content .product-layout-wrap > .row {
    margin-right: -6px;
    margin-left: -6px;
  }

  .product-layout {
    padding-right: 6px;
    padding-left: 6px;
    margin-bottom: 12px;
  }

  .product-layout.product-grid {
    width: 50%;
    float: none;
  }

  .product-block,
  .product-thumb {
    border-radius: 12px;
  }

  .product-block .image,
  .product-thumb .image {
    min-height: 155px;
    padding: 12px;
  }

  .product-block .image img,
  .product-thumb .image img {
    max-height: 150px;
  }

  .product-block .caption,
  .product-thumb .caption,
  .product-details .caption {
    padding: 12px;
  }

  .product-block .caption h4,
  .product-thumb .caption h4,
  .product-details .caption h4 {
    min-height: 52px;
    margin-bottom: 8px;
    font-size: 11px;
    line-height: 1.45;
    -webkit-line-clamp: 3;
  }

  .product-block .price,
  .product-thumb .price,
  .product-details .price {
    font-size: 15px;
  }

  .price-tax,
  .product-block .desc,
  .product-thumb .desc,
  .rating {
    display: none;
  }

  .product-block .image .button-group,
  .product-thumb .image .button-group {
    right: 7px;
    bottom: 7px;
    left: 7px;
    justify-content: flex-end;
  }

  .product-block .button-group .wishlist,
  .product-thumb .button-group .wishlist,
  .product-block .button-group .compare,
  .product-thumb .button-group .compare,
  .product-block .button-group .quickview,
  .product-thumb .button-group .quickview {
    display: none;
  }

  .product-block .button-group .addtocart,
  .product-thumb .button-group .addtocart {
    width: 38px;
    min-width: 38px;
    height: 38px;
    padding: 0;
    font-size: 0;
    border-radius: 10px;
  }

  .product-block .button-group .addtocart::before,
  .product-thumb .button-group .addtocart::before {
    content: "\f07a";
    font-family: FontAwesome;
    font-size: 14px;
  }

  .saleback {
    top: 8px;
    left: 8px;
  }

  .saleicon,
  .sale {
    min-height: 23px;
    padding: 3px 6px;
    font-size: 8px;
  }

  .product-layout.product-list .product-block-inner {
    grid-template-columns: 112px 1fr;
  }

  .product-layout.product-list .image {
    min-height: 155px;
    padding: 10px;
  }

  .product-layout.product-list .caption {
    padding: 13px;
  }

  .product-layout.product-list .caption h4 {
    min-height: 0;
    font-size: 13px;
  }

  .product-layout.product-list .desc {
    display: none;
  }

  .product-layout.product-list .list-buttoncart {
    grid-column: 1 / -1;
    padding: 0 12px 12px;
  }

  .pagination-wrapper {
    align-items: flex-start;
    flex-direction: column;
  }

  .page-result {
    text-align: left !important;
  }

  .productpage .product-left,
  .productpage .product-right,
  #product-product .product-left,
  #product-product .product-right,
  #information-information #content,
  #information-contact #content,
  #information-sitemap #content,
  .blog_page #content,
  .blog_category_page #content,
  #information-reviews #content {
    padding: 16px;
    border-radius: var(--gbo-radius);
  }

  .productpage .product-right h1,
  #product-product .product-right h1 {
    font-size: 23px;
  }

  .nav-tabs {
    overflow-x: auto;
    flex-wrap: nowrap;
    -webkit-overflow-scrolling: touch;
  }

  .nav-tabs > li > a {
    white-space: nowrap;
  }

  .tab-content {
    padding: 17px;
  }

  #checkout-cart .table-responsive {
    border-radius: 11px;
  }

  #checkout-cart .table > thead {
    display: none;
  }

  .simplecheckout-block-content,
  .simpleregister-block-content,
  .checkout-content {
    padding: 15px;
  }

  .blog_grid_holder {
    grid-template-columns: 1fr;
  }

  .gbo-footer-benefits {
    padding-bottom: 24px;
  }

  .gbo-footer-benefits__grid {
    grid-template-columns: 1fr;
    border-radius: var(--gbo-radius);
  }

  .gbo-benefit {
    min-height: 88px;
    padding: 14px;
    border-left: 0 !important;
  }

  .gbo-benefit + .gbo-benefit {
    border-top: 1px solid var(--gbo-border);
  }

  .gbo-benefit__icon {
    width: 42px;
    height: 42px;
  }

  .gbo-footer-main {
    padding: 38px 0 18px;
  }

  .gbo-footer-grid {
    display: block;
  }

  .gbo-footer-brand {
    padding-bottom: 24px;
  }

  .gbo-footer-brand p {
    max-width: none;
  }

  .gbo-footer-group {
    border-top: 1px solid rgba(255, 255, 255, 0.11);
  }

  .gbo-footer-group__title {
    min-height: 54px;
    margin: 0;
    cursor: pointer;
  }

  .gbo-footer-group__title i {
    display: inline-block;
    transition: transform var(--gbo-transition);
  }

  .gbo-footer-group.is-open .gbo-footer-group__title i {
    transform: rotate(180deg);
  }

  .gbo-footer-group__content {
    display: none;
    padding: 0 0 20px;
  }

  .gbo-footer-group.is-open .gbo-footer-group__content {
    display: block;
  }

  .gbo-footer-contacts {
    display: flex;
    padding: 24px 0 0;
    margin-top: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.11);
  }

  .gbo-footer-bottom {
    align-items: flex-start;
    flex-direction: column;
    margin-top: 28px;
    gap: 5px;
  }

  .gbo-contact-dock {
    right: 14px;
    bottom: calc(76px + env(safe-area-inset-bottom));
  }

  .gbo-contact-dock__toggle {
    width: 52px;
    height: 52px;
    font-size: 19px;
  }

  .gbo-contact-dock__panel {
    bottom: 64px;
    width: min(286px, calc(100vw - 28px));
  }

  .gbo-mobile-bar {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 9985;
    display: grid;
    min-height: calc(60px + env(safe-area-inset-bottom));
    padding: 4px 6px env(safe-area-inset-bottom);
    grid-template-columns: repeat(4, 1fr);
    background: rgba(255, 255, 255, 0.96);
    border-top: 1px solid var(--gbo-border);
    box-shadow: 0 -8px 28px rgba(11, 39, 72, 0.12);
    backdrop-filter: blur(14px);
  }

  .gbo-mobile-bar a,
  .gbo-mobile-bar button {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    padding: 4px;
    color: var(--gbo-text);
    background: transparent;
    border: 0;
    border-radius: 9px;
    flex-direction: column;
    gap: 3px;
    font-size: 9px;
    font-weight: 700;
  }

  .gbo-mobile-bar i {
    color: var(--gbo-blue);
    font-size: 18px;
  }

  .gbo-mobile-bar a:nth-child(3) i {
    color: #25a85a;
  }

  .gbo-mobile-bar a:hover,
  .gbo-mobile-bar button:hover {
    color: var(--gbo-blue);
    background: var(--gbo-blue-soft);
  }
}

@media (max-width: 479px) {
  .gbo-brand__image {
    max-width: 132px;
  }

  .gbo-header-action,
  .gbo-cart__toggle {
    width: 46px;
    min-width: 46px;
  }

  .gbo-nav__panel {
    width: calc(100vw - 28px);
  }

  .product-layout.product-grid {
    width: 50%;
  }

  .product-block .image,
  .product-thumb .image {
    min-height: 138px;
  }

  .product-block .caption,
  .product-thumb .caption {
    padding: 10px;
  }

  .product-block .caption h4,
  .product-thumb .caption h4 {
    min-height: 49px;
    font-size: 10.5px;
  }

  .product-block .price,
  .product-thumb .price {
    font-size: 14px;
  }

  .category_filter {
    border-radius: 11px;
  }

  .gbo-footer-phone {
    font-size: 17px;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* Clean category template additions */
.category_thumb {
  display: flex;
  align-items: flex-start;
  padding: 22px;
  margin-bottom: 28px;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius);
  box-shadow: var(--gbo-shadow-sm);
  gap: 24px;
}

.category_thumb__image {
  width: min(220px, 35%);
  flex: 0 0 auto;
  border-radius: var(--gbo-radius-sm);
}

.category_description {
  min-width: 0;
  color: var(--gbo-text);
}

.category_description > :last-child {
  margin-bottom: 0;
}

.category-refine {
  margin-bottom: 28px;
}

.category_list__image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  margin-bottom: 10px;
  overflow: hidden;
  background: var(--gbo-bg);
  border-radius: 12px;
}

.category_list__image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.category_filter .pagination-right,
.category_filter .sort-by-wrapper,
.category_filter .show-wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
}

.category_filter .pagination-right {
  margin-left: auto;
  flex-wrap: wrap;
  gap: 12px;
}

.category_filter .control-label {
  margin: 0;
  color: var(--gbo-muted);
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}

.category_filter .sort-by-wrapper .form-control {
  min-width: 210px;
}

.category_filter .show-wrapper .form-control {
  min-width: 82px;
}

.product-details .caption h3 {
  min-height: 44px;
  margin: 0 0 11px;
  font-size: 14px;
  font-weight: 750;
  line-height: 1.42;
  letter-spacing: -0.01em;
}

.product-details .caption h3 a {
  display: -webkit-box;
  overflow: hidden;
  color: var(--gbo-ink);
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.gbo-empty-state {
  padding: 50px 24px;
  color: var(--gbo-muted);
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius);
  box-shadow: var(--gbo-shadow-sm);
  text-align: center;
}

.gbo-empty-state > i {
  display: block;
  margin-bottom: 14px;
  color: var(--gbo-blue);
  font-size: 36px;
}

@media (max-width: 767px) {
  .category_thumb {
    padding: 16px;
    flex-direction: column;
  }

  .category_thumb__image {
    width: 100%;
    max-height: 220px;
    object-fit: contain;
  }

  .category_filter .pagination-right,
  .category_filter .sort-by-wrapper,
  .category_filter .show-wrapper {
    width: 100%;
  }

  .category_filter .sort-by-wrapper .form-control,
  .category_filter .show-wrapper .form-control {
    width: 100%;
    min-width: 0;
  }

  .category_filter .control-label {
    min-width: 74px;
  }
}

.gbo-topbar__modules,
.gbo-topbar__modules > * {
  display: flex;
  align-items: center;
}

.gbo-topbar__modules ul {
  display: flex;
  padding: 0;
  margin: 0;
  list-style: none;
  gap: 12px;
}

#content .category_list {
  padding: 0;
  margin: 0;
}

#content .category_list ul {
  display: grid;
  width: 100%;
  padding: 0;
  margin: 0;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  list-style: none;
}

#content .category_list li {
  float: none;
  max-width: none;
  padding: 0;
  margin: 0;
  overflow: visible;
}

#content .category_list li a {
  display: flex;
  height: 100%;
  min-height: 112px;
  padding: 14px;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  color: var(--gbo-ink);
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: var(--gbo-radius);
  box-shadow: var(--gbo-shadow-sm);
  font-size: 12px;
  font-weight: 750;
}

#content .category_list li a:hover,
#content .category_list li a:focus {
  color: var(--gbo-blue);
  background: #fff;
  border-color: rgba(31, 95, 174, 0.35);
  box-shadow: var(--gbo-shadow);
  transform: translateY(-2px);
}

.refine-search {
  margin: 0 0 16px;
  font-size: 22px;
}

@media (max-width: 991px) {
  #content .category_list ul {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .changed-order-positions #content {
    display: block;
  }

  #content .category_list ul {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
  }

  #content .category_list li a {
    min-height: 104px;
    padding: 12px;
  }
}

/* Unified product quantity and add-to-cart controls */
.gbo-product-buy,
.featured-buttoncart.gbo-product-buy,
.latest-buttoncart.gbo-product-buy,
.list-buttoncart.gbo-product-buy {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  width: 100%;
  margin-top: 14px;
}

.gbo-product-buy .button-group {
  display: flex;
  margin: 0;
}

.gbo-product-buy .productQuantityinput {
  flex: 0 0 72px;
  width: 72px;
  min-height: 42px;
  margin: 0;
  border: 1px solid var(--gbo-border);
  border-radius: 10px;
  background: #fff;
  color: var(--gbo-ink);
  text-align: center;
  font-weight: 700;
}

.gbo-product-buy .productQuantityinput:focus {
  border-color: var(--gbo-blue);
  box-shadow: 0 0 0 3px rgba(31, 95, 174, 0.12);
  outline: 0;
}



/* ==========================================================================\n   HOME MODULES V2 — added 2026-07-15\n   ========================================================================== */
.gbo-home-section { margin: clamp(34px, 5vw, 72px) 0; }
.gbo-section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:24px; }
.gbo-section-heading__copy { min-width:0; }
.gbo-section-kicker { display:block; margin-bottom:8px; color:var(--gbo-green); font-size:11px; font-weight:800; line-height:1.2; letter-spacing:.12em; text-transform:uppercase; }
.gbo-section-title { position:relative; margin:0; padding-bottom:14px; color:var(--gbo-ink); font-size:clamp(25px,3vw,30px); font-weight:850; line-height:1.08;}
.gbo-section-title::after { position:absolute; bottom:0; left:0; width:68px; height:4px; content:""; background:linear-gradient(90deg,var(--gbo-blue),var(--gbo-green)); border-radius:99px; }
.gbo-section-controls { display:flex; flex:0 0 auto; gap:10px; }
.gbo-section-controls[hidden] { display:none !important; }
.gbo-slider-button { display:inline-flex; align-items:center; justify-content:center; width:46px; height:46px; padding:0; color:var(--gbo-ink); background:#fff; border:1px solid var(--gbo-border); border-radius:13px; box-shadow:var(--gbo-shadow-sm); font-size:20px; transition:.2s ease; }
.gbo-slider-button:hover:not(:disabled) { color:#fff; background:var(--gbo-blue); border-color:var(--gbo-blue); transform:translateY(-2px); }
.gbo-slider-button:disabled { cursor:default; opacity:.35; }
.gbo-section-link { display:inline-flex; align-items:center; min-height:44px; padding:0 17px; color:var(--gbo-blue); background:var(--gbo-blue-soft); border:1px solid rgba(31,95,174,.12); border-radius:12px; gap:9px; font-size:12px; font-weight:800; white-space:nowrap; }
.gbo-section-link:hover { color:#fff; background:var(--gbo-blue); border-color:var(--gbo-blue); }

.gbo-module-track { display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 54px)/3); gap:18px; padding:10px 5px 18px; overflow-x:auto; overscroll-behavior-inline:contain; scroll-behavior:smooth; scroll-snap-type:inline mandatory; scrollbar-width:thin; scrollbar-color:rgba(31,95,174,.35) transparent; }
.gbo-module-track::-webkit-scrollbar { height:7px; }
.gbo-module-track::-webkit-scrollbar-thumb { background:rgba(31,95,174,.24); border-radius:99px; }
.gbo-module-track > * { min-width:0; scroll-snap-align:start; }
.gbo-product-card { position:relative; display:flex; min-height:100%; overflow:hidden; flex-direction:column; background:#fff; border:1px solid var(--gbo-border); border-radius:20px; box-shadow:0 12px 34px rgba(13,39,73,.08); transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease; }
.gbo-product-card:hover { border-color:rgba(31,95,174,.28); box-shadow:0 22px 50px rgba(13,39,73,.14); transform:translateY(-5px); }
.gbo-product-card__media { position:relative; display:flex; align-items:center; justify-content:center; min-height:245px; padding:22px; overflow:hidden; background:linear-gradient(145deg,#fff 0%,#f6f9fc 100%); border-bottom:1px solid var(--gbo-border); }
.gbo-product-card__image { position:relative; display:flex; align-items:center; justify-content:center; width:100%; height:205px; }
.gbo-product-card__image img { position:absolute; width:100%; height:100%; object-fit:contain; transition:opacity .28s ease,transform .28s ease; }
.gbo-product-card__secondary { opacity:0; }
.gbo-product-card:hover .gbo-product-card__primary.reg-image { opacity:0; }
.gbo-product-card:hover .gbo-product-card__secondary { opacity:1; transform:scale(1.03); }
.gbo-product-card:not(:hover) .gbo-product-card__primary { transform:scale(1); }
.gbo-product-badge { position:absolute; top:14px; left:14px; z-index:2; display:inline-flex; align-items:center; min-height:29px; padding:5px 10px; color:#fff; background:#e24f4f; border-radius:9px; box-shadow:0 8px 20px rgba(226,79,79,.22); font-size:10px; font-weight:850; letter-spacing:.04em; text-transform:uppercase; }
.gbo-product-card__quick-actions { position:absolute; top:13px; right:13px; z-index:3; display:flex; flex-direction:column; gap:7px; opacity:0; transform:translateX(8px); transition:.22s ease; }
.gbo-product-card:hover .gbo-product-card__quick-actions,.gbo-product-card:focus-within .gbo-product-card__quick-actions { opacity:1; transform:none; }
.gbo-icon-action { display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; padding:0; color:var(--gbo-blue); background:rgba(255,255,255,.96); border:1px solid var(--gbo-border); border-radius:11px; box-shadow:0 8px 20px rgba(18,43,75,.11); font-size:14px; }
.gbo-icon-action:hover { color:#fff; background:var(--gbo-blue); border-color:var(--gbo-blue); }
.gbo-product-card__body { display:flex; padding:18px; flex:1 1 auto; flex-direction:column; }
.gbo-product-card__title { min-height:45px; margin:0 0 10px; font-size:14px; font-weight:780; line-height:1.45; }
.gbo-product-card__title a { display:-webkit-box; overflow:hidden; color:var(--gbo-ink); -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.gbo-product-card__title a:hover { color:var(--gbo-blue); }
.gbo-product-rating { display:flex; min-height:18px; margin-bottom:10px; color:#f5b637; gap:3px; font-size:12px; }
.gbo-product-price { display:flex; align-items:baseline; flex-wrap:wrap; min-height:53px; margin-top:auto; gap:6px; }
.gbo-product-price__current { color:var(--gbo-ink); font-size:20px; font-weight:850; line-height:1.1; }
.gbo-product-price__old { color:var(--gbo-muted); font-size:12px; font-weight:650; text-decoration:line-through; }
.gbo-product-price__tax { display:block; width:100%; color:var(--gbo-muted); font-size:9px; line-height:1.3; }
.gbo-product-card__cart { display:flex; align-items:center; justify-content:center; min-height:44px; padding:0 15px; margin-top:14px; color:#fff; background:linear-gradient(135deg,var(--gbo-green),var(--gbo-green-dark)); border:0; border-radius:12px; box-shadow:0 10px 24px rgba(45,154,82,.21); gap:9px; font-size:12px; font-weight:850; }
.gbo-product-card__cart:hover { color:#fff; filter:brightness(.96); transform:translateY(-1px); }
.gbo-module-empty { display:flex; align-items:center; justify-content:center; min-height:220px; padding:30px; color:var(--gbo-muted); background:#fff; border:1px dashed var(--gbo-border); border-radius:18px; }

.gbo-category-tabs { position:relative; }
.gbo-category-tabs__bar { display:flex; margin:-4px 0 22px; padding:5px; overflow-x:auto; background:#eef3f8; border:1px solid var(--gbo-border); border-radius:14px; gap:5px; scrollbar-width:none; }
.gbo-category-tabs__bar::-webkit-scrollbar { display:none; }
.gbo-category-tab { flex:0 0 auto; min-height:42px; padding:0 17px; color:var(--gbo-text); background:transparent; border:0; border-radius:10px; font-size:12px; font-weight:780; white-space:nowrap; }
.gbo-category-tab:hover { color:var(--gbo-blue); background:rgba(255,255,255,.65); }
.gbo-category-tab.is-active { color:#fff; background:var(--gbo-blue); box-shadow:0 8px 20px rgba(31,95,174,.2); }
.gbo-category-tabs__content { position:relative; min-height:300px; }
.gbo-category-tabs__loader { position:absolute; inset:0; z-index:8; display:flex; align-items:center; justify-content:center; visibility:hidden; background:rgba(247,249,252,.76); opacity:0; backdrop-filter:blur(3px); transition:.2s ease; }
.gbo-category-tabs.is-loading .gbo-category-tabs__loader { visibility:visible; opacity:1; }
.gbo-category-tabs__loader span { width:42px; height:42px; border:4px solid rgba(31,95,174,.18); border-top-color:var(--gbo-blue); border-radius:50%; animation:gbo-module-spin .75s linear infinite; }
@keyframes gbo-module-spin { to { transform:rotate(360deg); } }

.gbo-home-categories__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.gbo-home-category { display:grid; grid-template-columns:92px minmax(0,1fr) auto; align-items:center; min-height:126px; padding:15px 16px; color:var(--gbo-text); background:#fff; border:1px solid var(--gbo-border); border-radius:18px; box-shadow:var(--gbo-shadow-sm); gap:15px; transition:.22s ease; }
.gbo-home-category:hover { color:var(--gbo-text); border-color:rgba(31,95,174,.3); box-shadow:var(--gbo-shadow); transform:translateY(-4px); }
.gbo-home-category__image { display:flex; align-items:center; justify-content:center; width:92px; height:92px; padding:7px; background:linear-gradient(145deg,#f7f9fc,#fff); border-radius:14px; }
.gbo-home-category__image img { width:100%; height:100%; object-fit:contain; transition:transform .25s ease; }
.gbo-home-category:hover img { transform:scale(1.06); }
.gbo-home-category__content { min-width:0; }
.gbo-home-category__content strong { display:-webkit-box; overflow:hidden; color:var(--gbo-ink); font-size:14px; font-weight:800; line-height:1.35; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.gbo-home-category__content small { display:block; margin-top:7px; color:var(--gbo-muted); font-size:10px; }
.gbo-home-category > .fa { color:var(--gbo-blue); font-size:14px; transition:transform .2s ease; }
.gbo-home-category:hover > .fa { transform:translateX(4px); }

.gbo-hero-slider { position:relative; margin:0 0 32px; overflow:hidden; background:var(--gbo-blue-deep); border-radius:24px; box-shadow:0 24px 65px rgba(10,37,70,.2); }
.gbo-hero-slider .swiper-container,.gbo-hero-slider .swiper-wrapper,.gbo-hero-slider .swiper-slide { width:100%; }
.gbo-hero-slider .swiper-slide a { display:block; }
.gbo-hero-slider img { display:block; width:100%; height:auto; min-height:300px; max-height:560px; object-fit:cover; }
.gbo-hero-slider__arrow { position:absolute; top:50%; z-index:8; display:flex; align-items:center; justify-content:center; width:48px; height:48px; padding:0; color:var(--gbo-ink); background:rgba(255,255,255,.94); border:1px solid rgba(255,255,255,.45); border-radius:14px; box-shadow:0 12px 30px rgba(0,0,0,.14); font-size:22px; transform:translateY(-50%); }
.gbo-hero-slider__arrow--prev { left:18px; }
.gbo-hero-slider__arrow--next { right:18px; }
.gbo-hero-slider__arrow:hover { color:#fff; background:var(--gbo-blue); }
.gbo-hero-slider .swiper-pagination { bottom:16px; }
.gbo-hero-slider .swiper-pagination-bullet { width:9px; height:9px; margin:0 4px; background:#fff; opacity:.62; }
.gbo-hero-slider .swiper-pagination-bullet-active { width:28px; background:var(--gbo-green); border-radius:99px; opacity:1; }
.gbo-promo-banner { margin:22px 0; overflow:hidden; background:#fff; border:1px solid var(--gbo-border); border-radius:18px; box-shadow:var(--gbo-shadow-sm); }
.gbo-promo-banner img { display:block; width:100%; height:auto; }
.gbo-promo-banner .swiper-pagination { bottom:10px; }

.gbo-brand-carousel__track { display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 75px)/6); gap:15px; padding:3px 2px 15px; overflow-x:auto; scroll-behavior:smooth; scroll-snap-type:inline mandatory; scrollbar-width:thin; }
.gbo-brand-card { display:flex; align-items:center; justify-content:center; min-height:110px; padding:20px; background:#fff; border:1px solid var(--gbo-border); border-radius:16px; box-shadow:var(--gbo-shadow-sm); scroll-snap-align:start; }
.gbo-brand-card img { width:100%; max-width:150px; max-height:70px; object-fit:contain; filter:grayscale(1); opacity:.72; transition:.2s ease; }
.gbo-brand-card:hover img { filter:none; opacity:1; transform:scale(1.04); }

.gbo-news-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.gbo-news-card { display:flex; min-width:0; overflow:hidden; flex-direction:column; background:#fff; border:1px solid var(--gbo-border); border-radius:20px; box-shadow:var(--gbo-shadow-sm); transition:.22s ease; }
.gbo-news-card:hover { border-color:rgba(31,95,174,.28); box-shadow:var(--gbo-shadow); transform:translateY(-4px); }
.gbo-news-card__image { display:block; overflow:hidden; aspect-ratio:16/9; background:#eef2f6; }
.gbo-news-card__image img { width:100%; height:100%; object-fit:cover; transition:transform .3s ease; }
.gbo-news-card:hover .gbo-news-card__image img { transform:scale(1.045); }
.gbo-news-card__body { display:flex; padding:20px; flex:1; flex-direction:column; }
.gbo-news-card__meta { display:flex; align-items:center; min-height:18px; margin-bottom:10px; color:var(--gbo-muted); gap:14px; font-size:10px; font-weight:700; }
.gbo-news-card h3 { margin:0 0 10px; font-size:17px; font-weight:820; line-height:1.35; }
.gbo-news-card h3 a { display:-webkit-box; overflow:hidden; color:var(--gbo-ink); -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.gbo-news-card h3 a:hover { color:var(--gbo-blue); }
.gbo-news-card p { display:-webkit-box; margin:0 0 17px; overflow:hidden; color:var(--gbo-muted); font-size:12px; line-height:1.6; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.gbo-news-card__link { display:inline-flex; align-items:center; margin-top:auto; color:var(--gbo-blue); gap:8px; font-size:11px; font-weight:800; }

.gbo-newsletter { display:grid; grid-template-columns:auto minmax(250px,1fr) minmax(390px,1.25fr); align-items:center; margin:45px 0; padding:30px 34px; color:#fff; background:linear-gradient(120deg,var(--gbo-blue-deep),var(--gbo-blue) 68%,#2476bd); border-radius:22px; box-shadow:0 25px 60px rgba(9,42,79,.22); gap:22px; }
.gbo-newsletter__icon { display:flex; align-items:center; justify-content:center; width:64px; height:64px; color:#fff; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.18); border-radius:18px; font-size:26px; }
.gbo-newsletter__copy span { color:#8fe1aa; font-size:10px; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.gbo-newsletter__copy h2 { margin:5px 0 6px; color:#fff; font-size:25px; font-weight:850; }
.gbo-newsletter__copy p { margin:0; color:rgba(255,255,255,.7); font-size:11px; line-height:1.55; }
.gbo-newsletter__form { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; }
.gbo-newsletter__field { position:relative; display:flex; align-items:center; }
.gbo-newsletter__field .fa { position:absolute; left:17px; color:var(--gbo-blue); }
.gbo-newsletter__field input { width:100%; height:50px; padding:0 18px 0 44px; color:var(--gbo-text); background:#fff; border:0; border-radius:13px; outline:none; }
.gbo-newsletter__form button { display:flex; align-items:center; justify-content:center; min-height:50px; padding:0 20px; color:#fff; background:var(--gbo-green); border:0; border-radius:13px; gap:9px; font-size:11px; font-weight:850; }
.gbo-newsletter__form button:hover { background:var(--gbo-green-dark); }
.gbo-newsletter__message { position:absolute; top:calc(100% + 7px); left:2px; color:rgba(255,255,255,.9); font-size:10px; }
.gbo-newsletter__message.is-error { color:#ffd0d0; }

.gbo-sidebar-card { margin-bottom:20px; overflow:hidden; background:#fff; border:1px solid var(--gbo-border); border-radius:17px; box-shadow:var(--gbo-shadow-sm); }
.gbo-sidebar-card__heading { display:flex; align-items:center; justify-content:space-between; width:100%; min-height:55px; padding:0 18px; color:var(--gbo-ink); background:linear-gradient(180deg,#fff,#f7f9fc); border:0; border-bottom:1px solid var(--gbo-border); font-size:14px; font-weight:850; text-align:left; }
.gbo-sidebar-card__heading--static { cursor:default; }
.gbo-sidebar-card__body { padding:12px 16px; }
.gbo-sidebar-list,.gbo-sidebar-list ul,.gbo-account-links { padding:0; margin:0; list-style:none; }
.gbo-sidebar-list > li + li,.gbo-account-links > li + li { border-top:1px solid var(--gbo-border); }
.gbo-sidebar-list > li > a,.gbo-account-links a { display:flex; align-items:center; min-height:43px; color:var(--gbo-text); gap:10px; font-size:11px; font-weight:700; }
.gbo-sidebar-list > li > a { justify-content:space-between; }
.gbo-sidebar-list li.is-active > a,.gbo-sidebar-list a:hover,.gbo-account-links a:hover { color:var(--gbo-blue); }
.gbo-sidebar-list ul { padding:0 0 9px 12px; }
.gbo-sidebar-list ul a { display:block; padding:6px 4px; color:var(--gbo-muted); font-size:10px; }
.gbo-account-links .fa { width:18px; color:var(--gbo-blue); text-align:center; }
.gbo-filter-group { padding:0 0 15px; margin:0 0 15px; border:0; border-bottom:1px solid var(--gbo-border); }
.gbo-filter-group legend { width:auto; padding:0; margin:0 0 10px; color:var(--gbo-ink); border:0; font-size:12px; font-weight:820; }
.gbo-filter-options { display:grid; gap:8px; }
.gbo-check { display:flex; align-items:flex-start; margin:0; color:var(--gbo-text); gap:9px; font-size:10px; font-weight:600; cursor:pointer; }
.gbo-check input { position:absolute; opacity:0; pointer-events:none; }
.gbo-check__control { display:flex; align-items:center; justify-content:center; width:18px; height:18px; flex:0 0 18px; color:transparent; background:#fff; border:1px solid #c9d2dd; border-radius:5px; }
.gbo-check input:checked + .gbo-check__control { color:#fff; background:var(--gbo-blue); border-color:var(--gbo-blue); }
.gbo-filter__submit { width:100%; min-height:44px; color:#fff; background:var(--gbo-blue); border:0; border-radius:11px; font-size:11px; font-weight:850; }

.gbo-vertical-catalog { position:relative; z-index:20; }
.gbo-vertical-catalog__heading { display:flex; align-items:center; width:100%; min-height:52px; padding:0 18px; color:#fff; background:var(--gbo-blue); border:0; border-radius:13px 13px 0 0; gap:11px; font-size:12px; font-weight:850; text-align:left; }
.gbo-vertical-catalog__heading .fa:last-child { margin-left:auto; }
.gbo-vertical-catalog__panel { background:#fff; border:1px solid var(--gbo-border); border-top:0; border-radius:0 0 13px 13px; box-shadow:var(--gbo-shadow); }
.gbo-vertical-catalog__list,.gbo-vertical-catalog__columns ul { padding:0; margin:0; list-style:none; }
.gbo-vertical-catalog__item { position:relative; border-bottom:1px solid var(--gbo-border); }
.gbo-vertical-catalog__item:last-child { border-bottom:0; }
.gbo-vertical-catalog__item > a { display:flex; align-items:center; justify-content:space-between; min-height:43px; padding:8px 15px; color:var(--gbo-text); font-size:10px; font-weight:720; }
.gbo-vertical-catalog__item:hover > a { color:var(--gbo-blue); background:var(--gbo-blue-soft); }
.gbo-vertical-catalog__mega { position:absolute; top:-1px; left:100%; display:none; width:min(760px,65vw); min-height:100%; padding:22px; background:#fff; border:1px solid var(--gbo-border); border-radius:0 15px 15px 15px; box-shadow:0 20px 55px rgba(13,39,73,.18); }
.gbo-vertical-catalog__item:hover > .gbo-vertical-catalog__mega { display:block; }
.gbo-vertical-catalog__columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.gbo-vertical-catalog__columns > ul > li > a { color:var(--gbo-ink); font-size:11px; font-weight:820; }
.gbo-vertical-catalog__columns ul ul { padding-top:8px; }
.gbo-vertical-catalog__columns ul ul a { display:block; padding:4px 0; color:var(--gbo-muted); font-size:10px; }
.gbo-html-module__content { color:var(--gbo-text); line-height:1.7; }

@media (max-width:1199px) {
  .gbo-module-track { grid-auto-columns:calc((100% - 36px)/3); }
  .gbo-home-categories__grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .gbo-brand-carousel__track { grid-auto-columns:calc((100% - 45px)/4); }
  .gbo-newsletter { grid-template-columns:auto 1fr; }
  .gbo-newsletter__form { grid-column:1/-1; }
}
@media (max-width:991px) {
  .gbo-module-track { grid-auto-columns:calc((100% - 18px)/2); }
  .gbo-home-categories__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .gbo-news-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .gbo-brand-carousel__track { grid-auto-columns:calc((100% - 30px)/3); }
  .gbo-vertical-catalog__panel { display:none; }
  .gbo-vertical-catalog.is-open .gbo-vertical-catalog__panel { display:block; }
  .gbo-vertical-catalog__mega { position:static; width:auto; min-height:0; padding:10px 15px 15px; border:0; border-radius:0; box-shadow:none; }
  .gbo-vertical-catalog__item:hover > .gbo-vertical-catalog__mega { display:none; }
  .gbo-vertical-catalog__item.is-open > .gbo-vertical-catalog__mega { display:block; }
  .gbo-vertical-catalog__columns { grid-template-columns:1fr; gap:10px; }
}
@media (max-width:767px) {
  .gbo-home-section { margin:34px 0; }
  .gbo-section-heading { align-items:flex-start; margin-bottom:18px; }
  .gbo-section-title { font-size:26px; }
  .gbo-section-kicker { font-size:9px; }
  .gbo-section-link { min-height:39px; padding:0 12px; font-size:10px; }
  .gbo-section-controls { display:none; }
  .gbo-module-track { grid-auto-columns:78%; gap:12px; margin-right:-15px; padding-right:15px; }
  .gbo-product-card__media { min-height:210px; padding:18px; }
  .gbo-product-card__image { height:175px; }
  .gbo-product-card__quick-actions { opacity:1; transform:none; }
  .gbo-product-card__body { padding:15px; }
  .gbo-home-categories__grid { grid-template-columns:1fr; gap:10px; }
  .gbo-home-category { grid-template-columns:76px minmax(0,1fr) auto; min-height:98px; padding:11px 13px; }
  .gbo-home-category__image { width:76px; height:76px; }
  .gbo-news-grid { display:grid; grid-auto-flow:column; grid-auto-columns:84%; grid-template-columns:none; padding-bottom:12px; overflow-x:auto; scroll-snap-type:inline mandatory; }
  .gbo-news-card { scroll-snap-align:start; }
  .gbo-brand-carousel__track { grid-auto-columns:45%; }
  .gbo-hero-slider { margin-right:-15px; margin-left:-15px; border-radius:15px; }
  .gbo-hero-slider img { min-height:230px; object-fit:cover; }
  .gbo-hero-slider__arrow { display:none; }
  .gbo-newsletter { display:block; padding:24px 18px; border-radius:18px; }
  .gbo-newsletter__icon { width:52px; height:52px; margin-bottom:15px; }
  .gbo-newsletter__copy h2 { font-size:22px; }
  .gbo-newsletter__form { display:block; margin-top:18px; }
  .gbo-newsletter__form button { width:100%; margin-top:9px; }
  .gbo-newsletter__message { position:static; min-height:18px; padding-top:7px; }
  .gbo-sidebar-card__body { display:block; }
  .gbo-sidebar-card:not(.is-open) [data-collapsible-content] { display:none; }
  .gbo-sidebar-card__heading[aria-expanded="false"] .fa-angle-down { transform:rotate(-90deg); }
}
@media (max-width:479px) {
  .gbo-module-track { grid-auto-columns:86%; }
  .gbo-section-heading--tabs { display:block; }
  .gbo-section-heading--tabs .gbo-section-link { margin-top:14px; }
  .gbo-category-tabs__bar { margin-right:-15px; border-radius:12px 0 0 12px; }
  .gbo-brand-carousel__track { grid-auto-columns:64%; }
}

/* ========================================================================
   GBO REDBOX 2.1 — final polish layer
   Header, callback modal, catalogue, product page and responsive hardening.
   This block intentionally comes last and wins over the legacy Redbox CSS.
   ======================================================================== */

body.gbo-modal-open {
  overflow: hidden;
  padding-right: var(--gbo-scrollbar-width, 0);
}

.gbo-page {
  min-height: 60vh;
  padding: 26px 0 76px;
}

.gbo-page > .container > .row,
.gbo-page .changed-order-positions {
  margin-right: -12px;
  margin-left: -12px;
}

.gbo-page > .container > .row > [class*="col-"],
.gbo-page .changed-order-positions > [class*="col-"] {
  padding-right: 12px;
  padding-left: 12px;
}



/* Header — stable four-zone desktop layout and clean mobile collapse */
.gbo-header-main__inner {
  grid-template-columns: minmax(188px, 225px) minmax(280px, 1fr) minmax(218px, 236px) auto;
  min-height: 104px;
  gap: 20px;
}

.gbo-brand__link {
  display: inline-flex;
  max-width: 100%;
  align-items: center;
  line-height: 1;
}

.gbo-brand__text {
  display: inline-block;
  color: var(--gbo-blue);
  font-size: clamp(24px, 2vw, 30px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.065em;
  white-space: nowrap;
}

.gbo-brand__text span {
  color: var(--gbo-green);
}

.gbo-brand__caption {
    max-width: 195px;
    margin-top: 0;
    font-size: 11px;
    line-height: 1.35;
}

.gbo-header-contacts {
  display: grid;
  min-width: 0;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
}

.gbo-header-contacts > .gbo-phone__icon {
  width: 42px;
  height: 42px;
  margin: 0;
  flex: 0 0 42px;
  font-size: 16px;
}

.gbo-phone-stack {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: 1px;
}

.gbo-phone-stack__label {
  display: block;
  margin-bottom: 1px;
  color: var(--gbo-muted);
  font-size: 9px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.015em;
}

.gbo-phone-stack .gbo-phone {
  display: block;
  padding: 0;
  color: var(--gbo-ink);
  line-height: 1.22;
  white-space: nowrap;
}

.gbo-phone-stack .gbo-phone--primary {
  font-size: 16px;
  font-weight: 800;
  letter-spacing: -0.02em;
}

.gbo-phone-stack .gbo-phone--secondary {
  margin-top: 2px;
  color: #5e6c80;
  font-size: 13px;
  font-weight: 700;
}

.gbo-phone-stack .gbo-phone:hover {
  color: var(--gbo-blue);
}

.gbo-mobile-phone {
  display: none;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  color: var(--gbo-blue);
  background: var(--gbo-blue-soft);
  border: 1px solid rgba(31, 95, 174, 0.12);
  border-radius: 12px;
  font-size: 21px;
}

.gbo-mobile-phone:hover,
.gbo-mobile-phone:focus {
  color: #fff;
  background: var(--gbo-blue);
}

.gbo-header-actions {
  min-width: 0;
  flex-wrap: nowrap;
}

.gbo-header-cart,
#cart.gbo-cart {
  min-width: 76px;
}

.gbo-nav__list {
  overflow: visible;
}

.gbo-nav__item:not(.gbo-nav__item--catalog) .gbo-nav__link {
  text-align: center;
}

/* Callback modal */
.gbo-modal {
  position: fixed;
  inset: 0;
  z-index: 50000;
  display: grid;
  visibility: hidden;
  overflow-y: auto;
  place-items: center;
  padding: 24px;
  opacity: 0;
  transition: visibility 220ms ease, opacity 220ms ease;
  overscroll-behavior: contain;
}

.gbo-modal.is-open {
  visibility: visible;
  opacity: 1;
}

.gbo-modal__backdrop {
  position: fixed;
  inset: 0;
  background: rgba(6, 24, 44, 0.72);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.gbo-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(510px, 100%);
  padding: 36px;
  overflow: hidden;
  background:
    radial-gradient(circle at 100% 0, rgba(112, 182, 44, 0.14), transparent 34%),
    #fff;
  border: 1px solid rgba(255, 255, 255, 0.7);
  border-radius: 24px;
  box-shadow: 0 32px 100px rgba(5, 22, 42, 0.32);
  transform: translateY(18px) scale(0.98);
  transition: transform 240ms ease;
}

.gbo-modal.is-open .gbo-modal__dialog {
  transform: translateY(0) scale(1);
}

.gbo-modal__close {
  position: absolute;
  top: 16px;
  right: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  padding: 0;
  color: var(--gbo-muted);
  background: var(--gbo-bg);
  border: 0;
  border-radius: 50%;
  cursor: pointer;
}

.gbo-modal__close:hover,
.gbo-modal__close:focus {
  color: #fff;
  background: var(--gbo-blue);
}

.gbo-modal__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  margin-bottom: 18px;
  color: #fff;
  background: linear-gradient(135deg, var(--gbo-green), var(--gbo-green-dark));
  border-radius: 17px;
  box-shadow: 0 12px 28px rgba(112, 182, 44, 0.25);
  font-size: 22px;
}

.gbo-modal__eyebrow,
.gbo-review-form__eyebrow {
  display: block;
  margin-bottom: 7px;
  color: var(--gbo-green-dark);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.gbo-modal__dialog h2 {
  max-width: 390px;
  margin: 0 52px 10px 0;
  font-size: clamp(25px, 4vw, 32px);
}

.gbo-modal__lead {
  max-width: 420px;
  margin-bottom: 24px;
  color: var(--gbo-muted);
  font-size: 14px;
  line-height: 1.55;
}

.gbo-form-field {
  margin-bottom: 16px;
}

.gbo-form-field label {
  display: block;
  margin-bottom: 7px;
}

.gbo-form-field label span {
  color: var(--gbo-danger);
}

.gbo-form-field input {
  min-height: 52px;
  padding-right: 16px;
  padding-left: 16px;
  border-radius: 12px;
}

.gbo-form-field.has-error input,
.gbo-checkbox.has-error .gbo-checkbox__mark {
  border-color: var(--gbo-danger);
  box-shadow: 0 0 0 4px rgba(217, 65, 65, 0.08);
}

.gbo-form-error {
  display: block;
  min-height: 0;
  margin-top: 5px;
  color: var(--gbo-danger);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
}

.gbo-form-error:empty {
  display: none;
}

.gbo-form-error--agreement {
  margin: -7px 0 12px 31px;
}

.gbo-checkbox {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: start;
  margin: 2px 0 16px;
  color: var(--gbo-text);
  cursor: pointer;
  gap: 10px;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.45;
  align-items: center;
}

.gbo-checkbox > input {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  opacity: 0;
}

.gbo-checkbox__mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  color: transparent;
  background: #fff;
  border: 1px solid var(--gbo-border-strong);
  border-radius: 6px;
  transition: var(--gbo-transition);
}

.gbo-checkbox input:checked + .gbo-checkbox__mark {
  color: #fff;
  background: var(--gbo-blue);
  border-color: var(--gbo-blue);
}

.gbo-checkbox input:focus-visible + .gbo-checkbox__mark {
  outline: 3px solid rgba(31, 95, 174, 0.2);
  outline-offset: 2px;
}

.gbo-checkbox a {
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.gbo-honeypot {
  position: absolute !important;
  top: auto !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

.gbo-callback-form__submit,
.gbo-callback-success__button {
  display: inline-flex;
  width: 100%;
  min-height: 54px;
  align-items: center;
  justify-content: center;
  padding: 12px 20px;
  color: #fff;
  background: linear-gradient(135deg, var(--gbo-blue), #2a76c9);
  border: 0;
  border-radius: 12px;
  box-shadow: 0 12px 28px rgba(31, 95, 174, 0.22);
  cursor: pointer;
  gap: 10px;
  font-size: 14px;
  font-weight: 800;
}

.gbo-callback-form__submit:hover,
.gbo-callback-success__button:hover {
  background: linear-gradient(135deg, var(--gbo-blue-dark), var(--gbo-blue));
}

.gbo-callback-form__submit:disabled {
  cursor: wait;
  opacity: 0.7;
}

.gbo-callback-form.is-submitting .gbo-callback-form__submit i {
  animation: gbo-submit-pulse 800ms ease-in-out infinite alternate;
}

@keyframes gbo-submit-pulse {
  to { transform: translateX(4px); }
}

.gbo-callback-form__status {
  min-height: 20px;
  margin-top: 10px;
  color: var(--gbo-muted);
  font-size: 12px;
  font-weight: 600;
  text-align: center;
}

.gbo-callback-form__status.is-error {
  color: var(--gbo-danger);
}

.gbo-callback-success {
  padding: 18px 0 8px;
  text-align: center;
}

.gbo-callback-success__icon {
  display: inline-flex;
  width: 76px;
  height: 76px;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  color: #fff;
  background: linear-gradient(135deg, var(--gbo-green), var(--gbo-green-dark));
  border-radius: 50%;
  box-shadow: 0 18px 38px rgba(112, 182, 44, 0.25);
  font-size: 30px;
}

.gbo-callback-success h3 {
  margin: 0 0 10px;
  font-size: 28px;
}

.gbo-callback-success p {
  max-width: 360px;
  margin: 0 auto 24px;
  color: var(--gbo-muted);
}

/* Shared page hero */
.gbo-page-hero {
  position: relative;
  padding: clamp(30px, 5vw, 58px);
  margin-bottom: 30px;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 88% 10%, rgba(112, 182, 44, 0.34), transparent 25%),
    linear-gradient(135deg, var(--gbo-blue-deep), var(--gbo-blue));
  border-radius: 24px;
  box-shadow: var(--gbo-shadow);
}

.gbo-page-hero::after {
  position: absolute;
  right: -75px;
  bottom: -100px;
  width: 260px;
  height: 260px;
  content: "";
  border: 48px solid rgba(255, 255, 255, 0.045);
  border-radius: 50%;
}

.gbo-page-hero__eyebrow {
  position: relative;
  z-index: 1;
  display: block;
  margin-bottom: 10px;
  color: #b8df8e;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.gbo-page-hero h1 {
  position: relative;
  z-index: 1;
  max-width: 760px;
  margin: 0 0 13px;
  color: #fff;
}

.gbo-page-hero p {
  position: relative;
  z-index: 1;
  max-width: 720px;
  margin: 0;
  color: rgba(255, 255, 255, 0.76);
  font-size: clamp(14px, 1.6vw, 17px);
}

/* General catalogue landing */
.gbo-catalog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.gbo-catalog-card {
  display: flex;
  min-width: 0;
  overflow: hidden;
  flex-direction: column;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 20px;
  box-shadow: var(--gbo-shadow-sm);
  transition: border-color var(--gbo-transition), box-shadow var(--gbo-transition);
}

.gbo-catalog-card:hover {
  border-color: rgba(31, 95, 174, 0.28);
  box-shadow: 0 18px 44px rgba(18, 43, 75, 0.12);
}

.gbo-catalog-card__media {
  position: relative;
  display: block;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: linear-gradient(145deg, #f8fafc, #eef3f8);
}

.gbo-catalog-card__media img {
  width: 100%;
  height: 100%;
  padding: 16px;
  object-fit: contain;
  transition: transform 260ms ease;
}

.gbo-catalog-card:hover .gbo-catalog-card__media img {
  transform: scale(1.035);
}

.gbo-catalog-card__count {
  position: absolute;
  right: 14px;
  bottom: 14px;
  padding: 7px 10px;
  color: var(--gbo-ink);
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(255, 255, 255, 0.9);
  border-radius: 999px;
  box-shadow: 0 5px 18px rgba(18, 43, 75, 0.1);
  font-size: 10px;
  font-weight: 800;
  backdrop-filter: blur(8px);
}

.gbo-catalog-card__body {
  display: flex;
  min-height: 270px;
  flex: 1;
  flex-direction: column;
  padding: 22px;
}

.gbo-catalog-card__body h2 {
  margin: 0 0 10px;
  font-size: 20px;
}

.gbo-catalog-card__body h2 a {
  color: var(--gbo-ink);
}

.gbo-catalog-card__body h2 a:hover {
  color: var(--gbo-blue);
}

.gbo-catalog-card__body > p {
  display: -webkit-box;
  margin-bottom: 14px;
  overflow: hidden;
  color: var(--gbo-muted);
  font-size: 12px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.gbo-catalog-card__children {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  margin: 0 0 18px;
  list-style: none;
  gap: 6px;
}

.gbo-catalog-card__children a {
  display: inline-flex;
  min-height: 28px;
  align-items: center;
  padding: 5px 9px;
  color: #58667a;
  background: var(--gbo-bg);
  border: 1px solid #ebeff4;
  border-radius: 7px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.2;
}

.gbo-catalog-card__children a:hover {
  color: var(--gbo-blue);
  background: var(--gbo-blue-soft);
  border-color: rgba(31, 95, 174, 0.18);
}

.gbo-catalog-card__link {
  display: inline-flex;
  align-items: center;
  margin-top: auto;
  color: var(--gbo-blue);
  gap: 8px;
  font-size: 12px;
  font-weight: 800;
}

.gbo-catalog-card__link i {
  transition: transform var(--gbo-transition);
}

.gbo-catalog-card__link:hover i {
  transform: translateX(4px);
}

/* Category heading and subcategories */
.gbo-category-heading {
  margin-bottom: 24px;
}

.gbo-category-heading__eyebrow {
  display: block;
  margin-bottom: 7px;
  color: var(--gbo-green-dark);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.gbo-category-heading h1 {
  margin: 0;
}

.gbo-category-intro {
  display: grid;
  grid-template-columns: minmax(180px, 280px) minmax(0, 1fr);
  align-items: center;
  padding: 24px;
  margin-bottom: 28px;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 20px;
  box-shadow: var(--gbo-shadow-sm);
  gap: 26px;
}

.gbo-category-intro__image {
  display: flex;
  min-height: 180px;
  align-items: center;
  justify-content: center;
  padding: 12px;
  background: var(--gbo-bg);
  border-radius: 16px;
}

.gbo-category-intro__image img {
  max-height: 220px;
  object-fit: contain;
}

.gbo-category-intro__content > :last-child {
  margin-bottom: 0;
}

.gbo-category-refine {
  margin-bottom: 28px;
}

.gbo-section-heading--compact {
  margin-bottom: 14px;
}

.gbo-section-heading--compact > div > span {
  display: block;
  margin-bottom: 3px;
  color: var(--gbo-green-dark);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.gbo-section-heading--compact h2 {
  margin: 0;
  font-size: 23px;
}

.gbo-category-refine__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.gbo-category-refine__card {
  display: grid;
  min-width: 0;
  min-height: 82px;
  grid-template-columns: 58px minmax(0, 1fr) 24px;
  align-items: center;
  padding: 10px 12px 10px 10px;
  color: var(--gbo-ink);
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 14px;
  box-shadow: 0 4px 14px rgba(18, 43, 75, 0.045);
  gap: 10px;
}

.gbo-category-refine__card:hover {
  color: var(--gbo-blue);
  border-color: rgba(31, 95, 174, 0.28);
  box-shadow: var(--gbo-shadow-sm);
}

.gbo-category-refine__image {
  display: flex;
  width: 58px;
  height: 58px;
  align-items: center;
  justify-content: center;
  padding: 6px;
  background: var(--gbo-bg);
  border-radius: 10px;
}

.gbo-category-refine__image img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.gbo-category-refine__name {
  min-width: 0;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.35;
   word-wrap: break-word;
}

.gbo-category-refine__card > i {
  color: var(--gbo-blue);
  font-size: 11px;
}

/* Catalogue controls — real selects, large click targets, no fake plugin UI */
.category_filter.gbo-catalog-toolbar,
.gbo-catalog-toolbar {
  display: flex !important;
  width: 100%;
  min-height: 72px;
  align-items: center;
  justify-content: space-between;
  padding: 12px !important;
  margin: 0 0 22px !important;
  overflow: visible;
  background: #fff !important;
  border: 1px solid var(--gbo-border) !important;
  border-radius: 16px !important;
  box-shadow: var(--gbo-shadow-sm);
  gap: 14px;
}

.gbo-catalog-toolbar::before,
.gbo-catalog-toolbar::after {
  display: none !important;
  content: none !important;
}

.gbo-catalog-toolbar__left,
.gbo-catalog-toolbar__controls,
.gbo-catalog-control,
.gbo-view-switch {
  display: flex;
  align-items: center;
}

.gbo-catalog-toolbar__left {
  min-width: 0;
  gap: 10px;
}

.gbo-view-switch {
  flex: 0 0 auto;
  padding: 3px;
  background: var(--gbo-bg);
  border: 1px solid var(--gbo-border);
  border-radius: 11px;
  gap: 3px;
}

.gbo-catalog-toolbar .btn-list-grid {
  display: flex !important;
  width: auto !important;
  padding: 3px !important;
  margin: 0 !important;
}

.gbo-catalog-toolbar .grid,
.gbo-catalog-toolbar .list {
  display: inline-flex !important;
  width: 42px !important;
  min-width: 42px !important;
  height: 42px !important;
  min-height: 42px !important;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  margin: 0 !important;
  color: #788599 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  font-size: 15px;
}

.gbo-catalog-toolbar .grid:hover,
.gbo-catalog-toolbar .list:hover,
.gbo-catalog-toolbar .grid.active,
.gbo-catalog-toolbar .list.active,
.gbo-catalog-toolbar .grid[aria-pressed="true"],
.gbo-catalog-toolbar .list[aria-pressed="true"] {
  color: #fff !important;
  background: var(--gbo-blue) !important;
  transform: none !important;
}

.gbo-catalog-toolbar .compare-total {
  float: none !important;
  width: auto !important;
  padding: 0 !important;
  margin: 0 !important;
}

.gbo-catalog-toolbar .compare-total a {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  padding: 0 14px;
  color: var(--gbo-ink);
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 11px;
  gap: 8px;
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}

.gbo-catalog-toolbar .compare-total a:hover {
  color: var(--gbo-blue);
  background: var(--gbo-blue-soft);
  border-color: rgba(31, 95, 174, 0.22);
}

.gbo-catalog-toolbar__controls,
.gbo-catalog-toolbar .pagination-right {
  display: flex !important;
  width: auto !important;
  min-width: 0;
  align-items: center;
  justify-content: flex-end;
  padding: 0 !important;
  margin: 0 !important;
  float: none !important;
  gap: 12px;
}

.gbo-catalog-control,
.gbo-catalog-toolbar .sort-by-wrapper,
.gbo-catalog-toolbar .show-wrapper {
  display: flex !important;
  width: auto !important;
  min-width: 0;
  align-items: center;
  padding: 0 !important;
  margin: 0 !important;
  float: none !important;
  gap: 8px;
}

.gbo-catalog-control label,
.gbo-catalog-toolbar .control-label {
  flex: 0 0 auto;
  padding: 0 !important;
  margin: 0 !important;
  color: var(--gbo-muted);
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
}

.gbo-select {
  position: relative;
  display: block;
  min-width: 0;
}

.gbo-select > i {
  position: absolute;
  top: 50%;
  right: 13px;
  z-index: 2;
  color: var(--gbo-blue);
  pointer-events: none;
  transform: translateY(-50%);
}

.gbo-select select,
.gbo-catalog-toolbar select.form-control,
.gbo-catalog-toolbar select.hasCustomSelect {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  display: block !important;
  width: 100% !important;
  min-width: 0;
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 38px 0 13px !important;
  margin: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
  appearance: none !important;
  color: var(--gbo-ink) !important;
  background: #fff !important;
  border: 1px solid var(--gbo-border) !important;
  border-radius: 11px !important;
  box-shadow: none !important;
  font-size: 11px !important;
  font-weight: 700;
  line-height: 48px !important;
}

.gbo-catalog-control .gbo-select {
  width: 224px;
}

.gbo-catalog-control--limit .gbo-select {
  width: 82px;
}

.gbo-catalog-toolbar .customSelect,
.gbo-catalog-toolbar .customSelectInner {
  display: none !important;
}

/* New category cards */
.gbo-category-products {
  width: 100%;
  margin: 0;
}

.gbo-category-products > .row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -9px !important;
  margin-left: -9px !important;
}

.gbo-category-products .product-layout {
  display: flex;
  min-width: 0;
  padding: 0 9px 18px !important;
  margin: 0 !important;
}

.gbo-category-product {
  position: relative;
  display: flex;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  flex-direction: column;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 18px;
  box-shadow: 0 5px 18px rgba(18, 43, 75, 0.055);
  transition: border-color var(--gbo-transition), box-shadow var(--gbo-transition);
}

.gbo-category-product:hover,
.gbo-category-product:focus-within {
  border-color: rgba(31, 95, 174, 0.28);
  box-shadow: 0 16px 36px rgba(18, 43, 75, 0.1);
  transform: none;
}

.gbo-category-product__media {
  position: relative;
  min-width: 0;
  overflow: hidden;
  background: linear-gradient(145deg, #fbfcfd, #f0f4f8);
}

.gbo-category-product__image {
  display: flex;
  width: 100%;
  /*aspect-ratio: 4 / 3;*/
  align-items: center;
  justify-content: center;
  padding: 18px;
}

.gbo-category-product__image img {
  width: 100%;
  height: 100%;
  max-height: 250px;
  object-fit: contain;
  transform: none !important;
  transition: transform 240ms ease;
}

.gbo-category-product:hover .gbo-category-product__image img {
  transform: scale(1.025) !important;
}

.gbo-category-product__badge {
  position: absolute;
  top: 13px;
  left: 13px;
  z-index: 2;
  padding: 6px 9px;
  color: #fff;
  background: var(--gbo-danger);
  border-radius: 7px;
  box-shadow: 0 7px 18px rgba(217, 65, 65, 0.22);
  font-size: 9px;
  font-weight: 800;
}

.gbo-category-product__quick-actions {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 3;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.gbo-category-product__quick-actions > button,
.gbo-category-product__quick-actions .quickview,
.gbo-category-product__quick-actions .quickview a,
.gbo-category-product__list-actions > button,
.gbo-category-product__list-actions .quickview,
.gbo-category-product__list-actions .quickview a {
  display: inline-flex !important;
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  min-height: 38px !important;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  margin: 0 !important;
  color: var(--gbo-blue)!important;
  background: rgba(255, 255, 255, 0.94) !important;
  border: 1px solid rgba(203, 213, 226, 0.85) !important;
  border-radius: 10px !important;
  box-shadow: 0 6px 18px rgba(18, 43, 75, 0.1) !important;
  font-size: 13px !important;
  line-height: 1 !important;
  cursor: pointer;
}

.gbo-category-product__quick-actions > button:hover,
.gbo-category-product__quick-actions .quickview a:hover,
.gbo-category-product__list-actions > button:hover,
.gbo-category-product__list-actions .quickview a:hover {
  color: #fff !important;
  background: var(--gbo-blue) !important;
  border-color: var(--gbo-blue) !important;
}

.gbo-category-product__body {
  display: flex;
  min-width: 0;
  flex: 1;
  flex-direction: column;
  padding: 18px;
}

.gbo-category-product__body h2 {
  display: -webkit-box;
  min-height: 44px;
  margin: 0 0 9px;
  overflow: hidden;
  font-size: 15px;
  line-height: 1.4;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.gbo-category-product__body h2 a {
  color: var(--gbo-ink);
}

.gbo-category-product__body h2 a:hover {
  color: var(--gbo-blue);
}

.gbo-stars,
.gbo-product-rating {
  display: inline-flex;
  align-items: center;
  color: #f2a51a;
  gap: 2px;
  font-size: 12px;
  line-height: 1;
}

.gbo-category-product__description {
  display: none;
  margin: 10px 0 14px;
  color: var(--gbo-muted);
  font-size: 12px;
  line-height: 1.6;
}

.gbo-category-product__price {
  display: flex;
  min-height: 50px;
  flex-wrap: wrap;
  align-items: baseline;
  align-content: flex-start;
  margin-top: 10px;
  gap: 4px 9px;
}

.gbo-category-product__price strong {
  color: var(--gbo-blue-dark);
  font-size: 20px;
  font-weight: 800;
  line-height: 1.2;
}

.gbo-category-product__price strong.price-new {
  color: var(--gbo-danger);
}

.gbo-category-product__price .price-old {
  color: var(--gbo-muted);
  font-size: 12px;
}

.gbo-category-product__price small {
  width: 100%;
  color: var(--gbo-muted);
  font-size: 9px;
  text-align: left;
}

.gbo-category-product__actions {
  display: grid;
  min-width: 0;
  grid-template-columns: 60px minmax(0, 1fr);
  align-items: stretch;
  margin-top: 12px;
  gap: 8px;
}

.gbo-category-product__quantity input {
  width: 60px !important;
  min-width: 60px;
  height: 46px;
  min-height: 46px;
  padding: 0 5px !important;
  text-align: center;
}

.gbo-category-product__cart,
.gbo-category-product .addtocartlist {
  position: static !important;
  display: inline-flex !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 46px !important;
  min-height: 46px !important;
  align-items: center;
  justify-content: center;
  padding: 0 13px !important;
  margin: 0 !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--gbo-blue), #2a76c9) !important;
  border: 0 !important;
  border-radius: 10px !important;
  box-shadow: 0 8px 20px rgba(31, 95, 174, 0.2) !important;
  gap: 7px;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-indent: 0 !important;
  transform: none !important;
}

.gbo-category-product__cart::before,
.gbo-category-product .addtocartlist::before,
.gbo-category-product .addtocartlist::after {
  display: none !important;
  content: none !important;
}

.gbo-category-product__cart:hover,
.gbo-category-product .addtocartlist:hover {
  color: #fff !important;
  background: linear-gradient(135deg, var(--gbo-blue-dark), var(--gbo-blue)) !important;
  transform: none !important;
}

.gbo-category-product__list-actions {
  display: none;
  align-items: center;
  gap: 7px;
}

.product-layout.product-list {
  width: 100% !important;
  float: none !important;
}

.product-layout.product-list .gbo-category-product {
  display: grid;
  grid-template-columns: minmax(220px, 285px) minmax(0, 1fr);
  flex-direction: initial;
}

.product-layout.product-list .gbo-category-product__media {
  min-height: 250px;
  border-right: 1px solid var(--gbo-border);
}

.product-layout.product-list .gbo-category-product__image {
  height: 100%;
  min-height: 250px;
  aspect-ratio: auto;
}

.product-layout.product-list .gbo-category-product__body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(250px, 310px);
  grid-template-rows: auto auto 1fr auto;
  align-items: start;
  padding: 24px;
  column-gap: 30px;
}

.product-layout.product-list .gbo-category-product__body h2 {
  min-height: 0;
  grid-column: 1;
  margin-bottom: 8px;
  font-size: 18px;
  -webkit-line-clamp: 3;
}

.product-layout.product-list .gbo-stars {
  grid-column: 1;
}

.product-layout.product-list .gbo-category-product__description {
  display: -webkit-box;
  grid-row: 3 / 5;
  grid-column: 1;
  margin: 12px 0 0;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
}

.product-layout.product-list .gbo-category-product__price {
  min-height: 0;
  grid-row: 1 / 3;
  grid-column: 2;
  align-self: start;
  justify-content: flex-start;
  padding-bottom: 15px;
  border-bottom: 1px solid var(--gbo-border);
}

.product-layout.product-list .gbo-category-product__price strong {
  font-size: 24px;
}

.product-layout.product-list .gbo-category-product__actions {
  grid-row: 3 / 5;
  grid-column: 2;
  grid-template-columns: 70px minmax(0, 1fr);
  align-self: end;
  margin-top: 16px;
}

.product-layout.product-list .gbo-category-product__quantity input {
  width: 70px !important;
}

.product-layout.product-list .gbo-category-product__quick-actions {
  display: none;
}

.product-layout.product-list .gbo-category-product__list-actions {
  display: flex;
  grid-column: 1 / -1;
  margin-top: 8px;
}

.gbo-pagination.pagination-wrapper {
  display: flex;
  min-height: 58px;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 9px 12px;
  margin: 4px 0 0;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 14px;
  gap: 12px;
}

.gbo-pagination .page-link,
.gbo-pagination .page-result {
  width: auto;
  padding: 0;
  margin: 0;
  float: none;
}

/* Product page */
.gbo-product-main {
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(380px, 0.96fr);
  align-items: start;
  margin-bottom: 30px;
  gap: 24px;
}

.gbo-product-gallery,
.gbo-product-summary {
  min-width: 0;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 22px;
  box-shadow: var(--gbo-shadow-sm);
}

.gbo-product-gallery {
  padding: 20px;
}

.gbo-product-gallery__stage {
  position: relative;
  display: flex;
  width: 100%;
  min-height: 420px;
  aspect-ratio: 1 / 0.92;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: linear-gradient(145deg, #fbfcfd, #f1f5f9);
  border-radius: 17px;
}

.gbo-product-gallery__main-link {
  position: relative;
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  padding: 32px;
}

.gbo-product-gallery__main-link img {
  width: 100%;
  height: 100%;
  max-height: 520px;
  object-fit: contain;
  mix-blend-mode: multiply;
}

.gbo-product-gallery__badge {
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 3;
  padding: 7px 11px;
  color: #fff;
  background: var(--gbo-danger);
  border-radius: 8px;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.gbo-product-gallery__zoom {
  position: absolute;
  right: 14px;
  bottom: 14px;
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  padding: 0 12px;
  color: var(--gbo-ink);
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(203, 213, 226, 0.8);
  border-radius: 9px;
  box-shadow: 0 7px 18px rgba(18, 43, 75, 0.1);
  gap: 7px;
  font-size: 10px;
  font-weight: 800;
  backdrop-filter: blur(8px);
}

.gbo-product-gallery__thumbs {
  display: flex;
  width: 100%;
  padding: 14px 14px 14px;
  overflow-x: auto;
  gap: 9px;
  scroll-snap-type: x proximity;
  scrollbar-width: thin;
}

.gbo-product-gallery__thumb {
  display: inline-flex;
  width: 76px;
  min-width: 76px;
  height: 76px;
  align-items: center;
  justify-content: center;
  padding: 7px;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 11px;
  cursor: pointer;
  scroll-snap-align: start;
}

.gbo-product-gallery__thumb:hover,
.gbo-product-gallery__thumb.is-active {
  border-color: var(--gbo-blue);
  box-shadow: 0 0 0 3px rgba(31, 95, 174, 0.1);
}

.gbo-product-gallery__thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.gbo-product-summary {
  padding: clamp(24px, 3vw, 34px);
}

.gbo-product-summary__eyebrow {
  display: block;
  margin-bottom: 9px;
  color: var(--gbo-green-dark);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.gbo-product-summary h1 {
  margin: 0 0 14px;
  font-size: clamp(26px, 3vw, 30px);
  line-height: 1.18;
  word-wrap: break-word;
}

.gbo-product-summary__rating {
  display: flex;
  min-height: 32px;
  flex-wrap: wrap;
  align-items: center;
  padding-bottom: 15px;
  margin-bottom: 16px;
  border-bottom: 1px solid var(--gbo-border);
  gap: 8px 12px;
}

.gbo-product-summary__review-link,
.gbo-product-summary__write-link {
  min-height: 30px;
  padding: 0;
  color: var(--gbo-blue);
  background: transparent;
  border: 0;
  font-size: 10px;
  font-weight: 800;
  cursor: pointer;
}

.gbo-product-summary__write-link {
  margin-left: auto;
}

.gbo-product-summary__write-link i {
  margin-right: 5px;
}

.gbo-product-meta {
  display: grid;
  margin: 0 0 18px;
  gap: 8px;
}

.gbo-product-meta > div {
  display: grid;
  grid-template-columns: minmax(90px, 130px) minmax(0, 1fr);
  align-items: baseline;
  gap: 12px;
}

.gbo-product-meta dt,
.gbo-product-meta dd {
  margin: 0;
  font-size: 11px;
  line-height: 1.4;
}

.gbo-product-meta dt {
  color: var(--gbo-muted);
  font-weight: 700;
}

.gbo-product-meta dd {
  color: var(--gbo-ink);
  font-weight: 700;
}

.gbo-product-stock {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.gbo-product-stock i {
  font-size: 7px;
}

.gbo-product-stock.is-available i {
  color: var(--gbo-success);
}

.gbo-product-stock.is-unavailable i {
  color: var(--gbo-danger);
}

.gbo-product-price-panel {
  padding: 18px;
  margin-bottom: 20px;
  background: linear-gradient(145deg, var(--gbo-blue-soft), #f6faff);
  border: 1px solid rgba(31, 95, 174, 0.13);
  border-radius: 15px;
}

.gbo-product-price-panel__caption {
  display: block;
  margin-bottom: 4px;
  color: var(--gbo-muted);
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}

.gbo-product-price-panel > strong,
.gbo-product-price-panel__row strong {
  color: var(--gbo-blue-dark);
  font-size: clamp(27px, 3vw, 36px);
  font-weight: 800;
  line-height: 1.15;
}

.gbo-product-price-panel__row {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px 14px;
}

.gbo-product-price-panel__row strong.price-new {
  color: var(--gbo-danger);
}

.gbo-product-price-panel__row .price-old {
  color: var(--gbo-muted);
  font-size: 15px;
}

.gbo-product-price-panel > small {
  display: block;
  margin-top: 7px;
  color: var(--gbo-muted);
  font-size: 10px;
}

.gbo-product-discounts {
  padding: 10px 0 0 18px;
  margin: 10px 0 0;
  border-top: 1px solid rgba(31, 95, 174, 0.12);
  color: var(--gbo-text);
  font-size: 10px;
}

.gbo-product-options {
  padding-top: 2px;
}

.gbo-product-options h2 {
  margin: 0 0 15px;
  font-size: 18px;
}

.gbo-product-options .form-group > label,
.gbo-product-options legend,
.gbo-recurring > label {
  display: block;
  width: 100%;
  padding: 0;
  margin: 0 0 7px;
  color: var(--gbo-ink);
  border: 0;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.4;
}

.gbo-product-options .required > label::after,
.gbo-product-options .required > legend::after,
.gbo-recurring.required > label::after {
  margin-left: 3px;
  color: var(--gbo-danger);
  content: "*";
}

.gbo-product-options .gbo-select,
.gbo-recurring .gbo-select {
  width: 100%;
}

.gbo-option-group {
  min-width: 0;
  padding: 0;
  border: 0;
}

.gbo-option-choices {
display: flex;
flex-wrap: wrap;
gap: 8px;
width: 100%;
}

.gbo-option-choice {
  position: relative;
  margin: 0;
  cursor: pointer;
}

.gbo-option-choice > input {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  opacity: 0;
}

.gbo-option-choice > span {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  padding: 7px 11px;
  color: var(--gbo-text);
  background: #fff;
  border: 1px solid var(--gbo-border-strong);
  border-radius: 9px;
  gap: 7px;
  font-size: 10px;
  font-weight: 700;
  transition: var(--gbo-transition);
}

.gbo-option-choice img {
  width: 28px;
  height: 28px;
  object-fit: contain;
  border-radius: 5px;
}

.gbo-option-choice small {
  color: var(--gbo-blue);
  font-size: 9px;
}

.gbo-option-choice input:checked + span {
  color: var(--gbo-blue-dark);
  background: var(--gbo-blue-soft);
  border-color: var(--gbo-blue);
  box-shadow: 0 0 0 3px rgba(31, 95, 174, 0.08);
}

.gbo-option-choice input:focus-visible + span {
  outline: 3px solid rgba(31, 95, 174, 0.2);
  outline-offset: 2px;
}

.gbo-product-buybox {
  display: grid;
  grid-template-columns: 122px minmax(0, 1fr);
  align-items: end;
  padding-top: 18px;
  margin-top: 6px;
  border-top: 1px solid var(--gbo-border);
  gap: 10px;
}

.gbo-product-quantity > label {
  display: block;
  margin-bottom: 6px;
  color: var(--gbo-muted);
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}

.gbo-quantity {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) 36px;
  height: 52px;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--gbo-border-strong);
  border-radius: 11px;
}

.gbo-quantity button {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  justify-content: center;
  padding: 0;
  color: var(--gbo-blue);
  background: var(--gbo-bg);
  border: 0;
  font-size: 9px;
}

.gbo-quantity input,
.gbo-quantity input.form-control {
  width: 100%;
  min-width: 0;
  height: 50px;
  min-height: 50px;
  padding: 0 3px;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  font-size: 13px;
  font-weight: 800;
  text-align: center;
}

.gbo-product-buybox__cart {
  display: inline-flex!important;
  width: 100%!important;
  min-height: 52px!important;
  align-items: center!important;
  justify-content: center!important;
  padding: 0 20px!important;
  color: #fff!important;
  background: linear-gradient(135deg, var(--gbo-blue), #2a76c9)!important;
  border: 0!important;
  border-radius: 11px!important;
  box-shadow: 0 11px 25px rgba(31, 95, 174, 0.22)!important;
  gap: 9px!important;
  font-size: 13px!important;
  font-weight: 800!important;
}

.gbo-product-buybox__cart:hover,
.gbo-product-buybox__cart:focus {
  color: #fff;
  background: linear-gradient(135deg, var(--gbo-blue-dark), var(--gbo-blue));
}

.gbo-product-secondary-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 9px;
  gap: 7px;
}

.gbo-product-secondary-actions button {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  justify-content: center;
  padding: 7px 8px;
  color: var(--gbo-text);
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 9px;
  gap: 6px;
  font-size: 9px;
  font-weight: 800;
}

.gbo-product-secondary-actions button:hover {
  color: var(--gbo-blue);
  background: var(--gbo-blue-soft);
  border-color: rgba(31, 95, 174, 0.22);
}

.gbo-product-unavailable {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  padding: 16px;
  margin-top: 16px;
  background: #fff5f5;
  border: 1px solid rgba(217, 65, 65, 0.18);
  border-radius: 14px;
  gap: 4px 10px;
}

.gbo-product-unavailable > i {
  grid-row: 1 / 3;
  color: var(--gbo-danger);
  font-size: 25px;
}

.gbo-product-unavailable strong {
  color: var(--gbo-ink);
}

.gbo-product-unavailable span {
  color: var(--gbo-muted);
  font-size: 11px;
}

.gbo-product-unavailable button {
  grid-column: 1 / -1;
  min-height: 42px;
  margin-top: 9px;
  color: #fff;
  background: var(--gbo-blue);
  border: 0;
  border-radius: 9px;
  font-weight: 800;
}

.gbo-product-trust {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding-top: 18px;
  margin-top: 20px;
  border-top: 1px solid var(--gbo-border);
  gap: 10px;
}

.gbo-product-trust > span {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: center;
  gap: 0 7px;
}

.gbo-product-trust > span > i {
  grid-row: 1 / 3;
  color: var(--gbo-green-dark);
  font-size: 20px;
}

.gbo-product-trust b {
  color: var(--gbo-ink);
  font-size: 9px;
  line-height: 1.3;
}

.gbo-product-trust small {
  color: var(--gbo-muted);
  font-size: 8px;
  line-height: 1.3;
}

/* Product tabs and reviews */
.gbo-product-tabs {
  margin-bottom: 42px;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 20px;
  box-shadow: var(--gbo-shadow-sm);
}

.gbo-product-tabs__nav {
  display: flex;
  padding: 0 22px;
  overflow-x: auto;
  background: #f8fafc;
  border-bottom: 1px solid var(--gbo-border);
  scrollbar-width: none;
}

.gbo-product-tabs__nav::-webkit-scrollbar {
  display: none;
}

.gbo-product-tabs__nav button {
  position: relative;
  display: inline-flex;
  min-width: max-content;
  min-height: 64px;
  align-items: center;
  justify-content: center;
  padding: 0 20px;
  color: var(--gbo-muted);
  background: transparent;
  border: 0;
  gap: 7px;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.gbo-product-tabs__nav button::after {
  position: absolute;
  right: 20px;
  bottom: -1px;
  left: 20px;
  height: 3px;
  content: "";
  background: var(--gbo-green);
  border-radius: 3px 3px 0 0;
  opacity: 0;
  transform: scaleX(0.5);
  transition: var(--gbo-transition);
}

.gbo-product-tabs__nav button:hover,
.gbo-product-tabs__nav button.is-active {
  color: var(--gbo-blue-dark);
}

.gbo-product-tabs__nav button.is-active::after {
  opacity: 1;
  transform: scaleX(1);
}

.gbo-product-tabs__nav button span {
  color: var(--gbo-blue);
  font-size: 9px;
}

.gbo-product-tabs__panels {
  padding: clamp(22px, 4vw, 38px);
}

.gbo-product-tab {
  display: none;
}

.gbo-product-tab.is-active {
  display: block;
}

.gbo-product-tab[hidden] {
  display: none !important;
}
/*
.gbo-specification {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}
*/

.gbo-specification__group {
  min-width: 0;
}

.gbo-specification__group h3 {
  padding-bottom: 10px;
  margin: 0 0 4px;
  border-bottom: 2px solid var(--gbo-green);
  font-size: 17px;
}

.gbo-specification__group dl {
  margin: 0;
}

.gbo-specification__group dl > div {
  display: grid;
  grid-template-columns: minmax(120px, 42%) minmax(0, 1fr);
  padding: 11px 0;
  border-bottom: 1px solid var(--gbo-border);
  gap: 16px;
}

.gbo-specification dt,
.gbo-specification dd {
  margin: 0;
  font-size: 11px;
  line-height: 1.45;
}

.gbo-specification dt {
  color: var(--gbo-muted);
  font-weight: 700;
}

.gbo-specification dd {
  color: var(--gbo-ink);
  font-weight: 700;
}

.gbo-reviews-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(310px, 0.85fr);
  align-items: start;
  gap: 34px;
}

.gbo-reviews-external {
  display: inline-flex;
  align-items: center;
  margin-bottom: 16px;
  gap: 7px;
  font-size: 11px;
  font-weight: 800;
}

.gbo-reviews-list #review > table,
.gbo-reviews-list #review .table {
  margin-bottom: 14px;
  overflow: hidden;
  border: 1px solid var(--gbo-border);
  border-radius: 12px;
}

.gbo-review-form {
  position: sticky;
  top: 20px;
  padding: 24px;
  background: var(--gbo-bg);
  border: 1px solid var(--gbo-border);
  border-radius: 16px;
}

.gbo-review-form h3 {
  margin: 0 0 18px;
  font-size: 22px;
}

.gbo-review-form .form-group {
  margin-bottom: 15px;
}

.gbo-review-rating-field {
  padding: 0;
  border: 0;
}

.gbo-review-rating-field legend {
  margin-bottom: 0!important;
  color: var(--gbo-ink);
  border: 0;
  font-size: 12px;
  font-weight: 800;
  padding: 0;
}

.gbo-review-stars {
  display: inline-flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  gap: 5px;
}

.gbo-review-stars input {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  opacity: 0;
}

.gbo-review-stars label {
  margin: 0;
  color: #cbd4df;
  cursor: pointer;
  font-size: 29px;
  line-height: 1;
  transition: color var(--gbo-transition), transform var(--gbo-transition);
}

.gbo-review-stars label:hover,
.gbo-review-stars label:hover ~ label,
.gbo-review-stars input:checked ~ label {
  color: #f2a51a;
}

.gbo-review-stars label:hover {
  transform: scale(1.08);
}

.gbo-review-stars input:focus-visible + label {
  outline: 3px solid rgba(31, 95, 174, 0.2);
  outline-offset: 3px;
  border-radius: 4px;
}

.gbo-review-form__submit {
  display: inline-flex;
  width: 100%;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 0 18px;
  color: #fff;
  background: var(--gbo-blue);
  border: 0;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 800;
}

.gbo-review-form__login {
  padding: 15px;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 10px;
}

.gbo-related-products {
  margin-top: 0;
  margin-bottom: 38px;
  overflow: hidden;
}

.gbo-product-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 16px 18px;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 14px;
  gap: 7px;
}

.gbo-product-tags strong {
  margin-right: 4px;
  color: var(--gbo-ink);
  font-size: 11px;
}

.gbo-product-tags a {
  display: inline-flex;
  min-height: 28px;
  align-items: center;
  padding: 4px 9px;
  color: var(--gbo-text);
  background: var(--gbo-bg);
  border-radius: 7px;
  font-size: 10px;
  font-weight: 700;
}

/* Information pages and automatic image lightbox */
.gbo-information-article {
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 22px;
  box-shadow: var(--gbo-shadow-sm);
}

.gbo-information-article__header {
  padding: clamp(28px, 4vw, 48px);
  background:
    radial-gradient(circle at 90% 0, rgba(112, 182, 44, 0.2), transparent 30%),
    linear-gradient(135deg, #f6f9fc, #eef4fb);
  border-bottom: 1px solid var(--gbo-border);
}

.gbo-information-article__header > span {
  display: block;
  margin-bottom: 8px;
  color: var(--gbo-green-dark);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.gbo-information-article__header h1 {
  max-width: 920px;
  margin: 0;
}

.gbo-information-article__content {
  padding: clamp(24px, 5vw, 56px);
}

.gbo-richtext {
  min-width: 0;
  color: var(--gbo-text);
  line-height: 1.75;
}

.gbo-richtext::after {
  display: table;
  clear: both;
  content: "";
}

.gbo-richtext > :first-child {
  margin-top: 0;
}

.gbo-richtext > :last-child {
  margin-bottom: 0;
}

.gbo-richtext h2,
.gbo-richtext h3,
.gbo-richtext h4 {
  scroll-margin-top: 24px;
}

.gbo-richtext a:not(.gbo-content-lightbox) {
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.gbo-richtext ul,
.gbo-richtext ol {
  padding-left: 22px;
}

.gbo-richtext li + li {
  margin-top: 6px;
}

.gbo-richtext table {
  width: 100% !important;
  margin: 22px 0;
  border-collapse: collapse;
}

.gbo-richtext table th,
.gbo-richtext table td {
  padding: 11px 13px;
  border: 1px solid var(--gbo-border);
}

.gbo-richtext table th {
  color: var(--gbo-ink);
  background: var(--gbo-bg);
}

.gbo-richtext iframe,
.gbo-richtext video {
  max-width: 100%;
  border-radius: 14px;
}

.gbo-content-lightbox {
  position: relative;
  display: inline-block;
  max-width: 100%;
  margin: 8px 6px 14px 0;
  overflow: hidden;
  vertical-align: top;
  border: 1px solid var(--gbo-border);
  border-radius: 14px;
  box-shadow: var(--gbo-shadow-sm);
  cursor: zoom-in;
}

.gbo-content-lightbox::after {
  position: absolute;
  right: 10px;
  bottom: 10px;
  display: inline-flex;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  color: #fff;
  content: "\f00e";
  background: rgba(11, 39, 72, 0.82);
  border-radius: 9px;
  font-family: FontAwesome;
  font-size: 13px;
  opacity: 0;
  transform: translateY(5px);
  transition: var(--gbo-transition);
}

.gbo-content-lightbox:hover::after,
.gbo-content-lightbox:focus::after {
  opacity: 1;
  transform: translateY(0);
}

.gbo-content-lightbox img {
  display: block;
  max-width: 100%;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transition: transform 260ms ease;
}

.gbo-content-lightbox:hover img {
  transform: scale(1.015);
}

.mfp-bg {
  z-index: 60000 !important;
  background: #071a2f !important;
  opacity: 0.92 !important;
}

.mfp-wrap {
  z-index: 60001 !important;
}

.mfp-image-holder .mfp-content {
  max-width: min(1400px, 94vw);
}

img.mfp-img {
  padding: 46px 0 !important;
}

.mfp-title,
.mfp-counter {
  color: rgba(255, 255, 255, 0.8) !important;
  font-size: 11px !important;
}

/* Legacy product cards used by search/special/manufacturer pages */
#product-search .product-block,
#product-special .product-block,
#product-manufacturer .product-block,
.product-layout .product-block {
  transform: none !important;
}

#product-search .product-block:hover,
#product-special .product-block:hover,
#product-manufacturer .product-block:hover,
.product-layout .product-block:hover {
  transform: none !important;
}

.product-block .image img,
.product-block:hover .image img,
.product-block:hover .reg-image {
  transform: none !important;
}

.product-block .hover-image {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

.product-block .image .button-group,
.product-block:hover .image .button-group,
.product-block:focus-within .image .button-group {
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
}

.addtocartlist,
button.addtocartlist {
  min-width: 46px;
  min-height: 46px;
  border-radius: 10px;
  transform: none !important;
}

.addtocartlist:hover,
button.addtocartlist:hover {
  transform: none !important;
}

/* Responsive header */
@media (max-width: 1199px) {
  .gbo-header-main__inner {
    grid-template-columns: minmax(165px, 185px) minmax(240px, 1fr) minmax(196px, 208px) auto;
    gap: 14px;
  }

  .gbo-brand__text {
    font-size: 24px;
  }

  .gbo-brand__caption {
    display: block;
  }

  .gbo-header-contacts > .gbo-phone__icon {
    width: 36px;
    height: 36px;
    font-size: 14px;
  }

  .gbo-header-contacts {
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 8px;
  }

  .gbo-phone-stack .gbo-phone--primary {
    font-size: 14px;
  }

  .gbo-phone-stack .gbo-phone--secondary {
    font-size: 11px;
  }

  .gbo-phone-stack__label {
    font-size: 8px;
  }

  .gbo-category-refine__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .gbo-catalog-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .gbo-product-main {
    grid-template-columns: minmax(0, 1fr) minmax(350px, 0.9fr);
  }

  .gbo-product-gallery__stage {
    min-height: 360px;
  }

  .gbo-product-trust {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
 /* .gbo-header-main__inner {
    grid-template-columns: minmax(165px, 1fr) auto auto auto;
    min-height: 76px;
    padding-top: 7px;
    gap: 7px;
  }
  */



.gbo-header-action i{margin-bottom: 0;}


  .gbo-brand {
    grid-column: 1;
  }

  .gbo-brand__text {
    font-size: 23px;
  }

  .gbo-brand__caption {
    display: none;
  }

/*
  .gbo-header-search {
    grid-row: 2;
    grid-column: 1 / -1;
    padding-bottom: 12px;
  }
*/

  .gbo-header-contacts {
    display: none;
  }
/*
  .gbo-header-actions {
    grid-column: 2 / -1;
  }
*/
  .gbo-mobile-phone {
    display: inline-flex;
  }

  .gbo-account,
  .gbo-header-cart {
    flex: 0 0 auto;
  }

  .gbo-header-action,
  .gbo-cart__toggle,
  #cart.gbo-cart > .gbo-cart__toggle,
  #cart.gbo-cart > .btn.gbo-cart__toggle {
    width: 52px;
    min-width: 52px;
    height: 52px;
    min-height: 52px;
  }

  .gbo-header-action span,
  .gbo-cart__content,
  .gbo-cart__arrow {
    display: none;
  }

  .gbo-catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .gbo-category-intro {
    grid-template-columns: 190px minmax(0, 1fr);
  }

  .gbo-category-refine__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .gbo-catalog-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .gbo-catalog-toolbar__left,
  .gbo-catalog-toolbar__controls,
  .gbo-catalog-toolbar .pagination-right {
    width: 100% !important;
    justify-content: space-between;
  }

  .gbo-catalog-control .gbo-select {
    width: min(250px, 27vw);
  }

  .gbo-catalog-control--limit .gbo-select {
    width: 80px;
  }

  .product-layout.product-list .gbo-category-product__body {
    grid-template-columns: minmax(0, 1fr) minmax(210px, 250px);
    column-gap: 20px;
  }

  .gbo-product-main {
    grid-template-columns: 1fr;
  }

  .gbo-product-gallery__stage {
    min-height: 480px;
    aspect-ratio: 4 / 3;
  }

  .gbo-product-trust {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .gbo-reviews-layout {
    grid-template-columns: 1fr;
  }

  .gbo-review-form {
    position: static;
  }
}

@media (max-width: 767px) {
  .gbo-page {
    padding-top: 18px;
    padding-bottom: 54px;
  }



  .gbo-header-main__inner {
    grid-template-columns: minmax(128px, 1fr) auto auto;
    min-height: 64px;
    padding-top: 6px;
  }

  .gbo-brand__text {
    font-size: 20px;
  }

  .gbo-header-actions {
    grid-column: 2 / -1;
    gap: 5px;
  }

  .gbo-mobile-phone,
  .gbo-cart__toggle,
  #cart.gbo-cart > .gbo-cart__toggle,
  #cart.gbo-cart > .btn.gbo-cart__toggle {
    width: 46px;
    min-width: 46px;
    height: 46px;
    min-height: 46px;
    border-radius: 10px;
  }

  .gbo-header-cart,
  #cart.gbo-cart {
    min-width: 46px;
  }

  .gbo-page-hero {
    padding: 27px 22px;
    margin-bottom: 20px;
    border-radius: 18px;
  }

  .gbo-catalog-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .gbo-catalog-card {
    display: grid;
    grid-template-columns: 132px minmax(0, 1fr);
    border-radius: 16px;
  }

  .gbo-catalog-card__media {
    height: 100%;
    min-height: 190px;
    aspect-ratio: auto;
  }

  .gbo-catalog-card__media img {
    padding: 12px;
  }

  .gbo-catalog-card__count {
    right: 8px;
    bottom: 8px;
    padding: 5px 7px;
    font-size: 8px;
  }

  .gbo-catalog-card__body {
    min-height: 190px;
    padding: 17px;
  }

  .gbo-catalog-card__body h2 {
    font-size: 16px;
  }

  .gbo-catalog-card__body > p {
    display: none;
  }

  .gbo-catalog-card__children {
    margin-bottom: 12px;
  }

  .gbo-catalog-card__children li:nth-child(n + 5) {
    display: none;
  }

  .gbo-category-intro {
    grid-template-columns: 1fr;
    padding: 16px;
    gap: 16px;
  }

  .gbo-category-intro__image {
    min-height: 160px;
  }

  .gbo-category-refine__grid {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .gbo-category-refine__card {
    min-height: 70px;
    grid-template-columns: 48px minmax(0, 1fr);
    padding: 8px;
  }

  .gbo-category-refine__image {
    width: 48px;
    height: 48px;
  }

  .gbo-category-refine__card > i {
    display: none;
  }

  .category_filter.gbo-catalog-toolbar,
  .gbo-catalog-toolbar {
    padding: 10px !important;
    border-radius: 14px !important;
  }

  .gbo-catalog-toolbar__left {
    justify-content: space-between;
  }

  .gbo-catalog-toolbar .compare-total a {
    min-height: 44px;
  }

  .gbo-catalog-toolbar__controls,
  .gbo-catalog-toolbar .pagination-right {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 102px;
    align-items: end;
    gap: 8px;
  }

  .gbo-catalog-control,
  .gbo-catalog-toolbar .sort-by-wrapper,
  .gbo-catalog-toolbar .show-wrapper {
    display: block !important;
  }

  .gbo-catalog-control label,
  .gbo-catalog-toolbar .control-label {
    display: block;
    margin: 0 0 5px !important;
  }

  .gbo-catalog-control .gbo-select,
  .gbo-catalog-control--limit .gbo-select {
    width: 100%;
  }

  .gbo-catalog-toolbar select.form-control {
    height: 44px !important;
    min-height: 44px !important;
    line-height: 44px !important;
  }

  .gbo-category-products > .row {
    margin-right: -5px !important;
    margin-left: -5px !important;
  }

  .gbo-category-products .product-layout {
    padding-right: 5px !important;
    padding-bottom: 10px !important;
    padding-left: 5px !important;
  }

  .gbo-category-product {
    border-radius: 14px;
  }

  .gbo-category-product__body {
    padding: 14px;
  }

  .gbo-category-product__image {
    padding: 12px;
  }

  .gbo-category-product__quick-actions {
    top: 8px;
    right: 8px;
  }

  .gbo-category-product__quick-actions > button,
  .gbo-category-product__quick-actions .quickview,
  .gbo-category-product__quick-actions .quickview a {
    width: 34px !important;
    min-width: 34px !important;
    height: 34px !important;
    min-height: 34px !important;
  }

  .gbo-category-product__actions {
    grid-template-columns: 54px minmax(0, 1fr);
  }

  .gbo-category-product__quantity input {
    width: 54px !important;
    min-width: 54px;
  }

  .product-layout.product-list .gbo-category-product {
    grid-template-columns: 150px minmax(0, 1fr);
  }

  .product-layout.product-list .gbo-category-product__media,
  .product-layout.product-list .gbo-category-product__image {
    min-height: 210px;
  }

  .product-layout.product-list .gbo-category-product__body {
    display: flex;
    padding: 16px;
    flex-direction: column;
  }

  .product-layout.product-list .gbo-category-product__description {
    display: -webkit-box;
    margin: 8px 0 12px;
    -webkit-line-clamp: 2;
  }

  .product-layout.product-list .gbo-category-product__price {
    width: 100%;
    padding: 0;
    border: 0;
  }

  .product-layout.product-list .gbo-category-product__actions {
    width: 100%;
    margin-top: auto;
  }

  .product-layout.product-list .gbo-category-product__list-actions {
    display: none;
  }

  .gbo-product-gallery,
  .gbo-product-summary {
    border-radius: 17px;
  }

  .gbo-product-gallery {
    padding: 13px;
  }

  .gbo-product-gallery__stage {
    min-height: 320px;
    border-radius: 13px;
  }

  .gbo-product-gallery__main-link {
    padding: 20px;
  }

  .gbo-product-gallery__zoom span {
    display: none;
  }

  .gbo-product-gallery__thumb {
    width: 64px;
    min-width: 64px;
    height: 64px;
  }

  .gbo-product-summary {
    padding: 20px;
  }

  .gbo-product-summary h1 {
    font-size: 27px;
  }

  .gbo-product-summary__write-link {
    margin-left: 0;
  }

  .gbo-product-buybox {
    grid-template-columns: 110px minmax(0, 1fr);
  }

  .gbo-product-secondary-actions {
    grid-template-columns: 1fr 1fr;
  }

  .gbo-product-secondary-actions button:last-child {
    grid-column: 1 / -1;
  }

  .gbo-product-trust {
    grid-template-columns: 1fr;
  }

  .gbo-product-tabs {
    border-radius: 16px;
  }

  .gbo-product-tabs__nav {
    padding: 0 6px;
  }

  .gbo-product-tabs__nav button {
    min-height: 56px;
    padding: 0 13px;
    font-size: 10px;
  }

  .gbo-product-tabs__nav button::after {
    right: 13px;
    left: 13px;
  }

  .gbo-product-tabs__panels {
    padding: 19px;
  }

  .gbo-specification {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .gbo-review-form {
    padding: 18px;
  }

  .gbo-information-article {
    border-radius: 17px;
  }

  .gbo-information-article__header,
  .gbo-information-article__content {
    padding: 22px;
  }

  .gbo-richtext table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .gbo-modal {
    align-items: end;
    padding: 12px;
  }

  .gbo-modal__dialog {
    width: 100%;
    max-height: calc(100vh - 24px);
    padding: 28px 20px 22px;
    overflow-y: auto;
    border-radius: 20px;
  }

  .gbo-modal__close {
    top: 12px;
    right: 12px;
    width: 38px;
    height: 38px;
  }

  .gbo-modal__icon {
    width: 48px;
    height: 48px;
    margin-bottom: 13px;
  }

  .gbo-modal__dialog h2 {
    margin-right: 44px;
    font-size: 25px;
  }

.top_button{
    bottom: 155px;
}


}

@media (min-width: 520px) and (max-width: 767px) {
  .gbo-category-products .product-layout.product-grid {
    width: 50% !important;
    float: left !important;
  }
}

@media (max-width: 519px) {
  .gbo-category-products .product-layout.product-grid {
    width: 100% !important;
    float: none !important;
  }

  .gbo-catalog-card {
    grid-template-columns: 112px minmax(0, 1fr);
  }

  .gbo-catalog-card__media,
  .gbo-catalog-card__body {
    min-height: 174px;
  }

  .gbo-catalog-card__body {
    padding: 14px;
  }

  .gbo-catalog-card__children li:nth-child(n + 4) {
    display: none;
  }

  .gbo-category-refine__grid {
    grid-template-columns: 1fr;
  }

  .gbo-category-product__image {
    aspect-ratio: 16 / 10;
  }

  .product-layout.product-list .gbo-category-product {
    grid-template-columns: 118px minmax(0, 1fr);
  }

  .product-layout.product-list .gbo-category-product__media,
  .product-layout.product-list .gbo-category-product__image {
    min-height: 190px;
  }

  .product-layout.product-list .gbo-category-product__body {
    padding: 12px;
  }

  .product-layout.product-list .gbo-category-product__body h2 {
    font-size: 13px;
  }

  .product-layout.product-list .gbo-category-product__description,
  .product-layout.product-list .gbo-stars {
    display: none;
  }

  .product-layout.product-list .gbo-category-product__price strong {
    font-size: 18px;
  }

  .product-layout.product-list .gbo-category-product__actions {
    grid-template-columns: 1fr;
  }

  .product-layout.product-list .gbo-category-product__quantity {
    display: none;
  }

  .gbo-product-gallery__stage {
    min-height: 270px;
  }

  .gbo-product-buybox {
    grid-template-columns: 1fr;
  }

  .gbo-product-quantity {
    width: 128px;
  }

  .gbo-product-tabs__nav button {
    padding: 0 11px;
  }

  .gbo-specification__group dl > div {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .gbo-review-stars label {
    font-size: 27px;
  }

  .gbo-brand__text {
    font-size: 18px;
  }

  .gbo-mobile-phone,
  .gbo-cart__toggle,
  #cart.gbo-cart > .gbo-cart__toggle,
  #cart.gbo-cart > .btn.gbo-cart__toggle {
    width: 43px;
    min-width: 43px;
  }
}

@media (hover: none) {
  .gbo-category-product__quick-actions {
    opacity: 1;
  }

  .gbo-content-lightbox::after {
    opacity: 0.85;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .gbo-modal,
  .gbo-modal__dialog,
  .gbo-catalog-card__media img,
  .gbo-category-product__image img,
  .gbo-content-lightbox img {
    transition: none !important;
  }

  .gbo-callback-form.is-submitting .gbo-callback-form__submit i {
    animation: none;
  }
}

/* Search page — same visual language as the catalogue */
.gbo-search-panel {
  padding: 22px;
  margin: 0 0 28px;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 18px;
  box-shadow: var(--gbo-shadow-sm);
}

.gbo-search-panel .gbo-section-heading {
  margin-bottom: 18px;
}

.gbo-search-panel__form {
  display: grid;
  grid-template-columns: minmax(250px, 1.6fr) minmax(220px, 1fr) auto;
  align-items: end;
  gap: 14px;
}

.gbo-search-panel__field {
  min-width: 0;
}

.gbo-search-panel__field > label {
  display: block;
  margin: 0 0 7px;
  color: var(--gbo-muted);
  font-size: 10px;
  font-weight: 800;
}

.gbo-search-panel__field .form-control,
.gbo-search-panel__field .gbo-select select {
  width: 100% !important;
  height: 50px !important;
  min-height: 50px !important;
  padding: 0 15px !important;
  color: var(--gbo-ink) !important;
  background: var(--gbo-bg) !important;
  border: 1px solid var(--gbo-border) !important;
  border-radius: 11px !important;
  box-shadow: none !important;
  font-size: 12px !important;
}

.gbo-search-panel__field .gbo-select select {
  padding-right: 40px !important;
  appearance: none !important;
}

.gbo-search-panel__field .form-control:focus,
.gbo-search-panel__field .gbo-select select:focus {
  background: #fff !important;
  border-color: var(--gbo-blue) !important;
  box-shadow: 0 0 0 3px rgba(31, 95, 174, 0.1) !important;
}

.gbo-search-panel__checks {
  display: flex;
  grid-column: 1 / 3;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 22px;
}

.gbo-search-panel__checks .gbo-checkbox {
  margin: 0;
}

.gbo-search-panel__submit {
  display: inline-flex;
  min-width: 154px;
  max-height: 50px;
  grid-row: 1 / 3;
  grid-column: 3;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  padding: 0 20px;
  gap: 8px;
  margin-top: 23px;
}

.gbo-search-results-heading {
  margin: 0 0 16px;
}

.gbo-search-results-heading h2 {
  margin: 0;
  color: var(--gbo-ink);
  font-size: clamp(20px, 2vw, 27px);
  line-height: 1.2;
}

@media (max-width: 991px) {
  .gbo-search-panel__form {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }

  .gbo-search-panel__checks {
    grid-column: 1 / -1;
  }

  .gbo-search-panel__submit {
    min-height: 48px;
    grid-row: auto;
    grid-column: 1 / -1;
    align-self: auto;
  }
}

@media (max-width: 599px) {
  .gbo-search-panel {
    padding: 17px;
    border-radius: 15px;
  }

  .gbo-search-panel__form {
    grid-template-columns: 1fr;
  }

  .gbo-search-panel__checks,
  .gbo-search-panel__submit {
    grid-column: 1;
  }

  .gbo-search-panel__checks {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* Compact quick view — no duplicated site chrome inside the popup iframe */
body.gbo-quick-view-body {
  min-width: 0;
  padding: 0 !important;
  background: #f4f7fa;
}

body.gbo-quick-view-body > .gbo-notice,
body.gbo-quick-view-body > .gbo-site-header,
body.gbo-quick-view-body > .gbo-footer,
body.gbo-quick-view-body > .gbo-contact-dock,
body.gbo-quick-view-body > .gbo-mobile-bar,
body.gbo-quick-view-body > .gbo-modal,
body.gbo-quick-view-body > .gbo-metrika,
body.product-quick_view > .gbo-notice,
body.product-quick_view > .gbo-site-header,
body.product-quick_view > .gbo-footer,
body.product-quick_view > .gbo-contact-dock,
body.product-quick_view > .gbo-mobile-bar,
body.product-quick_view > .gbo-modal {
  display: none !important;
}

.gbo-quick-view-page {
  min-height: 100vh;
  padding: 22px;
}

.gbo-quick-view {
  display: grid;
  width: min(1080px, 100%);
  min-width: 0;
  grid-template-columns: minmax(310px, 0.92fr) minmax(360px, 1.08fr);
  margin: 0 auto;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 22px;
  box-shadow: 0 24px 70px rgba(18, 43, 75, 0.14);
}

.gbo-quick-view__gallery {
  min-width: 0;
  padding: 20px;
  background: linear-gradient(145deg, #fbfcfd, #eef3f8);
  border-right: 1px solid var(--gbo-border);
}

.gbo-quick-view__main-image {
  position: relative;
  display: flex;
  width: 100%;
  min-height: 390px;
  aspect-ratio: 1 / 0.9;
  align-items: center;
  justify-content: center;
  padding: 28px;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(203, 213, 226, 0.78);
  border-radius: 17px;
}

.gbo-quick-view__main-image img {
  width: 100%;
  height: 100%;
  max-height: 470px;
  object-fit: contain;
}

.gbo-quick-view__main-image > span {
  position: absolute;
  right: 13px;
  bottom: 13px;
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  padding: 0 12px;
  color: var(--gbo-ink);
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid var(--gbo-border);
  border-radius: 10px;
  box-shadow: var(--gbo-shadow-sm);
  gap: 7px;
  font-size: 10px;
  font-weight: 800;
}

.gbo-quick-view__thumbs {
  display: flex;
  margin-top: 12px;
  overflow-x: auto;
  gap: 8px;
  scrollbar-width: thin;
}

.gbo-quick-view__thumbs button {
  display: inline-flex;
  width: 68px;
  min-width: 68px;
  height: 68px;
  align-items: center;
  justify-content: center;
  padding: 5px;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 10px;
  cursor: pointer;
}

.gbo-quick-view__thumbs button.is-active {
  border-color: var(--gbo-blue);
  box-shadow: 0 0 0 3px rgba(31, 95, 174, 0.1);
}

.gbo-quick-view__thumbs img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.gbo-quick-view__summary {
  min-width: 0;
  padding: 28px;
}

.gbo-quick-view__eyebrow {
  display: block;
  margin-bottom: 7px;
  color: var(--gbo-green-dark);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.gbo-quick-view__summary h1 {
  margin: 0 0 11px;
  color: var(--gbo-ink);
  font-size: clamp(22px, 3vw, 30px);
  line-height: 1.2;
}

.gbo-quick-view__rating {
  margin-bottom: 15px;
}

.gbo-quick-view__meta {
  margin: 0 0 18px;
  padding: 12px 0;
  border-top: 1px solid var(--gbo-border);
  border-bottom: 1px solid var(--gbo-border);
}

.gbo-quick-view__meta > div {
  display: grid;
  grid-template-columns: minmax(105px, auto) minmax(0, 1fr);
  padding: 4px 0;
  gap: 10px;
  font-size: 11px;
}

.gbo-quick-view__meta dt {
  color: var(--gbo-muted);
  font-weight: 700;
}

.gbo-quick-view__meta dd {
  margin: 0;
  color: var(--gbo-ink);
  font-weight: 700;
}

.gbo-quick-view__price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  padding: 16px;
  margin-bottom: 18px;
  background: var(--gbo-blue-soft);
  border: 1px solid rgba(31, 95, 174, 0.12);
  border-radius: 14px;
  gap: 5px 10px;
}

.gbo-quick-view__price > span,
.gbo-quick-view__price > small,
.gbo-quick-view__price > ul {
  width: 100%;
}

.gbo-quick-view__price > span {
  color: var(--gbo-muted);
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}

.gbo-quick-view__price strong {
  color: var(--gbo-blue-dark);
  font-size: 28px;
  line-height: 1;
}

.gbo-quick-view__price strong.price-new {
  color: var(--gbo-danger);
}

.gbo-quick-view__price del,
.gbo-quick-view__price small {
  color: var(--gbo-muted);
}

.gbo-quick-view__price ul {
  padding: 7px 0 0;
  margin: 6px 0 0;
  border-top: 1px solid rgba(31, 95, 174, 0.1);
  list-style: none;
  font-size: 10px;
}

.gbo-quick-view__options {
  max-height: 270px;
  padding-right: 6px;
  margin-bottom: 16px;
  overflow-y: auto;
}

.gbo-quick-view__options h2 {
  margin: 0 0 13px;
  font-size: 17px;
}

.gbo-quick-view__buybox {
  display: grid;
  grid-template-columns: 118px minmax(0, 1fr);
  align-items: end;
  gap: 10px;
}

.gbo-quick-view__buybox > label {
  grid-column: 1;
  margin: 0 0 5px;
  color: var(--gbo-muted);
  font-size: 9px;
  font-weight: 800;
}

.gbo-quick-view__buybox .gbo-quantity {
  grid-column: 1;
}

.gbo-quick-view__cart {
  display: inline-flex;
  min-width: 0;
  min-height: 50px;
  grid-row: 1 / 3;
  grid-column: 2;
  align-items: center;
  justify-content: center;
  align-self: end;
  padding: 0 18px;
  color: #fff;
  background: linear-gradient(135deg, var(--gbo-blue), #2a76c9);
  border: 0;
  border-radius: 11px;
  box-shadow: 0 10px 24px rgba(31, 95, 174, 0.22);
  gap: 8px;
  font-weight: 800;
}

.gbo-quick-view__cart:hover,
.gbo-quick-view__cart:focus {
  background: linear-gradient(135deg, var(--gbo-blue-dark), var(--gbo-blue));
}

.gbo-quick-view__cart.is-loading {
  opacity: 0.75;
}

.gbo-quick-view__status {
  min-height: 18px;
  margin-top: 8px;
  font-size: 10px;
  font-weight: 700;
}

.gbo-quick-view__status.is-success { color: var(--gbo-green-dark); }
.gbo-quick-view__status.is-error { color: var(--gbo-danger); }

.gbo-quick-view__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-top: 12px;
  gap: 8px;
}

.gbo-quick-view__actions button {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  color: var(--gbo-ink);
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 10px;
  gap: 7px;
  font-size: 10px;
  font-weight: 800;
}

.gbo-quick-view__actions button:hover {
  color: var(--gbo-blue);
  background: var(--gbo-blue-soft);
  border-color: rgba(31, 95, 174, 0.2);
}

.gbo-quick-view__full-link {
  display: inline-flex;
  align-items: center;
  margin-top: 14px;
  color: var(--gbo-blue);
  gap: 7px;
  font-size: 11px;
  font-weight: 800;
}

.mfp-iframe-holder .mfp-content {
  width: min(1160px, calc(100% - 30px));
  max-width: 1160px;
  height: min(820px, calc(100vh - 50px));
}

.mfp-iframe-holder .mfp-iframe-scaler {
  height: 100%;
  padding-top: 0;
}

@media (max-width: 760px) {
  .gbo-quick-view-page { padding: 10px; }
  .gbo-quick-view { grid-template-columns: 1fr; border-radius: 16px; }
  .gbo-quick-view__gallery { padding: 12px; border-right: 0; border-bottom: 1px solid var(--gbo-border); }
  .gbo-quick-view__main-image { min-height: 280px; aspect-ratio: 4 / 3; }
  .gbo-quick-view__summary { padding: 18px; }
  .gbo-quick-view__options { max-height: none; }
}

@media (max-width: 420px) {
  .gbo-quick-view__main-image { min-height: 230px; padding: 18px; }
  .gbo-quick-view__main-image > span { width: 38px; padding: 0; justify-content: center; }
  .gbo-quick-view__main-image > span { font-size: 0; }
  .gbo-quick-view__main-image > span i { font-size: 13px; }
  .gbo-quick-view__buybox { grid-template-columns: 1fr; }
  .gbo-quick-view__buybox > label,
  .gbo-quick-view__buybox .gbo-quantity,
  .gbo-quick-view__cart { grid-row: auto; grid-column: 1; }
  .gbo-quick-view__actions { grid-template-columns: 1fr; }
}

/* Compare and manufacturer directory */
.gbo-compare {
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 20px;
  box-shadow: var(--gbo-shadow-sm);
}

.gbo-compare__hint {
  display: none;
  align-items: center;
  padding: 12px 16px;
  color: var(--gbo-muted);
  background: var(--gbo-blue-soft);
  border-bottom: 1px solid var(--gbo-border);
  gap: 8px;
  font-size: 11px;
  font-weight: 700;
}

.gbo-compare__scroll {
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-width: thin;
}

.gbo-compare__scroll:focus-visible {
  outline: 3px solid rgba(31, 95, 174, 0.25);
  outline-offset: -3px;
}

.gbo-compare__table {
  width: 100%;
  min-width: 760px;
  margin: 0;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
}

.gbo-compare__table th,
.gbo-compare__table td {
  min-width: 210px;
  padding: 17px 18px;
  color: var(--gbo-ink);
  background: #fff;
  border-right: 1px solid var(--gbo-border);
  border-bottom: 1px solid var(--gbo-border);
  font-size: 12px;
  line-height: 1.55;
  text-align: left;
  vertical-align: top;
}

.gbo-compare__table tr:last-child > * { border-bottom: 0; }
.gbo-compare__table tr > *:last-child { border-right: 0; }

.gbo-compare__table .gbo-compare__label {
  position: sticky;
  left: 0;
  z-index: 2;
  width: 180px;
  min-width: 180px;
  color: var(--gbo-muted);
  background: #f8fafc;
  box-shadow: 8px 0 14px rgba(19, 48, 78, 0.035);
  font-weight: 800;
}

.gbo-compare__table thead .gbo-compare__label {
  z-index: 3;
  color: #fff;
  background: var(--gbo-blue-deep);
}

.gbo-compare__product-heading {
  color: #fff !important;
  background: linear-gradient(135deg, var(--gbo-blue-deep), var(--gbo-blue)) !important;
  font-size: 14px !important;
}

.gbo-compare__product-heading a { color: #fff; }
.gbo-compare__product-heading a:hover { color: #c9efa4; }

.gbo-compare__image-cell { text-align: center !important; }

.gbo-compare__image {
  display: inline-flex;
  width: 150px;
  max-width: 100%;
  height: 132px;
  align-items: center;
  justify-content: center;
  padding: 12px;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 14px;
}

.gbo-compare__image img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.gbo-compare__price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 5px 9px;
}

.gbo-compare__price strong {
  color: var(--gbo-blue-dark);
  font-size: 20px;
  font-weight: 800;
}

.gbo-compare__price del { color: var(--gbo-muted); }

.gbo-compare__availability {
  display: inline-flex;
  padding: 6px 9px;
  color: var(--gbo-green-dark);
  background: rgba(112, 182, 44, 0.1);
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
}

.gbo-compare__reviews {
  display: block;
  margin-top: 7px;
  color: var(--gbo-muted);
}

.gbo-compare__description { color: var(--gbo-muted) !important; }

.gbo-compare__section-row th {
  position: static !important;
  color: var(--gbo-blue-dark) !important;
  background: var(--gbo-blue-soft) !important;
  box-shadow: none !important;
  font-size: 14px !important;
}

.gbo-compare__actions {
  display: grid;
  gap: 8px;
}

.gbo-compare__actions .btn {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  gap: 7px;
  white-space: normal;
}

.gbo-manufacturer-index {
  display: flex;
  align-items: center;
  padding: 18px 20px;
  margin-bottom: 24px;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 16px;
  box-shadow: var(--gbo-shadow-sm);
  gap: 18px;
}

.gbo-manufacturer-index > strong {
  flex: 0 0 auto;
  color: var(--gbo-ink);
  font-size: 12px;
}

.gbo-manufacturer-index__letters {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: 7px;
}

.gbo-manufacturer-index__letters a {
  display: inline-flex;
  min-width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  padding: 0 11px;
  color: var(--gbo-blue-dark);
  background: var(--gbo-blue-soft);
  border: 1px solid transparent;
  border-radius: 9px;
  font-size: 12px;
  font-weight: 800;
}

.gbo-manufacturer-index__letters a:hover,
.gbo-manufacturer-index__letters a:focus {
  color: #fff;
  background: var(--gbo-blue);
}

.gbo-manufacturer-groups {
  display: grid;
  gap: 20px;
}

.gbo-manufacturer-group {
  scroll-margin-top: 145px;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 18px;
  box-shadow: var(--gbo-shadow-sm);
}

.gbo-manufacturer-group__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px 18px;
  color: #fff;
  background: linear-gradient(135deg, var(--gbo-blue-deep), var(--gbo-blue));
  font-size: 20px;
  font-weight: 800;
}

.gbo-manufacturer-group__heading a {
  display: inline-flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: rgba(255, 255, 255, 0.12);
  border-radius: 9px;
}

.gbo-manufacturer-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 18px;
  gap: 10px;
}

.gbo-manufacturer-card {
  display: grid;
  min-width: 0;
  min-height: 60px;
  grid-template-columns: 38px minmax(0, 1fr) 18px;
  align-items: center;
  padding: 10px 12px;
  color: var(--gbo-ink);
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 12px;
  gap: 10px;
  font-size: 12px;
  font-weight: 750;
  transition: transform var(--gbo-transition), border-color var(--gbo-transition), box-shadow var(--gbo-transition);
}

.gbo-manufacturer-card:hover,
.gbo-manufacturer-card:focus {
  color: var(--gbo-blue-dark);
  border-color: rgba(31, 95, 174, 0.28);
  box-shadow: 0 10px 22px rgba(19, 48, 78, 0.08);
  transform: translateY(-2px);
}

.gbo-manufacturer-card__mark {
  display: inline-flex;
  width: 38px;
  height: 38px;
  align-items: center;
  justify-content: center;
  color: var(--gbo-blue-dark);
  background: var(--gbo-blue-soft);
  border-radius: 10px;
  font-weight: 900;
}

.gbo-manufacturer-card > span:nth-child(2) {
  overflow: hidden;
  text-overflow: ellipsis;
}

.gbo-manufacturer-card > i { color: var(--gbo-green-dark); }

@media (max-width: 991px) {
  .gbo-manufacturer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
  .gbo-compare__hint { display: flex; }
  .gbo-compare__table .gbo-compare__label { width: 138px; min-width: 138px; }
  .gbo-compare__table th,
  .gbo-compare__table td { min-width: 190px; padding: 14px; }
  .gbo-manufacturer-index { display: block; padding: 15px; }
  .gbo-manufacturer-index > strong { display: block; margin-bottom: 11px; }
  .gbo-manufacturer-index__letters { flex-wrap: nowrap; padding-bottom: 4px; overflow-x: auto; }
  .gbo-manufacturer-index__letters a { flex: 0 0 auto; }
  .gbo-manufacturer-grid { grid-template-columns: 1fr; padding: 13px; }
}

/* Contact, reviews and sitemap pages */
.gbo-contact-layout {
  display: grid;
  grid-template-columns: minmax(300px, 0.82fr) minmax(0, 1.18fr);
  align-items: start;
  margin-bottom: 34px;
  gap: 22px;
}

.gbo-contact-card,
.gbo-contact-form-card,
.gbo-contact-locations,
.gbo-reviews-toolbar,
.gbo-all-review,
.gbo-sitemap-card {
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 20px;
  box-shadow: var(--gbo-shadow-sm);
}

.gbo-contact-card,
.gbo-contact-form-card {
  padding: 24px;
}

.gbo-contact-card__heading {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
  gap: 13px;
}

.gbo-contact-card__heading > div > span {
  display: block;
  margin-bottom: 2px;
  color: var(--gbo-green-dark);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.gbo-contact-card__heading h2 {
  margin: 0;
  color: var(--gbo-ink);
  font-size: 21px;
}

.gbo-contact-card__icon {
  display: inline-flex;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: linear-gradient(135deg, var(--gbo-blue), var(--gbo-blue-dark));
  border-radius: 13px;
  box-shadow: 0 10px 24px rgba(31, 95, 174, 0.2);
  font-size: 18px;
}

.gbo-contact-card__image {
  height: 190px;
  margin-bottom: 18px;
  overflow: hidden;
  background: var(--gbo-blue-soft);
  border-radius: 14px;
}

.gbo-contact-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gbo-contact-details {
  display: grid;
  margin: 0;
  gap: 0;
}

.gbo-contact-details > div {
  display: grid;
  grid-template-columns: 108px minmax(0, 1fr);
  padding: 11px 0;
  border-bottom: 1px solid var(--gbo-border);
  gap: 12px;
}

.gbo-contact-details > div:last-child { border-bottom: 0; }

.gbo-contact-details dt {
  color: var(--gbo-muted);
  font-size: 10px;
  font-weight: 800;
}

.gbo-contact-details dt i {
  width: 17px;
  color: var(--gbo-blue);
}

.gbo-contact-details dd,
.gbo-contact-details address {
  margin: 0;
  color: var(--gbo-ink);
  font-size: 11px;
  font-style: normal;
  line-height: 1.55;
}

.gbo-contact-details dd a { color: var(--gbo-blue-dark); font-weight: 800; }

.gbo-contact-map-button {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
  margin-top: 17px;
  color: #fff;
  background: var(--gbo-blue);
  border-radius: 11px;
  gap: 8px;
  font-size: 11px;
  font-weight: 800;
}

.gbo-contact-map-button:hover,
.gbo-contact-map-button:focus { color: #fff; background: var(--gbo-blue-dark); }

.gbo-contact-form__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.gbo-contact-form .form-group { margin: 0; }

.gbo-contact-form label {
  display: block;
  margin-bottom: 7px;
  color: var(--gbo-ink);
  font-size: 10px;
  font-weight: 800;
}

.gbo-contact-form .form-control {
  width: 100%;
  height: 49px;
  padding: 0 14px;
  color: var(--gbo-ink);
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 11px;
  box-shadow: none;
  font-size: 12px;
}

.gbo-contact-form .form-control:focus {
  border-color: var(--gbo-blue);
  box-shadow: 0 0 0 3px rgba(31, 95, 174, 0.1);
}

.gbo-contact-form .has-error .form-control { border-color: var(--gbo-danger); }
.gbo-contact-form .text-danger { margin-top: 5px; font-size: 10px; }
.gbo-contact-form > .form-group,
.gbo-contact-form > .captcha { margin-top: 14px; }

.gbo-contact-form__submit {
  display: inline-flex;
  min-width: 210px;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 0 20px;
  margin-top: 18px;
  color: #fff;
  background: linear-gradient(135deg, var(--gbo-green), var(--gbo-green-dark));
  border: 0;
  border-radius: 11px;
  box-shadow: 0 12px 25px rgba(112, 182, 44, 0.22);
  gap: 9px;
  font-size: 11px;
  font-weight: 800;
}

.gbo-contact-form__submit:hover,
.gbo-contact-form__submit:focus { filter: brightness(0.96); transform: translateY(-1px); }

.gbo-contact-locations {
  padding: 24px;
  margin-bottom: 28px;
}

.gbo-contact-accordion { margin: 0; }
.gbo-contact-accordion .panel { overflow: hidden; margin: 0 0 10px; border: 1px solid var(--gbo-border); border-radius: 12px; box-shadow: none; }
.gbo-contact-accordion .panel:last-child { margin-bottom: 0; }
.gbo-contact-accordion .panel-heading { padding: 0; background: #fff; border: 0; }
.gbo-contact-accordion .panel-title { font-size: 12px; }
.gbo-contact-accordion .panel-title a { display: flex; min-height: 50px; align-items: center; justify-content: space-between; padding: 0 15px; color: var(--gbo-ink); font-weight: 800; }
.gbo-contact-accordion .panel-title a[aria-expanded="true"] { color: var(--gbo-blue); background: var(--gbo-blue-soft); }
.gbo-contact-accordion .panel-title i { transition: transform var(--gbo-transition); }
.gbo-contact-accordion .panel-title a[aria-expanded="true"] i { transform: rotate(180deg); }
.gbo-contact-accordion .panel-body { padding: 16px; border-top: 1px solid var(--gbo-border) !important; }

.gbo-contact-location-row {
  display: grid;
  grid-template-columns: 130px repeat(3, minmax(0, 1fr));
  align-items: start;
  gap: 16px;
  color: var(--gbo-muted);
  font-size: 11px;
  line-height: 1.55;
}

.gbo-contact-location-row__image { height: 100px; overflow: hidden; border-radius: 10px; }
.gbo-contact-location-row__image img { width: 100%; height: 100%; object-fit: cover; }
.gbo-contact-location-row strong { display: block; margin-bottom: 5px; color: var(--gbo-ink); }
.gbo-contact-location-row address,
.gbo-contact-location-row p { margin: 0 0 8px; font-style: normal; }

.gbo-reviews-toolbar {
  display: flex;
  align-items: center;
  padding: 13px 15px;
  margin-bottom: 18px;
  gap: 10px;
}

.gbo-reviews-toolbar > span:first-child {
  display: inline-flex;
  align-items: center;
  margin-right: auto;
  color: var(--gbo-muted);
  gap: 7px;
  font-size: 10px;
  font-weight: 700;
}

.gbo-reviews-toolbar > span:first-child i { color: var(--gbo-green-dark); }
.gbo-reviews-toolbar > label { margin: 0; color: var(--gbo-muted); font-size: 10px; font-weight: 800; }
.gbo-reviews-toolbar .gbo-select { width: min(250px, 35vw); }

.gbo-all-reviews { display: grid; gap: 14px; }

.gbo-all-review {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  overflow: hidden;
  transition: border-color var(--gbo-transition), box-shadow var(--gbo-transition);
}

.gbo-all-review:hover { border-color: rgba(31, 95, 174, 0.22); box-shadow: var(--gbo-shadow); }

.gbo-all-review__image {
  display: flex;
  min-height: 180px;
  align-items: center;
  justify-content: center;
  padding: 14px;
  background: #f7f9fc;
  border-right: 1px solid var(--gbo-border);
}

.gbo-all-review__image img { max-width: 100%; max-height: 150px; object-fit: contain; }
.gbo-all-review__content { min-width: 0; padding: 20px; }

.gbo-all-review__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 11px;
  gap: 14px;
}

.gbo-all-review__head h2 { margin: 0; font-size: 16px; line-height: 1.4; }
.gbo-all-review__head h2 a { color: var(--gbo-ink); }
.gbo-all-review__head h2 a:hover { color: var(--gbo-blue); }
.gbo-all-review__text { color: var(--gbo-muted); font-size: 12px; line-height: 1.7; }

.gbo-all-review__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding-top: 13px;
  margin-top: 14px;
  color: var(--gbo-muted);
  border-top: 1px solid var(--gbo-border);
  gap: 6px 10px;
  font-size: 10px;
}

.gbo-all-review__meta > i { color: var(--gbo-green-dark); }
.gbo-all-review__meta strong { color: var(--gbo-ink); }
.gbo-all-review__meta a { display: inline-flex; align-items: center; margin-left: auto; color: var(--gbo-blue); gap: 6px; font-weight: 800; }

.gbo-sitemap-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);
  align-items: start;
  gap: 20px;
}

.gbo-sitemap-stack { display: grid; gap: 20px; }
.gbo-sitemap-card { overflow: hidden; }

.gbo-sitemap-card__heading {
  display: flex;
  align-items: center;
  padding: 17px 19px;
  color: #fff;
  background: linear-gradient(135deg, var(--gbo-blue-deep), var(--gbo-blue));
  gap: 10px;
}

.gbo-sitemap-card__heading h2 { margin: 0; color: #fff; font-size: 18px; }
.gbo-sitemap-card__heading > i { color: #b8df8e; font-size: 17px; }

.gbo-sitemap-tree,
.gbo-sitemap-tree ul,
.gbo-sitemap-links { padding: 0; margin: 0; list-style: none; }

.gbo-sitemap-tree,
.gbo-sitemap-links { padding: 18px 20px; }
.gbo-sitemap-tree > li { padding: 10px 0; border-bottom: 1px solid var(--gbo-border); }
.gbo-sitemap-tree > li:last-child { border-bottom: 0; }
.gbo-sitemap-tree a,
.gbo-sitemap-links a { color: var(--gbo-ink); font-size: 11px; font-weight: 750; }
.gbo-sitemap-tree a:hover,
.gbo-sitemap-links a:hover { color: var(--gbo-blue); }
.gbo-sitemap-tree ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 8px 0 0 15px; gap: 5px 12px; }
.gbo-sitemap-tree ul ul { display: block; padding-left: 12px; }
.gbo-sitemap-tree ul ul li { margin-top: 4px; }
.gbo-sitemap-tree ul a { color: var(--gbo-muted); font-weight: 650; }
.gbo-sitemap-links { display: grid; gap: 0; }
.gbo-sitemap-links li { border-bottom: 1px solid var(--gbo-border); }
.gbo-sitemap-links li:last-child { border-bottom: 0; }
.gbo-sitemap-links a { display: flex; min-height: 40px; align-items: center; }

@media (max-width: 991px) {
  .gbo-contact-layout { grid-template-columns: 1fr; }
  .gbo-contact-location-row { grid-template-columns: 120px repeat(2, minmax(0, 1fr)); }
  .gbo-contact-location-row > div:last-child { grid-column: 2 / -1; }
  .gbo-sitemap-grid { grid-template-columns: 1fr; }
  .gbo-search-panel__submit{margin-top: 0;}
}

@media (max-width: 767px) {
  .gbo-contact-card,
  .gbo-contact-form-card,
  .gbo-contact-locations { padding: 18px; border-radius: 16px; }
  .gbo-contact-form__grid { grid-template-columns: 1fr; }
  .gbo-contact-form__submit { width: 100%; }
  .gbo-contact-location-row { grid-template-columns: 1fr; }
  .gbo-contact-location-row > div:last-child { grid-column: auto; }
  .gbo-contact-location-row__image { height: 160px; }
  .gbo-reviews-toolbar { align-items: stretch; flex-wrap: wrap; }
  .gbo-reviews-toolbar > span:first-child { width: 100%; }
  .gbo-reviews-toolbar .gbo-select { width: 100%; }
  .gbo-all-review { grid-template-columns: 105px minmax(0, 1fr); }
  .gbo-all-review__image { min-height: 150px; padding: 9px; }
  .gbo-all-review__content { padding: 15px; }
  .gbo-all-review__head { display: block; }
  .gbo-all-review__head .gbo-stars { margin-top: 7px; }
  .gbo-all-review__meta a { width: 100%; margin: 4px 0 0; }
  .gbo-sitemap-tree ul { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
  .gbo-contact-details > div { grid-template-columns: 1fr; gap: 4px; }
  .gbo-all-review { grid-template-columns: 1fr; }
  .gbo-all-review__image { min-height: 170px; border-right: 0; border-bottom: 1px solid var(--gbo-border); }
}

@media (max-width: 1199px) {
.gbo-header-contacts{display:block}
}

@media (max-width: 991px) {
.gbo-hero-slider img{
    min-height: auto;
}


}

#cart > .gbo-cart__toggle .gbo-cart__icon .fa-shopping-cart::before {
    display: inline-block !important;
    content: "\f07a";
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
}

.gbo-cart__icon .fa{
    font-size: 25px;
}

/* ==========================================================================
   COMPACT HEADER SEARCH — <= 991px
   Search becomes a compact icon and smoothly opens below the first header row.
   ========================================================================== */

.gbo-header-search-toggle {
  display: none;
}

.gbo-header-search-toggle__close {
  display: none;
}

@media (max-width: 991px) {
  .gbo-header-main {
    position: relative;
  }

  .gbo-header-main__inner {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    align-items: center;
    min-height: 64px;
    padding-top: 7px;
    padding-bottom: 7px;
    gap: 0 10px;
  }

  .gbo-brand {
    min-width: 0;
    grid-row: 1;
    grid-column: 1;
  }

  .gbo-brand__link {
    max-width: 100%;
  }

  .gbo-brand__text {
    display: block;
    max-width: 100%;
    overflow: hidden;
    font-size: 22px;
    text-overflow: ellipsis;
    padding-right: 5px;
  }

  .gbo-brand__caption,
  .gbo-header-contacts {
    display: none !important;
  }

  .gbo-header-actions {
    display: flex;
    min-width: 0;
    grid-row: 1;
    grid-column: 2;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
  }

  .gbo-header-search-toggle,
  .gbo-mobile-phone,
  .gbo-header-action,
  #cart.gbo-cart > .gbo-cart__toggle,
  #cart.gbo-cart > .btn.gbo-cart__toggle {
    display: inline-flex;
    width: 46px;
    min-width: 46px;
    height: 46px;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
    color: var(--gbo-blue);
    background: var(--gbo-bg);
    border: 1px solid var(--gbo-border);
    border-radius: 11px;
    box-shadow: none;
    font-size: 19px;
    line-height: 1;
    cursor: pointer;
    transition:
      color 180ms ease,
      background-color 180ms ease,
      border-color 180ms ease,
      box-shadow 180ms ease,
      transform 180ms ease;
  }

  .gbo-header-search-toggle:hover,
  .gbo-header-search-toggle:focus,
  .gbo-mobile-phone:hover,
  .gbo-mobile-phone:focus,
  .gbo-header-action:hover,
  .gbo-header-action:focus,
  .gbo-header-action[aria-expanded="true"],
  #cart.gbo-cart.open > .gbo-cart__toggle,
  #cart.gbo-cart > .gbo-cart__toggle:hover,
  #cart.gbo-cart > .gbo-cart__toggle:focus {
    color: #fff;
    background: var(--gbo-blue);
    border-color: var(--gbo-blue);
    box-shadow: 0 8px 20px rgba(31, 95, 174, 0.2);
    transform: none;
  }

  .gbo-header-search-toggle i,
  .gbo-mobile-phone i,
  .gbo-header-action i,
  #cart.gbo-cart .gbo-cart__icon,
  #cart.gbo-cart .gbo-cart__icon i {
    margin: 0;
    color: currentColor;
    font-size: 19px;
    line-height: 1;
  }

  #cart.gbo-cart .gbo-cart__icon {
    width: auto;
    height: auto;
    flex: 0 0 auto;
  }

  .gbo-header-action span,
  .gbo-cart__content,
  .gbo-cart__arrow {
    display: none !important;
  }

  .gbo-header-cart,
  #cart.gbo-cart {
    min-width: 46px;
  }

  html.gbo-compact-search-ready .gbo-header-search {
    position: relative;
    width: 100%;
    max-height: 0;
    min-width: 0;
    grid-row: 2;
    grid-column: 1 / -1;
    padding: 0;
    margin: 0;
    overflow: hidden;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-10px);
    transition:
      max-height 320ms cubic-bezier(0.22, 1, 0.36, 1),
      padding 320ms cubic-bezier(0.22, 1, 0.36, 1),
      opacity 180ms ease,
      transform 320ms cubic-bezier(0.22, 1, 0.36, 1),
      visibility 0s linear 320ms;
  }

  html.gbo-compact-search-ready .gbo-site-header.is-search-open .gbo-header-search {
    max-height: 82px;
    padding-top: 8px;
    padding-bottom: 3px;
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    transition-delay: 0s;
  }

  html.gbo-compact-search-ready .gbo-site-header.is-search-open .gbo-header-search-toggle {
    color: #fff;
    background: var(--gbo-blue);
    border-color: var(--gbo-blue);
    box-shadow: 0 8px 20px rgba(31, 95, 174, 0.2);
  }

  html.gbo-compact-search-ready .gbo-site-header.is-search-open .gbo-header-search-toggle__open {
    display: none;
  }

  html.gbo-compact-search-ready .gbo-site-header.is-search-open .gbo-header-search-toggle__close {
    display: inline-block;
  }

  .gbo-header-search > *,
  .gbo-header-search #search.gbo-search {
    width: 100%;
  }

  .gbo-header-search #search.gbo-search {
    min-height: 48px;
    padding: 3px;
    background: #fff;
    border-color: var(--gbo-border-strong);
    box-shadow: 0 8px 24px rgba(18, 43, 75, 0.08);
  }

  .gbo-header-search #search.gbo-search .form-control,
  .gbo-header-search #search.gbo-search .input-lg {
    height: 42px;
    min-height: 42px;
    font-size: 13px;
  }

  .gbo-header-search #search.gbo-search .btn,
  .gbo-header-search #search.gbo-search .btn-lg {
    height: 42px;
    min-height: 42px;
  }

  .gbo-account__menu {
    top: calc(100% + 9px);
  }

  #cart.gbo-cart .gbo-cart__menu,
  #cart.gbo-cart .dropdown-menu.gbo-cart__menu {
    top: calc(100% + 9px);
  }
}

@media (max-width: 767px) {
  .gbo-header-main__inner {
    min-height: 60px;
    padding-top: 6px;
    padding-bottom: 6px;
    gap: 0 6px;
  }

  .gbo-brand__text {
    font-size: 19px;
  }

  .gbo-header-actions {
    gap: 5px;
  }

  .gbo-header-search-toggle,
  .gbo-mobile-phone,
  .gbo-header-action,
  #cart.gbo-cart > .gbo-cart__toggle,
  #cart.gbo-cart > .btn.gbo-cart__toggle {
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    border-radius: 10px;
  }

  .gbo-header-cart,
  #cart.gbo-cart {
    min-width: 44px;
  }

  html.gbo-compact-search-ready .gbo-site-header.is-search-open .gbo-header-search {
    max-height: 78px;
    padding-top: 7px;
  }
}

@media (max-width: 479px) {
  .gbo-header-main__inner {
    gap: 0 4px;
  }

  .gbo-brand__text {
    font-size: 18px;
  }

  .gbo-header-search-toggle,
  .gbo-mobile-phone,
  #cart.gbo-cart > .gbo-cart__toggle,
  #cart.gbo-cart > .btn.gbo-cart__toggle {
    width: 42px;
    min-width: 42px;
    height: 42px;
    min-height: 42px;
  }

  .gbo-header-cart,
  #cart.gbo-cart {
    min-width: 42px;
  }

  .gbo-header-search #search.gbo-search .gbo-search__label {
    display: none;
  }

  .gbo-header-search #search.gbo-search .btn,
  .gbo-header-search #search.gbo-search .btn-lg {
    width: 44px;
    min-width: 44px;
    padding: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  html.gbo-compact-search-ready .gbo-header-search {
    transition: none !important;
  }
}

/* ==========================================================================
   COMPACT SEARCH VISIBILITY HOTFIX
   Keeps the search trigger visible at 991px and below even if legacy
   Redbox styles contain stronger button/display declarations.
   ========================================================================== */
@media screen and (max-width: 991.98px) {
  .gbo-site-header .gbo-header-actions > button.gbo-header-search-toggle {
    position: relative !important;
    z-index: 3 !important;
    display: inline-flex !important;
    visibility: visible !important;
    width: 46px !important;
    min-width: 46px !important;
    height: 46px !important;
    min-height: 46px !important;
    flex: 0 0 46px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
    opacity: 1 !important;
    color: var(--gbo-blue) !important;
    background: var(--gbo-bg) !important;
    border: 1px solid var(--gbo-border) !important;
    border-radius: 11px !important;
    box-shadow: none !important;
    font-size: 19px !important;
    line-height: 1 !important;
  }

  .gbo-site-header .gbo-header-actions > button.gbo-header-search-toggle:hover,
  .gbo-site-header .gbo-header-actions > button.gbo-header-search-toggle:focus,
  .gbo-site-header.is-search-open .gbo-header-actions > button.gbo-header-search-toggle {
    color: #fff !important;
    background: var(--gbo-blue) !important;
    border-color: var(--gbo-blue) !important;
  }

  .gbo-site-header .gbo-header-search-toggle > i {
    display: inline-block;
    margin: 0 !important;
    color: currentColor !important;
    font-size: 19px !important;
    line-height: 1 !important;
  }

  .gbo-site-header:not(.is-search-open) .gbo-header-search-toggle__open {
    display: inline-block !important;
  }

  .gbo-site-header:not(.is-search-open) .gbo-header-search-toggle__close {
    display: none !important;
  }

  .gbo-site-header.is-search-open .gbo-header-search-toggle__open {
    display: none !important;
  }

  .gbo-site-header.is-search-open .gbo-header-search-toggle__close {
    display: inline-block !important;
  }
}

@media screen and (max-width: 767.98px) {
  .gbo-site-header .gbo-header-actions > button.gbo-header-search-toggle {
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    flex-basis: 44px !important;
  }
}

@media screen and (max-width: 479.98px) {
  .gbo-site-header .gbo-header-actions > button.gbo-header-search-toggle {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;
    flex-basis: 42px !important;
  }
}

@media screen and (min-width: 992px) {
  .gbo-site-header .gbo-header-actions > button.gbo-header-search-toggle {
    display: none !important;
  }
}




/* ==========================================================================
   LOGAZ AUTO — COOKIE CONSENT
   Append to catalog/view/theme/redbox/stylesheet/modern.css
   ========================================================================== */

.gbo-cookie-consent[hidden],
.gbo-cookie-consent__settings[hidden],
.gbo-cookie-launcher[hidden] {
  display: none !important;
}

.gbo-cookie-consent {
  position: fixed;
  right: 22px;
  bottom: 22px;
  left: 22px;
  z-index: 65000;
  display: flex;
  justify-content: center;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transform: translateY(18px);
  transition:
    opacity 220ms ease,
    visibility 220ms ease,
    transform 260ms cubic-bezier(.22, 1, .36, 1);
}

.gbo-cookie-consent.is-visible {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.gbo-cookie-consent__card {
  width: min(1180px, 100%);
  overflow: hidden;
  color: var(--gbo-text);
  background:
    radial-gradient(circle at 0 0, rgba(31, 95, 174, .08), transparent 32%),
    #fff;
  border: 1px solid rgba(203, 213, 226, .95);
  border-radius: 20px;
  box-shadow: 0 24px 70px rgba(8, 30, 56, .22);
}

.gbo-cookie-consent__main {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) auto;
  align-items: center;
  padding: 22px 24px;
  gap: 18px;
}

.gbo-cookie-consent__icon {
  display: inline-flex;
  width: 58px;
  height: 58px;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: linear-gradient(135deg, var(--gbo-blue), var(--gbo-blue-dark));
  border-radius: 16px;
  box-shadow: 0 12px 26px rgba(31, 95, 174, .22);
  font-size: 23px;
}

.gbo-cookie-consent__content {
  min-width: 0;
}

.gbo-cookie-consent__eyebrow {
  display: block;
  margin-bottom: 4px;
  color: var(--gbo-green-dark);
  font-size: 9px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.gbo-cookie-consent h2 {
  margin: 0 0 6px;
  color: var(--gbo-ink);
  font-size: 20px;
  line-height: 1.25;
}

.gbo-cookie-consent p {
  max-width: 720px;
  margin: 0;
  color: var(--gbo-muted);
  font-size: 11px;
  line-height: 1.6;
}

.gbo-cookie-consent p a {
  color: var(--gbo-blue);
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.gbo-cookie-consent__actions,
.gbo-cookie-consent__settings-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.gbo-cookie-consent__button {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 0 15px;
  border: 1px solid transparent;
  border-radius: 11px;
  gap: 8px;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.2;
  white-space: nowrap;
  cursor: pointer;
  transition:
    color 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease;
}

.gbo-cookie-consent__button:hover,
.gbo-cookie-consent__button:focus {
  transform: translateY(-1px);
}

.gbo-cookie-consent__button--primary {
  color: #fff;
  background: linear-gradient(135deg, var(--gbo-green), var(--gbo-green-dark));
  border-color: var(--gbo-green);
  box-shadow: 0 9px 22px rgba(85, 149, 29, .2);
}

.gbo-cookie-consent__button--primary:hover,
.gbo-cookie-consent__button--primary:focus {
  color: #fff;
  background: var(--gbo-green-dark);
}

.gbo-cookie-consent__button--secondary,
.gbo-cookie-consent__button--settings {
  color: var(--gbo-ink);
  background: #fff;
  border-color: var(--gbo-border);
}

.gbo-cookie-consent__button--secondary:hover,
.gbo-cookie-consent__button--secondary:focus,
.gbo-cookie-consent__button--settings:hover,
.gbo-cookie-consent__button--settings:focus {
  color: var(--gbo-blue);
  background: var(--gbo-blue-soft);
  border-color: rgba(31, 95, 174, .25);
}

.gbo-cookie-consent__settings {
  padding: 24px;
}

.gbo-cookie-consent__settings-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding-bottom: 17px;
  border-bottom: 1px solid var(--gbo-border);
  gap: 20px;
}

.gbo-cookie-consent__settings-head h2 {
  margin-bottom: 0;
}

.gbo-cookie-consent__back {
  display: inline-flex;
  width: 40px;
  min-width: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  padding: 0;
  color: var(--gbo-muted);
  background: var(--gbo-bg);
  border: 1px solid var(--gbo-border);
  border-radius: 10px;
  cursor: pointer;
}

.gbo-cookie-consent__back:hover,
.gbo-cookie-consent__back:focus {
  color: #fff;
  background: var(--gbo-blue);
  border-color: var(--gbo-blue);
}

.gbo-cookie-consent__options {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 18px 0;
  gap: 10px;
}

.gbo-cookie-option {
  display: grid;
  min-height: 104px;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  padding: 15px;
  margin: 0;
  color: var(--gbo-text);
  background: var(--gbo-bg);
  border: 1px solid var(--gbo-border);
  border-radius: 13px;
  gap: 14px;
  cursor: pointer;
}

.gbo-cookie-option.is-required {
  cursor: default;
}

.gbo-cookie-option__copy {
  display: block;
  min-width: 0;
}

.gbo-cookie-option__copy strong {
  display: block;
  margin-bottom: 5px;
  color: var(--gbo-ink);
  font-size: 12px;
  font-weight: 800;
}

.gbo-cookie-option__copy small {
  display: block;
  color: var(--gbo-muted);
  font-size: 9px;
  font-weight: 500;
  line-height: 1.5;
}

.gbo-cookie-switch {
  position: relative;
  display: inline-flex;
  flex: 0 0 auto;
}

.gbo-cookie-switch input {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  opacity: 0;
}

.gbo-cookie-switch > span {
  position: relative;
  display: block;
  width: 42px;
  height: 24px;
  background: #cbd5e2;
  border-radius: 999px;
  transition: background-color 180ms ease;
}

.gbo-cookie-switch > span::after {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 18px;
  height: 18px;
  content: "";
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 2px 7px rgba(8, 30, 56, .2);
  transition: transform 180ms ease;
}

.gbo-cookie-switch input:checked + span {
  background: var(--gbo-green);
}

.gbo-cookie-switch input:checked + span::after {
  transform: translateX(18px);
}

.gbo-cookie-switch input:focus-visible + span {
  outline: 3px solid rgba(31, 95, 174, .2);
  outline-offset: 2px;
}

.gbo-cookie-switch input:disabled + span {
  opacity: .75;
}

.gbo-cookie-consent__settings-actions {
  padding-top: 17px;
  border-top: 1px solid var(--gbo-border);
}

.gbo-cookie-launcher {
  position: fixed;
  left: 18px;
  bottom: 18px;
  z-index: 64990;
  display: inline-flex;
  width: 42px;
  height: 42px;
  align-items: center;
  justify-content: center;
  padding: 0;
  color: var(--gbo-blue);
  background: rgba(255, 255, 255, .96);
  border: 1px solid var(--gbo-border);
  border-radius: 12px;
  box-shadow: var(--gbo-shadow-sm);
  font-size: 16px;
  cursor: pointer;
  backdrop-filter: blur(10px);
}

.gbo-cookie-launcher:hover,
.gbo-cookie-launcher:focus {
  color: #fff;
  background: var(--gbo-blue);
  border-color: var(--gbo-blue);
}

@media (max-width: 991px) {
  .gbo-cookie-consent {
    right: 14px;
    bottom: 14px;
    left: 14px;
  }

  .gbo-cookie-consent__main {
    grid-template-columns: 50px minmax(0, 1fr);
    padding: 19px;
  }

  .gbo-cookie-consent__icon {
    width: 50px;
    height: 50px;
    border-radius: 14px;
    font-size: 20px;
  }

  .gbo-cookie-consent__actions {
    grid-column: 1 / -1;
    justify-content: stretch;
  }

  .gbo-cookie-consent__actions .gbo-cookie-consent__button {
    flex: 1 1 auto;
  }

  .gbo-cookie-consent__options {
    grid-template-columns: 1fr;
  }

.gbo-cookie-launcher{display:none}

}

@media (max-width: 767px) {
  .gbo-cookie-consent {
    bottom: calc(72px + env(safe-area-inset-bottom));
  }

  .gbo-cookie-consent__card {
    max-height: calc(100vh - 100px - env(safe-area-inset-bottom));
    overflow-y: auto;
    border-radius: 17px;
  }

  .gbo-cookie-consent__main {
    display: block;
    padding: 18px;
  }

  .gbo-cookie-consent__icon {
    width: 44px;
    height: 44px;
    margin-bottom: 13px;
  }

  .gbo-cookie-consent h2 {
    font-size: 18px;
  }

  .gbo-cookie-consent p {
    font-size: 10px;
  }

  .gbo-cookie-consent__actions,
  .gbo-cookie-consent__settings-actions {
    display: grid;
    grid-template-columns: 1fr;
    margin-top: 16px;
  }

  .gbo-cookie-consent__button {
    width: 100%;
    min-height: 45px;
  }

  .gbo-cookie-consent__settings {
    padding: 18px;
  }

  .gbo-cookie-launcher {
    bottom: calc(76px + env(safe-area-inset-bottom));
  }
}

@media (prefers-reduced-motion: reduce) {
  .gbo-cookie-consent,
  .gbo-cookie-consent__button,
  .gbo-cookie-switch > span,
  .gbo-cookie-switch > span::after {
    transition: none !important;
  }
}









/* ==========================================================================
   CONTACTS PAGE
   ========================================================================== */

.gbo-contacts-page {
  margin: 0 0 40px;
}

.gbo-contacts-page__grid {
  display: grid;
  grid-template-columns: minmax(320px, 0.82fr) minmax(0, 1.18fr);
  align-items: stretch;
  gap: 22px;
}

.gbo-contacts-card,
.gbo-map-card {
  min-width: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 20px;
  box-shadow: var(--gbo-shadow-sm);
}

.gbo-contacts-card {
  padding: 25px;
}

.gbo-contacts-card__heading {
  display: flex;
  align-items: center;
  margin-bottom: 22px;
  gap: 14px;
}

.gbo-contacts-card__icon {
  display: inline-flex;
  width: 52px;
  height: 52px;
  flex: 0 0 52px;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: linear-gradient(
    135deg,
    var(--gbo-blue),
    var(--gbo-blue-dark)
  );
  border-radius: 15px;
  box-shadow: 0 11px 26px rgba(31, 95, 174, 0.22);
  font-size: 20px;
}

.gbo-contacts-card__eyebrow,
.gbo-map-card__heading span {
  display: block;
  margin-bottom: 3px;
  color: var(--gbo-green-dark);
  font-size: 9px;
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.gbo-contacts-card__heading h2,
.gbo-map-card__heading h2 {
  margin: 0;
  color: var(--gbo-ink);
  font-size: 22px;
  line-height: 1.25;
}

.gbo-contacts-list {
  display: grid;
}

.gbo-contacts-list__item {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: start;
  padding: 14px 0;
  border-bottom: 1px solid var(--gbo-border);
  gap: 12px;
}

.gbo-contacts-list__item:first-child {
  padding-top: 0;
}

.gbo-contacts-list__item:last-child {
  border-bottom: 0;
}

.gbo-contacts-list__item > i {
  display: inline-flex;
  width: 38px;
  height: 38px;
  align-items: center;
  justify-content: center;
  color: var(--gbo-blue);
  background: var(--gbo-blue-soft);
  border-radius: 10px;
  font-size: 15px;
}

.gbo-contacts-list__item > div {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
}

.gbo-contacts-list__item span {
  margin-bottom: 4px;
  color: var(--gbo-muted);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.gbo-contacts-list__item a,
.gbo-contacts-list__item strong,
.gbo-contacts-list__item address {
  margin: 0;
  color: var(--gbo-ink);
  font-size: 13px;
  font-style: normal;
  font-weight: 750;
  line-height: 1.55;
}

.gbo-contacts-list__item a:hover {
  color: var(--gbo-blue);
}

.gbo-contacts-notice {
  display: grid;
  grid-template-columns: 25px minmax(0, 1fr);
  padding: 14px;
  margin-top: 18px;
  color: var(--gbo-blue-dark);
  background: var(--gbo-blue-soft);
  border: 1px solid rgba(31, 95, 174, 0.14);
  border-radius: 12px;
  gap: 10px;
}

.gbo-contacts-notice > i {
  margin-top: 2px;
  color: var(--gbo-blue);
  font-size: 18px;
}

.gbo-contacts-notice p {
  margin: 0;
  font-size: 10px;
  font-weight: 650;
  line-height: 1.55;
}

.gbo-contacts-messengers {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-top: 14px;
  gap: 9px;
}

.gbo-messenger-button {
  display: grid;
  min-height: 58px;
  grid-template-columns: 36px minmax(0, 1fr);
  align-items: center;
  padding: 9px 13px;
  color: #fff;
  border-radius: 12px;
  gap: 10px;
  transition:
    transform var(--gbo-transition),
    box-shadow var(--gbo-transition),
    filter var(--gbo-transition);
}

.gbo-messenger-button:hover,
.gbo-messenger-button:focus {
  color: #fff;
  box-shadow: 0 11px 24px rgba(18, 43, 75, 0.17);
  filter: brightness(0.96);
  transform: translateY(-2px);
}

.gbo-messenger-button--whatsapp {
  background: linear-gradient(135deg, #25d366, #159447);
}

.gbo-messenger-button--telegram {
  background: linear-gradient(135deg, #229ed9, #1675aa);
}

.gbo-messenger-button > i {
  display: inline-flex;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.14);
  border-radius: 9px;
  font-size: 18px;
}

.gbo-messenger-button > span {
  display: flex;
  min-width: 0;
  flex-direction: column;
  
}

.gbo-messenger-button .img_max_b{
background: url(https://gbo.logaz-auto.ru/image/max-white.png) no-repeat;
width: 26px;
height: 26px;
background-size: contain;
}


.gbo-messenger-button small {
  color: rgba(255, 255, 255, 0.72);
  font-size: 8px;
  font-weight: 650;
}

.gbo-messenger-button strong {
  color: #fff;
  font-size: 12px;
  font-weight: 800;
}

.gbo-map-card {
  display: flex;
  min-height: 100%;
  flex-direction: column;
}

.gbo-map-card__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 21px 23px;
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(112, 182, 44, 0.13),
      transparent 42%
    ),
    var(--gbo-bg);
  border-bottom: 1px solid var(--gbo-border);
  gap: 20px;
}

.gbo-map-card__heading > i {
  color: var(--gbo-blue);
  font-size: 25px;
}

.gbo-map-card__actions {
  display: flex;
  flex-wrap: wrap;
  padding: 13px 15px;
  border-bottom: 1px solid var(--gbo-border);
  gap: 8px;
}

.gbo-map-card__actions a {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  padding: 0 13px;
  color: var(--gbo-ink);
  background: #fff;
  border: 1px solid var(--gbo-border);
  border-radius: 10px;
  gap: 8px;
  font-size: 10px;
  font-weight: 800;
}

.gbo-map-card__actions a:hover,
.gbo-map-card__actions a:focus {
  color: #fff;
  background: var(--gbo-blue);
  border-color: var(--gbo-blue);
}

.gbo-map-card__actions i {
  color: var(--gbo-blue);
}

.gbo-map-card__actions a:hover i,
.gbo-map-card__actions a:focus i {
  color: #fff;
}

.gbo-map-card__frame {
  min-height: 440px;
  flex: 1 1 auto;
  background: var(--gbo-bg);
}

.gbo-map-card__frame iframe {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 440px;
  border: 0;
}

@media (max-width: 991px) {
  .gbo-contacts-page__grid {
    grid-template-columns: 1fr;
  }

  .gbo-map-card__frame,
  .gbo-map-card__frame iframe {
    min-height: 390px;
  }
}

@media (max-width: 767px) {
  .gbo-contacts-card {
    padding: 18px;
  }

  .gbo-contacts-card,
  .gbo-map-card {
    border-radius: 16px;
  }

  .gbo-contacts-card__heading h2,
  .gbo-map-card__heading h2 {
    font-size: 19px;
  }

  .gbo-contacts-messengers {
    grid-template-columns: 1fr;
  }

  .gbo-map-card__heading {
    padding: 18px;
  }

  .gbo-map-card__actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .gbo-map-card__actions a {
    justify-content: center;
  }

  .gbo-map-card__frame,
  .gbo-map-card__frame iframe {
    min-height: 330px;
  }
}

.gbo-news-page{padding-top: 30px;}
.max_footer{max-width: 13px;}
.max_mn{max-width: 17px;}

.gbo-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}


.gbo-messenger-button--max {
  color: #ffffff;
  background:
    radial-gradient(
      circle at 10% 90%,
      rgba(32, 214, 255, 0.95) 0%,
      rgba(31, 137, 255, 0.72) 32%,
      transparent 62%
    ),
    radial-gradient(
      circle at 92% 8%,
      rgba(173, 67, 255, 0.95) 0%,
      rgba(117, 62, 241, 0.78) 38%,
      transparent 68%
    ),
    linear-gradient(
      135deg,
      #1877ff 0%,
      #3157f4 42%,
      #7041ed 72%,
      #a840e4 100%
    );
  border-color: transparent;
  box-shadow: 0 10px 24px rgba(70, 79, 232, 0.24);
}

.gbo-messenger-button--max:hover,
.gbo-messenger-button--max:focus {
  color: #ffffff;
  background:
    radial-gradient(
      circle at 10% 90%,
      rgba(45, 225, 255, 1) 0%,
      rgba(30, 148, 255, 0.78) 34%,
      transparent 64%
    ),
    radial-gradient(
      circle at 92% 8%,
      rgba(190, 74, 255, 1) 0%,
      rgba(128, 65, 244, 0.82) 40%,
      transparent 70%
    ),
    linear-gradient(
      135deg,
      #0f6ff5 0%,
      #294fe7 42%,
      #6538df 72%,
      #9d36d8 100%
    );
  border-color: transparent;
  box-shadow: 0 14px 30px rgba(70, 79, 232, 0.32);
  transform: translateY(-2px);
}

.gbo-messenger-button__max-icon {
  display: inline-flex;
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  align-items: center;
  justify-content: center;
}

.gbo-messenger-button__max-icon img {
  display: block;
  width: 26px;
  height: 26px;
  object-fit: contain;
}

