.div-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;          /* space between buttons */
  flex-wrap: wrap;    /* allows stacking on small screens */
  margin: 30px auto;
  width: 100%;
}

.div-btn a {
  text-decoration: none; /* remove link underline */
}

/* make buttons full width and stacked on small screens */
@media (max-width: 767px) {
  .div-btn {
    flex-direction: column;
    gap: 15px;
  }

  .btn-primary2 {
    width: 90%; /* take up most of the screen on mobile */
    max-width: 400px;
  }
}


.btn-primary2 {
  display: inline-block;
  padding: 18px 40px 15px 40px;  /* more horizontal room */
  font-size: 1.5em;
  color: white;
  background-color: black;
  border: 2px solid black;
  border-radius: 0;
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;           /* keep text on one line */
  width: auto;                   /* auto size to text */
  max-width: 100%;               /* prevent overflow */
  box-sizing: border-box;        /* include borders in width calc */
  text-align: center;
  line-height: 1.2;              /* add vertical breathing room */
  overflow: visible;             /* ensure punctuation fully visible */
}

.btn-primary2:hover {
  background-color: white;
  color: black;
  border-color: black;
}

@media (max-width: 480px) {
  .btn-primary2 {
    font-size: 1.2em;
    padding: 14px 32px;  /* keep same side padding ratio */
  }
}


/* Extra small devices (phones, up to 480px) */
@media screen and (max-width: 991px) {
  .aboutustext1 {
    font-size: 24px;
  }
  .about-us-p,
  h1,
  h2,
  h3,
  h4 {
    text-align: left; /* Set text alignment to left on small screens */
  }
}

/* tablets/desktops and up ----------- */
@media (min-width: 992px) {
  .aboutustext1 {
    font-size: 34px;
  }
}

.aboutustext1 {
  text-align: left;
  font-family: 'garamond';
  margin: 30px;
}

.aboutustext2 {
  font-size: 25px;
  text-align: left;
  font-weight: 900;
}

.aboutustext3 {
  font-family: 'garamond';
  text-align: left;
  border: solid black;
  margin: 30px 0px;
  font-size: 30px;
  padding: 14px 0px 10px 0px;
}

.embed-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}

.embed-container iframe,
.embed-container object,
.embed-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.pic1 {
  max-width: 250px;
  margin: auto;
  display: block;
}

.pictext {
  text-align: left;
  margin-top: 10px;
}

.middle-col {
  border-right: solid;
  border-left: solid;
}

/* Small devices (tablets, 768px and up) */
@media (max-width: 768px) {
  .middle-col {
    border-right: none;
    border-left: none;
  }
}

.about-us-p {
  font-size: 1.5em;
  line-height: 1.5em;
  text-align-last: left;
}

.product-cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}

.product-card {
  display: inline-block;
  width: 22%;
  box-sizing: border-box;
  text-align: center;
  border: 2px solid black;
  margin: 8px;
  padding-bottom: 20px;
}

.shop-link {
  display: inline-block;
  background-color: black;
  color: white;
  padding: 7px 15px; /* Adjust the padding to your preference */
  text-decoration: none;
}

hr {
  width: 75%;
  margin: 50px auto; /* Optional: Adjust the margin as needed */
  border: 1px solid #000000; /* Optional: Set the border color */
}

/* Updated H1 style (Option 1: Bold headline with shadow) */
h1 {
  color: #b30000;              /* Deep attention-grabbing red */
  font-size: 2.2em;            /* Slightly larger headline */
  font-weight: 900;            /* Extra-bold for impact */
  font-style: italic;          /* Matches your existing style */
  text-transform: uppercase;   /* Optional: adds authority */
  letter-spacing: 1px;         /* Improves readability in uppercase */
  text-align: center;          /* Centers for prominence */
  text-shadow: 2px 2px 4px rgba(0,0,0,0.3); /* Subtle dark drop shadow */
  margin: 25px 0 15px 0;       /* Balanced top/bottom spacing */
}

/* Responsive H1 for smaller devices */
@media (max-width: 767px) {
  h1 {
    font-size: 1.8em;
    letter-spacing: 0.5px;
    text-align: left; /* Matches your mobile layout convention */
  }
}

h2 {
  font-size: 1.7em; /* Set font size */
  font-weight: bold; /* Set font weight */
  margin-bottom: 10px; /* Set bottom margin */
}

h3 {
  font-size: 1.5em; /* Set font size */
  margin-bottom: 10px; /* Set bottom margin */
}

h4 {
  font-size: .7em; /* Set font size */
  margin-bottom: 10px; /* Set bottom margin */
}

.img-div {
  padding-bottom: 30px;
}

/* Default styles for both desktop and mobile */
.desktop-img {
  display: block; /* Show on desktop by default */
  margin: 0 auto; /* Center the image on desktop */
}

.mobile-img {
  display: none; /* Hide on desktop by default */
}

.product-description {
  padding: 15px;
  word-wrap: break-word; /* Add this property to handle long words */
}

/* Media query for screens smaller than 768 pixels (typical mobile devices) */
@media (max-width: 767px) {
  .desktop-img {
    display: none; /* Hide on mobile */
  }

  .mobile-img {
    display: none; /* Hide on desktop by default */
    width: 100%; /* Make the image responsive */
    max-width: 100%; /* Set maximum width for the mobile image */
    margin: 0 auto; /* Center the image on mobile */
  }

  .about-us-p,
  h1,
  h2,
  h3,
  h4 {
    text-align: left; /* Set text alignment to left on small screens */
  }

  .product-container {
    text-align: left;
    width: 80%;
    margin: 0 auto;
  }

  .product-image {
    width: 100%;
    max-width: 300px;
    height: auto;
  }

  /* Adjust the styles for small screens (2 wide) */
  @media (max-width: 767px) {
    .product-card {
      width: 48%; /* Two cards per row on small screens */
    }
  }

  /* Base paragraph style */
  .about-us-p {
    font-size: 1.4em;
    line-height: 1.6em;
    text-align: left;
  }
}

/* Larger screens */
@media (min-width: 992px) {
  .about-us-p {
    font-size: 1.8em;
  }
}
