:root {
  /* Light base (warm Najdi/Salmani sand) */
  --bg: #f4ecdf;
  --surface: #fbf6ee;
  --text: #3b2a1f;
  --muted: #6b5a4e;
  --primary: #6a4a33; /* deep brown */
  --accent: #c7a45b;  /* gold frame */
  --border: rgba(59, 42, 31, 0.18);
  --shadow: 0 12px 28px rgba(59, 42, 31, 0.12);
  --radius: 18px;

  /* Dark overlay section */
  --overlay-bg: #2b201a;
  --overlay-surface: rgba(251, 246, 238, 0.92);
  --overlay-text: #fbf6ee;
  --overlay-muted: rgba(251, 246, 238, 0.75);

  /* Typography scale */
  --font-body: "SaudiSerif", "Tajawal", "Cairo", "Noto Kufi Arabic", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
  --font-display: "SaudiSerif", "Tajawal", "Cairo", "Noto Kufi Arabic", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
  --lh-body: 1.9;
  --container: 1200px;

  /* Spacing */
  --s-1: .25rem;
  --s-2: .5rem;
  --s-3: .75rem;
  --s-4: 1rem;
  --s-5: 1.25rem;
  --s-6: 1.5rem;
  --s-7: 2rem;
  --s-8: 3rem;
}

/* Custom font (bundled) */
@font-face {
  font-family: "SaudiSerif";
  src: url("../fonts/SaudiSerif-VF.ttf") format("truetype");
  font-display: swap;
  font-style: normal;
  font-weight: 200 900;
}

/* Reset / base */
*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  overflow-x: hidden;
}
body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: var(--font-body);
  line-height: var(--lh-body);
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
}
.maazib-content > *:first-child { margin-block-start: 0; }
.maazib-content > *:last-child { margin-block-end: 0; }
.maazib-muted { color: var(--muted); }

/* Policy pages (privacy / terms) */
.maazib-policy-content {
  display: grid;
  gap: var(--s-5);
  text-align: start;
}
.maazib-policy-lead {
  margin: 0;
  font-size: 1.05rem;
  color: var(--text);
}
.maazib-policy-updated {
  margin: 0;
  padding: var(--s-3) var(--s-4);
  background: rgba(199,164,91,0.14);
  border: 1px solid rgba(199,164,91,0.35);
  border-radius: calc(var(--radius) - 6px);
  color: var(--text);
}
.maazib-policy-content h2 {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 900;
  font-size: 1.25rem;
  color: var(--primary);
}
.maazib-policy-content h3 {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 800;
  font-size: 1.1rem;
  color: var(--text);
}
.maazib-policy-content p {
  margin: 0;
  color: var(--muted);
}
.maazib-policy-content a {
  color: inherit;
  text-decoration: underline;
  text-decoration-color: rgba(199,164,91,0.7);
  text-underline-offset: 3px;
}
.maazib-policy-content a:hover {
  text-decoration-color: rgba(199,164,91,1);
}
.maazib-policy-content ul,
.maazib-policy-content ol {
  margin: 0;
  padding-inline-start: 1.25rem;
  color: var(--muted);
  display: grid;
  gap: .4rem;
}
.maazib-policy-content li {
  margin: 0;
}
.maazib-policy-content li strong {
  color: var(--text);
}

