/* Tejori — guarantees page */

/* ---------- shared headings (used by the three banded sections) ---------- */

.gb__h {
  margin: 0;
  font-size: 2.5vw;
  font-weight: 500;
  line-height: 3.542vw;
  letter-spacing: 0;
  color: var(--c-green);
}

.gb__sub {
  margin: 0;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 1.875vw;
  letter-spacing: 0;
  color: #000;
}

.gb__f {
  margin: 0;
  font-size: 1.667vw;
  font-weight: 500;
  line-height: 1.875vw;
  color: #000;
}

/* ---------- numbered step rows (two variants) ---------- */

.sl {
  display: flex;
  flex-wrap: wrap;
  gap: 1.563vw 5.198vw;
  padding: 1.302vw 0 2.604vw;
}

.sl--p {
  gap: 1.563vw 8.198vw;
  padding-top: 2.302vw;
}

.sl__i {
  display: flex;
  align-items: center;
  column-gap: 1.563vw;
}

.sl--p .sl__i {
  column-gap: 5.156vw;
}

.sl__n {
  display: flex;
  justify-content: center;
  width: 3.906vw;
  min-width: 3.906vw;
  height: 3.906vw;
  font-family: var(--ff-alt);
  font-size: 2.083vw;
  font-weight: 800;
  line-height: 4.167vw;
  color: #fff;
  background: var(--c-green);
  border-radius: 50%;
}

.sl__i h3 {
  margin: 0;
  font-size: 2.083vw;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  color: #000;
}

/* ---------- intro: photo + money-back copy ---------- */

.gm__in {
  min-height: 38.021vw;
  padding: 0 3.333vw 2.604vw 5.208vw;
}

.gm__w {
  display: flex;
}

.gm__pic {
  order: 1;
}

.gm__pic img {
  display: inline;
  width: 100%;
  max-width: 50.313vw;
}

.gm__r {
  width: 44.635vw;
}

.gm__hd {
  max-width: 39.323vw;
  padding: 3.125vw 0 3.646vw;
}

.gm__sub {
  font-family: var(--ff-script);
  font-size: 2.659vw;
  line-height: 1;
  letter-spacing: 0;
  color: var(--c-green);
}

.gm__h,
.gm__h2 {
  font-size: 2.5vw;
  font-weight: 700;
  line-height: 2.344vw;
  color: var(--c-green);
}

.gm__h { margin-bottom: 2.031vw; }
.gm__h2 { margin-bottom: 2.344vw; }

.gm__d {
  font-size: 1.667vw;
  font-weight: 500;
  line-height: 2.266vw;
  letter-spacing: 0;
  color: #000;
}

/* taken out of flow so it can run wider than the column it sits in */
.gm__d2 {
  position: absolute;
  max-width: 47.396vw;
  font-size: 1.25vw;
  font-weight: 600;
  line-height: 1.875vw;
  color: #000;
}

/* ---------- time-checked band ---------- */

.tc__w {
  display: flex;
  align-items: center;
  gap: 6.458vw;
}

/* inline, so the box keeps the text line's full height; and max-width is
   released so the column next to it can't squeeze the photo */
.tc__img img,
.tr__img img {
  display: inline;
  width: 41.198vw;
  max-width: none;
}

/* ---------- parcel tracking band ---------- */

.pa {
  position: relative;
  overflow: hidden;
}

.pa__in::after {
  content: "";
  position: absolute;
  right: -2.604vw;
  bottom: -1.042vw;
  width: 31.406vw;
  height: 23.594vw;
  background: url(../img/bgtick.png) no-repeat;
}

.pa__w {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6.458vw;
  padding: 3.646vw 0 4.688vw;
  text-align: center;
}

/* ---------- clear pricing ---------- */

.cp {
  padding-bottom: 4.01vw;
  background: #fbfbfb;
}

.cp__in {
  width: 100%;
  max-width: 89.583vw;
  margin-inline: auto;
}

