/* CARELO v4 / v2-base text enlargement, 2026-10-08.
   Keep v2's plain white coverage section and inline PC coverage figure.
   Enlarge only the existing merchant description; retain v3 alignment/flow fixes. */
#merchants.merchants {
  position: relative !important;
  display: block !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 36px 32px 32px !important;
  background: #fff !important;
  overflow: visible !important;
}
#merchants #merchant-title,
#merchants .merchant-note,
#merchants .merchant-note__sp-break { display: none; }
#merchants .merchant-license-note {
  position: static !important;
  inset: auto !important;
  float: none !important;
  transform: none !important;
  translate: none !important;
  width: min(1120px, 100%) !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  text-align: center !important;
  text-indent: 0 !important;
  letter-spacing: 0 !important;
  word-spacing: 0 !important;
  white-space: normal !important;
}
#merchants #merchant-title {
  display: block !important;
  margin: 0 auto !important;
  font-family: var(--font-heading) !important;
  font-size: clamp(24px, 2.3vw, 32px) !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
}
#merchants #merchant-title span {
  position: static !important;
  transform: none !important;
  translate: none !important;
  opacity: 1 !important;
  clip-path: none !important;
  filter: none !important;
  animation: none !important;
  letter-spacing: 0 !important;
  word-spacing: 0 !important;
  text-align: center !important;
}
#merchants .merchant-title__updated-main { display: block !important; }
#merchants .merchant-title__updated-sub {
  display: block !important;
  margin-top: 8px !important;
  font-size: clamp(18px, 1.8vw, 24px) !important;
  line-height: 1.5 !important;
}
#merchants .merchant-title__updated-sub > span { display: inline !important; }
#merchants .merchant-title__updated-sub strong {
  display: inline !important;
  position: static !important;
  font-family: var(--font-number) !important;
  font-size: clamp(30px, 3vw, 40px) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
  word-spacing: 0 !important;
  margin: 0 !important;
}
#merchants .merchant-note {
  display: block !important;
  width: min(960px, 100%) !important;
  margin: 24px auto 0 !important;
  font-size: 20px !important;
  line-height: 1.8 !important;
  opacity: 1 !important;
  filter: none !important;
}
#merchants .merchant-license-note {
  display: block !important;
  text-align: right !important;
  margin: 16px auto 0 !important;
  font-size: 12px !important;
  line-height: 1.8 !important;
}
#merchants .merchant-license-note p {
  margin: 0 !important;
  letter-spacing: 0 !important;
  word-spacing: 0 !important;
  text-align: right !important;
}
#merchants .merchant-license-note__owner {
  display: inline-block;
  white-space: nowrap;
}

.employee .employee__message {
  width: 100% !important;
  margin: 28px auto 0 !important;
  text-align: center !important;
  letter-spacing: 0 !important;
  word-spacing: 0 !important;
  transform: none !important;
}

.employee .employee__bottom-rule {
  position: static !important;
  inset: auto !important;
  justify-self: center !important;
  width: min(782px, 100%) !important;
  height: 1px !important;
  margin: 24px auto 0 !important;
  transform: none !important;
  translate: none !important;
}

.benefits > .section-rule,
.company-use > .section-rule {
  left: 0 !important;
  right: 0 !important;
  margin-inline: auto !important;
  transform: none !important;
  translate: none !important;
}

#flow.flow {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 68px 32px 72px !important;
  overflow: visible !important;
  background: #fff !important;
}

#flow > h2,
#flow > p {
  position: static !important;
  inset: auto !important;
  width: min(760px, 100%) !important;
  height: auto !important;
  transform: none !important;
  translate: none !important;
  text-align: center !important;
  letter-spacing: 0 !important;
  word-spacing: 0 !important;
  white-space: normal !important;
}

#flow > h2 {
  margin: 0 auto !important;
  font-size: clamp(26px, 2.8vw, 36px) !important;
  line-height: 1.5 !important;
}

#flow > p {
  margin: 14px auto 42px !important;
  font-size: 16px !important;
  line-height: 1.8 !important;
}

#flow .flow-grid {
  position: relative !important;
  inset: auto !important;
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 24px !important;
  width: min(1200px, 100%) !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  transform: none !important;
  translate: none !important;
}

#flow .flow-grid::before {
  content: "";
  position: absolute;
  top: 38px;
  left: calc((100% - 120px) / 12);
  right: calc((100% - 120px) / 12);
  height: 2px;
  background: #b8ded8;
}

#flow .flow-step {
  position: relative !important;
  inset: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-self: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 62px 0 0 !important;
  border: 0 !important;
  overflow: visible !important;
  transform: none !important;
  gap: 0 !important;
}

