/* ==========================================================================
   AMREV SOFTWARE — Main Stylesheet
   Sections: 1-Reset  2-Typography  3-Layout  4-Topbar  5-Nav  6-Hero
             7-Products  8-Trust bar  9-Features  10-Testimonials
             11-Awards  12-Page hero  13-Product pages  14-Pricing
             15-Download  16-Contact  17-Reviews  18-Sidebar
             19-Footer  20-Buttons  21-Utilities  22-Responsive  23-Print
   ========================================================================== */

/* ── 1. Reset / Bootstrap 5 overrides ─────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }

body {
  font-family: var(--font-sans);
  font-size: var(--text-base);
  color: var(--color-text-base);
  background: var(--color-surface);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

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

a {
  color: var(--color-primary);
  text-decoration: none;
  transition: color var(--transition-fast);
}
a:hover { color: var(--color-primary-dark); }

ul { list-style: none; margin: 0; padding: 0; }

.clearfix::after { content: ''; display: table; clear: both; }


/* ── 2. Typography ──────────────────────────────────────────────────────────── */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-sans);
  font-weight: 700;
  line-height: 1.25;
  color: var(--color-text-base);
  margin-top: 0;
}

h1 { font-size: var(--text-5xl); letter-spacing: -0.02em; }
h2 { font-size: var(--text-4xl); letter-spacing: -0.01em; }
h3 { font-size: var(--text-2xl); }
h4 { font-size: var(--text-xl); }
h5 { font-size: var(--text-lg); }
h6 { font-size: var(--text-base); }

p { margin-top: 0; margin-bottom: var(--space-4); color: var(--color-text-muted); }

.text-muted  { color: var(--color-text-muted) !important; }
.text-light  { color: var(--color-text-light) !important; }
.text-primary { color: var(--color-primary) !important; }
.text-success { color: var(--color-success) !important; }
.text-white   { color: #fff !important; }

.section-title {
  font-size: var(--text-3xl);
  font-weight: 700;
  margin-bottom: var(--space-4);
}
.section-subtitle {
  font-size: var(--text-lg);
  color: var(--color-text-muted);
  max-width: 600px;
  margin: 0 auto var(--space-12);
}
.section-tag {
  display: inline-block;
  font-size: var(--text-sm);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--color-primary);
  margin-bottom: var(--space-3);
}


/* ── 3. Layout utilities ───────────────────────────────────────────────────── */
.site-wrapper { overflow-x: clip; }

.section-pad {
  padding-top: var(--space-20);
  padding-bottom: var(--space-20);
}
.section-pad-sm {
  padding-top: var(--space-12);
  padding-bottom: var(--space-12);
}

.section-alt { background-color: var(--color-surface-alt); }
.section-dark {
  background-color: var(--color-footer-bg);
  color: var(--color-footer-text);
}
.section-dark h2,
.section-dark h3,
.section-dark h4 { color: #fff; }
.section-dark p   { color: var(--color-footer-text); }

.text-center-section {
  text-align: center;
}

.divider {
  width: 48px;
  height: 4px;
  background: var(--color-primary);
  border-radius: var(--radius-full);
  margin: 0 auto var(--space-6);
}
.divider-left { margin-left: 0; }


/* ── 4. Topbar ─────────────────────────────────────────────────────────────── */
.amrev-topbar {
  background-color: var(--color-topbar-bg);
  padding: var(--space-2) 0;
  font-size: var(--text-sm);
}
.amrev-topbar a {
  color: rgba(255,255,255,0.85);
  transition: color var(--transition-fast);
}
.amrev-topbar a:hover { color: #fff; }

.amrev-topbar__inner {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: var(--space-4);
}
.amrev-topbar__links {
  display: flex;
  align-items: center;
  gap: var(--space-1);
}
.amrev-topbar__links li { display: flex; align-items: center; }
.amrev-topbar__links .sep {
  width: 1px;
  height: 14px;
  background: rgba(255,255,255,0.25);
  margin: 0 var(--space-2);
}
.amrev-topbar__social {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  margin-left: var(--space-4);
  padding-left: var(--space-4);
  border-left: 1px solid rgba(255,255,255,0.2);
}
.amrev-topbar__social a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: var(--radius-full);
  color: rgba(255,255,255,0.75);
  font-size: var(--text-sm);
  transition: background var(--transition-fast), color var(--transition-fast);
}
.amrev-topbar__social a:hover {
  background: rgba(255,255,255,0.15);
  color: #fff;
}


/* ── 5. Navigation ─────────────────────────────────────────────────────────── */
#amrev-header {
  background: #fff;
  border-bottom: 1px solid var(--color-border);
  position: sticky;
  top: 0;
  z-index: 1000;
  box-shadow: 0 1px 4px rgba(15,23,42,0.06);
}

.amrev-navbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 76px;
}

.amrev-navbar__brand img {
  height: 52px;
  width: auto;
}

.amrev-navbar__nav {
  display: flex;
  align-items: center;
  gap: var(--space-1);
}

.amrev-navbar__nav > li > a {
  display: block;
  padding: var(--space-2) var(--space-4);
  font-size: var(--text-sm);
  font-weight: 500;
  color: var(--color-text-base);
  border-radius: var(--radius-md);
  transition: background var(--transition-fast), color var(--transition-fast);
  white-space: nowrap;
}
.amrev-navbar__nav > li > a:hover,
.amrev-navbar__nav > li > a.active {
  background: var(--color-primary-light);
  color: var(--color-primary);
}

/* Dropdown */
.amrev-navbar__nav .has-dropdown {
  position: relative;
}
.amrev-navbar__nav .has-dropdown > a::after {
  content: '';
  display: inline-block;
  width: 0; height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid currentColor;
  margin-left: var(--space-2);
  vertical-align: middle;
  opacity: 0.6;
}
.amrev-dropdown {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  padding-top: 8px;
  min-width: 220px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  overflow: visible;
  z-index: 9999;
}
.amrev-navbar__nav .has-dropdown:hover > .amrev-dropdown,
.amrev-dropdown .has-subdropdown:hover > .amrev-subdropdown {
  display: block;
}
.amrev-dropdown a {
  display: block;
  padding: var(--space-3) var(--space-5);
  font-size: var(--text-sm);
  color: var(--color-text-base);
  border-left: 3px solid transparent;
  transition: background var(--transition-fast), border-color var(--transition-fast);
}
.amrev-dropdown a:hover {
  background: var(--color-surface-alt);
  border-left-color: var(--color-primary);
  color: var(--color-primary);
}
/* Sub-dropdown (Email Recovery) */
.amrev-dropdown .has-subdropdown {
  position: relative;
}
.amrev-subdropdown {
  display: none;
  position: absolute;
  left: calc(100% + 2px);
  top: -8px;
  min-width: 240px;
  width: max-content;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  overflow: visible;
  z-index: 9999;
}
.amrev-subdropdown a {
  white-space: nowrap;
}

.amrev-dropdown .has-subdropdown > a::after {
  content: '\f054';
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  font-size: var(--text-xs);
  float: right;
  margin-top: 2px;
  opacity: 0.5;
}
/* Dropdowns opened by JS hover handler in amrev.js (with close delay).
   No CSS :hover rule needed — JS uses fadeIn/fadeOut on display. */

/* Mobile menu — always hidden by default; only shown on small screens */
.amrev-mobile-menu {
  display: none;
}

/* Mobile toggle button */
.amrev-navbar__toggler {
  display: none;
  background: none;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  padding: var(--space-2) var(--space-3);
  cursor: pointer;
  color: var(--color-text-base);
  font-size: var(--text-lg);
}

/* Scroll-to-top */
.amrev-scrolltop {
  position: fixed;
  bottom: var(--space-6);
  right: var(--space-6);
  width: 44px;
  height: 44px;
  background: var(--color-primary);
  color: #fff;
  border-radius: var(--radius-full);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--text-sm);
  box-shadow: var(--shadow-md);
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--transition-base), visibility var(--transition-base), transform var(--transition-base);
  z-index: 999;
  text-decoration: none;
}
.amrev-scrolltop.visible {
  opacity: 1;
  visibility: visible;
}
.amrev-scrolltop:hover {
  background: var(--color-primary-dark);
  color: #fff;
  transform: translateY(-2px);
}


