:root {
  --bs-body-font-size: 14pt;
}

body {
  background-size: 100% 100%;
  background-attachment: fixed;
  background-color: #FDF7EE;
}

.modal {
  --bs-modal-width: 50%;
}

.image-radio-group {
  display: flex;
}

.image-radio {
  position: relative;
  text-align: center;
}

.hidden-radio {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.image-label {
  display: inline-block;
  cursor: pointer;
}

.image-label img {
  width: 100px; /* Adjust as needed */
  height: 100px; /* Adjust as needed */
  object-fit: cover;
  border: 3px solid transparent;
  border-radius: 5px; /* Optional: if you want rounded corners */
  transition: border-color 0.2s ease-in-out;
}

.hidden-radio:checked + .image-label img {
  border-color: #007bff; /* Change to your preferred highlight color */
}

/* Optional: add a hover effect */
.image-label:hover img {
  border-color: #0056b3; /* Change to your preferred hover color */
}

/* Optional: add a focus style for accessibility */
.hidden-radio:focus + .image-label img {
  box-shadow: 0 0 0 2px rgba(0,123,255,0.5);
}

footer {
  width: 100%;
}

footer p {
  text-align: center;
}

footer img {
  width: 160px;
}

.card {
  margin: 1em;
}

.card-body {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.card-body .card-subtitle {
  flex-grow: 1;
}

.card-body .footer {
  width: 100%;
  flex-shrink: 0;
  flex-grow: 0;
}

#customize-form {
  overflow: scroll;
}

#customize-form h6 {
  margin-top: 1em;
}

.quantity-input {
  display: flex;
  align-items: center;
  margin: 1em 0;
}

.qty-input {
  width: 50px;
  text-align: center;
  border: 1px solid #ccc;
  border-radius: 4px;
  margin: 0 5px;
}

.decrease-qty,
.increase-qty {
  background-color: #f8f9fa;
  border: 1px solid #ccc;
  border-radius: 4px;
  padding: 5px 10px;
  cursor: pointer;
}

table#cart td {
    vertical-align: middle;
}

header {
  text-align: center;
}

header a.navbar-brand img {
  max-width: 100%;
  max-height: 160px;
  margin: 1em 0;
}

#navbarNav {
  justify-content: center;
}

div.leader {
  position: relative;
  z-index: -1;
  width: 100%;
  height: 0;
  overflow: visible;
}

div.leader img, div.trailer img {
  width: 100%;
  opacity: .2;
}

div.trailer {
  position: relative;
  z-index: -1;
  width: 100%;
  height: 0;
  overflow: visible;
}

div.trailer img {
  position: absolute;
  bottom: 0;
}

.card-subtitle {
  font-size: 14pt;
}

h2 {
  margin-top: 2rem;
}

p {
  margin: 1em 0;
}

.category-description {
  font-style: italic;
}

.image-radio-group {
  font-size: 12pt;
}

h6 {
  font-size: 14pt;
}