/* ===========================================================================
 * SDO inner pages — articles, article, about, contact (pg-*)
 *
 * Loaded by intro/layouts/page.html after site-tpl.css and home.css, and
 * built on the same tokens and pieces as the homepage (hm-wrap, hm-btn,
 * hm-eyebrow, hm-lead, hm-field, the reveal motion), so the pages read as
 * one site. Light and dark come from the tokens.
 * ======================================================================== */

body.sdo-inner { background: var(--surface-0); }
[data-theme="light"] body.sdo-inner { background: #F6F9FC; }

body.sdo-inner .pg-h1 {
  margin: 0 0 clamp(10px, 2svh, 20px);
  font-size: clamp(30px, 1.6vw + 2.8svh, 58px);
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: -.015em;
  color: var(--text-strong);
  text-wrap: balance;
}
body.sdo-inner .pg-h2 {
  margin: 0 0 clamp(18px, 3svh, 30px);
  font-size: clamp(22px, .8vw + 1.8svh, 32px);
  font-weight: 800;
  color: var(--text-strong);
}
body.sdo-inner .pg-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 14px;
  margin: 0;
  font-size: 13px;
  color: var(--text-muted);
}
body.sdo-inner .pg-meta > span + span::before {
  content: "";
  display: inline-block;
  inline-size: 4px;
  block-size: 4px;
  margin-inline-end: 14px;
  border-radius: 50%;
  background: currentColor;
  opacity: .5;
  vertical-align: middle;
}
body.sdo-inner .pg-meta__cat { font-weight: 700; color: var(--brand-text); }
body.sdo-inner .pg-more {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 14.5px;
  font-weight: 700;
  color: var(--brand-text);
  text-decoration: none;
}
body.sdo-inner .pg-more i { transition: translate .25s var(--ease); }
body.sdo-inner .pg-more:hover i { translate: -4px 0; }
body.sdo-inner .pg-ph {
  display: grid;
  place-items: center;
  inline-size: 100%;
  block-size: 100%;
  background: linear-gradient(150deg, color-mix(in oklab, var(--cyan) 22%, var(--surface-1)), var(--surface-1));
  color: color-mix(in oklab, var(--cyan) 60%, transparent);
  font-size: 40px;
}
body.sdo-inner a:focus-visible,
body.sdo-inner button:focus-visible { outline: 2px solid var(--brand-line); outline-offset: 3px; }

/* ═══════════════════════════════════════════════════════════════════════════
   ARTICLES
   ═══════════════════════════════════════════════════════════════════════════ */

/* First screen: masthead beside the newest article. */
body.sdo-inner .pg-blog-top {
  position: relative;
  padding-block: clamp(28px, 6svh, 72px) clamp(28px, 5svh, 56px);
}
body.sdo-inner .pg-blog-top__grid {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 7fr);
  align-items: center;
  gap: clamp(24px, 4vw, 64px);
}
body.sdo-inner .pg-blog-top__grid.is-solo { grid-template-columns: minmax(0, 1fr); }
body.sdo-inner .pg-blog-top__grid.is-solo .hm-lead { max-inline-size: 60ch; }

