:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-60c71ca *//* =========================
   Entheos Price List UI
   Clean + consolidated CSS
   ========================= */

/* ---------- Next-level look ---------- */
.entheos-pricelist{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:#0f172a;
}

.entheos-pricelist .pl-wrap{
  border-radius: 22px;
  box-shadow: 0 18px 60px rgba(2,8,23,.10);
  border: 1px solid rgba(148,163,184,.55);
  overflow: hidden;
}

.entheos-pricelist .pl-head{
  padding: 14px 14px 0;
  margin-bottom: 10px;
}

.entheos-pricelist .pl-controls{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}

/* Inputs */
.entheos-pricelist .pl-controls select,
.entheos-pricelist .pl-controls input,
.entheos-pricelist .pl-controls button{
  padding:10px 12px;
  border-radius:999px;
  border: 1px solid rgba(148,163,184,.55);
  background: rgba(255,255,255,.90);
  backdrop-filter: blur(8px);
}

.entheos-pricelist .pl-controls input{
  width:320px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7);
}

.entheos-pricelist .pl-controls button{
  cursor:pointer;
  font-weight:800;
}

.entheos-pricelist .pl-controls button:hover{
  background:#eef2f7;
}

/* Table */
.entheos-pricelist .pl-table{
  width:100%;
  border-collapse:collapse;
}

.entheos-pricelist .pl-table th,
.entheos-pricelist .pl-table td{
  padding:12px 14px;
  border-bottom:1px solid #eef2f7;
  vertical-align: top;
}

.entheos-pricelist .pl-table th{
  text-align:left;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#334155;
  background:#fff;
}

.entheos-pricelist .pl-table td{
  font-size:14px;
}

.entheos-pricelist .pl-table td.num,
.entheos-pricelist .pl-table th.num{
  text-align:right;
  white-space:nowrap;
  font-variant-numeric: tabular-nums;
}

.entheos-pricelist .pl-table thead th{
  background: linear-gradient(180deg, rgba(248,250,252,.96), rgba(255,255,255,.96));
  border-bottom: 1px solid rgba(148,163,184,.45);
  position: sticky;
  top: 0;
  z-index: 3;
}

.entheos-pricelist .pl-table tbody tr:nth-child(odd){
  background: rgba(248,250,252,.55);
}

.entheos-pricelist .pl-table tbody tr:hover{
  background: rgba(226,232,240,.45);
}

.entheos-pricelist .pl-table td strong{
  font-weight: 900;
}

/* Sorting indicators */
.entheos-pricelist .sortable{ cursor:pointer; user-select:none; }
.entheos-pricelist .sortable::after{ content:""; opacity:.6; margin-left:6px; }
.entheos-pricelist .sort-asc::after{ content:"▲"; font-size:10px; }
.entheos-pricelist .sort-desc::after{ content:"▼"; font-size:10px; }

/* Count */
.entheos-pricelist .pl-count{
  padding: 0 14px 14px;
  margin-top: 10px;
  font-size:13px;
  font-weight:700;
  color:#334155;
}

/* Optional badges */
.pl-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  border: 1px solid rgba(148,163,184,.35);
  background: rgba(255,255,255,.85);
  margin-left: 10px;
  white-space: nowrap;
}
.pl-badge.updated{
  border-color: rgba(46,132,124,.35);
  background: rgba(236,253,245,.75);
}

/* ---------- Controls-only header refinement ---------- */
.pl-head--controls{
  padding: 0 0 10px;
  margin-bottom: 10px;
}

/* ---------- Manufacturer pills (single source of truth) ---------- */
:root{
  --pill-desktop: 42px;
  --pill-mobile: 34px;
}

.manu-chips{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
  margin-bottom: 10px;
}

.chip{
  border: 0;
  background: transparent;
  padding: 0;
  cursor:pointer;
  border-radius: 999px;
  line-height: 0; /* good for image-only chips */
}

.chip-img{
  position: relative;
  border-radius: 999px;
}

/* Logo pills */
.entheos-pricelist .manu-chips img.chip-pill{
  height: var(--pill-desktop) !important;
  max-height: var(--pill-desktop) !important;
  width: auto !important;
  display:block;
  border-radius: 999px;
  box-shadow: 0 6px 14px rgba(2,8,23,.10);
  transition: transform .08s ease, box-shadow .08s ease, filter .08s ease;
  filter: saturate(.98);
}

.chip:hover .chip-pill{ transform: translateY(-1px); }
.chip:active .chip-pill{ transform: translateY(0px); }

/* Active state (pills) */
.chip.is-active .chip-pill{
  box-shadow: 0 16px 34px rgba(2,8,23,.16);
  filter: saturate(1.05) contrast(1.02);
  outline: 2px solid rgba(46,132,124,.35);
  outline-offset: 3px;
}

/* ALL pill (text) */
.entheos-pricelist .chip-all{
  line-height: normal !important; /* overrides line-height:0 */
}

.entheos-pricelist .chip-all .chip-all-text{
  height: var(--pill-desktop);
  min-width: 64px;
  padding: 0 16px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  font-size: 14px;
  font-weight: 900;
  border-radius: 999px;

  background: rgba(248,250,252,.95);
  border: 1px solid rgba(148,163,184,.55);
  box-shadow: 0 6px 14px rgba(2,8,23,.10);
}

.entheos-pricelist .chip-all.is-active .chip-all-text{
  outline: 2px solid rgba(46,132,124,.35);
  outline-offset: 3px;
  background: rgba(236,253,245,.9);
}

