/* =========================================================================
   GEO SOLUTIONS — FAQ PAGE v1.0 (Zenko-style)
   Generated: May 2026
   Pattern: Eyebrow → mega H1 → FAQ accordion → image+stats grid → CTA
   ========================================================================= */

/* =========================================================================
   1. FAQ HERO
   ========================================================================= */

.faq-hero {
  padding: 180px 0 var(--space-16);
}

.faq-hero__eyebrow {
  font-family: var(--font-mono);
  font-size: var(--text-mono-sm);
  letter-spacing: var(--tracking-wider);
  color: var(--color-text-tertiary);
  text-transform: uppercase;
  margin-bottom: var(--space-6);
}

.faq-hero__title {
  font-family: var(--font-display);
  font-size: clamp(3.5rem, 10vw, 9rem);
  font-weight: var(--weight-semibold);
  line-height: 0.92;
  letter-spacing: var(--tracking-tighter);
  color: var(--color-text-primary);
  margin: 0 0 var(--space-8);
  max-width: 14ch;
}

.faq-hero__lead {
  font-size: var(--text-body-lg);
  line-height: var(--leading-normal);
  color: var(--color-text-secondary);
  max-width: 60ch;
  margin: 0;
}

@media (max-width: 767px) {
  .faq-hero {
    padding-top: 130px;
  }
}

/* =========================================================================
   2. FAQ ACCORDION LIST
   ========================================================================= */

.faq-list {
  padding: var(--space-8) 0 var(--space-24);
  border-top: 1px solid var(--color-border-faint);
}

.faq-item {
  border-bottom: 1px solid var(--color-border-faint);
}

/* Trigger: <summary> in Safari has known bugs with display:grid. v57 fix:
   wrap children in .faq-item__trigger-row div which gets the grid; summary
   itself is just block + cursor + reset of native marker. */
.faq-item__trigger {
  width: 100%;
  display: block;
  background: transparent;
  border: none;
  cursor: pointer;
  text-align: left;
  font-family: var(--font-display);
  list-style: none;
  padding: 0;
}

.faq-item__trigger::-webkit-details-marker { display: none; }
.faq-item__trigger::marker { content: none; }

.faq-item__trigger-row {
  display: grid;
  grid-template-columns: 80px minmax(0, 1fr) 48px;
  align-items: center;
  gap: var(--space-6);
  padding: var(--space-7) 0;
  transition: padding var(--duration-medium) var(--ease-default);
}

.faq-item__trigger:hover .faq-item__trigger-row {
  padding-left: var(--space-3);
}

.faq-item__num {
  font-family: var(--font-mono);
  font-size: var(--text-mono);
  color: var(--color-text-tertiary);
  letter-spacing: var(--tracking-wide);
}

.faq-item__question {
  font-family: var(--font-display);
  font-size: var(--text-h3);
  font-weight: var(--weight-medium);
  line-height: 1.25;
  color: var(--color-text-primary);
  letter-spacing: var(--tracking-tight);
  margin: 0;
}

.faq-item__icon {
  width: 36px;
  height: 36px;
  position: relative;
  flex-shrink: 0;
  justify-self: end;
  transition: transform var(--duration-medium) var(--ease-default);
}

.faq-item__icon::before,
.faq-item__icon::after {
  content: '';
  position: absolute;
  background-color: var(--color-accent);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: background-color var(--duration-medium) var(--ease-default);
}

