/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */
.gallery-placeholder {
  width: 100%;
}
.stock.available span {
  color: #C14C2D;
}
.stock.unavailable span {
  color: #6e716e;
}
.page-title-wrapper.product {
  margin-top: 40px;
}
a,
.alink {
  color: #C14C2D;
}
a:hover,
.alink:hover {
  color: #8A2E1F;
}
.opc-progress-bar-item._active > span:before {
  background: #C14C2D !important;
  border-color: #C14C2D !important;
}
.opc-progress-bar-item._active > span:after {
  border-color: #C14C2D !important;
}
.opc-progress-bar-item._active:before {
  background: #C14C2D !important;
  border-color: #C14C2D !important;
}
.opc-progress-bar-item._complete:before {
  background: #8A2E1F !important;
  border-color: #8A2E1F !important;
}
.opc-progress-bar-item._complete > span:before,
.opc-progress-bar-item._complete > span:after {
  background: #8A2E1F !important;
  border-color: #8A2E1F !important;
}
.opc-wrapper .shipping-address-item.selected-item {
  border-color: #8A2E1F !important;
}
.opc-wrapper .shipping-address-item.selected-item:after {
  background: #8A2E1F !important;
}
.minicart-wrapper .action.showcart .counter.qty {
  background: #C14C2D !important;
}
.opc-progress-bar-item._complete > span:after {
  color: #ffffff;
}
.opc-progress-bar-item._complete:hover:before {
  background: #8A2E1F !important;
}
.opc-progress-bar-item._complete:hover > span:before {
  background: #8A2E1F !important;
}
.checkout-index-index .payment-option._collapsible.opc-payment-additional.discount-code {
  /*display: none;*/
}
.cart-discount {
  /*display: none;*/
}
.navigation .level0.active > .level-top,
.navigation .level0.has-active > .level-top {
  border-color: #c14c2d !important;
}
.product-options-bottom .price-box .price-container .price,
.product-info-price .price-box .price-container .price {
  color: #000;
}
@media all and (min-width: 768px) {
  .product-options-bottom .price-box .price-container .price,
  .product-info-price .price-box .price-container .price {
    font-size: 30px;
  }
}
.product-info-main .product.attribute.overview {
  margin: 20px 0 0 0;
}
.fieldset > .field > .label,
.fieldset > .fields > .field > .label {
  color: #000;
}
@media all and (min-width: 768px) {
  .product-info-main .product-add-form {
    padding-top: 15px;
  }
}
.filter-options-content a:hover {
  background-color: transparent;
}
.product-item .tocart {
  margin-top: 10px;
}
.magento-payments-review-discount .block > .title strong,
.paypal-review-discount .block > .title strong,
.cart-discount .block > .title strong {
  color: #c14c2d;
  font-weight: 400;
}
/* =========================================================
   Heatcraft CSS — FULL REPLACEMENT (Hero Contained + CTA + Homepage + Footer + Contact)
   - Keeps PB full-bleed rows full-bleed (background spans 100vw)
   - Forces HOMEPAGE HERO inner content to be CONTAINED and truly 2-column,
     even when the right column is empty (uses CSS Grid)
   - Keeps your Page Builder primary button styling
   - Keeps setup card styling
   - Keeps footer rebuild styling
   - Keeps Contact page styling
   ========================================================= */
/* =========================================================
   GLOBAL / PAGE BUILDER FULL BLEED + VARIABLES
   ========================================================= */
:root {
  --hc-max-width: 1200px;
  --hc-gutter-x: 64px;
  --hc-gutter-x-md: 32px;
  --hc-gutter-x-sm: 24px;
  --hc-split-gap: 64px;
  --hc-split-gap-md: 40px;
  --hc-split-gap-sm: 28px;
}
/* FORCE true full-bleed rows in Luma */
.pagebuilder-row[data-appearance="full-bleed"],
.pagebuilder-row[data-content-type="row"][data-appearance="full-bleed"],
[data-content-type="row"][data-appearance="full-bleed"] {
  position: relative;
  left: 50%;
  right: 50%;
  width: 100vw;
  margin-left: -50vw;
  margin-right: -50vw;
}
/* Prevent horizontal scroll caused by bleed math */
.page-main {
  overflow-x: hidden;
}
/* =========================================================
   PAGE BUILDER BUTTONS (Primary)
   ========================================================= */
.pagebuilder-button-primary {
  text-decoration: none;
  background-image: none;
  background: #c14c2d;
  border: 1px solid #c14c2d;
  color: #ffffff;
  cursor: pointer;
  display: inline-block;
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-weight: 600;
  margin: 0 10px 10px 0;
  box-sizing: border-box;
  vertical-align: middle;
  line-height: 2.2rem;
  /* final values */
  padding: 14px 17px;
  font-size: 1.8rem;
  border-radius: 0px;
  box-shadow: none;
}
.pagebuilder-button-primary span {
  color: inherit;
}
/* =========================================================
   SHARED TYPOGRAPHY
   ========================================================= */
.hc-eyebrow {
  display: block;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 12px;
  margin: 0 0 10px;
  color: #777;
}
.hc-section-title {
  text-align: center;
  font-size: 42px;
  line-height: 1.15;
  font-weight: 700;
  margin: 0 0 40px;
  color: #111;
}
/* Left-aligned version for sections that need it */
.hc-featured .hc-section-title,
.hc-testimonials .hc-section-title {
  text-align: left;
  margin-bottom: 16px;
}
/* =========================================================
   HOMEPAGE HERO — FULL BLEED BG, CONTAINED INNER CONTENT (FIXED)
   Uses CSS Grid to prevent left column from stretching full width
   when the right column is empty.
   ========================================================= */