/* ── Hero Carousel ─────────────────────────────────────────────────────────── */
.amrev-hero-carousel {
  background: linear-gradient(135deg, #f0f7ff 0%, #e8f4fd 50%, #f5f0ff 100%);
  position: relative;
  overflow: hidden;
}
.amrev-hero-carousel::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%232563EB' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  pointer-events: none;
  z-index: 0;
}
.amrev-hero-carousel .carousel-item { padding: var(--space-10) 0 var(--space-8); position: relative; z-index: 1; }
.amrev-hero-carousel .carousel-item .container { position: relative; z-index: 1; }
.amrev-hero-carousel h1 { font-size: clamp(1.5rem, 3vw, 2.25rem); margin-bottom: var(--space-3); }
.amrev-hero-carousel .amrev-hero__sub { font-size: var(--text-sm); margin-bottom: var(--space-4); }
.amrev-hero-carousel .amrev-hero__trust { margin-top: var(--space-3); }
.amrev-hero-carousel .amrev-hero__image img { max-width: 390px; width: 100%; }

/* Hero prev/next buttons */
.hero-nav-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 48px;
  height: 48px;
  background: #fff !important;
  border: 1px solid var(--color-border) !important;
  border-radius: var(--radius-full) !important;
  box-shadow: var(--shadow-md);
  color: var(--color-text-base) !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  opacity: 1 !important;
  z-index: 10;
  transition: background var(--transition-fast), box-shadow var(--transition-fast), color var(--transition-fast);
}
.hero-nav-btn:hover {
  background: var(--color-primary) !important;
  color: #fff !important;
  border-color: var(--color-primary) !important;
  box-shadow: 0 4px 16px rgba(37,99,235,0.35) !important;
}
.hero-nav-btn .carousel-control-prev-icon,
.hero-nav-btn .carousel-control-next-icon { display: none; }
.carousel-control-prev.hero-nav-btn { left: var(--space-4); }
.carousel-control-next.hero-nav-btn { right: var(--space-4); }

/* Simple dash indicators */
.hero-indicators {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-4) 0 var(--space-5);
  position: relative;
  z-index: 10;
}
.hero-indicators button {
  width: 32px !important;
  height: 4px !important;
  border-radius: var(--radius-full) !important;
  background: rgba(245,158,11,0.25) !important;
  border: none !important;
  padding: 0 !important;
  cursor: pointer;
  overflow: hidden;
  position: relative;
  transition: background var(--transition-fast), width var(--transition-base);
  opacity: 1 !important;
}
.hero-indicators button:hover { background: rgba(245,158,11,0.55) !important; }
.hero-indicators button.active {
  background: rgba(245,158,11,0.25) !important;
  width: 48px !important;
}
.hero-indicators button.active.is-progressing::before {
  content: '';
  position: absolute;
  inset: 0;
  background: #F59E0B;
  border-radius: inherit;
  transform-origin: left center;
  animation: heroIndicatorProgress 5s linear forwards;
}
@keyframes heroIndicatorProgress {
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}

/* ── 6. Hero (single product — kept for product pages) ─────────────────────── */
.amrev-hero {
  background: linear-gradient(135deg, #f0f7ff 0%, #e8f4fd 50%, #f5f0ff 100%);
  padding: var(--space-20) 0 var(--space-16);
  overflow: hidden;
  position: relative;
}
.amrev-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%232563EB' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  pointer-events: none;
}
.amrev-hero__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-16);
  align-items: center;
  position: relative;
  z-index: 1;
}
.amrev-hero__tag {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  background: var(--color-primary-light);
  color: var(--color-primary);
  font-size: var(--text-sm);
  font-weight: 600;
  padding: var(--space-2) var(--space-4);
  border-radius: var(--radius-full);
  margin-bottom: var(--space-5);
  border: 1px solid rgba(37,99,235,0.2);
}
.amrev-hero h1 {
  font-size: clamp(2rem, 4vw, 3.25rem);
  font-weight: 800;
  letter-spacing: -0.03em;
  margin-bottom: var(--space-5);
  color: var(--color-text-base);
  line-height: 1.15;
}
.amrev-hero h1 .highlight {
  color: var(--color-primary);
}
.amrev-hero__sub {
  font-size: var(--text-lg);
  color: var(--color-text-muted);
  margin-bottom: var(--space-8);
  line-height: 1.6;
}
.amrev-hero__ctas {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
  margin-bottom: var(--space-8);
}
.amrev-hero__trust {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-5);
}
.amrev-hero__trust-item {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  font-weight: 500;
}
.amrev-hero__trust-item i {
  color: var(--color-success);
  font-size: var(--text-base);
}
/* Category pills in hero */
.amrev-hero__categories {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-bottom: var(--space-6);
}
.hero-category-pill {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-2) var(--space-4);
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full);
  font-size: var(--text-xs);
  font-weight: 600;
  color: var(--color-text-muted);
  text-decoration: none;
  transition: all var(--transition-fast);
  box-shadow: var(--shadow-sm);
}
.hero-category-pill i { color: var(--color-primary); font-size: var(--text-xs); }
.hero-category-pill:hover {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: #fff;
  box-shadow: 0 4px 12px rgba(37,99,235,0.3);
  transform: translateY(-1px);
}
.hero-category-pill:hover i { color: #fff; }

/* Products grid in hero */
.amrev-hero__products {
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero-products-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: auto auto;
  gap: var(--space-3);
  max-width: 420px;
}
/* Centre the 5th item (last row, single item) */
.hero-products-grid .hero-product-box:last-child {
  grid-column: 2 / 3;
}
.hero-product-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-2);
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-4) var(--space-3);
  text-decoration: none;
  transition: transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
  box-shadow: var(--shadow-sm);
}
.hero-product-box:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-lg);
  border-color: var(--color-primary);
}
.hero-product-box img {
  width: 80px;
  height: auto;
  object-fit: contain;
}
.hero-product-box span {
  font-size: var(--text-xs);
  font-weight: 600;
  color: var(--color-text-muted);
  text-align: center;
  line-height: 1.3;
}
.hero-product-box:hover span { color: var(--color-primary); }

.amrev-hero__image {
  display: flex;
  justify-content: center;
  align-items: center;
}
.amrev-hero__image img {
  max-width: 480px;
  width: 100%;
  filter: drop-shadow(0 20px 40px rgba(37,99,235,0.15));
  animation: heroFloat 4s ease-in-out infinite;
}
@keyframes heroFloat {
  0%, 100% { transform: translateY(0); }
  50%       { transform: translateY(-10px); }
}