.faq-item__trigger:hover .faq-item__icon::before,
.faq-item__trigger:hover .faq-item__icon::after {
  background-color: var(--color-accent-bright, #aaffb0);
}

.faq-item__icon::before {
  width: 16px;
  height: 1.5px;
}

.faq-item__icon::after {
  width: 1.5px;
  height: 16px;
  transition: transform var(--duration-medium) var(--ease-default);
}

.faq-item[open] .faq-item__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.faq-item__answer {
  padding: 0 0 var(--space-8) calc(80px + var(--space-6));
  max-width: 78ch;
}

.faq-item__answer p {
  font-size: var(--text-body);
  line-height: var(--leading-relaxed);
  color: var(--color-text-secondary);
  margin: 0 0 var(--space-4);
}

.faq-item__answer p:last-child {
  margin-bottom: 0;
}

.faq-item__answer ul {
  list-style: none;
  padding: 0;
  margin: var(--space-4) 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.faq-item__answer li {
  position: relative;
  padding-left: var(--space-5);
  font-size: var(--text-body);
  line-height: var(--leading-normal);
  color: var(--color-text-secondary);
}

.faq-item__answer li::before {
  content: '—';
  position: absolute;
  left: 0;
  color: var(--color-accent);
}

@media (max-width: 767px) {
  .faq-item__trigger-row {
    grid-template-columns: 48px minmax(0, 1fr) 32px;
    gap: var(--space-3);
    padding: var(--space-5) 0;
  }
  .faq-item__num {
    font-size: var(--text-mono-sm);
  }
  .faq-item__question {
    font-size: var(--text-h4);
  }
  .faq-item__answer {
    padding-left: 0;
  }
}

/* =========================================================================
   3. OPERATIONAL STANDARDS — image + stats split
   ========================================================================= */

.op-standards {
  padding: var(--space-24) 0;
  border-top: 1px solid var(--color-border-faint);
}

.op-standards__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-16);
  align-items: start;
}

@media (max-width: 991px) {
  .op-standards__grid {
    grid-template-columns: 1fr;
    gap: var(--space-12);
  }
}

.op-standards__visual {
  width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: var(--radius-lg);
  background: var(--color-bg-base);
  position: relative;
  overflow: hidden;
  border: 1px solid var(--color-border-faint);
}

.op-standards__visual picture,
.op-standards__visual img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

/* subtle inner glow ring (replaces old pseudo-element placeholders) */
.op-standards__visual::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(
    ellipse 80% 60% at 50% 50%,
    transparent 60%,
    rgba(0, 0, 0, 0.25) 100%
  );
  border-radius: inherit;
}

.op-standards__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
}

.op-standards__eyebrow {
  font-family: var(--font-mono);
  font-size: var(--text-mono-sm);
  letter-spacing: var(--tracking-wider);
  color: var(--color-text-tertiary);
  text-transform: uppercase;
}

.op-standards__title {
  font-family: var(--font-display);
  font-size: clamp(2.5rem, 5vw, 4.25rem);
  font-weight: var(--weight-semibold);
  line-height: 1;
  letter-spacing: var(--tracking-tighter);
  color: var(--color-text-primary);
  margin: 0;
}

.op-standards__body {
  font-size: var(--text-body);
  line-height: var(--leading-normal);
  color: var(--color-text-secondary);
  max-width: 50ch;
  margin: 0 0 var(--space-6);
}

.op-standards__stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-8) var(--space-12);
  margin-top: var(--space-8);
}

.op-stat {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  border-top: 1px solid var(--color-border-faint);
  padding-top: var(--space-4);
}

.op-stat__value {
  font-family: var(--font-display);
  font-size: clamp(2.5rem, 4vw, 3.75rem);
  font-weight: var(--weight-semibold);
  line-height: 1;
  letter-spacing: var(--tracking-tighter);
  color: var(--color-text-primary);
}

.op-stat__label {
  font-size: var(--text-body);
  color: var(--color-text-tertiary);
  margin-top: var(--space-2);
}

@media (max-width: 479px) {
  .op-standards__stats {
    grid-template-columns: 1fr;
    gap: var(--space-5);
  }
}

/* =========================================================================
   4. CONSULT CTA
   ========================================================================= */

.consult-cta {
  padding: var(--space-16) 0 var(--space-20);
  border-top: 1px solid var(--color-border-faint);
}

.consult-cta__inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-8);
}

.consult-cta__title {
  font-family: var(--font-display);
  font-size: clamp(2.5rem, 6vw, 5rem);
  font-weight: var(--weight-semibold);
  line-height: 1;
  letter-spacing: var(--tracking-tighter);
  color: var(--color-text-primary);
  margin: 0;
  max-width: 22ch;
}