.hc-hero {
  color: #fff;
}
/* Hard contain the PB wrappers (PB can inject 100vw widths) */
.hc-hero > .pagebuilder-column-group,
.hc-hero > .pagebuilder-column-group > .pagebuilder-column-line {
  max-width: var(--hc-max-width) !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
  padding-left: var(--hc-gutter-x) !important;
  padding-right: var(--hc-gutter-x) !important;
}
/* Force explicit 2-column layout */
.hc-hero > .pagebuilder-column-group > .pagebuilder-column-line {
  display: grid !important;
  grid-template-columns: minmax(0, 660px) 1fr !important;
  column-gap: 64px;
  align-items: center;
}
/* Left column sizing */
.hc-hero .hc-hero-left {
  max-width: 660px !important;
  width: 100%;
  padding: 0 !important;
  /* container handles gutters now */
}
/* Prevent flex/grid overflow */
.hc-hero .pagebuilder-column,
.hc-hero .pagebuilder-content-type {
  min-width: 0;
  max-width: none;
}
/* Title + body */
.hc-hero .hc-hero-title {
  font-size: 56px;
  line-height: 1.05;
  font-weight: 800;
  margin: 0 0 18px;
}
.hc-hero .hc-hero-text {
  font-size: 14px;
  line-height: 1.6;
  opacity: .9;
  margin: 0 0 26px;
  max-width: 520px;
}
/* Neutralize PB button wrapper so ONLY .pagebuilder-button-primary styles show */
.hc-hero .hc-btn {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 10px 0 0;
  box-shadow: none !important;
  display: inline-block;
}
.hc-hero a.pagebuilder-button-primary {
  display: inline-block;
}
.hc-hero a.pagebuilder-button-primary::before,
.hc-hero a.pagebuilder-button-primary::after {
  content: none !important;
}
/* =========================================================
   SETUP CARDS (FIGMA MATCH)
   ========================================================= */
.hc-setup .hc-setup-card {
  border-radius: 2px;
  overflow: hidden;
}
.hc-setup .hc-setup-card figure {
  margin: 0;
}
.hc-setup .hc-setup-card img {
  width: 100%;
  height: auto;
  display: block;
}
.hc-setup h3 {
  font-size: 18px;
  font-weight: 700;
  margin: 14px 0 0;
  color: #111;
}
.hc-setup .hc-setup-card--dark {
  aspect-ratio: 1.77777778;
  background-color: #2b2b2b !important;
  background-image: none !important;
  padding: 24px !important;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  height: auto !important;
  min-height: 0 !important;
}
.hc-setup .hc-setup-card--dark h2,
.hc-setup .hc-setup-card--dark h3,
.hc-setup .hc-setup-card--dark p,
.hc-setup .hc-setup-card--dark span,
.hc-setup .hc-setup-card--dark a {
  color: #fff;
}
.hc-setup .hc-setup-card--dark figure {
  width: 34px;
  height: 34px;
  margin: 0 0 12px 0;
}
.hc-setup .hc-setup-card--dark figure img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.hc-setup .hc-setup-card--dark [data-content-type="text"] {
  padding: 0 !important;
}
.hc-setup .hc-setup-card--dark h2 {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}
.hc-setup .pagebuilder-column-line {
  gap: 24px;
}
/* =========================================================
   HOMEPAGE CONTAINERS + H2 NORMALIZATION
   ========================================================= */
.hc-featured .pagebuilder-column-line,
.hc-expect .pagebuilder-column-line,
.hc-cta .pagebuilder-column-line,
.hc-split__inner {
  max-width: var(--hc-max-width);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  padding-left: var(--hc-gutter-x);
  padding-right: var(--hc-gutter-x);
}
.hc-featured h2,
.hc-expect h2,
.hc-cta__title h2,
.hc-homepage-cta__title h2,
.hc-split__title h2 {
  font-size: 44px;
  line-height: 1.1;
  font-weight: 600;
  color: #111;
}
/* =========================================================
   FEATURED PRODUCTS
   ========================================================= */
.hc-featured {
  padding: 90px 0 40px;
  background: #ffffff;
}
.hc-featured p {
  font-size: 14px;
  line-height: 1.7;
  margin: 0;
  color: #333;
}
.hc-featured .hc-view-all-col {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
}
/* Carousel gutter alignment */
.widget-product-carousel {
  padding-left: var(--hc-gutter-x);
  padding-right: var(--hc-gutter-x);
  box-sizing: border-box;
}
.widget-product-carousel .slick-list {
  margin-left: 0;
  margin-right: 0;
}
.widget-product-carousel .slick-dots {
  padding-left: var(--hc-gutter-x);
  padding-right: var(--hc-gutter-x);
  box-sizing: border-box;
}
.widget-product-carousel .slick-slide {
  padding: 0 12px;
  box-sizing: border-box;
}
/* =========================================================
   WHAT TO EXPECT
   ========================================================= */
.hc-expect {
  padding: 70px 0;
  background: #ffffff;
}
.hc-expect h2 {
  margin: 0 0 38px;
}
.hc-expect .pagebuilder-column-group {
  gap: 48px;
}
.hc-expect__icon img {
  width: 34px;
  height: 34px;
  object-fit: contain;
  display: block;
  margin: 0 0 14px;
}
.hc-expect__kicker {
  font-size: 16px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin: 0 0 10px;
  color: #111;
}
.hc-expect__text {
  font-size: 14px;
  line-height: 1.7;
  color: #333;
  margin: 0;
}
/* =========================================================
   READY TO TRY IT? (WHITE CTA)
   ========================================================= */
.hc-cta {
  padding: 90px 0;
  background: #ffffff;
}
.hc-cta__title h2 {
  text-align: center;
  margin: 0 0 14px;
}
.hc-cta__text {
  text-align: center;
  font-size: 14px;
  line-height: 1.7;
  color: #333;
  max-width: 720px;
  margin: 0 auto 28px;
}
.hc-cta__btn {
  display: flex;
  justify-content: center;
}
.hc-cta__btn a.pagebuilder-button-primary {
  margin: 0;
}
/* =========================================================
   HOMEPAGE CTA (ORANGE) — hc-homepage-cta__* naming
   ========================================================= */