/* ── 7. Product cards ──────────────────────────────────────────────────────── */
.amrev-products-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-6);
}
.product-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-2xl);
  padding: var(--space-10) var(--space-8);
  transition: transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.product-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow-lg);
  border-color: rgba(37,99,235,0.25);
}
.product-card__icon {
  width: 160px;
  height: auto;
  margin: 0 auto var(--space-6);
  display: block;
  filter: drop-shadow(0 8px 16px rgba(37,99,235,0.12));
  transition: transform var(--transition-base);
}
.product-card:hover .product-card__icon { transform: translateY(-4px); }
.product-card--help {
  background: linear-gradient(180deg, #ffffff 0%, var(--color-primary-light) 100%);
}
.product-card__help-icon {
  width: 132px;
  height: 132px;
  margin: 0 auto var(--space-6);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border: 1px solid rgba(37,99,235,0.18);
  box-shadow: var(--shadow-card);
  color: var(--color-primary);
  font-size: var(--text-5xl);
  transition: transform var(--transition-base);
}
.product-card--help:hover .product-card__help-icon {
  transform: translateY(-4px);
}
.product-card h3 {
  font-size: var(--text-2xl);
  margin-bottom: var(--space-3);
}
.product-card p {
  font-size: var(--text-base);
  text-align: center;
  flex: 1;
  margin-bottom: var(--space-6);
  max-width: 320px;
}
.product-card__bullets {
  list-style: none;
  padding: 0;
  margin: 0 0 var(--space-6);
  flex: 1;
  width: 100%;
  max-width: 320px;
  text-align: left;
}
.product-card__bullets li {
  position: relative;
  padding-left: var(--space-7);
  margin-bottom: var(--space-3);
  font-size: var(--text-sm);
  line-height: 1.55;
  color: var(--color-text-muted);
}
.product-card__bullets li:last-child {
  margin-bottom: 0;
}
.product-card__bullets li::before {
  content: '\f00c';
  position: absolute;
  left: 0;
  top: 0.15rem;
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  font-size: var(--text-xs);
  color: var(--color-success);
}
.product-card__actions {
  display: flex;
  gap: var(--space-3);
  justify-content: center;
  margin-top: auto;
  flex-wrap: wrap;
}
.product-card__compat {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  margin-top: var(--space-4);
  font-size: var(--text-xs);
  color: var(--color-text-muted);
  background: var(--color-surface-alt);
  padding: var(--space-2) var(--space-4);
  border-radius: var(--radius-full);
  border: 1px solid var(--color-border);
}
.product-card__compat i { color: var(--color-primary); }
@media (max-width: 991.98px) { .amrev-products-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 575.98px)  { .amrev-products-grid { grid-template-columns: 1fr; } }


/* ── 8. Trust / social-proof bar ───────────────────────────────────────────── */
.amrev-trust-bar {
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
  background: var(--color-surface);
  padding: var(--space-8) 0;
}
.amrev-trust-bar__inner {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-6);
  text-align: center;
}
.amrev-trust-bar__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-1);
}
.amrev-trust-bar__number {
  font-size: var(--text-3xl);
  font-weight: 800;
  color: var(--color-primary);
  line-height: 1;
}
.amrev-trust-bar__label {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  font-weight: 500;
}
.amrev-trust-bar__sep {
  width: 1px;
  background: var(--color-border);
  align-self: stretch;
}


/* ── 9. Feature / trust cards ─────────────────────────────────────────────── */
.amrev-features-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: var(--space-6);
}
.feature-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-8);
  transition: box-shadow var(--transition-base);
}
.feature-card:hover { box-shadow: var(--shadow-md); }
.feature-card__icon {
  width: 52px;
  height: 52px;
  border-radius: var(--radius-lg);
  background: var(--color-primary-light);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--text-xl);
  color: var(--color-primary);
  margin-bottom: var(--space-5);
}
.feature-card h4 {
  font-size: var(--text-lg);
  margin-bottom: var(--space-2);
}
.feature-card p {
  font-size: var(--text-sm);
  margin: 0;
}


/* ── 10. Testimonials ──────────────────────────────────────────────────────── */
.amrev-testimonials {
  background: var(--color-footer-bg);
  padding: var(--space-20) 0;
}
.amrev-testimonials .section-title,
.amrev-testimonials .section-subtitle { color: #fff; }
.amrev-testimonials .section-subtitle { color: var(--color-footer-text); }

.testimonial-card {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: var(--radius-xl);
  padding: var(--space-8);
  margin: var(--space-2);
}
.testimonial-card__stars {
  color: var(--color-accent);
  font-size: var(--text-sm);
  margin-bottom: var(--space-4);
  letter-spacing: 2px;
}
.testimonial-card__text {
  font-size: var(--text-base);
  color: rgba(255,255,255,0.85);
  line-height: 1.7;
  margin-bottom: var(--space-5);
  font-style: italic;
}
.testimonial-card__author {
  display: flex;
  align-items: center;
  gap: var(--space-3);
}
.testimonial-card__avatar {
  width: 44px;
  height: 44px;
  border-radius: var(--radius-full);
  background: var(--color-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: var(--text-base);
  color: #fff;
  flex-shrink: 0;
}
.testimonial-card__name {
  font-weight: 600;
  color: #fff;
  font-size: var(--text-sm);
  line-height: 1.3;
}
.testimonial-card__loc {
  font-size: var(--text-xs);
  color: var(--color-footer-text);
}

/* Owl Carousel overrides for testimonials */
#testimonials-carousel .owl-controls {
  margin-top: var(--space-5);
  text-align: center;
}
#testimonials-carousel .owl-pagination {
  display: flex;
  justify-content: center;
  gap: var(--space-2);
}
#testimonials-carousel .owl-page span {
  display: block;
  background: rgba(255,255,255,0.3);
  width: 8px;
  height: 8px;
  border-radius: var(--radius-full);
  transition: background var(--transition-fast), width var(--transition-fast);
}
#testimonials-carousel .owl-page.active span {
  background: var(--color-accent);
  width: 24px;
  border-radius: var(--radius-full);
}


/* ── 11. Awards strip ──────────────────────────────────────────────────────── */
.amrev-awards {
  padding: var(--space-12) 0;
  background: var(--color-surface-alt);
}
.amrev-awards__strip {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: var(--space-8);
}
.amrev-awards__strip img {
  height: 70px;
  width: auto;
  opacity: 0.75;
  filter: grayscale(30%);
  transition: opacity var(--transition-base), filter var(--transition-base);
}
.amrev-awards__strip img:hover {
  opacity: 1;
  filter: grayscale(0%);
}


/* ── 12. Page hero (inner pages) ───────────────────────────────────────────── */
.amrev-page-hero {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  padding: var(--space-16) 0;
  color: #fff;
  text-align: center;
}
.amrev-page-hero h1 {
  font-size: var(--text-4xl);
  color: #fff;
  margin-bottom: var(--space-3);
  font-weight: 700;
}
.amrev-page-hero p {
  font-size: var(--text-lg);
  color: rgba(255,255,255,0.8);
  margin-bottom: var(--space-8);
}
.amrev-page-hero__badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-5);
  margin-top: var(--space-6);
}
.amrev-page-hero__badge {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: var(--radius-full);
  padding: var(--space-2) var(--space-5);
  font-size: var(--text-sm);
  font-weight: 500;
  color: rgba(255,255,255,0.9);
}
.amrev-page-hero__badge i { font-size: var(--text-base); }


/* ── 13. Product page ──────────────────────────────────────────────────────── */
.product-hero {
  background: linear-gradient(135deg, #f0f7ff 0%, #e8f4fd 100%);
  padding: var(--space-12) 0 var(--space-10);
  overflow: hidden;
}
.product-hero__inner {
  display: grid;
  grid-template-columns: 55fr 45fr;
  gap: var(--space-10);
  align-items: start;
}
.product-hero h1 {
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  margin-bottom: var(--space-4);
  font-weight: 800;
  line-height: 1.2;
}
.product-hero__version {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  background: var(--color-primary-light);
  color: var(--color-primary);
  font-size: var(--text-xs);
  font-weight: 600;
  padding: var(--space-1) var(--space-3);
  border-radius: var(--radius-full);
  margin-bottom: var(--space-5);
  border: 1px solid rgba(37,99,235,0.15);
}
.product-hero__points {
  margin: var(--space-4) 0 var(--space-6);
}
.product-hero__points li {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  font-size: var(--text-base);
  color: var(--color-text-muted);
  margin-bottom: var(--space-3);
}
.product-hero__points li i {
  color: var(--color-success);
  margin-top: 3px;
  flex-shrink: 0;
}
.product-hero__ctas {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-6);
}
.product-hero__trust {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
  margin-top: var(--space-5);
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-border);
}
.product-hero__trust span {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-xs);
  font-weight: 500;
  color: var(--color-text-muted);
}

.product-hero__image {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding-top: var(--space-4);
}
.product-hero__image img {
  max-width: 320px;
  width: 100%;
  filter: drop-shadow(0 20px 40px rgba(37,99,235,0.15));
}

