.info__box.home li a {font-size:16px;}
.card-overlay:before {background: transparent !important};

.alert-msg {
  padding: 15px;
  border-left: 1px solid rgba(255,255,255,.5);
  background-color: #fce0b6;
}


/* Custom Size Glass Page */
/* TABS */
#tabs {
  /*max-width: 1020px;*/
  padding-bottom: 50px;
  margin: auto;
  position: relative;
  color: #21325e;
}

#tabs .section__info {
  margin: 20px auto;
}

#tabs .info__box {
  position: relative;
  left: 0;
  top: 40px;
  right: 0;
  bottom: 0;
  overflow: auto;
  padding: 40px 30px;
  background: #fff;
  box-shadow: -1px 6px 18px rgba(0, 0, 0, 0.09);
  display: none;
}

.nav-tab {
  width: max-content;
  height: 115px;
  margin: auto;
  display:block;
}

.nav-tab h2 {
  margin-top: 0;
 /* font-family: 'Questrial', sans-serif;*/
  line-height: 1.1;
  text-transform: uppercase;
  font-size:2rem;
}

.nav-tab label:hover {
  transition: all .3s ease-in-out;
  border-bottom: 5px solid;
}

.nav-tab span {
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 1.4rem;
}

#ceramic, #tempered, #home, #a, #b, #c, #d, #e, #f, #g, #h, #i, #j, #k, #l, #m, #n, #o, #p, #q, #r, #s, #t, #u, #v, #w, #x, #y, #z {
  display: none;
}

.nav-tab label {
  float: left;
  text-align: center;
  cursor: pointer;
  z-index: 2;
  border-bottom: 1px solid #21325e;
  margin-right: 30px;
  padding: 16px 15px;
}

.nav-tab-letters {
  height: 60px;
  margin: auto;
}

.nav-tab-letters label {
  display: flex;
  align-items: center;
  justify-content: center; /* optional: centers horizontally too */
  height: 50px;            /* adjust based on your layout */
  padding: 0 8px;          /* horizontal spacing */
  font-size: 18px;
  cursor: pointer;

  cursor: pointer;
  z-index: 2;
  width: 50px;
  background-color: #f2f2f2;
  border: 1px solid #ddd;
}

@media only screen and (max-width: 450px) {
  .nav-tab label {
    margin-right: 5px;
    padding: 1px;
  }
  .nav-tab span {
    display: none;
  }
}

#ceramic:checked ~ nav [for="ceramic"],
#tempered:checked ~ nav [for="tempered"] {
  background: #ffffff;
  border: 1px solid #ffffff;
}

#ceramic:checked ~ .one,
#tempered:checked ~ .two, 
#home:checked ~ .home,
#a:checked ~ .a,
#b:checked ~ .b,
#c:checked ~ .c,
#d:checked ~ .d,
#e:checked ~ .e,
#f:checked ~ .f,
#g:checked ~ .g,
#h:checked ~ .h,
#i:checked ~ .i,
#j:checked ~ .j,
#k:checked ~ .k,
#l:checked ~ .l,
#m:checked ~ .m,
#n:checked ~ .n,
#o:checked ~ .o,
#p:checked ~ .p,
#q:checked ~ .q,
#r:checked ~ .r,
#s:checked ~ .s,
#t:checked ~ .t,
#u:checked ~ .u,
#v:checked ~ .v,
#w:checked ~ .w,
#x:checked ~ .x,
#y:checked ~ .y,
#z:checked ~ .z {
  display: flex;
  gap: 75px;
  align-items: center;
}
/* Grid system: Base row and column setup */
.row {
  display: flex;
  flex-wrap: wrap;
  margin-left: -0.75rem;
  margin-right: -0.75rem;
}
[class*="col-"] {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  box-sizing: border-box;
}

/* col-12 = full width by default */
.col-12 {
  flex: 0 0 100%;
  max-width: 100%;
}

