/* Readability adjustments for the existing public pages. */
@media (max-width: 820px) {
  /* The hero window keeps its glass surface; only its decorative UV rim is removed. */
  .stage > .glowwrap > .uv {
    display: none !important;
  }

  /* Keep the footer navigation complete, vertical and easy to tap. */
  .foot,
  .foot-in,
  .foot-cols,
  .foot-cols .fcol {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  .foot-cols {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 28px !important;
  }

  .foot-cols > .fcol:not(.brand-col):not(.contacts-col) {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100%;
  }

  .foot-cols > .fcol:not(.brand-col):not(.contacts-col) a {
    display: flex !important;
    align-items: center;
    width: 100%;
    min-height: 48px;
    box-sizing: border-box;
    font-size: 16px !important;
    line-height: 1.35;
    overflow-wrap: anywhere;
  }

  .foot-cols .fh {
    font-size: 14px !important;
    line-height: 1.35;
    margin-bottom: 8px !important;
  }

  .foot-bottom,
  .fb-legal,
  .contacts-col .ci {
    flex-wrap: wrap;
  }

  .foot-bottom a,
  .fb-legal a {
    min-height: 44px;
    line-height: 1.4;
  }

  /* Main explanatory copy and card descriptions. */
  .sub,
  .lead,
  .rsub,
  .psec-sub,
  .fc-copy > p,
  .brand-col > p,
  .bento-body > p,
  .b2-body > p,
  .wcard > p,
  .case > p,
  .sol > p,
  .cat-tile > p,
  .pdesc,
  .flag-copy > p,
  .xbody > p,
  .opc-desc,
  .htl-card p,
  .lic-card p,
  .lic-note,
  .cc-sub,
  .ct-note,
  .fsub,
  .cw-note,
  .off-body > p,
  .pl-bcard > p,
  .plan > p {
    font-size: 16px !important;
    line-height: 1.55 !important;
    overflow-wrap: anywhere;
  }

  /* Labels that support the content without competing with it. */
  .ff-note,
  .mnote,
  .cr-note,
  .kp-note,
  .zsla-note,
  .dc-sub,
  .dc-cap,
  .cc-sub,
  .xsub,
  .stat-d,
  .tstat > span,
  .contacts-col .ci span,
  .foot-bottom .cop,
  .fb-legal a {
    font-size: 14px !important;
    line-height: 1.5 !important;
    overflow-wrap: anywhere;
  }

  /* Dense interfaces remain legible and may scroll horizontally when needed. */
  table,
  .ptable,
  .pd-table,
  table.rt,
  .cmp-wrap {
    font-size: 14px !important;
    line-height: 1.45;
  }

  table th,
  table td,
  .ptable th,
  .ptable td,
  .pd-table th,
  .pd-table td {
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .console-body,
  .pd-table,
  .cmp-wrap,
  .calc-wrap,
  .rpanel-body,
  .off-mapcard {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .fcard .fn,
  .fcard .fs,
  .pcloud .nm,
  .pcloud .sb,
  .cw-tx,
  .cw-note,
  .zone,
  .zbody-main,
  .pl-bcard,
  .cc-card {
    min-width: 0;
    overflow-wrap: anywhere;
  }
}
@media(max-width:820px) {
 .glowwrap > .uv { display:none !important; }
 p { font-size:16px; line-height:1.55; }
 .foot-cols .brand-col p { opacity:1; color:#b9bec8; }
 .foot-cols .fcol a { color:#d8dce5; }
 .foot-cols .contacts-col a { display:flex !important; width:100%; font-size:16px !important; min-height:48px; }
 .foot-cols .fh { color:#a9b3c5; }
 .fb-legal { display:flex; flex-direction:column; align-items:stretch; width:100%; }
 .fb-legal a { display:flex; align-items:center; min-height:48px; width:100%; }
 .zone { display:grid; grid-template-columns:24px minmax(0,1fr); align-items:start; gap:12px; }
 .zbody-main { width:100%; }
 .ztags { grid-column:2; width:100%; padding-left:0; justify-content:flex-start; align-items:flex-start; }
 .zt { font-size:16px; }
 .zh-s, .zchips span, .ztag, .zx-c, .zcov-l, .zcov-x,
 .console-top .title, .console-top .live,
 .mini .k, .cloud, table.rt td, table.rt th,
 .zsla-note, .zsla-item span { font-size:14px !important; line-height:1.45; }
 .zchips span { max-width:100%; overflow-wrap:normal; }
 .znum { font-size:14px; }
 .console-top .title { overflow-wrap:anywhere; }
 .ztag { white-space:normal; }
 .zsla-note { padding:14px; }
}
@media(max-width:820px) {
 p { font-size:16px !important; line-height:1.55 !important; }
 .code p { font-size:inherit !important; }
 .vd-form-note, .pds-ai p { font-size:14px !important; line-height:1.5 !important; }
 .cc-sub { font-size:16px !important; }
 .pl-mod { min-width:0; height:auto !important; }
}
@media(max-width:820px) {
 .plan li, .fc-list li, .faq .fa { font-size:16px !important; line-height:1.55; }
 .ctog button, .cl, .pds-ai-h, .pds-ai-cta { font-size:14px !important; line-height:1.45; }
 .fc-list li { align-items:flex-start; }
}
@media(max-width:820px) {
 .case-link, .xlink { font-size:16px !important; min-height:48px; display:inline-flex; align-items:center; }
 .ff2 label, .ff-agree, .ff-agree a { font-size:14px !important; line-height:1.5; }
 .htl-scale { height:auto !important; overflow:visible; }
 .htl-row { width:100% !important; transform:none !important; grid-template-columns:minmax(0,1fr); gap:24px; }
 .htl-node { padding:28px 0 0 30px; }
 .htl-year { top:0; left:30px; font-size:14px; }
 .htl-node::after { top:3px; left:0; width:14px; height:14px; }
 .htl-node::before { top:20px; bottom:-24px; left:6px; right:auto; width:2px; height:auto; }
 .htl-card { height:auto; }
}
@media(max-width:820px) {
 .stat-n { color:#465775; }
 .layer.you .nm { color:#626d80 !important; }
 .resp-dark-look .layer.you .nm { color:#aeb8cb !important; }
 .pl-bento { grid-auto-rows:auto; }
 .ctog button { white-space:normal; }
 .pcon-main table td:last-child { white-space:nowrap; }
}
@media(max-width:480px) { #hMng { display:grid; grid-template-columns:minmax(0,1fr); } }
/* Keep short service statuses and SLA values intact in the home dashboard. */
@media(max-width:820px) {
 .hero table.vd-service-table { table-layout:auto; }
 .hero table.vd-service-table th, .hero table.vd-service-table td { padding:9px 5px; overflow-wrap:normal; word-break:normal; }
 .hero table.vd-service-table td:first-child { white-space:normal; }
 .hero table.vd-service-table th:nth-child(3), .hero table.vd-service-table td:nth-child(3),
 .hero table.vd-service-table th:last-child, .hero table.vd-service-table td:last-child {
  width:1%; white-space:nowrap; overflow-wrap:normal;
 }
 .hero table.vd-service-table .st, .hero table.vd-service-table .sla { white-space:nowrap; overflow-wrap:normal; word-break:normal; font-size:14px; }
 .hero table.vd-service-table .st .d { flex:0 0 7px; }
}
@media(max-width:380px) {
 .hero table.vd-service-table thead { display:none; }
 .hero table.vd-service-table, .hero table.vd-service-table tbody { display:block; width:100%; }
 .hero table.vd-service-table tr { display:grid; grid-template-columns:minmax(0,1fr) max-content; gap:6px 12px; padding:12px 0; border-bottom:1px solid rgba(255,255,255,.08); }
 .hero table.vd-service-table td { padding:0; border:0; width:auto !important; }
 .hero table.vd-service-table td:first-child { grid-column:1 / -1; font-size:16px; }
 .hero table.vd-service-table td:nth-child(3) { grid-column:1; }
 .hero table.vd-service-table td:last-child { grid-column:2; }
 .hero table.vd-service-table td:last-child::before { content:'SLA '; font-size:11px; color:#a4afc0; }
}
@media(max-width:380px) { .hero table.vd-service-table td:last-child::before { margin-right:4px; } }