body.sdo-inner .pg-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-block-start: clamp(18px, 3.6svh, 34px);
}
body.sdo-inner .pg-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-block-size: 38px;
  padding-inline: 14px;
  border: 1px solid var(--hm-line);
  border-radius: 999px;
  background: var(--surface-1);
  color: var(--text-strong);
  font-size: 13.5px;
  font-weight: 600;
  text-decoration: none;
  transition: border-color .2s, background-color .2s, color .2s;
}
[data-theme="light"] body.sdo-inner .pg-chip { background: #fff; }
body.sdo-inner .pg-chip:hover { border-color: var(--brand-line); }
body.sdo-inner .pg-chip.is-on { border-color: transparent; background: var(--cyan); color: var(--brand-fill-ink); }
body.sdo-inner .pg-chip__n {
  min-inline-size: 22px;
  padding: 1px 6px;
  border-radius: 999px;
  background: color-mix(in oklab, var(--text-strong) 9%, transparent);
  font-size: 11.5px;
  text-align: center;
}
body.sdo-inner .pg-chip.is-on .pg-chip__n { background: rgb(4 18 28 / .14); }

/* The lead article: image with the text laid over its lower part. */
body.sdo-inner .pg-lead {
  position: relative;
  border-radius: calc(var(--hm-radius) + 4px);
  overflow: hidden;
  background: #04121C;
  box-shadow: 0 2.4rem 4rem -2.4rem rgb(0 0 0 / .55);
  isolation: isolate;
}
body.sdo-inner .pg-lead__media { display: block; aspect-ratio: 16 / 9; }
body.sdo-inner .pg-lead__media img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  transition: scale .9s var(--ease);
}
body.sdo-inner .pg-lead:hover .pg-lead__media img { scale: 1.04; }
body.sdo-inner .pg-lead__badge {
  position: absolute;
  inset-block-start: 18px;
  inset-inline-start: 18px;
  padding: 6px 12px;
  border-radius: 999px;
  background: var(--cyan);
  color: var(--brand-fill-ink);
  font-size: 12.5px;
  font-weight: 800;
}
body.sdo-inner .pg-lead__body {
  position: absolute;
  inset-inline: 0;
  inset-block-end: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: clamp(60px, 10svh, 120px) clamp(18px, 2.4vw, 36px) clamp(18px, 3svh, 32px);
  background: linear-gradient(to top, rgb(2 10 18 / .96) 20%, rgb(2 10 18 / .7) 62%, transparent);
  color: #F3F8FD;
  pointer-events: none;
}
body.sdo-inner .pg-lead__body a { pointer-events: auto; }
body.sdo-inner .pg-lead .pg-meta { color: rgb(243 248 253 / .75); }
body.sdo-inner .pg-lead .pg-meta__cat { color: #7DD8F5; }
body.sdo-inner .pg-lead__title {
  margin: 0;
  font-size: clamp(20px, .9vw + 1.8svh, 32px);
  font-weight: 800;
  line-height: 1.5;
}
body.sdo-inner .pg-lead__title a { color: #fff; text-decoration: none; }
/* The whole card is the link target for pointers. */
body.sdo-inner .pg-lead__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
body.sdo-inner .pg-lead__excerpt {
  max-inline-size: 62ch;
  margin: 0;
  font-size: 15px;
  line-height: 1.85;
  color: rgb(243 248 253 / .78);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
body.sdo-inner .pg-lead .pg-more { color: #7DD8F5; }
body.sdo-inner .pg-lead:hover .pg-more i { translate: -4px 0; }

/* Grid of cards. */
body.sdo-inner .pg-blog-list { padding-block: clamp(24px, 5svh, 56px) clamp(40px, 8svh, 96px); }
body.sdo-inner .pg-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 30px);
}
body.sdo-inner .pg-card {
  position: relative;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--hm-line);
  border-radius: var(--hm-radius);
  background: var(--surface-1);
  overflow: hidden;
  transition: border-color .25s, translate .35s var(--ease), box-shadow .35s var(--ease);
}
[data-theme="light"] body.sdo-inner .pg-card { background: #fff; }
body.sdo-inner .pg-card:hover {
  border-color: color-mix(in oklab, var(--cyan) 45%, var(--hm-line));
  translate: 0 -4px;
  box-shadow: 0 1.6rem 3rem -2rem rgb(0 0 0 / .55);
}
[data-theme="light"] body.sdo-inner .pg-card:hover { box-shadow: 0 1.6rem 3rem -2rem rgb(10 27 48 / .3); }
body.sdo-inner .pg-card__media {
  position: relative;
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
}
body.sdo-inner .pg-card__media img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  transition: scale .8s var(--ease);
}
body.sdo-inner .pg-card:hover .pg-card__media img { scale: 1.06; }
body.sdo-inner .pg-card__cat {
  position: absolute;
  inset-block-start: 12px;
  inset-inline-start: 12px;
  padding: 5px 11px;
  border-radius: 999px;
  background: rgb(4 12 22 / .72);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
}
body.sdo-inner .pg-card__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 18px 20px 20px;
}
body.sdo-inner .pg-card__title {
  margin: 0;
  font-size: clamp(16px, .3vw + 1.4svh, 18.5px);
  font-weight: 800;
  line-height: 1.6;
}
body.sdo-inner .pg-card__title a { color: var(--text-strong); text-decoration: none; transition: color .2s; }
body.sdo-inner .pg-card__title a::after { content: ""; position: absolute; inset: 0; }
body.sdo-inner .pg-card:hover .pg-card__title a { color: var(--brand-text); }
body.sdo-inner .pg-card__excerpt {
  margin: 0;
  font-size: 14px;
  line-height: 1.8;
  color: var(--text-muted);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
body.sdo-inner .pg-card .pg-meta { margin-block-start: auto; padding-block-start: 6px; }
body.sdo-inner .pg-card__go {
  margin-inline-start: auto;
  color: var(--brand-text);
  opacity: 0;
  translate: 6px 0;
  transition: opacity .25s, translate .3s var(--ease);
}
body.sdo-inner .pg-card:hover .pg-card__go { opacity: 1; translate: 0 0; }

body.sdo-inner .pg-pager {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-block-start: clamp(28px, 5svh, 48px);
}
body.sdo-inner .pg-pager__btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-block-size: 44px;
  padding-inline: 18px;
  border: 1px solid var(--hm-line);
  border-radius: 999px;
  color: var(--text-strong);
  font-weight: 700;
  text-decoration: none;
}
body.sdo-inner .pg-pager__btn:hover { border-color: var(--brand-line); }
body.sdo-inner .pg-pager__status { font-size: 14px; color: var(--text-muted); }

body.sdo-inner .pg-empty { padding-block: clamp(20px, 4svh, 48px) clamp(48px, 10svh, 120px); }
body.sdo-inner .pg-empty__box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  max-inline-size: 640px;
  margin-inline: auto;
  padding: clamp(32px, 6svh, 64px) 24px;
  border: 1px dashed var(--hm-line);
  border-radius: calc(var(--hm-radius) + 4px);
  text-align: center;
}
body.sdo-inner .pg-empty__icon {
  display: grid;
  place-items: center;
  inline-size: 64px;
  block-size: 64px;
  border-radius: 20px;
  background: color-mix(in oklab, var(--cyan) 14%, transparent);
  color: var(--brand-text);
  font-size: 24px;
}
body.sdo-inner .pg-empty__box h2 { margin: 6px 0 0; font-size: 22px; font-weight: 800; color: var(--text-strong); }
body.sdo-inner .pg-empty__box p { max-inline-size: 44ch; margin: 0; line-height: 1.9; color: var(--text-muted); }
body.sdo-inner .pg-empty__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-block-start: 8px; }