/* Product sticky subnav — sticks below the 68px main header */
.product-subnav {
  background: #fff;
  border-bottom: 1px solid var(--color-border);
  position: sticky;
  top: 76px;
  z-index: 900;
  box-shadow: 0 2px 8px rgba(15,23,42,0.06);
}
.product-subnav__inner {
  display: flex;
  align-items: center;
  overflow-x: auto;
  scrollbar-width: none;
  padding: var(--space-2) 0;
}
.product-subnav__inner::-webkit-scrollbar { display: none; }
.product-subnav__list {
  display: flex;
  align-items: center;
  gap: var(--space-1);
  padding: 0;
}
.product-subnav__list li a {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-2) var(--space-4);
  font-size: var(--text-sm);
  font-weight: 500;
  color: var(--color-text-muted);
  border-radius: var(--radius-full);
  border: 1px solid transparent;
  white-space: nowrap;
  transition: background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);
  text-decoration: none;
}
.product-subnav__list li a i {
  font-size: var(--text-sm);
  opacity: 0.75;
}
.product-subnav__list li a:hover {
  background: var(--color-primary-light);
  color: var(--color-primary);
  border-color: rgba(37,99,235,0.15);
}
.product-subnav__list li a:hover i { opacity: 1; }
.product-subnav__list li a.is-active {
  background: var(--color-primary);
  color: #fff;
  border-color: var(--color-primary);
  box-shadow: 0 2px 8px rgba(37,99,235,0.25);
}
.product-subnav__list li a.is-active i { opacity: 1; }

/* Product content sections */
.product-section { padding: var(--space-16) 0; }
.product-section + .product-section {
  border-top: 1px solid var(--color-border);
}

/* Feature checklist */
.amrev-checklist {
  list-style: none;
  padding: 0;
  margin: 0;
}
.amrev-checklist li {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-2) 0;
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  border-bottom: 1px solid var(--color-border);
}
.amrev-checklist li:last-child { border-bottom: none; }
.amrev-checklist li::before {
  content: '';
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  background-color: var(--color-success);
  border-radius: var(--radius-full);
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 10l4 4 6-6' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  margin-top: 1px;
}

/* Screenshot grid (old) */
.screenshot-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: var(--space-4);
}
.screenshot-grid img {
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-sm);
  width: 100%;
}

/* Screenshot carousel */
.screenshot-carousel-wrap {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-2xl);
  overflow: hidden;
  box-shadow: var(--shadow-lg);
}

/* Step indicator tabs */
.screenshot-steps {
  display: flex;
  align-items: center;
  background: var(--color-surface-alt);
  border-bottom: 1px solid var(--color-border);
  padding: var(--space-3) var(--space-5);
  gap: var(--space-2);
}
.screenshot-step {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-2) var(--space-4);
  border-radius: var(--radius-full);
  border: 1px solid transparent;
  background: transparent;
  cursor: pointer;
  transition: all var(--transition-fast);
}
.screenshot-step__num {
  width: 26px;
  height: 26px;
  border-radius: var(--radius-full);
  background: var(--color-border);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all var(--transition-fast);
}
.screenshot-step__label {
  font-size: var(--text-sm);
  font-weight: 500;
  color: var(--color-text-muted);
}
.screenshot-step.active,
.screenshot-step:hover {
  background: var(--color-primary-light);
  border-color: rgba(37,99,235,0.2);
}
.screenshot-step.active .screenshot-step__num {
  background: var(--color-primary);
  color: #fff;
}
.screenshot-step.active .screenshot-step__label { color: var(--color-primary); font-weight: 600; }
.screenshot-step__arrow {
  color: var(--color-text-light);
  font-size: var(--text-xs);
  padding: 0 var(--space-1);
}

/* Carousel */
.screenshot-carousel { position: relative; }
.screenshot-frame {
  background: #fff;
}
.screenshot-frame__bar {
  background: #E5E7EB;
  padding: 10px 14px;
  display: flex;
  gap: 6px;
  align-items: center;
}
.screenshot-frame__bar span:not(.screenshot-frame__title) {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  display: inline-block;
  flex-shrink: 0;
}
.screenshot-frame__bar span:nth-child(1) { background: #F87171; }
.screenshot-frame__bar span:nth-child(2) { background: #FBBF24; }
.screenshot-frame__bar span:nth-child(3) { background: #34D399; }
.screenshot-frame__title {
  font-size: var(--text-xs);
  color: var(--color-text-muted);
  margin-left: var(--space-3);
  font-family: var(--font-sans);
}
.screenshot-frame img { width: 100%; display: block; }

.screenshot-caption {
  padding: var(--space-4) var(--space-6);
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  background: var(--color-surface-alt);
  border-top: 1px solid var(--color-border);
  min-height: 56px;
}

/* Prev / Next buttons */
.screenshot-nav-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  background: #fff !important;
  border: 1px solid var(--color-border) !important;
  border-radius: var(--radius-full) !important;
  box-shadow: var(--shadow-md);
  color: var(--color-text-base) !important;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1 !important;
  z-index: 10;
  transition: box-shadow var(--transition-fast), transform var(--transition-fast);
}
.screenshot-nav-btn:hover {
  box-shadow: var(--shadow-lg) !important;
  transform: translateY(-50%) scale(1.05);
  background: var(--color-primary) !important;
  color: #fff !important;
  border-color: var(--color-primary) !important;
}
.carousel-control-prev.screenshot-nav-btn { left: var(--space-4); }
.carousel-control-next.screenshot-nav-btn { right: var(--space-4); }
.screenshot-nav-btn .carousel-control-prev-icon,
.screenshot-nav-btn .carousel-control-next-icon { display: none; }

/* Product page feature cards (colorful, per-product) */
.drs-features-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-5);
}
.drs-feature-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-6);
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  transition: transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
  position: relative;
  overflow: hidden;
}
.drs-feature-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: var(--card-color, var(--color-primary));
  border-radius: var(--radius-xl) var(--radius-xl) 0 0;
}
.drs-feature-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-lg);
  border-color: var(--card-color, var(--color-primary));
}
.drs-feature-card__icon {
  width: 52px;
  height: 52px;
  border-radius: var(--radius-lg);
  background: var(--card-bg, var(--color-primary-light));
  color: var(--card-color, var(--color-primary));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--text-xl);
  flex-shrink: 0;
}
.drs-feature-card__body h4 {
  font-size: var(--text-base);
  font-weight: 700;
  margin-bottom: var(--space-2);
  color: var(--color-text-base);
}
.drs-feature-card__body p {
  font-size: var(--text-sm);
  margin: 0;
  line-height: 1.6;
}
@media (max-width: 991.98px) { .drs-features-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 575.98px)  { .drs-features-grid { grid-template-columns: 1fr; } }

/* Features two-column grid */
.features-2col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-6);
}
.feature-item {
  display: flex;
  gap: var(--space-4);
  align-items: flex-start;
}
.feature-item__icon {
  width: 42px;
  height: 42px;
  flex-shrink: 0;
  border-radius: var(--radius-md);
  background: var(--color-primary-light);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-primary);
  font-size: var(--text-lg);
}
.feature-item h4 {
  font-size: var(--text-base);
  font-weight: 600;
  margin-bottom: var(--space-1);
}
.feature-item p { font-size: var(--text-sm); margin: 0; }

/* FAQ / Bootstrap 5 accordion overrides */
.accordion-item {
  border-color: var(--color-border);
  margin-bottom: var(--space-2);
  border-radius: var(--radius-lg) !important;
  overflow: hidden;
}
.accordion-button {
  font-family: var(--font-sans);
  font-size: var(--text-base);
  font-weight: 600;
  color: var(--color-text-base);
  background: var(--color-surface);
}
.accordion-button:not(.collapsed) {
  color: var(--color-primary);
  background: var(--color-primary-light);
  box-shadow: none;
}
.accordion-button::after {
  filter: none;
}
.accordion-button:focus { box-shadow: 0 0 0 3px rgba(37,99,235,0.15); }
.accordion-body {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  line-height: 1.7;
}