/* Forms */
.maazib-form {
  display: grid;
  gap: var(--s-5);
}
.maazib-field label {
  display: block;
  font-weight: 800;
  margin-block-end: .35rem;
}
.maazib-field input,
.maazib-field textarea {
  width: 100%;
  border-radius: calc(var(--radius) - 8px);
  border: 1px solid rgba(59,42,31,0.18);
  background: rgba(251,246,238,0.85);
  padding: .85rem 1rem;
  font: inherit;
}
.maazib-field__error {
  margin-block-start: .35rem;
  color: #8a1f2b;
  font-weight: 700;
}
.maazib-form__actions {
  display: flex;
  align-items: center;
  gap: var(--s-4);
  flex-wrap: wrap;
}
.maazib-form__status {
  margin: 0;
  color: var(--muted);
  font-weight: 800;
}
.maazib-form__status.is-error { color: #8a1f2b; }
.maazib-form__status.is-success { color: #1f6b3a; }

.maazib-contact-grid {
  display: grid;
  gap: var(--s-6);
  grid-template-columns: 1fr;
}
@media (min-width: 980px) {
  .maazib-contact-grid { grid-template-columns: 1.2fr .8fr; }
}
.maazib-contact-info {
  display: grid;
  gap: .65rem;
  color: var(--muted);
}
.maazib-contact-info a { text-decoration: underline; }

/* Page hero (simple) */
.maazib-page-hero {
  position: relative;
  overflow: hidden;
  color: var(--overlay-text);
  background-color: var(--overlay-bg);
  background-size: cover;
  background-position: center;
  border-bottom: 1px solid rgba(59, 42, 31, 0.18);
}
.maazib-page-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(43,32,26,0.65), rgba(43,32,26,0.35));
  pointer-events: none;
}
.maazib-page-hero__inner {
  position: relative;
  z-index: 1;
  padding-block: clamp(2.5rem, 2rem + 2vw, 4.5rem);
}
.maazib-page-hero .maazib-page-title {
  color: var(--overlay-text);
}
.maazib-page-hero__subtitle {
  margin: var(--s-3) 0 0 0;
  color: var(--overlay-muted);
  max-width: 880px;
}

/* Watch page (YouTube grid + modal) */
.maazib-video-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: var(--s-6);
}
.maazib-video-card {
  grid-column: span 12;
  display: flex;
  flex-direction: column;
}
@media (min-width: 740px) {
  .maazib-video-card { grid-column: span 6; }
}
@media (min-width: 1100px) {
  .maazib-video-card { grid-column: span 4; }
}
.maazib-video-card__btn {
  width: 100%;
  text-align: start;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--surface);
  box-shadow: var(--shadow);
  overflow: hidden;
  padding: 0;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.maazib-video-card__thumb {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  background-size: cover;
  background-position: center;
  position: relative;
}
.maazib-video-card__youtube-btn {
  position: absolute;
  top: var(--s-3);
  left: var(--s-3);
  width: 44px;
  height: 44px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(251, 246, 238, 0.35);
  background: rgba(251, 246, 238, 0.88);
  backdrop-filter: blur(10px);
  color: #dc2626;
  text-decoration: none;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  transition: transform .15s ease, background-color .15s ease, border-color .15s ease, box-shadow .15s ease;
  z-index: 10;
}
.maazib-video-card__youtube-btn:hover {
  text-decoration: none;
  transform: translateY(-1px);
  background: rgba(251, 246, 238, 0.95);
  border-color: rgba(251, 246, 238, 0.5);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
  color: #b91c1c;
}
.maazib-video-card__youtube-btn:active {
  transform: translateY(0);
}
.maazib-video-card__youtube-btn i {
  font-size: 1.35rem;
  line-height: 1;
}
.maazib-video-card__play {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
}
.maazib-video-card__play::before {
  content: "";
  width: 64px;
  height: 64px;
  border-radius: 999px;
  background: rgba(0,0,0,0.55);
  box-shadow: 0 10px 24px rgba(0,0,0,0.25);
}
.maazib-video-card__play::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 0 10px 16px;
  border-color: transparent transparent transparent rgba(251,246,238,0.95);
  margin-inline-start: 4px;
  position: absolute;
}
.maazib-video-card__title {
  display: block;
  padding: var(--s-5) var(--s-5) var(--s-4) var(--s-5);
  font-weight: 900;
  color: var(--text);
  min-height: 3.2em;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.maazib-video-modal {
  position: fixed;
  inset: 0;
  z-index: 13000;
}
.maazib-video-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.6);
}
.maazib-video-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(1000px, calc(100% - 2 * var(--s-6)));
  margin: min(10vh, 72px) auto 0 auto;
  background: rgba(244,236,223,0.95);
  border: 1px solid rgba(59,42,31,0.18);
  border-radius: var(--radius);
  box-shadow: 0 22px 60px rgba(0,0,0,0.25);
  padding: var(--s-5);
}
.maazib-video-modal__close {
  margin-inline-start: auto;
}
.maazib-video-modal__frame {
  margin-block-start: var(--s-4);
  border-radius: calc(var(--radius) - 6px);
  overflow: hidden;
  background: #000;
}
.maazib-video-modal__frame iframe {
  width: 100%;
  aspect-ratio: 16 / 9;
  border: 0;
  display: block;
}

