/* R37: dedicated 3840 desktop profile. No declarations outside this query.
   R36 remains the source of all layouts below 3600 CSS pixels. */
@media (min-width:3600px) {
  .is-home {
    --home-shell:2160px;
    --home-gutter:max(4.5vw,calc((100vw - var(--home-shell))/2));
  }
  .is-home :is(.about,.products,.projects,.capability,.news) h2 {
    font-size:clamp(40px,3.4dvh,54px) !important; line-height:1.15 !important;
  }
  .is-home .about h2 { font-size:clamp(34px,2.8dvh,46px) !important; }
  .is-home .about .about-visual { max-width:820px; }
  .is-home .about .about-frame {
    height:min(clamp(420px,49dvh,800px),max(320px,calc(var(--home-viewport) - var(--home-header-height,94px) - 280px)));
  }
  .is-home .about .about-lead { font-size:19px; line-height:1.65; }
  .is-home .about .about-proof b { font-size:18px; }
  .is-home .about .about-proof span { font-size:15px; }
  .is-home .about .solution-ribbon h3 { font-size:20px; }
  .is-home .about .solution-ribbon p { font-size:16px; }
  .is-home .about .solution-ribbon article { min-height:140px; }
  .is-home .products {
    --home-panel-height:min(clamp(420px,57dvh,980px),max(320px,calc(var(--home-viewport) - var(--home-header-height,94px) - 220px)));
  }
  .is-home .products .product-nav button strong { font-size:24px; }
  .is-home .products .product-nav button small { font-size:17px; }
  .is-home .products .product-info h3 { font-size:38px !important; }
  .is-home .products #product-description,
  .is-home .products #product-note { font-size:19px !important; line-height:1.65 !important; }
  .is-home .products #product-specs li { font-size:17px; padding-block:6px; }
  .is-home .projects .project-showcase {
    --home-panel-height:min(clamp(420px,54dvh,940px),max(320px,calc(var(--home-viewport) - var(--home-header-height,94px) - 310px)));
  }
  .is-home .projects .projects-intro { font-size:18px; line-height:1.6; }
  .is-home .projects .project-detail { padding:36px 40px !important; }
  .is-home .projects .project-detail h3 { font-size:32px; line-height:1.35; margin:20px 0 14px; }
  .is-home .projects .project-detail > span { font-size:18px; line-height:1.65; }
  .is-home .projects .project-detail > strong { font-size:68px; }
  .is-home .projects .project-detail > strong small { font-size:15px; }
  .is-home .projects .project-detail > p,
  .is-home .projects .project-detail > a { font-size:15px; }
  .is-home .projects .project-location { font-size:16px; }
  .is-home .projects .project-thumbs button {
    grid-template-columns:80px 22px minmax(0,1fr) !important;
    min-height:112px !important; padding:10px !important; gap:10px;
  }
  .is-home .projects .project-thumbs button .project-thumb-image { width:80px !important; height:80px !important; }
  .is-home .projects .project-thumbs button .project-thumb-copy strong { font-size:15px; line-height:1.4; }
  .is-home .projects .project-thumbs button .project-thumb-copy small { font-size:13px; }
  .is-home .capability .process-line h3 { font-size:24px; }
  .is-home .capability .process-line p { font-size:18px; max-width:320px; }
  .is-home .capability .capability-head > p:last-child { font-size:20px; }
  .is-home .capability .capability-band strong { font-size:20px; }
  .is-home .capability .capability-band span { font-size:15px; }
  .is-home .news .news-stack { grid-auto-rows:minmax(156px,1fr); }
  .is-home .news .news-stack article {
    min-height:156px !important;
    grid-template-columns:160px minmax(0,1fr) 44px !important;
    padding:14px !important; gap:16px !important;
  }
  .is-home .news .news-stack h3 { font-size:20px !important; }
  .is-home .news .news-summary,
  .is-home .news .news-excerpt { font-size:16px !important; }
  .is-home .news .news-date { font-size:14px !important; }
  .is-home .news .news-photo { min-height:clamp(300px,39dvh,660px); }
  .is-home .news .news-copy { padding:24px !important; }
}

/* R56: only the introduction on wide desktops; 1920px stays unchanged. */
@media (min-width:2200px) {
  .is-home .about {
    grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);
    column-gap:clamp(48px,2.5vw,96px);
    align-items:center;
  }
  .is-home .about .about-visual {
    width:100%; max-width:none; min-width:0;
    padding:16px 16px 28px 0;
  }
  .is-home .about .about-frame {
    width:100%; height:auto; min-height:0; max-height:none;
    aspect-ratio:16 / 9;
    background:#e9f0f5; border-radius:28px;
  }
  .is-home .about .about-frame > :is(.about-media-video,.about-media-fallback) {
    object-fit:contain; object-position:center;
    transform:none!important;
  }
  .is-home .about .about-copy { width:100%; max-width:none; min-width:0; align-self:center; }
  .is-home .about .about-lead {
    width:100%; max-width:none;
    text-align:justify; text-align-last:start; line-height:1.75;
  }
  .is-home .about .about-proof { width:100%; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .is-home .about .about-proof > div { min-width:0; }
}