/* =========================================================================
   END OF faq.css v1.0
   ========================================================================= */

/* =========================================================================
   WORK CTA — full-width green wave background with translucent glass panel
   v1.0 — replaces former .mega-talk section on work.html
   ────────────────────────────────────────────────────────────────────
   Composition:
     - Section is full-bleed; background image extends edge-to-edge
     - Translucent glass panel sits in the upper portion of the section,
       letting the wave bleed visibly behind the headline
     - Wave continues below the panel as a "continuation" effect (image is
       larger than the panel, panel covers only the headline zone)
     - Floating contact card pinned to upper-right inside the panel
     - Bottom of section soft-fades to page background
   ========================================================================= */

.work-cta {
  position: relative;
  width: 100%;
  padding: var(--space-20) var(--space-6) var(--space-16);
  background: var(--color-bg-base);
  overflow: hidden;
}

@media (min-width: 768px) {
  .work-cta { padding: var(--space-24) var(--space-8) var(--space-20); }
}

/* ── The clickable panel — outer container ────────────────────────────── */
.work-cta__panel {
  position: relative;
  display: block;
  max-width: var(--container-max);
  margin: 0 auto;
  border-radius: 28px;
  overflow: hidden;
  text-decoration: none;
  color: var(--color-text-primary);
  isolation: isolate;
  /* The panel itself defines the click target shape; full-bleed image
     lives inside it but is positioned to overshoot the bottom edge for
     the "wave continues out of the box" effect on desktop */
  min-height: 480px;
  background: #050505;
  border: 1px solid rgba(255, 255, 255, 0.10);
  transition: border-color 280ms var(--ease-default),
              transform 280ms var(--ease-default),
              box-shadow 280ms var(--ease-default);
}

.work-cta__panel:hover {
  border-color: rgba(130, 255, 140, 0.28);
  box-shadow:
    0 24px 80px rgba(0, 0, 0, 0.45),
    0 0 0 1px rgba(130, 255, 140, 0.14) inset,
    0 -40px 120px -40px rgba(130, 255, 140, 0.10);
}

@media (max-width: 991px) {
  .work-cta__panel { min-height: 440px; border-radius: 22px; }
}

@media (max-width: 599px) {
  .work-cta__panel { min-height: 420px; border-radius: 20px; }
}

/* ── Background image (full-bleed inside the panel) ───────────────────── */
.work-cta__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}

.work-cta__bg picture,
.work-cta__bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 55%;
  /* slight scale so subtle parallax-like settle reads cleaner */
  transform: scale(1.02);
  will-change: transform;
}

@media (max-width: 599px) {
  .work-cta__bg img { object-position: center center; }
}

/* ── Translucent glass plate (sits over upper portion of panel) ───────── */
.work-cta__glass {
  position: absolute;
  z-index: 1;
  /* glass covers the full panel — it's where the headline sits;
     transparency lets the wave bleed through */
  inset: 0;
  pointer-events: none;
  /* graphite translucent gradient — center stays more transparent so
     the wave is visible behind the headline; edges darker for legibility */
  background:
    radial-gradient(
      ellipse 75% 90% at 50% 50%,
      rgba(8, 14, 10, 0.28) 0%,
      rgba(8, 14, 10, 0.55) 75%,
      rgba(8, 14, 10, 0.85) 100%
    );
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}

/* ── Layered overlays — readability + depth ───────────────────────────── */
.work-cta__overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background:
    /* horizontal — softens left and right edges */
    linear-gradient(90deg,
      rgba(0, 0, 0, 0.35) 0%,
      rgba(0, 0, 0, 0.05) 35%,
      rgba(0, 0, 0, 0.05) 65%,
      rgba(0, 0, 0, 0.30) 100%
    ),
    /* vertical — top + bottom vignette */
    linear-gradient(180deg,
      rgba(0, 0, 0, 0.35) 0%,
      rgba(0, 0, 0, 0.05) 30%,
      rgba(0, 0, 0, 0.05) 70%,
      rgba(0, 0, 0, 0.40) 100%
    ),
    /* subtle green ambient glow at the top-center */
    radial-gradient(
      circle at 50% 25%,
      rgba(130, 255, 140, 0.08),
      transparent 50%
    );
}