/* Opportunities */
.maazib-progress {
  margin-block-start: var(--s-4);
  display: grid;
  gap: .5rem;
}
.maazib-progress__meta {
  display: flex;
  justify-content: space-between;
  gap: var(--s-4);
  color: var(--muted);
  font-weight: 800;
  font-size: .95rem;
}
.maazib-progress__bar {
  height: 10px;
  background: rgba(59,42,31,0.10);
  border-radius: 999px;
  overflow: hidden;
  border: 1px solid rgba(59,42,31,0.14);
}
.maazib-progress__fill {
  height: 100%;
  background: linear-gradient(90deg, rgba(199,164,91,0.55), rgba(199,164,91,0.95));
}

.maazib-reg-modal {
  position: fixed;
  inset: 0;
  z-index: 13000;
}
.maazib-reg-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.6);
}
.maazib-reg-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(820px, calc(100% - 2 * var(--s-6)));
  margin: min(10vh, 72px) auto 0 auto;
  background: rgba(244,236,223,0.95);
  border: 1px solid rgba(59,42,31,0.18);
  border-radius: var(--radius);
  box-shadow: 0 22px 60px rgba(0,0,0,0.25);
  padding: var(--s-5);
}
.maazib-reg-modal__close {
  margin-inline-start: auto;
}
.maazib-reg-modal__title {
  margin: var(--s-3) 0 var(--s-5) 0;
  font-family: var(--font-display);
  font-weight: 900;
  color: var(--text);
}

/* Breadcrumbs */
.maazib-breadcrumbs {
  font-size: .95rem;
  color: var(--muted);
}
.maazib-breadcrumbs__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
}
.maazib-breadcrumbs__item + .maazib-breadcrumbs__item::before {
  content: "›";
  margin-inline: .25rem;
  opacity: .7;
}

.maazib-section {
  padding-block: var(--s-8);
  position: relative;
}

/* Front-page image sections */
.maazib-image-section {
  padding: 0;
}
.maazib-image-section__figure {
  margin: 0;
}
.maazib-image-section__img {
  width: 100%;
  height: 100vh;
  display: block;
  object-fit: cover;
}

/* Mobile: show full image (no cropping) */
@media (max-width: 768px) {
  .maazib-image-section__img {
    height: auto;
    object-fit: contain;
    background: transparent;
  }

  /* Keep the fade carousel but avoid cropping on mobile */
  .maazib-hero-fader {
    height: auto;
  }
  .maazib-hero-fader__slide {
    position: relative;
    inset: auto;
    transition: none;
  }
  .maazib-hero-fader__slide:not(.is-active) {
    display: none;
  }
  .maazib-hero-fader__slide img {
    width: 100%;
    height: auto;
    object-fit: contain;
    background: transparent;
  }
}

/* Hero fade carousel (first two images) */
.maazib-hero-fader {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  padding: 0;
}
.maazib-hero-fader__slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 900ms ease;
}
.maazib-hero-fader__slide.is-active {
  opacity: 1;
}
.maazib-hero-fader__slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.maazib-hero-fader__dots {
  position: absolute;
  inset-inline: 0;
  inset-block-end: 18px;
  display: flex;
  justify-content: center;
  gap: 10px;
  z-index: 3;
  pointer-events: auto;
}
.maazib-hero-fader__dot {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  border: 1px solid rgba(251, 246, 238, 0.9);
  background: rgba(251, 246, 238, 0.25);
  padding: 0;
  cursor: pointer;
}
.maazib-hero-fader__dot.is-active {
  background: rgba(251, 246, 238, 0.92);
}