/* Small breakpoint ≥576px */
@media (min-width: 576px) {
  .col-sm-1  { flex: 0 0 8.3333%;  max-width: 8.3333%; }
  .col-sm-2  { flex: 0 0 16.6667%; max-width: 16.6667%; }
  .col-sm-3  { flex: 0 0 25%;      max-width: 25%; }
  .col-sm-4  { flex: 0 0 33.3333%; max-width: 33.3333%; }
  .col-sm-5  { flex: 0 0 41.6667%; max-width: 41.6667%; }
  .col-sm-6  { flex: 0 0 50%;      max-width: 50%; }
  .col-sm-7  { flex: 0 0 58.3333%; max-width: 58.3333%; }
  .col-sm-8  { flex: 0 0 66.6667%; max-width: 66.6667%; }
  .col-sm-9  { flex: 0 0 75%;      max-width: 75%; }
  .col-sm-10 { flex: 0 0 83.3333%; max-width: 83.3333%; }
  .col-sm-11 { flex: 0 0 91.6667%; max-width: 91.6667%; }
  .col-sm-12 { flex: 0 0 100%;     max-width: 100%; }
}

.container {
  width: 100%;
  padding-left: 1rem;
  padding-right: 1rem;
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px; /* Or whatever fits your layout */
}

.info__box li a {
    font-size: 16px !important; }
/* TABS end */


/* CS Button */
.cs-button {
  margin-bottom: 10px;
  padding: 5px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  border: 1px solid lightgrey;
  border-radius: 3px;
  cursor: pointer;
}

.cs-button:hover {
  box-shadow: 0 0 11px rgba(33,33,33,.2);
}

.cs-button p {
  margin: 0;
}

/* END Custom Size Glass Page */

/* Tempered Glass Product */
#tempered-glass .product-info-secondary {
  border-top: none;
  margin-top: 0;
}
/* END Tempered Glass Product */

/* Selecting Glass Type Page */

.section-numbers {
  background-color: lightgrey;
    padding: 5px;
    border-radius: 2px;
}

/* END Selecting Glass Type Page */

/* Cleaning Glass Page */

.cleaning-list {
  background: #d5f3fe;
  padding: 10px 0;
  border-radius: 5px;
}

.cleaning-icons {
  font-size: 48px;
  padding: 10px 0;
}

/* END Cleaning Glass Page */

/* Stove Brands Page */
.info__box ul {
  list-style: none;
}

.top-letter {
  padding-left: 20px;
}

.banner-container {

}

#shopify-block-894e0a1c-38c8-4453-af64-2f357cd7c2a8 {
  padding-top: 4rem; padding-bottom:4rem; border-bottom:1px solid #dadada; border-top:1px solid #dadada; /*margin-bottom:4rem;*/
}
#text-banner-widget_frame {
  margin-bottom:0 !important
}

#header > div.color-background-1 > div > div > div.head-slot.head-slot-end > div > a {display:none;}
.footer-logo-list {
  display: flex;
  align-items: flex-end; /* aligns logos to bottom */
  gap: 1.5rem;
  padding-bottom: 20px;
  list-style: none;
  margin: 0;
  padding-left: 0;
}

.footer-logo-list li {
  display: flex;
  align-items: flex-end;
}

.footer-logo-list img {
 max-height: 35px;
  width: auto;
  display: block;
}


.handle-specs {
  font-size: 13px;
  color: #444;
  margin-top: 0.25rem;
}

.handle-specs div {display:inline; padding-right:8px; margin-right:8px; border-right:1px solid #000; line-height:15px;}
/* =========================================
   OPTION CALCULATOR POPUP — CLEANED
   ========================================= */

/* Overlay */
.overlay-popup.my-custom-pop-view{
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  background: rgba(0,0,0,.55) !important;
}

/* Modal */
.overlay-popup.my-custom-pop-view .opc-popup{
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%,-50%) !important;

  width: min(900px, calc(100vw - 32px)) !important;
  max-height: calc(100vh - 32px) !important;

  background: #fff !important;
  border: 1px solid rgba(0,0,0,.12) !important;
  border-radius: 14px !important;
  box-shadow: 0 24px 70px rgba(0,0,0,.35) !important;

  overflow: hidden !important; /* prevent inner scrollbars from leaking out */
}

/* Stop fancybox wrappers from acting like full-height scroll containers */
.overlay-popup.my-custom-pop-view .fancybox-outer,
.overlay-popup.my-custom-pop-view .fancybox-inner{
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}

