/*
 * anchor-nav-review — static template (converted from a plain-CSS Astro
 * source). Single-column long-form review layout: sticky header with
 * anchor-jump nav (#registration/#casino/#sports/#bonuses/#payments/#app/
 * #faq), one quick-links sidebar (desktop only, generic casino categories),
 * long-form article body (trust panel, info tables, reg/bonus/payment
 * grids, security block, FAQ), mobile sticky CTA.
 *
 * Naming: BEM-ish with an `anr-` prefix (Astro source used `mb2-`, carried
 * over from an early "mostbet2" working name — renamed here so the prefix
 * doesn't imply a specific brand; this template is brand-agnostic, see
 * casino-site-design > "Шаблоны дизайна").
 *
 * Font: source declared Inter via Google Fonts. Per the "no external font
 * loads" rule this falls back to the system stack — self-host Inter on a
 * site that wants an exact match.
 */

:root {
  /* Surfaces */
  --anr-bg-page: #07224d;
  --anr-bg-panel: #003266;
  --anr-bg-panel-light: #0a519e;
  --anr-bg-table: #e8e9ff;
  --anr-bg-expert: #fff3cd;

  /* Text */
  --anr-text: #e8f2ff;
  --anr-text-strong: #ffffff;
  --anr-text-muted-blue: #a0c4ff;
  --anr-text-on-table: #000000;
  --anr-text-expert: #856404;
  --anr-text-footer-muted: #888888;

  /* Accents */
  --anr-accent-orange: #fb4d00;
  --anr-accent-orange-hover: #ff6a00;
  --anr-accent-gold: #ffcc00;
  --anr-accent-verified: #4caf50;
  --anr-btn-blue-start: #6398e4;
  --anr-btn-blue-end: #568bd6;
  --anr-btn-green: #28a745;
  --anr-btn-green-hover: #218838;
  --anr-expert-border: #ffc107;

  /* Radii */
  --anr-radius: 12px;
  --anr-radius-btn: 40px;

  /* Redirect modal (static-html-redirect-kit) — matches this site's own accent */
  --go-modal-bg: #0a1f3d;
  --go-modal-text: #e8f2ff;
  --go-modal-accent: #fb4d00;

  --anr-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--anr-bg-page);
  font-family: var(--anr-font-family);
}

img { max-width: 100%; height: auto; display: block; }

/* ---------- Shared button primitive ---------- */
.anr-btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  font-weight: 700;
  padding: 14px 30px;
  border-radius: 8px;
  text-transform: uppercase;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
  color: var(--anr-text-strong);
  text-decoration: none;
  border: none;
  cursor: pointer;
  position: relative;
  overflow: hidden;
}
.anr-btn:hover { transform: translateY(-2px); }
.anr-btn:active { transform: translateY(0); }
.anr-btn:focus-visible { outline: 2px solid var(--anr-accent-gold); outline-offset: 2px; }

.anr-btn--orange {
  background: var(--anr-accent-orange);
  box-shadow: 0 4px 15px rgba(251, 77, 0, 0.4);
}
.anr-btn--orange:hover { background: var(--anr-accent-orange-hover); box-shadow: 0 8px 22px rgba(251, 77, 0, 0.55); }
.anr-btn--blue { background: linear-gradient(var(--anr-btn-blue-start), var(--anr-btn-blue-end)); box-shadow: 0 4px 15px rgba(86, 139, 214, 0.4); }
.anr-btn--blue:hover { box-shadow: 0 8px 22px rgba(86, 139, 214, 0.55); }
.anr-btn--green { background: var(--anr-btn-green); box-shadow: 0 4px 15px rgba(40, 167, 69, 0.4); }
.anr-btn--green:hover { background: var(--anr-btn-green-hover); box-shadow: 0 8px 22px rgba(40, 167, 69, 0.55); }

/* Primary-CTA shine sweep */
.anr-btn--orange::after {
  content: "";
  position: absolute;
  top: 0;
  left: -60%;
  width: 40%;
  height: 100%;
  background: linear-gradient(120deg, transparent, rgba(255, 255, 255, 0.45), transparent);
  transform: skewX(-20deg);
  animation: anr-btn-shine 3.2s ease-in-out infinite;
}
@keyframes anr-btn-shine {
  0% { left: -60%; }
  35% { left: 130%; }
  100% { left: 130%; }
}