/* ── 14. Pricing cards ─────────────────────────────────────────────────────── */
.amrev-pricing-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: var(--space-6);
}
.pricing-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-8);
  display: flex;
  flex-direction: column;
  transition: box-shadow var(--transition-base), border-color var(--transition-base);
}
.pricing-card:hover {
  box-shadow: var(--shadow-lg);
  border-color: var(--color-primary);
}
.pricing-card__image {
  text-align: center;
  margin-bottom: var(--space-5);
}
.pricing-card__image img {
  height: 100px;
  width: auto;
}
.pricing-card__name {
  font-size: var(--text-xl);
  font-weight: 700;
  margin-bottom: var(--space-4);
}
.pricing-card__edition {
  margin-bottom: var(--space-5);
}
.pricing-card__edition select {
  width: 100%;
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  font-family: var(--font-sans);
  font-size: var(--text-sm);
  color: var(--color-text-base);
  background: var(--color-surface);
  cursor: pointer;
}
.pricing-card__price {
  margin: var(--space-5) 0;
  display: flex;
  align-items: baseline;
  gap: var(--space-2);
}
.price-amount {
  font-size: var(--text-4xl);
  font-weight: 800;
  color: var(--color-text-base);
}
.price-license {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}
.pricing-card .amrev-checklist { flex: 1; margin-bottom: var(--space-6); }
.pricing-card__note {
  text-align: center;
  font-size: var(--text-xs);
  color: var(--color-text-light);
  margin-top: var(--space-4);
  margin-bottom: 0;
}
.pricing-card__note i { color: var(--color-success); }

.buy-product-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}
.buy-product-row {
  scroll-margin-top: 110px;
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr) minmax(220px, 280px);
  gap: var(--space-6);
  align-items: center;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-6);
  box-shadow: var(--shadow-card);
  transition: border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);
}
.buy-product-row:hover,
.buy-product-row:target {
  border-color: rgba(37,99,235,0.4);
  box-shadow: var(--shadow-lg);
}
.buy-product-row:target {
  transform: translateY(-2px);
}
.buy-product-row__media {
  display: flex;
  justify-content: center;
}
.buy-product-row__media img {
  max-width: 160px;
  max-height: 190px;
  width: auto;
  height: auto;
  filter: drop-shadow(0 8px 16px rgba(37,99,235,0.12));
}
.buy-product-row__tag {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  color: var(--color-primary);
  font-size: var(--text-xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0;
  margin-bottom: var(--space-2);
}
.buy-product-row__content h3 {
  font-size: var(--text-2xl);
  margin-bottom: var(--space-2);
}
.buy-product-row__content p {
  color: var(--color-text-muted);
  margin-bottom: var(--space-4);
}
.buy-product-row__features {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-2);
  list-style: none;
  padding: 0;
  margin: 0;
}
.buy-product-row__features li {
  position: relative;
  padding-left: var(--space-5);
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.buy-product-row__features li::before {
  content: '\f00c';
  position: absolute;
  left: 0;
  top: 0.1rem;
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  color: var(--color-success);
  font-size: var(--text-xs);
}
.buy-product-row__checkout {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  align-items: stretch;
  padding-left: var(--space-6);
  border-left: 1px solid var(--color-border);
}
.buy-product-row__price {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: var(--space-2);
  margin-bottom: var(--space-1);
}
.buy-product-row__checkout .btn-sm-amrev {
  justify-content: center;
}
.product-catalog-list .pricing-card__note {
  text-align: center;
  color: var(--color-text-muted);
}
.product-catalog-list .pricing-card__note:hover {
  color: var(--color-primary);
}
.download-product-list .buy-product-row__features {
  grid-template-columns: 1fr;
  gap: var(--space-2);
  max-width: 560px;
}
.download-product-list .buy-product-row__features li {
  font-size: var(--text-base);
}
@media (max-width: 991.98px) {
  .buy-product-row {
    grid-template-columns: 120px minmax(0, 1fr);
  }
  .buy-product-row__checkout {
    grid-column: 1 / -1;
    border-left: 0;
    border-top: 1px solid var(--color-border);
    padding-left: 0;
    padding-top: var(--space-5);
  }
}
@media (max-width: 575.98px) {
  .buy-product-row {
    grid-template-columns: 1fr;
    text-align: center;
  }
  .buy-product-row__features {
    grid-template-columns: 1fr;
    text-align: left;
  }
  .buy-product-row__media img {
    max-width: 150px;
  }
}


/* ── 15. Download page ─────────────────────────────────────────────────────── */
.download-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-8);
  display: flex;
  align-items: flex-start;
  gap: var(--space-6);
  transition: box-shadow var(--transition-base);
}
.download-card:hover { box-shadow: var(--shadow-md); }
.download-card__img { flex-shrink: 0; width: 80px; }
.download-card__name { font-size: var(--text-xl); font-weight: 700; margin-bottom: var(--space-2); }
.download-card__meta { font-size: var(--text-sm); color: var(--color-text-muted); margin-bottom: var(--space-5); }
.download-card__actions { display: flex; gap: var(--space-3); flex-wrap: wrap; }


/* ── 16. Contact ───────────────────────────────────────────────────────────── */
.contact-form-wrap {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-10);
}
.contact-section-heading .section-subtitle {
  max-width: 720px;
  margin: 0;
  text-align: left;
}
.contact-form-wrap .form-control,
.contact-form-wrap .form-select {
  border-color: var(--color-border);
  border-radius: var(--radius-md);
  font-family: var(--font-sans);
  font-size: var(--text-sm);
  padding: var(--space-3) var(--space-4);
  color: var(--color-text-base);
}
.contact-form-wrap .form-control:focus,
.contact-form-wrap .form-select:focus {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(37,99,235,0.12);
}
.contact-form-wrap label {
  font-size: var(--text-sm);
  font-weight: 600;
  color: var(--color-text-base);
  margin-bottom: var(--space-2);
}
.contact-form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-5);
}
.contact-captcha {
  display: grid;
  grid-template-columns: auto minmax(160px, 1fr);
  gap: var(--space-3);
  align-items: center;
}
.contact-captcha span {
  display: inline-flex;
  align-items: center;
  min-height: 46px;
  background: var(--color-bg-muted);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  color: var(--color-text-base);
  padding: var(--space-2) var(--space-4);
  font-family: monospace;
  font-size: var(--text-xl);
  font-weight: 700;
  letter-spacing: 4px;
}
.contact-error {
  color: #b50000;
  margin-top: var(--space-3);
  margin-bottom: 0;
}
.contact-info-stack {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.contact-info-card,
.contact-help-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-6);
  box-shadow: var(--shadow-card);
}
.contact-info-card {
  display: flex;
  gap: var(--space-4);
}
.contact-info-card__icon {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-lg);
  background: var(--color-primary-light);
  color: var(--color-primary);
  font-size: var(--text-lg);
}
.contact-info-card h3,
.contact-help-card h3 {
  font-size: var(--text-lg);
  margin-bottom: var(--space-2);
}
.contact-info-card p,
.contact-help-card li {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.contact-info-card p {
  margin-bottom: var(--space-2);
}
.contact-help-card ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.contact-help-card li {
  position: relative;
  padding-left: var(--space-5);
  margin-bottom: var(--space-3);
}
.contact-help-card li:last-child {
  margin-bottom: 0;
}
.contact-help-card li::before {
  content: '\f00c';
  position: absolute;
  left: 0;
  top: 0.1rem;
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  color: var(--color-success);
  font-size: var(--text-xs);
}

/* Legal pages */
.legal-document {
  background: var(--color-surface);
}
.legal-document__intro {
  margin-bottom: var(--space-6);
}
.legal-document__intro h2 {
  font-size: var(--text-3xl);
  margin: var(--space-3) 0 var(--space-3);
}
.legal-document__intro p,
.legal-section p {
  color: var(--color-text-muted);
  line-height: 1.75;
}
.legal-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
  margin-bottom: var(--space-8);
}
.legal-summary > div {
  background: var(--color-surface-alt);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-5);
}
.legal-summary strong {
  display: block;
  color: var(--color-text-base);
  margin-bottom: var(--space-2);
}
.legal-summary span {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}
.legal-section {
  scroll-margin-top: 110px;
  border-top: 1px solid var(--color-border);
  padding-top: var(--space-7);
  margin-top: var(--space-7);
}
.legal-section h3 {
  font-size: var(--text-2xl);
  margin-bottom: var(--space-4);
}
.legal-sidebox {
  position: sticky;
  top: 100px;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-6);
  box-shadow: var(--shadow-card);
}
.legal-sidebox h3 {
  font-size: var(--text-lg);
  margin-bottom: var(--space-4);
}
.legal-sidebox a {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  color: var(--color-text-muted);
  padding: var(--space-3) 0;
  border-top: 1px solid var(--color-border);
  font-size: var(--text-sm);
  font-weight: 600;
}
.legal-sidebox a:hover {
  color: var(--color-primary);
}
.legal-sidebox a i {
  color: var(--color-primary);
  width: 18px;
  text-align: center;
}
@media (max-width: 991.98px) {
  .legal-summary {
    grid-template-columns: 1fr;
  }
  .legal-sidebox {
    position: static;
  }
}
@media (max-width: 575.98px) {
  .contact-form-wrap {
    padding: var(--space-6);
  }
  .contact-captcha {
    grid-template-columns: 1fr;
  }
  .contact-captcha span {
    justify-content: center;
  }
}