/* Container layout */
.overlay-popup.my-custom-pop-view .container-custom.section.cart_notification{
  margin: 0 !important;
  padding: 22px 24px 18px !important;
  width: 100% !important;
  box-sizing: border-box !important;

  display: grid !important;
  grid-template-columns: 280px 1fr !important;
  gap: 18px !important;
  align-items: start !important;
}

/* Close */
.overlay-popup.my-custom-pop-view .opc-popup > .close{
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 999px !important;
  background: rgba(0,0,0,.06) !important;
  display: grid !important;
  place-items: center !important;
  cursor: pointer !important;
  z-index: 10 !important;
  font-size: 16px !important;
  line-height: 1 !important;
}
.overlay-popup.my-custom-pop-view .opc-popup > .close:hover{
  background: rgba(0,0,0,.10) !important;
}

/* Image card */
.overlay-popup.my-custom-pop-view .columns.product_image img{
  width: 100% !important;
  height: auto !important;
  border-radius: 12px !important;
  border: 1px solid rgba(0,0,0,.10) !important;
  background: #fff !important;
}

/* Right column wrapper */
.overlay-popup.my-custom-pop-view .cart_notification_content{
  position: relative !important;
  padding-right: 60px !important; /* room for the close icon area visually */
}

/* Header */
.overlay-popup.my-custom-pop-view .cart-header-view{
  margin: 0 0 10px !important;
  padding: 0 0 10px !important;

  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;

  border-bottom: 1px solid rgba(0,0,0,.10) !important;
}

/* View Cart (no absolute positioning; styled as secondary button) */
.overlay-popup.my-custom-pop-view .view_cart{
  position: static !important;
  margin: 0 !important;
}

.overlay-popup.my-custom-pop-view .view_cart a{
  display: inline-block !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  text-decoration: none !important;

  padding: 6px 10px !important;
  border-radius: 6px !important;
  background: rgba(236,28,36,.08) !important;
  margin-left:20px;
}
.overlay-popup.my-custom-pop-view .view_cart a:hover{
  background: rgba(236,28,36,.14) !important;
}

/* Product title + details */
.overlay-popup.my-custom-pop-view .popup-title{
  margin: 10px 0 8px !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  text-transform: none !important;
  color: #030504 !important;
}
.overlay-popup.my-custom-pop-view #properties_container .property-values{
  margin: 2px 0 !important;
  font-size: 14px !important;
  color: rgba(0,0,0,.78) !important;
}

/* Checkout area */
.overlay-popup.my-custom-pop-view #checkout.action_button{
  border-radius: 999px !important;
  padding: 10px 16px !important;
  font-weight: 800 !important;
  border: 1px solid rgba(0,0,0,.10) !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.12) !important;
}
.overlay-popup.my-custom-pop-view .continue_shopping{
  font-size: 14px !important;
}
.overlay-popup.my-custom-pop-view .continue_shopping a{
  text-decoration: underline !important;
  font-weight: 700 !important;
}

/* Divider before suggestions */
.overlay-popup.my-custom-pop-view .cart-header-view-suggestion{
  border: 0 !important;
  border-top: 1px solid rgba(0,0,0,.10) !important;
  margin: 14px 0 12px !important;
}

/* Suggestions header */
.overlay-popup.my-custom-pop-view .suggestion-header-label{
  margin: 0 !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  text-align: center !important;
}