/* ── Headline — large display typography ──────────────────────────────── */
.work-cta__content {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  min-height: 480px;
  padding: var(--space-12) var(--space-12);
}

.work-cta__title {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(64px, 12vw, 176px);
  line-height: 0.92;
  letter-spacing: -0.05em;
  font-weight: var(--weight-bold, 700);
  color: var(--color-text-primary);
  display: inline-flex;
  align-items: center;
  gap: 0.05em;
}

.work-cta__symbol {
  color: rgba(255, 255, 255, 0.55);
  font-weight: var(--weight-medium, 500);
  font-size: 0.9em;
  letter-spacing: 0;
  margin-right: 0.04em;
}

@media (max-width: 991px) {
  .work-cta__content {
    min-height: 440px;
    padding: var(--space-10) var(--space-8);
  }
  .work-cta__title {
    font-size: clamp(72px, 14vw, 110px);
  }
}

@media (max-width: 599px) {
  .work-cta__content {
    min-height: 420px;
    padding: var(--space-8) var(--space-6) calc(var(--space-20) + 80px);
    align-items: flex-start;
    padding-top: var(--space-12);
  }
  .work-cta__title {
    font-size: clamp(54px, 18vw, 82px);
    letter-spacing: -0.04em;
  }
}

/* ── Floating contact card (right side, glass) ────────────────────────── */
.work-cta__card {
  position: absolute;
  z-index: 4;
  top: 50%;
  right: var(--space-10);
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  gap: var(--space-3);
  min-width: 280px;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(18, 22, 19, 0.55);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 18px 60px rgba(0, 0, 0, 0.40);
  transition: transform 280ms var(--ease-default),
              border-color 280ms var(--ease-default),
              background 280ms var(--ease-default);
}

.work-cta__panel:hover .work-cta__card {
  transform: translateY(calc(-50% - 4px));
  border-color: rgba(130, 255, 140, 0.40);
  background: rgba(22, 26, 23, 0.70);
}

/* status indicator — Geo Solutions logo on soft green halo (v25) */
.work-cta__status {
  width: 42px;
  height: 42px;
  flex-shrink: 0;
  border-radius: 10px;
  background-color: var(--color-bg-surface-3);
  background-image:
    radial-gradient(
      circle at 50% 50%,
      rgba(140, 255, 156, 0.32) 0%,
      rgba(34, 197, 94, 0.18) 45%,
      transparent 75%
    ),
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 575 575' fill='none'><path d='M467.188 0H107.812C48.2693 0 0 48.2693 0 107.812V467.188C0 526.731 48.2693 575 107.812 575H467.188C526.731 575 575 526.731 575 467.188V107.812C575 48.2693 526.731 0 467.188 0Z' fill='%2382FF8C'/><path d='M107.812 224.609V107.812H224.609' stroke='%230F1F14' stroke-width='42'/><path d='M350.391 467.188H467.188V350.391' stroke='%230F1F14' stroke-width='42'/><path d='M382.734 260.547H192.266C185.319 260.547 179.688 266.178 179.688 273.125V301.875C179.688 308.822 185.319 314.453 192.266 314.453H382.734C389.681 314.453 395.312 308.822 395.312 301.875V273.125C395.312 266.178 389.681 260.547 382.734 260.547Z' fill='%230F1F14'/></svg>");
  background-repeat: no-repeat, no-repeat;
  background-position: center, center;
  background-size: 100% 100%, 80% 80%;
  position: relative;
}

.work-cta__card-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  line-height: 1.2;
  flex: 1;
  min-width: 0;
}

.work-cta__slots {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.06em;
  font-weight: var(--weight-medium, 500);
  color: var(--color-accent);
  white-space: nowrap;
}

