/* Shared editorial treatment for the 30 US, UK and Norway calculator guides. */
.usc > .tool-backend-html-section,
.ukc > .tool-backend-html-section {
  --guide-blue: #00a4ff;
  --guide-blue-dark: #006eae;
  --guide-lime: #c7f408;
  --guide-ink: #151c27;
  --guide-copy: #4b5565;
  position: relative;
  margin-top: clamp(34px, 5vw, 64px);
  padding: clamp(28px, 4.5vw, 58px);
  overflow: hidden;
  border: 1px solid rgba(0, 164, 255, .18);
  border-radius: clamp(22px, 3vw, 32px);
  background:
    radial-gradient(circle at 100% 0, rgba(199, 244, 8, .18), transparent 22rem),
    linear-gradient(145deg, #fff 0%, #f7fcff 58%, #fbfff2 100%);
  box-shadow: 0 24px 64px rgba(21, 28, 39, .09);
  color: var(--guide-ink);
  counter-reset: guide-section;
}

.usc > .tool-backend-html-section::before,
.ukc > .tool-backend-html-section::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 6px;
  background: linear-gradient(90deg, var(--guide-blue) 0 72%, var(--guide-lime) 72%);
}

.usc > .tool-backend-html-section h2,
.ukc > .tool-backend-html-section h2 {
  position: relative;
  margin: clamp(38px, 5vw, 58px) 0 16px;
  padding-left: 22px;
  color: var(--guide-ink);
  font-size: clamp(1.35rem, 2.3vw, 1.9rem);
  font-weight: 900;
  letter-spacing: -.025em;
  line-height: 1.18;
}

.usc > .tool-backend-html-section h2::before,
.ukc > .tool-backend-html-section h2::before {
  content: "";
  position: absolute;
  left: 0;
  top: .12em;
  width: 7px;
  height: 1em;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--guide-blue), #007ac0);
  box-shadow: 0 1em 0 -.08em var(--guide-lime);
}

.usc > .tool-backend-html-section h2:first-child,
.ukc > .tool-backend-html-section h2:first-child { margin-top: 0; }

.usc > .tool-backend-html-section h3,
.ukc > .tool-backend-html-section h3 {
  margin: 28px 0 10px;
  color: var(--guide-ink);
  font-size: clamp(1.02rem, 1.4vw, 1.16rem);
  font-weight: 850;
  line-height: 1.35;
}

.usc > .tool-backend-html-section p,
.usc > .tool-backend-html-section li,
.ukc > .tool-backend-html-section p,
.ukc > .tool-backend-html-section li {
  color: var(--guide-copy);
  font-size: clamp(.96rem, 1.1vw, 1.04rem);
  line-height: 1.78;
}

.usc > .tool-backend-html-section p,
.ukc > .tool-backend-html-section p { margin: 0 0 16px; }

.usc > .tool-backend-html-section ul,
.usc > .tool-backend-html-section ol,
.ukc > .tool-backend-html-section ul,
.ukc > .tool-backend-html-section ol {
  margin: 14px 0 22px;
  padding-left: 1.4rem;
}

.usc > .tool-backend-html-section li,
.ukc > .tool-backend-html-section li { margin: 7px 0; padding-left: 4px; }
.usc > .tool-backend-html-section li::marker,
.ukc > .tool-backend-html-section li::marker { color: var(--guide-blue); font-weight: 900; }

.usc > .tool-backend-html-section blockquote,
.ukc > .tool-backend-html-section blockquote {
  position: relative;
  margin: 26px 0;
  padding: 20px 22px 20px 58px;
  border: 1px solid rgba(0, 164, 255, .2);
  border-radius: 16px;
  background: rgba(0, 164, 255, .065);
  box-shadow: 0 10px 28px rgba(0, 164, 255, .07);
}

.usc > .tool-backend-html-section blockquote::before,
.ukc > .tool-backend-html-section blockquote::before {
  content: "i";
  position: absolute;
  left: 20px;
  top: 20px;
  display: grid;
  width: 24px;
  height: 24px;
  place-items: center;
  border-radius: 50%;
  background: var(--guide-blue);
  color: #fff;
  font: 900 15px/1 system-ui, sans-serif;
}

.usc > .tool-backend-html-section blockquote p,
.ukc > .tool-backend-html-section blockquote p { margin: 0; color: #30465b; }

.usc > .tool-backend-html-section code,
.ukc > .tool-backend-html-section code {
  display: inline-block;
  max-width: 100%;
  padding: 7px 11px;
  border: 1px solid rgba(0, 164, 255, .16);
  border-radius: 8px;
  background: #eef9ff;
  color: #075985;
  font-size: .92em;
  white-space: normal;
  overflow-wrap: anywhere;
}

.usc > .tool-backend-html-section a,
.ukc > .tool-backend-html-section a {
  color: var(--guide-blue-dark);
  font-weight: 750;
  text-decoration-color: rgba(0, 164, 255, .35);
  text-underline-offset: 3px;
}

.usc > .tool-backend-html-section a:hover,
.ukc > .tool-backend-html-section a:hover { color: #004d7b; text-decoration-color: var(--guide-lime); }

.usc > .tool-backend-html-section .toolistify-faq-accordion,
.ukc > .tool-backend-html-section .toolistify-faq-accordion {
  margin-top: clamp(42px, 6vw, 66px);
  padding: clamp(24px, 4vw, 36px);
  border: 1px solid rgba(0, 164, 255, .18);
  border-radius: 22px;
  background: rgba(255, 255, 255, .76);
  box-shadow: 0 16px 42px rgba(21, 28, 39, .07);
}

.usc > .tool-backend-html-section .toolistify-faq-accordion h2,
.ukc > .tool-backend-html-section .toolistify-faq-accordion h2 { margin-top: 0; }

.usc > .tool-backend-html-section .toolistify-faq-item,
.ukc > .tool-backend-html-section .toolistify-faq-item { border-radius: 14px; }

.usc > .tool-backend-html-section > h2:not(:first-child),
.ukc > .tool-backend-html-section > h2:not(:first-child) {
  padding-top: 28px;
  border-top: 1px solid rgba(0, 164, 255, .13);
}

.usc > .tool-backend-html-section > h2:not(:first-child)::before,
.ukc > .tool-backend-html-section > h2:not(:first-child)::before { top: calc(28px + .12em); }

@media (max-width: 680px) {
  .usc > .tool-backend-html-section,
  .ukc > .tool-backend-html-section {
    margin-top: 30px;
    padding: 26px 18px;
    border-radius: 20px;
  }

  .usc > .tool-backend-html-section blockquote,
  .ukc > .tool-backend-html-section blockquote { padding: 18px 16px 18px 50px; }

  .usc > .tool-backend-html-section blockquote::before,
  .ukc > .tool-backend-html-section blockquote::before { left: 15px; top: 18px; }

  .usc > .tool-backend-html-section .toolistify-faq-accordion,
  .ukc > .tool-backend-html-section .toolistify-faq-accordion { padding: 18px 14px; }
}

@media (prefers-reduced-motion: no-preference) {
  .usc > .tool-backend-html-section a,
  .ukc > .tool-backend-html-section a { transition: color 160ms ease, text-decoration-color 160ms ease; }
}