/* Suggestions grid */
.overlay-popup.my-custom-pop-view .suggestion-listing{
  margin: 10px 0 0 !important;
  padding: 0 24px 18px !important;

  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

/* Each suggestion as a card */
.overlay-popup.my-custom-pop-view .suggestion-list-view{
  background: #fff !important;
  border: 1px solid rgba(0,0,0,.10) !important;
  border-radius: 12px !important;
  padding: 12px !important;

  display: grid !important;
  grid-template-rows: auto 1fr !important;
  gap: 10px !important;
  justify-items: center !important;
  text-align: center !important;
}

/* Suggestion image */
.overlay-popup.my-custom-pop-view .suggestion-list-view img{
  width: 86px !important;
  height: 86px !important;
  object-fit: contain !important;
  border-radius: 10px !important;
  background: rgba(0,0,0,.03) !important;
  border: 1px solid rgba(0,0,0,.08) !important;
  padding: 8px !important;
}

/* Suggestion title clamp */
.overlay-popup.my-custom-pop-view .suggestion-list-view label{
  color: rgba(0,0,0,.80) !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  margin: 0 !important;

  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

/* Mobile */
@media (max-width:760px){
  .overlay-popup.my-custom-pop-view .opc-popup{
    width: calc(100vw - 20px) !important;
  }
  .overlay-popup.my-custom-pop-view .container-custom.section.cart_notification{
    grid-template-columns: 1fr !important;
  }
  .overlay-popup.my-custom-pop-view .columns.product_image{
    max-width: 160px !important;
  }
  .overlay-popup.my-custom-pop-view .suggestion-listing{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    padding: 0 18px 16px !important;
  }
}
.b2b-cart-note {
  margin-top: 12px;
  padding: 10px 14px;
  background: #f8f8f8;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  color: #333;
}

/* Additiional pop up styles */
/* Make popup actions cleaner */
.overlay-popup.my-custom-pop-view .continue_shopping a{
  display:inline-block!important;
  text-decoration:none!important;
  font-weight:700!important;
  color:#ec1c24!important;
  margin-left:12px!important;
}

/* Hide ugly raw URL-looking continue shopping link if app still outputs it */
.overlay-popup.my-custom-pop-view .continue_shopping a[href*="total-hearth.com"]{
  font-size:0!important;
}

.overlay-popup.my-custom-pop-view .continue_shopping a[href*="total-hearth.com"]::after{
  content:"Continue Shopping";
  font-size:14px!important;
}

/* Make checkout clearly primary */
.overlay-popup.my-custom-pop-view #checkout.action_button{
  background:#ec1c24!important;
  color:#fff!important;
  border-color:#ec1c24!important;
}

/* Make View Cart clearly secondary */
.overlay-popup.my-custom-pop-view .view_cart a{
  background:#fff0f0!important;
  color:#ec1c24!important;
  border:1px solid rgba(236,28,36,.2)!important;
}

.overlay-popup.my-custom-pop-view .opc-popup{
  width:min(760px,calc(100vw - 32px))!important;
}

.overlay-popup.my-custom-pop-view .container-custom.section.cart_notification{
  grid-template-columns:240px 1fr!important;
 
}
.overlay-popup.my-custom-pop-view .fancybox-outer,
.overlay-popup.my-custom-pop-view .fancybox-inner,
.overlay-popup.my-custom-pop-view .container-custom.section.cart_notification{
  min-height:0!important;
}

.overlay-popup.my-custom-pop-view .container-custom.section.cart_notification{
  padding-bottom:20px!important;
}

.overlay-popup.my-custom-pop-view .opc-popup{
  height:auto!important;
  max-height:none!important;
}
.overlay-popup.my-custom-pop-view > .opc-popup > div,
.overlay-popup.my-custom-pop-view .fancybox-outer,
.overlay-popup.my-custom-pop-view .fancybox-inner{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
}

.overlay-popup.my-custom-pop-view .container-custom.section.cart_notification{
  padding:20px!important;
}

.overlay-popup.my-custom-pop-view .opc-popup{
  height:auto!important;
  min-height:0!important;
}

/* =========================================================
   Calculator readability + spacing (Total Hearth)
   Scopes to the embedded calculator block
   ========================================================= */

product-options-section.app-block,
product-options-section.app-block * {
  box-sizing: border-box;
}

/* Headings like "Enter Your Dimensions" */
product-options-section.app-block .optionTitle {
  font-size: 20px !important;
  font-weight: 700;
  margin: 10px 0px 0px 0px;
  border:none;
}

/* Field labels like "Dimensions", "Height", "Width", "Thickness" */
product-options-section.app-block .option-label,
product-options-section.app-block .opc-accordion-title {
  font-size: 18px !important;
  font-weight: 600;
  line-height: 1.25;
}

/* Min/max helper text */
product-options-section.app-block .min-max-container .min-value,
product-options-section.app-block .min-max-container .max-value {
  font-size: 14px !important;
  line-height: 1.2;
  opacity: 0.85;
}

/* Input + select sizing (this is usually the "too small" part) */
product-options-section.app-block input.measurement-input,
product-options-section.app-block select.measurement-dropdown,
product-options-section.app-block input.dropbtn,
product-options-section.app-block input.text-input {
  font-size: 18px !important;
  line-height: 1.2;
  min-height: 44px;              /* thumb-friendly */
  padding: 10px 12px;
}

/* Dropdown list items */
product-options-section.app-block .dropdown-label,
product-options-section.app-block .tab-view label {
  font-size: 18px !important;
  line-height: 1.2;
}

/* Unit label "in" */
product-options-section.app-block .unit-label {
  font-size: 16px !important;
  line-height: 1;
  margin-left: 8px;
}

/* Selected summary like "4 x 5 in" */
product-options-section.app-block .priceholder,
product-options-section.app-block .opc-selected-name,
product-options-section.app-block .addition-price-value {
  font-size: 16px !important;
}

/* Add to cart button text */
product-options-section.app-block .addToCartCustomButtonText {
  font-size: 18px !important;
  font-weight: 700;
}

/* Upload helper text (has inline font-size in HTML) */
product-options-section.app-block .file-types-info,
product-options-section.app-block .file-count {
  font-size: 14px !important;
  line-height: 1.25;
}

/* Make the Height/Width row feel less cramped */
product-options-section.app-block .measurement-input-field {
  margin-bottom: 14px;
}

/* Optional: reduce excessive separators if they feel heavy */
product-options-section.app-block hr.containerSeparator {
  margin: 14px 0;
  opacity: 0.35;
}

global-embedded-section .unit-label,
product-options-section .unit-label 
{
padding:14px !important;
}

/* CSS For How to measure on custom cut */
.measure-help-trigger {
  margin-bottom: 12px;
}

#measureGuideBtn {
  background: none;
  border: none;
  color: #d32f2f;
  font-weight: 600;
  cursor: pointer;
  padding: 0;
  font-size: 16px;
}