/* ── 17. Reviews ───────────────────────────────────────────────────────────── */
.review-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-6);
  margin-bottom: var(--space-4);
}
.review-card__stars { color: var(--color-accent); margin-bottom: var(--space-3); }
.review-card__title { font-weight: 700; font-size: var(--text-base); margin-bottom: var(--space-2); }
.review-card__body { font-size: var(--text-sm); color: var(--color-text-muted); margin-bottom: var(--space-4); }
.review-card__author { font-size: var(--text-xs); color: var(--color-text-light); }


/* ── 18. Sidebar ───────────────────────────────────────────────────────────── */
.amrev-sidebar .card {
  border-color: var(--color-border);
  border-radius: var(--radius-lg);
  margin-bottom: var(--space-5);
}
.amrev-sidebar .card-header {
  background: var(--color-surface-alt);
  font-weight: 600;
  font-size: var(--text-sm);
  color: var(--color-text-base);
  border-bottom-color: var(--color-border);
}
.amrev-sidebar .card-body { font-size: var(--text-sm); }
.sidebar-trust-icon {
  width: 36px;
  height: 36px;
  border-radius: var(--radius-md);
  background: var(--color-primary-light);
  color: var(--color-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--text-base);
  flex-shrink: 0;
}


/* ── 19. Footer ────────────────────────────────────────────────────────────── */

/* CTA strip */
.amrev-footer__cta-strip {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  padding: var(--space-5) 0;
}
.amrev-footer__cta-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-6);
  flex-wrap: wrap;
}
.amrev-footer__cta-title {
  font-size: var(--text-xl);
  font-weight: 700;
  color: #fff;
  margin-bottom: var(--space-1);
}
.amrev-footer__cta-sub {
  font-size: var(--text-sm);
  color: rgba(255,255,255,0.8);
}
.amrev-footer__cta-btn {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-7);
  background: #fff;
  color: var(--color-primary);
  border-radius: var(--radius-md);
  font-weight: 700;
  font-size: var(--text-sm);
  white-space: nowrap;
  text-decoration: none;
  flex-shrink: 0;
  transition: box-shadow var(--transition-fast), transform var(--transition-fast);
}
.amrev-footer__cta-btn:hover {
  box-shadow: 0 4px 16px rgba(0,0,0,0.2);
  transform: translateY(-1px);
  color: var(--color-primary-dark);
}

.amrev-footer {
  background: var(--color-footer-bg);
  color: var(--color-footer-text);
  padding: var(--space-10) 0 var(--space-6);
}
.amrev-footer__cta-strip + .amrev-footer { margin-top: 0; }
.amrev-footer a {
  color: var(--color-footer-text);
  font-size: var(--text-sm);
  transition: color var(--transition-fast);
}
.amrev-footer a:hover { color: #fff; }
.amrev-footer__title {
  font-size: var(--text-base);
  font-weight: 600;
  color: #fff;
  margin-bottom: var(--space-5);
  padding-bottom: var(--space-3);
  border-bottom: 2px solid var(--color-primary);
  display: inline-block;
}
.amrev-footer__links { display: flex; flex-direction: column; gap: var(--space-2); }
.amrev-footer__links a {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.amrev-footer__links a i { font-size: var(--text-xs); color: var(--color-primary); }
.amrev-footer__address {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  font-size: var(--text-sm);
}
.amrev-footer__address li {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
}
.amrev-footer__address li i {
  color: var(--color-primary);
  margin-top: 3px;
  flex-shrink: 0;
}
.amrev-footer__social {
  display: flex;
  gap: var(--space-3);
  margin-top: var(--space-4);
}
.amrev-footer__social a {
  width: 38px;
  height: 38px;
  border-radius: var(--radius-full);
  background: rgba(255,255,255,0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--text-base);
  color: var(--color-footer-text);
  transition: background var(--transition-fast), color var(--transition-fast);
}
.amrev-footer__social a:hover {
  background: var(--color-primary);
  color: #fff;
}
.amrev-footer__logo img { height: 36px; margin-bottom: var(--space-4); }
/* Trust list in footer col 4 */
.amrev-footer__trust-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.amrev-footer__trust-item {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  font-size: var(--text-sm);
  color: var(--color-footer-text);
}
.amrev-footer__trust-icon {
  width: 34px;
  height: 34px;
  border-radius: var(--radius-md);
  background: rgba(16,185,129,0.2);
  border: 1px solid rgba(16,185,129,0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #34D399;
  font-size: var(--text-base);
  flex-shrink: 0;
}

.amrev-footer__bottom {
  border-top: 1px solid rgba(255,255,255,0.08);
  margin-top: var(--space-10);
  padding-top: var(--space-5);
  font-size: var(--text-sm);
  color: var(--color-text-light);
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-3);
}
.amrev-footer__bottom-links {
  display: flex;
  gap: var(--space-5);
}
.amrev-footer__bottom-links a {
  font-size: var(--text-sm);
  color: var(--color-text-light);
  transition: color var(--transition-fast);
}
.amrev-footer__bottom-links a:hover { color: #fff; }


/* ── 20. Buttons ───────────────────────────────────────────────────────────── */
.btn-primary-amrev {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-6);
  background: var(--color-primary);
  color: #fff;
  border: none;
  border-radius: var(--radius-md);
  font-family: var(--font-sans);
  font-size: var(--text-sm);
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  transition: background var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);
  white-space: nowrap;
}
.btn-primary-amrev:hover {
  background: var(--color-primary-dark);
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(37,99,235,0.35);
}
.btn-outline-amrev {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-6);
  background: transparent;
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
  border-radius: var(--radius-md);
  font-family: var(--font-sans);
  font-size: var(--text-sm);
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  transition: background var(--transition-fast), color var(--transition-fast);
  white-space: nowrap;
}
.btn-outline-amrev:hover {
  background: var(--color-primary);
  color: #fff;
}
.btn-download {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-4) var(--space-8);
  background: var(--color-primary);
  color: #fff;
  border: none;
  border-radius: var(--radius-md);
  font-family: var(--font-sans);
  font-size: var(--text-base);
  font-weight: 700;
  cursor: pointer;
  text-decoration: none;
  box-shadow: 0 4px 14px rgba(37,99,235,0.35);
  transition: background var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);
  white-space: nowrap;
}
.btn-download i { font-size: var(--text-base); }
.btn-download:hover {
  background: var(--color-primary-dark);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(37,99,235,0.45);
}
.btn-buy {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-4) var(--space-8);
  background: linear-gradient(135deg, var(--color-accent) 0%, #e08600 100%);
  color: #fff;
  border: none;
  border-radius: var(--radius-md);
  font-family: var(--font-sans);
  font-size: var(--text-base);
  font-weight: 700;
  cursor: pointer;
  text-decoration: none;
  box-shadow: 0 4px 14px rgba(245,158,11,0.40);
  transition: background var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);
  white-space: nowrap;
}
.btn-buy i { font-size: var(--text-base); }
.btn-buy:hover {
  background: linear-gradient(135deg, var(--color-accent-dark) 0%, #c47600 100%);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(245,158,11,0.50);
}
.btn-buy.is-disabled,
.btn-download.is-disabled,
.btn-primary-amrev.is-disabled {
  background: #e5e7eb;
  color: #64748b;
  border-color: #cbd5e1;
  box-shadow: none;
  cursor: not-allowed;
  pointer-events: none;
}
.btn-buy.is-disabled i,
.btn-download.is-disabled i,
.btn-primary-amrev.is-disabled i {
  color: inherit;
}
.btn-sm-amrev {
  padding: var(--space-2) var(--space-4);
  font-size: var(--text-xs);
}
/* buy page full-width variant */
.btn-buy-full,
.btn-download-full {
  width: 100%;
  justify-content: center;
  padding: var(--space-4) var(--space-6);
  font-size: var(--text-base);
  border-radius: var(--radius-md);
}


/* ── 21. Utilities ─────────────────────────────────────────────────────────── */
.mt-section { margin-top: var(--space-20); }
.mb-section { margin-bottom: var(--space-20); }
.w-100 { width: 100%; }
.d-flex { display: flex; }
.align-center { align-items: center; }
.justify-center { justify-content: center; }
.gap-4 { gap: var(--space-4); }
.gap-6 { gap: var(--space-6); }
.text-center { text-align: center; }
.font-mono { font-family: var(--font-mono); }

/* Windows badge */
.win-badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-xs);
  font-weight: 500;
  color: var(--color-text-muted);
}
.win-badge img { height: 18px; }

