/* =============================================================
   pages.css - V1 design-token overrides for inner pages.
   Keeps Bootstrap grid for layout but forces Satoshi font,
   Yunite magenta palette, and consistent spacing everywhere.
   Load AFTER bootstrap.min.css and styles.css.
   ============================================================= */

/* ---- Font override: Satoshi on everything ---- */
body, html {
  font-family: 'Satoshi', -apple-system, BlinkMacSystemFont, system-ui, 'Segoe UI', sans-serif !important;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Satoshi', -apple-system, BlinkMacSystemFont, system-ui, 'Segoe UI', sans-serif !important;
  font-weight: 900 !important;
  color: #141118 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
}

/* Undo dark heading override inside dark sections so white text works */
.on-dark h1, .on-dark h2, .on-dark h3, .on-dark h4,
.footer h1, .footer h2, .footer h3, .footer h4 {
  color: inherit !important;
}

/* ---- Utility class overrides ---- */
.text-black { color: #141118 !important; }
.text-primary { color: #9B1B6A !important; }
.yunite-color { color: #9B1B6A !important; }
.yunite-color-black { color: #141118 !important; }
.yunite-color-white { color: #fff !important; }

.font-bold { font-weight: 700 !important; }
.font-normal { font-weight: 400 !important; }
.font-light { font-weight: 500 !important; }

.text-xl { font-size: 1.5rem !important; }
.text-lg { font-size: 1.125rem !important; line-height: 1.65 !important; }

.mb-0 { margin-bottom: 0 !important; }
.mb-5 { margin-bottom: 2.5rem !important; }
.px-4 { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
.block { display: block !important; }
.underline { text-decoration: underline !important; }

a { color: #9B1B6A; text-decoration: none; }
a:hover { color: #7A1553; }

/* ---- Button overrides: match homepage despite Bootstrap ---- */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: .5em;
  font-family: 'Satoshi', sans-serif; font-weight: 700; font-size: 1rem; line-height: 1;
  letter-spacing: .2px; border-radius: 14px; cursor: pointer;
  text-align: center; border: 0; white-space: nowrap;
}
.btn-primary {
  background: #9B1B6A; color: #fff; padding: 16px 32px;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.btn-primary:hover { transform: translateY(-2px); box-shadow: 0 14px 30px rgba(155,27,106,.30); background: #7A1553; color: #fff; }
.btn-primary:active { transform: translateY(0); }

ul { padding-left: 1.25rem; }
ul li { margin-bottom: 0.5rem; }

/* ---- Nav links: no underline, match homepage ---- */
.nav__links a {
  text-decoration: none !important;
}
.footer__list a {
  text-decoration: none !important;
}

/* ---- Hero / breadcrumb sections ---- */
.zubuz-hero-section2 {
  background: #FBFAF9 !important;
  padding: clamp(130px, 17vh, 190px) 0 clamp(32px, 5vw, 56px) !important;
  text-align: center;
}
.zubuz-hero-section2 h1 {
  font-size: clamp(2rem, 5vw, 3.5rem) !important;
  max-width: 720px;
  margin: 0 auto 1rem;
}
.zubuz-hero-section2 p {
  font-size: 1.0625rem;
  line-height: 1.65;
  color: #6B7280;
  max-width: 640px;
  margin: 0 auto 1rem;
}

.zubuz-breadcrumb {
  padding-top: clamp(140px, 18vh, 200px) !important;
  padding-bottom: clamp(24px, 4vw, 48px) !important;
}
.zubuz-breadcrumb h1 {
  font-size: clamp(2rem, 5vw, 3.5rem) !important;
  margin-bottom: 0.5rem;
}

/* Breadcrumbs */
.breadcrumbs ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
}
.breadcrumbs li { font-size: 0.9375rem; color: #6B7280; }
.breadcrumbs li a { color: #141118; text-decoration: none; font-weight: 500; }
.breadcrumbs li a:hover { color: #9B1B6A; }
.breadcrumbs li:not(:last-child)::after {
  content: '/';
  margin-left: 8px;
  color: #9ca3af;
}

/* ---- Section padding ---- */
.section {
  padding-block: clamp(48px, 7vw, 96px) !important;
}
.download {
  padding-bottom: 0 !important;
}
.zubuz-section-padding3 {
  padding: clamp(48px, 7vw, 96px) 0 !important;
}
.zubuz-extra-section {
  padding: clamp(100px, 14vh, 160px) 0 clamp(48px, 7vw, 96px) !important;
}

/* ---- Section titles ---- */
.zubuz-section-title {
  margin-bottom: clamp(32px, 4vw, 56px);
}
.zubuz-section-title h2,
.zubuz-section-title.center h2 {
  font-size: clamp(1.75rem, 4vw, 2.75rem) !important;
  font-weight: 900 !important;
  color: #141118 !important;
  text-align: center;
}

/* ---- Content blocks ---- */
.u-default-content h2 {
  font-size: clamp(1.5rem, 3.5vw, 2.25rem) !important;
  margin-bottom: 1rem;
}
.u-default-content p {
  font-size: 1.0625rem;
  line-height: 1.65;
  color: #6B7280;
}
.u-default-content.light h2,
.u-default-content.light p {
  color: #fff !important;
}

/* ---- Icon boxes (values cards) ---- */
.zubuz-iconbox-wrap {
  background: #fff;
  border: 1px solid rgba(20,17,24,.07);
  border-radius: 18px;
  padding: clamp(24px, 3vw, 36px);
  text-align: center;
  transition: transform .28s ease, box-shadow .28s ease;
  box-shadow: 0 1px 2px rgba(20,17,24,.04), 0 6px 20px rgba(20,17,24,.06);
  margin-bottom: 24px;
}
.zubuz-iconbox-wrap:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 50px rgba(20,17,24,.10);
}

.yunite-iconbox-icon {
  width: 52px;
  height: 52px;
  border-radius: 15px;
  background: #FDF4FB;
  color: #9B1B6A;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.5rem;
}
.yunite-iconbox-icon h3 {
  font-size: 1.125rem !important;
  font-weight: 900 !important;
  color: #9B1B6A !important;
  margin: 0;
}
.yunite-color-white { color: #fff !important; }

.zubuz-iconbox-data h3 {
  font-size: 1.25rem !important;
  font-weight: 900 !important;
  margin-bottom: 0.5rem;
}
.zubuz-iconbox-data p {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #6B7280;
  margin: 0;
}

/* ---- Accordion (FAQ) ---- */
.zubuz-accordion-wrap {
  max-width: 760px;
  margin: 0 auto;
}
.zubuz-accordion-item {
  border-bottom: 1px solid rgba(20,17,24,.1);
}
.zubuz-accordion-header {
  cursor: pointer;
  padding: 1.5rem 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.zubuz-accordion-header p,
.zubuz-accordion-header h3 {
  font-weight: 700 !important;
  font-size: 1.125rem !important;
  color: #141118 !important;
  margin: 0;
  flex: 1;
}

/* Accordion icons */
.zubuz-active-icon,
.zubuz-inactive-icon {
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  position: relative;
}
.zubuz-active-icon img,
.zubuz-inactive-icon img {
  width: 22px;
  height: 22px;
  object-fit: contain;
}

/* Show/hide accordion body */
.zubuz-accordion-body {
  display: none;
  padding: 0 0 1.5rem;
  color: #6B7280;
  font-size: 1.0625rem;
  line-height: 1.65;
  max-width: 640px;
}
.zubuz-accordion-item.open .zubuz-accordion-body {
  display: block;
}
.zubuz-accordion-item.open .zubuz-active-icon {
  display: block;
}
.zubuz-accordion-item.open .zubuz-inactive-icon {
  display: none;
}
.zubuz-accordion-item:not(.open) .zubuz-active-icon {
  display: none;
}
.zubuz-accordion-item:not(.open) .zubuz-inactive-icon {
  display: block;
}

/* ---- Buttons ---- */
.zubuz-default-btn,
.zubuz-header-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  font-family: 'Satoshi', sans-serif;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1;
  letter-spacing: 0.2px;
  border-radius: 14px;
  cursor: pointer;
  text-align: center;
  border: 0;
  white-space: nowrap;
  padding: 16px 32px;
  background: #9B1B6A;
  color: #fff;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.zubuz-default-btn:hover,
.zubuz-header-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(155,27,106,.30);
  background: #7A1553;
  color: #fff;
}
.zubuz-default-btn span {
  color: #fff;
}

/* ---- CTA section ---- */
.yu-cta-section {
  background: #0E0D12 !important;
  color: #fff;
  border-radius: 0;
  padding: clamp(48px, 7vw, 96px) 0 !important;
}
.yu-cta-section .u-default-content h2 {
  color: #fff !important;
  font-size: clamp(1.75rem, 4vw, 2.75rem) !important;
}
.yu-cta-section .u-default-content p {
  color: rgba(255,255,255,.72) !important;
  font-size: 1.0625rem;
  line-height: 1.65;
}
.blue-bg {
  background: #0E0D12 !important;
}

/* App store links in CTA */
.yunite-app-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
  margin-top: 1.5rem;
}
.yunite-app {
  display: inline-block;
  transition: transform .18s ease, opacity .18s ease;
}
.yunite-app:hover {
  transform: translateY(-2px);
  opacity: 0.92;
}
.yunite-app img {
  height: 48px;
  width: auto;
}

.u-cta-shape {
  display: none;
}
.u-cta-thumb img {
  width: 100%;
  max-width: 420px;
  height: auto;
  display: block;
  margin: 0 auto;
}

/* ---- 404 page ---- */
.zubuz-errors-wrap {
  text-align: center;
  max-width: 560px;
  margin: 0 auto;
}
.zubuz-errors-thumb {
  margin-bottom: 2rem;
}
.zubuz-errors-thumb img {
  max-width: 280px;
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}
.zubuz-errors-wrap h2 {
  font-size: clamp(1.5rem, 3.5vw, 2.25rem) !important;
  margin-bottom: 1rem;
}
.zubuz-errors-wrap p {
  font-size: 1.0625rem;
  line-height: 1.65;
  color: #6B7280;
  margin-bottom: 1.5rem;
}
.zubuz-extara-mt {
  margin-top: 1.5rem;
}
.zubuz-extara-mt p {
  margin-bottom: 1rem;
}
.zubuz-extara-mt img {
  width: 48px;
  height: auto;
  display: inline-block;
  vertical-align: middle;
}

/* ---- Spacing helpers ---- */
.yunite-extara-mt {
  margin-top: 1.5rem;
}

/* ---- White-bg override ---- */
.white-bg {
  background: #fff !important;
}

/* ---- Row alignment ---- */
.zubuz_screenfix_right {
  display: flex;
  align-items: center;
}

/* ---- Post title ---- */
.post__title {
  font-size: clamp(2rem, 5vw, 3.5rem) !important;
  font-weight: 900 !important;
  margin-bottom: 0.5rem;
}

/* ---- Lists in content ---- */
ul.list-disc {
  list-style-type: disc;
  padding-left: 1.5rem;
}
ul.list-decimal {
  list-style-type: decimal;
  padding-left: 1.5rem;
}
ul.list-disc li,
ul.list-decimal li {
  margin-bottom: 0.5rem;
  font-size: 1.0625rem;
  line-height: 1.6;
  color: #141118;
}

/* ---- Privacy/Terms page content spacing ---- */
.section p {
  font-size: 1.0625rem;
  line-height: 1.65;
  color: #141118;
  margin-bottom: 1.25rem;
}
.on-dark .section p,
.on-dark p,
.download p { color: rgba(255,255,255,.72); }

/* ---- Responsive overrides ---- */
@media (max-width: 991px) {
  .zubuz-hero-section2 {
    padding-top: clamp(130px, 16vh, 180px) !important;
  }
}
@media (max-width: 767px) {
  .zubuz-hero-section2 h1 {
    font-size: clamp(1.75rem, 6vw, 2.5rem) !important;
  }
  .zubuz-iconbox-wrap {
    margin-bottom: 16px;
  }
  .yu-cta-section {
    text-align: center;
  }
  .yunite-app-wrap {
    justify-content: center;
  }
}
