/* DBTS theme foundation — staged, reversible CSS layer. */
:root {
  --dbts-ink: #102f43;
  --dbts-ink-soft: #395466;
  --dbts-teal: #007c85;
  --dbts-teal-dark: #00646c;
  --dbts-mint: #dff3f1;
  --dbts-canvas: #f4f7f8;
  --dbts-surface: #ffffff;
  --dbts-line: #d7e1e5;
  --dbts-focus: #e5a84b;
  --dbts-radius: 10px;
  --dbts-shadow: 0 10px 26px rgba(16, 47, 67, .09);
}
body { background: var(--dbts-canvas); color: var(--dbts-ink); font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: 16px; line-height: 1.6; }
a { color: var(--dbts-teal-dark); }
a:hover, a:focus { color: var(--dbts-ink); }
a:focus, button:focus, input:focus, select:focus, textarea:focus { outline: 3px solid var(--dbts-focus); outline-offset: 2px; }
.header-container { background: var(--dbts-surface); box-shadow: 0 1px 0 rgba(16, 47, 67, .08); }
#header .nav { background: var(--dbts-ink); color: #fff; min-height: 36px; }
#header .nav a, #header .nav span { color: #fff; }
#header .nav a:hover { color: #c9f0ed; }
#header_logo { margin-top: 18px; }
#header_logo img { max-height: 62px; width: auto; }
.btn, button, input.button_mini, #search_block_top .btn, #add_to_cart button { border-radius: 7px; font-weight: 700; min-height: 42px; transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.btn:hover, button:hover, #add_to_cart button:hover { transform: translateY(-1px); }
.btn-primary, #add_to_cart button, .button.button-medium { background: var(--dbts-teal); border-color: var(--dbts-teal); color: #fff; text-shadow: none; }
.btn-primary:hover, .btn-primary:focus, #add_to_cart button:hover, #add_to_cart button:focus, .button.button-medium:hover, .button.button-medium:focus { background: var(--dbts-teal-dark); border-color: var(--dbts-teal-dark); color: #fff; }
#index #columns, #category #columns, #product #columns, #cms #columns { padding-top: 24px; padding-bottom: 48px; }
#index .page-heading, #category .page-heading, #product .page-heading, #cms .page-heading { border-bottom: 2px solid var(--dbts-line); color: var(--dbts-ink); font-size: clamp(26px, 3vw, 38px); font-weight: 700; letter-spacing: -.025em; line-height: 1.15; margin: 0 0 28px; padding: 0 0 16px; }
#index .box, #category .box, #product .box, #cms .box, #index .product-container, #category .product-container { background: var(--dbts-surface); border: 1px solid var(--dbts-line); border-radius: var(--dbts-radius); box-shadow: var(--dbts-shadow); }
#index .product-container, #category .product-container { overflow: hidden; }
#index .product-image-container, #category .product-image-container { background: #fff; padding: 14px; }
#index .product-name, #category .product-name, #product .product-name { color: var(--dbts-ink); font-weight: 700; line-height: 1.35; }
#product .primary_block { background: var(--dbts-surface); }
#product #short_description_block, #product .pb-left-column, #product .pb-right-column { color: var(--dbts-ink-soft); }
#cms .rte, #cms .rte p, #cms .rte li { color: var(--dbts-ink-soft); font-size: 16px; line-height: 1.7; }
#cms .rte h2, #cms .rte h3 { color: var(--dbts-ink); font-weight: 700; letter-spacing: -.02em; line-height: 1.2; }
#cms .rte h2 { font-size: clamp(24px, 2.6vw, 34px); margin-top: 40px; }
#cms .rte h3 { font-size: 21px; margin-top: 28px; }
#cms .rte a { font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 767px) { body { font-size: 16px; } #header_logo { margin: 12px 0; text-align: center; } #header_logo img { max-height: 50px; } #index #columns, #category #columns, #product #columns, #cms #columns { padding-top: 16px; padding-bottom: 32px; } #index .page-heading, #category .page-heading, #product .page-heading, #cms .page-heading { margin-bottom: 20px; padding-bottom: 12px; } .btn, button, input.button_mini, #search_block_top .btn, #add_to_cart button { min-height: 44px; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; } }