/* Downloads composition only. Shared sheets and site-shell.js own key mechanics. */
.downloads-page #main .downloads-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, .85fr);
  align-items: end;
  gap: 32px;
  padding-block: 60px 44px;
}
.downloads-page #main .downloads-heading .section-kicker {
  margin: 0 0 13px;
  color: #685b47;
  font: 600 1rem/1.4 var(--sans);
  letter-spacing: .035em;
  text-transform: none;
}
.downloads-page #main .downloads-hero h1 {
  margin: 0;
  font-size: clamp(3rem, 5.1vw, 4.8rem);
  letter-spacing: -.045em;
}
.downloads-page #main .downloads-intro {
  max-width: 30rem;
  padding-bottom: 3px;
}
.downloads-page #main .downloads-intro .lede {
  font-size: 1.25rem;
  line-height: 1.55;
}
.downloads-page #main .hero-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 20rem;
  margin-top: 22px;
}
.downloads-page #main .hero-actions .btn { width: 100%; min-width: 0; }
.downloads-page #main .downloads-band { padding-block: 34px 0; }
.downloads-page #main .download-grid {
  align-items: start;
  gap: 28px;
}
.downloads-page #main .primary-download {
  display: block;
  grid-row: auto;
  border: 1px solid #baaf9c;
  box-shadow: 0 1px 0 #fffdf4, 0 8px 24px #51432d0a;
  background: #f9f6ef;
}
.downloads-page #main .primary-download header {
  padding: 28px 32px;
  background: linear-gradient(120deg, #eee8da, #e6decd);
}
.downloads-page #main .primary-download .panel-body { padding: 28px 32px 32px; }
.downloads-page #main .platform-label { font-size: 1.125rem; }
.downloads-page #main .platform-heading {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-top: 22px;
}
.downloads-page #main .platform-heading > div { min-width: 0; }
.downloads-page #main .platform-heading h2 {
  margin-top: 0;
  font-size: clamp(1.65rem, 2.15vw, 2rem);
}
.downloads-page #main .platform-mark {
  flex: none;
  width: 42px;
  height: 56px;
  fill: none;
  stroke: #584e3c;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.downloads-page #main .platform-mark .phone-map-line { stroke: #bc5e2e; }
