/* ============================================================
   MARSA ALEKHWA — Mobile App Experience
   Complete mobile-first overhaul for phone screens
   Makes the website feel like a native mobile app
   ============================================================ */

/* ──────────────────────────────────────────────
   ≤ 1024px  — TABLET & BELOW
   ────────────────────────────────────────────── */
@media (max-width: 1024px) {

  /* ── Viewport lock ─────────────────────────── */
  html {
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
  }

  body {
    overflow-x: hidden;
    -webkit-text-size-adjust: 100%;
  }

  /* ── Section spacing tighter ─────────────── */
  .section {
    padding-block: clamp(2.5rem, 2rem + 3vw, 5rem);
  }

  .section__header {
    margin-block-end: var(--space-8);
  }

  .section__description {
    font-size: var(--text-base);
    max-inline-size: 100%;
  }
}

/* ──────────────────────────────────────────────
   ≤ 768px  — PHONE LANDSCAPE & SMALL TABLET
   ────────────────────────────────────────────── */
@media (max-width: 768px) {

  /* ── NAVBAR — app-style top bar ────────────── */
  .navbar {
    block-size: 3.5rem;
    --navbar-height: 3.5rem;
  }

  .navbar__inner {
    padding-inline: var(--space-3);
  }

  .navbar__logo-img {
    inline-size: 2rem;
    block-size: 2rem;
  }

  .navbar__logo-text {
    font-size: var(--text-sm);
    max-inline-size: 10rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .navbar__toggle {
    min-inline-size: 2.75rem;
    min-block-size: 2.75rem;
  }

  /* Nav drawer — full-screen app-like overlay */
  .navbar__nav {
    inline-size: 100vw !important;
    inset-inline-end: 0;
    inset-inline-start: 0;
    padding: var(--space-6) var(--space-5);
    background: var(--color-navy-950);
    border-inline-start: none;
  }

  .navbar__link {
    font-size: var(--text-lg);
    padding: var(--space-4) var(--space-3);
    min-block-size: 3rem;
    border-block-end: 1px solid var(--color-divider);
    display: flex;
    align-items: center;
  }

  .navbar__link:last-of-type {
    border-block-end: none;
  }

  .lang-switcher {
    padding-block-start: var(--space-4);
    justify-content: center;
    gap: var(--space-2);
  }

  .lang-btn {
    padding: var(--space-2) var(--space-4);
    font-size: var(--text-sm);
    min-block-size: 2.5rem;
  }

  /* ── HERO — full viewport app feel ─────────── */
  .hero {
    min-block-size: 100svh;
    padding-block-start: 3.5rem; /* navbar height */
  }

  .hero__content {
    padding-block: var(--space-8) var(--space-6);
    text-align: center;
  }

  .hero__badge {
    font-size: 0.65rem;
    padding: var(--space-1) var(--space-3);
    margin-inline: auto;
  }

  .hero__title {
    font-size: clamp(1.75rem, 5vw + 0.5rem, 2.75rem);
    line-height: 1.2;
  }

  .hero__subtitle {
    font-size: var(--text-sm);
    max-inline-size: 100%;
    line-height: 1.65;
  }

  .hero__actions {
    flex-direction: column;
    align-items: stretch;
    gap: var(--space-3);
    max-inline-size: 100%;
  }

  .hero__actions .btn {
    inline-size: 100%;
    justify-content: center;
  }

  /* Stats bar — compact 2x2 grid */
  .hero__stats {
    margin-block-start: var(--space-6);
  }

  .hero__stats .stat {
    padding: var(--space-3) var(--space-2);
  }

  .stat__number {
    font-size: var(--text-2xl);
  }

  .stat__label {
    font-size: 0.65rem;
    line-height: 1.3;
  }

  /* Hero particles — hide on mobile for perf */
  .hero__particle {
    display: none;
  }

  .hero__bg-overlay {
    opacity: 0.85;
  }

  /* ── ABOUT — single column ───────────────── */
  .about .split {
    gap: var(--space-6);
  }

  .about__image-accent {
    display: none;
  }

  .about__highlights {
    grid-template-columns: 1fr !important;
    gap: var(--space-3);
  }

  .about__highlight {
    padding: var(--space-3) var(--space-4);
  }

  .about__text {
    font-size: var(--text-sm);
    line-height: 1.75;
  }

  /* ── VMO CARDS ───────────────────────────── */
  .vmo-card {
    padding: var(--space-5);
  }

  .vmo-card .card__icon {
    inline-size: 3rem;
    block-size: 3rem;
    font-size: 1.25rem;
    margin-block-end: var(--space-3);
  }

  /* ── BUSINESS AREAS ──────────────────────── */
  .accordion-item summary {
    padding: var(--space-4);
    font-size: var(--text-sm);
    min-block-size: 3rem;
  }

  .accordion-content {
    padding: 0 var(--space-4) var(--space-4);
  }

  .product-tag {
    font-size: 0.7rem;
    padding: var(--space-1) var(--space-3);
  }

  /* ── SERVICES CARDS ──────────────────────── */
  .service-card {
    padding: var(--space-4);
  }

  .service-card .card__icon {
    inline-size: 2.75rem;
    block-size: 2.75rem;
    font-size: 1.15rem;
  }

  .card__title {
    font-size: var(--text-base);
  }

  .card__text {
    font-size: var(--text-sm);
  }

  /* ── ASSETS ──────────────────────────────── */
  .asset-card {
    padding: var(--space-4);
    gap: var(--space-3);
  }

  .asset-card__image {
    inline-size: 3rem;
    block-size: 3rem;
    font-size: 1.25rem;
  }

  .capacity-bar {
    padding: var(--space-4);
  }

  .capacity-bar__labels {
    flex-wrap: wrap;
    gap: var(--space-2);
    font-size: var(--text-xs);
  }

  /* ── PARTNERS MARQUEE ────────────────────── */
  .marquee::before,
  .marquee::after {
    display: none; /* Remove gradient masks on mobile to save screen real estate */
  }

  .partner-card {
    min-inline-size: 15rem;
    padding: var(--space-4);
  }

  .partner-card__name {
    font-size: var(--text-base);
  }

  /* ── TEAM SECTION ────────────────────────── */
  .team-spotlight {
    padding: var(--space-5);
    gap: var(--space-5);
    grid-template-columns: 1fr !important;
    text-align: center;
  }

  .team-spotlight img {
    max-inline-size: 16rem;
    margin-inline: auto;
  }

  .team-spotlight__name {
    font-size: var(--text-xl);
  }

  .team-spotlight__role {
    font-size: var(--text-sm);
  }

  .team-spotlight__bio {
    font-size: var(--text-sm);
    line-height: 1.7;
  }

  .team-member {
    padding: var(--space-4);
  }

  .team-member__avatar {
    inline-size: 3rem;
    block-size: 3rem;
    font-size: 1.15rem;
  }

  /* ── CONTACT ─────────────────────────────── */
  .contact-info {
    gap: var(--space-4);
  }

  .contact-item {
    gap: var(--space-3);
  }

  .contact-item__icon {
    inline-size: 2.5rem;
    block-size: 2.5rem;
    font-size: 1rem;
    flex-shrink: 0;
  }

  .contact-form {
    padding: var(--space-5) !important;
  }

  .whatsapp-btn {
    inline-size: 100%;
    max-inline-size: none;
    justify-content: center;
    padding: var(--space-4) var(--space-6);
    font-size: var(--text-base);
    min-block-size: 3.25rem;
  }

  /* ── FOOTER ──────────────────────────────── */
  .footer {
    padding-block: var(--space-8) var(--space-5);
  }

  .footer__grid {
    grid-template-columns: 1fr !important;
    gap: var(--space-6);
    text-align: center;
  }

  .footer__brand {
    max-inline-size: 100%;
    text-align: center;
  }

  .footer__brand-logo {
    justify-content: center;
  }

  .footer__social {
    justify-content: center;
  }

  .footer__bottom {
    flex-direction: column;
    gap: var(--space-3);
    text-align: center;
  }

  /* ── WhatsApp FAB — mobile safe area ──────── */
  .whatsapp-fab {
    inset-block-end: calc(var(--space-4) + env(safe-area-inset-bottom));
    inset-inline-end: var(--space-3);
    inline-size: 3.25rem;
    block-size: 3.25rem;
  }

  .whatsapp-fab svg {
    inline-size: 1.5rem;
    block-size: 1.5rem;
  }

  /* ── DECORATIVE — smaller on mobile ──────── */
  .glow-orb--1 {
    inline-size: 15rem;
    block-size: 15rem;
  }

  .glow-orb--2 {
    inline-size: 10rem;
    block-size: 10rem;
  }

  /* ── Section titles ──────────────────────── */
  .section__title {
    font-size: var(--text-2xl);
  }

  .section__title::after {
    inline-size: 3rem;
    block-size: 2px;
    margin-block-start: var(--space-3);
  }
}


/* ──────────────────────────────────────────────
   ≤ 480px  — PHONE PORTRAIT
   ────────────────────────────────────────────── */
@media (max-width: 480px) {

  /* Container tighter padding */
  .container {
    padding-inline: var(--space-4);
  }

  /* Hero adjustments */
  .hero__title {
    font-size: clamp(1.5rem, 4.5vw + 0.4rem, 2.25rem);
  }

  .hero__subtitle {
    font-size: var(--text-xs);
  }

  .hero__badge {
    font-size: 0.6rem;
  }

  /* Stats — 2 column grid */
  .hero__stats {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 0;
  }

  .hero__stats .stat {
    padding: var(--space-2) var(--space-1);
    border-inline-end: 1px solid var(--color-divider);
    border-block-end: 1px solid var(--color-divider);
  }

  .hero__stats .stat:nth-child(2n) {
    border-inline-end: none;
  }

  .hero__stats .stat:nth-child(n+3) {
    border-block-end: none;
  }

  .stat__number {
    font-size: var(--text-xl);
  }

  .stat__label {
    font-size: 0.6rem;
  }

  /* Cards even tighter */
  .card {
    padding: var(--space-3);
  }

  .card__icon {
    inline-size: 2.5rem;
    block-size: 2.5rem;
    font-size: 1rem;
  }

  .card__title {
    font-size: var(--text-sm);
  }

  .card__text {
    font-size: var(--text-xs);
  }

  /* Team spotlight */
  .team-spotlight img {
    max-inline-size: 12rem;
  }

  .team-spotlight__name {
    font-size: var(--text-lg);
  }

  /* About highlights */
  .about__highlight {
    padding: var(--space-2) var(--space-3);
    font-size: var(--text-xs);
  }

  /* Business accordion */
  .accordion-item summary {
    padding: var(--space-3);
    font-size: var(--text-xs);
  }

  /* Contact */
  .contact-form {
    padding: var(--space-4) !important;
  }

  .whatsapp-btn {
    font-size: var(--text-sm);
    padding: var(--space-3) var(--space-4);
  }

  /* Footer */
  .footer__social-link {
    inline-size: 2.25rem;
    block-size: 2.25rem;
  }

  /* WhatsApp FAB */
  .whatsapp-fab {
    inline-size: 3rem;
    block-size: 3rem;
  }

  .whatsapp-fab svg {
    inline-size: 1.25rem;
    block-size: 1.25rem;
  }

  /* Section title */
  .section__title {
    font-size: var(--text-xl);
  }

  /* Buttons */
  .btn {
    font-size: var(--text-xs);
    padding: var(--space-3) var(--space-5);
    min-block-size: 2.5rem;
  }

  .btn--lg {
    padding: var(--space-3) var(--space-6);
    font-size: var(--text-sm);
  }
}


/* ──────────────────────────────────────────────
   ≤ 375px  — VERY SMALL PHONES (iPhone SE)
   ────────────────────────────────────────────── */
@media (max-width: 375px) {

  .container {
    padding-inline: var(--space-3);
  }

  .hero__title {
    font-size: 1.4rem;
  }

  .hero__subtitle {
    font-size: 0.7rem;
    line-height: 1.5;
  }

  .hero__actions .btn {
    font-size: var(--text-xs);
    padding: var(--space-2) var(--space-4);
  }

  .section__title {
    font-size: var(--text-lg);
  }

  .section__description {
    font-size: var(--text-xs);
  }

  .vmo-card {
    padding: var(--space-4);
  }

  .asset-card {
    flex-direction: column;
    text-align: center;
    align-items: center;
  }

  .team-spotlight {
    padding: var(--space-3);
  }

  .navbar__logo-text {
    font-size: var(--text-xs);
    max-inline-size: 7rem;
  }
}


/* ──────────────────────────────────────────────
   LANDSCAPE PHONE — avoid content overflow
   ────────────────────────────────────────────── */
@media (max-height: 500px) and (orientation: landscape) {

  .hero {
    min-block-size: auto;
    padding-block: var(--space-12) var(--space-8);
  }

  .hero__actions {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .hero__stats .stat {
    padding: var(--space-2);
  }

  .splash__logo {
    inline-size: 3rem;
  }

  .splash__company {
    font-size: var(--text-xl);
  }

  .splash__tagline {
    font-size: var(--text-xs);
    margin-block-end: var(--space-4);
  }
}
