/* Phone presentation: full photographs, readable product detail, comfortable controls. */
@media (max-width: 760px) {
  body.world38 main :is(.w38p-catalogue, .w38p-family-page, .w38p-product) {
    font-size: 16px;
    line-height: 1.8;
  }

  body.world38 main :is(.w38p-catalogue, .w38p-family-page, .w38p-product) :is(h1, h2, h3, p, dd, a, button, summary) {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  body.world38 main :is(.w38p-catalogue, .w38p-family-page) h1,
  body.world38 main .w38p-product-heading h1 {
    font-size: clamp(34px, 8.5vw, 42px);
    line-height: 1.2;
    letter-spacing: -.035em;
  }

  body.world38 main :is(.w38p-catalogue, .w38p-family-page, .w38p-product) h2 {
    font-size: clamp(28px, 7vw, 34px);
    line-height: 1.3;
  }

  body.world38 main .w38p-product h3 {
    font-size: 23px;
    line-height: 1.4;
  }

  body.world38 main :is(.w38p-catalogue, .w38p-family-page, .w38p-product) p {
    font-size: 16px;
    line-height: 1.8;
  }

  body.world38 main :is(.w38p-catalogue-intro > div, .w38p-heading-split) {
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
    align-items: start;
  }

  body.world38 main .w38p-catalogue-intro {
    padding-block: 36px 42px;
  }

  body.world38 main .w38p-family-intro {
    padding-block: 26px 36px;
  }

  body.world38 main :is(.w38p-catalogue-intro > div > p, .w38p-heading-split > p) {
    max-width: none;
    font-size: 16px;
    line-height: 1.8;
  }

  body.world38 main :is(.w38p-family-grid, .w38p-product-grid, .w38p-related-grid) {
    grid-template-columns: minmax(0, 1fr);
    gap: 46px;
  }

  body.world38 main :is(.w38p-family-image, .w38p-card-image) {
    display: block;
    width: calc(100% + var(--w48-gutter, 22px) + var(--w48-gutter, 22px));
    margin-inline: calc(-1 * var(--w48-gutter, 22px));
    height: auto;
    min-height: 0;
    aspect-ratio: auto;
    overflow: visible;
    background: transparent;
  }

  body.world38 main :is(.w38p-family-card, .w38p-card, .w38p-related-card) img,
  body.world38 main .w38p-family-card:nth-child(2) .w38p-family-image img,
  body.world38 main :is(.w38p-catalogue, .w38p-family-page) .w38p-card-image img {
    display: block;
    width: 100%;
    height: auto;
    max-height: none;
    padding: 0;
    object-fit: contain;
    transform: none;
  }

  body.world38 main :is(.w38p-family-copy, .w38p-card-copy) {
    padding-top: 22px;
    max-width: none;
  }

  body.world38 main :is(.w38p-family-copy, .w38p-card-copy) h2 {
    max-width: none;
    font-size: 25px;
    line-height: 1.4;
    margin-bottom: 14px;
  }

  body.world38 main :is(.w38p-family-copy, .w38p-card-copy) p {
    min-height: 0;
    margin-bottom: 20px;
  }

  body.world38 main :is(.w38p-card-link, .w38p-section-heading > a, .w38p-p5-link) {
    min-height: 44px;
    font-size: 14px;
    line-height: 1.6;
    gap: 20px;
  }

  body.world38 main .w38p-section-heading {
    display: block;
    margin-bottom: 28px;
  }

  body.world38 main .w38p-section-heading > p {
    margin-top: 12px;
    font-size: 13px;
  }

  body.world38 main .w38p-section-heading > a {
    margin-top: 16px;
  }

  body.world38 main :is(.w38p-filterbar, .w38p-config-link .w38p-c6-end) {
    display: block;
  }

  body.world38 main .w38p-search {
    width: 100%;
    max-width: none;
    margin-top: 24px;
  }

  body.world38 main .w38p-search input {
    min-height: 48px;
    font-size: 16px;
  }

  body.world38 main :is(.w38p-filters, .w38p-family-links) {
    gap: 8px;
  }

  body.world38 main :is(.w38p-filters button, .w38p-family-links a) {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    max-width: 100%;
    padding: 11px 14px;
    font-size: 14px;
    line-height: 1.5;
  }

  body.world38 main :is(.w38p-catalogue-breadcrumb, .w38p-p5-breadcrumb, .w38p-family-back) {
    font-size: 12px;
    line-height: 1.7;
    gap: 10px;
  }

  body.world38 main .w38p-catalogue-breadcrumb {
    margin-bottom: 28px;
  }

  body.world38 main .w38p-family-back {
    min-height: 44px;
    margin-bottom: 18px;
  }

  body.world38 main :is(.w38p-config-link, .w38p-next-family, .w38p-family-products) {
    padding-bottom: 54px;
  }

  body.world38 main :is(.w38p-c6-end > a, .w38p-next-page > a) {
    width: 100%;
    min-height: 54px;
    gap: 22px;
    justify-content: space-between;
  }

  body.world38 main :is(.w38p-c6-end > p, .w38p-next-page > p) {
    margin-bottom: 18px;
    font-size: 12px;
  }

  body.world38 main .w38p-next-page {
    display: block;
    padding-top: 30px;
  }

  /* The cover opens the product, at the photograph's own proportions. */
  body.world38 main .w38p-product-hero {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 28px;
    padding-block: 0 40px;
  }

  body.world38 main .w38p-product-cover {
    order: -1;
    width: calc(100% + var(--w48-gutter, 22px) + var(--w48-gutter, 22px));
    margin-inline: calc(-1 * var(--w48-gutter, 22px));
  }

  body.world38 main .w38p-product-cover .w38p-p5-hero-media {
    width: 100%;
    height: auto;
    min-height: 0;
    max-height: none;
    aspect-ratio: auto;
    overflow: visible;
    background: transparent;
  }

  body.world38 main .w38p-product-cover .w38p-p5-hero-media img {
    display: block;
    width: 100%;
    height: auto;
    min-height: 0;
    max-height: none;
    padding: 0;
    object-fit: contain;
  }

  body.world38 main .w38p-product-cover figcaption {
    padding-inline: var(--w48-gutter, 22px);
    font-size: 12px;
    line-height: 1.7;
    gap: 16px;
  }

  body.world38 main .w38p-hotspot {
    width: 44px;
    height: 44px;
  }

  body.world38 main .w38p-hotspot-panel {
    inset: auto 16px 16px;
    width: auto;
    max-width: none;
    translate: none;
    padding: 18px;
  }

  body.world38 main .w38p-hotspot-panel p {
    font-size: 16px;
    line-height: 1.75;
  }

  body.world38 main .w38p-p5-model {
    white-space: nowrap;
  }

  body.world38 main .w38p-p5-type {
    font-size: .68em;
    line-height: 1.4;
    letter-spacing: -.015em;
  }

  body.world38 main .w38p-product-intro {
    max-width: none;
    margin-bottom: 0;
  }

  body.world38 main .w38p-p5-hero-actions {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }

  body.world38 main .w38p-p5-hero-actions > a {
    display: flex;
    justify-content: space-between;
    min-height: 48px;
    font-size: 14px;
    line-height: 1.6;
    padding-block: 12px;
  }

  body.world38 main .w38p-product-nav > .w38-wrap {
    gap: 24px;
  }

  body.world38 main .w38p-product-nav a {
    font-size: 14px;
    min-height: 48px;
    padding-block: 14px;
  }

  body.world38 main .w38p-product-facts > dl {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
    margin-top: 30px;
  }

  body.world38 main .w38p-product-facts dl > div {
    display: block;
    padding-inline: 0;
    border-left: 0;
    border-inline-start: 0;
    border-top: 1px solid var(--line);
    padding-block-start: 18px;
  }

  body.world38 main .w38p-product-facts dt {
    margin-bottom: 9px;
    font-size: 13px;
  }

  body.world38 main .w38p-product-facts dd {
    font-size: 16px;
    line-height: 1.8;
  }

  body.world38 main :is(.w38p-pd34-heading, .w38p-render-story-intro, .w38p-s85g-editorial, .w38p-p5-track-layout, .w38p-p5-section-label, .w38p-aw95-material, .w38p-aw95-choice, .w38p-aw95-brass-heading, .w38p-spec-grid) {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }

  body.world38 main :is(.w38p-pd34-heading > p, .w38p-render-story-intro > p) {
    max-width: none;
    margin-bottom: 0;
  }

  body.world38 main .w38p-pd34-feature,
  body.world38 main .w38p-pd34-feature[data-profile-kind=s150] {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: calc(100% + var(--w48-gutter, 22px) + var(--w48-gutter, 22px));
    margin-inline: calc(-1 * var(--w48-gutter, 22px));
    min-height: 0;
    padding: 28px var(--w48-gutter, 22px);
    gap: 24px;
  }

  body.world38 main .w38p-pd34-feature-copy {
    max-width: none;
  }

  body.world38 main .w38p-pd34-feature-copy > p:first-child {
    font-size: 12px;
    line-height: 1.7;
  }

  body.world38 main .w38p-pd34-feature-copy > p:last-child {
    font-size: 16px;
    line-height: 1.8;
  }

  body.world38 main .w38p-pd34-feature-art {
    width: calc(100% + var(--w48-gutter, 22px) + var(--w48-gutter, 22px));
    max-width: none;
    margin-inline: calc(-1 * var(--w48-gutter, 22px));
  }

  body.world38 main .w38p-pd34-feature .w38p-pd34-feature-art img {
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain;
  }

  body.world38 main .w38p-pd34-feature-art figcaption {
    padding-inline: var(--w48-gutter, 22px);
  }

  body.world38 main .w38p-pd34-fold > summary {
    grid-template-columns: 24px minmax(0, 1fr) 18px;
    gap: 13px;
    min-height: 76px;
    font-size: 20px;
    line-height: 1.5;
  }

  body.world38 main .w38p-pd34-number {
    font-size: 12px;
  }

  body.world38 main .w38p-pd34-fold-body {
    grid-template-columns: minmax(0, 1fr);
    gap: 26px;
    padding-inline: 0;
    padding-bottom: 32px;
  }

  body.world38 main .w38p-pd34-plate,
  body.world38 main .w38p-pd34-plate[data-figures="2"] {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }

  body.world38 main .w38p-pd34-plate .w38p-pd34-image {
    display: block;
    height: auto;
    min-height: 0;
  }

  body.world38 main .w38p-pd34-image img,
  body.world38 main .w38p-render-story-stage img,
  body.world38 main .w38p-s85g-opening-photo img,
  body.world38 main .w38p-p5-track-figure img,
  body.world38 main .w38p-p5-corner-photo img,
  body.world38 main .w38p-aw95-drawing img,
  body.world38 main .w38p-aw95-option-photo img,
  body.world38 main .w38p-aw95-brass-rail img,
  body.world38 main .w38p-s85g-detail img {
    display: block;
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain;
  }

  body.world38 main .w38p-product-content figcaption {
    font-size: 12px;
    line-height: 1.8;
    padding-top: 12px;
  }

  body.world38 main .w38p-pd34-notes dt {
    font-size: 13px;
  }

  body.world38 main .w38p-pd34-notes dd {
    font-size: 18px;
  }

  body.world38 main .w38p-render-story-display {
    padding: 24px 16px;
  }

  body.world38 main .w38p-render-story-composition {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }

  body.world38 main .w38p-render-story-panel {
    padding: 0;
  }

  body.world38 main .w38p-render-story-stage {
    display: block;
    height: auto;
    min-height: 0;
  }

  body.world38 main .w38p-render-story-aside {
    display: block;
  }

  body.world38 main .w38p-render-story-aside h3 {
    font-size: 23px;
    margin-bottom: 22px;
  }

  body.world38 main .w38p-render-story-metrics dt {
    font-size: 13px;
    line-height: 1.7;
  }

  body.world38 main .w38p-render-story-metrics dd > span {
    font-size: 14px;
  }

  body.world38 main .w38p-render-story-spec-link {
    min-height: 44px;
    font-size: 14px;
    line-height: 1.6;
  }

  body.world38 main .w38p-tablist {
    gap: 8px;
    margin-top: 24px;
  }

  body.world38 main .w38p-tablist button,
  body.world38 main .w38p-s85g-copy .w38p-tablist button,
  body.world38 main .w38p-segmented button {
    min-height: 46px;
    max-width: 100%;
    font-size: 14px;
    line-height: 1.6;
    padding: 11px 13px;
    gap: 10px;
  }

  body.world38 main .w38p-render-story-tab-number {
    flex-shrink: 0;
    font-size: 12px;
  }

  body.world38 main .w38p-s85g-copy .w38p-tablist {
    flex-direction: row;
    flex-wrap: wrap;
    border-top: 0;
  }

  body.world38 main :is(.w38p-s85g-opening-photo, .w38p-p5-corner-photo) {
    height: auto;
    min-height: 0;
  }

  body.world38 main .w38p-p5-track-figure {
    padding: 18px 12px;
  }

  body.world38 main :is(.w38p-p5-view-copy > p:first-child, .w38p-p5-section-label > .w38p-mono, .w38p-p5-section-label > span) {
    font-size: 12px;
    line-height: 1.7;
  }

  body.world38 main .w38p-opening-compare {
    aspect-ratio: 16 / 9;
  }

  body.world38 main .w38p-opening-compare > .w38p-compare-base,
  body.world38 main .w38p-compare-overlay img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  body.world38 main .w38p-compare-labels {
    inset: auto 10px 10px;
    gap: 8px;
  }

  body.world38 main .w38p-compare-labels span {
    max-width: 48%;
    font-size: 12px;
    line-height: 1.5;
    padding: 6px 8px;
    letter-spacing: 0;
  }

  body.world38 main .w38p-p5-corner-gallery {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }

  body.world38 main :is(.w38p-aw95-heading > p:first-child, .w38p-aw95-brass-heading > div > p, .w38p-aw95-material-notes dt, .w38p-aw95-node small) {
    font-size: 12px;
    line-height: 1.7;
  }

  body.world38 main .w38p-aw95-material-notes dd {
    font-size: 16px;
    line-height: 1.8;
  }

  body.world38 main :is(.w38p-aw95-profile, .w38p-aw95-node-drawing, .w38p-aw95-option-photo) {
    padding: 18px 12px;
  }

  body.world38 main .w38p-aw95-node strong {
    font-size: 20px;
    line-height: 1.5;
  }

  body.world38 main .w38p-aw95-brass-rail {
    grid-auto-flow: row;
    grid-auto-columns: auto;
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
    overflow: visible;
  }

  body.world38 main .w38p-aw95-brass-rail figure > div {
    height: auto;
    overflow: visible;
  }

  body.world38 main .w38p-specifications {
    padding-block: 42px 50px;
  }

  body.world38 main .w38p-spec-grid > header {
    position: static;
  }

  body.world38 main .w38p-spec-grid > header > p:not(.w38-eyebrow) {
    max-width: none;
    font-size: 16px;
  }

  body.world38 main .w38p-spec-grid > header > a {
    min-height: 44px;
    font-size: 14px;
    line-height: 1.6;
  }

  body.world38 main .w38p-p5-spec-list > div {
    grid-template-columns: minmax(0, 1fr);
    gap: 9px;
    padding-block: 20px;
  }

  body.world38 main .w38p-p5-spec-list dt {
    font-size: 13px;
    line-height: 1.7;
  }

  body.world38 main .w38p-p5-spec-list dd {
    font-size: 16px;
    line-height: 1.8;
  }

  body.world38 main .w38p-p5-spec-list img {
    height: auto;
    max-height: none;
    object-fit: contain;
  }

  body.world38 main .w38p-related-card > div {
    width: calc(100% + var(--w48-gutter, 22px) + var(--w48-gutter, 22px));
    margin-inline: calc(-1 * var(--w48-gutter, 22px));
    height: auto;
    min-height: 0;
    aspect-ratio: auto;
    overflow: visible;
    background: transparent;
    margin-bottom: 22px;
  }

  body.world38 main .w38p-related-card h3 {
    align-items: start;
    font-size: 24px;
    line-height: 1.4;
    gap: 18px;
  }

  body.world38 main .w38p-series-index {
    justify-content: flex-start;
    gap: 8px;
    margin-top: 30px;
  }

  body.world38 main .w38p-series-index a {
    width: 44px;
    height: 44px;
    font-size: 13px;
  }

  body.world38 main .w38p-p5-project {
    display: block;
  }

  body.world38 main .w38p-p5-project > p {
    font-size: 12px;
    margin-bottom: 18px;
  }

  body.world38 main .w38p-p5-project > a {
    width: 100%;
    gap: 22px;
    align-items: start;
    justify-content: space-between;
  }

  html[lang^="zh"] body.world38 main :is(.w38p-catalogue, .w38p-family-page, .w38p-product) :is(h1, h2, h3) {
    line-height: 1.4;
    letter-spacing: -.015em;
  }

  html[dir="rtl"] body.world38 main :is(.w38p-catalogue, .w38p-family-page, .w38p-product) :is(h1, h2, h3, p, a, button, summary) {
    letter-spacing: normal;
  }
}