/* Mobile overrides (must come AFTER desktop carousel rules) */
@media (max-width: 768px) {
  /* Keep the fade carousel but avoid cropping/stretching on mobile */
  .maazib-hero-fader {
    height: auto;
  }
  .maazib-hero-fader__slide {
    position: relative;
    inset: auto;
    transition: none;
  }
  .maazib-hero-fader__slide:not(.is-active) {
    display: none;
  }
  .maazib-hero-fader__slide img {
    width: 100%;
    height: auto;
    object-fit: contain;
    background: transparent;
  }
}
img {
  max-width: 100%;
  height: auto;
  display: block;
}
a {
  color: inherit;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

/* Utilities */
.maazib-container {
  width: min(var(--container), calc(100% - 2 * var(--s-6)));
  margin-inline: auto;
}
.maazib-stack > * + * {
  margin-block-start: var(--s-6);
}
.maazib-grid {
  display: grid;
  gap: var(--s-6);
}
.maazib-grid--posts {
  grid-template-columns: repeat(12, 1fr);
}
.maazib-grid--posts > * {
  grid-column: span 12;
}
@media (min-width: 680px) {
  .maazib-grid--posts > * {
    grid-column: span 6;
  }
}
@media (min-width: 1024px) {
  .maazib-grid--posts > * {
    grid-column: span 4;
  }
}

/* Page header */
.maazib-page-header {
  padding-block: var(--s-6);
}
.maazib-page-title {
  font-family: var(--font-display);
  font-weight: 700;
  letter-spacing: 0;
  margin: 0;
  font-size: clamp(1.6rem, 1.1rem + 1.4vw, 2.4rem);
}

/* Card */
.maazib-card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  overflow: clip;
}
.maazib-card__media img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.maazib-card__body {
  padding: var(--s-6);
}
.maazib-card__title {
  font-family: var(--font-display);
  margin: 0 0 var(--s-3) 0;
  font-weight: 700;
  font-size: 1.25rem;
}
.maazib-card__meta {
  color: var(--muted);
  font-size: .95rem;
  margin-block: 0  var(--s-4);
}
.maazib-card__excerpt {
  color: var(--muted);
}
.maazib-card__actions {
  margin-block-start: var(--s-5);
  display: flex;
  gap: var(--s-3);
  flex-wrap: wrap;
}

/* Buttons */
.maazib-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .75rem 1.1rem;
  border-radius: 999px;
  border: 1px solid transparent;
  font-weight: 700;
  letter-spacing: .2px;
  transition: transform .15s ease, background-color .15s ease, border-color .15s ease;
  text-decoration: none !important;
}
.maazib-btn:active {
  transform: translateY(1px);
}
.maazib-btn--primary {
  background: var(--accent);
  color: #2b201a;
  border-color: rgba(0,0,0,.08);
}
.maazib-btn--outline {
  background: transparent;
  color: var(--text);
  border-color: var(--accent);
}
.maazib-btn--ghost {
  background: rgba(0,0,0,0.03);
  color: var(--text);
  border-color: rgba(0,0,0,0.06);
}
.maazib-btn:hover {
  text-decoration: none;
  filter: saturate(1.05);
}

/* Floating actions (footer.php) */
.maazib-fab {
  position: fixed;
  left: 16px;
  bottom: 16px;
  z-index: 9999;
}

.maazib-fab__home {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-direction: row-reverse; /* icon on the right, label on the left (RTL-friendly) */
  gap: .55rem;
  height: 56px;
  padding-inline: 14px;
  border-radius: 999px;
  background: var(--accent);
  color: #2b201a;
  border: 1px solid rgba(0,0,0,.08);
  text-decoration: none;
  white-space: nowrap;
}
.maazib-fab__home:hover {
  text-decoration: none;
  filter: saturate(1.05);
}
.maazib-fab__home i {
  font-size: 1.1rem;
  line-height: 1;
}
.maazib-fab__home-label {
  font-weight: 800;
  letter-spacing: .2px;
}

.maazib-fab__home--fixed {
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 10000;
}

.maazib-fab__action {
  width: 56px;
  height: 56px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--border);
  background: rgba(251, 246, 238, 0.85);
  color: var(--primary);
  text-decoration: none;
  box-shadow: var(--shadow);
  backdrop-filter: blur(8px);
  transition: transform .15s ease, background-color .15s ease, border-color .15s ease, color .15s ease;
}
.maazib-fab__action:hover {
  text-decoration: none;
  border-color: rgba(199,164,91,0.75);
  background: rgba(199,164,91,0.22);
}
.maazib-fab__action:active {
  transform: translateY(1px);
}
.maazib-fab__action i {
  font-size: 1.35rem;
  line-height: 1;
}
.maazib-fab__action--wa {
  background: #25d366;
  color: #fff;
  border-color: rgba(0, 0, 0, 0.1);
}
.maazib-fab__action--wa:hover {
  background: #20bd5a;
  color: #fff;
  border-color: rgba(0, 0, 0, 0.15);
}