@media (prefers-reduced-motion: reduce) {
  .anr-btn { transition: none; }
  .anr-btn:hover { transform: none; }
  .anr-btn--orange::after { animation: none; display: none; }
}

/* ---------- Page wrapper ---------- */
.anr-page-wrapper {
  max-width: 1400px;
  margin: 0 auto;
  padding: 20px;
  display: flex;
  gap: 30px;
  align-items: flex-start;
}
.anr-main { flex: 1; min-width: 0; color: var(--anr-text); }
.anr-main h1, .anr-main h2, .anr-main h3 { color: #fff; font-weight: 800; }
.anr-main h2 { font-size: 26px; border-bottom: 2px solid var(--anr-bg-panel-light); padding-bottom: 8px; margin-top: 30px; width: fit-content; }
.anr-main h3 { font-size: 20px; margin-top: 20px; }
.anr-main p { font-size: 16px; line-height: 1.6; margin-bottom: 15px; }
.anr-main ul, .anr-main ol { margin: 0 0 20px 20px; }
.anr-main li { margin-bottom: 10px; line-height: 1.6; }
.anr-anchor-target { display: block; height: 0; scroll-margin-top: 90px; }

@media (max-width: 900px) {
  .anr-page-wrapper { padding: 15px; display: block; }
}

/* ---------- Header ---------- */
.anr-header {
  background: var(--anr-bg-panel);
  position: sticky;
  top: 0;
  z-index: 1000;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.4);
}
.anr-header__inner {
  max-width: 1400px;
  margin: 0 auto;
  padding: 10px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
}
.anr-header__logo-slot {
  display: block;
  height: 58px;
  line-height: 58px;
  font-size: 20px;
  font-weight: 800;
  color: var(--anr-text-strong);
  text-transform: uppercase;
  text-decoration: none;
}
.anr-header__nav { display: flex; gap: 20px; align-items: center; }
.anr-header__nav a { font-weight: 500; font-size: 16px; color: var(--anr-text); text-decoration: none; }
.anr-header__nav a:hover,
.anr-header__nav a.anr-is-active { color: var(--anr-accent-orange); }

.anr-header__actions { display: flex; gap: 10px; margin-left: 20px; }
.anr-btn--header { padding: 10px 20px; font-size: 14px; }
.anr-header__mobile-actions { display: none; }
.anr-header__menu-toggle { display: none; }
.anr-header__burger { display: none; cursor: pointer; flex-direction: column; gap: 5px; }
.anr-header__burger span { display: block; width: 30px; height: 3px; background: var(--anr-text-strong); border-radius: 2px; }

@media (max-width: 900px) {
  .anr-header__actions--desktop { display: none; }
  .anr-header__mobile-actions {
    display: flex; flex-wrap: wrap; gap: 10px; padding: 12px 15px;
    background: #032b57; border-top: 1px solid rgba(255, 255, 255, 0.05);
  }
  .anr-header__mobile-actions .anr-btn { flex: 1; text-align: center; font-size: 13px; padding: 12px 4px; }
  .anr-header__burger { display: flex; }
  .anr-header__nav {
    display: none; position: absolute; top: 100%; left: 0; width: 100%;
    background: var(--anr-bg-panel); flex-direction: column; padding: 20px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.4); align-items: flex-start;
  }
  .anr-header__menu-toggle:checked ~ .anr-header__nav { display: flex; }
  .anr-header__logo-slot { height: 36px; line-height: 36px; }
}

/* ---------- Sidebar ---------- */
.anr-sidebar {
  width: 250px;
  flex-shrink: 0;
  position: sticky;
  top: 85px;
}
.anr-sidebar__sports {
  background: var(--anr-bg-panel);
  border-radius: var(--anr-radius);
  padding: 15px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}
