/* =====================================================================
   Damascus Projects Global – phone refinements (public site)
   Loaded after dpg-site.css. Every rule sits inside a max-width media
   query, so the desktop design is untouched.
   Goal on phones: less text, smaller type, shorter sections, bigger taps.
   ===================================================================== */

@media (max-width: 640px) {
  /* ---------- global rhythm ---------- */
  .dp-section { padding: 2.2rem 0; }
  .dp-section--tight { padding: 1.8rem 0; }
  .dp-h2 { font-size: 1.42rem; line-height: 1.22; }
  .dp-eyebrow { font-size: .68rem; letter-spacing: .1em; }
  .dp-lead, .dp-why__intro .dp-lead { font-size: .9rem; line-height: 1.55; margin-top: .6rem; }
  .dp-btn { min-height: 46px; font-size: .9rem; }
  .dp-btn--sm { min-height: 42px; font-size: .85rem; }
  .dp-section__head { gap: .6rem; margin-bottom: 1.1rem; }

  /* 3-line cap for long intro paragraphs */
  .dp-hero__text, .dp-lead, .dp-band p, .dp-reach p, .dp-split__card p, .dp-cta p {
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden;
  }

  /* hand-written script lines are decoration – hide them on phones */
  .dp-hero .dp-script, .dp-band .dp-script, .dp-reach .dp-script, .dp-split__script, .dp-collage-script { display: none !important; }

  /* ---------- heroes ---------- */
  .dp-hero { min-height: 0; }
  .dp-hero--page, .dp-hero--compact { min-height: 0; }
  .dp-hero__inner { min-height: 0; align-items: flex-end; }
  .dp-hero__content,
  .dp-hero--page .dp-hero__content,
  .dp-hero--compact .dp-hero__content { padding: 2.4rem 0 2rem; }
  .dp-hero__title { font-size: 1.72rem; line-height: 1.16; margin-top: .4rem; }
  .dp-hero__text { font-size: .9rem; line-height: 1.5; margin-top: .7rem; }
  .dp-hero .dp-btn-row { gap: .6rem; margin-top: 1.1rem; }
  .dp-hero .dp-btn-row .dp-btn { flex: 1 1 100%; min-height: 46px; }

  /* home carousel: fixed height so the eyebrow is never cut off */
  .dp-carousel { min-height: 540px; }
  .dp-carousel .dp-hero__content { padding: 2rem 0 4.6rem; }
  .dp-carousel__ui { bottom: 14px; }
  .dp-carousel .dp-arrow { width: 36px; height: 36px; }

  /* ---------- "why" features (home) → compact 2-col tiles ---------- */
  .dp-why { gap: 1.4rem; }
  .dp-features { grid-template-columns: 1fr 1fr; gap: 10px; row-gap: 10px; }
  .dp-feature {
    display: flex; align-items: center; gap: .7rem;
    padding: .8rem .75rem; border: 1px solid var(--dp-line); border-left: 1px solid var(--dp-line);
    border-radius: 12px; background: #fff;
  }
  .dp-feature__icon { width: 38px; height: 38px; flex: 0 0 38px; font-size: .95rem; margin: 0; box-shadow: none; }
  .dp-feature h3 { font-size: .8rem; line-height: 1.25; margin: 0; }
  .dp-feature p { display: none; }
  .dp-features .dp-feature:last-child:nth-child(odd) { grid-column: 1 / -1; }

  /* card-style features (investors / business / how it works): keep a one-line description */
  .dp-features--cards .dp-feature { flex-direction: column; align-items: flex-start; padding: .95rem .85rem; gap: .5rem; }
  .dp-features--cards .dp-feature p {
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
    font-size: .74rem; line-height: 1.45; margin: 0;
  }

  /* ---------- generic cards ---------- */
  .dp-grid { gap: 10px; }
  .dp-card { padding: 1rem; border-radius: 14px; }
  .dp-card:hover { transform: none; }
  .dp-card h3 { font-size: .92rem; margin-bottom: .25rem; }
  .dp-card p { font-size: .82rem; line-height: 1.5; }
  .dp-card .dp-feature__icon { width: 40px; height: 40px; font-size: .95rem; margin-bottom: .6rem; box-shadow: none; }

  /* icon + text cards sit side by side (About: company, head office, talk to us…) */
  .dp-grid--3 > .dp-card:has(> .dp-feature__icon:first-child) {
    display: grid; grid-template-columns: 40px 1fr; column-gap: .8rem; align-items: start;
  }
  .dp-grid--3 > .dp-card:has(> .dp-feature__icon:first-child) > .dp-feature__icon { grid-row: span 3; margin: 0; }

  /* about values: 2-col with short text */
  .dp-grid--4 > .dp-card p { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; font-size: .78rem; }

  /* how-it-works steps: drop the illustration, keep number + title + text in one row */
  .dp-card:has(> .dp-step-no) { display: grid; grid-template-columns: 34px 1fr; column-gap: .8rem; align-items: start; }
  .dp-card:has(> .dp-step-no) > .dp-card__media { display: none; }
  .dp-card:has(> .dp-step-no) > .dp-step-no { grid-row: span 2; margin: 0; width: 32px; height: 32px; }

  /* ---------- audience split cards ---------- */
  .dp-split__card { min-height: 0; padding: 1.5rem 1.1rem; }
  .dp-split__card h2, .dp-split__card h3 { font-size: 1.25rem; line-height: 1.25; }
  .dp-split__card p { font-size: .85rem; }
  .dp-split__card .dp-btn { margin-top: 1rem; }

  /* ---------- dark bands & global reach ---------- */
  .dp-band h2, .dp-reach h2 { font-size: 1.35rem; line-height: 1.25; }
  .dp-band p, .dp-reach p { font-size: .84rem; }
  .dp-checklist { gap: .7rem; }
  .dp-checklist li { font-size: .8rem; gap: .7rem; }
  .dp-checklist .dp-ring { width: 32px; height: 32px; flex: 0 0 32px; font-size: .8rem; }
  .dp-reach__inner > * { min-width: 0; }
  .dp-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .6rem; margin-top: 1.4rem; }
  .dp-stat { display: block; text-align: center; padding: .8rem .4rem; border: 1px solid rgba(255, 255, 255, .16); border-radius: 12px; }
  .dp-stat i { font-size: 1.3rem; margin: 0 0 .45rem; }
  .dp-stat h3 { font-size: .74rem; line-height: 1.25; }
  .dp-stat p { display: none; }

  /* ---------- live streams & stories ---------- */
  .dp-streams__track { grid-auto-columns: 64%; }
  .dp-stories__intro p { display: none; }
  .dp-stories__intro .dp-btn { margin-top: .9rem; }
  .dp-quote, .dp-story { padding: 1rem; }

  /* ---------- pricing ---------- */
  .dp-plans { gap: 22px; }
  .dp-plan { padding: 1.3rem 1.1rem; }
  .dp-plan__icon { width: 38px; height: 38px; font-size: .95rem; margin-bottom: .6rem; border-radius: 10px; }
  .dp-plan__price { font-size: 2rem; }
  .dp-plan__desc { font-size: .82rem; }
  .dp-plan ul { margin: .9rem 0 1.1rem; gap: .5rem; }
  .dp-plan li { font-size: .82rem; }
  .dp-plan ul.is-collapsed li:nth-child(n+5) { display: none; }
  .dp-plan__more {
    display: inline-flex; align-items: center; gap: .35rem; margin: -.4rem 0 1rem; padding: 0; border: 0; background: none;
    font: inherit; font-size: .8rem; font-weight: 700; color: var(--dp-blue); cursor: pointer;
  }
  .dp-plan--dark .dp-plan__more, .dp-plan.is-dark .dp-plan__more { color: var(--dp-gold); }

  /* ---------- CTA ---------- */
  .dp-cta { padding: 1.6rem 1.2rem; border-radius: 18px; }
  .dp-cta h2 { font-size: 1.4rem; line-height: 1.22; }
  .dp-cta .dp-btn-row { gap: .6rem; }
  .dp-cta .dp-btn-row .dp-btn { flex: 1 1 auto; }

  /* ---------- contact & FAQ ---------- */
  .dp-contact { gap: 14px; }
  .dp-info-card .dp-feature__icon { width: 40px; height: 40px; font-size: .95rem; }
  .dp-info-card + .dp-info-card { margin-top: 1rem; padding-top: 1rem; }
  .dp-info-card a { word-break: break-word; }
  .dp-faq-search input, .dp-input { font-size: 16px; }

  /* ---------- legal pages ---------- */
  .dp-legal__meta { display: none; } /* same info is already in the hero */

  /* ---------- footer: shorter and tidier ---------- */
  .dp-footer { padding-top: 2rem; }
  .dp-footer__grid { gap: 1.4rem; }
  .dp-footer__col--globe { display: none; }
  .dp-footer__col h4 { font-size: .85rem; margin-bottom: .6rem; }
  .dp-footer__links { display: grid; grid-template-columns: 1fr 1fr; gap: .45rem 1rem; }
  .dp-footer__links a { font-size: .82rem; padding: .15rem 0; }
  .dp-footer__contact { font-size: .82rem; }
  .dp-footer__contact > div { gap: .6rem; margin-bottom: .55rem; }
  .dp-social a { width: 38px; height: 38px; }
  .dp-footer__bottom { font-size: .75rem; gap: .5rem; }
  .dp-footer__more { display: grid; grid-template-columns: 1fr 1fr; gap: .35rem 1rem; padding-bottom: 1.2rem; }
  .dp-footer__more a { font-size: .72rem; padding: 0; margin: 0; }
}

/* very small phones */
@media (max-width: 370px) {
  .dp-hero__title { font-size: 1.55rem; }
  .dp-features { grid-template-columns: 1fr; }
  /* one per row: icon on the left, wording beside it */
  .dp-stats { grid-template-columns: 1fr; }
  .dp-stat { display: flex; align-items: center; gap: .75rem; text-align: left; padding: .7rem .85rem; }
  .dp-stat i { margin: 0; flex: 0 0 auto; font-size: 1.4rem; }
  .dp-stat h3 { font-size: .84rem; }
  .dp-footer__links, .dp-footer__more { grid-template-columns: 1fr; }
}