/* Alert banners */
.amrev-alert {
  border-radius: var(--radius-md);
  padding: var(--space-4) var(--space-5);
  font-size: var(--text-sm);
  display: flex;
  gap: var(--space-3);
  align-items: flex-start;
}
.amrev-alert-info {
  background: var(--color-primary-light);
  color: var(--color-primary-dark);
  border: 1px solid rgba(37,99,235,0.2);
}
.amrev-alert i { margin-top: 1px; flex-shrink: 0; }


/* ── 22. Responsive ────────────────────────────────────────────────────────── */
@media (max-width: 991.98px) {
  h1 { font-size: var(--text-4xl); }
  h2 { font-size: var(--text-3xl); }

  .amrev-hero__inner { grid-template-columns: 1fr; text-align: center; }
  .amrev-hero__image { display: none; }
  .amrev-hero__products { display: none; }
  .amrev-hero__ctas { justify-content: center; }
  .amrev-hero__trust { justify-content: center; }
  .amrev-hero__categories { justify-content: center; }

  .product-hero__inner { grid-template-columns: 1fr; }
  .product-hero__image { display: none; }

  .features-2col { grid-template-columns: 1fr; }

  .amrev-trust-bar__inner { grid-template-columns: repeat(2, 1fr); }

  .amrev-navbar__nav { display: none; }
  .amrev-navbar__toggler { display: flex; align-items: center; justify-content: center; }

  .amrev-mobile-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #fff;
    border-bottom: 1px solid var(--color-border);
    box-shadow: var(--shadow-md);
    z-index: 999;
    padding: var(--space-4);
  }
  .amrev-mobile-menu.open { display: block; }
  .amrev-mobile-menu ul { flex-direction: column; }
  .amrev-mobile-menu > ul > li > a {
    display: block;
    padding: var(--space-3) var(--space-4);
    border-radius: var(--radius-md);
    font-size: var(--text-base);
    font-weight: 500;
    color: var(--color-text-base);
  }
  .amrev-mobile-menu > ul > li > a:hover { background: var(--color-primary-light); color: var(--color-primary); }
  .amrev-mobile-submenu { padding-left: var(--space-4); }
  .amrev-mobile-submenu a {
    display: block;
    padding: var(--space-2) var(--space-4);
    font-size: var(--text-sm);
    color: var(--color-text-muted);
    border-radius: var(--radius-md);
  }
  .amrev-mobile-submenu a:hover { color: var(--color-primary); }

  #amrev-header { position: sticky; top: 0; }
}

@media (max-width: 767.98px) {
  h1 { font-size: var(--text-3xl); }
  h2 { font-size: var(--text-2xl); }

  .section-pad { padding-top: var(--space-12); padding-bottom: var(--space-12); }

  .amrev-trust-bar__inner { grid-template-columns: repeat(2, 1fr); }
  .amrev-products-grid { grid-template-columns: 1fr; }
  .amrev-features-grid { grid-template-columns: 1fr; }

  .amrev-page-hero h1 { font-size: var(--text-3xl); }
  .amrev-page-hero__badges { flex-direction: column; align-items: center; }

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

  .amrev-footer__bottom { flex-direction: column; text-align: center; }

  .amrev-topbar__social { display: none; }

  .pricing-card { padding: var(--space-6); }
}

@media (max-width: 575.98px) {
  .amrev-hero-carousel .carousel-item { padding: var(--space-6) 0 var(--space-5); }
  .amrev-hero { padding: var(--space-12) 0; }
  .amrev-hero h1 { font-size: var(--text-2xl); }
  .amrev-hero__ctas { flex-direction: column; align-items: stretch; }
  .btn-download, .btn-buy, .btn-primary-amrev, .btn-outline-amrev {
    justify-content: center;
    text-align: center;
  }
  .amrev-trust-bar__inner { grid-template-columns: 1fr 1fr; }
}


/* FAQ accordion */
.faq-accordion { display: flex; flex-direction: column; gap: var(--space-3); }
.faq-item {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  overflow: hidden;
  transition: box-shadow var(--transition-base);
}
.faq-item:has(.faq-answer.show) {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(37,99,235,0.08);
}
.faq-question {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-5) var(--space-6);
  background: transparent;
  border: none;
  text-align: left;
  cursor: pointer;
  font-family: var(--font-sans);
  font-size: var(--text-base);
  font-weight: 600;
  color: var(--color-text-base);
  transition: color var(--transition-fast);
}
.faq-question:not(.collapsed) { color: var(--color-primary); }
.faq-icon {
  width: 28px;
  height: 28px;
  border-radius: var(--radius-full);
  background: var(--color-surface-alt);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--text-xs);
  color: var(--color-text-muted);
  flex-shrink: 0;
  transition: background var(--transition-fast), color var(--transition-fast), transform var(--transition-fast);
}
.faq-question:not(.collapsed) .faq-icon {
  background: var(--color-primary);
  color: #fff;
  transform: rotate(45deg);
}
.faq-answer__body {
  padding: 0 var(--space-6) var(--space-5);
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  line-height: 1.7;
  border-top: 1px solid var(--color-border);
  padding-top: var(--space-4);
}

/* Guide cards */
.guides-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-4);
}
.guide-card {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-4) var(--space-5);
  text-decoration: none;
  transition: transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
}
.guide-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-md);
  border-color: var(--color-primary);
  text-decoration: none;
}
.guide-card__icon {
  width: 42px;
  height: 42px;
  border-radius: var(--radius-md);
  background: var(--color-primary-light);
  color: var(--color-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--text-base);
  flex-shrink: 0;
  transition: background var(--transition-fast), color var(--transition-fast);
}
.guide-card:hover .guide-card__icon {
  background: var(--color-primary);
  color: #fff;
}
.guide-card__body {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  flex: 1;
  min-width: 0;
}
.guide-card__title {
  font-size: var(--text-sm);
  font-weight: 600;
  color: var(--color-text-base);
  line-height: 1.4;
  transition: color var(--transition-fast);
}
.guide-card:hover .guide-card__title { color: var(--color-primary); }
.guide-card__arrow {
  color: var(--color-text-light);
  font-size: var(--text-xs);
  flex-shrink: 0;
  transition: transform var(--transition-fast), color var(--transition-fast);
}
.guide-card:hover .guide-card__arrow {
  color: var(--color-primary);
  transform: translateX(3px);
}
@media (max-width: 1199.98px) { .guides-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 575.98px)  { .guides-grid { grid-template-columns: 1fr; } }