/* ---------- Desktop responsiveness ---------- */
@media (max-width: 900px){
  .entheos-pricelist .pl-wrap{ overflow:auto; }
  .entheos-pricelist .pl-table{ min-width: 980px; }
  .entheos-pricelist .pl-controls input{ width: 240px; }
}

/* ---------- Mobile: dashboard/table card view + pill sizing ---------- */
@media (max-width: 820px){
  /* Controls stack */
  .pl-head--controls .pl-controls{ flex-direction: column; }
  .entheos-pricelist .pl-controls select,
  .entheos-pricelist .pl-controls input,
  .entheos-pricelist .pl-controls button{ width: 100%; }

  /* Pills become a swipe rail */
  .manu-chips{
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 6px;
    -webkit-overflow-scrolling: touch;
  }

  /* Slight padding so pills don't feel cramped */
  .entheos-pricelist .chip-img{ padding: 6px 10px; }

  /* Mobile pill sizing */
  .entheos-pricelist .manu-chips img.chip-pill{
    height: var(--pill-mobile) !important;
    max-height: var(--pill-mobile) !important;
  }
  .entheos-pricelist .chip-all .chip-all-text{
    height: var(--pill-mobile);
    font-size: 15px;
  }

  /* Make the table container not awkward */
  .entheos-pricelist .pl-wrap{ border-radius: 18px; overflow: hidden; }

  /* Hide the table header on mobile; cards will self-label */
  .entheos-pricelist .pl-table thead{ display:none; }

  /* Turn each row into a card */
  .entheos-pricelist .pl-table,
  .entheos-pricelist .pl-table tbody,
  .entheos-pricelist .pl-table tr,
  .entheos-pricelist .pl-table td{
    display:block;
    width:100%;
  }

  .entheos-pricelist .pl-table tr{
    margin:0;
    border-bottom: 1px solid rgba(148,163,184,.35);
    padding: 12px 12px;
    background: rgba(255,255,255,.92);
  }

  .entheos-pricelist .pl-table tr:hover{ background: rgba(255,255,255,.92); }

  .entheos-pricelist .pl-table td{
    border:0 !important;
    padding:6px 0 !important;
  }

  /* Use data-label attributes for nice "label: value" rows */
  .entheos-pricelist .pl-table td::before{
    content: attr(data-label);
    display:block;
    font-size: 11px;
    letter-spacing:.08em;
    text-transform: uppercase;
    color:#64748b;
    margin-bottom:2px;
    font-weight:800;
  }

  /* Make key fields pop */
  .entheos-pricelist .pl-table td.device{ padding-top: 2px !important; }
  .entheos-pricelist .pl-table td.device strong{
    font-size: 16px;
    font-weight: 900;
    color:#0f172a;
  }

  /* Mobile-only card extras */
  .entheos-pricelist .pl-table td.pricegrid{
    display:grid !important;
    grid-template-columns: 1fr 1fr;
    gap:10px;
    margin-top:8px;
    padding-top:8px !important;
    border-top: 1px dashed rgba(148,163,184,.35);
  }
  .entheos-pricelist .pl-table td.pricegrid::before{ content:""; display:none; }

  .pl-mini{
    border: 1px solid rgba(148,163,184,.35);
    border-radius: 14px;
    padding: 10px 10px;
    background: rgba(248,250,252,.7);
  }
  .pl-mini .lbl{
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing:.08em;
    color:#64748b;
    font-weight:800;
  }
  .pl-mini .val{
    margin-top: 4px;
    font-size: 16px;
    font-weight: 900;
  }

  .badge{
    display:inline-flex;
    align-items:center;
    padding: 5px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    border: 1px solid rgba(148,163,184,.35);
    background: rgba(248,250,252,.8);
    margin-right: 8px;
    margin-top: 6px;
  }

  /* Hide the normal price/warranty/update cells on mobile (pricegrid replaces them) */
  .entheos-pricelist .pl-table td.num,
  .entheos-pricelist .pl-table td[data-label="Warranty"],
  .entheos-pricelist .pl-table td[data-label="Date Updated"]{
    display:none;
  }
}

/* Hide the mobile-only card extras on desktop */
.entheos-pricelist .pl-table td.pricegrid{ display:none; }

.entheos-pricelist .chip-all .chip-all-text{
  color: #334155 !important;
  background: linear-gradient(180deg, #f8fafc, #e2e8f0) !important;
}

/* === MOBILE PILL RAIL: force clean layout (paste at very bottom) === */
@media (max-width: 820px){

  /* Make the chip row a horizontal scroll rail */
  .entheos-pricelist .manu-chips{
    display:flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    gap: 10px !important;
    padding: 6px 2px 10px !important;
    -webkit-overflow-scrolling: touch !important;
    scroll-snap-type: x mandatory;
  }

  .entheos-pricelist .manu-chips .chip{
    flex: 0 0 auto !important;     /* prevents “narrow squeeze” */
    scroll-snap-align: start;
  }

  /* Give each pill button some breathing room */
  .entheos-pricelist .manu-chips .chip-img{
    padding: 6px 10px !important;
  }

  /* Pill image size (readable) */
  .entheos-pricelist .manu-chips img.chip-pill{
    height: 34px !important;
    max-height: 34px !important;
    width: auto !important;
  }

  /* ALL pill matches height */
  .entheos-pricelist .chip-all .chip-all-text{
    height: 34px !important;
    padding: 0 16px !important;
    min-width: 70px !important;
    font-size: 15px !important;
  }
}/* End custom CSS */