/* Product page blocks. The colour tokens come from the child theme (:root in nadi.css); every var() has a
   fallback so a block still looks right if it is ever rendered outside that theme.
   Logical properties throughout — the site is RTL and these blocks should not care. */

.nadi-p__title{
  margin: 0 0 22px;
  font-size: clamp(22px, 2.2vw, 30px);
  line-height: 1.5;
  font-weight: 700;
  color: var(--nadi-ink, #14203A);
}
/* a second block in the same section starts far enough from the one above it */
.elementor-widget:not(:first-child) .nadi-p__title{ margin-top: 56px; }
.nadi-p__title::after{
  content: "";
  display: block;
  width: 54px;
  height: 3px;
  margin-top: 12px;
  border-radius: 2px;
  background: linear-gradient(90deg, var(--nadi-amber-500, #FAB216), var(--nadi-blue-700, #2259AB));
}

/* ---------- hero ---------- */
.nadi-p-hero{
  display: grid;
  grid-template-columns: .9fr 1.1fr;   /* photo first in the source: the start (right) column in Persian */
  align-items: center;
  gap: clamp(32px, 5vw, 80px);
}
.nadi-p-hero.is-text-only{ grid-template-columns: 1fr; }
.nadi-p-hero__eyebrow{
  display: inline-block;
  margin-bottom: 14px;
  padding: 6px 16px;
  border-radius: 999px;
  background: var(--nadi-blue-100, #E8F0FA);
  color: var(--nadi-blue-800, #1A468A);
  font-size: 14px;
  line-height: 1.8;
  font-weight: 700;
}
.nadi-p-hero__title{
  margin: 0 0 18px;
  font-size: clamp(28px, 4vw, 46px);
  line-height: 1.35;
  font-weight: 800;
  color: var(--nadi-ink, #14203A);
}
.nadi-p-hero__lead{
  margin: 0 0 26px;
  max-width: 56ch;
  font-size: clamp(15px, 1.2vw, 18px);
  line-height: 2.1;
  color: var(--nadi-n600, #5A6575);
  text-align: justify;
}
.nadi-p-badges{ display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 30px; }
.nadi-p-badge{
  padding: 7px 16px;
  border-radius: 999px;
  border: 1px solid var(--nadi-n100, #E4E9F0);
  background: #fff;
  font-size: 14px;
  line-height: 1.9;
  font-weight: 700;
  color: var(--nadi-n700, #3C4656);
}
.nadi-p-badge.is-food{
  border-color: var(--nadi-amber-400, #FFC33F);
  background: var(--nadi-amber-050, #FFF6E1);
  color: var(--nadi-amber-600, #DE9B05);
}
.nadi-p-badge.is-industrial{
  border-color: var(--nadi-blue-200, #9EC6EC);
  background: var(--nadi-blue-050, #F4F8FD);
  color: var(--nadi-blue-800, #1A468A);
}
.nadi-p-hero__cta{ display: flex; flex-wrap: wrap; gap: 12px; }
.nadi-p-btn,
a.nadi-p-btn,
a.nadi-p-btn:visited{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 14px 30px;
  border-radius: 999px;
  border: 1px solid var(--nadi-blue-700, #2259AB);
  background: var(--nadi-blue-700, #2259AB);
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.9;
  text-decoration: none;
  transition: background-color .3s, color .3s, border-color .3s;
}
a.nadi-p-btn:hover,
a.nadi-p-btn:focus{ background: var(--nadi-blue-800, #1A468A); border-color: var(--nadi-blue-800, #1A468A); color: #fff; }
a.nadi-p-btn.is-ghost,
a.nadi-p-btn.is-ghost:visited{ background: transparent; color: var(--nadi-blue-700, #2259AB); }
a.nadi-p-btn.is-ghost:hover{ background: var(--nadi-blue-100, #E8F0FA); color: var(--nadi-blue-800, #1A468A); }
.nadi-p-hero__media{ position: relative; border-radius: 25px; overflow: hidden; }
/* Elementor's `.elementor img { border-radius: 0 }` outranks a single class, which is why the corners
   rendered square; the 25px matches the theme's own image and page-title radius. */
.nadi-p-hero .nadi-p-hero__media img.nadi-p-hero__img{
  display: block;
  width: 100%;
  /* the plates are portrait; left alone they make the hero twice as tall as its text */
  height: clamp(320px, 38vw, 520px);
  max-height: none;
  object-fit: cover;
  object-position: 50% 50%;
  border-radius: 25px;
  box-shadow: none;
}

/* ---------- key facts: six theme icon boxes, three a row ---------- */
.nadi-p-facts{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.nadi-p-facts .nadi-ibox{
  padding: 30px 30px 28px;
  border-radius: 20px;                     /* the home page's card radius */
  background: var(--nadi-n050, #F2F5F9);
  transition: background-color .3s;
}
.nadi-p-facts .nadi-ibox:hover{ background: var(--nadi-blue-050, #F4F8FD); }
.nadi-p-facts .neuros-icon-box-widget .icon-box-item .icon-container{ background-color: #fff; margin: 0 0 18px; }
.nadi-p-facts .neuros-icon-box-widget .icon-box-item .icon-box-title{
  font-size: 17px;
  line-height: 1.9;
  font-weight: 700;
  color: var(--nadi-ink, #14203A);
}
.nadi-p-fact{
  position: relative;
  padding: 22px 22px 20px;
  border: 1px solid var(--nadi-n100, #E4E9F0);
  border-radius: 18px;
  background: #fff;
  list-style: none;
}
.nadi-p-fact::before{
  content: "";
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: 22px;
  width: 34px;
  height: 3px;
  border-radius: 0 0 3px 3px;
  background: var(--nadi-amber-500, #FAB216);
}
.nadi-p-fact__k{
  display: block;
  margin-bottom: 8px;
  font-size: 13px;
  line-height: 1.8;
  color: var(--nadi-n500, #7E8896);
}
.nadi-p-fact__v{
  display: block;
  font-size: 15px;
  line-height: 1.95;
  font-weight: 700;
  color: var(--nadi-ink, #14203A);
}

/* ---------- uses ---------- */
.nadi-p-chips{ display: flex; flex-wrap: wrap; gap: 9px; margin: 0 0 28px; padding: 0; list-style: none; }
.nadi-p-chips li{
  padding: 8px 16px;
  border-radius: 999px;
  border: 1px solid var(--nadi-n100, #E4E9F0);
  background: var(--nadi-n050, #F2F5F9);
  font-size: 14px;
  line-height: 1.9;
  color: var(--nadi-n700, #3C4656);
  list-style: none;
}
.nadi-p-apps{ display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 18px; }
.nadi-p-app{
  display: block;
  border-radius: 20px;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--nadi-n100, #E4E9F0);
  text-decoration: none;
  transition: transform .3s, box-shadow .3s, border-color .3s;
}
.nadi-p-app:hover{
  transform: translateY(-3px);
  border-color: var(--nadi-blue-200, #9EC6EC);
  box-shadow: 0 14px 30px rgba(20, 32, 58, .10);
}
.nadi-p-app__m{ display: block; aspect-ratio: 4 / 3; overflow: hidden; }
.nadi-p-app__m img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.nadi-p-app__t{
  display: block;
  padding: 14px 16px 16px;
  font-size: 15px;
  line-height: 1.8;
  font-weight: 700;
  color: var(--nadi-ink, #14203A);
}
.nadi-p-inds{ margin: 22px 0 0; font-size: 14px; line-height: 2.2; color: var(--nadi-n600, #5A6575); }
.nadi-p-inds span{ margin-inline-end: 6px; }
.nadi-p-inds a{
  display: inline-block;
  margin-inline-end: 8px;
  padding: 4px 13px;
  border-radius: 999px;
  border: 1px dashed var(--nadi-n300, #C6CDD8);
  color: var(--nadi-blue-800, #1A468A);
  text-decoration: none;
}

/* ---------- not suitable for ---------- */
.nadi-p-notfor{
  margin: 0;
  padding: 26px 28px;
  border-radius: 20px;
  border: 1px solid var(--nadi-n100, #E4E9F0);
  background: var(--nadi-n050, #F2F5F9);
  list-style: none;
}
.nadi-p-notfor li{
  position: relative;
  padding-inline-start: 30px;
  font-size: 15px;
  line-height: 2.1;
  color: var(--nadi-n700, #3C4656);
  list-style: none;
}
.nadi-p-notfor li + li{ margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--nadi-n100, #E4E9F0); }
.nadi-p-notfor li::before{
  content: "";
  position: absolute;
  inset-inline-start: 0;
  top: .85em;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 2px solid var(--nadi-amber-400, #FFC33F);
}
.nadi-p-alts{ display: flex; flex-wrap: wrap; gap: 16px; margin-top: 18px; }
.nadi-p-alt{
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 10px 20px 10px 10px;
  border-radius: 999px;
  border: 1px solid var(--nadi-n100, #E4E9F0);
  background: #fff;
  text-decoration: none;
  transition: border-color .3s, box-shadow .3s;
}
.nadi-p-alt:hover{ border-color: var(--nadi-blue-700, #2259AB); box-shadow: 0 10px 24px rgba(20, 32, 58, .08); }
.nadi-p-alt__m{ flex: none; width: 46px; height: 46px; border-radius: 50%; overflow: hidden; background: #E1E4EC; }
.nadi-p-alt__m img{ width: 100%; height: 100%; object-fit: contain; display: block; }
.nadi-p-alt__b{ display: flex; flex-direction: column; }
.nadi-p-alt__k{ font-size: 12px; line-height: 1.7; color: var(--nadi-n500, #7E8896); }
.nadi-p-alt__t{ font-size: 15px; line-height: 1.8; font-weight: 700; color: var(--nadi-ink, #14203A); }

/* ---------- specs ---------- */
.nadi-p-specs{ width: 100%; border-collapse: collapse; font-size: 15px; line-height: 2; }
.nadi-p-specs th,
.nadi-p-specs td{ padding: 14px 18px; border-bottom: 1px solid var(--nadi-n100, #E4E9F0); text-align: start; }
.nadi-p-specs th{ width: 38%; color: var(--nadi-n600, #5A6575); font-weight: 400; }
.nadi-p-specs td{ color: var(--nadi-ink, #14203A); font-weight: 700; }
.nadi-p-ask{
  padding: 34px 32px;
  border: 1px dashed var(--nadi-n300, #C6CDD8);
  border-radius: 22px;
  background: linear-gradient(180deg, #fff, var(--nadi-n050, #F2F5F9));
  text-align: center;
}
.nadi-p-ask h3{ margin: 0 0 10px; font-size: 20px; line-height: 1.7; font-weight: 700; color: var(--nadi-ink, #14203A); }
.nadi-p-ask p{ margin: 0 auto 22px; max-width: 60ch; font-size: 15px; line-height: 2.1; color: var(--nadi-n600, #5A6575); }
.nadi-p-versions{ display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; margin-top: 22px; }
.nadi-p-version{
  padding: 18px 22px;
  border-radius: 18px;
  border: 1px solid var(--nadi-n100, #E4E9F0);
  background: #fff;
  font-size: 14px;
  line-height: 2;
  color: var(--nadi-n600, #5A6575);
}
.nadi-p-version__t{
  display: block;
  margin-bottom: 4px;
  font-size: 16px;
  font-weight: 700;
  color: var(--nadi-blue-800, #1A468A);
}

/* ---------- faq ---------- */
.nadi-p-faq{ border-top: 1px solid var(--nadi-n100, #E4E9F0); }
.nadi-p-faq__i{ border-bottom: 1px solid var(--nadi-n100, #E4E9F0); }
.nadi-p-faq__i summary{
  position: relative;
  padding-block: 20px;
  padding-inline: 0 40px;
  font-size: 16px;
  line-height: 1.9;
  font-weight: 700;
  color: var(--nadi-ink, #14203A);
  cursor: pointer;
  list-style: none;
}
.nadi-p-faq__i summary::-webkit-details-marker{ display: none; }
.nadi-p-faq__i summary::after{
  content: "";
  position: absolute;
  inset-inline-end: 4px;
  top: 50%;
  width: 11px;
  height: 11px;
  margin-top: -7px;
  border-inline-end: 2px solid var(--nadi-blue-700, #2259AB);
  border-block-end: 2px solid var(--nadi-blue-700, #2259AB);
  transform: rotate(45deg);
  transition: transform .3s;
}
.nadi-p-faq__i[open] summary::after{ transform: rotate(-135deg); margin-top: -2px; }
.nadi-p-faq__a{
  padding: 0 0 22px;
  font-size: 15px;
  line-height: 2.15;
  color: var(--nadi-n600, #5A6575);
  text-align: justify;
}

/* ---------- comparison ---------- */
.nadi-p-compare-wrap{ overflow-x: auto; }
.nadi-p-compare{ width: 100%; border-collapse: collapse; font-size: 15px; line-height: 1.95; }
.nadi-p-compare th,
.nadi-p-compare td{ padding: 15px 18px; border-bottom: 1px solid var(--nadi-n100, #E4E9F0); text-align: start; vertical-align: top; }
.nadi-p-compare th{ white-space: nowrap; color: var(--nadi-n500, #7E8896); font-weight: 700; }
.nadi-p-compare td:first-child{ font-weight: 700; color: var(--nadi-ink, #14203A); }
.nadi-p-compare td a{ color: var(--nadi-blue-700, #2259AB); text-decoration: none; }
.nadi-p-compare tr.is-current td{ background: var(--nadi-blue-050, #F4F8FD); }
.nadi-p-compare tr.is-current td:first-child{ box-shadow: inset 3px 0 0 0 var(--nadi-amber-500, #FAB216); }

/* ---------- related ---------- */
.nadi-p-related{ display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 20px; }
.nadi-p-rel{
  display: block;
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid var(--nadi-n100, #E4E9F0);
  background: #fff;
  text-decoration: none;
  transition: transform .3s, box-shadow .3s, border-color .3s;
}
.nadi-p-rel:hover{ transform: translateY(-3px); border-color: var(--nadi-blue-200, #9EC6EC); box-shadow: 0 16px 34px rgba(20, 32, 58, .10); }
.nadi-p-rel__m{ display: block; height: 200px; background: #E1E4EC; overflow: hidden; }
.nadi-p-rel__m img{ width: 100%; height: 100%; object-fit: contain; display: block; }
.nadi-p-rel__b{ display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 16px 18px 18px; }
.nadi-p-rel__t{ font-size: 15px; line-height: 1.8; font-weight: 700; color: var(--nadi-ink, #14203A); }
.nadi-p-rel__g{
  flex: none;
  padding: 3px 11px;
  border-radius: 999px;
  border: 1px solid var(--nadi-n100, #E4E9F0);
  font-size: 12px;
  line-height: 1.9;
  color: var(--nadi-n500, #7E8896);
}
.nadi-p-rel__g.is-food{
  border-color: var(--nadi-amber-400, #FFC33F);
  background: var(--nadi-amber-050, #FFF6E1);
  color: var(--nadi-amber-600, #DE9B05);
}

/* ---------- narrow screens ---------- */
@media (max-width: 1024px){
  .nadi-p-hero{ grid-template-columns: 1fr; gap: 28px; }
  .nadi-p-hero__media{ order: -1; max-width: 420px; }
}
@media (max-width: 767px){
  .nadi-p-notfor{ padding: 20px; }
  .nadi-p-compare thead{ display: none; }
  .nadi-p-compare,
  .nadi-p-compare tbody,
  .nadi-p-compare tr,
  .nadi-p-compare td{ display: block; width: 100%; }
  .nadi-p-compare tr{ padding: 14px 0 6px; border-bottom: 1px solid var(--nadi-n100, #E4E9F0); }
  .nadi-p-compare td{ padding: 4px 0; border: 0; }
  .nadi-p-compare td::before{ content: attr(data-label) "؛ "; color: var(--nadi-n500, #7E8896); font-size: 13px; }
  .nadi-p-compare td:first-child{ font-size: 17px; box-shadow: none; }
  .nadi-p-compare td:first-child::before{ content: none; }
  .nadi-p-compare tr.is-current{ background: var(--nadi-blue-050, #F4F8FD); border-radius: 14px; padding-inline: 14px; }
}

/* ---------- breadcrumb ---------- */
.nadi-p-crumbs{ margin-bottom: 26px; font-size: 13px; line-height: 2; color: var(--nadi-n500, #7E8896); }
.nadi-p-crumbs a{ color: var(--nadi-n600, #5A6575); text-decoration: none; }
.nadi-p-crumbs a:hover{ color: var(--nadi-blue-700, #2259AB); }
.nadi-p-crumbs a::after{ content: "›"; margin: 0 8px; color: var(--nadi-n300, #C6CDD8); }
.nadi-p-crumbs span{ color: var(--nadi-ink, #14203A); }

/* ---------- what this film is ---------- */
.nadi-p-intro{ display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: 44px; }
.nadi-p-intro.is-wide{ grid-template-columns: 1fr; }
.nadi-p-intro__text p{
  margin: 0 0 16px;
  font-size: 16px;
  line-height: 2.2;
  color: var(--nadi-n600, #5A6575);
  text-align: justify;
}
.nadi-p-intro__media img{
  display: block;
  width: 100%;
  max-height: 420px;
  object-fit: cover;
  object-position: 30% 50%;
  border-radius: 24px;
  box-shadow: 0 26px 50px -28px rgba(20, 32, 58, .3);
}

/* ---------- how it is used ---------- */
.nadi-p-usage{ display: grid; grid-template-columns: 300px 1fr; gap: 28px; align-items: start; }
.nadi-p-usage__flag{
  padding: 20px 22px;
  border-radius: 18px;
  border: 1px solid var(--nadi-n100, #E4E9F0);
  background: #fff;
}
.nadi-p-usage__flag.needs{ border-color: var(--nadi-blue-200, #9EC6EC); background: var(--nadi-blue-050, #F4F8FD); }
.nadi-p-usage__k{
  display: block;
  margin-bottom: 6px;
  font-size: 16px;
  line-height: 1.9;
  font-weight: 700;
  color: var(--nadi-blue-800, #1A468A);
}
.nadi-p-usage__n{ display: block; font-size: 14px; line-height: 2; color: var(--nadi-n600, #5A6575); }
.nadi-p-usage__t{ margin: 0; font-size: 16px; line-height: 2.2; color: var(--nadi-n600, #5A6575); text-align: justify; }

/* ---------- grade ---------- */
.nadi-p-grade{
  padding: 26px 30px;
  border-radius: 20px;
  border: 1px solid var(--nadi-n100, #E4E9F0);
  background: #fff;
}
.nadi-p-grade.is-food{ border-color: var(--nadi-amber-400, #FFC33F); background: var(--nadi-amber-050, #FFF6E1); }
.nadi-p-grade__tag{
  display: inline-block;
  margin-bottom: 12px;
  padding: 6px 16px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid currentColor;
  font-size: 14px;
  line-height: 1.9;
  font-weight: 700;
  color: var(--nadi-n600, #5A6575);
}
.nadi-p-grade.is-food .nadi-p-grade__tag{ color: var(--nadi-amber-600, #DE9B05); }
.nadi-p-grade p{ margin: 0; font-size: 16px; line-height: 2.2; color: var(--nadi-n700, #3C4656); text-align: justify; }

/* ---------- storage ---------- */
.nadi-p-storage{
  margin: 0;
  padding-inline-start: 22px;
  border-inline-start: 3px solid var(--nadi-amber-500, #FAB216);
  font-size: 16px;
  line-height: 2.2;
  color: var(--nadi-n700, #3C4656);
}

/* ---------- gallery, video, downloads ---------- */
.nadi-p-gallery{ display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 18px; }
.nadi-p-gallery figure{ margin: 0; border-radius: 20px; overflow: hidden; background: #E1E4EC; }
.nadi-p-gallery img{ display: block; width: 100%; height: 260px; object-fit: cover; }
.nadi-p-video{ margin-top: 22px; border-radius: 20px; overflow: hidden; }
.nadi-p-video iframe{ display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; }
.nadi-p-files{ margin: 0; padding: 0; list-style: none; display: grid; gap: 12px; }
.nadi-p-files li{ list-style: none; }
.nadi-p-files a{
  display: block;
  padding: 16px 20px;
  border-radius: 16px;
  border: 1px solid var(--nadi-n100, #E4E9F0);
  background: #fff;
  color: var(--nadi-ink, #14203A);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: border-color .3s;
}
.nadi-p-files a:hover{ border-color: var(--nadi-blue-700, #2259AB); }

/* ---------- trust ---------- */
.nadi-p-trust{ display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 34px; }
.nadi-p-trust img{
  max-height: 58px;
  width: auto;
  filter: grayscale(1);
  opacity: .62;
  transition: filter .3s, opacity .3s;
}
.nadi-p-trust img:hover{ filter: grayscale(0); opacity: 1; }
.nadi-p-trust__n{ margin: 20px 0 0; text-align: center; font-size: 14px; line-height: 2; color: var(--nadi-n500, #7E8896); }

/* ---------- related articles ---------- */
.nadi-p-posts{ display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 20px; }
.nadi-p-post{
  display: block;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid var(--nadi-n100, #E4E9F0);
  background: #fff;
  text-decoration: none;
  transition: transform .3s, box-shadow .3s;
}
.nadi-p-post:hover{ transform: translateY(-3px); box-shadow: 0 14px 30px rgba(20, 32, 58, .10); }
.nadi-p-post__m{ display: block; height: 170px; overflow: hidden; background: var(--nadi-n050, #F2F5F9); }
.nadi-p-post__m img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.nadi-p-post__t{
  display: block;
  padding: 14px 18px 18px;
  font-size: 15px;
  line-height: 1.95;
  font-weight: 700;
  color: var(--nadi-ink, #14203A);
}

@media (max-width: 1024px){
  .nadi-p-intro{ grid-template-columns: 1fr; gap: 26px; }
  .nadi-p-intro__media{ max-width: 460px; }
  .nadi-p-usage{ grid-template-columns: 1fr; gap: 18px; }
}

/* ---------- section copy (the intro / body / closing WYSIWYG around a block) ---------- */
.nadi-p-copy{ margin: 0 0 22px; font-size: 16px; line-height: 2.2; color: var(--nadi-n600, #5A6575); text-align: justify; }
.nadi-p-copy p{ margin: 0 0 12px; }
.nadi-p-copy p:last-child{ margin-bottom: 0; }
.nadi-p-copy + .nadi-p-copy{ margin-top: -6px; }

/* ---------- features: the home page's «چرا نادی پلاستیک؟» icon boxes ----------
   Theme markup and layout (icon-position-bottom); these are the rules Elementor generated for that
   home widget (post-24237.css, element e726ef3), re-scoped so every feature box matches it. */
.nadi-p-features{ display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 40px 50px; }
.nadi-ibox .neuros-icon-box-widget .icon-box-item .icon-container{ width: 56px; height: 56px; background-color: #E4E9F0; }
.nadi-ibox .neuros-icon-box-widget .icon-box-item .icon-container.background-type-color{ border-radius: 15px; }
.nadi-ibox .neuros-icon-box-widget .icon-container i{ color: #2259AB; }
.nadi-ibox:hover .neuros-icon-box-widget .icon-container i{ color: #FAB216; }
.nadi-p-features .neuros-icon-box-widget .icon-box-item .icon-container{ margin: 33px 0 0; }
.nadi-p-features .neuros-icon-box-widget .icon-box-title{ font-size: 20px; line-height: 35px; }
.nadi-p-features .neuros-icon-box-widget .icon-box-info{ text-align: justify; }
.nadi-p-features .neuros-icon-box-widget .icon-box-info p{ margin: 0; }

/* ---------- applications: the theme's own card, laid out as a grid (see product-apps-grid.php) ---------- */
.service-listing-wrapper.nadi-apps-grid{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
}
.nadi-connected-apps{ margin-top: 10px; }
/* the theme's arrow button hangs below each card; keep the text after the grid clear of it */
.elementor-widget.nadi-connected-apps + .elementor-widget-nadi_product_copy{ margin-top: 44px; }

/* ---------- suitable goods, when a row has an image or a description ---------- */
.nadi-p-goods{ display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 18px; margin: 0 0 28px; }
.nadi-p-good{
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid var(--nadi-n100, #E4E9F0);
  background: #fff;
}
.nadi-p-good__m{ display: block; height: 150px; overflow: hidden; background: var(--nadi-n050, #F2F5F9); }
.nadi-p-good__m img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.nadi-p-good__t{ display: block; padding: 12px 16px 4px; font-size: 15px; line-height: 1.95; font-weight: 700; color: var(--nadi-ink, #14203A); }
.nadi-p-good__d{ display: block; padding: 0 16px 14px; font-size: 13.5px; line-height: 2; color: var(--nadi-n600, #5A6575); }

/* ---------- freezer note under the grade box ---------- */
.nadi-p-grade.is-freezer{ margin-top: 16px; border-color: var(--nadi-blue-200, #9EC6EC); background: var(--nadi-blue-050, #F4F8FD); }
.nadi-p-grade.is-freezer .nadi-p-grade__tag{ color: var(--nadi-blue-800, #1A468A); }

/* ---------- storage warning ---------- */
.nadi-p-storage__warn{
  margin-top: 18px;
  padding: 18px 22px;
  border-radius: 18px;
  border: 1px solid var(--nadi-amber-400, #FFC33F);
  background: var(--nadi-amber-050, #FFF6E1);
  font-size: 15px;
  line-height: 2.15;
  color: var(--nadi-n700, #3C4656);
  text-align: justify;
}
.nadi-p-storage__warn p{ margin: 0 0 10px; }
.nadi-p-storage__warn p:last-child{ margin-bottom: 0; }
.nadi-p-storage + .nadi-p-facts{ margin-top: 18px; }

/* ---------- theme-style section headings (same markup the Neuros heading widget emits) ---------- */
.nadi-p-heading{ margin: 0 0 34px; }
.nadi-p-heading .neuros-heading{ margin: 0; }
.nadi-p-heading .neuros-heading-content{
  display: block;
  font-size: clamp(26px, 3vw, 40px);
  line-height: 1.3;
  font-weight: 700;
  color: var(--nadi-ink, #14203A);
}
.nadi-dark .nadi-p-heading .neuros-heading-content{ color: #fff; }

/* ---------- FAQ numbering, matching the home page's counter accordion ---------- */
.nadi-p-faq{ counter-reset: nadi-faq; }
.nadi-p-faq__i{ counter-increment: nadi-faq; }
.nadi-p-faq__i summary::before{
  content: counter(nadi-faq, nadi-persian-2);
  display: inline-block;
  min-width: 36px;
  font-weight: 800;
  font-size: 18px;
  color: var(--nadi-blue-200, #9EC6EC);
  transition: color .3s;
}
.nadi-p-faq__i[open] summary::before{ color: var(--nadi-blue-700, #2259AB); }
.nadi-p-faq__a{ padding-inline-start: 36px; }

/* ---------- sections that stay empty until content arrives (gallery, downloads) ---------- */
.nadi-collapse:not(:has(.elementor-widget-container > *)){ display: none; }

/* ---------- odds and ends ---------- */
.nadi-p-specs__n{ display: block; font-size: 12.5px; line-height: 1.9; color: var(--nadi-n500, #7E8896); }
.nadi-p-video__t{ margin: 22px 0 0; font-size: 17px; line-height: 1.9; font-weight: 700; color: var(--nadi-ink, #14203A); }
.nadi-p-usage__m{ grid-column: 1 / -1; }
.nadi-p-usage__m img{ display: block; width: 100%; max-height: 380px; object-fit: cover; border-radius: 20px; }

/* ---------- v3 responsive (the site's breakpoints are 991 and 575) ---------- */
@media (max-width: 991px){
  .nadi-p-facts{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
  .service-listing-wrapper.nadi-apps-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nadi-p-hero__media{ max-width: none; }
}
@media (max-width: 575px){
  .nadi-p-facts{ grid-template-columns: 1fr; }
  .service-listing-wrapper.nadi-apps-grid{ grid-template-columns: 1fr; }
  .nadi-p-facts .nadi-ibox{ padding: 24px; }
}

/* ======================================================================================
   v4 (2026-09-30) — second round of the owner's review
   ====================================================================================== */

/* ---------- theme buttons outside the Elementor button widget: the nadi.css variants ---------- */
.nadi-tbtn{ display: inline-block; }
.nadi-tbtn .button-container{ margin: 0; }
.nadi-tbtn.nadi-btn-primary .neuros-button{ background-color: var(--nadi-blue-700, #2259AB); border-color: var(--nadi-blue-700, #2259AB); color: #fff; }
.nadi-tbtn.nadi-btn-primary .neuros-button:hover{ background-color: var(--nadi-blue-800, #1A468A); border-color: var(--nadi-blue-800, #1A468A); color: #fff; }
.nadi-tbtn.nadi-btn-accent .neuros-button{ background-color: var(--nadi-amber-500, #FAB216); border-color: var(--nadi-amber-500, #FAB216); color: var(--nadi-ink, #14203A); }
.nadi-tbtn.nadi-btn-accent .neuros-button:hover{ background-color: var(--nadi-amber-600, #DE9B05); border-color: var(--nadi-amber-600, #DE9B05); color: var(--nadi-ink, #14203A); }
.nadi-tbtn.nadi-btn-outline .neuros-button{ background-color: transparent; border: 1.5px solid var(--nadi-blue-700, #2259AB); color: var(--nadi-blue-700, #2259AB); }
.nadi-tbtn.nadi-btn-outline .neuros-button:hover{ background-color: var(--nadi-blue-700, #2259AB); border-color: var(--nadi-blue-700, #2259AB); color: #fff; }
.nadi-tbtn:not([class*="nadi-btn-"]) .neuros-button{ color: var(--nadi-blue-700, #2259AB); }
.nadi-p-hero__cta{ align-items: center; gap: 14px; }

/* ---------- suitable-for pills: the theme arrow aligned with the text, visible on the gray band ---------- */
.nadi-p-chips{ gap: 10px; }
.nadi-p-chips > li{
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 18px;
  padding-inline-start: 16px;
  border: 1px solid var(--nadi-blue-200, #9EC6EC);
  background: #fff;
  color: var(--nadi-ink, #14203A);
  font-weight: 600;
  transition: border-color .3s, background-color .3s;
}
.nadi-p-chips > li:hover{ border-color: var(--nadi-blue-700, #2259AB); background: var(--nadi-blue-050, #F4F8FD); }
/* the theme's own list arrow (ul > li:before), taken out of absolute positioning so it centres on the text */
.nadi-p-chips > li::before{
  position: static;
  top: auto;
  right: auto;
  left: auto;
  display: inline-block;
  font-size: 9px;
  line-height: 1;
  color: var(--nadi-amber-500, #FAB216);
}

/* ---------- key facts on the gray band: white cards ---------- */
.nadi-p-facts .nadi-ibox{ background: #fff; }
.nadi-p-facts .nadi-ibox:hover{ background: #fff; box-shadow: 0 18px 40px -24px rgba(20, 32, 58, .25); }
.nadi-p-facts .neuros-icon-box-widget .icon-box-item .icon-container{ background-color: var(--nadi-n050, #F2F5F9); }

/* ---------- not suitable: case cards + the navy "instead" card ---------- */
.nadi-p-notfor2{ display: grid; grid-template-columns: 1.5fr 1fr; gap: 30px; align-items: stretch; margin-bottom: 26px; }
.nadi-p-notfor2.is-single{ grid-template-columns: 1fr; }
.nadi-p-notfor2__cases{ display: grid; gap: 18px; align-content: start; }
.nadi-p-notfor2__cases .nadi-ibox{ padding: 26px 28px; border-radius: 20px; background: var(--nadi-n050, #F2F5F9); }
.nadi-p-notfor2__cases .icon-box-item{ display: flex; align-items: center; gap: 20px; }
.nadi-p-notfor2__cases .neuros-icon-box-widget .icon-box-item .icon-container{ margin: 0; background-color: #FFF1EE; }
.nadi-p-notfor2__cases .neuros-icon-box-widget .icon-container i{ color: #D9534F; }
.nadi-p-notfor2__cases .icon-box-info p{ margin: 0; font-size: 16px; line-height: 2; color: var(--nadi-ink, #14203A); font-weight: 600; }
.nadi-p-notfor2__alts{ display: grid; gap: 18px; }
.nadi-p-altcard{
  display: flex; flex-direction: column;
  border-radius: 25px; overflow: hidden;
  background: #0A1524; color: #fff;
}
.nadi-p-altcard__m{ height: 210px; background: #16233a; }
.nadi-p-altcard .nadi-p-altcard__m img{ width: 100%; height: 100%; object-fit: cover; border-radius: 0; }
.nadi-p-altcard__b{ padding: 26px 30px 32px; }
.nadi-p-altcard__k{ display: block; margin-bottom: 6px; font-size: 13px; color: var(--nadi-amber-400, #FFC33F); }
.nadi-p-altcard__t{ margin: 0 0 20px; font-size: 22px; line-height: 1.6; font-weight: 700; color: #fff; }
.nadi-p-altcard .nadi-tbtn.nadi-btn-outline .neuros-button{ border-color: rgba(255,255,255,.72); color: #fff; }
.nadi-p-altcard .nadi-tbtn.nadi-btn-outline .neuros-button:hover{ background: #fff; border-color: #fff; color: var(--nadi-ink, #14203A); }

/* the theme's heading colour outranks a single class on dark cards; the theme's icon-position-top
   sets the item to block at (0,3,0), so the row layout needs one more class */
.nadi-p-altcard .nadi-p-altcard__b h3.nadi-p-altcard__t{ color: #fff; }
.nadi-p-ask2 .nadi-p-ask2__b h3.nadi-p-ask2__t{ color: #fff; }
.nadi-p-notfor2 .nadi-p-notfor2__cases .nadi-ibox .icon-box-item{ display: flex; align-items: center; gap: 20px; }
.nadi-p-notfor2 .nadi-p-notfor2__cases .nadi-ibox .icon-box-item .icon-container{ margin: 0; }

/* ---------- how it is used: the flag as a theme icon box card ---------- */
.nadi-p-usage__flag{ padding: 0; border: 0; background: transparent; }
.nadi-p-usage__flag .nadi-ibox{ padding: 28px 30px; border-radius: 20px; background: #fff; }
.nadi-p-usage__flag.needs .nadi-ibox{ background: #0A1524; }
.nadi-p-usage__flag.needs .icon-box-title{ color: #fff; }
.nadi-p-usage__flag.needs .icon-box-info p{ color: rgba(255,255,255,.72); }
.nadi-p-usage__flag.needs .neuros-icon-box-widget .icon-box-item .icon-container{ background-color: rgba(255,255,255,.1); }
.nadi-p-usage__flag.needs .neuros-icon-box-widget .icon-container i{ color: var(--nadi-amber-400, #FFC33F); }
.nadi-p-usage__flag .icon-box-info p{ margin: 0; }

/* ---------- grade and food contact ---------- */
.nadi-p-grade2{ display: grid; grid-template-columns: 1.6fr 1fr; gap: 24px; margin-bottom: 22px; }
.nadi-p-grade2.is-single{ grid-template-columns: 1fr; }
.nadi-p-grade2__main{
  display: flex; gap: 26px; align-items: flex-start;
  padding: 34px 36px; border-radius: 25px; background: #fff;
}
.nadi-p-grade2__icon{
  flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
  width: 72px; height: 72px; border-radius: 20px; font-size: 26px;
}
.nadi-p-grade2.is-food .nadi-p-grade2__icon{ background: var(--nadi-amber-050, #FFF6E1); color: var(--nadi-amber-600, #DE9B05); }
.nadi-p-grade2.is-industrial .nadi-p-grade2__icon{ background: var(--nadi-blue-050, #F4F8FD); color: var(--nadi-blue-700, #2259AB); }
.nadi-p-grade2__tag{ display: block; margin-bottom: 10px; font-size: 18px; line-height: 1.8; font-weight: 800; color: var(--nadi-ink, #14203A); }
.nadi-p-grade2__b p{ margin: 0; font-size: 15px; line-height: 2.1; color: var(--nadi-n600, #5A6575); text-align: justify; }
.nadi-p-grade2__side .nadi-ibox{ height: 100%; box-sizing: border-box; padding: 34px 32px; border-radius: 25px; background: #0A1524; }
.nadi-p-grade2__side .icon-box-title{ color: #fff; }
.nadi-p-grade2__side .icon-box-info, .nadi-p-grade2__side .icon-box-info p{ color: rgba(255,255,255,.75); margin: 0; }
.nadi-p-grade2__side .neuros-icon-box-widget .icon-box-item .icon-container{ background-color: rgba(255,255,255,.1); }
.nadi-p-grade2__side .neuros-icon-box-widget .icon-container i{ color: #9EC6EC; }

/* ---------- specifications: the datasheet ask, as a navy card ---------- */
.nadi-p-ask2{
  display: flex; align-items: center; gap: 34px;
  padding: 44px 48px; margin-bottom: 26px;
  border-radius: 25px; background: #0A1524;
}
.nadi-p-ask2__icon{
  flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
  width: 96px; height: 96px; border-radius: 25px; font-size: 36px;
  background: rgba(255,255,255,.08); color: var(--nadi-amber-400, #FFC33F);
}
.nadi-p-ask2__t{ margin: 0 0 10px; font-size: 24px; line-height: 1.6; font-weight: 800; color: #fff; }
.nadi-p-ask2__p{ margin: 0 0 22px; max-width: 70ch; font-size: 15px; line-height: 2.1; color: rgba(255,255,255,.72); }

/* ---------- storage: icon-box cards + a warning card ---------- */
.nadi-p-store{ display: grid; grid-template-columns: 1.3fr 1fr; gap: 24px; margin-bottom: 22px; align-items: stretch; }
.nadi-p-store.is-single{ grid-template-columns: 1fr; }
.nadi-p-store__rows{ display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 18px; }
.nadi-p-store__rows .nadi-ibox{ padding: 28px; border-radius: 20px; background: var(--nadi-n050, #F2F5F9); }
.nadi-p-store__rows .neuros-icon-box-widget .icon-box-item .icon-container{ background-color: #fff; margin: 0 0 16px; }
.nadi-p-store__rows .icon-box-title{ font-size: 16px; line-height: 1.9; font-weight: 700; }
.nadi-p-store__warn{
  display: flex; gap: 20px; align-items: center;
  padding: 30px 32px; border-radius: 20px;
  background: var(--nadi-amber-050, #FFF6E1); border: 1px solid var(--nadi-amber-400, #FFC33F);
}
.nadi-p-store__icon{
  flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
  width: 56px; height: 56px; border-radius: 15px; background: #fff; font-size: 20px;
  color: var(--nadi-amber-600, #DE9B05);
}
.nadi-p-store__wt p{ margin: 0; font-size: 15px; line-height: 2.1; font-weight: 600; color: var(--nadi-ink, #14203A); }

/* ---------- comparison: one card per film ---------- */
.nadi-p-cmp{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.nadi-p-cmp__c{
  display: flex; flex-direction: column;
  padding: 14px 14px 26px; border-radius: 25px; background: #fff;
  transition: box-shadow .3s, transform .3s;
}
.nadi-p-cmp__c:not(.is-current):hover{ transform: translateY(-4px); box-shadow: 0 22px 44px -26px rgba(20, 32, 58, .3); }
.nadi-p-cmp__m{ position: relative; height: 170px; border-radius: 20px; overflow: hidden; background: var(--nadi-n050, #F2F5F9); }
.nadi-p-cmp .nadi-p-cmp__m img{ width: 100%; height: 100%; object-fit: cover; border-radius: 0; }
.nadi-p-cmp__flag{
  position: absolute; top: 12px; inset-inline-start: 12px;
  padding: 4px 14px; border-radius: 999px; font-size: 12px; font-weight: 700;
  background: var(--nadi-amber-500, #FAB216); color: var(--nadi-ink, #14203A);
}
.nadi-p-cmp__t{ margin: 20px 12px 12px; font-size: 18px; line-height: 1.6; font-weight: 800; color: var(--nadi-ink, #14203A); }
.nadi-p-cmp__rows{ margin: 0 12px 18px; flex: 1 1 auto; }
.nadi-p-cmp__rows > div{ display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--nadi-n100, #E4E9F0); }
.nadi-p-cmp__rows dt{ font-size: 13px; color: var(--nadi-n500, #7E8896); font-weight: 400; }
.nadi-p-cmp__rows dd{ margin: 0; font-size: 14px; font-weight: 700; color: var(--nadi-ink, #14203A); text-align: end; }
.nadi-p-cmp__c .nadi-tbtn{ margin: 0 12px; }
.nadi-p-cmp__c.is-current{ background: #0A1524; }
.nadi-p-cmp__c.is-current .nadi-p-cmp__m{ background: #16233a; }
.nadi-p-cmp__c.is-current .nadi-p-cmp__t, .nadi-p-cmp__c.is-current dd{ color: #fff; }
.nadi-p-cmp__c.is-current dt{ color: rgba(255,255,255,.6); }
.nadi-p-cmp__c.is-current .nadi-p-cmp__rows > div{ border-color: rgba(255,255,255,.12); }

/* ---------- other products: the theme's similar-products card ---------- */
.nadi-p-rel2.woocommerce ul.products{ margin: 0; }
.nadi-p-rel2 .attachment-woocommerce_link img{ aspect-ratio: 1 / 1; object-fit: cover; }
.nadi-p-rel2__empty{ display: block; aspect-ratio: 1 / 1; background: #E1E4EC; }
/* the theme draws a cart glyph on this button; here it links to the product, so its arrow */
.woocommerce.nadi-p-rel2 .shop_mode_grid ul.products li.product .woocommerce-loop-product__wrapper .product-buttons-wrapper a.button.nadi-view-button:before{ content: '\e82d'; }
.nadi-p-rel2 .price_wrapper{ font-size: 14px; }

/* ---------- v4 responsive ---------- */
@media (max-width: 1150px){
  .nadi-p-cmp{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 991px){
  .nadi-p-notfor2, .nadi-p-grade2, .nadi-p-store{ grid-template-columns: 1fr; }
  .nadi-p-ask2{ flex-direction: column; align-items: flex-start; padding: 32px 28px; }
}
@media (max-width: 575px){
  .nadi-p-cmp{ grid-template-columns: 1fr; }
  .nadi-p-grade2__main{ flex-direction: column; padding: 26px 22px; }
}

/* ======================================================================================
   v5 (2026-09-30) — the native template: theme widgets + Meta Box dynamic tags
   ====================================================================================== */

/* a section whose data widgets all rendered nothing (theme-dynamic.php) is not shown at all */
.elementor-section.nadi-needs-data-section:not(:has(.nadi-data)){ display: none; }

/* ---------- section text (Text Editor + dynamic tag) ---------- */
.elementor-widget-text-editor.nadi-copy,
.elementor-widget-theme-post-content.nadi-copy{ font-size: 16px; line-height: 2.2; color: var(--nadi-n600, #5A6575); text-align: justify; }
.elementor-widget.nadi-copy p{ margin: 0 0 12px; }
.elementor-widget.nadi-copy p:last-child{ margin-bottom: 0; }

/* ---------- theme icon boxes placed in the template: the home page's icon look ---------- */
.nadi-ibox-native .neuros-icon-box-widget .icon-box-item .icon-container{ width: 56px; height: 56px; background-color: #E4E9F0; border-radius: 15px; }
.nadi-ibox-native .neuros-icon-box-widget .icon-container i{ color: #2259AB; transition: color .3s; }
.nadi-ibox-native:hover .neuros-icon-box-widget .icon-container i{ color: #FAB216; }
.nadi-ibox-native .icon-box-info p{ margin: 0; }

/* ---------- hero ---------- */
.nadi-hero-band > .elementor-container, .nadi-hero-band > .elementor-container > .elementor-row{ align-items: center; }
.elementor-widget-image.nadi-hero-img img{
  display: block; width: 100%;
  height: clamp(320px, 38vw, 520px);
  object-fit: cover;
  border-radius: 25px;   /* Elementor's `.elementor img { border-radius: 0 }` needs this specificity */
}
.nadi-hero-text > .elementor-widget-wrap{ padding-inline-start: clamp(10px, 4vw, 60px); }
.elementor-widget-text-editor.nadi-hero-lead{ max-width: 58ch; font-size: clamp(15px, 1.2vw, 18px); line-height: 2.1; }
.elementor-widget-nadi_product_badges .nadi-p-badges{ margin: 4px 0 10px; }
.nadi-hero-text .elementor-widget-neuros_button{ margin-top: 6px; }

/* ---------- key facts: six cards, three a row ---------- */
.nadi-grid3 > .elementor-widget-wrap{ display: flex; flex-wrap: wrap; gap: 24px; }
.nadi-grid3 > .elementor-widget-wrap > .elementor-widget{ margin: 0 !important; }
.nadi-grid3 > .elementor-widget-wrap > .elementor-widget-neuros_heading{ width: 100%; margin-bottom: 4px !important; }
.nadi-grid3 > .elementor-widget-wrap > .nadi-fact{ width: calc((100% - 48px) / 3); }
.nadi-fact > .elementor-widget-container{ height: 100%; box-sizing: border-box; padding: 30px; border-radius: 20px; background: #fff; transition: box-shadow .3s; }
.nadi-fact:hover > .elementor-widget-container{ box-shadow: 0 18px 40px -24px rgba(20, 32, 58, .25); }
.nadi-fact .neuros-icon-box-widget .icon-box-item .icon-container{ background-color: var(--nadi-n050, #F2F5F9); margin: 0 0 16px; }
.nadi-fact .neuros-icon-box-widget .icon-box-item .icon-box-title{ font-size: 13px; line-height: 1.8; font-weight: 400; color: var(--nadi-n500, #7E8896); }
.nadi-fact .neuros-icon-box-widget .icon-box-item .icon-box-info{ margin-top: 4px; font-size: 17px; line-height: 1.9; font-weight: 700; color: var(--nadi-ink, #14203A); }

/* ---------- a row whose columns may lose their only widget: the rest takes the room ----------
   In the browser the columns may sit in an extra .elementor-row wrapper, so both paths are matched. */
.nadi-auto-cols > .elementor-container > .elementor-column:not(:has(.elementor-widget)),
.nadi-auto-cols > .elementor-container > .elementor-row > .elementor-column:not(:has(.elementor-widget)){ display: none; }
/* the survivors grow into the freed room; when every column is present their widths already sum to
   100% and nothing grows (a :has() inside :has() would be simpler but is invalid CSS) */
.nadi-auto-cols > .elementor-container > .elementor-column,
.nadi-auto-cols > .elementor-container > .elementor-row > .elementor-column{ flex-grow: 1; }
.nadi-auto-cols{ margin-bottom: 22px; }

/* ---------- usage: the machine card ---------- */
.nadi-flag-card > .elementor-widget-container{ padding: 30px 32px; border-radius: 20px; background: #0A1524; }
.nadi-flag-card .neuros-icon-box-widget .icon-box-item .icon-container{ background-color: rgba(255,255,255,.1); }
.nadi-flag-card .neuros-icon-box-widget .icon-container i{ color: var(--nadi-amber-400, #FFC33F); }
.nadi-flag-card .neuros-icon-box-widget .icon-box-item .icon-box-title{ color: #fff; font-size: 18px; }
.nadi-flag-card .neuros-icon-box-widget .icon-box-item .icon-box-info{ color: rgba(255,255,255,.75); font-size: 14px; line-height: 2; }

/* ---------- grade: a white card, and the navy freezer card beside it ---------- */
.nadi-grade-card > .elementor-widget-container{ height: 100%; box-sizing: border-box; padding: 34px 36px; border-radius: 25px; background: #fff; }
.nadi-grade-card .neuros-icon-box-widget .icon-box-item .icon-container{ width: 72px; height: 72px; background-color: var(--nadi-blue-050, #F4F8FD); border-radius: 20px; }
.nadi-grade-card .neuros-icon-box-widget .icon-box-item .icon-container i{ font-size: 26px; }
.nadi-grade-card .neuros-icon-box-widget .icon-box-item .icon-box-title{ font-size: 20px; font-weight: 800; color: var(--nadi-ink, #14203A); }
.nadi-grade-card .neuros-icon-box-widget .icon-box-item .icon-box-info{ font-size: 15px; line-height: 2.1; color: var(--nadi-n600, #5A6575); text-align: justify; }
.nadi-freezer-card > .elementor-widget-container{ height: 100%; box-sizing: border-box; padding: 34px 32px; border-radius: 25px; background: #0A1524; }
.nadi-freezer-card .neuros-icon-box-widget .icon-box-item .icon-container{ background-color: rgba(255,255,255,.1); }
.nadi-freezer-card .neuros-icon-box-widget .icon-container i{ color: #9EC6EC; }
.nadi-freezer-card .neuros-icon-box-widget .icon-box-item .icon-box-title{ color: #fff; }
.nadi-freezer-card .neuros-icon-box-widget .icon-box-item .icon-box-info{ color: rgba(255,255,255,.75); }
.nadi-auto-cols .elementor-column > .elementor-widget-wrap{ height: 100%; }
/* the cards fill their column; other widgets (the hero's buttons) keep their own width */
.nadi-auto-cols .elementor-column > .elementor-widget-wrap > .elementor-widget-neuros_icon_box{ width: 100%; }

/* ---------- storage: cards in a wrapping row, the warning wider and amber ---------- */
.nadi-gridauto > .elementor-widget-wrap{ display: flex; flex-wrap: wrap; gap: 18px; }
.nadi-gridauto > .elementor-widget-wrap > .elementor-widget{ margin: 0 !important; flex: 1 1 200px; }
.nadi-gridauto > .elementor-widget-wrap > .nadi-warn-card{ flex: 2 1 380px; }
.nadi-store-card > .elementor-widget-container{ height: 100%; box-sizing: border-box; padding: 28px; border-radius: 20px; background: var(--nadi-n050, #F2F5F9); }
.nadi-store-card .neuros-icon-box-widget .icon-box-item .icon-container{ background-color: #fff; }
.nadi-store-card .neuros-icon-box-widget .icon-box-item .icon-box-title{ font-size: 13px; font-weight: 400; color: var(--nadi-n500, #7E8896); }
.nadi-store-card .neuros-icon-box-widget .icon-box-item .icon-box-info{ font-size: 16px; font-weight: 700; color: var(--nadi-ink, #14203A); }
.nadi-warn-card > .elementor-widget-container{ height: 100%; box-sizing: border-box; padding: 28px 30px; border-radius: 20px; background: var(--nadi-amber-050, #FFF6E1); border: 1px solid var(--nadi-amber-400, #FFC33F); }
.nadi-warn-card .neuros-icon-box-widget .icon-box-item .icon-container{ background-color: #fff; }
.nadi-warn-card .neuros-icon-box-widget .icon-container i{ color: var(--nadi-amber-600, #DE9B05); }
.nadi-warn-card .neuros-icon-box-widget .icon-box-item .icon-box-info{ font-size: 15px; line-height: 2.1; font-weight: 600; color: var(--nadi-ink, #14203A); }

/* ---------- v5 responsive ---------- */
@media (max-width: 991px){
  .nadi-grid3 > .elementor-widget-wrap > .nadi-fact{ width: calc((100% - 24px) / 2); }
  .nadi-hero-text > .elementor-widget-wrap{ padding-inline-start: 10px; }
}
@media (max-width: 575px){
  .nadi-grid3 > .elementor-widget-wrap > .nadi-fact{ width: 100%; }
  .nadi-fact > .elementor-widget-container{ padding: 24px; }
}

/* ======================================================================================
   r7 (2026-09-30) — round 7 of the owner's review
   ====================================================================================== */

/* ---------- amber buttons on light ground: the CTA box's look ----------
   The theme's gradient-border style draws a blue gradient in ::after; on the navy CTA it vanishes,
   on white it framed the amber in blue. The softer amber (#FFC33F) is the CTA's. */
/* `body` in front: nadi.css (child theme) has the same selectors and loads later, so without it
   the saturated amber and its darker hover won — the CTA box look is what the owner asked for */
body .elementor-widget.nadi-btn-accent .neuros-button,
body .nadi-tbtn.nadi-btn-accent .neuros-button{ background-color: var(--nadi-amber-400, #FFC33F); border-color: var(--nadi-amber-400, #FFC33F); color: var(--nadi-ink, #14203A); }
body .elementor-widget.nadi-btn-accent .neuros-button:hover,
body .nadi-tbtn.nadi-btn-accent .neuros-button:hover{ background-color: var(--nadi-amber-500, #FAB216); border-color: var(--nadi-amber-500, #FAB216); color: var(--nadi-ink, #14203A); }
body .elementor-widget.nadi-btn-accent .neuros-button::after,
body .nadi-tbtn.nadi-btn-accent .neuros-button::after{ display: none; }

/* ---------- hero: text uses its column, wider buttons ---------- */
.elementor-widget-text-editor.nadi-hero-lead{ max-width: none; }
.nadi-hero-text .elementor-widget-neuros_button .neuros-button{ min-width: 190px; padding-inline: 40px; justify-content: center; }

/* ---------- a photo beside text (usage, specifications) ---------- */
.nadi-side-row > .elementor-container,
.nadi-side-row > .elementor-container > .elementor-row{ align-items: stretch; }
.nadi-side-row .elementor-column:has(.nadi-side-img) > .elementor-widget-wrap{ height: 100%; }
.elementor-widget-image.nadi-side-img{ height: 100%; }
.elementor-widget-image.nadi-side-img > .elementor-widget-container{ height: 100%; }
.elementor-widget-image.nadi-side-img img{
  display: block; width: 100%; height: 100%; min-height: 380px; max-height: 640px;
  object-fit: cover; border-radius: 25px;
}
.nadi-side-text > .elementor-widget-wrap{ align-content: center; }

/* usage: the two boxes side by side under the text */
.nadi-side-text > .elementor-widget-wrap{ column-gap: 18px; }
/* .nadi-side-row too: the row is also .nadi-auto-cols, whose "cards fill the column" rule is otherwise stronger */
.nadi-side-row .nadi-side-text > .elementor-widget-wrap > .nadi-usage-box{ width: calc(50% - 9px); margin-bottom: 18px; }
.nadi-usage-box > .elementor-widget-container{ height: 100%; box-sizing: border-box; padding: 26px 28px; border-radius: 20px; background: #fff; }
.nadi-usage-box .neuros-icon-box-widget .icon-box-item .icon-container{ background-color: var(--nadi-n050, #F2F5F9); margin: 0 0 14px; }
.nadi-usage-box .neuros-icon-box-widget .icon-box-item .icon-box-title{ font-size: 13px; line-height: 1.8; font-weight: 400; color: var(--nadi-n500, #7E8896); }
.nadi-usage-box .neuros-icon-box-widget .icon-box-item .icon-box-info{ margin-top: 4px; font-size: 15px; line-height: 2; font-weight: 700; color: var(--nadi-ink, #14203A); }

/* ---------- the spec table, with its values still to come ---------- */
.nadi-p-specs--empty{ margin: 6px 0 14px; border-radius: 20px; overflow: hidden; background: var(--nadi-n050, #F2F5F9); }
.nadi-p-specs--empty thead th{ font-size: 13px; font-weight: 700; color: var(--nadi-ink, #14203A); background: #E4E9F0; }
.nadi-p-specs--empty tbody th{ font-weight: 700; color: var(--nadi-ink, #14203A); }
.nadi-p-specs--empty td{ font-weight: 400; color: var(--nadi-n600, #5A6575); }
.nadi-p-specs--empty td.is-empty{ color: var(--nadi-n300, #C6CDD8); font-weight: 700; }
.nadi-p-specs--empty th, .nadi-p-specs--empty td{ border-bottom-color: #fff; }
.elementor-widget-nadi_product_specs .nadi-tbtn{ margin-bottom: 26px; }
.nadi-p-specs__note{ margin: 0 0 20px; font-size: 14px; line-height: 2; color: var(--nadi-n600, #5A6575); }

/* ---------- FAQ and downloads, one row ---------- */
.nadi-p-files a{ background: var(--nadi-n050, #F2F5F9); }

@media (max-width: 767px){
  .nadi-side-row .nadi-side-text > .elementor-widget-wrap > .nadi-usage-box{ width: 100%; }
  .elementor-widget-image.nadi-side-img img{ min-height: 260px; }
}

/* ======================================================================================
   r8 (2026-09-30) — round 8 of the owner's review
   ====================================================================================== */

/* hero: the badges get room from the text above them */
.nadi-hero-text .elementor-widget-nadi_product_badges .nadi-p-badges{ margin-top: 18px; }

/* the usage + grade band is white now: its cards go light gray so they still read as cards */
.nadi-usage-box > .elementor-widget-container{ background: var(--nadi-n050, #F2F5F9); }
.nadi-usage-box .neuros-icon-box-widget .icon-box-item .icon-container{ background-color: #fff; }
.nadi-grade-card > .elementor-widget-container{ background: var(--nadi-n050, #F2F5F9); height: auto; }
.nadi-grade-card .neuros-icon-box-widget .icon-box-item .icon-container{ background-color: #fff; }
.nadi-freezer-card > .elementor-widget-container{ height: auto; }
.nadi-side-text > .elementor-widget-wrap > .nadi-grade-card,
.nadi-side-text > .elementor-widget-wrap > .nadi-freezer-card{ width: 100%; margin-bottom: 18px; }

/* ---------- vertical rhythm inside sections (found by qa/spacing.mjs) ----------
   Widgets carry no spacing of their own here, so consecutive text blocks read as one paragraph and a
   card starts right under the text. A margin set on a widget in Elementor is more specific and wins. */
.elementor-widget.nadi-copy + .elementor-widget.nadi-copy{ margin-top: 10px; }
.elementor-widget.nadi-copy + .elementor-widget:not(.nadi-copy):not(.elementor-widget-neuros_heading){ margin-top: 22px; }
.elementor-widget:not(.nadi-copy):not(.elementor-widget-neuros_heading) + .elementor-widget.nadi-copy{ margin-top: 24px; }
.elementor-widget-theme-post-content + .elementor-widget.nadi-copy{ margin-top: 10px; }
@media (max-width: 767px){
  /* !important: each button's own margin, generated by Elementor from the template, is more specific */
  .nadi-hero-text .elementor-widget-neuros_button{ margin-bottom: 12px !important; }
}

/* gallery: three a row, so six photos make two full rows instead of five and an orphan */
.nadi-p-gallery{ grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.nadi-p-gallery img{ height: 280px; }
@media (max-width: 991px){ .nadi-p-gallery{ grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575px){ .nadi-p-gallery{ grid-template-columns: 1fr; } .nadi-p-gallery img{ height: 240px; } }

/* FAQ and downloads side by side: the two white cards need air between them. Elementor paints a
   column's background on its inner wrap, so padding on the column itself opens the gap. */
.elementor-section:has(.nadi-product-faq) > .elementor-container > .elementor-column,
.elementor-section:has(.nadi-product-faq) > .elementor-container > .elementor-row > .elementor-column{ padding-inline: 12px; }
/* the theme's list arrow (ul > li:before) hangs outside the download link */
.nadi-p-files > li::before{ display: none; }

/* ======================================================================================
   r9 (2026-09-30)
   ====================================================================================== */

/* compare cards' "view product" buttons: the theme fills them blue on hover while nadi.css darkens the
   text to #1A468A — dark on dark. White text on the blue fill instead. */
body .nadi-tbtn:not([class*="nadi-btn-"]) .neuros-button:hover,
body .nadi-tbtn:not([class*="nadi-btn-"]) .neuros-button:focus-visible,
body .nadi-tbtn.nadi-btn-outline .neuros-button:hover{ color: #fff; }

/* downloads: file icon, title, and a download arrow at the end */
.nadi-p-files a{ display: flex; align-items: center; gap: 14px; padding: 16px 20px; }
.nadi-p-files__i{
  flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; border-radius: 12px; font-size: 18px;
  background: #fff; color: #D9534F;
}
.nadi-p-files a span{ flex: 1 1 auto; }
.nadi-p-files__go{ flex: 0 0 auto; font-size: 14px; color: var(--nadi-blue-700, #2259AB); transition: transform .3s; }
.nadi-p-files a:hover .nadi-p-files__go{ transform: translateY(3px); }

/* the theme gallery widget in the product template: rounded like the other cards */
.nadi-product-gallery .gallery-item-wrapper img{ border-radius: 20px; }

/* ======================================================================================
   r11 (2026-09-30)
   ====================================================================================== */

/* usage: the two boxes side by side are as tall as each other */
.nadi-side-row .nadi-side-text > .elementor-widget-wrap > .nadi-usage-box{ align-self: stretch; margin-top: 22px; }

/* grade: plain H3 + paragraph instead of a card */
.nadi-grade-text{ text-align: justify; }

/* gallery: the theme's hover keeps its caption in the corner and a slight zoom, without the blur */
.nadi-product-gallery .gallery-wrapper .gallery-item-wrapper .gallery-item-link:hover .gallery-item-media img{
  filter: none; transform: scale(1.05);
}

/* downloads: the file icon on its own, centred on the title's line */
.nadi-p-files__i{ width: auto; height: auto; background: none; border-radius: 0; font-size: 22px; line-height: 1; align-self: center; }
.nadi-p-files__i::before{ display: block; line-height: 1; }
