/* Content refresh: preserve the original navy, white, gray and yellow identity. */
.lsi-site { width: 725px; max-width: 100%; color: #202020; }
.lsi-header { display: flex; align-items: center; gap: 12px; margin-bottom: 5px; }
.lsi-header a:first-child { flex: 0 0 100px; }
.lsi-header a:last-child { min-width: 0; }
.lsi-header img { display: block; max-width: 100%; height: auto; border: 0; }
.lsi-space-banner { display: flex; flex-direction: column; justify-content: center; box-sizing: border-box; width: 600px; max-width: 100%; height: 90px; padding: 8px 14px 8px 120px; background-color: #070c17; background-image: linear-gradient(90deg, transparent 0, rgba(7,12,23,.12) 100px, #070c17 320px), url('../../images/rs-puppis-hubble.webp'); background-size: 100% 100%, 480px auto; background-position: center, -160px center; background-repeat: no-repeat; color: #fff; text-align: left; text-shadow: 0 2px 4px #000; font-style: normal; }
.lsi-space-banner .lsi-brand-name { font: 34px/1.15 Georgia, 'Times New Roman', serif; white-space: nowrap; color: #fff; }
.lsi-space-banner .lsi-brand-tagline { font: italic 21px/1.3 Georgia, 'Times New Roman', serif; color: #fff; }
.lsi-header > a:last-child { text-decoration: none; }
.lsi-image-credit { font: 11px/1.5 Arial, sans-serif; color: #555; }
@media (max-width: 600px) {
  .lsi-header .lsi-space-banner { padding-left: 18%; height: 90px; }
  .lsi-header .lsi-brand-name { font-size: clamp(18px, 4.8vw, 30px); }
  .lsi-header .lsi-brand-tagline { font-size: clamp(12px, 3vw, 18px); }
}
.lsi-nav { display: flex; flex-wrap: wrap; gap: 5px; padding: 4px 0; font: 13px Arial, sans-serif; }
.lsi-nav a { display: inline-block; min-width: 90px; box-sizing: border-box; padding: 6px 12px; text-align: center; color: white; background: linear-gradient(#294a7b, #102c53); border: 1px solid #7891b2; text-decoration: none; }
.lsi-nav a:hover, .lsi-nav a[aria-current="page"] { background: #000080; text-decoration: underline; }
.lsi-nav a:focus-visible, .lsi-site a:focus-visible { outline: 3px solid #b16e00; outline-offset: 3px; }
.lsi-main { padding: 8px 4px 0; font: 17px/1.5 "Times New Roman", serif; }
.lsi-main h1 { font: bold 27px/1.2 "Times New Roman", serif; color: #000080; margin: 17px 0; }
.lsi-main h2 { font: bold 21px/1.25 "Times New Roman", serif; color: #000080; margin: 0 0 10px; }
.lsi-main p { margin: 0 0 14px; }
.lsi-main section { margin: 0 0 22px; }
.lsi-main a { color: #000080; }
.lsi-lead { font-size: 19px; }
.lsi-columns { display: grid; grid-template-columns: 2fr 1fr; gap: 16px; margin-bottom: 20px; align-items: start; }
.lsi-columns section { margin-bottom: 0; }
.lsi-columns.lsi-methods { grid-template-columns: 1fr 1.8fr; }
.lsi-panel { padding: 14px; }
.lsi-panel p:last-child { margin-bottom: 0; }
.lsi-gray { background: #d0d0d0; }
.lsi-yellow { background: #ffffcc; }
.lsi-main .lsi-action { display: inline-block; background: #15345c; color: white; padding: 8px 13px; font: 14px/1.4 Arial, sans-serif; }
.lsi-photo { float: right; margin: 0 0 8px 14px; max-width: 48%; height: auto; }
.lsi-contact { border-top: 1px solid #bcc4ce; padding-top: 18px; }
.lsi-links { padding-left: 24px; }
.lsi-links li { margin-bottom: 5px; }
.lsi-phone { font-size: 25px; }
.lsi-footer { width: 725px; max-width: 100%; margin-top: 24px; padding-top: 12px; border-top: 1px solid #bcc4ce; font: 13px/1.5 Arial, sans-serif; color: #333; }
.lsi-footer .lsi-nav a { color: #000080; background: none; border: 0; padding: 0; min-width: 0; text-decoration: underline; }
.lsi-footer .lsi-nav { gap: 15px; }
.lsi-footer a { color: #000080; }
.lsi-footer p { margin: 8px 0; }
.lsi-small { font: 12px/1.5 Arial, sans-serif; }
.lsi-notice { box-sizing: border-box; max-width: 725px; padding: 10px 12px; margin: 12px 0; background: #ffffcc; border-left: 3px solid #000080; color: #333; font: 13px/1.5 Arial, sans-serif; }
.lsi-notice a { color: #000080; }
.lsi-main input, .lsi-main button { font: 16px Arial, sans-serif; padding: 7px; max-width: 100%; box-sizing: border-box; }
@media (max-width: 600px) {
  .lsi-header { gap: 8px; }
  .lsi-header a:first-child { flex-basis: 70px; }
  .lsi-nav a { min-width: 88px; flex: 1 0 25%; }
  .lsi-columns, .lsi-columns.lsi-methods { grid-template-columns: 1fr; }
  .lsi-main h1 { font-size: 25px; }
  .lsi-footer .lsi-nav a { flex: 0 0 auto; }
}

/* Email inquiry page, styled to match the existing contact section. */
.lsi-inquiry-form { max-width: 580px; }
.lsi-inquiry-form fieldset { border: 0; margin: 0; padding: 0; }
.lsi-inquiry-form label { display: block; font-weight: bold; margin-bottom: 4px; }
.lsi-inquiry-form input, .lsi-inquiry-form select, .lsi-inquiry-form textarea { width: 100%; box-sizing: border-box; padding: 9px; border: 1px solid #76879c; background: #fff; color: #202020; font: 16px/1.4 Arial, sans-serif; }
.lsi-inquiry-form textarea { min-height: 150px; resize: vertical; }
.lsi-inquiry-form button { background: #15345c; color: #fff; border: 1px solid #7891b2; padding: 10px 16px; }
.lsi-inquiry-form button:disabled { background: #626c79; cursor: not-allowed; }
