 


/* ───────── Headings & spacing (no font-size changes) ───────── */
h2{
  margin:.8rem 0 .5rem;
  font-weight:600;
  color:#054f8c;
}
h3{
  margin:1.2rem 0 .3rem;
  font-weight:600;
  color:#0e6eb8;
}
section{
  padding:1.8rem 5vw;
  max-width:1100px;
  margin:auto;
}
ul{margin:.6rem 0 .6rem 1.2rem;padding:0;}
ul.key-specs{list-style:none;margin:0;padding:0;}
ul.key-specs li{
  margin:.3rem 0;
  padding-left:1.4rem;
  position:relative;
}
ul.key-specs li::before{
  content:"✓";
  position:absolute;
  left:0;
  color:#16833e;
  font-weight:700;
}

/* ───────── Table layout (desktop) ───────── */
table{
  width:100%;
  border-collapse:collapse;
  margin-top:.6rem;
}
th,td{
  border:1px solid #d5d5d5;
  padding:.55rem .65rem;
}
th{
  background:#f4f6f9;
  font-weight:600;
  text-align:left;
}
.series-table td:nth-child(1){white-space:nowrap;}
.series-table td:nth-child(2){min-width:190px;}
.series-table tr:nth-child(even){background:#fbfcfe;}

/* ───────── Mobile makeover (≤ 767 px) ───────── */
@media (max-width:767px){

  /* hide header, each <tr> becomes a card */
  table, thead{display:block;width:100%;border:0;}
  thead{display:none;}

  tr{
    display:block;
    margin:0 0 1.2rem;
    background:#fff;
    border:1px solid #d5d5d5;
    border-radius:8px;
    box-shadow:0 1px 3px rgba(0,0,0,.05);
    overflow:hidden;
  }

  /* header bar */
  tr td:first-child{
    text-align:left;  
    display:block;
    background:#054f8c;
    color:#fff;
    font-weight:600;
    text-align:center;
 
    border:none;
  }

  /* data rows */
  tr td:not(:first-child){
    display:grid;
    grid-template-columns:120px 1fr;
    border:none;
    border-top:1px solid #eee;
    padding:.55rem .8rem;
    text-align:left;          /* value now left-aligned */
  }
  tr td:not(:first-child)::before{
    content:attr(data-label);
    font-weight:600;
    color:#054f8c;
    padding-right:.6rem;
    white-space:nowrap;
  }

  tr td:not(:first-child){word-break:break-word;}
}

h2 + h3{
  margin-top:.6rem;           /* default was 1.2rem */
}

.attribute-section {
  width: 100%;
  max-width: 960px;
  padding: 20px;
  border-top: 1px solid #ddd;
}

.section-title {
  font-size: 1.5rem;
  font-weight: bold;
  margin-bottom: 1rem;
}

.section-subtitle {
  font-size: 1.25rem;
  font-weight: bold;
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.attribute-grid {
  display: grid;
  grid-template-columns: 2fr 3fr;
  border: 0.5px solid #ddd;
  border-radius: 4px;
  overflow: hidden;
}

.attribute-row {
  display: contents;
}

.label,
.value {
  padding: 12px;
  font-size: 0.95rem;
  border-bottom: 0.5px solid #ddd;
  display: flex;
  align-items: center;
}

.label {
  background-color: #f8f8f8;
  font-weight: 600;
}

@media (max-width: 768px) {
  .attribute-grid {
    grid-template-columns: 1fr;
  }

  .label,
  .value {
    border-bottom: none;
    border-top: 0.5px solid #ddd;
  }

  .label {
    background-color: #f0f0f0;
  }
}
.product-highlights {
  margin-top: 16px;
  margin-bottom: 24px;
  max-width: 700px;
}

.highlight-list {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.highlight-list li {
  padding: 8px 0;
  font-size: 1rem;
  color: #333;
  line-height: 1.6;
}
@media (max-width: 768px) {
  .highlight-list li {
    font-size: 0.95rem;
    padding: 6px 0;
  }
}

