
/* TL iRepair Warranty Layout V2 */

/* Keep it scoped */
.tlw2-wrap{ background: transparent; }

/* Hero */
.tlw2-title{ color:#fff; font-size:54px; line-height:1.05; margin:0 0 10px 0; }
.tlw2-kicker{ color:#fff; letter-spacing:.2em; font-size:12px; margin:0 0 22px 0; opacity:.9; }
.tlw2-lead{ color:#fff; max-width:860px; margin:0 auto 14px auto; }

/* Divider */
.tlw2-divider{ display:flex; align-items:center; gap:14px; margin:28px 0 0 0; }
.tlw2-divider span{ height:1px; background:rgba(255,255,255,.55); flex:1; }
.tlw2-divider em{ color:#fff; font-style:normal; letter-spacing:.15em; opacity:.9; }

/* Blocks */
.tlw2-block{ padding:8px 0 0 0; }
.tlw2-h2{ color:#fff; font-size:30px; margin:0 0 10px 0; display:flex; align-items:center; gap:12px; }
.tlw2-sub{ color:rgba(255,255,255,.9); margin:0 0 18px 0; font-weight:600; }
.tlw2-h3{ color:#fff; font-size:22px; margin:22px 0 10px 0; }

/* Lists */
.tlw2-list{ list-style:none; padding:0; margin:0; }
.tlw2-list li{ display:flex; align-items:flex-start; gap:10px; color:#fff; margin:8px 0; font-weight:600; }
.tlw2-note{ color:rgba(255,255,255,.9); margin-top:14px; }

/* Centered sections */
.tlw2-center{ text-align:center; }
.tlw2-h2-center{ justify-content:center; }
.tlw2-list-center li{ justify-content:center; }

/* Paragraph blocks (left aligned by default) */
.tlw2-p{ color:#fff; margin:0 0 16px 0; }

/* Badge icons (rounded square, soft background, red line icons) */
.tlw2-badge{
  width:40px;
  height:40px;
  border-radius:14px;
  background:#fdecec;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 40px;
}
.tlw2-badge svg{
  width:20px;
  height:20px;
  stroke:#b10f0f;
  fill:none;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Smaller badges for bullet lists */
.tlw2-ok, .tlw2-no{
  width:22px;
  height:22px;
  border-radius:8px;
  flex:0 0 22px;
}
.tlw2-ok svg, .tlw2-no svg{
  width:14px;
  height:14px;
  stroke-width:2.2;
}

/* Make the section background full-height behind content even in boxed layouts */
body .tlw2-wrap .section-bg{ display:none !important; }

/* Responsive tweaks */
@media (max-width: 849px){
  .tlw2-title{ font-size:38px; }
  .tlw2-h2{ font-size:24px; }
  .tlw2-wrap{ background: transparent; }
}



/* Mobile fixes for centered tick lists */
@media (max-width: 849px){
  .tlw2-center .tlw2-list-center li{
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 8px;
    margin: 12px 0;
  }
  .tlw2-center .tlw2-list-center li .tlw2-ok,
  .tlw2-center .tlw2-list-center li .tlw2-no{
    flex: 0 0 auto;
  }
}


/* Dropdowns */
.tlw2-dd{ margin:18px 0 0 0; }
.tlw2-dd > summary{ list-style:none; cursor:pointer; color:#fff; font-size:22px; margin:22px 0 10px 0; display:flex; align-items:center; }
.tlw2-dd > summary::-webkit-details-marker{ display:none; }
.tlw2-dd > summary:after{ content:"+"; margin-left:auto; opacity:.9; }
.tlw2-dd[open] > summary:after{ content:"-"; }
.tlw2-dd .tlw2-list{ margin:0; }


/* v2.9: remove dropdowns, keep headings visible */
.tlw2-h3{margin:18px 0 10px;font-size:22px;line-height:1.2;font-weight:800;letter-spacing:.2px;}
.tlw2-h3 + .tlw2-list{margin-top:6px;}
details.tlw2-dd, .tlw2-dd, summary.tlw2-dd-sum{display:block !important;}









/* Warranty accordion */
.tlw2-warranty-page{
  --tlw2-card-bg: #861010;
  --tlw2-card-bg-open: #931313;
  --tlw2-card-border: rgba(255,255,255,.16);
  --tlw2-card-border-open: rgba(255,255,255,.24);
  --tlw2-card-shadow: 0 10px 24px rgba(0,0,0,.10);
}

.tlw2-warranty-page .row > .col > .col-inner{
  height: 100%;
}

.tlw2-warranty-page .tlw2-block{
  background: var(--tlw2-card-bg);
  border: 1px solid var(--tlw2-card-border);
  border-radius: 22px;
  padding: 0;
  margin: 0 0 22px 0;
  overflow: hidden;
  box-shadow: var(--tlw2-card-shadow);
}

.tlw2-warranty-page .tlw2-block.tlw2-open{
  background: var(--tlw2-card-bg-open);
  border-color: var(--tlw2-card-border-open);
}

.tlw2-warranty-page .tlw2-acc-toggle{
  width: 100%;
  background: transparent;
  border: 0;
  padding: 22px 22px;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 14px;
  cursor: pointer;
  text-align: left;
  color: #fff;
}

.tlw2-warranty-page .tlw2-acc-toggle .tlw2-h2{
  margin: 0;
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 25px;
  line-height: 1.15;
  letter-spacing: .01em;
}

.tlw2-warranty-page .tlw2-badge-square{
  flex: 0 0 40px;
}

.tlw2-warranty-page .tlw2-acc-icon{
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.06);
  color: #fff;
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.tlw2-warranty-page .tlw2-block.tlw2-open .tlw2-acc-icon{
  background: rgba(255,255,255,.11);
  border-color: rgba(255,255,255,.24);
  transform: rotate(45deg);
}

.tlw2-warranty-page .tlw2-acc-content{
  display: none;
  padding: 0 22px 22px;
  border-top: 1px solid rgba(255,255,255,.12);
}

.tlw2-warranty-page .tlw2-block.tlw2-open .tlw2-acc-content{
  display: block;
}

.tlw2-warranty-page .tlw2-sub{
  margin: 16px 0 16px;
  color: rgba(255,255,255,.92);
  font-weight: 600;
}

.tlw2-warranty-page .tlw2-h3{
  font-size: 19px;
  margin: 18px 0 10px;
  line-height: 1.2;
}

.tlw2-warranty-page .tlw2-list li{
  gap: 10px;
  margin: 10px 0;
  line-height: 1.42;
}

.tlw2-warranty-page .tlw2-note,
.tlw2-warranty-page .tlw2-p{
  color: rgba(255,255,255,.9);
  margin-top: 14px;
}

.tlw2-warranty-page .tlw2-divider{
  margin: 6px 0 8px;
}

.tlw2-warranty-page .tlw2-acc-toggle:hover .tlw2-acc-icon{
  background: rgba(255,255,255,.1);
}

.tlw2-warranty-page .tlw2-acc-toggle:focus{
  outline: none;
}

.tlw2-warranty-page .tlw2-acc-toggle:focus-visible{
  box-shadow: inset 0 0 0 2px rgba(255,255,255,.15);
}

@media (max-width: 849px){
  .tlw2-warranty-page .tlw2-block{
    border-radius: 18px;
    margin-bottom: 16px;
  }

  .tlw2-warranty-page .tlw2-acc-toggle{
    padding: 18px 16px;
    gap: 12px;
  }

  .tlw2-warranty-page .tlw2-acc-toggle .tlw2-h2{
    font-size: 20px;
    gap: 12px;
  }

  .tlw2-warranty-page .tlw2-badge-square{
    flex-basis: 36px;
    width: 36px;
    height: 36px;
    border-radius: 12px;
  }

  .tlw2-warranty-page .tlw2-badge-square svg{
    width: 18px;
    height: 18px;
  }

  .tlw2-warranty-page .tlw2-acc-icon{
    width: 34px;
    height: 34px;
    flex-basis: 34px;
    border-radius: 10px;
    font-size: 24px;
  }

  .tlw2-warranty-page .tlw2-acc-content{
    padding: 0 16px 18px;
  }

  .tlw2-warranty-page .tlw2-sub{
    margin-top: 14px;
  }

  .tlw2-warranty-page .tlw2-h3{
    font-size: 18px;
  }
}
