/* ============================================
   ARTIDIGI — Responsive Stylesheet
   ============================================ */

/* ---- Large Desktop (1200px+) ---- */
@media (min-width: 1200px) {
  :root {
    --section-gap: 140px;
  }
}

/* ---- Tablet Landscape (1024px and below) ---- */
@media (max-width: 1024px) {
  :root {
    --section-gap: 90px;
  }

  .how-it-works__grid {
    grid-template-columns: 1fr 1fr;
  }

  .how-it-works__grid .step-card:last-child {
    grid-column: 1 / -1;
    max-width: 480px;
    margin: 0 auto;
  }

  .testimonials__grid {
    grid-template-columns: 1fr 1fr;
  }

  .testimonials__grid .testimonial-card:last-child {
    grid-column: 1 / -1;
  }

  .offer__layout {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .footer__top {
    grid-template-columns: 1fr 1fr;
    gap: 48px;
  }

  .footer__brand {
    grid-column: 1 / -1;
  }

  .apply__layout {
    grid-template-columns: 1fr;
    gap: 48px;
  }

  .apply__sidebar {
    order: -1;
  }
}

/* ---- Meeting Bar responsive ---- */
@media (max-width: 1024px) {
  .meeting-bar__text {
    display: none;
  }
  .meeting-bar__divider {
    display: none;
  }
}

@media (max-width: 600px) {
  .meeting-bar__info {
    display: none;
  }
  .meeting-bar__cta {
    padding: 7px 14px;
    font-size: 0.75rem;
  }
}

/* ---- Tablet Portrait (768px and below) ---- */
@media (max-width: 768px) {
  :root {
    --section-gap: 70px;
  }

  /* Navigation */
  .nav__links,
  .nav__cta {
    display: none;
  }

  .nav__toggle {
    display: flex;
  }

  .nav__mobile {
    display: flex;
  }

  /* Hero */
  .hero {
    padding: 120px 0 80px;
    min-height: auto;
  }

  .hero__meta {
    gap: 32px;
    flex-wrap: wrap;
  }

  /* Authority grid */
  .authority__grid {
    grid-template-columns: 1fr;
  }

  /* How it works */
  .how-it-works__grid {
    grid-template-columns: 1fr;
  }

  .how-it-works__grid .step-card:last-child {
    grid-column: auto;
    max-width: none;
  }

  /* Split section */
  .split__grid {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .split__divider {
    display: none;
  }

  .split__col--right {
    padding-top: 40px;
    border-top: 1px solid var(--color-border);
  }

  /* Testimonials */
  .testimonials__grid {
    grid-template-columns: 1fr;
  }

  .testimonials__grid .testimonial-card:last-child {
    grid-column: auto;
  }

  /* Offer layout */
  .offer__layout {
    grid-template-columns: 1fr;
  }

  /* Footer */
  .footer__top {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .footer__bottom {
    flex-direction: column;
    gap: 16px;
    text-align: center;
  }

  /* Full split (offer page) */
  .full-split__grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  /* Apply form */
  .form__row {
    grid-template-columns: 1fr;
  }
}

/* ---- Mobile (480px and below) ---- */
@media (max-width: 480px) {
  :root {
    --section-gap: 60px;
  }

  .container {
    padding: 0 16px;
  }

  /* Hero */
  .hero {
    padding: 110px 0 60px;
  }

  .hero h1 {
    font-size: 2rem;
  }

  .btn-group {
    flex-direction: column;
    align-items: stretch;
  }

  .btn-group .btn {
    justify-content: center;
  }

  .hero__meta {
    flex-direction: column;
    gap: 24px;
  }

  /* Authority card */
  .authority__card {
    padding: 28px 24px;
  }

  /* Step cards */
  .step-card {
    padding: 28px 24px;
  }

  /* Pricing card */
  .pricing-card {
    padding: 32px 24px;
  }

  .pricing-card__amount {
    font-size: 2.4rem;
  }

  /* Risk block */
  .risk-block {
    padding: 28px 24px;
  }

  /* Section headers */
  .section-header {
    margin-bottom: 44px;
  }

  /* Footer */
  .footer {
    padding: 48px 0 28px;
  }

  .footer__top {
    margin-bottom: 36px;
  }

  /* Page heroes */
  .page-hero {
    padding: 130px 0 60px;
  }

  .apply-hero {
    padding: 130px 0 60px;
  }

  /* FAQ */
  .faq__question {
    padding: 20px 20px;
  }

  .faq__answer-inner {
    padding: 0 20px 20px;
  }

  /* Form */
  .apply__layout {
    padding: 60px 0;
  }

  /* Sidebar */
  .sidebar-block {
    padding: 24px 20px;
  }

  /* Testimonials */
  .testimonial-card {
    padding: 24px;
  }

  /* Metric card */
  .metric-card {
    padding: 28px 24px;
  }

  .metric-card__value {
    font-size: 2.4rem;
  }
}

/* ---- Small Mobile (360px and below) ---- */
@media (max-width: 360px) {
  .hero h1 {
    font-size: 1.8rem;
  }

  h2 {
    font-size: 1.5rem;
  }

  .nav__logo {
    font-size: 0.95rem;
  }
}
