/* One desktop content frame; section backgrounds retain their full width. */
@media (min-width: 1024px) {
  :root {
    --riam-content-width: 1120px;
    --riam-page-gutter: 32px;
    --riam-content-frame: min(var(--riam-content-width), calc(100% - 2 * var(--riam-page-gutter)));
  }

  main > .enh-section,
  main > .loan-section,
  main > .hero-conditions,
  main > .guide-toc {
    padding-inline: var(--riam-page-gutter);
  }
  main > .enh-section > .enh-inner,
  main > .loan-section > .loan-inner,
  main > .hero-conditions > div,
  main > .guide-toc > div {
    width: 100%;
    max-width: var(--riam-content-width);
    margin-inline: auto;
    box-sizing: border-box;
  }

  .l-worry__inner,
  .l-recommend__inner,
  .l-answer__inner,
  .l-feature-head__inner,
  .l-feature-body__inner,
  .l-flow__inner,
  .l-doctor-head__inner,
  .l-doctor-body__inner,
  .l-zygoma__inner,
  .l-qa__inner,
  .l-price__inner,
  .l-jidv__inner,
  .l-sns__inner,
  .l-case-head__inner,
  .l-case-body > .case-browser,
  .l-case-body > .riam-case-gallery,
  .l-feature > .riam-concept-entry,
  .l-monitor > .l-monitor__list,
  .l-clinic > .p-clinic-slide,
  .riam-locations > .riam-layout-inner,
  .riam-inquiry > .riam-layout-inner,
  main > .riam-price-summary > .riam-layout-inner,
  main > .riam-structure-guide > .wrap,
  main.riam-warranty > section > .wrap,
  main.riam-warranty > header > .wrap {
    width: var(--riam-content-frame);
    max-width: var(--riam-content-width);
    margin-inline: auto;
    box-sizing: border-box;
  }

  main > .enh-topic-nav,
  main > .case-wrap,
  main > .l-bread,
  main > .l-gutenberg,
  .l-page section.default > .inner,
  .l-page section.default > .inner2,
  main.l-container {
    width: var(--riam-content-frame);
    max-width: var(--riam-content-width);
    margin-inline: auto;
    padding-inline: 0;
    box-sizing: border-box;
  }

  /* Cards use a shared inset; nested layouts fill that inset only once. */
  .l-recommend-box02,
  .l-price01,
  .l-jidv__inner {
    padding-inline: 48px;
  }
  .l-recommend-box02-flexbox {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
    gap: 32px 48px;
  }
  .l-recommend-box02-flexbox-txtbox,
  .l-recommend-box02-flexbox-imgbox,
  .l-recommend-box02-flexbox-btnbox {
    width: 100%;
    min-width: 0;
  }
  .l-recommend-box02-flexbox-btnbox { grid-column: 1 / -1; }
  .l-recommend-box02 > .guide-overview > .enh-inner {
    width: 100%;
    max-width: none;
  }
  .l-gutenberg .riam-price-summary > .riam-layout-inner {
    width: 100%;
    max-width: none;
  }
  .l-case-body > .riam-case-gallery { padding-inline: 0; }
  .l-clinic > .p-clinic-slide { overflow: hidden; }
  .case-browser .cb-grid { gap: 28px; }
  .l-doctor-body-prfbox__list02 {
    padding-inline-start: 1.5em;
    box-sizing: border-box;
  }
  .l-doctor-body-prfbox__list02 li { margin-left: 0; }
  .riam-structure-guide > .wrap > *,
  .enh-split > *,
  .loan-layout > * { min-width: 0; }
}
