/*
 * Nortei Solar Core · Frontend CSS module
 * File: 70-sticky-product-layout.css
 * Purpose: Sticky header responsive, producto single, modal de cotización y menú anidado.
 * Note: module order is intentional; preserve enqueue order unless testing the full cascade.
 */

.nsrm-custom-header{
  position:relative;
  z-index:9998;
  width:100%;
  margin:0;
  background:#fff;
}

.nsrm-custom-header__top{
  position:relative;
  z-index:1;
}

.nsrm-custom-header__bottom,
.nsrm-custom-header__bottom.is-sticky-active{
  position:sticky !important;
  top:var(--nsrm-sticky-top,0px) !important;
  z-index:9999;
  background:var(--nsrm-blue,#0c4f8a);
  box-shadow:0 10px 28px rgba(10,28,46,.14);
}

.nsrm-custom-header__nav-inner{
  width:min(calc(100% - 24px), 1280px);
  margin-inline:auto;
  min-height:60px;
  gap:18px;
}

.nsrm-custom-header__nav{
  flex:1 1 auto;
  justify-content:center;
}

.nsrm-custom-header__menu{
  flex-wrap:wrap;
  gap:34px;
}

.nsrm-custom-header__menu > li > a{
  min-height:60px;
  font-size:15px;
  letter-spacing:.01em;
}

.nsrm-custom-header__cart-wrap{
  margin-left:auto;
}

.nsrm-custom-header__cart{
  position:relative;
  right:auto;
  top:auto;
  transform:none;
  min-width:44px;
  min-height:44px;
}

@media (max-width: 1100px){
  .nsrm-custom-header__nav-inner{
    width:min(calc(100% - 20px), 100%);
    padding:0 12px;
  }
  .nsrm-custom-header__menu{
    gap:24px;
  }
}

@media (max-width: 860px){
  .nsrm-custom-header__top{
    padding:14px 12px 12px;
  }
  .nsrm-custom-header__logo img{
    max-width:min(100%, 220px);
    max-height:74px;
  }
  .nsrm-custom-header__nav-inner{
    min-height:58px;
    padding:0 12px;
    justify-content:space-between;
  }
  .nsrm-custom-header__toggle{
    display:inline-flex;
    order:1;
    align-items:center;
    justify-content:center;
  }
  .nsrm-custom-header__cart-wrap{
    order:3;
    margin-left:0;
  }
  .nsrm-custom-header__nav{
    position:absolute;
    top:100%;
    left:0;
    right:0;
    display:block;
    max-height:0;
    overflow:hidden;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    background:rgba(12,79,138,.98);
    transition:max-height .28s ease, opacity .22s ease, visibility .22s ease;
    box-shadow:0 18px 42px rgba(9,22,35,.18);
    border-top:1px solid rgba(255,255,255,.08);
  }
  .nsrm-custom-header.is-open .nsrm-custom-header__nav{
    max-height:80vh;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }
  .nsrm-custom-header__menu{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    padding:10px 0 14px;
  }
  .nsrm-custom-header__menu > li{
    width:100%;
  }
  .nsrm-custom-header__menu > li + li::before,
  .nsrm-custom-header__menu > li.menu-item-has-children > a::after{
    display:none !important;
  }
  .nsrm-custom-header__menu li a{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    width:100%;
    min-height:0;
    padding:14px 18px;
    font-size:15px;
    line-height:1.25;
  }
  .nsrm-custom-header__menu .sub-menu{
    position:static !important;
    display:block !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    box-shadow:none !important;
    background:rgba(6,37,66,.75) !important;
    margin:0 12px 10px;
    border-radius:12px;
    padding:6px 0;
  }
  .nsrm-custom-header__menu .sub-menu li a{
    padding:11px 14px;
    color:#dcecff;
  }
  .nsrm-custom-header__cart-panel{
    right:10px;
    left:auto;
    width:min(92vw, 340px);
  }
  html.nsrm-mobile-menu-open,
  html.nsrm-mobile-menu-open body{
    overflow:hidden;
  }
}

[data-nsrm-reveal],
.nsrm-stagger-target,
.nsrm-products-slide,
.nsrm-category-slide,
.nsrm-value-card,
.nsrm-service-card,
.nsrm-contact-card,
.nsrm-contact-form-shell{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
}

.nsrm-products-section,
.nsrm-category-section{ position:relative; }
.nsrm-products-section .nsrm-slider-frame,
.nsrm-category-section .nsrm-slider-frame{
  width:min(calc(100% - 24px), 1280px) !important;
  margin-inline:auto !important;
  padding-inline:72px !important;
  overflow:visible !important;
  position:relative !important;
}
.nsrm-products-section .nsrm-slider-shell,
.nsrm-category-section .nsrm-slider-shell{
  overflow:hidden !important;
}
.nsrm-products-section .nsrm-slider-frame > .nsrm-slider-nav,
.nsrm-category-section .nsrm-slider-frame > .nsrm-slider-nav{
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  z-index:40 !important;
}
.nsrm-products-section .nsrm-slider-frame > .nsrm-slider-nav .nsrm-slider-arrow,
.nsrm-category-section .nsrm-slider-frame > .nsrm-slider-nav .nsrm-slider-arrow{
  position:absolute !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:52px !important;
  height:52px !important;
  min-width:52px !important;
  border-radius:999px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  pointer-events:auto !important;
  background:#fff !important;
  color:var(--nsrm-blue,#0c4f8a) !important;
  border:1px solid rgba(12,79,138,.14) !important;
  box-shadow:0 14px 28px rgba(12,79,138,.16) !important;
  z-index:41 !important;
}
.nsrm-products-section .nsrm-slider-frame > .nsrm-slider-nav .nsrm-slider-arrow--prev,
.nsrm-category-section .nsrm-slider-frame > .nsrm-slider-nav .nsrm-slider-arrow--prev{
  left:12px !important;
  right:auto !important;
}
.nsrm-products-section .nsrm-slider-frame > .nsrm-slider-nav .nsrm-slider-arrow--next,
.nsrm-category-section .nsrm-slider-frame > .nsrm-slider-nav .nsrm-slider-arrow--next{
  right:12px !important;
  left:auto !important;
}
.nsrm-products-section .nsrm-slider-pagination,
.nsrm-category-section .nsrm-slider-pagination,
.nsrm-products-section [data-nsrm-slider-dots],
.nsrm-category-section [data-nsrm-slider-dots]{
  position:static !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  width:100% !important;
  margin:18px auto 0 !important;
}
.nsrm-products-grid[data-nsrm-slider-track],
.nsrm-category-grid[data-nsrm-slider-track]{
  display:flex !important;
  gap:22px !important;
  will-change:transform;
}
.nsrm-products-slide,
.nsrm-category-slide{
  min-width:0 !important;
  flex:0 0 auto !important;
}

.nsrm-values-grid{
  width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding:44px clamp(18px,4vw,48px) !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:22px !important;
  background:
    radial-gradient(circle at 12% 18%, rgba(255,255,255,.12) 0, rgba(255,255,255,0) 42%),
    linear-gradient(180deg, #0c5a9c 0%, #0c4f8a 100%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 18px 36px rgba(12,79,138,.12) !important;
}
.nsrm-values-grid .nsrm-value-card{
  min-height:255px !important;
  padding:30px 24px !important;
  border-radius:28px !important;
}

.nsrm-category-section{
  width:min(calc(100% - 24px), 1280px) !important;
  margin:0 auto !important;
  padding:34px 0 18px !important;
  background:#fff !important;
}
.nsrm-category-section .nsrm-section-heading h2{ color:var(--nsrm-blue,#0c4f8a) !important; }
.nsrm-category-card--split{
  min-height:420px !important;
  background:linear-gradient(180deg,#1b62a5 0%, #114d88 100%) !important;
  color:#fff !important;
  border-radius:28px !important;
  overflow:hidden !important;
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  align-items:stretch !important;
  box-shadow:0 22px 42px rgba(12,79,138,.14) !important;
}
.nsrm-category-card--split .nsrm-category-card__media,
.nsrm-category-card--split .nsrm-category-card__image-wrap{
  position:relative !important;
  overflow:hidden !important;
  min-height:100% !important;
  background:#fff !important;
}
.nsrm-category-card--split .nsrm-category-card__image,
.nsrm-category-card--split img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  filter:none !important;
  transform:none !important;
}
.nsrm-category-card--split .nsrm-category-card__content{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  padding:40px 42px !important;
  background:transparent !important;
}
.nsrm-category-card--split .nsrm-category-card__eyebrow,
.nsrm-category-card--split .nsrm-category-card__title,
.nsrm-category-card--split .nsrm-category-card__description,
.nsrm-category-card--split .nsrm-category-card__content p,
.nsrm-category-card--split .nsrm-category-card__content h3{ color:#fff !important; }
.nsrm-category-card--split .nsrm-category-card__eyebrow{ color:var(--nsrm-gold,#f6c339) !important; }
.nsrm-category-card--split .nsrm-category-card__link,
.nsrm-category-card--split .nsrm-category-card__button{
  display:inline-flex !important;
  align-self:flex-start !important;
  margin-top:18px !important;
  padding:14px 24px !important;
  border-radius:999px !important;
  background:var(--nsrm-gold,#f6c339) !important;
  color:#0c4f8a !important;
  font-weight:800 !important;
  text-decoration:none !important;
}

.nsrm-services-section{
  width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding:48px clamp(18px,4vw,48px) !important;
  background:
    radial-gradient(circle at 18% 22%, rgba(255,255,255,.12) 0, rgba(255,255,255,0) 46%),
    linear-gradient(180deg, #0d5fa4 0%, #0c4f8a 100%) !important;
}
.nsrm-services-section .nsrm-services-grid,
.nsrm-services-section .nsrm-services-inner,
.nsrm-services-section .nsrm-section-heading{
  width:min(1280px, calc(100% - 24px)) !important;
  margin-inline:auto !important;
}

.woocommerce ul.products,
.woocommerce-page ul.products{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  gap:24px !important;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  float:none !important;
  margin:0 !important;
  padding:0 !important;
  min-height:0 !important;
  height:auto !important;
  display:flex !important;
  align-items:stretch !important;
  width:calc(25% - 18px) !important;
  background:transparent !important;
  border:0 !important;
}
.woocommerce ul.products li.product > .nsrm-product-card,
.woocommerce-page ul.products li.product > .nsrm-product-card{
  width:100% !important;
  min-height:auto !important;
  height:auto !important;
  display:flex !important;
  flex-direction:column !important;
}
.woocommerce ul.products li.product > .nsrm-product-card .nsrm-product-card__body,
.woocommerce-page ul.products li.product > .nsrm-product-card .nsrm-product-card__body{
  flex:1 1 auto !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
}
.woocommerce ul.products li.product > .nsrm-product-card .nsrm-product-card__copy,
.woocommerce-page ul.products li.product > .nsrm-product-card .nsrm-product-card__copy{
  flex:0 0 auto !important;
}
.woocommerce ul.products li.product > .nsrm-product-card .nsrm-card-actions,
.woocommerce-page ul.products li.product > .nsrm-product-card .nsrm-card-actions{
  margin-top:auto !important;
}
.nsrm-product-card__image-wrap{
  position:relative !important;
  overflow:hidden !important;
  background:#fff !important;
  isolation:isolate !important;
}
.nsrm-product-card__image.is-primary,
.nsrm-product-card__image.is-secondary{
  display:block !important;
  width:100% !important;
  height:auto !important;
}
.nsrm-product-card__image.is-secondary{
  position:absolute !important;
  inset:0 !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transition:opacity .24s ease !important;
}
.nsrm-product-card--has-secondary .nsrm-product-card__image-wrap:hover .nsrm-product-card__image.is-secondary,
.nsrm-product-card--has-secondary .nsrm-product-card__image-wrap:focus-within .nsrm-product-card__image.is-secondary{
  opacity:1 !important;
  visibility:visible !important;
}
.nsrm-product-card--has-secondary .nsrm-product-card__image-wrap:hover .nsrm-product-card__image.is-primary,
.nsrm-product-card--has-secondary .nsrm-product-card__image-wrap:focus-within .nsrm-product-card__image.is-primary{
  opacity:0 !important;
}
.nsrm-product-card--no-secondary .nsrm-product-card__image.is-secondary{
  display:none !important;
}

.single-product .nsrt-entry{
  width:min(calc(100% - 24px), 1280px) !important;
  margin-inline:auto !important;
  padding:24px 0 48px !important;
}
.single-product .woocommerce div.product,
.single-product div.product.type-product{
  display:grid !important;
  grid-template-columns:minmax(0, 58%) minmax(340px, 42%) !important;
  gap:28px !important;
  align-items:start !important;
}
.single-product .woocommerce div.product div.images,
.single-product .woocommerce div.product div.summary{
  width:auto !important;
  float:none !important;
  margin:0 !important;
}
.single-product .woocommerce div.product div.images .woocommerce-product-gallery__wrapper{
  background:#fff !important;
  border:1px solid #d7e3ef !important;
  border-radius:24px !important;
  overflow:hidden !important;
}
.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image a{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:420px !important;
  max-height:560px !important;
  background:#fff !important;
}
.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image img{
  max-width:100% !important;
  width:auto !important;
  max-height:520px !important;
  object-fit:contain !important;
}
.single-product .woocommerce div.product div.images .flex-control-thumbs{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px !important;
  margin-top:14px !important;
}
.single-product .woocommerce div.product div.images .flex-control-thumbs li{
  list-style:none !important;
}
.single-product .woocommerce div.product div.images .flex-control-thumbs img{
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  object-fit:cover !important;
  background:#fff !important;
  border:1px solid #d7e3ef !important;
  border-radius:14px !important;
}
.single-product .woocommerce div.product div.summary{
  padding:18px 18px 20px !important;
  background:#fff !important;
  border:1px solid #d7e3ef !important;
  border-radius:22px !important;
}
.single-product .nsrm-product-description{
  width:100% !important;
  grid-column:1 / -1 !important;
  margin-top:24px !important;
}

@media (max-width: 1180px){
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product{ width:calc(50% - 12px) !important; }
}
@media (max-width: 860px){
  .nsrm-products-section .nsrm-slider-frame,
  .nsrm-category-section .nsrm-slider-frame{ padding-inline:54px !important; }
  .nsrm-products-section .nsrm-slider-frame > .nsrm-slider-nav .nsrm-slider-arrow,
  .nsrm-category-section .nsrm-slider-frame > .nsrm-slider-nav .nsrm-slider-arrow{ width:46px !important; height:46px !important; min-width:46px !important; }
  .nsrm-products-section .nsrm-slider-frame > .nsrm-slider-nav .nsrm-slider-arrow--prev,
  .nsrm-category-section .nsrm-slider-frame > .nsrm-slider-nav .nsrm-slider-arrow--prev{ left:4px !important; }
  .nsrm-products-section .nsrm-slider-frame > .nsrm-slider-nav .nsrm-slider-arrow--next,
  .nsrm-category-section .nsrm-slider-frame > .nsrm-slider-nav .nsrm-slider-arrow--next{ right:4px !important; }
  .nsrm-values-grid{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .nsrm-category-card--split{ grid-template-columns:1fr !important; min-height:auto !important; }
  .nsrm-category-card--split .nsrm-category-card__image,
  .nsrm-category-card--split img{ aspect-ratio:16/10 !important; height:auto !important; }
  .single-product .woocommerce div.product,
  .single-product div.product.type-product{ grid-template-columns:1fr !important; gap:18px !important; }
}
@media (max-width: 767px){
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product{ width:100% !important; }
  .nsrm-values-grid{ grid-template-columns:1fr !important; }
  .single-product .woocommerce div.product div.images .woocommerce-product-gallery__image a{ min-height:260px !important; max-height:360px !important; }
  .single-product .woocommerce div.product div.images .woocommerce-product-gallery__image img{ max-height:320px !important; }
}

:root{
  --nsrm-admin-top:0px;
  --nsrm-header-height:120px;
}
html{
  scroll-padding-top: calc(var(--nsrm-admin-top, 0px) + var(--nsrm-header-height, 120px) + 12px);
}
body.nsrm-has-custom-header{
  padding-top: calc(var(--nsrm-admin-top, 0px) + var(--nsrm-header-height, 120px));
}
.nsrm-custom-header{
  position: fixed !important;
  top: var(--nsrm-admin-top, 0px) !important;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 10020 !important;
  box-shadow: 0 10px 28px rgba(10, 28, 46, .12);
}
.nsrm-custom-header__top,
.nsrm-custom-header__bottom,
.nsrm-custom-header__bottom.is-sticky-active{
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100%;
}
.nsrm-custom-header__top{
  z-index: 2;
}
.nsrm-custom-header__bottom,
.nsrm-custom-header__bottom.is-sticky-active{
  z-index: 3;
}
@media (max-width: 860px){
  .nsrm-custom-header{
    box-shadow: 0 8px 24px rgba(10, 28, 46, .14);
  }
}

:root{
  --nsrm-sticky-bottom-height: 60px;
}
html{
  scroll-padding-top: calc(var(--nsrm-admin-top, 0px) + var(--nsrm-sticky-bottom-height, 60px) + 10px) !important;
}
body.nsrm-has-custom-header{
  padding-top: 0 !important;
}
.nsrm-custom-header{
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100%;
  z-index: auto !important;
  box-shadow: none !important;
}
.nsrm-custom-header__top{
  position: relative !important;
  z-index: 1 !important;
}
.nsrm-custom-header__bottom,
.nsrm-custom-header__bottom.is-sticky-active{
  position: sticky !important;
  top: var(--nsrm-admin-top, 0px) !important;
  left: auto !important;
  right: auto !important;
  z-index: 10020 !important;
  width: 100%;
  box-shadow: 0 10px 28px rgba(10,28,46,.14) !important;
}
@media (max-width: 860px){
  :root{
    --nsrm-sticky-bottom-height: 56px;
  }
}

[data-nsrm-reveal],
.nsrm-stagger-target,
.nsrm-js [data-nsrm-reveal],
.nsrm-js .nsrm-stagger-target {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  filter: none !important;
}

.nsrm-products-section,
.nsrm-category-section,
.nsrm-values-grid,
.nsrm-services-section,
.nsrm-contact-section,
.nsrm-product-description,
.nsrm-service-card,
.nsrm-value-card,
.nsrm-category-card,
.nsrm-product-card {
  opacity: 1 !important;
  visibility: visible !important;
}

.entry-header .entry-title,
.woocommerce-products-header__title.page-title,
.single-product .entry-title,
.single-product .product .entry-title {
  display: none !important;
}

.single-product .nsrt-entry,
body.single-product .nsrt-entry {
  max-width: min(1380px, calc(100% - 32px));
  margin: 0 auto;
  padding: 20px 0 56px;
}

.single-product .woocommerce div.product,
.single-product div.product.type-product,
body.single-product .woocommerce div.product,
body.single-product div.product.type-product {
  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr) !important;
  gap: 24px !important;
  align-items: start !important;
  margin: 0 !important;
}

.single-product .woocommerce div.product > div.images,
.single-product div.product.type-product > div.images,
.single-product .woocommerce div.product > div.summary,
.single-product div.product.type-product > div.summary {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
}

.single-product .woocommerce div.product div.images,
.single-product div.product div.images {
  align-self: start;
}

.single-product .woocommerce div.product div.images .woocommerce-product-gallery__wrapper,
.single-product div.product div.images .woocommerce-product-gallery__wrapper {
  margin: 0 !important;
}

.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image,
.single-product div.product div.images .woocommerce-product-gallery__image {
  margin: 0 !important;
}

.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image a,
.single-product div.product div.images .woocommerce-product-gallery__image a {
  display: grid !important;
  place-items: center !important;
  background: #ffffff !important;
  border: 1px solid rgba(12,79,138,.12) !important;
  border-radius: 24px !important;
  min-height: 480px !important;
  max-height: 560px !important;
  overflow: hidden !important;
  padding: 20px !important;
}

.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image img,
.single-product div.product div.images .woocommerce-product-gallery__image img {
  width: 100% !important;
  max-width: 100% !important;
  max-height: 500px !important;
  height: auto !important;
  object-fit: contain !important;
  margin: 0 auto !important;
}

.single-product .woocommerce div.product div.images .flex-control-thumbs,
.single-product div.product div.images .flex-control-thumbs {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-top: 14px !important;
}

.single-product .woocommerce div.product div.images .flex-control-thumbs li,
.single-product div.product div.images .flex-control-thumbs li {
  width: 100% !important;
  margin: 0 !important;
}

.single-product .woocommerce div.product div.images .flex-control-thumbs img,
.single-product div.product div.images .flex-control-thumbs img {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: contain !important;
  border-radius: 16px !important;
  border: 1px solid rgba(12,79,138,.12) !important;
  background: #fff !important;
  padding: 6px !important;
  opacity: 1 !important;
}

.single-product .woocommerce div.product div.summary,
.single-product div.product div.summary {
  background: #ffffff !important;
  border: 1px solid rgba(12,79,138,.12) !important;
  border-radius: 24px !important;
  padding: 26px !important;
  box-shadow: 0 14px 34px rgba(9, 36, 61, 0.08) !important;
}

.single-product .woocommerce div.product div.summary form.cart,
.single-product div.product div.summary form.cart {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 0 !important;
}

.single-product .woocommerce div.product div.summary .quantity,
.single-product div.product div.summary .quantity {
  display: inline-flex !important;
  align-items: center !important;
}

.single-product .nsrm-single-whatsapp-wrap,
.single-product [data-nsrm-product-accordion],
.single-product .nsrm-product-accordion {
  margin-top: 18px !important;
}

.single-product .nsrm-product-description {
  grid-column: 1 / -1 !important;
  margin-top: 28px !important;
  background: #fff !important;
  border: 1px solid rgba(12,79,138,.12) !important;
  border-radius: 24px !important;
  padding: 28px !important;
}

.single-product .nsrm-product-description h2 {
  margin-top: 0 !important;
}

@media (max-width: 980px) {
  .single-product .woocommerce div.product,
  .single-product div.product.type-product,
  body.single-product .woocommerce div.product,
  body.single-product div.product.type-product {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .single-product .woocommerce div.product div.images .woocommerce-product-gallery__image a,
  .single-product div.product div.images .woocommerce-product-gallery__image a {
    min-height: 320px !important;
    max-height: 420px !important;
  }

  .single-product .woocommerce div.product div.images .woocommerce-product-gallery__image img,
  .single-product div.product div.images .woocommerce-product-gallery__image img {
    max-height: 360px !important;
  }

  .single-product .woocommerce div.product div.images .flex-control-thumbs,
  .single-product div.product div.images .flex-control-thumbs {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

.nsrm-custom-header {
  --nsrm-header-bottom-height: 56px;
  --nsrm-sticky-top: 0px;
}

.nsrm-custom-header__top {
  position: relative;
  z-index: 1;
}

.nsrm-custom-header__bottom-spacer {
  display: block;
  height: 0;
  pointer-events: none;
}

.nsrm-custom-header.has-sticky-bottom .nsrm-custom-header__bottom-spacer {
  height: var(--nsrm-header-bottom-height, 56px);
}

.nsrm-custom-header__bottom {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  z-index: 1300 !important;
  box-shadow: none !important;
}

.nsrm-custom-header__bottom.is-sticky-active {
  position: fixed !important;
  top: var(--nsrm-sticky-top, 0px) !important;
  left: 0 !important;
  right: 0 !important;
  width: 100vw !important;
  margin: 0 !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.14) !important;
}

.admin-bar .nsrm-custom-header__bottom.is-sticky-active,
body.admin-bar .nsrm-custom-header__bottom.is-sticky-active {
  top: var(--nsrm-sticky-top, 32px) !important;
}

@media (max-width: 782px) {
  .admin-bar .nsrm-custom-header__bottom.is-sticky-active,
  body.admin-bar .nsrm-custom-header__bottom.is-sticky-active {
    top: var(--nsrm-sticky-top, 46px) !important;
  }
}

.woocommerce-cart .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button,
.woocommerce-cart .cart-collaterals .cart_totals .wc-proceed-to-checkout a.checkout-button{
  margin-bottom:14px !important;
}

.nsrm-cart-quote-trigger{
  display:block !important;
  width:100% !important;
  margin:16px 0 0 !important;
  padding:16px 20px !important;
  border:none !important;
  border-radius:18px !important;
  background:linear-gradient(135deg,var(--nsrm-blue,#0c4f8a),#156ab5) !important;
  color:#fff !important;
  font-size:16px !important;
  font-weight:900 !important;
  letter-spacing:.01em !important;
  text-align:center !important;
  box-shadow:0 14px 30px rgba(12,79,138,.18) !important;
}
.nsrm-cart-quote-trigger:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 36px rgba(12,79,138,.24) !important;
}
.nsrm-cart-quote-trigger:focus-visible{
  outline:3px solid rgba(250,181,25,.55);
  outline-offset:3px;
}

.nsrm-contact-form__hp{display:none !important;}

@media (max-width: 767px){
  .nsrm-cart-quote-trigger{font-size:15px !important;padding:15px 18px !important;}
}