.maazib-social-link {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(59, 42, 31, 0.18);
  background: rgba(251, 246, 238, 0.55);
  backdrop-filter: blur(8px);
}
.maazib-social-link svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
  opacity: .95;
}
.maazib-social-link i {
  font-size: 18px;
  line-height: 1;
  opacity: .95;
}

/* Skip link */
.maazib-skip-link {
  position: absolute;
  inset-block-start: 8px;
  inset-inline-start: 8px;
  z-index: 20000;
  padding: .6rem .9rem;
  border-radius: 999px;
  background: var(--accent);
  color: #2b201a;
  transform: translateY(-140%);
  transition: transform .15s ease;
}
.maazib-skip-link:focus {
  transform: translateY(0);
}

/* Header (glass, sticky, responsive) */
.maazib-site-header {
  position: fixed;
  inset-block-start: 0;
  inset-inline: 0;
  z-index: 12000;
  padding-block: 10px;
  color: var(--text);
  background: linear-gradient(180deg, rgba(43,32,26,0.38), rgba(43,32,26,0));
}
.maazib-site-header::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: rgba(244,236,223,0.16);
  backdrop-filter: blur(10px);
  opacity: 0;
  transition: opacity .2s ease;
}
.maazib-site-header.is-scrolled::before,
.maazib-site-header.is-open::before {
  opacity: 1;
}
.maazib-site-header__inner {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--s-4);
}

/* Make space for fixed header on all pages */
#content.site-main {
  padding-block-start: 110px;
}
@media (max-width: 680px) {
  #content.site-main {
    padding-block-start: 95px;
  }
}

.maazib-brand__logo img {
  height: 87px;
  width: auto;
}
@media (max-width: 680px) {
  .maazib-brand__logo img { height: 70px; }
}

/* Nav */
.maazib-nav {
  display: flex;
  align-items: center;
  gap: var(--s-3);
  flex: 1;
}
.maazib-nav__desktop {
  display: none;
}
@media (min-width: 1024px) {
  .maazib-nav__desktop { display: block; }
  .maazib-nav__toggle { display: none; }
}

/* Mobile: make the "القائمة" button bright */
@media (max-width: 1023px) {
  .maazib-site-header .maazib-nav__toggle {
    background: #e9e0d1;
    color: #2b201a;
    border-color: rgba(59,42,31,0.18);
  }
  .maazib-site-header .maazib-nav__toggle:hover {
    background: #e9e0d1;
    filter: saturate(1.05);
  }
}

.maazib-nav__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  gap: .65rem;
  flex-wrap: wrap;
}
.maazib-nav__list--center {
  justify-content: center;
}
.maazib-nav__list a {
  display: inline-flex;
  align-items: center;
  padding: .55rem .8rem;
  border-radius: 999px;
  border: 1px solid rgba(199,164,91,0.22);
  background: rgba(251,246,238,0.30);
  backdrop-filter: blur(10px);
  text-decoration: none;
  font-weight: 800;
  white-space: nowrap;
}
.maazib-nav__list a:hover {
  text-decoration: none;
  background: rgba(199,164,91,0.22);
  border-color: rgba(199,164,91,0.55);
}

.maazib-nav__toggle-icon {
  width: 18px;
  height: 14px;
  display: inline-block;
  position: relative;
}
.maazib-nav__toggle-icon::before,
.maazib-nav__toggle-icon::after {
  content: "";
  position: absolute;
  inset-inline: 0;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
  opacity: .9;
}
.maazib-nav__toggle-icon::before { inset-block-start: 0; box-shadow: 0 6px 0 currentColor; }
.maazib-nav__toggle-icon::after { inset-block-end: 0; }

/* Mobile drawer */
.maazib-nav__overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.45);
  z-index: 11990;
}
.maazib-nav__panel {
  position: fixed;
  inset-block: 0;
  inset-inline-end: 0;
  width: min(92vw, 360px);
  background: rgba(244,236,223,0.92);
  backdrop-filter: blur(14px);
  border-inline-start: 1px solid rgba(59,42,31,0.18);
  z-index: 11999;
  padding: var(--s-5);
  box-shadow: 0 18px 45px rgba(0,0,0,0.18);
  display: flex;
  flex-direction: column;
  gap: var(--s-5);
}
.maazib-nav__panel-head {
  display: flex;
  justify-content: flex-start;
}
.maazib-nav__list--drawer {
  display: grid;
  gap: .6rem;
}
.maazib-nav__list--drawer a {
  width: 100%;
  justify-content: center;
  padding-block: .75rem;
}

