
.xcw2,
.xcw2 *{
  box-sizing:border-box;
}

.xcw2{
  width:100%;
  background:#FFFFFF;
  font-family:Arial,Helvetica,sans-serif;
  color:#252525;
}

.xcw2-wrap{
  width:100%;
  max-width:1450px;
  margin:0 auto;
  padding:0 32px;
}


/* =========================================================
   HERO
   ========================================================= */

.xcw2-hero{
  padding:80px 0 72px;
  background:#FFFFFF;
  border-bottom:1px solid #DEDEDE;
}

.xcw2-hero-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:80px;
  align-items:center;
}

.xcw2-eyebrow{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:18px;

  color:var(--mfd-accent,#E00018) !important;
  font-size:10px;
  font-weight:900;
  letter-spacing:2px;
  text-transform:uppercase;
}

.xcw2-eyebrow::before{
  content:"";
  width:34px;
  height:2px;
  background:var(--mfd-accent,#E00018);
}

.xcw2-title{
  margin:0 !important;

  color:#050505 !important;

  font-size:clamp(48px,6vw,76px);
  line-height:.94;

  font-weight:900;
  letter-spacing:-2.5px;

  text-transform:uppercase;
}

.xcw2-title span{
  display:block;
  color:var(--mfd-accent,#E00018) !important;
}

.xcw2-hero-right{
  border-left:3px solid var(--mfd-accent,#E00018);
  padding-left:30px;
}

.xcw2-hero-right strong{
  display:block;
  margin-bottom:12px;

  color:#050505 !important;

  font-size:20px;
  line-height:1.35;
}

.xcw2-hero-right p{
  margin:0 !important;

  color:#5E5E5E !important;

  font-size:14px;
  line-height:1.8;
}


/* =========================================================
   PROTECTION OVERVIEW
   ========================================================= */

.xcw2-overview{
  padding:54px 0 18px;
  background:#FFFFFF;
}

.xcw2-overview-grid{
  display:grid;
  grid-template-columns:.72fr 1.28fr;
  gap:16px;
}


/* =========================================================
   MAIN WARRANTY BLOCK
   ========================================================= */

.xcw2-main-card{
  position:relative;
  overflow:hidden;

  min-height:410px;

  padding:42px;

  display:flex;
  flex-direction:column;
  justify-content:space-between;

  background:
    linear-gradient(
      145deg,
      #111111 0%,
      #0A0A0A 58%,
      #050505 100%
    );
}

.xcw2-main-card::after{
  content:"90";

  position:absolute;
  right:-18px;
  bottom:-40px;

  color:rgba(255,255,255,.035);

  font-size:190px;
  line-height:1;

  font-weight:900;
}

.xcw2-main-card-top{
  position:relative;
  z-index:2;
}

.xcw2-main-card small{
  display:block;
  margin-bottom:12px;

  color:var(--mfd-accent,#E00018) !important;

  font-size:10px;
  font-weight:900;
  letter-spacing:2px;

  text-transform:uppercase;
}

.xcw2-big-number{
  display:block;

  color:#FFFFFF !important;

  font-size:66px;
  line-height:.9;

  font-weight:900;
  letter-spacing:-3px;
}

.xcw2-big-number span{
  display:block;

  margin-top:10px;

  color:var(--mfd-accent,#E00018) !important;

  font-size:29px;
  line-height:1;

  letter-spacing:-1px;
}

.xcw2-main-bottom{
  position:relative;
  z-index:2;

  padding-top:25px;

  border-top:1px solid rgba(255,255,255,.15);
}

.xcw2-main-bottom strong{
  display:block;

  margin-bottom:7px;

  color:#FFFFFF !important;

  font-size:15px;
}

.xcw2-main-bottom p{
  margin:0 !important;

  color:rgba(255,255,255,.68) !important;

  font-size:12px;
  line-height:1.65;
}


/* =========================================================
   OVERVIEW CONTENT
   ========================================================= */

.xcw2-overview-content{
  padding:40px 42px;

  background:#FFFFFF;

  border:1px solid #DEDEDE;
}

.xcw2-label{
  margin-bottom:9px;

  color:var(--mfd-accent,#E00018) !important;

  font-size:9px;
  font-weight:900;
  letter-spacing:1.7px;

  text-transform:uppercase;
}

.xcw2-overview-content h2{
  margin:0 0 15px !important;

  color:#050505 !important;

  font-size:31px;
  line-height:1.05;

  font-weight:900;

  text-transform:uppercase;
}

.xcw2-overview-content > p{
  max-width:730px;

  margin:0 0 27px !important;

  color:#5E5E5E !important;

  font-size:14px;
  line-height:1.75;
}


/* =========================================================
   QUICK ROWS
   ========================================================= */

.xcw2-quick{
  border-top:1px solid #DEDEDE;
}

.xcw2-quick-row{
  display:grid;
  grid-template-columns:175px 1fr;

  gap:25px;

  padding:18px 0;

  border-bottom:1px solid #DEDEDE;
}

.xcw2-quick-row strong{
  color:#050505 !important;

  font-size:12px;
  line-height:1.5;

  font-weight:900;

  text-transform:uppercase;
}

.xcw2-quick-row span{
  color:#5E5E5E !important;

  font-size:13px;
  line-height:1.65;
}


/* =========================================================
   RETURN POLICY
   ========================================================= */

.xcw2-return{
  padding:40px 0 18px;
  background:#FFFFFF;
}

.xcw2-return-box{
  display:grid;
  grid-template-columns:.62fr 1.38fr;

  background:#FFFFFF;

  border:1px solid #DEDEDE;
}

.xcw2-return-heading{
  position:relative;
  overflow:hidden;

  padding:38px;

  background:var(--mfd-accent,#E00018);
}

.xcw2-return-heading::after{
  content:"14";

  position:absolute;
  right:-8px;
  bottom:-34px;

  color:rgba(255,255,255,.09);

  font-size:150px;
  line-height:1;

  font-weight:900;
}

.xcw2-return-heading small{
  position:relative;
  z-index:2;

  display:block;

  margin-bottom:9px;

  color:#FFFFFF !important;

  font-size:9px;
  font-weight:900;
  letter-spacing:1.7px;

  text-transform:uppercase;
}

.xcw2-return-heading h2{
  position:relative;
  z-index:2;

  margin:0 0 12px !important;

  color:#FFFFFF !important;

  font-size:31px;
  line-height:1.05;

  font-weight:900;

  text-transform:uppercase;
}

.xcw2-return-heading strong{
  position:relative;
  z-index:2;

  display:block;

  color:#FFFFFF !important;

  font-size:16px;
  line-height:1.45;
}

.xcw2-return-content{
  padding:28px 36px;
}

.xcw2-return-intro{
  margin:0 0 20px !important;

  color:#5E5E5E !important;

  font-size:13px;
  line-height:1.75;
}

.xcw2-return-list{
  border-top:1px solid #DEDEDE;
}

.xcw2-return-row{
  position:relative;

  padding:15px 0 15px 24px;

  border-bottom:1px solid #DEDEDE;

  color:#5E5E5E !important;

  font-size:12px;
  line-height:1.65;
}

.xcw2-return-row::before{
  content:"";

  position:absolute;

  left:0;
  top:21px;

  width:8px;
  height:8px;

  background:var(--mfd-accent,#E00018);
}

.xcw2-return-row strong{
  color:#050505 !important;
}


/* =========================================================
   COVERAGE
   ========================================================= */

.xcw2-coverage{
  padding:40px 0 18px;
  background:#FFFFFF;
}

.xcw2-section-head{
  margin-bottom:24px;
}

.xcw2-section-head h2{
  margin:0 !important;

  color:#050505 !important;

  font-size:36px;
  line-height:1;

  font-weight:900;

  text-transform:uppercase;
}


/* =========================================================
   TABLE
   ========================================================= */

.xcw2-table{
  background:#FFFFFF;

  border:1px solid #DEDEDE;
}

.xcw2-table-head,
.xcw2-table-row{
  display:grid;
  grid-template-columns:.55fr 1.45fr;
}

.xcw2-table-head{
  background:#050505;
}

.xcw2-table-head div{
  padding:15px 22px;

  color:#FFFFFF !important;

  font-size:9px;
  font-weight:900;
  letter-spacing:1.5px;

  text-transform:uppercase;
}

.xcw2-table-head div:last-child{
  border-left:1px solid rgba(255,255,255,.14);
}

.xcw2-table-row{
  border-bottom:1px solid #DEDEDE;
}

.xcw2-table-row:last-child{
  border-bottom:0;
}

.xcw2-table-name{
  padding:21px 22px;

  color:#050505 !important;

  font-size:13px;
  font-weight:900;

  text-transform:uppercase;
}

.xcw2-table-description{
  padding:21px 22px;

  border-left:1px solid #DEDEDE;

  color:#5E5E5E !important;

  font-size:13px;
  line-height:1.7;
}

.xcw2-table-description strong{
  color:#050505 !important;
}


/* =========================================================
   NOT COVERED
   ========================================================= */

.xcw2-exclusions{
  margin-top:16px;

  display:grid;
  grid-template-columns:.42fr 1.58fr;

  background:#FFFFFF;

  border:1px solid #DEDEDE;
}

.xcw2-exclusions-title{
  padding:32px;

  background:#111111;
}

.xcw2-exclusions-title small{
  display:block;

  margin-bottom:8px;

  color:var(--mfd-accent,#E00018) !important;

  font-size:9px;
  font-weight:900;
  letter-spacing:1.6px;

  text-transform:uppercase;
}

.xcw2-exclusions-title h3{
  margin:0 !important;

  color:#FFFFFF !important;

  font-size:25px;
  line-height:1.05;

  font-weight:900;

  text-transform:uppercase;
}

.xcw2-exclusion-list{
  display:grid;
  grid-template-columns:1fr 1fr;

  padding:18px 30px;
}

.xcw2-exclusion{
  position:relative;

  padding:17px 20px 17px 25px;

  color:#5E5E5E !important;

  font-size:12px;
  line-height:1.6;

  border-bottom:1px solid #DEDEDE;
}

.xcw2-exclusion::before{
  content:"";

  position:absolute;

  left:0;
  top:22px;

  width:8px;
  height:8px;

  background:var(--mfd-accent,#E00018);
}


/* =========================================================
   WARRANTY REMEDY
   ========================================================= */

.xcw2-remedy{
  margin-top:16px;

  padding:28px 32px;

  background:#F5F5F5;

  border:1px solid #DEDEDE;
  border-left:4px solid var(--mfd-accent,#E00018);
}

.xcw2-remedy strong{
  display:block;

  margin-bottom:8px;

  color:#050505 !important;

  font-size:12px;
  font-weight:900;
  letter-spacing:1.3px;

  text-transform:uppercase;
}

.xcw2-remedy p{
  margin:0 !important;

  color:#5E5E5E !important;

  font-size:12px;
  line-height:1.75;
}


/* =========================================================
   SUPPORT
   ========================================================= */

.xcw2-support{
  padding:40px 0 18px;
  background:#FFFFFF;
}

.xcw2-support-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);

  border:1px solid #DEDEDE;

  background:#FFFFFF;
}

.xcw2-support-item{
  padding:31px;

  border-right:1px solid #DEDEDE;
}

.xcw2-support-item:last-child{
  border-right:0;
}

.xcw2-support-number{
  display:block;

  margin-bottom:19px;

  color:var(--mfd-accent,#E00018) !important;

  font-size:10px;
  font-weight:900;
  letter-spacing:2px;
}

.xcw2-support-item h3{
  margin:0 0 9px !important;

  color:#050505 !important;

  font-size:16px;
  line-height:1.3;

  font-weight:900;

  text-transform:uppercase;
}

.xcw2-support-item p{
  margin:0 !important;

  color:#5E5E5E !important;

  font-size:12px;
  line-height:1.7;
}


/* =========================================================
   CONTACT CTA
   ========================================================= */

.xcw2-extended{
  margin-top:16px;

  padding:37px 40px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:40px;

  background:
    linear-gradient(
      135deg,
      #111111 0%,
      #050505 100%
    );
}

.xcw2-extended-copy{
  max-width:800px;
}

.xcw2-extended small{
  display:block;

  margin-bottom:7px;

  color:var(--mfd-accent,#E00018) !important;

  font-size:9px;
  font-weight:900;
  letter-spacing:1.7px;

  text-transform:uppercase;
}

.xcw2-extended h2{
  margin:0 0 9px !important;

  color:#FFFFFF !important;

  font-size:27px;

  font-weight:900;

  text-transform:uppercase;
}

.xcw2-extended p{
  margin:0 !important;

  color:rgba(255,255,255,.68) !important;

  font-size:12px;
  line-height:1.7;
}

.xcw2-extended a{
  flex:0 0 auto;

  min-width:220px;
  min-height:54px;

  padding:0 25px;

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

  background:var(--mfd-accent,#E00018);

  color:#FFFFFF !important;

  text-decoration:none !important;

  font-size:9px;
  font-weight:900;
  letter-spacing:1.4px;

  text-transform:uppercase;

  transition:
    background .2s ease,
    transform .2s ease;
}

.xcw2-extended a:hover{
  background:var(--mfd-accent-hover,#B80014);

  transform:translateY(-2px);
}


/* =========================================================
   FAQ
   ========================================================= */

.xcw2-faq{
  padding:52px 0 18px;
  background:#FFFFFF;
}

.xcw2-faq-layout{
  display:grid;
  grid-template-columns:.42fr 1.58fr;

  gap:45px;
}

.xcw2-faq-intro h2{
  margin:0 0 12px !important;

  color:#050505 !important;

  font-size:34px;
  line-height:1;

  font-weight:900;

  text-transform:uppercase;
}

.xcw2-faq-intro p{
  margin:0 !important;

  color:#5E5E5E !important;

  font-size:13px;
  line-height:1.7;
}

.xcw2-faq-list{
  border-top:1px solid #DEDEDE;
}

.xcw2-faq-item{
  border-bottom:1px solid #DEDEDE;
}

.xcw2-faq-button{
  width:100%;

  padding:20px 0;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:25px;

  border:0;
  background:transparent;

  cursor:pointer;

  text-align:left;

  color:#050505 !important;

  font-family:Arial,Helvetica,sans-serif;

  font-size:14px;
  line-height:1.45;

  font-weight:900;
}

.xcw2-faq-icon{
  flex:0 0 auto;

  width:28px;
  height:28px;

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

  border:1px solid var(--mfd-accent,#E00018);

  color:var(--mfd-accent,#E00018) !important;

  font-size:18px;

  transition:.2s ease;
}

.xcw2-faq-answer{
  display:none;

  max-width:850px;

  padding:0 45px 20px 0;

  color:#5E5E5E !important;

  font-size:13px;
  line-height:1.75;
}

.xcw2-faq-item.active .xcw2-faq-answer{
  display:block;
}

.xcw2-faq-item.active .xcw2-faq-icon{
  transform:rotate(45deg);

  background:var(--mfd-accent,#E00018);

  color:#FFFFFF !important;
}


/* =========================================================
   LEGAL
   ========================================================= */

.xcw2-legal{
  margin-top:35px;
  margin-bottom:72px;

  padding:26px 30px;

  border-top:3px solid var(--mfd-accent,#E00018);

  background:#F5F5F5;
}

.xcw2-legal strong{
  display:block;

  margin-bottom:8px;

  color:#050505 !important;

  font-size:11px;
  font-weight:900;
  letter-spacing:1.3px;

  text-transform:uppercase;
}

.xcw2-legal p{
  margin:0 !important;

  color:#5E5E5E !important;

  font-size:11px;
  line-height:1.75;
}


/* =========================================================
   TABLET
   ========================================================= */

@media(max-width:1000px){

  .xcw2-hero-grid,
  .xcw2-overview-grid,
  .xcw2-faq-layout,
  .xcw2-return-box{
    grid-template-columns:1fr;
  }

  .xcw2-support-grid{
    grid-template-columns:1fr;
  }

  .xcw2-support-item{
    border-right:0;
    border-bottom:1px solid #DEDEDE;
  }

  .xcw2-support-item:last-child{
    border-bottom:0;
  }

  .xcw2-exclusions{
    grid-template-columns:1fr;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:650px){

  .xcw2-wrap{
    padding:0 16px;
  }

  .xcw2-hero{
    padding:50px 0 43px;
  }

  .xcw2-hero-grid{
    gap:30px;
  }

  .xcw2-title{
    font-size:42px;
  }

  .xcw2-hero-right{
    padding-left:20px;
  }

  .xcw2-overview{
    padding-top:35px;
  }

  .xcw2-main-card{
    min-height:350px;
    padding:29px 24px;
  }

  .xcw2-big-number{
    font-size:55px;
  }

  .xcw2-big-number span{
    font-size:25px;
  }

  .xcw2-overview-content{
    padding:29px 22px;
  }

  .xcw2-overview-content h2{
    font-size:27px;
  }

  .xcw2-quick-row{
    grid-template-columns:1fr;
    gap:5px;
  }

  .xcw2-section-head h2{
    font-size:30px;
  }

  .xcw2-return-heading{
    padding:28px 22px;
  }

  .xcw2-return-content{
    padding:24px 22px;
  }

  .xcw2-table-head{
    display:none;
  }

  .xcw2-table-row{
    grid-template-columns:1fr;
  }

  .xcw2-table-name{
    padding-bottom:7px;
  }

  .xcw2-table-description{
    padding-top:5px;

    border-left:0;
  }

  .xcw2-exclusions-title{
    padding:25px 22px;
  }

  .xcw2-exclusion-list{
    grid-template-columns:1fr;

    padding:12px 22px;
  }

  .xcw2-remedy{
    padding:23px 20px;
  }

  .xcw2-support-item{
    padding:25px 22px;
  }

  .xcw2-extended{
    padding:28px 22px;

    flex-direction:column;
    align-items:flex-start;
  }

  .xcw2-extended a{
    width:100%;
  }

  .xcw2-faq{
    padding-top:42px;
  }

  .xcw2-faq-layout{
    gap:20px;
  }

  .xcw2-faq-intro h2{
    font-size:29px;
  }

  .xcw2-faq-answer{
    padding-right:0;
  }

  .xcw2-legal{
    margin-bottom:55px;

    padding:23px 20px;
  }

}