.measure-modal {
  display: none;
  position: fixed;
  z-index: 9999;
  inset: 0;
  background: rgba(0,0,0,0.5);
}

.measure-modal-content {
  background: #fff;
  max-width: 500px;
  margin: 8% auto;
  padding: 24px;
  border-radius: 8px;
}

.measure-close {
  float: right;
  cursor: pointer;
  font-size: 22px;
}

/* === Calculator helper block (right above app block) === */
.calc-helper{
  margin: 6px 0 -15px !important; /* tight */
  padding: 8px 12px;
  border-left: 3px solid rgba(211,47,47,0.35);
  background: rgba(0,0,0,0.02);
  border-radius: 6px;
}

.calc-helper__link{
  background: none;
  border: none;
  padding: 0;
  color: #b71c1c;
  font-weight: 600;
  cursor: pointer;
  font-size: 14px !important;
  line-height: 1.2;
}

.calc-helper__muted{
  color: rgba(0,0,0,0.55);
  font-weight: 600;
}

.calc-helper__note{
  margin-top: 6px;
  font-size: 13px !important;
  color: rgba(0,0,0,0.75);
  line-height: 1.2;
}

/* Reduce gap between helper and calculator title */
product-options-section.app-block{
  margin-top: 6px !important;
}

/* Modal polish (small + clean) */
.measure-modal{
  display:none;
  position:fixed;
  inset:0;
  z-index:9999;
  background:rgba(0,0,0,0.5);
}
.measure-modal-content{
  background:#fff;
  max-width:520px;
  margin:8% auto;
  padding:22px;
  border-radius:10px;
  z-index:9;
}
.measure-close{
  float:right;
  background:none;
  border:none;
  font-size:22px;
  cursor:pointer;
   z-index:10;
}
/* Your modal should always be above Shopify's modal system */
#measureGuideModal {
  position: fixed;
  inset: 0;
  z-index: 999999 !important;
}

/* Backdrop */
#measureGuideModal .measure-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.55);
}

/* Modal panel */
#measureGuideModal .measure-modal-content {
  position: relative;
  z-index: 3;
  max-width: 900px;
  width: min(900px, calc(100vw - 32px));
  margin: 6vh auto;
  background: #fff;
  border-radius: 14px;
  padding: 18px;
}