body.maazib-nav-open {
  overflow: hidden;
}

/* Footer */
.maazib-site-footer {
  margin-block-start: 0;
  background: var(--overlay-bg);
  color: var(--overlay-text);
  text-align: center;
  position: relative;
  overflow: hidden;
}
.maazib-site-footer .maazib-pattern-overlay {
  opacity: .15;
  background-image: url("../img/pattern.webp");
  background-size: 820px 820px;
  mix-blend-mode: normal;
}
.maazib-site-footer .maazib-triangles {
  opacity: .18;
}
.maazib-site-footer__inner {
  padding-block: var(--s-8);
  position: relative;
  z-index: 1;
}
.maazib-site-footer a {
  color: inherit;
}
.maazib-footer-logo {
  display: flex;
  justify-content: center;
}
.maazib-footer-logo img {
  width: auto;
  height: 108px; /* +50% */
  filter: brightness(0) invert(1);
}
.maazib-footer-title {
  margin: var(--s-4) 0 0 0;
  font-family: var(--font-display);
  font-weight: 800;
}
.maazib-footer-contact {
  margin-block-start: var(--s-4);
  display: grid;
  gap: .35rem;
  color: var(--overlay-muted);
}
.maazib-footer-contact a {
  color: inherit;
  text-decoration: none;
}
.maazib-footer-social {
  margin-block-start: var(--s-5);
  display: flex;
  justify-content: center;
  gap: .65rem;
  flex-wrap: wrap;
}
.maazib-footer-policies {
  margin-block-start: var(--s-6);
  display: flex;
  justify-content: center;
  gap: var(--s-5);
  flex-wrap: wrap;
  color: var(--overlay-muted);
}
.maazib-footer-policies a {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid rgba(251,246,238,0.25);
}

.maazib-footer-desc {
  margin: var(--s-3) 0 0 0;
  color: var(--overlay-muted);
}
.maazib-footer-grid {
  display: grid;
  gap: var(--s-6);
  grid-template-columns: 1fr;
  justify-items: center;
}
@media (min-width: 900px) {
  .maazib-footer-grid {
    grid-template-columns: 1fr;
  }
}
.maazib-widget__title {
  font-family: var(--font-display);
  margin: 0 0 var(--s-3) 0;
}
.maazib-footer-nav {
  margin-block-start: var(--s-6);
}
.maazib-footer-nav .maazib-nav__list {
  flex-wrap: wrap;
  gap: var(--s-4);
  justify-content: center;
}
.maazib-footer-meta {
  padding-block: var(--s-5);
  border-top: 1px solid rgba(251, 246, 238, 0.15);
  color: var(--overlay-muted);
  font-size: .95rem;
}
.maazib-footer-attribution {
  margin: 0 0 var(--s-3) 0;
}
.maazib-footer-attribution a {
  color: var(--accent);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.maazib-footer-attribution a:hover {
  color: var(--overlay-text);
}

/* Overlay section helper */
.maazib-section--overlay {
  background: var(--overlay-bg);
  color: var(--overlay-text);
  position: relative;
  overflow: hidden;
}
.maazib-section--overlay .maazib-card {
  background: var(--overlay-surface);
  color: var(--text);
}

/* Scroll-snap carousel (minimal JS) */
.maazib-carousel__track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 100%;
  gap: 0;
  overflow-x: auto;
  padding: 0;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  width: 100%;
  height: 100vh;
  direction: ltr;
}
.maazib-carousel__item {
  scroll-snap-align: start;
  width: 100%;
  height: 100%;
}
.maazib-carousel__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.maazib-carousel__track::-webkit-scrollbar {
  height: 10px;
}
.maazib-carousel__track::-webkit-scrollbar-thumb {
  background: rgba(199,164,91,0.55);
  border-radius: 999px;
}

/* Stat */
.maazib-stat__num {
  font-family: var(--font-display);
  font-weight: 900;
  font-size: clamp(2rem, 1.5rem + 1.8vw, 3rem);
  line-height: 1.1;
  color: var(--primary);
}
.maazib-stat__label {
  color: var(--muted);
  font-weight: 700;
}

/* Pattern overlay */
.maazib-pattern-overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .10;
  background-image: url("../img/pattern.svg");
  background-size: 520px 520px;
  mix-blend-mode: overlay;
}

