:root {
  --tbomb-bg: #F0F4F8;
  --tbomb-surface: #FFFFFF;
  --tbomb-tone: #106EBE;
  --tbomb-tone-hover: #0B5394;
  --tbomb-ink: #1F2937;
  --tbomb-gradient: linear-gradient(135deg, #106EBE 0%, #004578 100%);
  --font-display: 'Oswald', sans-serif;
  --font-body: 'Roboto', sans-serif;
}

/* Base Headings Setup */
h1, h2, h3, h4, .tbomb-brand-title, .tbomb-item-heading, .tbomb-section-headline {
  font-family: var(--font-display);
  text-transform: uppercase;
}

/* Design Preset A Specific Header: Accent Bar Bottom */
.tbomb-header-bar {
  background-color: var(--tbomb-surface);
  border-bottom: 4px solid var(--tbomb-tone);
}

.tbomb-brand-title {
  color: var(--tbomb-ink);
}

/* Outer Showcase Panel */
.tbomb-showcase-panel {
  background-color: var(--tbomb-surface);
  border-radius: 14px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}

/* Pure CSS Gallery Control */
.tbomb-slide-frame {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
  pointer-events: none;
}

#gallery-opt-1:checked ~ div .tbomb-media-wrap #slide-img-1,
#gallery-opt-2:checked ~ div .tbomb-media-wrap #slide-img-2,
#gallery-opt-3:checked ~ div .tbomb-media-wrap #slide-img-3,
#gallery-opt-4:checked ~ div .tbomb-media-wrap #slide-img-4 {
  opacity: 1;
  pointer-events: auto;
}

.tbomb-thumb-item {
  border-color: #E2E8F0;
  background-color: #F7FAFC;
}

#gallery-opt-1:checked ~ div label[for="gallery-opt-1"],
#gallery-opt-2:checked ~ div label[for="gallery-opt-2"],
#gallery-opt-3:checked ~ div label[for="gallery-opt-3"],
#gallery-opt-4:checked ~ div label[for="gallery-opt-4"] {
  border-color: var(--tbomb-tone);
  box-shadow: 0 0 0 1px var(--tbomb-tone);
}

/* Design Preset A Specific CTA: Pill (border-radius: 999px) with hover-shadow */
.tbomb-purchase-button {
  background: var(--tbomb-gradient);
  color: #FFFFFF !important;
  border-radius: 999px;
  box-shadow: 0 4px 14px rgba(16, 110, 190, 0.3);
  text-decoration: none;
}

.tbomb-purchase-button:hover {
  box-shadow: 0 8px 22px rgba(16, 110, 190, 0.45);
  transform: translateY(-1px);
}

/* Reviews Block */
.tbomb-feedback-container {
  background-color: var(--tbomb-surface);
  border-radius: 14px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

/* Design Preset A Specific Reviews: Left Colored Border 4px */
.tbomb-opinion-item {
  border-left: 4px solid var(--tbomb-tone);
  background-color: #F8FAFC;
  border-radius: 0 8px 8px 0;
}