.downloads-page #main .platform-mark circle { fill: #bc5e2e; stroke: #bc5e2e; }
.downloads-page #main .distribution-method { margin-top: 7px; font-size: 1rem; }
.downloads-page #main .primary-download .distribution-note {
  min-height: 0;
  margin: 0 0 26px;
  font-size: 1.125rem;
  line-height: 1.6;
}
.downloads-page #main .field-test-note {
  padding-left: 13px;
  border-left: 3px solid #c87c43;
}
.downloads-page #main .download-actions { margin: 0; }
.downloads-page #main .panel-body > h3 { margin: 30px 0 21px; }
.downloads-page #main .install-steps:not([data-release-notes]) {
  gap: 22px;
  font-size: 1.125rem;
  line-height: 1.6;
}
.downloads-page #main .install-steps:not([data-release-notes]) > li { padding-left: 47px; }
.downloads-page #main .install-steps strong { margin-bottom: 3px; }
.downloads-page #main .install-note { line-height: 1.6; }
.downloads-page #main .install-note a {
  color: var(--ink);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.downloads-page #main .release-disclosure {
  margin-top: 30px;
  padding: 0;
}
.downloads-page #main .release-disclosure > .release-disclosure-body { padding: 28px; }
.downloads-page #main .release-intro {
  display: block;
  margin-bottom: 23px;
}
.downloads-page #main .release-intro h3 {
  margin: 7px 0 10px;
  font-size: 1.5rem;
  line-height: 1.3;
}
.downloads-page #main .release-detail-label { margin: 0; color: var(--ink); }
.downloads-page #main .release-intro p { margin-block: 0; line-height: 1.6; }
.downloads-page #main .release-intro .mini-note { margin-top: 12px; max-width: 70ch; }
.downloads-page #main .download-meta {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-radius: 7px;
  overflow: hidden;
}
.downloads-page #main .download-meta > div { padding: 16px 18px; }
.downloads-page #main .download-meta > div:last-child { grid-column: 1 / -1; }
.downloads-page #main .download-meta dd { margin-top: 6px; }
.downloads-page #main .release-history { margin-top: 25px; }
.downloads-page #main .release-history > .release-history-body { padding: 24px 28px 28px; }
.downloads-page #main .release-history-body > p { max-width: 70ch; }
.downloads-page #main [data-release-summary] { margin-block: 14px 22px; }
.downloads-page #main [data-release-notes] {
  max-width: 72ch;
  gap: 0;
  margin: 0;
  padding-left: 1.5em;
  font-size: 1.0625rem;
  line-height: 1.7;
}
.downloads-page #main [data-release-notes] li { padding: 12px 0 12px 7px; }
.downloads-page #main [data-release-notes] li + li { border-top: 1px solid #c9bfad; }
.downloads-page #main [data-release-notes] li::marker { color: #6c5b44; }
.downloads-page #main .guide-download {
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  margin-top: 30px;
  background: #f9f6ef;
}
.downloads-page #main .guide-download header {
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 30px 32px;
}
.downloads-page #main .guide-download-mark {
  width: 55px;
  height: 62px;
  flex: none;
  fill: none;
  stroke: #6c604b;
  stroke-width: 2.1;
  stroke-linejoin: round;
  stroke-linecap: round;
}
.downloads-page #main .guide-route { stroke: #bc5e2e; }
.downloads-page #main .guide-download .panel-body { padding: 28px 32px 30px; }
.downloads-page #main .guide-download h2 { margin: 8px 0 10px; }
.downloads-page #main .guide-download .status-pill { display: block; }
.downloads-page #main .guide-download .section-kicker {
  font: 500 1rem/1.4 var(--sans);
  text-transform: none;
  letter-spacing: 0;
  margin: 0;
}
.downloads-page #main .guide-download .panel-body > p { margin: 0; }
.downloads-page #main .guide-download .download-actions { margin-top: 25px; }
.downloads-page #main .android-install-help {
  display: grid;
  grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr);
  align-items: start;
  gap: 44px;
  margin-top: 54px;
  padding-top: 38px;
  border-top: 1px solid #b9af9d;
}
.downloads-page #main .install-help-heading { max-width: 25rem; }
.downloads-page #main .install-help-heading .section-kicker {
  margin: 0 0 10px;
  font: 500 1rem/1.4 var(--sans);
  text-transform: none;
  letter-spacing: 0;
}
.downloads-page #main .install-help-heading h2 { margin: 0 0 16px; font-size: 2rem; line-height: 1.2; }
.downloads-page #main .install-help-heading > p:last-child { margin: 0; color: var(--muted); line-height: 1.65; }
.downloads-page #main .install-help-questions { gap: 16px; min-width: 0; }
.downloads-page #main .install-help-questions details > div { padding: 22px 26px 25px; }
.downloads-page #main .install-help-questions p { margin: 0; font-size: 1.125rem; line-height: 1.7; overflow-wrap: anywhere; }
.downloads-page #main .install-help-questions p + p { margin-top: 17px; }
.downloads-page #main .install-help { margin-top: 38px; padding-block: 26px; }
.downloads-page #main :is(#iphone, #android, #android-install-help, #install-help) { scroll-margin-top: 32px; }
@media (min-width: 1100px) {
  .downloads-page #main .primary-download .download-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 821px) and (max-width: 1099px) {
  .downloads-page #main .primary-download :is(header, .panel-body) { padding-inline: 24px; }
  .downloads-page #main .platform-heading { gap: 15px; }
  .downloads-page #main .platform-mark { width: 33px; height: 46px; }
  .downloads-page #main .guide-download { grid-template-columns: minmax(0, 1fr); }
  .downloads-page #main .guide-download header { border-right: 0; border-bottom: 1px solid var(--line); }
  .downloads-page #main .android-install-help { gap: 28px; }
}
@media (max-width: 820px) {
  .downloads-page #main .downloads-hero { grid-template-columns: minmax(0, 1fr); gap: 22px; padding-block: 36px 30px; }
  .downloads-page #main .downloads-hero h1 { font-size: clamp(2.7rem, 11vw, 4rem); }
  .downloads-page #main .downloads-intro { max-width: 35rem; padding: 0; }
  .downloads-page #main .downloads-intro .lede { font-size: 1.125rem; }
  .downloads-page #main .hero-actions { margin-top: 22px; }
  .downloads-page #main .downloads-band { padding-top: 28px; }
  .downloads-page #main .download-grid { grid-template-columns: minmax(0, 1fr); gap: 26px; }
  .downloads-page #main .primary-download header { padding: 23px 24px; }
  .downloads-page #main .primary-download .panel-body { padding: 25px 24px 28px; }
  .downloads-page #main .platform-heading { gap: 17px; margin-top: 20px; }
  .downloads-page #main .platform-heading h2 { font-size: 1.65rem; }
  .downloads-page #main .platform-mark { width: 34px; height: 47px; }
  .downloads-page #main .primary-download .distribution-note { margin-bottom: 24px; }
  .downloads-page #main .release-disclosure > .release-disclosure-body { padding: 22px; }
  .downloads-page #main .release-intro { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .downloads-page #main .release-intro h3 { font-size: 1.35rem; }
  .downloads-page #main .download-meta { grid-template-columns: minmax(0, 1fr); }
  .downloads-page #main .release-history > .release-history-body { padding: 22px 20px; }
  .downloads-page #main [data-release-notes] { font-size: 1rem; line-height: 1.75; }
  .downloads-page #main .guide-download { grid-template-columns: minmax(0, 1fr); }
  .downloads-page #main .guide-download header { padding: 25px 24px; border-right: 0; border-bottom: 1px solid var(--line); gap: 20px; }
  .downloads-page #main .guide-download .panel-body { padding: 25px 24px 28px; }
  .downloads-page #main .guide-download-mark { width: 43px; height: 53px; }
  .downloads-page #main .android-install-help { grid-template-columns: minmax(0, 1fr); gap: 26px; margin-top: 40px; padding-top: 30px; }
  .downloads-page #main .install-help-heading h2 { font-size: 1.75rem; }
  .downloads-page #main .install-help-heading { max-width: 35rem; }
  .downloads-page #main .install-help-questions details > div { padding: 22px; }
  .downloads-page #main .install-help { margin-top: 30px; gap: 12px; }
}
@media (max-width: 360px) {
  .downloads-page #main .primary-download :is(header, .panel-body),
  .downloads-page #main .guide-download :is(header, .panel-body) { padding-inline: 20px; }
  .downloads-page #main .platform-heading { gap: 13px; }
  .downloads-page #main .platform-mark { width: 29px; height: 43px; }
  .downloads-page #main .platform-heading h2 { font-size: 1.5rem; }
  .downloads-page #main .install-steps:not([data-release-notes]) > li { padding-left: 42px; }
  .downloads-page #main .install-steps:not([data-release-notes]) > li::before { width: 31px; height: 31px; }
  .downloads-page #main .release-disclosure > .release-disclosure-body { padding: 20px 16px; }
  .downloads-page #main .release-history > .release-history-body { padding: 20px 16px; }
  .downloads-page #main .install-help-questions details > div { padding-inline: 20px; }
}

/* iPhone: no build to offer yet (2026-10-16). */
.download-actions .btn.coming-soon:disabled { cursor: default; filter: grayscale(.85) opacity(.7); }