#flow .flow-step::before {
  top: 32px !important;
  left: calc(50% - 6px) !important;
  width: 12px !important;
  height: 12px !important;
  margin: 0 !important;
  transform: none !important;
  background: #f26a21 !important;
  z-index: 1;
}

#flow .flow-step > span {
  position: absolute !important;
  inset: 0 0 auto !important;
  display: block !important;
  width: 100% !important;
  height: 24px !important;
  margin: 0 !important;
  color: #f26a21 !important;
  font-family: var(--font-number) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 24px !important;
  text-align: center !important;
  letter-spacing: 0 !important;
  transform: none !important;
}

#flow .flow-step > img {
  position: static !important;
  width: 46px !important;
  height: 46px !important;
  max-width: 46px !important;
  max-height: 46px !important;
  margin: 0 !important;
  object-fit: contain !important;
}

#flow .flow-step h3,
#flow .flow-step p {
  position: static !important;
  width: 100% !important;
  max-width: 200px !important;
  height: auto !important;
  letter-spacing: 0 !important;
  word-spacing: 0 !important;
  text-align: center !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  text-wrap: wrap !important;
  transform: none !important;
}

#flow .flow-step__copy {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 200px !important;
}

#flow .flow-step h3 {
  margin: 16px 0 0 !important;
  min-height: 48px !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
}

#flow .flow-step__title-line {
  display: block !important;
  font: inherit !important;
  letter-spacing: 0 !important;
  word-spacing: 0 !important;
}

#flow .flow-step p {
  margin: 8px 0 0 !important;
  font-size: 13px !important;
  line-height: 1.8 !important;
}

@media (min-width: 768px) and (max-width: 1099px) {
  #flow .flow-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; row-gap: 38px !important; }
  #flow .flow-grid::before { display: none; }
  #flow .flow-step::after { content: ""; position: absolute; top: 38px; left: 0; right: 0; height: 2px; background: #b8ded8; }
}

@media (max-width: 767px) {
  #merchants.merchants { padding: 18px 18px 24px !important; }
  #merchants #merchant-title { font-size: clamp(20px, 5.8vw, 24px) !important; line-height: 1.5 !important; }
  #merchants .merchant-title__updated-sub { margin-top: 8px !important; font-size: clamp(16px, 4.5vw, 18px) !important; line-height: 1.65 !important; }
  #merchants .merchant-title__updated-sub > span { display: block !important; }
  #merchants .merchant-title__updated-sub strong { font-size: 30px !important; }
  #merchants .merchant-note__sp-break { display: initial; }
  #merchants .merchant-note { margin-top: 20px !important; font-size: 17px !important; line-height: 1.8 !important; }
  #merchants .merchant-license-note { margin-top: 16px !important; font-size: 11px !important; }
  #flow.flow { padding: 44px 20px 52px !important; }
  #flow > h2 { font-size: 26px !important; }
  #flow > p { margin: 12px auto 28px !important; font-size: 14px !important; }
  #flow .flow-grid { grid-template-columns: 1fr !important; gap: 0 !important; width: min(640px, 100%) !important; }
  #flow .flow-grid::before { display: none; }
  #flow .flow-step { display: grid !important; grid-template-columns: 40px 44px minmax(0, 1fr) !important; grid-template-rows: auto !important; column-gap: 12px !important; row-gap: 0 !important; align-items: start !important; padding: 22px 0 !important; min-height: 122px !important; }
  #flow .flow-step::after { content: ""; position: absolute; top: 0; bottom: 0; left: 19px; right: auto; width: 2px; height: auto; background: #b8ded8; }
  #flow .flow-step:first-child::after { top: 62px; }
  #flow .flow-step:last-child::after { bottom: calc(100% - 62px); }
  #flow .flow-step::before { top: 56px !important; left: 14px !important; width: 12px !important; height: 12px !important; }
  #flow .flow-step > span { position: static !important; inset: auto !important; grid-column: 1 !important; grid-row: 1 !important; width: 40px !important; height: 24px !important; margin: 0 !important; align-self: start !important; justify-self: center !important; font-size: 17px !important; background: #fff; z-index: 1; }
  #flow .flow-step > img { grid-column: 2 !important; grid-row: 1 !important; width: 40px !important; height: 40px !important; margin-top: 2px !important; align-self: start !important; }
  #flow .flow-step__copy { grid-column: 3 !important; grid-row: 1 !important; max-width: none !important; }
  #flow .flow-step h3 { grid-column: 3 !important; grid-row: 1 !important; min-height: 0 !important; max-width: none !important; margin: 0 !important; font-size: 18px !important; line-height: 1.5 !important; text-align: left !important; }
  #flow .flow-step p { max-width: none !important; margin: 8px 0 0 !important; font-size: 14px !important; line-height: 1.7 !important; text-align: left !important; }
}