.work-cta__name {
  font-family: var(--font-display);
  font-size: 15px;
  font-weight: var(--weight-semibold, 600);
  color: var(--color-text-primary);
  letter-spacing: -0.005em;
}

.work-cta__role {
  font-size: 12px;
  color: var(--color-text-tertiary);
  letter-spacing: 0;
}

.work-cta__arrow {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.06);
  color: var(--color-text-primary);
  font-size: 16px;
  transition: background 280ms var(--ease-default),
              color 280ms var(--ease-default);
}

.work-cta__panel:hover .work-cta__arrow {
  background: rgba(130, 255, 140, 0.18);
  color: var(--color-accent);
}

/* Card responsive — moves to bottom on narrow screens */
@media (max-width: 991px) {
  .work-cta__card {
    right: var(--space-6);
    min-width: 240px;
  }
}

@media (max-width: 599px) {
  .work-cta__card {
    top: auto;
    bottom: var(--space-6);
    left: var(--space-6);
    right: var(--space-6);
    transform: none;
    min-width: 0;
  }
  .work-cta__panel:hover .work-cta__card {
    transform: translateY(-3px);
  }
}

/* Reduced-motion: disable subtle hover transforms */
@media (prefers-reduced-motion: reduce) {
  .work-cta__panel,
  .work-cta__card,
  .work-cta__arrow,
  .work-cta__bg img {
    transition: none;
    transform: none;
  }
  .work-cta__panel:hover .work-cta__card { transform: none; }
}

/* =========================================================================
   WORK BANNER — Altrum-style FULL-VIEWPORT hero with "FAQ" overlay (v25)
   Sits at the top of /work, mirrors .about-banner / .services-banner pattern.
   Driven by js/about-banner-scroll.js v3.2 (selector .work-banner registered).
   ========================================================================= */

.work-banner {
  position: relative;
  width: 100%;
  height: 88vh;
  min-height: 580px;
  max-height: 1000px;
  overflow: hidden;
  background: #000;
  margin: 0;
  padding: 0;
}

@media (max-width: 767px) {
  .work-banner { height: 75vh; min-height: 480px; }
}

.work-banner__media {
  position: absolute;
  inset: -8%;
  width: 116%;
  height: 116%;
  display: block;
}

.work-banner__media picture,
.work-banner__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* image: dark left zone + green glassmorphism S-curve on the right.
     Center crop keeps both the dark headline area and the glass forms. */
  object-position: center center;
  display: block;
  transform-origin: center center;
  transform: translate3d(0, 0, 0) scale(1);
  will-change: transform;
}

.work-banner__shade {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(to right, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.25) 38%, rgba(0,0,0,0) 60%),
    linear-gradient(to bottom, rgba(0,0,0,0) 60%, rgba(0,0,0,0.55) 100%);
  z-index: 1;
}

.work-banner__content {
  position: absolute;
  top: 50%;
  left: clamp(20px, 5vw, 80px);
  right: clamp(20px, 5vw, 80px);
  transform: translateY(-50%);
  z-index: 2;
  max-width: 1100px;
  pointer-events: none;
}

.work-banner__title {
  margin: 0 0 clamp(16px, 2.5vw, 36px) 0;
  font-family: var(--font-display);
  font-weight: var(--weight-medium, 500);
  font-size: clamp(120px, 20vw, 360px);
  line-height: 0.92;
  letter-spacing: -0.04em;
  color: #FFFFFF;
  text-shadow: 0 4px 80px rgba(0, 0, 0, 0.55);
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 900ms cubic-bezier(0.22, 1, 0.36, 1) 100ms,
              transform 900ms cubic-bezier(0.22, 1, 0.36, 1) 100ms;
}

.work-banner.is-visible .work-banner__title {
  opacity: 1;
  transform: translateY(0);
}

