/* Agripoli v0.55 — site-wide mobile overflow guard */
html,
body{
  max-width:100%;
  overflow-x:hidden;
}

*,
*::before,
*::after{
  box-sizing:border-box;
}

img,
svg,
video,
canvas{
  max-width:100%;
}

[data-tr],
[data-en],
h1,
h2,
h3,
p,
a,
span,
strong,
button{
  overflow-wrap:break-word;
}

.shell{
  width:min(var(--shell, 1180px), calc(100% - 32px));
}

@media (max-width:760px){
  html,
  body,
  main,
  section,
  header,
  footer{
    width:100%;
    max-width:100%;
  }

  .shell{
    width:min(100% - 28px, var(--shell, 1180px)) !important;
    max-width:calc(100% - 28px) !important;
  }

  .site-header,
  .nav-shell,
  .footer-grid,
  .footer-bottom,
  .contact-inner,
  .programs-hero-grid,
  .programs-feature-grid,
  .programs-all-grid,
  .press-button-grid,
  .product-grid,
  .impact-meter-shell,
  .impact-shell,
  .impact-grid,
  .products-shell{
    min-width:0 !important;
    max-width:100% !important;
  }

  .site-nav,
  .footer-links,
  .contact-actions,
  .program-card-meta,
  .press-launchpad-heading,
  .programs-section-head{
    min-width:0 !important;
  }

  .program-card,
  .press-button,
  .product-card,
  .value-card,
  .impact-step{
    min-width:0 !important;
    max-width:100% !important;
  }

  .program-card-tag,
  .press-open,
  .button,
  .contact-mail,
  .programs-trust-action{
    white-space:normal !important;
  }

  h1,
  h2,
  h3{
    max-width:100%;
    text-wrap:balance;
  }
}

@media (max-width:420px){
  .shell{
    width:min(100% - 22px, var(--shell, 1180px)) !important;
    max-width:calc(100% - 22px) !important;
  }

  .program-card-cta,
  .press-open,
  .contact-mail{
    font-size:max(11px, .78rem);
  }
}