/* Safety: push Shopify product modal below */
.product-modal,
#ProductModal-template--25460493975920__main {
  z-index: 9990 !important;
}
/* Fix product and search dropdown above black on modal */
.product-media-main-wrapper, .header-global-search-select   {z-index:0 !important}

/* Always make the measure modal a true overlay */
#measureGuideModal.measure-modal{
  position: fixed;
  inset: 0;
  z-index: 20000 !important;
}

/* Backdrop (if you're using one via the modal container) */
#measureGuideModal.measure-modal{
  background: rgba(0,0,0,.45);
}

/* Modal panel */
#measureGuideModal .measure-modal-content{
  position: relative;
  z-index: 20001 !important;
}

/* When measure modal is open, push header UI behind it */
html.measure-modal-open .header,
html.measure-modal-open .header-wrapper,
html.measure-modal-open .header-group,
html.measure-modal-open .header-global-search,
html.measure-modal-open .header-search-global-form,
html.measure-modal-open .header-search-global-form [type="submit"],
html.measure-modal-open .predictive-search,
html.measure-modal-open predictive-search {
  z-index: 0 !important;
}

/* Optional but nice: prevent header interactions while modal is open */
html.measure-modal-open .header,
html.measure-modal-open .header-wrapper{
  pointer-events: none;
}

.calc-reassurance{
  margin-top: 10px;
  font-size: 13px;
  line-height: 1.4;
  opacity: 0.85;
}

.calc-reassurance__label{
  font-weight: 600;
}

.calc-reassurance__phone{
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
  white-space: nowrap;
}

.calc-reassurance__phone:hover{
  opacity: 0.85;
}

.calc-trustbadge{
  display: inline-block;
  margin-top: 10px;
}

.calc-trustbadge img{
  display: block;
  max-width: 100%;
  height: auto;
}

.calc-reassurance-list {
  font-size: 14px;
  line-height: 1.5;
  margin-top: 14px;
  color: #333;
}

.calc-reassurance-list span {
  display: block;
  margin-bottom: 6px;
}

.addToCartCustomButton {
  padding: 25px !important;
   margin-top: -12px !important;
}

/* Sticky Cart on mobile */
@media (max-width: 768px){
  
  /* Move chat button up above sticky bar */
  .template-product .Avada-Faqs_Button {
    z-index: 998 !important;
    bottom: 102px !important;
  }
.template-product.template-suffix-custom-size-2 .Avada-Faqs_Button, .template-suffix-custom-size-tempered-v2 .Avada-Faqs_Button {
  bottom: calc(102px + env(safe-area-inset-bottom)) !important;
}
  

  /*Custom cut
  product-options-section > div.add-to-cart-container  */
  product-options-section > div.add-to-cart-container {
    /*position: fixed;
    left: 0;
    bottom: 0;
    z-index: 5;
    width: 100%;
    margin-bottom: -10px;
    padding: 10px 0px;*/
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
    background: #fff;
    border-top: 1px solid #ccc;
    padding: 28px 14px calc(12px + env(safe-area-inset-bottom));
    box-shadow: 0 -8px 18px rgba(0,0,0,.08);
  }
  .addToCartCustomButton {padding:30px 25px !important;}
  
  /*All other products  */
   body.template-product:not(.template-suffix-custom-size-2):not(.template-suffix-custom-size-tempered-v2) form[id^="product-form-template--"][id$="__main"] > div {
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 5;
    width: 100%;
    /*margin-bottom: -10px;*/
    padding: 25px 30px;
    background: #fff;
    border-top: 1px solid #ccc;
    z-index: 999;
  }
}

/* ===== Sticky ATC base (mobile) ===== */
@media (max-width: 768px){

  /* Give the page room so content isn't hidden behind the sticky bar */
  body.template-product{
    padding-bottom: calc(102px + env(safe-area-inset-bottom));
  }

  /* Common sticky bar "paint" so Safari doesn't show page behind it */
  .th-sticky-atc-bar{
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0; /* we add safe-area via padding, not by moving it */
    z-index: 999;
    background: #fff;
    border-top: 1px solid #ccc;
    padding: 12px 14px calc(12px + env(safe-area-inset-bottom));
    box-shadow: 0 -8px 18px rgba(0,0,0,.08);
  }
}
.product-notices-group {
  margin: 16px 0 20px;
  padding: 12px;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  background: #fff;
}

