body[data-helper-page] {
  background: #f6f5fb;
  color: #19152c;
}

body[data-helper-page] > main.sitemap-main {
  box-sizing: border-box;
  width: min(100%, 1440px);
  margin: 0 auto;
  padding: clamp(40px, 6vw, 88px) clamp(22px, 8vw, 124px) clamp(72px, 9vw, 132px);
  background: #f6f5fb;
  font-family: Inter, Arial, sans-serif;
}

.sitemap-main,
.sitemap-main * { box-sizing: border-box; }
.sitemap-main .sitemap-section { padding: clamp(28px, 4vw, 56px) 0; border-bottom: 1px solid #dedbe9; }
.sitemap-main .sitemap-intro { position: relative; }
.sitemap-main .sitemap-section:first-child { padding-top: clamp(18px, 2vw, 30px); }
.sitemap-main .sitemap-inner { width: min(100%, 960px); margin-inline: auto; }
.sitemap-main .sitemap-eyebrow { margin: 0 0 15px; color: #7044bd; font-size: .76rem; font-weight: 800; letter-spacing: .14em; line-height: 1.4; text-transform: uppercase; }
.sitemap-main h1,
.sitemap-main h2 { margin: 0; color: #201644; font-family: Poppins, Inter, Arial, sans-serif; letter-spacing: -.035em; }
.sitemap-main h1 { max-width: 11ch; font-size: clamp(3.4rem, 8vw, 6.8rem); font-weight: 700; line-height: .98; }
.sitemap-main h2 { max-width: 20ch; font-size: clamp(1.75rem, 4vw, 3rem); font-weight: 700; line-height: 1.08; }
.sitemap-main .sitemap-lede { max-width: 44rem; margin: 23px 0 0; color: #514b65; font-size: clamp(1rem, 1.5vw, 1.2rem); line-height: 1.7; }
.sitemap-main .sitemap-copy { max-width: 46rem; margin: 20px 0 0; color: #5a546a; font-size: 1rem; line-height: 1.75; }
.sitemap-main .sitemap-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; margin: 27px 0 0; padding: 0; list-style: none; }
.sitemap-main .sitemap-links--single { grid-template-columns: minmax(0, 1fr); }
.sitemap-main .sitemap-links li { min-width: 0; }
.sitemap-main .sitemap-links a,
.sitemap-main .sitemap-feature-link { display: flex; min-height: 68px; align-items: center; justify-content: space-between; gap: 18px; padding: 17px 21px; border: 1px solid #e5e0f0; border-radius: 16px; background-color: #fff; box-shadow: 0 8px 22px rgba(38, 21, 79, .055); color: #2b2050; font-size: 1rem; font-weight: 700; line-height: 1.4; text-decoration: none; transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease; }
.sitemap-main .sitemap-links a span,
.sitemap-main .sitemap-feature-link span { color: #7548c8; font-size: 1.15rem; }
.sitemap-main .sitemap-links a:hover,
.sitemap-main .sitemap-feature-link:hover { transform: translateY(-2px); border-color: #aa8bdf; box-shadow: 0 12px 28px rgba(38, 21, 79, .11); }
.sitemap-main .sitemap-links a:focus-visible,
.sitemap-main .sitemap-feature-link:focus-visible { outline: 3px solid #8054cf; outline-offset: 3px; }
.sitemap-main .sitemap-section--featured { margin-top: 20px; padding: clamp(27px, 4vw, 46px); border: 0; border-radius: 24px; background: linear-gradient(125deg, #292065, #463184); }
.sitemap-main .sitemap-section--featured h2,
.sitemap-main .sitemap-section--featured .sitemap-eyebrow { color: #fff; }
.sitemap-main .sitemap-section--featured .sitemap-links a { max-width: 520px; }
.sitemap-main .sitemap-section--ink { margin-top: 18px; padding: clamp(30px, 5vw, 54px); border: 0; border-radius: 24px; background: #e9e3f6; }
.sitemap-main .sitemap-section--ink .sitemap-feature-link { display: inline-flex; min-height: 56px; justify-content: center; margin-top: 26px; border-color: #39246c; background-color: #39246c; color: #fff; }
.sitemap-main .sitemap-section--ink .sitemap-feature-link span { color: #e7d8ff; }
.sitemap-main .sitemap-section--contact { padding-block: clamp(34px, 5vw, 64px); }
.sitemap-main .sitemap-section--legal .sitemap-links { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sitemap-main .sitemap-section--success { margin-top: 14px; padding: clamp(28px, 4vw, 42px); border: 1px solid #d9e4ff; border-radius: 22px; background: #edf2ff; }
.sitemap-main .sitemap-section--success .sitemap-feature-link { display: inline-flex; min-height: 54px; justify-content: center; margin-top: 23px; border-color: #2857a7; background-color: #2857a7; color: #fff; }
.sitemap-main .sitemap-section--success .sitemap-feature-link span { color: #d6e4ff; }
.sitemap-main .sitemap-section--note { position: relative; margin-top: 10px; padding-bottom: 5px; border: 0; }
.sitemap-main .sitemap-route-mark { margin: 30px 0 0; color: #8c82a5; font-size: .82rem; font-weight: 800; letter-spacing: .18em; }
.sitemap-main .sitemap-route-mark span { padding-inline: 7px; color: #895bc8; }

html.sitemap-reveal-ready .sitemap-main [data-reveal]:not(.is-revealed) { opacity: .12; transform: translateY(15px); }
.sitemap-main [data-reveal] { opacity: 1; transform: translateY(0); transition: opacity .55s ease, transform .55s cubic-bezier(.2,.7,.2,1); }
.sitemap-main [data-reveal].is-revealed { opacity: 1; transform: translateY(0); }

@media (prefers-reduced-motion: reduce) {
  .sitemap-main [data-reveal], .sitemap-main .sitemap-links a, .sitemap-main .sitemap-feature-link { transition: none; }
  html.sitemap-reveal-ready .sitemap-main [data-reveal]:not(.is-revealed) { opacity: 1; transform: none; }
}

@media (max-width: 700px) {
  body[data-helper-page] > main.sitemap-main { padding: 36px 20px 68px; }
  .sitemap-main .sitemap-section { padding-block: 30px; }
  .sitemap-main .sitemap-section--featured,
  .sitemap-main .sitemap-section--ink,
  .sitemap-main .sitemap-section--success { padding: 26px 21px; border-radius: 19px; }
  .sitemap-main .sitemap-links,
  .sitemap-main .sitemap-section--legal .sitemap-links { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .sitemap-main .sitemap-links a { min-height: 60px; padding: 15px 16px; }
}

@media (max-width: 360px) {
  body[data-helper-page] > main.sitemap-main { padding-inline: 16px; }
  .sitemap-main h1 { font-size: clamp(2.9rem, 15vw, 3.4rem); }
  .sitemap-main h2 { font-size: 1.65rem; }
  .sitemap-main .sitemap-links a { gap: 10px; font-size: .94rem; }
}