.hc-homepage-cta {
  padding: 90px 0 !important;
  background: #c14c2d !important;
}
.hc-homepage-cta .pagebuilder-column-group,
.hc-homepage-cta .pagebuilder-column-line {
  max-width: var(--hc-max-width);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  padding-left: var(--hc-gutter-x);
  padding-right: var(--hc-gutter-x);
}
.hc-homepage-cta__title h2 {
  text-align: center;
  margin: 0 0 14px;
  color: #201e1d;
  font-weight: 600;
}
.hc-homepage-cta__text {
  text-align: center;
  font-size: 14px;
  line-height: 1.7;
  color: #201e1d;
  max-width: 720px;
  margin: 0 auto 28px;
}
.hc-homepage-cta__btn {
  display: flex;
  justify-content: center;
}
.hc-homepage-cta__btn a.pagebuilder-button-primary {
  margin: 0;
  background: #201e1d !important;
  border: 1px solid #201e1d !important;
  color: #fff !important;
}
.hc-homepage-cta__btn a.pagebuilder-button-primary:hover {
  background: #474441 !important;
  border: 1px solid #474441 !important;
  color: #fff !important;
}
/* =========================================================
   FASTER STARTS / HOTTER BURNS (FULL BLEED SPLIT)
   ========================================================= */
.hc-split--bleed {
  background: #f3f0ec;
  padding: 0;
}
.pagebuilder-row.hc-split--bleed[data-appearance="full-bleed"] {
  position: relative;
  left: 50%;
  right: 50%;
  width: 100vw;
  margin-left: -50vw;
  margin-right: -50vw;
}
.hc-split__inner {
  padding-top: 90px;
  padding-bottom: 90px;
}
.hc-split__inner .pagebuilder-column-line {
  align-items: flex-start;
  column-gap: var(--hc-split-gap);
}
.hc-split__title h2 {
  margin: 0 0 18px;
}
.hc-split__body {
  font-size: 14px;
  line-height: 1.8;
  color: #333;
  max-width: 520px;
}
.hc-split__bullets {
  margin-top: 26px;
  font-size: 16px;
  line-height: 1.9;
  color: #111;
}
.hc-split__bullets p {
  margin: 0 0 8px;
}
.hc-split__image img {
  width: 100%;
  height: auto;
  display: block;
}
/* =========================================================
   FOOTER COLORS + FOOTER REBUILD
   ========================================================= */
.page-footer {
  background-color: #201E1D !important;
}
.footer.content {
  background-color: #201E1D !important;
}
/* Footer rebuild */
.hc-footer {
  background: #1f1f1f;
  color: #fff;
  padding: 70px 0 35px;
}
.hc-footer__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 48px;
}
.hc-footer__top {
  display: grid;
  grid-template-columns: 260px 1fr 1fr 520px;
  gap: 48px;
  align-items: start;
}
.hc-footer__logo img {
  max-width: 150px;
  height: auto;
  display: block;
}
.hc-footer__heading {
  font-weight: 600;
  opacity: .75;
  margin-bottom: 18px;
  letter-spacing: .2px;
}
.hc-footer__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.hc-footer__list li + li {
  margin-top: 16px;
}
.hc-footer__list a {
  color: #fff;
  text-decoration: none;
  opacity: .9;
}
.hc-footer__list a:hover {
  text-decoration: underline;
}
.hc-footer__subtext {
  opacity: .9;
  margin: 0 0 18px;
  line-height: 1.45;
}
/* Newsletter */
.hc-footer__newsletter .block.newsletter {
  margin: 0;
}
.hc-footer__newsletter .block.newsletter .content {
  margin: 0;
}
.hc-footer__newsletter form.form.subscribe {
  display: flex;
  gap: 18px;
  align-items: stretch;
}
.hc-footer__newsletter .field.newsletter {
  flex: 1 1 auto;
  margin: 0;
}
.hc-footer__newsletter .control input[type="email"],
.hc-footer__newsletter input#newsletter {
  height: 54px;
  border-radius: 2px;
  border: 1px solid #3a3a3a;
  background: #fff;
  color: #111;
  padding: 0 18px;
  font-size: 16px;
}
.hc-footer__newsletter .actions {
  margin: 0;
}
.hc-footer__newsletter .action.subscribe.primary {
  height: 54px;
  padding: 0 26px;
  border-radius: 2px;
  border: 0;
  background: #C14C2D;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
}
.hc-footer__fineprint {
  margin-top: 14px;
  font-size: 13px;
  opacity: .8;
  line-height: 1.4;
}
.hc-footer__fineprint a {
  color: #fff;
  text-decoration: underline;
  opacity: .9;
}
.hc-footer__divider {
  height: 1px;
  background: rgba(255, 255, 255, 0.18);
  margin: 46px 0 22px;
}
.hc-footer__bottom {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: center;
}
.hc-footer__legal {
  display: flex;
  gap: 28px;
  flex-wrap: wrap;
  align-items: center;
  opacity: .9;
}
.hc-footer__legal a {
  color: #fff;
  text-decoration: underline;
  opacity: .9;
}
.hc-footer__social {
  display: flex;
  gap: 18px;
  align-items: center;
}
.hc-footer__social-link {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: #c14c2d;
  text-decoration: none;
}
.hc-footer__icon {
  font-weight: 700;
  font-size: 16px;
}
/* =========================================================
   CONTACT PAGE — FULL DROP-IN (GRID LOCKED)
   ========================================================= */