.product-notices-group__heading {
  font-weight: 700;
  margin-bottom: 10px;
  color: #222;
  font-size: 15px;
}

.product-notice-card {
  background: #fff;
  border: 1px solid #e5e5e5;
  border-left: 5px solid #d6a100;
  border-radius: 7px;
  padding: 0;
  overflow: hidden;
  margin-bottom: 9px;
}

.product-notice-card:last-child {
  margin-bottom: 0;
}

.product-notice-card summary {
  cursor: pointer;
  list-style: none;
  padding: 11px 14px;
  font-weight: 700;
  color: #222;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.product-notice-card summary::-webkit-details-marker {
  display: none;
}

.product-notice-card summary::after {
  content: "+";
  font-size: 18px;
  line-height: 1;
  color: #555;
}

.product-notice-card[open] summary::after {
  content: "–";
}

.product-notice-card .notice-content {
  padding: 0 14px 13px;
  font-size: 12px;
  line-height: 1.45;
  color: #555;
}

.product-notice-card--yellow {
  border-left-color: #d6a100;
}

.product-notice-card--red {
  border-left-color: #c62828;
}

.product-notice-card--blue {
  border-left-color: #2f6f9f;
}

.product-notice-card--green {
  border-left-color: #2e7d32;
}

.product-notice-card--gray {
  border-left-color: #777;
}
.calc-helper--standard {
  margin: 0 0 12px !important;
  padding: 11px 14px;
  background: #fff;
  border: 1px solid #e5e5e5;
  border-left: 5px solid #d6322b;
  border-radius: 7px;
}

.calc-helper__content {
  font-size: 14px;
  line-height: 1.4;
  color: #444;
  margin-bottom: 6px;
}

.calc-helper__content strong {
  color: #222;
  font-weight: 700;
}

.calc-helper__button {
  background: none;
  border: 0;
  padding: 0;
  color: #d6322b;
  font-weight: 700;
  cursor: pointer;
  font-size: 15px;
}

.calc-helper__button span {
  font-weight: 400;
  font-size: 13px;
}

.calc-helper__note {
  margin-top: 5px;
  font-size: 12px;
  color: #555;
}

.measure-modal {
  display: none;
}

.measure-modal[aria-hidden="false"] {
  display: block;
}
.cart-notice-checkbox {
  margin: 12px 0;
  font-size: 13px;
  line-height: 1.4;
}

.cart-notice-checkbox label {
  display: flex;
  gap: 8px;
  align-items: flex-start;
}

.cart-notice-checkbox input {
  margin-top: 2px;
  flex: 0 0 auto;
}

.cart-notice-checkbox strong {
  color: #d6322b;
}
.cart-notice-checkbox {
  margin: 14px 0;
  padding: 12px 14px;
  background: #fff;
  border: 1px solid #e5e5e5;
  border-left: 5px solid #d6322b;
  border-radius: 7px;
  font-size: 13px;
  line-height: 1.4;
  color: #444;
}

.cart-notice-checkbox label {
  display: flex !important;
  gap: 9px;
  align-items: flex-start;
  margin: 0;
  cursor: pointer;
}

.cart-notice-checkbox input[type="checkbox"] {
  width: 17px !important;
  height: 17px !important;
  min-width: 17px;
  margin: 1px 0 0 !important;
  accent-color: #d6322b;
}

.cart-notice-checkbox span {
  display: block;
  font-size: 13px;
  line-height: 1.4;
  color: #444;
}

.cart-notice-checkbox span strong,
.cart-notice-checkbox span b {
  color: #d6322b;
  font-weight: 700;
}
.mini-cart-footer .cart-notice-checkbox,
.header-mini-cart-footer .cart-notice-checkbox {
  margin: 10px 0 12px;
  padding: 10px 12px;
}

.mini-cart-footer .cart-notice-checkbox span,
.header-mini-cart-footer .cart-notice-checkbox span {
  font-size: 12px;
}