.anr-sidebar__title {
  font-size: 14px;
  text-transform: uppercase;
  color: var(--anr-text-muted-blue);
  margin-bottom: 12px;
  font-weight: 700;
  letter-spacing: 1px;
}
.anr-sidebar__links { display: flex; flex-direction: column; gap: 6px; }
.anr-sidebar__link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 8px;
  font-weight: 500;
  font-size: 15px;
  background: rgba(255, 255, 255, 0.05);
  color: var(--anr-text);
  text-decoration: none;
  transition: 0.3s;
}
.anr-sidebar__link:hover { background: var(--anr-bg-panel-light); color: var(--anr-text-strong); }

.anr-sidebar__banner {
  margin-top: 15px;
  background: #011b40;
  border: 2px solid #00c3ff;
  border-radius: var(--anr-radius);
  padding: 15px;
  text-align: center;
  box-shadow: 0 0 15px rgba(0, 195, 255, 0.4);
  animation: anr-sidebar-pulse 3.5s ease-in-out infinite;
}
@keyframes anr-sidebar-pulse {
  0%, 100% { box-shadow: 0 0 15px rgba(0, 195, 255, 0.4); }
  50% { box-shadow: 0 0 24px rgba(0, 195, 255, 0.65); }
}
@media (prefers-reduced-motion: reduce) {
  .anr-sidebar__banner { animation: none; }
}
.anr-sidebar__banner-inner {
  border: 2px solid #ffaa00;
  border-radius: 8px;
  padding: 15px 10px;
  box-shadow: 0 0 10px rgba(255, 170, 0, 0.5);
  display: flex;
  flex-direction: column;
  align-items: center;
}
.anr-sidebar__crown { font-size: 36px; margin-bottom: 10px; text-shadow: 0 0 15px #00c3ff; }
.anr-sidebar__banner h4 {
  color: var(--anr-text-strong);
  font-size: 15px;
  margin: 0 0 5px;
  text-transform: uppercase;
  font-weight: 800;
}
.anr-sidebar__amount {
  color: #ffaa00;
  font-size: 22px;
  font-weight: 900;
  text-shadow: 0 0 10px rgba(255, 170, 0, 0.8);
  margin-bottom: 15px;
  display: block;
  line-height: 1.2;
}
.anr-sidebar__banner .anr-btn { width: 100%; font-size: 15px; padding: 10px; }

@media (max-width: 900px) {
  .anr-sidebar { display: none; }
}

/* ---------- Hero ---------- */
.anr-hero {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(to right, var(--anr-bg-panel) 0%, color-mix(in srgb, var(--anr-bg-panel) 55%, transparent) 45%, transparent 85%),
    url("../img/hero-banner.webp") center/cover no-repeat,
    linear-gradient(135deg, var(--anr-bg-panel) 0%, var(--anr-bg-panel-light) 100%);
  border-radius: var(--anr-radius);
  padding: 35px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.anr-hero__text { flex: 1; max-width: 600px; }
.anr-hero__text h1 {
  margin: 0 0 15px;
  font-size: 32px;
  line-height: 1.2;
  font-weight: 800;
  color: var(--anr-text-strong);
}
.anr-hero__subtitle {
  font-size: 18px;
  font-weight: 500;
  color: var(--anr-accent-gold);
  margin-bottom: 25px;
  line-height: 1.5;
}
.anr-hero__btn-group { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.anr-hero__buttons-row { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.anr-hero__trust-badge { font-size: 14px; color: var(--anr-text-muted-blue); padding-left: 5px; }
.anr-hero__image { flex: 1; max-width: 420px; text-align: right; }
.anr-hero__image img { display: block; max-width: 100%; height: auto; border-radius: 8px; margin-left: auto; }

@media (max-width: 900px) {
  .anr-hero { flex-direction: column; text-align: center; padding: 25px 15px; }
  .anr-hero__btn-group { align-items: center; width: 100%; }
  .anr-hero__buttons-row { justify-content: center; width: 100%; }
  .anr-hero__buttons-row .anr-btn { width: 100%; }
  .anr-hero__text h1 { font-size: 28px; }
  .anr-hero__image { margin-top: 20px; max-width: 320px; }
  .anr-hero__image img { margin: 0 auto; }
}

/* ---------- Popular games grid ---------- */
.anr-games { margin: 25px 0; }
.anr-games__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
  margin-top: 15px;
}
.anr-game-card {
  background: var(--anr-bg-panel);
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
  display: flex;
  flex-direction: column;
  transition: transform 0.2s ease, border-color 0.2s ease;
}
.anr-game-card:hover { transform: translateY(-3px); border-color: var(--anr-accent-orange); }
@media (prefers-reduced-motion: reduce) {
  .anr-game-card:hover { transform: none; }
}
.anr-game-card img {
  width: 100%;
  aspect-ratio: 152 / 227;
  object-fit: cover;
}
.anr-game-card__title {
  padding: 10px 10px 4px;
  font-size: 14px;
  font-weight: 700;
  color: var(--anr-text-strong);
  text-align: center;
}
.anr-game-card__btn {
  margin: 8px 10px 10px;
  padding: 8px 10px;
  font-size: 12px;
}

@media (min-width: 601px) {
  .anr-games__grid { grid-template-columns: repeat(3, 1fr); }
}
@media (min-width: 901px) {
  .anr-games__grid { grid-template-columns: repeat(4, 1fr); }
}

/* ---------- Trust panel ---------- */
.anr-trust-panel {
  display: flex;
  gap: 15px;
  margin: 20px 0;
  overflow-x: auto;
  padding-bottom: 10px;
}
.anr-trust-card {
  background: var(--anr-bg-panel);
  padding: 15px;
  border-radius: 8px;
  flex: 1;
  min-width: 160px;
  text-align: center;
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: 0.3s;
}
.anr-trust-card:hover {
  box-shadow: 0 0 15px rgba(251, 77, 0, 0.4);
  border-color: var(--anr-accent-orange);
  background: linear-gradient(var(--anr-bg-panel-light) 0%, var(--anr-bg-panel) 100%);
  transform: translateY(-3px);
}
@media (prefers-reduced-motion: reduce) {
  .anr-trust-card:hover { transform: none; }
}
.anr-trust-card b {
  display: block;
  color: var(--anr-accent-orange);
  font-size: 18px;
  margin-bottom: 3px;
  transition: color 0.3s;
}
.anr-trust-card:hover b { color: var(--anr-accent-gold); }
.anr-trust-card span { font-size: 14px; color: var(--anr-text); }

@media (max-width: 900px) {
  .anr-trust-panel { flex-wrap: nowrap; }
  .anr-trust-card { min-width: 140px; padding: 12px; }
}

/* ---------- Info table ---------- */
.anr-table-wrap {
  width: 100%;
  max-width: 1300px;
  box-sizing: border-box;
  padding: 20px 30px;
  border-radius: 10px;
  margin: 20px auto;
  overflow-x: auto;
  /* Scroll-shadow trick: two edge gradients scroll with the content and
     cancel out except right at the visible edges, two radial "shadows"
     stay fixed to the viewport and only show once there's more to reveal.
     Signals "swipe for more" on the wide (3+ column) tables at narrow
     widths instead of reading as clipped/missing data. */
  background-image:
    linear-gradient(to right, var(--anr-bg-table) 30%, rgba(232, 233, 255, 0)),
    linear-gradient(to right, rgba(232, 233, 255, 0), var(--anr-bg-table) 70%),
    radial-gradient(farthest-side at 0 50%, rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0)),
    radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0));
  background-repeat: no-repeat;
  background-color: var(--anr-bg-table);
  background-size: 40px 100%, 40px 100%, 14px 100%, 14px 100%;
  background-position: left center, right center, left center, right center;
  background-attachment: local, local, scroll, scroll;
}
.anr-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 10px;
  text-align: center;
  font-size: 16px;
  line-height: 20px;
}
.anr-table thead th {
  padding: 12px 16px;
  background: var(--anr-bg-panel-light);
  color: var(--anr-text-strong);
  font-size: 20px;
  font-weight: 700;
  border-radius: 10px;
}
.anr-table tbody td {
  padding: 10px 16px;
  text-align: center;
  vertical-align: middle;
  border: 1px solid var(--anr-bg-panel-light);
  border-radius: 10px;
  background: var(--anr-bg-table);
  color: var(--anr-text-on-table);
}
.anr-table tbody tr td:first-child:nth-last-child(2) {
  font-weight: 600;
  width: 35%;
  background: var(--anr-bg-panel-light);
  color: var(--anr-text-strong);
}