body.contact-index-index .column.main {
  padding-left: 0;
  padding-right: 0;
}
body.contact-index-index {
  --hc-max: 1200px;
  --hc-pad-desktop: 64px;
  --hc-pad-tablet: 32px;
  --hc-pad-mobile: 24px;
}
/* Full bleed rows */
body.contact-index-index .hc-contact,
body.contact-index-index .hc-contact-cta {
  position: relative;
  left: 50%;
  right: 50%;
  width: 100vw;
  margin-left: -50vw;
  margin-right: -50vw;
}
/* Top contact section */
body.contact-index-index .hc-contact {
  background: #f4f1ec;
  padding: 90px 0;
}
body.contact-index-index .hc-contact__inner {
  max-width: var(--hc-max);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--hc-pad-desktop);
  padding-right: var(--hc-pad-desktop);
  box-sizing: border-box;
}
body.contact-index-index .hc-contact__inner > .pagebuilder-column-line {
  display: flex;
  gap: 80px;
  align-items: flex-start;
}
body.contact-index-index .hc-contact__left,
body.contact-index-index .hc-contact__right {
  min-width: 0;
}
body.contact-index-index .hc-contact__left h2 {
  font-size: 44px;
  line-height: 1.1;
  font-weight: 600;
  margin: 0 0 16px;
  color: #111;
}
body.contact-index-index .hc-contact__left p {
  font-size: 14px;
  line-height: 1.85;
  color: #333;
  margin: 0 0 14px;
  max-width: 520px;
}
body.contact-index-index .hc-contact__left a {
  color: #111;
  text-decoration: underline;
}
/* Remove theme form panels */
body.contact-index-index .hc-contact__right form#contact-form,
body.contact-index-index .hc-contact__right form.form.contact,
body.contact-index-index .hc-contact__right form#contact-form .fieldset {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
/* Hide legend + note */
body.contact-index-index form#contact-form .legend,
body.contact-index-index form#contact-form .field.note {
  display: none !important;
}
/* Neutralize float layout */
body.contact-index-index .hc-contact__right form#contact-form .fieldset > .field {
  float: none !important;
  clear: none !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}