/* Triangle motif */
.maazib-triangles {
  position: absolute;
  inset-block-start: 0;
  inset-inline-end: 0;
  width: min(340px, 45vw);
  aspect-ratio: 1 / 1;
  pointer-events: none;
  opacity: .35;
  background-image: url("../img/motif-triangles.svg");
  background-repeat: no-repeat;
  background-size: contain;
}

/* Pagination */
.maazib-pagination .page-numbers {
  display: inline-flex;
  padding: .5rem .8rem;
  border: 1px solid var(--border);
  border-radius: 999px;
  margin-inline-end: .4rem;
  background: var(--surface);
}
.maazib-pagination .current {
  border-color: var(--accent);
}

/* Section title */
.maazib-section-title {
  margin-block: 0 var(--s-6);
}
.maazib-section-title--center {
  text-align: center;
}
.maazib-section-title__kicker {
  margin: 0 0 var(--s-2) 0;
  color: var(--muted);
  font-weight: 700;
  letter-spacing: .2px;
}
.maazib-section-title__title {
  margin: 0 0 var(--s-3) 0;
  font-family: var(--font-display);
  font-weight: 800;
  font-size: clamp(1.4rem, 1.05rem + 1.2vw, 2.1rem);
}
.maazib-section-title__line {
  width: min(180px, 55vw);
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--accent), transparent);
  opacity: .9;
}
.maazib-section-title--center .maazib-section-title__line {
  margin-inline: auto;
}

/* Hero */
.maazib-hero {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(1200px 700px at 20% 0%, rgba(199,164,91,0.26), transparent 60%),
    radial-gradient(900px 500px at 80% 10%, rgba(59,42,31,0.12), transparent 60%),
    linear-gradient(180deg, rgba(251,246,238,0.9), rgba(244,236,223,1));
  background-size: cover;
  background-position: center;
  border-bottom: 1px solid var(--border);
}
.maazib-hero[style*="background-image"] {
  background-blend-mode: overlay, overlay, normal;
  background-color: rgba(43,32,26,0.35);
  color: var(--overlay-text);
}
.maazib-hero__inner {
  position: relative;
  z-index: 1;
  padding-block: clamp(3rem, 2.2rem + 3vw, 6rem);
}
.maazib-hero__content {
  max-width: 780px;
}
.maazib-hero__kicker {
  margin: 0 0 var(--s-2) 0;
  color: var(--muted);
  font-weight: 800;
  letter-spacing: .3px;
}
.maazib-hero[style*="background-image"] .maazib-hero__kicker {
  color: var(--overlay-muted);
}
.maazib-hero__title {
  margin: 0 0 var(--s-4) 0;
  font-family: var(--font-display);
  font-weight: 900;
  font-size: clamp(2rem, 1.2rem + 3vw, 3.6rem);
  line-height: 1.25;
}
.maazib-hero__subtitle {
  margin: 0 0 var(--s-6) 0;
  font-size: clamp(1.05rem, 1rem + .4vw, 1.25rem);
  color: var(--muted);
}
.maazib-hero[style*="background-image"] .maazib-hero__subtitle {
  color: var(--overlay-muted);
}
.maazib-hero__actions {
  display: flex;
  gap: var(--s-3);
  flex-wrap: wrap;
}
.maazib-hero__logos {
  margin-block-start: var(--s-7);
  display: flex;
  gap: var(--s-3);
  flex-wrap: wrap;
}
.maazib-hero__logo {
  padding: .55rem .85rem;
  border: 1px solid rgba(199,164,91,0.65);
  border-radius: 999px;
  font-weight: 800;
  letter-spacing: .6px;
  color: var(--text);
  background: rgba(251,246,238,0.75);
}
.maazib-hero[style*="background-image"] .maazib-hero__logo {
  background: rgba(43,32,26,0.45);
  color: var(--overlay-text);
  border-color: rgba(199,164,91,0.7);
}
.maazib-hero__frame {
  position: absolute;
  inset: var(--s-6);
  border: 2px solid rgba(199,164,91,0.55);
  border-radius: calc(var(--radius) + 10px);
  pointer-events: none;
  opacity: .9;
}
@media (max-width: 640px) {
  .maazib-hero__frame { inset: var(--s-4); }
}