.work-banner__mission {
  margin: 0;
  max-width: 640px;
  font-family: var(--font-display);
  font-size: clamp(18px, 1.7vw, 26px);
  line-height: 1.4;
  font-weight: 400;
  letter-spacing: -0.005em;
  color: #FFFFFF;
  text-shadow: 0 2px 24px rgba(0, 0, 0, 0.6);
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 900ms cubic-bezier(0.22, 1, 0.36, 1) 380ms,
              transform 900ms cubic-bezier(0.22, 1, 0.36, 1) 380ms;
}

.work-banner.is-visible .work-banner__mission {
  opacity: 1;
  transform: translateY(0);
}

.work-banner__highlight {
  display: inline;
  background: var(--color-accent);
  color: #0A1A0E;
  padding: 0.15em 0.45em;
  font-weight: var(--weight-medium, 500);
  text-shadow: none;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  margin-left: -0.05em;
  white-space: normal;
}

@media (max-width: 767px) {
  .work-banner__content { top: 46%; }
  .work-banner__mission { max-width: 100%; }
  /* "FAQ" is short — keep it bold even on narrow screens */
  .work-banner__title { font-size: clamp(96px, 32vw, 200px); letter-spacing: -0.04em; }
}

.work-banner__plus-row {
  position: absolute;
  left: 5%;
  right: 5%;
  bottom: 18px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 2;
  pointer-events: none;
}

.work-banner__plus-row span {
  font-family: var(--font-mono);
  font-size: 18px;
  font-weight: 300;
  line-height: 1;
  color: rgba(255, 255, 255, 0.55);
  user-select: none;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 600ms cubic-bezier(0.22, 1, 0.36, 1),
              transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
}

.work-banner.is-visible .work-banner__plus-row span:nth-child(1) { transition-delay: 300ms; opacity: 1; transform: translateY(0); }
.work-banner.is-visible .work-banner__plus-row span:nth-child(2) { transition-delay: 380ms; opacity: 1; transform: translateY(0); }
.work-banner.is-visible .work-banner__plus-row span:nth-child(3) { transition-delay: 460ms; opacity: 1; transform: translateY(0); }
.work-banner.is-visible .work-banner__plus-row span:nth-child(4) { transition-delay: 540ms; opacity: 1; transform: translateY(0); }
.work-banner.is-visible .work-banner__plus-row span:nth-child(5) { transition-delay: 620ms; opacity: 1; transform: translateY(0); }

@media (max-width: 767px) {
  .work-banner__plus-row span { font-size: 14px; }
  .work-banner__plus-row     { bottom: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  .work-banner__media img { transform: none !important; }
  .work-banner__title,
  .work-banner__mission,
  .work-banner__plus-row span {
    opacity: 1 !important;
    transition: none !important;
  }
  .work-banner__title,
  .work-banner__mission { transform: translateY(0) !important; }
  .work-banner__plus-row span { transform: none !important; }
}

/* WORK BANNER META — black thin bar beneath hero
   "+ Frequently Asked Questions"  |  ©Edition 02  |  ↗ */

.work-banner-meta {
  width: 100%;
  background: var(--color-bg-base);
  border-bottom: 1px solid var(--color-border-faint);
  padding: var(--space-5) 0;
}

.work-banner-meta__inner {
  max-width: var(--container-max);
  margin: 0 auto;
  padding: 0 var(--space-6);
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.06em;
  color: var(--color-text-secondary);
}

@media (min-width: 768px) {
  .work-banner-meta__inner { padding: 0 var(--space-8); }
}

.work-banner-meta__left {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  justify-self: start;
}

.work-banner-meta__plus {
  font-size: 14px;
  font-weight: 400;
  color: var(--color-text-tertiary);
}

.work-banner-meta__center {
  justify-self: center;
  color: var(--color-text-tertiary);
}

.work-banner-meta__right {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  color: var(--color-text-secondary);
}

@media (max-width: 767px) {
  .work-banner-meta { padding: var(--space-4) 0; }
  .work-banner-meta__inner {
    font-size: 10px;
    grid-template-columns: 1fr auto auto;
    gap: 12px;
  }
}

/* tighten the existing .faq-hero now that the banner carries the wow moment */
.faq-hero--with-banner {
  padding-top: var(--space-12);
}