body.contact-index-index .hc-contact__right form#contact-form .fieldset > input[type="hidden"] {
  display: none !important;
}
/* Labels */
body.contact-index-index form#contact-form .field > .label {
  display: block;
  margin: 0 0 6px;
  font-size: 12px;
  letter-spacing: 0.02em;
  font-weight: 600;
  color: #111;
}
/* Inputs */
body.contact-index-index form#contact-form input.input-text,
body.contact-index-index form#contact-form textarea.input-text,
body.contact-index-index form#contact-form select.select {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(0, 0, 0, 0.25);
  background: #fff;
  color: #111;
  border-radius: 0;
  padding: 10px 12px;
  font-size: 14px;
  line-height: 1.4;
  box-shadow: none;
}
/* Form grid */
body.contact-index-index .hc-contact__right form#contact-form .fieldset {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 18px 22px;
  align-items: start;
  grid-template-areas: "first last" "email phone" "topic topic" "radios radios" "comment comment";
}
body.contact-index-index form#contact-form .field.firstname {
  grid-area: first;
}
body.contact-index-index form#contact-form .field.lastname {
  grid-area: last;
}
body.contact-index-index form#contact-form .field.email {
  grid-area: email;
}
body.contact-index-index form#contact-form .field.telephone {
  grid-area: phone;
}
body.contact-index-index form#contact-form .field.topic {
  grid-area: topic;
}
body.contact-index-index form#contact-form .field.describe {
  grid-area: radios;
}
body.contact-index-index form#contact-form .field.comment {
  grid-area: comment;
}
/* Radios: 2-col list */
body.contact-index-index .hc-contact-radios {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px 18px;
  margin-top: 6px;
}
body.contact-index-index .hc-contact-radios .hc-radio {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  color: #111;
}
body.contact-index-index .hc-contact-radios .hc-radio input[type="radio"] {
  margin: 0;
}
/* Comment height */
body.contact-index-index form#contact-form .field.comment textarea.input-text {
  min-height: 200px;
  resize: vertical;
}
/* Submit button */
body.contact-index-index form#contact-form .actions-toolbar {
  margin-top: 22px;
}
body.contact-index-index form#contact-form .actions-toolbar .primary {
  display: flex;
  justify-content: flex-start;
  width: auto;
}
body.contact-index-index form#contact-form button.action.submit.primary {
  width: auto;
  min-width: 160px;
  padding: 14px 28px;
  background: #c14c2d;
  border: 1px solid #c14c2d;
  color: #fff;
  font-weight: 600;
  font-size: 16px;
  border-radius: 0;
  box-shadow: none;
}
body.contact-index-index form#contact-form button.action.submit.primary:hover {
  filter: brightness(0.95);
}
/* Bottom CTA */
body.contact-index-index .hc-contact-cta {
  background: #c14c2d;
  padding: 110px 0;
}
body.contact-index-index .hc-contact-cta > .pagebuilder-column-group {
  max-width: var(--hc-max);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--hc-pad-desktop);
  padding-right: var(--hc-pad-desktop);
  box-sizing: border-box;
  text-align: center;
}
body.contact-index-index .hc-contact-cta h2 {
  font-size: 44px;
  line-height: 1.1;
  font-weight: 600;
  margin: 0 0 14px;
  color: #201E1D;
}
body.contact-index-index .hc-contact-cta p {
  font-size: 14px;
  line-height: 1.7;
  margin: 0 0 26px;
  color: #201E1D;
}
body.contact-index-index .hc-contact-cta .pagebuilder-button-primary,
body.contact-index-index .hc-contact-cta a.pagebuilder-button-primary,
body.contact-index-index .hc-contact-cta .action.primary {
  display: inline-block;
  background: #201E1D;
  border: 1px solid #201E1D;
  color: #fff;
  padding: 14px 22px;
  font-weight: 600;
  border-radius: 0;
  text-decoration: none;
}
body.contact-index-index .hc-contact-cta .pagebuilder-button-primary:hover,
body.contact-index-index .hc-contact-cta a.pagebuilder-button-primary:hover,
body.contact-index-index .hc-contact-cta .action.primary:hover {
  filter: brightness(0.95);
}
/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width: 1024px) {
  /* Hero */
  .hc-hero > .pagebuilder-column-group,
  .hc-hero > .pagebuilder-column-group > .pagebuilder-column-line {
    padding-left: var(--hc-gutter-x-md) !important;
    padding-right: var(--hc-gutter-x-md) !important;
  }
  .hc-hero > .pagebuilder-column-group > .pagebuilder-column-line {
    column-gap: 40px;
  }
  .hc-hero .hc-hero-title {
    font-size: 44px;
  }
  /* Section gutters */
  .hc-featured .pagebuilder-column-line,
  .hc-expect .pagebuilder-column-line,
  .hc-cta .pagebuilder-column-line,
  .hc-split__inner,
  .widget-product-carousel,
  .widget-product-carousel .slick-dots,
  .hc-homepage-cta .pagebuilder-column-group,
  .hc-homepage-cta .pagebuilder-column-line {
    padding-left: var(--hc-gutter-x-md);
    padding-right: var(--hc-gutter-x-md);
  }
  .hc-split__inner .pagebuilder-column-line {
    column-gap: var(--hc-split-gap-md);
  }
  /* Contact padding */
  body.contact-index-index .hc-contact__inner {
    padding-left: var(--hc-pad-tablet);
    padding-right: var(--hc-pad-tablet);
  }
  body.contact-index-index .hc-contact__inner > .pagebuilder-column-line {
    gap: 48px;
  }
  body.contact-index-index .hc-contact-cta > .pagebuilder-column-group {
    padding-left: var(--hc-pad-tablet);
    padding-right: var(--hc-pad-tablet);
  }
}
@media (max-width: 900px) {
  /* Contact stack */
  body.contact-index-index .hc-contact {
    padding: 70px 0;
  }
  body.contact-index-index .hc-contact__inner > .pagebuilder-column-line {
    display: block;
  }
  body.contact-index-index .hc-contact__left {
    margin-bottom: 28px;
  }
}
@media (max-width: 768px) {
  /* Hero stack */
  .hc-hero > .pagebuilder-column-group,
  .hc-hero > .pagebuilder-column-group > .pagebuilder-column-line {
    padding-left: var(--hc-gutter-x-sm) !important;
    padding-right: var(--hc-gutter-x-sm) !important;
  }
  .hc-hero > .pagebuilder-column-group > .pagebuilder-column-line {
    grid-template-columns: 1fr;
    row-gap: 18px;
  }
  .hc-hero .hc-hero-title {
    font-size: 36px;
  }
  /* Setup */
  .hc-setup .pagebuilder-column-line {
    gap: 16px;
  }
  .hc-setup .hc-setup-card--dark {
    aspect-ratio: auto;
    padding: 20px !important;
  }
  /* Section spacing */
  .hc-expect {
    padding: 54px 0;
  }
  .hc-cta {
    padding: 60px 0;
  }
  .hc-homepage-cta {
    padding: 60px 0 !important;
  }
  .hc-featured {
    padding: 60px 0 28px;
  }
  /* Section gutters */
  .hc-featured .pagebuilder-column-line,
  .hc-expect .pagebuilder-column-line,
  .hc-cta .pagebuilder-column-line,
  .hc-split__inner,
  .widget-product-carousel,
  .widget-product-carousel .slick-dots,
  .hc-homepage-cta .pagebuilder-column-group,
  .hc-homepage-cta .pagebuilder-column-line {
    padding-left: var(--hc-gutter-x-sm);
    padding-right: var(--hc-gutter-x-sm);
  }
  .hc-split__inner {
    padding-top: 54px;
    padding-bottom: 54px;
  }
  .hc-split__inner .pagebuilder-column-line {
    column-gap: var(--hc-split-gap-sm);
  }
  /* Contact mobile padding */
  body.contact-index-index .hc-contact__inner {
    padding-left: var(--hc-pad-mobile);
    padding-right: var(--hc-pad-mobile);
  }
  body.contact-index-index .hc-contact-cta > .pagebuilder-column-group {
    padding-left: var(--hc-pad-mobile);
    padding-right: var(--hc-pad-mobile);
  }
  /* Contact form stack */
  body.contact-index-index .hc-contact__right form#contact-form .fieldset {
    grid-template-columns: 1fr;
    grid-template-areas: "first" "last" "email" "phone" "topic" "radios" "comment";
  }
  body.contact-index-index .hc-contact-radios {
    grid-template-columns: 1fr;
  }
  body.contact-index-index form#contact-form .actions-toolbar .primary {
    justify-content: center;
  }
}
@media (max-width: 480px) {
  .hc-hero .hc-hero-title {
    font-size: 30px;
  }
  .hc-hero .hc-hero-text {
    font-size: 13px;
  }
}
@media (max-width: 1100px) {
  .hc-footer__top {
    grid-template-columns: 220px 1fr 1fr;
  }
  .hc-footer__col--subscribe {
    grid-column: -1;
  }
}
@media (max-width: 768px) {
  .hc-footer__inner {
    padding: 0 20px;
  }
  .hc-footer__top {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .hc-footer__newsletter form.form.subscribe {
    flex-direction: column;
    gap: 12px;
  }
  .hc-footer__bottom {
    flex-direction: column;
    align-items: flex-start;
  }
}
/* =========================================================
   HERO ALIGNMENT FIX
   Make hero H1/paragraph/button align with the section below
   (removes PB-injected padding on the left column)
   ========================================================= */
/* 1) Keep the container gutters (already working) */
.hc-hero > .pagebuilder-column-group,
.hc-hero > .pagebuilder-column-group > .pagebuilder-column-line {
  padding-left: var(--hc-gutter-x) !important;
  padding-right: var(--hc-gutter-x) !important;
}
/* 2) Remove any extra padding PB put on hero columns */
.hc-hero > .pagebuilder-column-group > .pagebuilder-column-line > .pagebuilder-column {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
/* 3) Specifically nuke padding on the left column (your content column) */
.hc-hero .hc-hero-left {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
}
/* Responsive gutters stay matched */
@media (max-width: 1024px) {
  .hc-hero > .pagebuilder-column-group,
  .hc-hero > .pagebuilder-column-group > .pagebuilder-column-line {
    padding-left: var(--hc-gutter-x-md) !important;
    padding-right: var(--hc-gutter-x-md) !important;
  }
}
@media (max-width: 768px) {
  .hc-hero > .pagebuilder-column-group,
  .hc-hero > .pagebuilder-column-group > .pagebuilder-column-line {
    padding-left: var(--hc-gutter-x-sm) !important;
    padding-right: var(--hc-gutter-x-sm) !important;
  }
}
/* =========================================================
   HERO LEFT-EDGE ALIGNMENT (match .hc-split__inner)
   - Put gutters ONLY on hero column-group (same as split section)
   - Remove padding from hero column-line + columns
   - Keep 2-col grid so left doesn't stretch when right is empty
   ========================================================= */
/* 1) Hero container: match the split section container behavior */
.hc-hero > .pagebuilder-column-group {
  max-width: var(--hc-max-width) !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
  padding-left: var(--hc-gutter-x) !important;
  padding-right: var(--hc-gutter-x) !important;
}
/* 2) Remove any extra inset on the inner line (this is the usual culprit) */
.hc-hero > .pagebuilder-column-group > .pagebuilder-column-line {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  /* Keep the fixed two-column layout */
  display: grid !important;
  grid-template-columns: minmax(0, 640px) 1fr;
  column-gap: 64px;
  align-items: center;
}
/* 3) Remove PB-injected padding on the columns themselves */
.hc-hero > .pagebuilder-column-group > .pagebuilder-column-line > .pagebuilder-column,
.hc-hero .hc-hero-left {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
/* Prevent overflow */
.hc-hero .pagebuilder-column,
.hc-hero .pagebuilder-content-type {
  min-width: 0;
}
/* =========================================================
   RESPONSIVE (match .hc-split__inner gutters)
   ========================================================= */
@media (max-width: 1024px) {
  .hc-hero > .pagebuilder-column-group {
    padding-left: var(--hc-gutter-x-md) !important;
    padding-right: var(--hc-gutter-x-md) !important;
  }
  .hc-hero > .pagebuilder-column-group > .pagebuilder-column-line {
    column-gap: 40px;
  }
}
@media (max-width: 768px) {
  .hc-hero > .pagebuilder-column-group {
    padding-left: var(--hc-gutter-x-sm) !important;
    padding-right: var(--hc-gutter-x-sm) !important;
  }
  .hc-hero > .pagebuilder-column-group > .pagebuilder-column-line {
    grid-template-columns: 1fr;
    row-gap: 18px;
  }
}
/* =========================================
   Heatcraft - About Us (cms-about-us)
   Magento 2.4.7 / Luma-based / Page Builder

   Requirements implemented:
   - Same gutter system as homepage (1200 max / 64-32-24)
   - All H2s font-weight: 600
   - All sections contained to the grid
   - ONLY the background of "From Waste to Fire" is full-bleed
   - Fix: hc-made ("Made for better fires") has correct gutters on ALL breakpoints
   ========================================= */
body.cms-about-us {
  /* -------------------------
     Shared gutter system (match homepage)
     ------------------------- */
  --hc-max-width: 1200px;
  --hc-gutter-x: 64px;
  --hc-gutter-x-md: 32px;
  --hc-gutter-x-sm: 24px;
  /* All H2s consistent */
  /* ================================
     Global section spacing
     ================================ */
  /* ================================
     HERO (flat PB row, no columns)
     ================================ */
  /* Hero overlay */
  /* ================================
     Made for better fires (2-column)
     IMPORTANT: This section lives inside a PB "contained" row,
     so we explicitly apply our gutters to the inner column-group.
     ================================ */
  /* GUTTERS FOR hc-made (ALL BREAKPOINTS) */
  /* ================================
     From waste to fire
     Background full-bleed, inner content contained
     ================================ */
  /* Inner contained wrapper */
  /* Typography inside process section */
  /* Target the SECOND column line = step cards row */
  /* Each card column */
  /* Image spacing */
  /* Text padding under images */
  /* STEP label (first paragraph) */
  /* Arrows between the 3 step images */
  /* ================================
     CTA (contained to homepage gutters)
     ================================ */
  /* CTA gutters */
  /* ================================
     Responsive – match homepage gutters
     ================================ */
}
body.cms-about-us h2 {
  font-weight: 600;
}
body.cms-about-us .hc-section {
  padding: 90px 0;
}
body.cms-about-us .hc-hero {
  min-height: 320px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding-left: var(--hc-gutter-x);
  padding-right: var(--hc-gutter-x);
}
body.cms-about-us .hc-hero h1 {
  color: #fff;
  font-weight: 700;
  font-size: 56px;
  line-height: 1.05;
  margin: 0 0 14px;
  max-width: 900px;
}
body.cms-about-us .hc-hero p {
  color: rgba(255, 255, 255, 0.85);
  font-size: 15px;
  line-height: 1.6;
  margin: 0;
  max-width: 520px;
}
body.cms-about-us .hc-hero {
  position: relative;
  overflow: hidden;
}
body.cms-about-us .hc-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 1;
}
body.cms-about-us .hc-hero > * {
  position: relative;
  z-index: 2;
}
body.cms-about-us .hc-made {
  padding: 95px 0;
}
body.cms-about-us .hc-made .pagebuilder-column-group {
  display: flex;
  gap: 80px;
  align-items: center;
}
body.cms-about-us .hc-made h2 {
  font-size: 44px;
  line-height: 1.1;
  margin: 0 0 18px;
  font-weight: 600;
  color: #222;
}
body.cms-about-us .hc-made p {
  font-size: 14px;
  line-height: 1.85;
  color: #3a3a3a;
  margin: 0 0 18px;
  max-width: 560px;
}
body.cms-about-us .hc-made .pagebuilder-image img,
body.cms-about-us .hc-made figure[data-content-type="image"] img {
  width: 100%;
  height: auto;
  display: block;
}
body.cms-about-us .hc-made > .pagebuilder-column-group {
  max-width: var(--hc-max-width);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--hc-gutter-x);
  padding-right: var(--hc-gutter-x);
  box-sizing: border-box;
}
body.cms-about-us .hc-process {
  background: #f4f1ec;
  /* full-bleed background */
  padding: 95px 0 80px;
}
body.cms-about-us .hc-process > .pagebuilder-column-group {
  max-width: var(--hc-max-width);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--hc-gutter-x);
  padding-right: var(--hc-gutter-x);
  box-sizing: border-box;
}
body.cms-about-us .hc-process h2 {
  font-size: 44px;
  line-height: 1.1;
  margin: 0 0 16px;
  font-weight: 600;
  color: #222;
}
body.cms-about-us .hc-process p {
  font-size: 14px;
  line-height: 1.85;
  color: #3a3a3a;
  margin: 0 0 14px;
  max-width: 760px;
}
body.cms-about-us .hc-process > .pagebuilder-column-group > .pagebuilder-column-line:nth-child(2) {
  display: flex;
  gap: 48px;
  margin-top: 26px;
  align-items: flex-start;
}
body.cms-about-us .hc-process > .pagebuilder-column-group > .pagebuilder-column-line:nth-child(2) > .pagebuilder-column {
  position: relative;
  padding: 0;
  flex: 1 1 0;
  min-width: 0;
}
body.cms-about-us .hc-process > .pagebuilder-column-group > .pagebuilder-column-line:nth-child(2) > .pagebuilder-column > [data-content-type="image"],
body.cms-about-us .hc-process > .pagebuilder-column-group > .pagebuilder-column-line:nth-child(2) > .pagebuilder-column > figure[data-content-type="image"] {
  position: relative;
  margin: 0 0 18px;
}
body.cms-about-us .hc-process figure[data-content-type="image"] img {
  width: 100%;
  height: auto;
  display: block;
}
body.cms-about-us .hc-process > .pagebuilder-column-group > .pagebuilder-column-line:nth-child(2) > .pagebuilder-column > [data-content-type="text"] {
  padding: 0 2px;
}
body.cms-about-us .hc-process > .pagebuilder-column-group > .pagebuilder-column-line:nth-child(2) > .pagebuilder-column > [data-content-type="text"] > p:first-child {
  color: #c4552d;
  font-size: 11px;
  letter-spacing: .08em;
  font-weight: 700;
  margin: 0 0 8px;
  text-transform: uppercase;
}
body.cms-about-us .hc-process h3 {
  font-size: 18px;
  line-height: 1.2;
  margin: 0 0 10px;
  font-weight: 700;
  color: #222;
}
body.cms-about-us .hc-process > .pagebuilder-column-group > .pagebuilder-column-line:nth-child(2) > .pagebuilder-column:nth-child(1) figure[data-content-type="image"]::after,
body.cms-about-us .hc-process > .pagebuilder-column-group > .pagebuilder-column-line:nth-child(2) > .pagebuilder-column:nth-child(2) figure[data-content-type="image"]::after {
  content: "→";
  position: absolute;
  top: 50%;
  right: -36px;
  transform: translateY(-50%);
  font-size: 28px;
  color: rgba(0, 0, 0, 0.35);
  line-height: 1;
  pointer-events: none;
}
body.cms-about-us .hc-cta {
  padding: 85px 0 95px;
  text-align: center;
  /* Do not change button styling */
}
body.cms-about-us .hc-cta h2 {
  font-size: 44px;
  line-height: 1.1;
  margin: 0 0 14px;
  font-weight: 600;
  color: #222;
}
body.cms-about-us .hc-cta p {
  font-size: 13px;
  line-height: 1.7;
  margin: 0 0 24px;
  color: #3a3a3a;
  max-width: none;
}
body.cms-about-us .hc-cta .pagebuilder-button-primary {
  margin-top: 6px;
}
body.cms-about-us .hc-cta > .pagebuilder-column-group,
body.cms-about-us .hc-cta > .pagebuilder-column-line {
  max-width: var(--hc-max-width);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--hc-gutter-x);
  padding-right: var(--hc-gutter-x);
  box-sizing: border-box;
}
@media (max-width: 1024px) {
  body.cms-about-us .hc-hero {
    padding-left: var(--hc-gutter-x-md);
    padding-right: var(--hc-gutter-x-md);
  }
  body.cms-about-us .hc-made > .pagebuilder-column-group,
  body.cms-about-us .hc-process > .pagebuilder-column-group,
  body.cms-about-us .hc-cta > .pagebuilder-column-group,
  body.cms-about-us .hc-cta > .pagebuilder-column-line {
    padding-left: var(--hc-gutter-x-md);
    padding-right: var(--hc-gutter-x-md);
  }
}
@media (max-width: 900px) {
  body.cms-about-us {
    /* Stack the 3-step cards */
    /* Hide arrows on mobile */
    /* Stack the 3 step cards cleanly on mobile */
    /* Hide arrows on mobile */
  }
  body.cms-about-us .hc-hero {
    min-height: 260px;
    padding-top: 40px;
    padding-bottom: 40px;
  }
  body.cms-about-us .hc-hero h1 {
    font-size: 40px;
  }
  body.cms-about-us .hc-made .pagebuilder-column-group {
    display: block;
  }
  body.cms-about-us .hc-made .pagebuilder-column {
    margin-bottom: 24px;
  }
  body.cms-about-us .hc-process > .pagebuilder-column-group > .pagebuilder-column-line:nth-child(2) {
    display: block;
  }
  body.cms-about-us .hc-process figure[data-content-type="image"]::after {
    display: none;
  }
  body.cms-about-us .hc-section {
    padding: 60px 0;
  }
  body.cms-about-us .hc-process > .pagebuilder-column-group > .pagebuilder-column-line:nth-child(2) {
    display: block !important;
  }
  body.cms-about-us .hc-process > .pagebuilder-column-group > .pagebuilder-column-line:nth-child(2) > .pagebuilder-column {
    width: 100% !important;
    flex: none !important;
    max-width: none !important;
    margin-bottom: 28px;
    /* spacing between cards */
  }
  body.cms-about-us .hc-process > .pagebuilder-column-group > .pagebuilder-column-line:nth-child(2) > .pagebuilder-column:last-child {
    margin-bottom: 0;
  }
  body.cms-about-us .hc-process figure[data-content-type="image"]::after {
    display: none !important;
  }
}
@media (max-width: 768px) {
  body.cms-about-us .hc-hero {
    padding-left: var(--hc-gutter-x-sm);
    padding-right: var(--hc-gutter-x-sm);
  }
  body.cms-about-us .hc-made > .pagebuilder-column-group,
  body.cms-about-us .hc-process > .pagebuilder-column-group,
  body.cms-about-us .hc-cta > .pagebuilder-column-group,
  body.cms-about-us .hc-cta > .pagebuilder-column-line {
    padding-left: var(--hc-gutter-x-sm);
    padding-right: var(--hc-gutter-x-sm);
  }
}
.hc-faq {
  max-width: 900px;
  margin: 0 auto;
}
.hc-faq details {
  border-bottom: 1px solid #e6e2dc;
  padding: 16px 0;
}
.hc-faq summary {
  cursor: pointer;
  font-weight: 600;
  font-size: 18px;
  list-style: none;
  position: relative;
  padding-right: 28px;
}
.hc-faq summary::-webkit-details-marker {
  display: none;
}
.hc-faq summary:after {
  content: "+";
  position: absolute;
  right: 0;
  top: 0;
  font-size: 20px;
  line-height: 1.2;
}
.hc-faq details[open] summary:after {
  content: "–";
}
.hc-faq__body {
  padding-top: 10px;
  color: #3f3f3f;
  line-height: 1.6;
}
.hc-faq__body ul {
  margin: 8px 0 0 18px;
}
/* Desktop only */
@media (min-width: 1024px) {
  .hc-contact__inner {
    max-width: 1200px;
    margin: 0 auto;
  }
  .hc-contact__right {
    padding-right: 40px;
  }
}
/* Fix dropdown text clipping */
.hc-contact select.select {
  height: 48px;
  padding: 0 40px 0 12px;
  /* right padding ensures arrow doesn't overlap */
  line-height: normal;
  white-space: nowrap;
  overflow: visible;
}
/* Desktop gutter for full-bleed PageBuilder rows */
@media (min-width: 1024px) {
  /* Add overall left/right gutter so content doesn't hit viewport edge */
  .hc-contact .hc-contact__inner {
    padding-left: 40px !important;
    padding-right: 40px !important;
    box-sizing: border-box;
  }
  /* Optional: if you want EXTRA breathing room only on the form side */
  .hc-contact .hc-contact__right {
    padding-right: 20px !important;
    box-sizing: border-box;
  }
}
/* Contact page: prevent forced 600px form width from blowing out the layout */
@media (min-width: 769px), print {
  .contact-index-index .column:not(.sidebar-additional) .form.contact {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
}
@media (min-width: 1024px) {
  .hc-contact .hc-contact__inner {
    padding-right: 40px !important;
    padding-left: 40px !important;
    box-sizing: border-box;
  }
}
.contact-index-index .hc-contact .field.note.no-label {
  display: none;
}
/* Contact page button width fix */
.contact-index-index .hc-contact .actions-toolbar .action.submit {
  width: auto !important;
  display: inline-block;
  padding: 12px 28px;
  /* adjust to match your brand sizing */
}
@media (min-width: 769px), print {
  /* Prevent Magento from forcing full width */
  body.contact-index-index #contact-form .actions-toolbar .primary {
    width: auto !important;
  }
  body.contact-index-index #contact-form .actions-toolbar .primary .action {
    width: auto !important;
    display: inline-block;
  }
}
/* ===========================
   Footer – Mobile Stack Fix
   =========================== */
