/* Theme default - polish.css: responsive polish for media, long text and touch targets. */
/* ---- Responsive polish -------------------------------------------------
   Media never wider than its box, long addresses and words wrap instead of
   pushing the page sideways, touch targets are finger sized, and the layout
   adapts from small phones through tablets to very wide screens. */
img, video, canvas, iframe, svg:not([width]):not(.soc-ico):not(.chev) { max-width: 100%; }
img, video { height: auto; }
.lead, .prose, .faq, .srv-ip, .cmd dd, .rule, td, th, code, .vform-note { overflow-wrap: anywhere; }
pre, .table-scroll { max-width: 100%; overflow-x: auto; }
table { max-width: 100%; }

@media (max-width: 720px) {
  .site-footer a, .site-footer button, .foot-cookie { display: inline-block; min-height: 40px; padding-block: 0.55rem; }
  .foot-social a { display: inline-flex; align-items: center; }
  .brand { min-height: 44px; display: inline-flex; align-items: center; }
  .eyebrow, .sev, .badge { font-size: max(0.72rem, 11.5px); }
}

@media (max-width: 380px) {
  .wrap { width: min(100% - 1.6rem, var(--wrap)); }
  h1 { overflow-wrap: anywhere; hyphens: auto; }
  .btn, .vform-actions .btn { width: 100%; text-align: center; justify-content: center; }
}

@media (pointer: coarse) {
  .btn, button, summary, .nav-item { min-height: 44px; }
  .vform input, .vform textarea, .vform select { font-size: 16px; }
}

@media (min-width: 1500px) {
  :root { --wrap: 1280px; }
}

@media (orientation: landscape) and (max-height: 520px) {
  .hero { min-height: 0; padding-block: 2rem; }
}