@media (max-width: 999.98px) {
  body.sdo-inner .pg-blog-top__grid { grid-template-columns: minmax(0, 1fr); }
  body.sdo-inner .pg-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 599.98px) {
  body.sdo-inner .pg-blog-top { padding-block-start: 20px; }
  body.sdo-inner .pg-chips { flex-wrap: nowrap; overflow-x: auto; margin-inline: calc(-1 * var(--hm-pad-x)); padding-inline: var(--hm-pad-x); scrollbar-width: none; }
  body.sdo-inner .pg-chips::-webkit-scrollbar { display: none; }
  body.sdo-inner .pg-chip { flex: none; }
  body.sdo-inner .pg-lead__media { aspect-ratio: 4 / 5; }
  body.sdo-inner .pg-lead__excerpt { -webkit-line-clamp: 3; font-size: 14px; }
  body.sdo-inner .pg-cards { grid-template-columns: minmax(0, 1fr); }
  /* Phones: compact rows, thumbnail beside the title. */
  body.sdo-inner .pg-blog-list .pg-card { flex-direction: row; align-items: stretch; }
  body.sdo-inner .pg-blog-list .pg-card__media { flex: 0 0 38%; aspect-ratio: auto; min-block-size: 112px; }
  body.sdo-inner .pg-blog-list .pg-card__cat,
  body.sdo-inner .pg-blog-list .pg-card__excerpt { display: none; }
  body.sdo-inner .pg-blog-list .pg-card__body { padding: 12px 14px; gap: 6px; }
  body.sdo-inner .pg-blog-list .pg-card__title { font-size: 15px; }
  body.sdo-inner .pg-card .pg-meta { font-size: 12px; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   ARTICLE
   ═══════════════════════════════════════════════════════════════════════════ */

body.sdo-inner .pg-progress {
  position: fixed;
  z-index: 60;
  inset-block-start: 0;
  inset-inline: 0;
  block-size: 3px;
  pointer-events: none;
}
body.sdo-inner .pg-progress span {
  display: block;
  block-size: 100%;
  background: var(--cyan);
  transform: scaleX(0);
  transform-origin: right;
  box-shadow: 0 0 12px color-mix(in oklab, var(--cyan) 60%, transparent);
}

body.sdo-inner .pg-read__narrow { max-inline-size: 880px; }
body.sdo-inner .pg-read__head { padding-block: clamp(24px, 6svh, 64px) clamp(20px, 4svh, 40px); }
body.sdo-inner .pg-crumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-block-end: clamp(14px, 3svh, 28px);
  font-size: 13.5px;
  color: var(--text-muted);
}
body.sdo-inner .pg-crumb a { color: inherit; text-decoration: none; }
body.sdo-inner .pg-crumb a:hover { color: var(--brand-text); }
body.sdo-inner .pg-crumb a:last-child { color: var(--brand-text); font-weight: 700; }
body.sdo-inner .pg-crumb i { font-size: 9px; opacity: .6; }
body.sdo-inner .pg-read__title {
  margin: 0 0 clamp(12px, 2.4svh, 22px);
  font-size: clamp(28px, 1.4vw + 2.6svh, 52px);
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: -.01em;
  color: var(--text-strong);
  text-wrap: balance;
}
body.sdo-inner .pg-read__standfirst {
  margin: 0;
  font-size: clamp(16px, .3vw + 1.5svh, 20px);
  line-height: 1.95;
  color: var(--text-muted);
}
body.sdo-inner .pg-read__byline {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-block-start: clamp(18px, 3.4svh, 32px);
  padding-block-start: clamp(14px, 2.4svh, 22px);
  border-block-start: 1px solid var(--hm-line);
}
body.sdo-inner .pg-read__brand {
  display: inline-grid;
  place-items: center;
  inline-size: 34px;
  block-size: 34px;
  border-radius: 10px;
  background: var(--cyan);
  color: var(--brand-fill-ink);
  font-family: var(--font-mono);
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .06em;
}
body.sdo-inner .pg-read__brand + span::before { display: none !important; }

body.sdo-inner .pg-share { display: inline-flex; flex-wrap: wrap; gap: 8px; }
body.sdo-inner .pg-share__btn {
  position: relative;
  display: grid;
  place-items: center;
  inline-size: 40px;
  block-size: 40px;
  padding: 0;
  border: 1px solid var(--hm-line);
  border-radius: 50%;
  background: var(--surface-1);
  color: var(--text-muted);
  font-size: 15px;
  text-decoration: none;
  cursor: pointer;
  transition: color .2s, border-color .2s, background-color .2s;
}
[data-theme="light"] body.sdo-inner .pg-share__btn { background: #fff; }
body.sdo-inner .pg-share__btn:hover { border-color: var(--brand-line); color: var(--brand-text); }
body.sdo-inner .pg-share__btn[hidden] { display: none; }
body.sdo-inner .pg-share__btn.is-done { border-color: transparent; background: var(--hm-green); color: #fff; }
body.sdo-inner .pg-share__done:empty { display: none; }
body.sdo-inner .pg-share__done {
  position: absolute;
  inset-block-end: calc(100% + 8px);
  padding: 4px 10px;
  border-radius: 8px;
  background: #0A1B30;
  color: #fff;
  font-size: 12px;
  white-space: nowrap;
}

body.sdo-inner .pg-read__cover {
  max-inline-size: 1200px;
  margin-block: 0 clamp(28px, 6svh, 64px);
  margin-inline: auto;
}
body.sdo-inner .pg-read__cover img {
  display: block;
  inline-size: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: calc(var(--hm-radius) + 6px);
  box-shadow: 0 3rem 5rem -3.5rem rgb(0 0 0 / .6);
}

body.sdo-inner .pg-read__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 17rem;
  gap: clamp(28px, 5vw, 80px);
  align-items: start;
  max-inline-size: 1200px;
}
body.sdo-inner .pg-read__aside {
  position: sticky;
  inset-block-start: 24px;
  display: grid;
  gap: 18px;
}
body.sdo-inner .pg-toc {
  padding-inline-start: 16px;
  border-inline-start: 1px solid var(--hm-line);
}
body.sdo-inner .pg-toc[hidden] { display: none; }
body.sdo-inner .pg-toc__title {
  margin: 0 0 12px;
  font-size: 12.5px;
  font-weight: 700;
  color: var(--text-label);
}
body.sdo-inner .pg-toc__list { display: grid; gap: 4px; margin: 0; padding: 0; list-style: none; }
body.sdo-inner .pg-toc__list a {
  position: relative;
  display: block;
  padding: 5px 0;
  font-size: 14px;
  line-height: 1.6;
  color: var(--text-muted);
  text-decoration: none;
  transition: color .2s;
}
body.sdo-inner .pg-toc__list .is-sub a { padding-inline-start: 14px; font-size: 13px; }
body.sdo-inner .pg-toc__list a:hover { color: var(--text-strong); }
body.sdo-inner .pg-toc__list a.is-on { color: var(--brand-text); font-weight: 700; }
body.sdo-inner .pg-toc__list a.is-on::before {
  content: "";
  position: absolute;
  inset-block: 6px;
  inset-inline-start: -18px;
  inline-size: 3px;
  border-radius: 3px;
  background: var(--cyan);
}
body.sdo-inner .pg-aside-card {
  display: grid;
  gap: 8px;
  padding: 18px;
  border-radius: var(--hm-radius);
  background: linear-gradient(155deg, color-mix(in oklab, var(--cyan) 20%, var(--surface-1)), var(--surface-1) 75%);
  border: 1px solid var(--hm-line);
}
[data-theme="light"] body.sdo-inner .pg-aside-card { background: linear-gradient(155deg, #D9F2FC, #fff 75%); }
body.sdo-inner .pg-aside-card b { font-size: 15.5px; font-weight: 800; color: var(--text-strong); }
body.sdo-inner .pg-aside-card p { margin: 0 0 6px; font-size: 13.5px; line-height: 1.8; color: var(--text-muted); }
body.sdo-inner .pg-aside-card .hm-btn { min-block-size: 42px; font-size: 14px; }

/* Long-form body: CKEditor HTML, styled by element. */
body.sdo-inner .pg-prose {
  max-inline-size: 70ch;
  font-size: clamp(16px, .15vw + 1.6svh, 18px);
  line-height: 2.05;
  color: color-mix(in oklab, var(--text-strong) 88%, transparent);
  overflow-wrap: break-word;
}
body.sdo-inner .pg-prose > :first-child { margin-block-start: 0; }
body.sdo-inner .pg-prose p { margin: 0 0 1.3em; }
body.sdo-inner .pg-prose h2,
body.sdo-inner .pg-prose h3,
body.sdo-inner .pg-prose h4 {
  scroll-margin-block-start: 24px;
  color: var(--text-strong);
  line-height: 1.55;
}
body.sdo-inner .pg-prose h2 { margin: 2em 0 .7em; font-size: 1.55em; font-weight: 900; }
body.sdo-inner .pg-prose h3 { margin: 1.7em 0 .6em; font-size: 1.25em; font-weight: 800; }
body.sdo-inner .pg-prose h4 { margin: 1.5em 0 .5em; font-size: 1.08em; font-weight: 800; }
body.sdo-inner .pg-prose a {
  color: var(--brand-text);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .3em;
}
body.sdo-inner .pg-prose strong, body.sdo-inner .pg-prose b { color: var(--text-strong); font-weight: 800; }
body.sdo-inner .pg-prose ul,
body.sdo-inner .pg-prose ol { margin: 0 0 1.4em; padding-inline-start: 1.4em; }
body.sdo-inner .pg-prose ul { list-style: disc; }
body.sdo-inner .pg-prose ol { list-style: persian; }
body.sdo-inner .pg-prose li { display: list-item; margin-block-end: .45em; padding-inline-start: .3em; }
body.sdo-inner .pg-prose ul li::marker { color: var(--cyan); }
body.sdo-inner .pg-prose ol li::marker { color: var(--brand-text); font-weight: 800; }
body.sdo-inner .pg-prose blockquote {
  position: relative;
  margin: 2em 0;
  padding: 1.2em 1.4em 1.2em 1.2em;
  border-inline-start: 4px solid var(--cyan);
  border-radius: 0 14px 14px 0;
  background: color-mix(in oklab, var(--cyan) 8%, transparent);
  font-size: 1.12em;
  font-weight: 700;
  color: var(--text-strong);
}
body.sdo-inner .pg-prose blockquote p:last-child { margin: 0; }
body.sdo-inner .pg-prose img,
body.sdo-inner .pg-prose figure img { max-inline-size: 100%; block-size: auto; border-radius: 14px; }
body.sdo-inner .pg-prose figure { margin: 2em 0; }
body.sdo-inner .pg-prose figcaption { margin-block-start: .6em; font-size: .85em; color: var(--text-muted); text-align: center; }
body.sdo-inner .pg-prose hr { margin: 2.4em 0; border: 0; border-block-start: 1px solid var(--hm-line); }
body.sdo-inner .pg-prose code {
  padding: .1em .4em;
  border-radius: 6px;
  background: color-mix(in oklab, var(--text-strong) 8%, transparent);
  font-family: var(--font-mono);
  font-size: .88em;
}
body.sdo-inner .pg-prose pre {
  margin: 1.6em 0;
  padding: 1em 1.2em;
  border-radius: 14px;
  background: #04121C;
  color: #E6EEF6;
  overflow-x: auto;
  direction: ltr;
  text-align: left;
}
body.sdo-inner .pg-prose pre code { padding: 0; background: none; }
body.sdo-inner .pg-prose table {
  display: block;
  inline-size: max-content;
  max-inline-size: 100%;
  margin: 1.8em 0;
  overflow-x: auto;
  border-collapse: collapse;
  border: 1px solid var(--hm-line);
  border-radius: 14px;
  font-size: .92em;
}
body.sdo-inner .pg-prose th,
body.sdo-inner .pg-prose td { padding: .7em 1.1em; border-block-end: 1px solid var(--hm-line); text-align: start; }
body.sdo-inner .pg-prose th { background: color-mix(in oklab, var(--text-strong) 5%, transparent); color: var(--text-strong); font-weight: 800; }
body.sdo-inner .pg-prose tr:last-child td { border-block-end: 0; }

body.sdo-inner .pg-read__after { padding-block: clamp(24px, 5svh, 48px) 0; }
body.sdo-inner .pg-tags { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; }
body.sdo-inner .pg-tags__label { display: inline-flex; align-items: center; gap: 6px; margin: 0; font-size: 13px; font-weight: 700; color: var(--text-label); }
body.sdo-inner .pg-tags ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
body.sdo-inner .pg-tags li {
  padding: 5px 12px;
  border-radius: 999px;
  background: color-mix(in oklab, var(--text-strong) 7%, transparent);
  font-size: 13px;
  color: var(--text-strong);
}
body.sdo-inner .pg-read__share-end {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-block-start: clamp(20px, 4svh, 36px);
  padding: 18px 20px;
  border: 1px solid var(--hm-line);
  border-radius: var(--hm-radius);
  background: var(--surface-1);
  font-weight: 700;
  color: var(--text-strong);
}
[data-theme="light"] body.sdo-inner .pg-read__share-end { background: #fff; }
body.sdo-inner .pg-sibling {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-block-start: 16px;
}
body.sdo-inner .pg-sibling__link {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 16px 18px;
  border: 1px solid var(--hm-line);
  border-radius: var(--hm-radius);
  text-decoration: none;
  transition: border-color .2s;
}
body.sdo-inner .pg-sibling__link:hover { border-color: var(--brand-line); }
body.sdo-inner .pg-sibling__link--end { grid-column: 2; text-align: end; }
body.sdo-inner .pg-sibling__link small { display: inline-flex; align-items: center; gap: 8px; font-size: 12.5px; color: var(--text-muted); }
body.sdo-inner .pg-sibling__link--end small { justify-content: flex-end; }
body.sdo-inner .pg-sibling__link b { font-size: 15px; line-height: 1.7; color: var(--text-strong); }

body.sdo-inner .pg-related { padding-block: clamp(48px, 10svh, 112px) 0; }
body.sdo-inner .pg-related__head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }

@media (max-width: 999.98px) {
  body.sdo-inner .pg-read__layout { grid-template-columns: minmax(0, 1fr); }
  body.sdo-inner .pg-read__aside { position: static; grid-row: 1; }
  body.sdo-inner .pg-aside-card { display: none; }
  body.sdo-inner .pg-toc {
    padding: 14px 18px;
    border: 1px solid var(--hm-line);
    border-radius: var(--hm-radius);
    background: var(--surface-1);
  }
  [data-theme="light"] body.sdo-inner .pg-toc { background: #fff; }
  body.sdo-inner .pg-toc__list a.is-on::before { display: none; }
  body.sdo-inner .pg-prose { max-inline-size: none; }
}
@media (max-width: 599.98px) {
  body.sdo-inner .pg-read__byline { flex-direction: column; align-items: flex-start; }
  body.sdo-inner .pg-read__cover { padding-inline: 0; }
  body.sdo-inner .pg-read__cover img { border-radius: 0; }
  body.sdo-inner .pg-sibling { grid-template-columns: 1fr; }
  body.sdo-inner .pg-sibling__link--end { grid-column: auto; }
  body.sdo-inner .pg-read__share-end { flex-direction: column; align-items: flex-start; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   CLOSING BAND (articles, article)
   ═══════════════════════════════════════════════════════════════════════════ */
body.sdo-inner .pg-cta { padding-block: clamp(40px, 8svh, 96px) clamp(56px, 10svh, 120px); }
body.sdo-inner .pg-cta__box {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: clamp(28px, 5svh, 52px) clamp(22px, 3.4vw, 56px);
  border-radius: calc(var(--hm-radius) + 6px);
  background: #0A88B8;
  background: linear-gradient(120deg, #0B7FAE, #13A6D8 60%, #2BBBE9);
  color: #fff;
  overflow: hidden;
  isolation: isolate;
}
body.sdo-inner .pg-cta__box::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background-image: radial-gradient(rgb(255 255 255 / .22) 1px, transparent 1.3px);
  background-size: 20px 20px;
  mask-image: linear-gradient(to left, #000, transparent 70%);
  -webkit-mask-image: linear-gradient(to left, #000, transparent 70%);
}
body.sdo-inner .pg-cta__copy h2 { margin: 0 0 8px; font-size: clamp(22px, .8vw + 1.8svh, 32px); font-weight: 900; }
body.sdo-inner .pg-cta__copy p { margin: 0; font-size: 15.5px; line-height: 1.85; color: rgb(255 255 255 / .86); }
body.sdo-inner .pg-cta__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 22px; }
body.sdo-inner .pg-cta__btn { background: #fff; color: #06425C; }
body.sdo-inner .pg-cta__btn:hover { background: #E8F7FD; }
body.sdo-inner .pg-cta__btn:hover i { translate: -4px 0; }
body.sdo-inner .pg-cta__tel { display: inline-flex; align-items: center; gap: 10px; color: #fff; font-weight: 700; text-decoration: none; }

/* ═══════════════════════════════════════════════════════════════════════════
   ABOUT — paged like the homepage
   ═══════════════════════════════════════════════════════════════════════════ */
body.sdo-inner .pg-about-hero {
  block-size: calc(100vh - var(--hdr, 128px));
  block-size: calc(100svh - var(--hdr, 128px));
  padding-block: clamp(16px, 4svh, 56px);
}
body.sdo-inner .pg-about-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
  grid-template-rows: minmax(0, 1fr);
  align-items: center;
  gap: clamp(24px, 4vw, 72px);
}
body.sdo-inner .pg-about-hero .pg-h1 { font-size: clamp(28px, 1.4vw + 2.6svh, 50px); }

body.sdo-inner .pg-film {
  position: relative;
  margin: 0;
  align-self: center;
  max-block-size: 100%;
  aspect-ratio: 16 / 9;
  border-radius: calc(var(--hm-radius) + 6px);
  overflow: hidden;
  background: #04121C;
  box-shadow: 0 3rem 6rem -3rem rgb(0 0 0 / .65), 0 0 0 1px var(--hm-line);
}
body.sdo-inner .pg-film__video { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; }
body.sdo-inner .pg-film__play {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: flex-end;
  gap: 14px;
  padding: clamp(14px, 2.4vw, 28px);
  border: 0;
  background: linear-gradient(to top, rgb(2 10 18 / .78), transparent 55%);
  color: #fff;
  font: inherit;
  text-align: start;
  cursor: pointer;
}
body.sdo-inner .pg-film__disc {
  display: grid;
  place-items: center;
  inline-size: clamp(52px, 5vw, 72px);
  block-size: clamp(52px, 5vw, 72px);
  flex: none;
  border-radius: 50%;
  background: var(--cyan);
  color: var(--brand-fill-ink);
  font-size: clamp(16px, 1.4vw, 22px);
  box-shadow: 0 0 0 0 rgb(43 187 233 / .5);
  animation: pg-pulse 2.4s infinite;
  transition: scale .3s var(--ease);
}
body.sdo-inner .pg-film__disc i { translate: -2px 0; }
body.sdo-inner .pg-film__play:hover .pg-film__disc { scale: 1.08; }
body.sdo-inner .pg-film__label { display: flex; flex-direction: column; gap: 2px; padding-block-end: 4px; }
body.sdo-inner .pg-film__label b { font-size: clamp(15px, 1.2vw, 19px); font-weight: 800; }
body.sdo-inner .pg-film__label small { font-size: 13px; color: rgb(255 255 255 / .75); }
body.sdo-inner .pg-film.is-playing .pg-film__play { display: none; }
@keyframes pg-pulse {
  0% { box-shadow: 0 0 0 0 rgb(43 187 233 / .5); }
  70%, 100% { box-shadow: 0 0 0 18px rgb(43 187 233 / 0); }
}

body.sdo-inner .pg-belief__wrap {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
  align-items: center;
  gap: clamp(24px, 4vw, 72px);
}
body.sdo-inner .pg-belief__quote {
  margin: 0 0 clamp(14px, 3svh, 28px);
  font-size: clamp(28px, 1.6vw + 3svh, 58px);
  font-weight: 900;
  line-height: 1.4;
  color: var(--text-strong);
  text-wrap: balance;
}
body.sdo-inner .pg-belief__quote mark {
  background: linear-gradient(transparent 62%, color-mix(in oklab, var(--cyan) 26%, transparent) 62% 92%, transparent 92%);
  color: inherit;
}
body.sdo-inner .pg-principles {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(10px, 1.4vw, 20px);
  margin: 0;
  padding: 0;
  list-style: none;
}
body.sdo-inner .pg-principles li {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: clamp(16px, 3svh, 30px) clamp(16px, 1.6vw, 26px);
  border: 1px solid var(--hm-line);
  border-radius: var(--hm-radius);
  background: var(--surface-0);
  overflow: hidden;
  transition: border-color .25s, translate .35s var(--ease);
}
[data-theme="light"] body.sdo-inner .pg-principles li { background: #fff; }
body.sdo-inner .pg-principles li:hover { border-color: color-mix(in oklab, var(--cyan) 45%, var(--hm-line)); translate: 0 -3px; }
body.sdo-inner .pg-principles__n {
  position: absolute;
  inset-block-start: 10px;
  inset-inline-end: 16px;
  font-family: var(--font-mono);
  font-size: clamp(30px, 5svh, 48px);
  font-weight: 800;
  color: color-mix(in oklab, var(--text-strong) 7%, transparent);
}
body.sdo-inner .pg-principles i {
  display: grid;
  place-items: center;
  inline-size: clamp(38px, 5svh, 46px);
  block-size: clamp(38px, 5svh, 46px);
  margin-block-end: 4px;
  border-radius: 12px;
  background: color-mix(in oklab, var(--cyan) 14%, transparent);
  color: var(--brand-text);
  font-size: 17px;
}
body.sdo-inner .pg-principles h3 { margin: 0; font-size: clamp(15.5px, .3vw + 1.5svh, 19px); font-weight: 800; color: var(--text-strong); }
body.sdo-inner .pg-principles p { margin: 0; font-size: clamp(13px, .1vw + 1.3svh, 15px); line-height: 1.8; color: var(--text-muted); }

body.sdo-inner .pg-glance__grid {
  display: grid;
  grid-template-columns: minmax(0, 6fr) minmax(0, 5fr);
  align-items: center;
  gap: clamp(24px, 4vw, 72px);
}
body.sdo-inner .pg-figures {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: clamp(22px, 4.4svh, 48px) 0 0;
  border-block: 1px solid var(--hm-line);
}
body.sdo-inner .pg-figures > div {
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  gap: 4px;
  padding: clamp(14px, 2.6svh, 26px) 12px;
  border-inline-start: 1px solid var(--hm-line);
}
body.sdo-inner .pg-figures > div:first-child { border-inline-start: 0; padding-inline-start: 0; }
body.sdo-inner .pg-figures dd { margin: 0; font-size: clamp(30px, 1.2vw + 3.4svh, 56px); font-weight: 900; line-height: 1.1; color: var(--text-strong); }
body.sdo-inner .pg-figures dt { font-size: clamp(12.5px, 1.3svh, 14px); color: var(--text-muted); }

body.sdo-inner .pg-family {
  padding: clamp(20px, 3.6svh, 36px) clamp(18px, 2vw, 32px);
  border: 1px solid var(--hm-line);
  border-radius: calc(var(--hm-radius) + 4px);
  background: var(--surface-1);
}
[data-theme="light"] body.sdo-inner .pg-family { background: #fff; }
body.sdo-inner .pg-family__head { display: grid; gap: 4px; margin: 0 0 clamp(14px, 2.6svh, 24px); font-size: 14px; line-height: 1.8; color: var(--text-muted); }
body.sdo-inner .pg-family__head b { font-size: clamp(17px, .4vw + 1.6svh, 21px); font-weight: 800; color: var(--text-strong); }
body.sdo-inner .pg-family__list { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0; padding: 0; list-style: none; }
body.sdo-inner .pg-family__list li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px;
  border-radius: 14px;
  background: color-mix(in oklab, var(--text-strong) 4%, transparent);
  font-size: 14.5px;
  color: var(--text-strong);
}
body.sdo-inner .pg-family__logo {
  display: grid;
  place-items: center;
  inline-size: clamp(42px, 6svh, 56px);
  block-size: clamp(42px, 6svh, 56px);
  flex: none;
  padding: 6px;
  border-radius: 12px;
  background: #fff;
}
body.sdo-inner .pg-family__logo img { inline-size: 100%; block-size: 100%; object-fit: contain; }

body.sdo-inner .pg-about-cta__wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
body.sdo-inner .pg-about-cta__wrap .hm-eyebrow::before { display: none; }
body.sdo-inner .pg-about-cta__title {
  max-inline-size: 24ch;
  margin: 0 0 clamp(12px, 2.4svh, 22px);
  font-size: clamp(30px, 2vw + 3svh, 64px);
  font-weight: 900;
  line-height: 1.35;
  color: var(--text-strong);
  text-wrap: balance;
}
body.sdo-inner .pg-about-cta__wrap .hm-lead { margin-inline: auto; }
body.sdo-inner .pg-about-cta__routes {
  display: grid;
  grid-template-columns: 1.3fr 1fr 1fr;
  gap: 12px;
  inline-size: min(100%, 900px);
  margin-block-start: clamp(24px, 5svh, 52px);
}
body.sdo-inner .pg-route {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: clamp(14px, 2.4svh, 22px) 18px;
  border: 1px solid var(--hm-line);
  border-radius: var(--hm-radius);
  background: var(--surface-0);
  color: var(--text-strong);
  text-align: start;
  text-decoration: none;
  transition: border-color .2s, translate .3s var(--ease);
}
[data-theme="light"] body.sdo-inner .pg-route { background: #fff; }
body.sdo-inner .pg-route:hover { border-color: var(--brand-line); translate: 0 -3px; }
body.sdo-inner .pg-route i {
  display: grid;
  place-items: center;
  inline-size: 44px;
  block-size: 44px;
  flex: none;
  border-radius: 12px;
  background: color-mix(in oklab, var(--cyan) 14%, transparent);
  color: var(--brand-text);
}
body.sdo-inner .pg-route span { display: flex; flex-direction: column; gap: 2px; min-inline-size: 0; }
body.sdo-inner .pg-route b { font-size: 15px; font-weight: 800; }
body.sdo-inner .pg-route small { font-size: 12.5px; color: var(--text-muted); }
body.sdo-inner .pg-route--main { border-color: transparent; background: var(--cyan); color: var(--brand-fill-ink); }
body.sdo-inner .pg-route--main i { background: rgb(4 18 28 / .14); color: inherit; }
body.sdo-inner .pg-route--main small { color: rgb(4 18 28 / .7); }

@media (max-width: 899.98px) {
  body.sdo-inner .pg-about-hero__grid,
  body.sdo-inner .pg-belief__wrap,
  body.sdo-inner .pg-glance__grid {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto minmax(0, 1fr);
    align-items: stretch;
    gap: clamp(14px, 2.6svh, 26px);
  }
  body.sdo-inner .pg-belief__wrap,
  body.sdo-inner .pg-glance__grid { grid-template-rows: auto auto; align-content: center; }
  body.sdo-inner .pg-film { align-self: start; inline-size: 100%; max-block-size: none; }
  body.sdo-inner .pg-about-hero .hm-hero__actions { margin-block-end: 0; }
  body.sdo-inner .pg-principles li { padding: 14px; gap: 4px; }
  body.sdo-inner .pg-principles i { display: none; }
  body.sdo-inner .pg-figures { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.sdo-inner .pg-figures > div:nth-child(3) { border-inline-start: 0; padding-inline-start: 0; }
  body.sdo-inner .pg-figures > div:nth-child(n+3) { border-block-start: 1px solid var(--hm-line); }
  body.sdo-inner .pg-about-cta__routes { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 899.98px) and (max-height: 760px) {
  body.sdo-inner .pg-belief__wrap .hm-lead,
  body.sdo-inner .pg-glance__copy .hm-lead,
  body.sdo-inner .pg-principles p { display: none; }
  body.sdo-inner .pg-family__head span { display: none; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   CONTACT — one screen: ways to reach us | the form
   ═══════════════════════════════════════════════════════════════════════════ */
body.sdo-inner .pg-contact {
  position: relative;
  min-block-size: calc(100vh - var(--hdr, 128px));
  min-block-size: calc(100svh - var(--hdr, 128px));
  display: flex;
  align-items: center;
  padding-block: clamp(20px, 4svh, 56px);
  isolation: isolate;
}
body.sdo-inner .pg-contact__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(24px, 4vw, 72px);
}
body.sdo-inner .pg-ways {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: clamp(20px, 4svh, 40px) 0 0;
  padding: 0;
  list-style: none;
}
body.sdo-inner .pg-ways__wide { grid-column: 1 / -1; }
body.sdo-inner .pg-way {
  display: flex;
  align-items: center;
  gap: 14px;
  block-size: 100%;
  padding: clamp(12px, 2svh, 18px) 16px;
  border: 1px solid var(--hm-line);
  border-radius: var(--hm-radius);
  background: var(--surface-1);
  color: var(--text-strong);
  text-decoration: none;
  transition: border-color .2s, translate .3s var(--ease);
}
[data-theme="light"] body.sdo-inner .pg-way { background: #fff; }
body.sdo-inner a.pg-way:hover { border-color: var(--brand-line); translate: 0 -2px; }
body.sdo-inner .pg-way i {
  display: grid;
  place-items: center;
  inline-size: 42px;
  block-size: 42px;
  flex: none;
  border-radius: 12px;
  background: color-mix(in oklab, var(--cyan) 14%, transparent);
  color: var(--brand-text);
}
body.sdo-inner .pg-way span { display: flex; flex-direction: column; gap: 2px; min-inline-size: 0; }
body.sdo-inner .pg-way small { font-size: 12.5px; color: var(--text-muted); }
body.sdo-inner .pg-way b { font-size: 14.5px; font-weight: 700; line-height: 1.7; }

body.sdo-inner .pg-contact__card {
  padding: clamp(20px, 3.6svh, 40px) clamp(18px, 2.2vw, 36px);
  border: 1px solid var(--hm-line);
  border-radius: calc(var(--hm-radius) + 4px);
  background: var(--surface-1);
  box-shadow: 0 3rem 6rem -3rem rgb(0 0 0 / .55);
}
[data-theme="light"] body.sdo-inner .pg-contact__card { background: #fff; box-shadow: 0 3rem 6rem -3.4rem rgb(10 27 48 / .28); }
body.sdo-inner .pg-contact__head h2 { margin: 0 0 6px; font-size: clamp(19px, .5vw + 1.6svh, 24px); font-weight: 800; color: var(--text-strong); }
body.sdo-inner .pg-contact__head p { margin: 0 0 clamp(14px, 2.6svh, 24px); font-size: 14px; line-height: 1.8; color: var(--text-muted); }
body.sdo-inner .pg-form { display: grid; gap: clamp(12px, 2svh, 18px); }
body.sdo-inner .pg-form .hm-field input,
body.sdo-inner .pg-form .hm-field textarea { background: var(--surface-0); }
[data-theme="light"] body.sdo-inner .pg-form .hm-field input,
[data-theme="light"] body.sdo-inner .pg-form .hm-field textarea { background: #F6F9FC; }
body.sdo-inner .pg-form .hm-field textarea { min-block-size: clamp(90px, 14svh, 150px); }
body.sdo-inner .pg-form [aria-invalid="true"] { border-color: var(--hm-rose); }
body.sdo-inner .pg-form__err { margin: 0; font-size: 12.5px; color: var(--hm-rose); }
body.sdo-inner .pg-form__alert {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 10px 14px;
  border-radius: 12px;
  background: color-mix(in oklab, var(--hm-rose) 12%, transparent);
  color: var(--hm-rose);
  font-size: 13.5px;
  font-weight: 600;
}
body.sdo-inner .pg-form__submit { inline-size: 100%; }

body.sdo-inner .pg-sent {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding-block: clamp(12px, 3svh, 32px);
  text-align: center;
}
body.sdo-inner .pg-sent__icon {
  display: grid;
  place-items: center;
  inline-size: 68px;
  block-size: 68px;
  border-radius: 50%;
  background: var(--hm-green);
  color: #fff;
  font-size: 26px;
  animation: pg-pop .6s var(--ease);
}
@keyframes pg-pop { from { scale: .4; opacity: 0; } 60% { scale: 1.08; } to { scale: 1; opacity: 1; } }
body.sdo-inner .pg-sent h2 { margin: 4px 0 0; font-size: 24px; font-weight: 900; color: var(--text-strong); }
body.sdo-inner .pg-sent p { max-inline-size: 40ch; margin: 0 0 8px; line-height: 1.9; color: var(--text-muted); }

@media (max-width: 899.98px) {
  body.sdo-inner .pg-contact { align-items: flex-start; }
  body.sdo-inner .pg-contact__grid { grid-template-columns: minmax(0, 1fr); }
  body.sdo-inner .pg-ways { grid-template-columns: 1fr 1fr; margin-block-start: 16px; }
  body.sdo-inner .pg-contact__card { padding: 18px 16px; }
}
/* Phones: title, then the form, then the ways (the form is why most come). */
@media (max-width: 899.98px) {
  body.sdo-inner .pg-contact__copy { display: contents; }
  body.sdo-inner .pg-contact__copy > :not(.pg-ways) { order: 0; }
  body.sdo-inner .pg-contact__card { order: 1; }
  body.sdo-inner .pg-ways { order: 2; margin-block-start: 0; }
  body.sdo-inner .pg-contact__grid { gap: 16px; }
  body.sdo-inner .pg-contact__copy .pg-h1 { margin-block-end: 6px; }
}
@media (max-width: 599.98px) {
  body.sdo-inner .pg-contact { padding-block-start: 14px; }
  body.sdo-inner .pg-contact__head p { display: none; }
  body.sdo-inner .pg-contact__head h2 { margin-block-end: 12px; }
  body.sdo-inner .pg-form { gap: 10px; }
  body.sdo-inner .pg-form .hm-field textarea { min-block-size: 84px; }
  body.sdo-inner .pg-way { gap: 10px; padding: 12px; }
  body.sdo-inner .pg-way i { inline-size: 36px; block-size: 36px; }
  body.sdo-inner .pg-way b { font-size: 13.5px; }
}
/* Short screens: the form tightens so the send button stays in view. */
@media (min-width: 900px) and (max-height: 760px) {
  body.sdo-inner .pg-contact__card { padding-block: 18px; }
  body.sdo-inner .pg-contact__head p { display: none; }
  body.sdo-inner .pg-contact__head h2 { margin-block-end: 12px; }
  body.sdo-inner .pg-form { gap: 10px; }
  body.sdo-inner .pg-form .hm-field input { min-block-size: 40px; padding-block: 6px; }
  body.sdo-inner .pg-form .hm-field textarea { min-block-size: 72px; }
  body.sdo-inner .pg-ways { margin-block-start: 16px; gap: 8px; }
  body.sdo-inner .pg-way { padding-block: 10px; }
}

/* Phones held sideways and very short screens: the paged about sections
   fall back to their natural height rather than cramming. */
@media (max-height: 520px) {
  body.sdo-inner .pg-about .hm-sec,
  body.sdo-inner .pg-about-hero { block-size: auto; min-block-size: 100svh; }
}
@media (max-width: 599.98px) and (max-height: 740px) {
  body.sdo-inner .pg-contact__copy .hm-lead,
  body.sdo-inner .pg-contact__copy .hm-eyebrow { display: none; }
  body.sdo-inner .pg-form .hm-field textarea { min-block-size: 64px; }
}
@media (max-width: 599.98px) and (max-height: 660px) {
  body.sdo-inner .pg-form .hm-field textarea { min-block-size: 50px; }
  body.sdo-inner .pg-contact__head h2 { margin-block-end: 8px; }
}

/* The current menu item in the light theme: the brand cyan is too pale to read as text. */
[data-theme="light"] body.sdo-landing-page .tpl-nav > ul > li.is-current > a,
[data-theme="light"] body.sdo-landing-page .tpl-nav > ul > li.is-current > button { color: var(--brand-text); }
