/* ================= FAQ PAGE STYLES ================= */

.faq-grid {
  display: grid;
  gap: 1rem;
  margin-top: 1.5rem;
}

.faq-item {
  padding: 1.2rem;
  border-radius: 22px;
  background: var(--surface-strong);
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
}

.faq-item summary {
  cursor: pointer;
  font-weight: 700;
  font-size: 1.05rem;
}

.faq-item summary::-webkit-details-marker {
  display: none;
}

.faq-item summary::after {
  content: "+";
  float: right;
  color: var(--accent-deep);
}

.faq-item[open] summary::after {
  content: "−";
}

.faq-item p {
  margin-top: 0.8rem;
  color: var(--muted);
}

/* ================= TOP CTA STRIP ================= */
.top-cta-strip {
    position: fixed;
    top: 72px;
    left: 0;
    right: 0;
    z-index: 19;
    background: rgba(17, 9, 6, 0.3);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
    display: flex;
    justify-content: center;
    padding: 0.6rem 1rem;
    transition: transform 0.4s ease, opacity 0.4s ease, top 0.3s ease;
}

.top-cta-strip.is-hidden {
    transform: translateY(-100%);
    opacity: 0;
    pointer-events: none;
}

.top-cta-strip-inner {
    display: flex;
    gap: 0.8rem;
    align-items: center;
    max-width: 900px;
    width: 100%;
    justify-content: space-between;
}

.top-cta-strip-text {
    color: white;
    font-size: 0.9rem;
    font-weight: 500;
}

.top-cta-strip a {
    padding: 0.4rem 1.2rem;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--accent-deep), var(--accent));
    color: white;
    font-weight: 600;
    white-space: nowrap;
    text-decoration: none;
}

@media (max-width: 520px) {
    .top-cta-strip-text { display: none; }
}