@media (max-width: 900px) {
  .anr-table-wrap { padding: 12px; }
  .anr-table { border-spacing: 6px; font-size: 14px; }
  .anr-table thead th { padding: 10px; font-size: 16px; }
  .anr-table tbody td { padding: 9px 10px; font-size: 14px; }
}

/* ---------- Registration methods grid ---------- */
.anr-reg-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 15px;
  margin: 20px 0;
}
.anr-reg-card {
  background: rgba(255, 255, 255, 0.05);
  border-radius: 8px;
  padding: 15px;
  text-align: center;
  border: 1px solid rgba(255, 255, 255, 0.1);
  font-weight: 500;
  color: var(--anr-text);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  transition: 0.3s;
}
.anr-reg-card:hover { background: rgba(255, 255, 255, 0.1); border-color: var(--anr-bg-panel-light); transform: translateY(-3px); }
@media (prefers-reduced-motion: reduce) {
  .anr-reg-card:hover { transform: none; }
}

/* ---------- Bonus tiles ---------- */
.anr-bonus-tiles {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 15px;
  margin: 20px 0;
}
.anr-bonus-tile {
  background: linear-gradient(135deg, var(--anr-bg-panel), #031633);
  padding: 15px 18px;
  border-radius: 8px;
  border-left: 4px solid var(--anr-accent-orange);
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 16px;
  font-weight: 500;
  color: var(--anr-text);
  transition: background 0.3s, transform 0.2s ease;
}
.anr-bonus-tile:hover { background: linear-gradient(135deg, var(--anr-bg-panel-light), var(--anr-bg-panel)); transform: translateY(-3px); }
@media (prefers-reduced-motion: reduce) {
  .anr-bonus-tile:hover { transform: none; }
}
.anr-bonus-tile__icon { color: var(--anr-accent-orange); font-weight: bold; font-size: 18px; }

/* ---------- Expert note ---------- */
.anr-expert-note {
  background: var(--anr-bg-expert);
  border-left: 5px solid var(--anr-expert-border);
  color: var(--anr-text-expert);
  padding: 15px;
  border-radius: 0 8px 8px 0;
  margin: 20px 0;
  font-size: 16px;
}
.anr-expert-note strong { color: var(--anr-text-expert); }

/* ---------- CTA line (short registration/bonus prompts between sections) ---------- */
.anr-cta-line {
  background: var(--anr-bg-panel-light);
  border-left: 5px solid var(--anr-accent-orange);
  color: var(--anr-text-strong);
  padding: 15px 18px;
  border-radius: 0 8px 8px 0;
  margin: 24px 0;
  font-size: 16px;
  font-weight: 600;
}

/* ---------- Security block ---------- */
.anr-security-block {
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: var(--anr-bg-panel);
  border-radius: var(--anr-radius);
  padding: 25px 30px;
  margin: 20px 0 30px;
  display: flex;
  gap: 20px;
  align-items: flex-start;
}
.anr-security-block__icon { font-size: 35px; line-height: 1; margin-top: 5px; }
.anr-security-block__content h3 { margin: 0 0 15px; color: var(--anr-text-strong); font-size: 20px; }
.anr-security-block__content p { font-size: 15px; margin-bottom: 15px; color: var(--anr-text); }
.anr-security-block__content p:last-child { margin-bottom: 0; }

@media (max-width: 900px) {
  .anr-security-block { flex-direction: column; text-align: center; align-items: center; }
}

/* ---------- FAQ (native <details>) ---------- */
.anr-header__logo,
.anr-faq {
  /* structural wrappers only, no own styling needed */
}
.anr-faq__item {
  border: 1px solid rgba(255, 255, 255, 0.08);
  margin: 0 auto 12px;
  background-color: var(--anr-bg-panel);
  border-radius: 8px;
  transition: border-color 0.3s;
}
.anr-faq__item:hover { border-color: var(--anr-accent-orange); }
.anr-faq__question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  cursor: pointer;
  color: var(--anr-text-strong);
  list-style: none;
  font-weight: 700;
  font-size: 18px;
  line-height: 22px;
  padding: 16px 20px;
}
.anr-faq__question::-webkit-details-marker { display: none; }
.anr-faq__icon { position: relative; width: 14px; height: 14px; flex-shrink: 0; }
.anr-faq__icon::before, .anr-faq__icon::after {
  content: "";
  position: absolute;
  background: var(--anr-accent-orange);
  height: 3px;
  width: 14px;
  top: 6px;
  left: 0;
  transition: transform 0.3s;
}
.anr-faq__icon::after { transform: rotate(90deg); }
.anr-faq__item[open] .anr-faq__question { color: var(--anr-accent-gold); }
.anr-faq__item[open] .anr-faq__icon::after { transform: rotate(0deg); opacity: 0; }
.anr-faq__answer { padding: 0 20px 20px; }
.anr-faq__answer p { color: var(--anr-text); margin: 0; }