.cp__grid {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.cp__grid > div {
  width: 50%;
}

.cp__l {
  padding-left: 2.292vw;
}

.cp__h {
  max-width: 26.042vw;
  margin: 0;
  font-size: 2.763vw;
  font-weight: 400;
  line-height: 3.021vw;
  letter-spacing: .414vw;
  text-transform: uppercase;
  color: #000;
}

.cp__h span {
  font-weight: 700;
  line-height: 1;
}

.cp__h span span {
  color: var(--c-green);
}

.cp__t,
.cp__n {
  max-width: 30.833vw;
  font-size: 1.667vw;
  font-weight: 600;
  line-height: 2.5vw;
  letter-spacing: 0;
  color: #000;
}

.cp__t { margin: 1.823vw 0; }
.cp__n { margin: 0; }

.cp__r img {
  width: 42.604vw;
  margin-left: auto;
}

.cp__n a {
  text-decoration: none;
  color: var(--c-green);
  cursor: default;
}

/* ---------- trust band ---------- */

.tr__w {
  display: flex;
  align-items: center;
  gap: 6.458vw;
}

.tr__list {
  display: flex;
  flex-wrap: wrap;
  gap: 2.083vw;
  margin: 2.604vw 0;
}

.tr__list li {
  position: relative;
  padding-left: 2.969vw;
  font-size: 2.083vw;
  font-weight: 700;
  line-height: 1.563vw;
  color: #000;
}

.tr__list li::before {
  content: "";
  position: absolute;
  top: .156vw;
  left: 0;
  padding: .677vw .625vw;
  background: url(../img/strlists.png) center / cover no-repeat;
}

.tr .btn {
  --btn-hover: var(--c-green);
  max-width: 10.417vw;
  margin-top: 2.604vw;
  padding: .547vw .521vw;
  color: #fff;
  background: #000;
}

.tr .btn svg {
  height: 1.458vw;
}

@media (max-width: 767px) {
  .gb__h {
    font-size: 8.182vw;
    line-height: 100%;
  }

  .gb__sub,
  .gb__f {
    font-size: 4.091vw;
    line-height: 6.136vw;
  }

  .sl,
  .sl--p {
    flex-direction: column;
    gap: 4.545vw;
    padding: 5.682vw 4.545vw 5.682vw 0;
  }

  .sl--p {
    gap: 3.409vw;
    padding-block: 4.545vw;
  }

  .sl__i,
  .sl--p .sl__i {
    column-gap: 5.114vw;
  }

  .sl__n {
    align-items: normal;
    width: 12.614vw;
    min-width: 12.614vw;
    height: 12.614vw;
    margin-top: 1.136vw;
    font-size: 6.818vw;
    line-height: 13.409vw;
    text-align: center;
  }

  .sl__i h3 {
    margin-bottom: 0;
    font-size: 5.455vw;
    line-height: 125%;
  }

  .gm {
    padding: 4.545vw;
  }

  .gm__in {
    padding-inline: 0;
  }

  .gm__w {
    display: block;
  }

  .gm__pic img {
    max-width: 100%;
  }

  .gm__r {
    width: 100%;
    margin-top: 2.273vw;
  }

  .gm__hd {
    max-width: 100%;
    padding-block: 0;
  }

  .gm__sub {
    font-size: 8.701vw;
  }

  .gm__h,
  .gm__h2 {
    margin-bottom: 5.682vw;
    font-size: 8.182vw;
    line-height: 8.182vw;
  }

  .gm__d {
    margin-bottom: 5.955vw;
    font-size: 3.409vw;
    line-height: 150%;
    letter-spacing: 0;
  }

  .gm__d2 {
    position: static;
    max-width: 100%;
    margin-bottom: 0;
    font-size: 3.409vw;
    font-weight: 500;
    line-height: 150%;
    letter-spacing: 0;
  }

  .tc__w {
    flex-direction: column;
    gap: 4.545vw;
    padding-bottom: 6.818vw;
    background: #fbfbfb;
  }

  .tc__img img,
  .tr__img img,
  .cp__r img {
    width: 100%;
  }

  .tc__c {
    padding-inline: 4.545vw;
  }

  .tc .gb__sub {
    margin-top: 6.818vw;
  }

  .pa__in::after {
    right: -10.227vw;
    bottom: 25vw;
    width: 65vw;
    height: 48.864vw;
    background-size: cover;
  }

  .pa__w {
    padding: 7.273vw 4.545vw 7.955vw;
    text-align: left;
  }

  .pa .gb__sub {
    margin-top: .818vw;
  }

  .cp {
    padding-bottom: 0;
  }

  .cp__in {
    max-width: 100%;
    padding-bottom: 9.091vw;
  }

  .cp__grid {
    flex-direction: column;
    align-items: flex-start;
  }

  .cp__grid > div {
    width: 100%;
  }

  .cp__l {
    order: 1;
    padding-inline: 20px;
  }

  .cp__h {
    max-width: 86.364vw;
    margin-top: 6.818vw;
    font-size: 9.043vw;
    line-height: 10vw;
    letter-spacing: 1.356vw;
  }

  .cp__t,
  .cp__n {
    max-width: 100%;
    font-size: 5.455vw;
    line-height: 8.182vw;
  }

  .cp__t {
    margin: 5.682vw 0 4.545vw;
  }

  .tr__w {
    flex-direction: column;
    gap: 0;
  }

  .tr__c {
    padding: 4.545vw 4.545vw 0;
  }

  .tr .gb__h {
    line-height: 7.727vw;
  }

  .tr .gb__sub,
  .tr .gb__f {
    margin-top: 5.682vw;
  }

  .tr__list {
    flex-flow: column wrap;
    gap: 4.545vw;
    margin: 6.818vw 0 0;
  }

  .tr__list li {
    margin-bottom: 0;
    padding-left: 9.773vw;
    font-size: 5.455vw;
    line-height: 6.818vw;
    letter-spacing: 0;
  }

  .tr__list li::before {
    top: 1.364vw;
    padding: 2.205vw 2.045vw;
  }

  .tr .btn {
    display: none;
  }

  .tr .btn svg {
    width: 8.759vw;
    height: 6.58vw;
  }
}
