/* allows logo widget width to modify image size */
header .header-full .logo_container .widgetlogo a.logo img { max-height: initial !important; }

.objfitcont .evogallery-widget-box img { object-fit: contain !important; }


.btn-o {
    max-width: 100%;
    visibility: hidden;
}

.box-container {
  display: flex;
  gap: 20px;              /* space between boxes */
  flex-wrap: wrap;        /* makes it responsive */
  max-width: 1200px;
  margin: 0 auto;         /* center on page */
}

.info-box {
  background-color: #fafaca;   /* pale yellow */
  border-radius: 12px;         /* curved corners */
  padding: 20px;
  flex: 1 1 300px;             /* responsive width */
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  font-family: Arial, sans-serif;
}

.core-capabilities {
  font-family: 'Roboto', Arial, sans-serif;
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px;
  text-align: center;
}

.core-title {
  font-size: 2.5rem;
  margin-bottom: 5px;
}

.core-subtitle {
  font-size: 1.2rem;
  margin-bottom: 30px;
  color: #666;
}

/* UPDATED GRID FOR 3 WIDER COLUMNS */
.core-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
}

.core-card {
  background: #fff;
  border-radius: 12px;
  padding: 25px 20px;

  /* THIS is the key change */
  flex: 1 1 calc(33.333% - 20px);

  max-width: 380px;

  box-shadow: 0 4px 10px rgba(0,0,0,0.08);
  transition: transform 0.2s ease;
}

.core-card:hover {
  transform: translateY(-5px);
}

.core-card img {
  max-width: 60px;
  margin: 0 auto 15px auto;
  display: block;
}

.core-card h4 {
  margin-bottom: 10px;
  font-size: 1.2rem;
}

.core-card p {
  font-size: 0.95rem;
  color: #555;
}

.core-list {
  list-style-type: none !important;  /* removes bullets */
  list-style: none !important;       /* extra safety */
  margin: 10px 0 0 0;
  padding-left: 0 !important;        /* removes indent */
  padding-inline-start: 0 !important; /* fixes browser defaults */
}

.core-list li {
  list-style: none !important;       /* ensures no inherited bullets */
  margin-bottom: 6px;
  padding-left: 0;
}

.naics-table {
  width: 100%;
  max-width: 1100px;      /* keeps it nicely centred and readable */
  margin: 0 auto;         /* centres the table */
  border-collapse: collapse;
  font-family: Arial, sans-serif;
  font-size: 0.95rem;
  text-align: center;     /* centres text inside cells */
}

.naics-table td {
  border: 1px solid #333; /* visible borders */
  padding: 12px;
  vertical-align: top;
}

.naics-table tr:nth-child(even) {
  background-color: #f9f9f9;
}

.image-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;                 /* No space between tiles */
  width: 100vw;           /* Full viewport width */
  margin-left: calc(50% - 50vw); /* Break out of container */
}

.image-tile {
  overflow: hidden;
}

.image-tile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.image-tile--full {
  grid-column: 1 / -1; /* spans all 3 columns */
}


/* Tablet */
@media (max-width: 900px) {
  .image-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Mobile */
@media (max-width: 600px) {
  .image-grid {
    grid-template-columns: 1fr;
  }

  /* Reset corner rounding for stacked layout */
  .image-tile img {
    border-radius: 0;
  }
}

   .image-grid {
     margin-top: 0 !important;
}

  .who-we-serve {
    font-size: 1.4rem;
    font-family: 'Roboto', sans-serif;
  }

  .who-we-serve h1 {
    font-size: 3rem;
    text-align: center;
    margin-bottom: 30px;
  }

  .who-we-serve .flex-5 {
    display: flex;
    justify-content: space-evenly; /* Even spacing across full width */
    align-items: stretch;
    flex-wrap: wrap;
  }

  .who-we-serve .col {
    flex: 0 1 180px; /* Controls width of each tile */
    display: flex;
    justify-content: center;
  }

  .who-we-serve .card {
    text-align: center;
  }

  .who-we-serve .card img {
    max-width: 100%;
    height: auto;
    margin-bottom: 10px;
  }

  .who-we-serve .card a {
    text-decoration: none;
    color: inherit;
  }

  /* Mobile tweaks */
  @media (max-width: 768px) {
    .who-we-serve .flex-5 {
      justify-content: center;
      gap: 20px;
    }
  }

.non-returnable {
  display: none !important;
}

/* Full-bleed 1920x350 banner */
.full-bleed-banner {
  display: block;                    /* make anchor behave like a block */
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;                /* pull to viewport edges */
  margin-right: -50vw;
  width: 100vw;
  max-width: 100vw;
  height: 350px;                     /* fixed banner height */
  background-image: url('https://us.evocdn.io/dealer/1650/content/media/My_Theme/mpass banner.png'); /* REPLACE */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  cursor: pointer;
  box-sizing: border-box;
  padding-left: env(safe-area-inset-left);   /* iPhone notch safety */
  padding-right: env(safe-area-inset-right);
  text-decoration: none;             /* remove default underline */
  border: 0;
  overflow: hidden;
}

/* Decorative play icon (optional) */
.full-bleed-banner::before {
  content: "▶";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 48px;
  color: rgba(255,255,255,0.95);
  text-shadow: 0 2px 10px rgba(0,0,0,0.6);
  pointer-events: none; /* keep the link clickable */
}

/* Slight dark overlay for contrast */
.full-bleed-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0.05), rgba(0,0,0,0.08));
  pointer-events: none;
}

/* Mobile tweak: reduce height on small screens */
@media (max-width: 600px) {
  .full-bleed-banner {
    height: 200px;
  }
}

.centered-content-block {
  text-align: center;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

.centered-content-block p,
.centered-content-block h2,
.centered-content-block .image-with-text__text,
.centered-content-block .image-with-text__heading {
  text-align: center !important;
  margin-left: auto;
  margin-right: auto;
}

.centered-content-block .image-with-text__text.rte.body {
  font-size: 1rem;         /* Optional: standardize paragraph text size */
  line-height: 1.6;        /* Optional: improve readability */
}

/* remove show more on product descriptions */
.productsummary_container .productdetails .product-description-in-summary.collapsible {
  grid-template-rows: auto 1fr;
  
  &::after {
	display:none;
  }
  
  custom-html::after {
    display:none;
  }
}