/* ---------- Footer ---------- */
.anr-footer {
  background-color: var(--anr-bg-page);
  padding: 30px 0;
}
.anr-footer__inner {
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 30px;
  padding: 0 20px;
}
.anr-footer__inner--top { margin-bottom: 30px; align-items: center; }
.anr-footer__brand-info { flex: 1; min-width: 250px; }
.anr-footer__logo-slot {
  display: block;
  font-size: 20px;
  font-weight: 800;
  color: var(--anr-text-strong);
  text-transform: uppercase;
  text-decoration: none;
}
.anr-footer__brand-info p { font-size: 14px; color: var(--anr-text-footer-muted); margin: 15px 0 10px; }
.anr-footer__payments { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 10px; }
.anr-footer__payments span {
  background: #fff; color: #000; padding: 6px 12px;
  border-radius: 4px; font-size: 12px; font-weight: 800;
}
.anr-footer__links { flex: 2; display: flex; justify-content: center; flex-wrap: wrap; gap: 15px; }
.anr-footer__links a { color: var(--anr-text-muted-blue); font-size: 16px; padding: 5px 10px; font-weight: 700; text-decoration: none; }
.anr-footer__links a:hover { color: var(--anr-accent-orange); }
.anr-footer__brand {
  text-align: center;
  width: 100%;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding-top: 20px;
  font-size: 13px;
  color: #777;
}
.anr-footer__brand p { margin-bottom: 10px; }

