/* iPhone 17 portrait: 402 CSS pixels. Desktop and landscape keep their layout. */
@media screen and (width: 402px) and (orientation: portrait) {
  html { -webkit-text-size-adjust: 100%; }
  body {
    margin: 0;
    padding: max(12px, env(safe-area-inset-top)) 12px max(20px, env(safe-area-inset-bottom));
  }
  body, body p, body span, body div, body a, body td, body li, body label {
    font-size: 16px;
    line-height: 1.55;
  }
  #site-shell, #site-shell > tbody, #site-shell > tbody > tr,
  #site-shell > tbody > tr > td,
  #oMain, #oMain > tbody, #oMain > tbody > tr,
  #site-content, #site-sidebar {
    display: block;
    box-sizing: border-box;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100%;
    height: auto !important;
    padding: 0 !important;
  }
  #site-shell .site-header { margin-bottom: 16px; }
  .site-header > div {
    background: linear-gradient(#ffb16b, #df883d) !important;
    border-radius: 10px;
  }
  .site-header > div > div {
    height: auto !important;
    min-height: 116px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 20px 12px;
    background: none !important;
    font-size: 30px !important;
    line-height: 1.2 !important;
  }
  #site-content, #site-sidebar { overflow-wrap: anywhere; }
  #site-sidebar { margin-top: 16px; }
  div.round {
    min-width: 0;
    margin: 0 0 16px;
    border-radius: 10px;
    box-shadow: 0 1px 5px #00000018;
  }
  div.round > .tl, div.round > .bl { display: none; }
  div.round > .cl, div.round > .cl > .cr { background: none; }
  div.round > .cl > .cr { padding: 20px 18px !important; }
  body h1, body h2, body h3, body a.h2 {
    font-size: 20px !important;
    line-height: 1.35;
    overflow-wrap: anywhere;
  }
  #site-content p { text-align: left !important; }
  #site-content img, #site-content video, #site-content iframe {
    max-width: 100% !important;
  }
  #site-content img { height: auto !important; }
  #site-content pre { max-width: 100%; overflow-x: auto; white-space: pre-wrap; }
  #site-content table { max-width: 100%; display: block; overflow-x: auto; }
  #site-content .faq-form-layout, .faq-form-layout > tbody,
  .faq-form-layout > tbody > tr, .faq-form-layout > tbody > tr > td {
    display: block;
    box-sizing: border-box;
    width: 100% !important;
    padding: 0 !important;
  }
  .faq-form-layout > tbody > tr > td + td { margin-top: 20px; }
  .faq-form-layout form table, .faq-form-layout form tbody,
  .faq-form-layout form tr, .faq-form-layout form td { display: block; width: 100%; }
  body input[type="text"], body input[type="password"], body input[type="email"], body textarea {
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100%;
    min-height: 44px;
    padding: 10px 12px;
    margin: 4px 0 10px;
    font-size: 16px;
    line-height: 1.4;
    border-radius: 6px;
  }
  body textarea { min-height: 120px; resize: vertical; }
  body input[type="button"], body input[type="submit"], body button {
    min-height: 44px;
    height: auto;
    max-width: 100%;
    padding: 10px 16px;
    font-size: 16px;
  }
  #site-sidebar a { display: inline-block; padding: 6px 0; }
  #site-sidebar form a { padding: 10px 0; }
  #site-shell .site-footer { padding: 2px 6px 16px !important; }
  .site-footer p, .site-footer a { font-size: 12px; line-height: 1.6; overflow-wrap: anywhere; }
}
