/* DXB — Responsive breakpoints */

.dxb-section h1,
.dxb-section h2.dxb-section-title { font-size: clamp(32px, 6vw, 56px); }

.dxb-hero .dxb-display-title { font-size: clamp(40px, 10vw, 132px); line-height: 1; }
.dxb-section--cta .dxb-section-title { font-size: clamp(36px, 8vw, 72px); }
.dxb-hero .dxb-lead { font-size: clamp(16px, 4vw, 22px); line-height: 1.55; }
.dxb-hero .dxb-eyebrow { font-size: 11px; letter-spacing: 0.2em; line-height: 1.5; }
.dxb-hero .dxb-slogan { font-size: 11px; letter-spacing: 0.18em; }
.dxb-hero .dxb-btn { padding: 14px 24px; font-size: var(--fs-xs); }

@media (max-width: 1200px) {
  .dxb-grid-3 { grid-template-columns: repeat(2, 1fr); }
  .dxb-stats-grid { grid-template-columns: repeat(2, 1fr); }
  .dxb-footer-grid { grid-template-columns: 1fr 1fr; }
  .dxb-projects-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 900px) {
  .dxb-nav {
    padding: 12px 16px;
    flex-wrap: nowrap;
    background: rgba(240, 237, 230, 0.97);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(27, 42, 58, 0.12);
  }

  .dxb-logo { gap: 8px; align-items: center; }
  .dxb-nav .dxb-logo__divider,
  .dxb-nav .dxb-logo__tagline { display: none; }

  .dxb-nav-toggle { display: flex; flex-shrink: 0; }
  .dxb-nav-logo { flex: 1; min-width: 0; }
  .dxb-nav-logo .dxb-logo { max-width: 100%; }

  [dir="rtl"] .dxb-nav-logo {
    flex: 0 1 auto;
    margin-inline-start: auto;
    margin-inline-end: 0;
    justify-content: flex-end;
  }

  [dir="rtl"] .dxb-nav-toggle {
    margin-inline-end: auto;
    margin-inline-start: 0;
  }
  .dxb-nav .dxb-logo__mark { font-size: 22px; }
  .dxb-nav .dxb-logo__name { font-size: 10px; }

  .dxb-nav-panel {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: rgba(240, 237, 230, 0.98);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--border);
    padding: 24px;
    flex-direction: column;
    gap: 24px;
    box-shadow: 0 12px 32px rgba(27, 42, 58, 0.12);
    margin-inline-start: 0;
  }

  .dxb-nav--open .dxb-nav-panel { display: flex; }
  .dxb-nav-links { flex-direction: column; gap: 16px; }
  .dxb-nav-actions { flex-direction: column; align-items: stretch; width: 100%; }
  .dxb-nav-actions .dxb-btn { justify-content: center; text-align: center; }

  .dxb-hero .dxb-kenburns,
  .dxb-hero .dxb-hero-media {
    animation: none;
    transform: none;
  }

  .dxb-section { padding: 64px 24px; }
  .dxb-page-header { padding: 64px 24px 40px; }
  .dxb-hero {
    padding: 32px 20px 56px;
    min-height: 78svh;
    align-items: flex-end;
  }

  .dxb-grid-2,
  .dxb-grid-3,
  .dxb-projects-grid,
  .dxb-contact-grid,
  .dxb-stats-grid,
  .dxb-founder-grid,
  .dxb-featured-split { grid-template-columns: 1fr; }

  .dxb-footer-grid { grid-template-columns: 1fr; }
  .dxb-footer { padding: 48px 24px 24px; }
  .dxb-contact-page { padding: 64px 24px; }
  .dxb-projects-grid { padding: 40px 24px; }
  .dxb-filters { padding: 0 24px 32px; }

  .dxb-carousel { aspect-ratio: 16 / 10; }
  .dxb-section--video { padding: 64px 20px; }
  .dxb-section--video .dxb-section-title { font-size: clamp(28px, 8vw, 56px); }
  .dxb-featured-split__body { padding: 48px 24px; }
}

@media (max-width: 600px) {
  .dxb-hero .dxb-display-title { font-size: clamp(34px, 11vw, 56px); }
  .dxb-page-header .dxb-display-title { font-size: clamp(36px, 12vw, 64px); }
  .dxb-carousel__caption { left: 16px; right: 16px; font-size: 12px; }
  .dxb-hero { min-height: 70svh; padding-bottom: 48px; }
  .dxb-section,
  .dxb-page-header,
  .dxb-contact-page,
  .dxb-projects-grid,
  .dxb-footer,
  .dxb-legal-page,
  .dxb-project-detail__content {
    padding-left: max(16px, env(safe-area-inset-left));
    padding-right: max(16px, env(safe-area-inset-right));
  }
  .dxb-nav { padding-inline: max(12px, env(safe-area-inset-left)) max(12px, env(safe-area-inset-right)); }
}

#dxb-site,
#dxb-main,
.dxb-footer,
.dxb-hero,
.dxb-section {
  max-width: 100%;
  overflow-x: clip;
}

@media (max-width: 900px) {
  .dxb-nav {
    background: rgba(240, 237, 230, 0.97);
  }
  .dxb-nav-panel {
    background: rgba(240, 237, 230, 0.98);
  }
}

[dir="rtl"] .dxb-nav-links { text-align: right; }
[dir="rtl"] .dxb-carousel-prev { left: auto; right: auto; inset-inline-start: 16px; inset-inline-end: auto; }
[dir="rtl"] .dxb-carousel-next { left: auto; right: auto; inset-inline-end: 16px; inset-inline-start: auto; }

@media (prefers-reduced-motion: reduce) {
  .dxb-hero .dxb-kenburns,
  .dxb-hero .dxb-hero-media { animation: none !important; transform: none !important; }
}