/* ---------- Mobile sticky CTA ---------- */
.anr-sticky-cta {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: var(--anr-bg-panel);
  padding: 12px 20px;
  z-index: 1000;
  box-shadow: 0 -5px 15px rgba(0, 0, 0, 0.5);
  text-align: center;
}
.anr-sticky-cta p {
  margin: 0 0 8px;
  font-size: 13px;
  font-weight: 700;
  color: var(--anr-text-muted-blue);
  text-transform: uppercase;
}
.anr-sticky-cta .anr-btn { width: 100%; padding: 12px; font-size: 16px; }

@media (max-width: 900px) {
  .anr-sticky-cta { display: block; }
  /* leave room at the bottom of the page so the fixed CTA never covers content */
  body { padding-bottom: 78px; }
}

/* ---------- 404 page ---------- */
.anr-404 {
  max-width: 700px;
  margin: 0 auto;
  padding: 60px 20px 80px;
  text-align: center;
  color: var(--anr-text);
}
.anr-404 h1 { font-size: 64px; color: var(--anr-text-strong); margin: 0 0 10px; }
.anr-404 p { font-size: 18px; margin-bottom: 25px; }
.anr-404__links { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 20px; margin-top: 30px; }
.anr-404__links a { color: var(--anr-text-muted-blue); text-decoration: none; }
.anr-404__links a:hover { color: var(--anr-accent-orange); }