@media (max-width: 768px) {
  /* Make entire top section single column */
  .hc-footer__top {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
  }
  /* Reset any spanning */
  .hc-footer__col--subscribe {
    grid-column: auto !important;
  }
  /* Explicit stacking order (bulletproof) */
  .hc-footer__col--logo {
    order: 1;
  }
  .hc-footer__top > .hc-footer__col:nth-child(2) {
    order: 2;
  }
  .hc-footer__top > .hc-footer__col:nth-child(3) {
    order: 3;
  }
  .hc-footer__col--subscribe {
    order: 4;
  }
  /* Newsletter form stacks vertically */
  .hc-footer__subscribe-form {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  .hc-footer__subscribe-form input#newsletter {
    width: 100%;
  }
  .hc-footer__subscribe-form .action.subscribe.primary {
    width: 100%;
  }
  /* Optional: tighten bottom legal section on mobile */
  .hc-footer__bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
  }
  .hc-footer__legal {
    flex-direction: column;
    gap: 10px;
  }
}
body.contact-index-index .hc-contact-cta .pagebuilder-button-primary:hover,
body.contact-index-index .hc-contact-cta a.pagebuilder-button-primary:hover,
body.contact-index-index .hc-contact-cta .action.primary:hover {
  background: #474441;
  border: 1px solid #474441;
  color: #fff;
}
.dev-site-banner {
  position: sticky;
  /* or fixed for always-top */
  top: 0;
  background-color: #c14c2d;
  color: #fff;
  text-align: center;
  padding: 8px 0;
  font-size: 22px;
  font-weight: bold;
  z-index: 9999;
}
.page-print .logo {
  display: block;
  float: none;
  text-align: left;
}
@media print {
  * {
    -webkit-filter: none !important;
    background: transparent !important;
    color: #000000 !important;
    filter: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline !important;
  }
  pre,
  blockquote {
    border: 1px solid #999999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  .table-wrapper table {
    width: 100%;
    table-layout: fixed;
  }
  .table-wrapper table td {
    width: auto;
  }
  .table-wrapper table > tfoot > tr:first-child {
    border-top: 1px solid #999999;
  }
  .box,
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 1cm;
  }
  .block-content,
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  .block-content {
    page-break-before: avoid;
  }
  .block-title,
  h2,
  h3 {
    page-break-after: avoid;
  }
  .nav-toggle {
    display: none !important;
  }
  .sidebar,
  .nav-sections,
  .header.content > *[class],
  .panel.wrapper > *[class],
  .footer.content > *[class] {
    display: none;
  }
  .logo,
  .footer .copyright {
    display: block !important;
    margin: 10px 0;
  }
  .order-details-items .order-items .order-gift-message:not(.expanded-content) {
    height: auto;
    visibility: visible;
  }
  .column.main {
    float: none !important;
    width: 100% !important;
  }
  .breadcrumbs {
    margin: 0 auto;
    text-align: right;
  }
  .footer.content {
    padding: 0;
  }
  .hidden-print {
    display: none !important;
  }
}