.learning-category-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
}
.learning-category-card {
  display: flex;
  align-items: flex-start;
  gap: var(--space-4);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-5);
  box-shadow: var(--shadow-card);
  color: var(--color-text-base);
  transition: border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);
}
.learning-category-card:hover {
  border-color: rgba(37,99,235,0.35);
  box-shadow: var(--shadow-md);
  color: var(--color-text-base);
  transform: translateY(-2px);
}
.learning-category-card__icon,
.learning-feature-card__icon {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-lg);
  background: var(--color-primary-light);
  color: var(--color-primary);
  font-size: var(--text-lg);
}
.learning-category-card__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
.learning-category-card strong,
.learning-feature-card strong {
  font-size: var(--text-base);
  line-height: 1.35;
}
.learning-category-card small,
.learning-feature-card small {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  line-height: 1.55;
}
.learning-featured-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-4);
}
.learning-feature-card {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-5);
  min-height: 210px;
  color: var(--color-text-base);
  box-shadow: var(--shadow-card);
  transition: border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);
}
.learning-feature-card:hover {
  border-color: rgba(37,99,235,0.35);
  box-shadow: var(--shadow-md);
  color: var(--color-text-base);
  transform: translateY(-2px);
}
.learning-guide-section {
  scroll-margin-top: 110px;
  padding: var(--space-8) 0;
  border-bottom: 1px solid var(--color-border);
}
.learning-guide-section:first-child { padding-top: 0; }
.learning-guide-section:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.learning-guide-section__heading {
  max-width: 760px;
  margin-bottom: var(--space-5);
}
.learning-guide-section__heading h2 {
  font-size: var(--text-2xl);
  margin: var(--space-3) 0 var(--space-2);
}
.learning-guide-section__heading p {
  color: var(--color-text-muted);
  margin-bottom: 0;
}
.learning-guide-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
}
.learning-support-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-6);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-8);
  box-shadow: var(--shadow-card);
}
.learning-support-cta h2 {
  font-size: var(--text-2xl);
  margin: var(--space-3) 0 var(--space-2);
}
.learning-support-cta p {
  color: var(--color-text-muted);
  margin-bottom: 0;
}

/* 404 page */
.not-found-hero .section-tag {
  background: rgba(255,255,255,0.14);
  color: #fff;
  border-color: rgba(255,255,255,0.22);
}
.not-found-section {
  background: var(--color-bg-soft);
}
.not-found-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
  gap: var(--space-8);
  align-items: center;
}
.not-found-panel {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
  padding: var(--space-10);
}
.not-found-code {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 92px;
  height: 54px;
  margin-bottom: var(--space-5);
  border-radius: var(--radius-md);
  background: var(--color-primary-light);
  color: var(--color-primary);
  font-size: var(--text-3xl);
  font-weight: 800;
}
.not-found-panel h2 {
  font-size: var(--text-3xl);
  margin-bottom: var(--space-3);
}
.not-found-panel p {
  color: var(--color-text-muted);
  font-size: var(--text-lg);
  margin-bottom: var(--space-6);
}
.not-found-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
}
.not-found-image {
  display: flex;
  justify-content: center;
}
.not-found-image img {
  width: min(100%, 420px);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
}
.not-found-links {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-4);
  margin-top: var(--space-8);
}
.not-found-links a {
  display: grid;
  gap: var(--space-2);
  min-height: 150px;
  padding: var(--space-6);
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  text-decoration: none;
  box-shadow: var(--shadow-sm);
  transition: border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);
}
.not-found-links a:hover {
  border-color: rgba(37,99,235,0.35);
  box-shadow: var(--shadow-md);
  transform: translateY(-2px);
}
.not-found-links i {
  color: var(--color-primary);
  font-size: var(--text-2xl);
}
.not-found-links span {
  color: var(--color-text);
  font-weight: 800;
}
.not-found-links small {
  color: var(--color-text-muted);
  line-height: 1.5;
}
@media (max-width: 991.98px) {
  .learning-category-grid,
  .learning-guide-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .learning-featured-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .learning-support-cta {
    align-items: flex-start;
    flex-direction: column;
  }
  .not-found-layout,
  .not-found-links {
    grid-template-columns: 1fr;
  }
  .not-found-panel {
    padding: var(--space-7);
  }
}
@media (max-width: 575.98px) {
  .learning-category-grid,
  .learning-featured-grid,
  .learning-guide-grid {
    grid-template-columns: 1fr;
  }
}

/* ── BS3 Compatibility bridge (for pages not yet converted) ────────────────── */
/* These ensure old Bootstrap 3 classes render acceptably under Bootstrap 5 */
.panel { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-lg); margin-bottom: var(--space-5); }
.panel-default > .panel-heading { background: var(--color-surface-alt); border-bottom: 1px solid var(--color-border); padding: var(--space-4) var(--space-5); border-radius: var(--radius-lg) var(--radius-lg) 0 0; }
.panel-body { padding: var(--space-5); }
.panel-title { font-size: var(--text-base); font-weight: 600; margin: 0; }
.panel-collapse { overflow: hidden; }

.parallax-section-buy,
.parallax-product,
.parallax-section69 {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  padding: var(--space-16) 0;
  color: #fff;
}
.parallax-section-buy .section-overlay,
.parallax-product .section-overlay { padding: var(--space-8) 0; }
.section-less-padding { padding: var(--space-8) 0; }
.section-overlay.dark { background: transparent; }

.section-blue { background: var(--color-primary); padding: var(--space-4) 0; }
.sticklink { display: flex; flex-wrap: wrap; gap: 0; list-style: none; padding: 0; margin: 0; }
.sticklink li a { display: block; padding: var(--space-3) var(--space-5); color: rgba(255,255,255,0.8); font-size: var(--text-sm); font-weight: 500; transition: color var(--transition-fast); }
.sticklink li a:hover, .sticklink li a.current { color: #fff; }

.feature-box { padding: var(--space-4); background: var(--color-surface-alt); border-radius: var(--radius-md); margin-bottom: var(--space-4); }
.feature-box h5 { font-size: var(--text-base); font-weight: 600; margin-bottom: var(--space-2); }
.blog-holder4 { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-xl); padding: var(--space-5); margin-bottom: var(--space-5); }
.text-box-inner { padding: var(--space-4) 0; }
.testimonials3 { background: var(--color-surface-alt); border-radius: var(--radius-lg); padding: var(--space-5); margin-bottom: var(--space-4); }
.section-deepblue { background: var(--color-footer-bg); color: var(--color-footer-text); }
.section-copyrights { background: #060e1f; color: var(--color-text-light); padding: var(--space-4) 0; font-size: var(--text-sm); }
.sec-padding { padding: var(--space-16) 0; }
.sec-moreless-padding { padding: var(--space-8) 0; }
.checklist, .checklist202 { list-style: none; padding: 0; }
.checklist li, .checklist202 li { padding: var(--space-2) 0; font-size: var(--text-sm); color: var(--color-text-muted); border-bottom: 1px solid var(--color-border); }
.checklist li:last-child, .checklist202 li:last-child { border-bottom: none; }
.checklist li::before, .checklist202 li::before { content: '✓ '; color: var(--color-success); font-weight: 700; }
.bmargin { margin-bottom: var(--space-5); }
.nomargin { margin: 0; }
.nopadding { padding: 0; }
.text-orange-2 { color: var(--color-accent); }
.text-justify { text-align: justify; }
.img-responsive { max-width: 100%; height: auto; }
.img-fluid { max-width: 100%; height: auto; }
.hidden-xs { display: block; }
.pull-right { float: right; }
.pull-left  { float: left; }
.col-centered { margin: 0 auto; float: none; }
.uppercase { text-transform: uppercase; }
.lspace-1 { letter-spacing: 0.1em; }
.screenshots-box { padding: var(--space-4); }
.ser-section { padding: var(--space-4) 0; }
.ser-section-img { text-align: center; }
.main-product-inner { background: var(--color-surface); }

/* ── 23. Print ─────────────────────────────────────────────────────────────── */
@media print {
  .amrev-topbar, #amrev-header, .product-subnav,
  .amrev-scrolltop, .amrev-footer { display: none !important; }
  body { font-size: var(--text-xs); }
}
