/* One measured presentation system, loaded after the legacy theme/Woo styles. */
.rt-heading-editorial, .rt-heading-products { align-items: end; }
.rt-heading-editorial > :not(:first-child), .rt-heading-products > :not(:first-child) { align-self: end; }
.rt-heading-editorial:has(.rt-eyebrow) > p, .rt-heading-products:has(.rt-eyebrow) > p { padding-top: 0; }
.rt-page-content--editorial .rt-heading-editorial > p, .rt-page-content--editorial .rt-heading-products > p { margin: 0; }
.rt-reading p:last-child { margin-bottom: 0; }
.rt-text-link, .woocommerce a.rt-text-link, .rt-product-description a.rt-text-link { text-decoration: none; }
.rt-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .wp-element-button { white-space: nowrap; flex-shrink: 0; }
.rt-button-row { display: flex; flex-wrap: wrap; }
.rt-button:has(> svg) { gap: 12px; }
.rt-button > svg { width: 20px; height: 20px; flex: 0 0 20px; fill: none; stroke: currentColor; stroke-width: 1.4; }
[data-dialog-initial-focus]:focus { outline: none; }

/* Lock the actual scrolling element, not just the body beneath a native dialog. */
@media (min-width: 768px) { html { scrollbar-gutter: stable; } }
html.rt-dialog-open { overflow: hidden; overscroll-behavior: none; scroll-behavior: auto; }
/* Unlike hidden, clip does not turn the body into a new sticky-header scroll container. */
html.rt-dialog-open body { overflow: clip; overscroll-behavior: none; }
.rt-dialog, .rt-catalog-filter, .rt-catalog-filter__body { overscroll-behavior: contain; }
.rt-dialog [data-dialog-close], .rt-catalog-filter [data-dialog-close] {
  display: inline-grid; place-items: center; width: 44px; height: 44px;
  min-width: 44px; min-height: 44px; padding: 10px; flex: 0 0 44px;
}
.rt-dialog [data-dialog-close] svg, .rt-catalog-filter [data-dialog-close] svg {
  width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linecap: round;
}
.rt-dialog [data-dialog-close]:focus-visible, .rt-catalog-filter [data-dialog-close]:focus-visible {
  outline: 2px solid currentColor; outline-offset: 2px; background-color: transparent;
}

.rt-header__logo .rt-wordmark { width: clamp(190px,11.5vw,224px); }
.rt-header__logo, .rt-header__logo > a { display: flex; align-items: center; line-height: 1; }
.rt-header__logo svg, .rt-header__logo img { display: block; margin: 0; vertical-align: middle; }
@media (min-width: 1200px) {
  .rt-header__inner { grid-template-columns: clamp(190px,11.5vw,224px) minmax(0,1fr) auto; }
}
@media (max-width: 1199px) { .rt-header__logo .rt-wordmark { width: 176px; } }
@media (max-width: 767px) { .rt-header__logo .rt-wordmark { width: 155px; } }
@media (max-width: 374px) { .rt-header__logo .rt-wordmark { width: 128px; } }

.rt-shop-toolbar .rt-filter-toggle {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 50px; min-width: 180px; padding: 12px 26px; flex-shrink: 0;
  border: 1px solid var(--rt-oxblood); background: var(--rt-oxblood); color: #fff;
  font: 500 14px/24px var(--rt-font-ui); letter-spacing: 0; text-transform: none; white-space: nowrap;
}
.rt-filter-toggle > svg { width: 20px; height: 20px; flex: 0 0 20px; fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linecap: round; }
.rt-shop-toolbar .rt-filter-toggle:hover { background: #391017; border-color: #391017; }
.rt-shop-toolbar .rt-filter-toggle:focus-visible { outline: 2px solid var(--rt-oxblood); outline-offset: 3px; }
.rt-filter-toggle .rt-filter-count { margin: 0; background: #fff; color: var(--rt-oxblood); font-size: 11px; }
.rt-catalog-intro { padding-bottom: 28px; }
@media (max-width:767px) { .rt-shop-toolbar .rt-filter-toggle { min-width:156px; padding-inline:18px; } }
@media (max-width:374px) { .rt-shop-toolbar .rt-filter-toggle { min-width:140px; padding-inline:14px; } }

/* Search is a reading column, not an auto-placed twelve-column grid. */
.rt-search { display: flex; flex-direction: column; align-items: stretch; gap: 24px; min-height: 0; max-width: 1000px; padding-block: 32px 48px; }
.rt-search__results { min-height: 0; padding-top: 0; margin-top: 0; }
.rt-search__catalog { align-self: flex-start; flex-shrink: 0; min-height: 50px; margin-top: 8px; white-space: nowrap; }
.rt-search__field input { min-width: 0; }
.rt-search__field input::-webkit-search-cancel-button,
.rt-search__field input::-webkit-search-decoration,
.rt-editorial-search input::-webkit-search-cancel-button { -webkit-appearance: none; appearance: none; display: none; }
#concierge-dialog .rt-dialog__bar { padding: 0 0 24px; margin: 0; border: 0; align-items: start; }
#concierge-dialog .rt-dialog__bar .rt-eyebrow { margin: 0 0 12px; }
#concierge-dialog .rt-dialog__bar h2 { font-size: 30px; line-height: 1.25; }
#concierge-dialog > .rt-concierge-form { padding: 0; }

/* Explicit height and appearance also apply to WebKit native selects. */
select, .rt-field select, .woocommerce form .form-row select, .woocommerce .woocommerce-ordering select,
.rt-editorial-home .rt-finder-shape select {
  -webkit-appearance: none; appearance: none; box-sizing: border-box;
  height: 50px; min-height: 50px; max-height: 50px; border: 1px solid #8b8881;
  border-radius: 3px; padding: 12px 42px 12px 14px; font: 400 16px/24px var(--rt-font-ui);
  background-color: transparent; color: inherit;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24'%3E%3Cpath d='m5 9 7 7 7-7' fill='none' stroke='%238b8881' stroke-width='1.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 14px center;
}
select option { background: #f9f7f2; color: #171719; }
.rt-finder-dimensions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; margin-top: 24px; }
.rt-editorial-home .rt-finder-dimensions .rt-finder-shape { width: 100%; margin-top: 0; }
@media (max-width: 767px) { .rt-finder-dimensions { grid-template-columns: minmax(0,1fr); } }
.select2-container .select2-selection--single { height: 50px; min-height: 50px; border-radius: 3px; }
.rt-gallery-arrows { margin-left: auto; }
.rt-watch-gallery__track { scrollbar-width: none; -ms-overflow-style: none; padding-bottom: 0; }
.rt-watch-gallery__track::-webkit-scrollbar { display: none; width: 0; height: 0; }

@media (min-width: 768px) {
  .rt-editorial-home .rt-hero, .rt-editorial-home .rt-hero__grid { min-height: 0; height: calc(100svh - var(--rt-announcement-height)); }
  .rt-editorial-home .rt-hero__grid { grid-template-rows: 128px minmax(0, 1fr) auto; padding-top: calc(var(--rt-header) + 28px); padding-bottom: 28px; gap: 20px; }
  .rt-editorial-home .rt-hero__model { height: 128px; min-height: 128px; max-height: 128px; align-content: center; }
  .rt-editorial-home .rt-hero__title { font-size: min(8.7vw, 168px, calc((100svh - 455px) / 3.2)); }
  .rt-editorial-home .rt-hero__copy { gap: 16px; }
  .rt-editorial-home .rt-hero__copy p { font-size: 15px; }
  .rt-editorial-home .rt-hero__details { padding-bottom: 16px; }
  .rt-editorial-home .rt-hero__details dl > div { padding-block: 10px; }
}
.rt-editorial-home .rt-brand-stage .rt-category-mosaic { grid-template-columns: repeat(3,minmax(0,1fr)); grid-template-rows: auto; gap: 12px; }
.rt-editorial-home .rt-brand-stage .rt-category-tile { grid-column: auto; grid-row: auto; min-height: 0; aspect-ratio: 3/2; padding: 26px; }
.rt-editorial-home .rt-category-tile > img { object-fit: cover; object-position: center; }
.rt-editorial-home .rt-category-tile--scene { background: #18181a; }
.rt-editorial-home .rt-category-tile--scene > img { inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.rt-category-tile::after { background: linear-gradient(0deg,rgba(9,9,11,.88),transparent 70%); }

.rt-condition-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; }
.rt-condition { display: flex; flex-direction: column; align-items: flex-start; text-align: left; min-width: 0; padding: 28px; background: #f0ece5; border: 1px solid #e0dbd2; }
.rt-condition__icon { display: inline-grid; place-items: center; width: 44px; height: 44px; border: 1px solid #b9a7a4; color: var(--rt-oxblood); margin-bottom: 28px; }
.rt-condition__icon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.4; }
.rt-condition h3 { font: 400 clamp(25px,1.7vw,32px)/1.22 var(--rt-font-editorial); margin: 0 0 16px; letter-spacing: -.035em; }
.rt-condition p { font-size: 14px; line-height: 1.8; margin: 0 0 24px; max-width: 44ch; }
.rt-condition .rt-text-link { margin-top: auto; font-size: 13px; }
.rt-benefits-note { max-width: 100ch; }

.rt-concierge-layout { grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); align-items: start; }
.rt-concierge-brief { min-width: 0; padding: 32px; border: 1px solid #464342; background: #151516; }
.rt-concierge-brief .rt-eyebrow { color: #c6beb3; margin-bottom: 28px; }
.rt-concierge-brief h3 { font: 400 clamp(32px,2.8vw,48px)/1.15 var(--rt-font-editorial); letter-spacing: -.035em; margin: 0 0 24px; }
.rt-concierge-brief p { font-size: 15px; line-height: 1.8; color: #cbc8c1; max-width: 45ch; }
.rt-concierge-brief dl { margin: 28px 0; }
.rt-concierge-brief dl > div { border-top: 1px solid #464342; padding: 18px 0; }
.rt-concierge-brief dt { font-size: 14px; margin-bottom: 6px; }
.rt-concierge-brief dd { margin: 0; font-size: 14px; line-height: 1.7; color: #cbc8c1; max-width: 45ch; }
.rt-concierge-brief .rt-text-link { font-size: 14px; }
.rt-editorial-home .rt-concierge__content > .rt-eyebrow { margin-bottom: 18px; }
.rt-editorial-home .rt-concierge__content h2.rt-macro { font-size: clamp(42px,3.6vw,64px); margin-bottom: 20px; }
.rt-editorial-home .rt-concierge__content > p:not(.rt-eyebrow) { margin-bottom: 24px; max-width: 62ch; font-size: 15px; }
.rt-concierge-form { width: 100%; max-width: none; display: grid; grid-template-columns: minmax(0,1fr); gap: 18px 24px; }
.rt-concierge-form > * { grid-column: 1/-1; }
.rt-concierge-form .rt-field, .rt-concierge-form > .rt-checkbox { min-width: 0; margin: 0; }
.rt-concierge-form .rt-field input:not([type=checkbox]) { height: 50px; min-height: 50px; }
.rt-concierge-form .rt-field textarea { height: 88px; min-height: 88px; line-height: 1.5; }
.rt-concierge-form .rt-checkbox { min-height: 0; font-size: 12px; line-height: 1.65; }
.rt-concierge-form > .rt-concierge-form__intro { margin: 0; font-size: 14px; line-height: 1.6; }
.rt-concierge-form .rt-concierge-extras .rt-field { margin-top: 14px; }
.rt-concierge-form .rt-upload-hint { margin: 4px 0 0; font-size: 12px; line-height: 1.6; }
.rt-concierge-form .rt-field input[type=file] {
  display: block; width: 100%; max-width: 100%; height: auto; min-height: 56px;
  padding: 8px; margin: 0; border: 1px solid #aaa49a; border-radius: 3px;
  line-height: 36px; font-size: 14px; background: transparent; color: inherit;
}
.rt-concierge-form input[type=file]::file-selector-button {
  box-sizing: border-box; min-height: 36px; margin: 0 12px 0 0; padding: 6px 12px;
  border: 1px solid currentColor; border-radius: 2px; background: transparent; color: inherit;
  font: 500 13px/22px var(--rt-font-ui); cursor: pointer;
}
.rt-editorial-home .rt-concierge__content .rt-concierge-form, .rt-consultation-form .rt-concierge-form, .rt-service-content .rt-concierge-form, #concierge-dialog .rt-concierge-form { max-width: none; grid-template-columns: repeat(2,minmax(0,1fr)); }
.rt-concierge__content .rt-concierge-form > .rt-field:has(input[name=name]), .rt-consultation-form .rt-concierge-form > .rt-field:has(input[name=name]), .rt-service-content .rt-concierge-form > .rt-field:has(input[name=name]), #concierge-dialog .rt-concierge-form > .rt-field:has(input[name=name]) { grid-column: 1; }
.rt-concierge__content .rt-concierge-form > .rt-field:has(input[name=contact]), .rt-consultation-form .rt-concierge-form > .rt-field:has(input[name=contact]), .rt-service-content .rt-concierge-form > .rt-field:has(input[name=contact]), #concierge-dialog .rt-concierge-form > .rt-field:has(input[name=contact]) { grid-column: 2; }
.rt-concierge-brief p { margin: 0 0 20px; }
.rt-scene-disclosure { margin: 18px 0 0; font-size: 12px; line-height: 1.7; color: var(--rt-muted); }
.rt-concierge-form .rt-button { min-height: 50px; }
.rt-editorial-home .rt-journal-card__image { aspect-ratio: 3/2; }
.rt-editorial-home .rt-journal-card__image img { aspect-ratio: 3/2; object-position: center; }

/* A contained image, independent of the Woo gallery slider and its white thumbnails. */
.single-product div.product { grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr); gap: 0 clamp(32px,4vw,64px); }
.rt-product-gallery { min-width: 0; padding: 24px 0 0; }
.rt-product-gallery__stage { background: #e8e4dd; height: min(64svh,660px); min-height: 360px; display: flex; justify-content: center; align-items: center; overflow: hidden; }
.rt-product-gallery--club .rt-product-gallery__stage { background: #18181a; }
.rt-product-gallery__photo { display: flex; min-width: 0; min-height: 0; width: 100%; height: 100%; padding: 32px; justify-content: center; align-items: center; }
.rt-product-gallery__photo img { display: block; min-height: 0; max-height: 100%; max-width: 100%; height: auto; width: auto; object-fit: contain; }
.rt-product-gallery--club .rt-product-gallery__photo img, .rt-product-photo-dialog--club .rt-product-photo-dialog__stage img { -webkit-mask-image: linear-gradient(to right,transparent,#000 24px,#000 calc(100% - 24px),transparent),linear-gradient(to bottom,transparent,#000 24px,#000 calc(100% - 24px),transparent); mask-image: linear-gradient(to right,transparent,#000 24px,#000 calc(100% - 24px),transparent),linear-gradient(to bottom,transparent,#000 24px,#000 calc(100% - 24px),transparent); -webkit-mask-composite: source-in; mask-composite: intersect; }
.rt-product-gallery__bar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px 16px; padding-block: 8px; border: 0; }
.rt-product-gallery__bar > span, .rt-product-gallery__note { font-size: 12px; line-height: 1.7; color: var(--rt-muted); }
.rt-product-gallery__expand { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; font-size: 13px; flex-shrink: 0; }
.rt-product-gallery__expand svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.4; }
.rt-product-gallery__views { display: flex; gap: 10px; padding-top: 16px; overflow-x: auto; scrollbar-width: none; }
.rt-product-gallery__views::-webkit-scrollbar { display: none; }
.rt-product-gallery__views button { background: transparent; padding: 3px; border: 1px solid transparent; width: 76px; height: 84px; flex-shrink: 0; cursor: pointer; }
.rt-product-gallery__views button[aria-pressed=true] { border-color: var(--rt-oxblood); }
.rt-product-gallery__views img { display: block; width: 100%; height: 100%; object-fit: contain; }
.rt-product-gallery__note { margin: 0; flex: 1 1 280px; }

/* Catalogue and related models share one responsive card rhythm. */
.rt-commerce-shell { --rt-products-columns: 2; }
.rt-commerce-shell ul.products,
.rt-commerce-shell ul.products[class*="columns-"],
.rt-commerce-shell.rt-grid-density-4 ul.products,
.rt-commerce-shell.rt-grid-density-5 ul.products,
.rt-commerce-shell.rt-grid-density-6 ul.products { grid-template-columns: repeat(var(--rt-products-columns),minmax(0,1fr)); }
.rt-commerce-shell .rt-product-card__footer { flex-wrap: wrap; }
.rt-density-toggle button { padding-inline: 12px; }
.rt-density-toggle button:disabled { color: #99958d; cursor: default; }
.rt-club-mega__service { grid-column: 1/-1; display: flex; flex-wrap: wrap; gap: 8px 28px; padding-top: 32px; border-top: 1px solid var(--rt-line); }
.rt-club-mega .rt-club-mega__service a { font: 500 14px/1.5 var(--rt-font-ui); min-height: 44px; display: inline-flex; align-items: center; }
.rt-mobile-nav { align-content: start; }
.rt-mobile-nav__service { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px 20px; }
.rt-mobile-nav__service a { font-weight: 500; letter-spacing: 0; text-transform: none; }
.rt-mobile-nav__service { margin-top: 24px; padding-block: 24px; }

/* Deliberate scroll affordance, shared by all requested horizontal strips. */
.rt-scroll-strip { min-width: 0; margin-block: 24px; }
.rt-scroll-strip .rt-collection-links { display: flex; flex-wrap: nowrap; gap: 8px; margin: 0; padding-bottom: 12px; overflow-x: auto; white-space: nowrap; }
.rt-collection-links a { flex: 0 0 auto; }
.rt-collection-links a[aria-current=page] { background: var(--rt-oxblood); border-color: var(--rt-oxblood); color: #fff; }
.rt-collection-links a[aria-current=page] small { color: #e8dadc; }
.rt-scroll-hint { margin: 8px 0 0; color: var(--rt-oxblood); font: 500 11px/1.5 var(--rt-font-ui); letter-spacing: .08em; text-transform: uppercase; text-align: right; }
.rt-scroll-arrows { display: flex; justify-content: flex-end; gap: 8px; margin-top: 8px; }
.rt-scroll-arrows[hidden] { display: none; }
.rt-scroll-arrows button { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid var(--rt-line); background: transparent; color: var(--rt-oxblood); cursor: pointer; }
.rt-scroll-arrows button:disabled { opacity: .3; cursor: default; }
.rt-scroll-arrows svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.4; }
.rt-scroll-arrows button:first-child svg { transform: rotate(180deg); }
@media (hover: hover) and (pointer: fine) { .rt-scroll-arrows button:not(:disabled):hover { border-color: var(--rt-oxblood); background: #eee7df; } }
@media (min-width: 768px) {
  .rt-scroll-strip { display: grid; grid-template-columns: minmax(0,1fr) auto; column-gap: 16px; align-items: center; }
  .rt-scroll-strip > nav, .rt-scroll-strip > ul, .rt-scroll-strip > .rt-gallery-filters { grid-column: 1/-1; min-width: 0; }
  .rt-scroll-hint { grid-column: 1; text-align: left; }
  .rt-scroll-arrows { grid-column: 2; }
  .rt-concierge-form .rt-field textarea { height: 64px; min-height: 64px; }
}
@media (max-width: 767px) { .rt-scroll-arrows { display: none; } }
.rt-scroll-strip > nav, .rt-scroll-strip > ul { scrollbar-width: thin; scrollbar-color: var(--rt-oxblood) #e5dfd7; overscroll-behavior-x: contain; scroll-padding-inline: 2px; }
.rt-scroll-strip > nav::-webkit-scrollbar, .rt-scroll-strip > ul::-webkit-scrollbar { display: block; height: 5px; }
.rt-scroll-strip > nav::-webkit-scrollbar-track, .rt-scroll-strip > ul::-webkit-scrollbar-track { background: #e5dfd7; }
.rt-scroll-strip > nav::-webkit-scrollbar-thumb, .rt-scroll-strip > ul::-webkit-scrollbar-thumb { background: var(--rt-oxblood); border-radius: 0; }
.rt-scroll-strip > nav:focus-visible, .rt-scroll-strip > ul:focus-visible { outline: 1px solid var(--rt-oxblood); outline-offset: 3px; }
.woocommerce div.product .woocommerce-tabs .rt-scroll-strip { margin: 0 0 28px; }
.woocommerce div.product .woocommerce-tabs .rt-scroll-strip ul.tabs { flex-wrap: nowrap; overflow-x: auto; white-space: nowrap; padding: 0 0 12px; margin: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { flex: 0 0 auto; }
.single-product .related > .rt-scroll-strip { margin: 0; }
.rt-commerce-shell .related ul.products[class*="columns-"] { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: calc((100% - (var(--rt-products-columns) - 1)*24px)/var(--rt-products-columns)); gap: 24px; overflow-x: auto; scroll-snap-type: x proximity; padding-bottom: 12px; margin-bottom: 0; }
.rt-commerce-shell .related ul.products li.product { scroll-snap-align: start; }
.rt-mobile-purchase > div > span { font: 650 20px/1.3 var(--rt-font-ui); margin-top: 5px; }
.single-product.rt-product-in-cart { padding-bottom: 0; }

/* A reading room, using the same porcelain, typography and wine accents. */
.rt-knowledge__hero { padding-block: clamp(40px,5vw,76px); background: var(--rt-porcelain); }
.rt-knowledge__heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.8fr); align-items: end; gap: 48px; }
.rt-knowledge__heading .rt-eyebrow { margin: 0 0 20px; color: var(--rt-oxblood); }
.rt-knowledge__heading h1 { margin: 0; font: 400 clamp(48px,6vw,88px)/1.12 var(--rt-font-editorial); letter-spacing: -.045em; }
.rt-knowledge__heading > p, .rt-knowledge__heading > .rt-page-hero__copy { margin: 0; max-width: 56ch; font-size: 17px; line-height: 1.8; color: var(--rt-smoke); }
.rt-knowledge__section-heading { display: flex; align-items: end; justify-content: space-between; gap: 32px; margin-bottom: 32px; }
.rt-knowledge__section-heading h2 { margin: 0; font: 400 clamp(28px,3vw,42px)/1.25 var(--rt-font-editorial); letter-spacing: -.035em; }
.rt-knowledge__section-heading p { margin: 0; max-width: 50ch; color: var(--rt-smoke); font-size: 14px; line-height: 1.7; }
.rt-reading-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 40px 24px; }
.rt-reading-card { min-width: 0; }
.rt-reading-card > a { display: flex; flex-direction: column; height: 100%; text-decoration: none; }
.rt-reading-card__image { overflow: hidden; aspect-ratio: 3/2; background: var(--rt-porcelain); }
.rt-reading-card__image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.rt-reading-card__copy { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; flex: 1; padding-top: 24px; }
.rt-reading-card__copy .rt-eyebrow { margin: 0; font-size: 10px; color: var(--rt-oxblood); }
.rt-reading-card__copy h2, .rt-reading-card__copy h3 { margin: 0; font: 400 clamp(25px,2.2vw,34px)/1.35 var(--rt-font-editorial); letter-spacing: -.035em; }
.rt-reading-card__copy > p:not(.rt-eyebrow) { margin: 0; max-width: 52ch; color: var(--rt-smoke); font-size: 14px; line-height: 1.8; }
.rt-reading-card__meta { display: flex; flex-wrap: wrap; gap: 16px; font-size: 11px; color: var(--rt-smoke); }
.rt-reading-card__action { display: inline-flex; align-items: center; gap: 12px; padding-top: 8px; margin-top: auto; color: var(--rt-oxblood); font: 600 13px/1.6 var(--rt-font-ui); }
.rt-reading-card__action svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.4; }
.rt-reading-card > a:focus-visible { outline: 2px solid var(--rt-oxblood); outline-offset: 6px; }
@media (hover:hover) { .rt-reading-card > a:hover h2, .rt-reading-card > a:hover h3 { color: var(--rt-oxblood); } }
.rt-knowledge__note { margin: 36px 0 0; max-width: 80ch; color: var(--rt-smoke); font-size: 13px; line-height: 1.8; }
.rt-knowledge__help { background: var(--rt-porcelain); padding-block: clamp(32px,4vw,56px); }
.rt-knowledge__help > .rt-container { display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.rt-knowledge__help .rt-eyebrow { margin: 0 0 16px; color: var(--rt-oxblood); }
.rt-knowledge__help h2 { margin: 0 0 16px; font: 400 clamp(28px,3vw,42px)/1.25 var(--rt-font-editorial); letter-spacing: -.035em; }
.rt-knowledge__help p:not(.rt-eyebrow) { margin: 0; max-width: 65ch; color: var(--rt-smoke); font-size: 14px; line-height: 1.8; }
.rt-knowledge .pagination { margin-top: 48px; }
.rt-knowledge .pagination .nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.rt-knowledge .pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 10px 14px; border: 1px solid var(--rt-line); font-size: 14px; }
.rt-knowledge .pagination .current, .rt-knowledge .pagination a:hover { background: var(--rt-oxblood); color: #fff; border-color: var(--rt-oxblood); }
.rt-knowledge .pagination .dots { border-color: transparent; }
.rt-reading-article .rt-article__header { padding-block: clamp(32px,5vw,72px); }
.rt-reading-article .rt-article__header > .rt-container { max-width: 1060px; }
.rt-reading-article__back { display: inline-block; margin-bottom: 28px; font-size: 13px; color: var(--rt-oxblood); }
.rt-reading-article .rt-article__header h1 { margin-bottom: 24px; font-size: clamp(34px,4.5vw,64px); line-height: 1.25; overflow-wrap: anywhere; }
.rt-reading-article__lead { margin: 0 0 24px; max-width: 65ch; color: var(--rt-smoke); font-size: 17px; line-height: 1.8; }
.rt-reading-article .rt-article__meta { flex-wrap: wrap; gap: 12px 24px; font-size: 11px; letter-spacing: 0; text-transform: none; }
.rt-reading-article .rt-article__cover { margin-block: 32px 0; max-width: 1060px; }
.rt-reading-article .rt-article__cover img { display: block; height: auto; max-height: 560px; object-fit: contain; }
.rt-reading-article .rt-article__content { max-width: 790px; padding-block: 40px; }
.rt-reading-article .rt-content > * { max-width: 100%; }
.rt-reading-article .rt-content p, .rt-reading-article .rt-content li { font-size: 16px; line-height: 1.9; }
.rt-reading-article .rt-content h2 { margin-block: 36px 20px; font-size: clamp(26px,3vw,36px); }
.rt-reading-article .rt-content h3 { margin-block: 28px 16px; font-size: 24px; }
.rt-reading-article .rt-content figure { margin: 28px 0; }
.rt-reading-article .rt-content figcaption { font-size: 12px; color: var(--rt-smoke); margin-top: 10px; }
.rt-reading-article .rt-content blockquote { margin: 28px 0; padding: 20px 24px; border-left: 3px solid var(--rt-oxblood); background: var(--rt-porcelain); }
.rt-reading-article .rt-content blockquote > :last-child { margin-bottom: 0; }
.rt-reading-article .rt-content > :last-child { margin-bottom: 0; }
.rt-reading-article .rt-article__footer { max-width: 1060px; }
.rt-reading-article .rt-article__footer .rt-reading-article__all { display: inline-flex; align-items: center; min-height: 50px; padding: 12px 24px; margin: 0 0 32px; border: 1px solid var(--rt-oxblood); background: var(--rt-oxblood); color: #fff; font: 500 14px/24px var(--rt-font-ui); }
.rt-reading-article .rt-article__footer .nav-links { gap: 20px; }
@media (max-width:1199px) { .rt-reading-grid:not(.rt-reading-grid--guides) { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width:767px) {
  .rt-knowledge__hero { padding-block: 36px; }
  .rt-knowledge__heading { grid-template-columns: minmax(0,1fr); gap: 24px; }
  .rt-knowledge__heading h1 { font-size: 46px; }
  .rt-knowledge__heading > p { font-size: 15px; }
  .rt-knowledge__section-heading { flex-direction: column; align-items: flex-start; gap: 12px; margin-bottom: 24px; }
  .rt-reading-grid, .rt-reading-grid:not(.rt-reading-grid--guides) { grid-template-columns: minmax(0,1fr); gap: 36px; }
  .rt-reading-card__copy { padding-top: 20px; }
  .rt-knowledge__help > .rt-container { flex-direction: column; align-items: flex-start; gap: 24px; }
  .rt-reading-article .rt-article__header h1 { font-size: 34px; }
  .rt-reading-article__lead { font-size: 15px; }
  .rt-reading-article .rt-article__content { padding-block: 32px; }
  .rt-reading-article .rt-content p, .rt-reading-article .rt-content li { font-size: 15px; }
}
@media (min-width: 768px) { .rt-commerce-shell { --rt-products-columns: 3; } }
@media (min-width: 1180px) {
  .rt-commerce-shell { --rt-products-columns: 4; }
  .rt-commerce-shell.rt-grid-density-4 { --rt-products-columns: 4; }
  .rt-commerce-shell.rt-grid-density-5, .rt-commerce-shell.rt-grid-density-6 { --rt-products-columns: 4; }
}
@media (min-width: 1440px) {
  .rt-commerce-shell { --rt-products-columns: 5; }
  .rt-commerce-shell.rt-grid-density-5, .rt-commerce-shell.rt-grid-density-6 { --rt-products-columns: 5; }
}
@media (min-width: 1800px) {
  .rt-commerce-shell { --rt-products-columns: 6; }
  .rt-commerce-shell:has(.rt-shop-toolbar), .rt-commerce-shell.rt-search-page { --rt-products-columns: 5; }
  .rt-commerce-shell.rt-grid-density-4 { --rt-products-columns: 4; }
  .rt-commerce-shell.rt-grid-density-6 { --rt-products-columns: 6; }
}
@media (max-width: 1179px) { .rt-shop-toolbar .rt-density-toggle { display: none; } }
.rt-product-photo-dialog { position: fixed; inset: 0; margin: auto; width: min(1100px,calc(100vw - 32px)); max-width: none; max-height: calc(100dvh - 32px); padding: 20px; border: 0; background: #18181a; color: #f9f7f2; overflow: auto; }
.rt-product-photo-dialog .rt-dialog__bar { padding: 0 0 16px; margin: 0; border: 0; }
.rt-product-photo-dialog .rt-dialog__bar h2 { font: 400 16px/1.5 var(--rt-font-ui); max-width: calc(100% - 60px); }
.rt-product-photo-dialog__stage { display: flex; justify-content: center; align-items: center; height: min(75svh,850px,calc(100dvh - 132px)); }
.rt-product-photo-dialog__stage img { display: block; max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; }
.single-product div.product div.summary { padding: 24px 0 32px; max-width: none; }
.single-product div.product div.summary .rt-product-facts { margin-block: 16px; }
.single-product div.product div.summary form.cart { padding-block: 16px; margin-block: 16px !important; }
/* WooCommerce clearfix pseudo-elements become unwanted flex items + edge gaps. */
.single-product div.product div.summary form.cart::before,
.single-product div.product div.summary form.cart::after,
.single-product .woocommerce-variation-add-to-cart::before,
.single-product .woocommerce-variation-add-to-cart::after { display: none; }
.single-product div.product div.summary form.cart { padding-inline: 0; width: 100%; }
.single-product div.product div.summary form.cart .quantity { margin: 0; }
.single-product div.product div.summary form.cart .quantity .qty,
.single-product div.product div.summary form.cart .single_add_to_cart_button { height: 50px; min-height: 50px; box-sizing: border-box; }
.single-product div.product div.summary form.cart .quantity .qty { padding-block: 0; }
.single-product div.product div.summary form.cart .single_add_to_cart_button { display: flex; align-items: center; justify-content: center; padding-block: 0; }

/* The watch spans the same reading area as its name, quantity and total. */
.rt-sidecart-item { grid-template-columns: 160px minmax(0,1fr); }
.rt-sidecart-item__photo { position: relative; display: block; align-self: stretch; }
.rt-sidecart-item__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
.single-product div.product div.summary .rt-service-notes { gap: 12px; padding-block: 16px; margin-block: 0 16px; }
.single-product div.product div.summary .rt-service-notes li { margin: 0; padding: 0; }
.single-product div.product div.summary .rt-open-concierge { margin-bottom: 16px; }
.single-product div.product div.summary .product_meta { padding-top: 16px; margin-top: 16px; }
.single-product div.product .woocommerce-tabs { margin-top: 24px; padding-block: 0 32px; }
.single-product #tab-additional_information { max-width: none; width: 100%; }
.woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: 12px; padding: 0; margin: 0 0 32px; overflow: visible; border: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before, .woocommerce div.product .woocommerce-tabs ul.tabs::after, .woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; border: 0; box-shadow: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border: 0; border-radius: 0; padding: 0; margin: 0; background: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 12px 24px; border: 1px solid var(--rt-oxblood); background: transparent; color: var(--rt-oxblood); font: 500 15px/1.5 var(--rt-font-ui); text-transform: none; letter-spacing: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { background: var(--rt-oxblood); color: #fff; border-bottom-color: var(--rt-oxblood); }
.woocommerce div.product .woocommerce-tabs .panel { background: transparent; padding: 0; margin: 0; }
.rt-passport { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; border: 0; }
.rt-passport__group { min-width: 0; padding: 32px; background: #f0ece5; }
.rt-passport__group h2 { font: 400 28px/1.2 var(--rt-font-editorial); margin: 0 0 24px; letter-spacing: -.035em; }
.rt-passport__group dl { margin: 0; }
.rt-passport__group dl > div { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: 24px; padding-block: 8px; border: 0; font-size: 14px; line-height: 1.6; }
.rt-passport__group dt { color: var(--rt-muted); }
.rt-passport__group dd { margin: 0; overflow-wrap: anywhere; }
.rt-passport__note { font-size: 13px; line-height: 1.8; color: var(--rt-muted); margin-top: 24px; max-width: 100ch; }
.rt-product-description { gap: 24px; }
.rt-product-description > div { padding: 32px; background: #f0ece5; }
.woocommerce div.product .woocommerce-tabs .panel .rt-product-description p { max-width: none; }
.rt-product-description > div > :last-child { margin-bottom: 0; }
.rt-product-description .rt-text-link { margin-top: 8px; }

/* Service documents keep the heading and its body in one reading flow. */
.rt-service-hero { padding: clamp(40px,4vw,72px) 0 32px; }
.rt-service-hero .rt-eyebrow { margin: 0 0 20px; }
.rt-service-hero h1 { font: 400 clamp(40px,4.5vw,76px)/1.12 var(--rt-font-editorial); letter-spacing: -.04em; margin: 0; max-width: 24ch; }
.rt-service-layout { display: grid; grid-template-columns: minmax(0,1fr); gap: 32px; padding-block: 16px 80px; align-items: start; }
.rt-service-nav { position: static; border-block: 1px solid var(--rt-line); }
.rt-service-nav summary { display: flex; align-items: center; gap: 16px; min-height: 52px; padding-block: 12px; cursor: pointer; list-style: none; font-size: 13px; }
.rt-service-nav summary::-webkit-details-marker { display: none; }
.rt-service-nav summary strong { display: none; }
.rt-service-nav summary svg { margin-left: auto; }
.rt-service-nav[open] summary svg { transform: rotate(180deg); }
.rt-service-nav nav { display: flex; flex-wrap: wrap; gap: 8px; padding-bottom: 20px; }
.rt-service-nav a { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 44px; padding: 10px 16px; font-size: 14px; line-height: 1.6; text-decoration: none; }
.rt-service-nav a[aria-current=page] { background: var(--rt-oxblood); color: #fff; }
.rt-service-nav a:not([aria-current]):hover { background: #f0ece5; }
.rt-service-nav svg { width: 16px; flex-shrink: 0; fill: none; stroke: currentColor; }
.rt-service-content { display: grid; gap: 24px; min-width: 0; width: 100%; max-width: none; }
.rt-service-section { min-width: 0; padding: 28px 32px; background: #f0ece5; }
.rt-service-section--intro { background: transparent; padding: 0 0 12px; }
.rt-service-section h2 { font: 400 clamp(27px,2.3vw,36px)/1.25 var(--rt-font-editorial); letter-spacing: -.03em; margin: 0 0 20px; }
.rt-service-section h3 { font: 400 26px/1.3 var(--rt-font-editorial); margin: 24px 0 16px; }
.rt-service-section p, .rt-service-section li { font-size: 16px; line-height: 1.75; }
.rt-service-section p { max-width: 85ch; margin: 0 0 16px; }
.rt-service-section ul, .rt-service-section ol { margin: 0 0 16px; padding-left: 22px; }
.rt-service-section li + li { margin-top: 6px; }
.rt-service-section > :last-child { margin-bottom: 0; }
.rt-service-section > .rt-button { margin-top: 12px; }
.rt-service-section .rt-faq-list details { padding: 0; border: 0; border-bottom: 1px solid #d7d0c5; }
.rt-service-section .rt-faq-list details:last-child { border: 0; }
.rt-service-section .rt-faq-list summary { font-size: 18px; line-height: 1.6; }
.rt-service-section .rt-faq-list p { margin: 16px 0 0; }
.rt-service-content > .rt-faq-list { width: 100%; max-width: none; }
.rt-faq-list > details { border-bottom: 1px solid var(--rt-line); }
.rt-faq-list > details:first-child { border-top: 1px solid var(--rt-line); }
.rt-faq-list > details > summary { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 24px 0; min-height: 72px; cursor: pointer; list-style: none; font: 500 18px/1.6 var(--rt-font-ui); }
.rt-faq-list > details > summary::-webkit-details-marker { display: none; }
.rt-faq-list > details > summary::after { content: '+'; color: var(--rt-oxblood); font: 400 24px/1 var(--rt-font-ui); width: 24px; flex-shrink: 0; text-align: center; }
.rt-faq-list > details[open] > summary::after { content: '−'; }
.rt-faq-list > details[open] > summary { color: var(--rt-oxblood); }
.rt-faq-list > details > p { margin: 0 48px 24px 0; max-width: 90ch; font-size: 16px; line-height: 1.75; }
.rt-faq-list > .rt-seo-links { margin-top: 32px; }
.rt-service-content .rt-concierge-form { margin-top: 24px; }
.rt-service-content .rt-contact-grid { display: grid; gap: 24px; }

@media (min-width: 1024px) {
  .rt-service-content:has(> .rt-service-section:not(.rt-service-section--intro) ~ .rt-service-section:not(.rt-service-section--intro)),
  .rt-service-content > .rt-policy:has(> section ~ section) { grid-template-columns: repeat(2,minmax(0,1fr)); align-items: stretch; }
  .rt-service-content > :not(.rt-service-section), .rt-service-section--intro,
  .rt-service-content > .rt-policy > :not(section) { grid-column: 1/-1; }
  .rt-service-section p, .rt-service-content .rt-policy p, .rt-service-content .rt-policy dd { max-width: none; }
}

.rt-about-hero__grid { align-items: end; gap: 64px; }
.rt-about-hero .rt-inline-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; width: min(100%,480px); }
.rt-about-hero .rt-inline-links .rt-button { min-width: 0; padding-inline: 16px; white-space: nowrap; }
.rt-page-content--editorial .rt-section--dark:has(> .rt-about-process) { background: #1d1d1e; border-bottom: 1px solid var(--rt-line-dark); }
.rt-about-brief { padding: 32px; background: #1d1d1e; }
.rt-about-brief h2 { font-size: clamp(32px,3vw,48px); }
.rt-about-brief nav { display: grid; margin-top: 28px; gap: 8px; }
.rt-about-brief nav a { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 48px; padding-block: 10px; font-size: 15px; }
.rt-about-brief nav svg { width: 20px; fill: none; stroke: currentColor; }
.rt-about-intro, .rt-about-detail, .rt-about-process { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 64px; align-items: start; }
.rt-about-intro > .rt-reading, .rt-about-detail > .rt-reading, .rt-about-process > .rt-reading { width: 100%; max-width: 58ch; }
.rt-about-paths p { max-width: 58ch; }

@media (max-width: 1200px) {
  .rt-condition-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .rt-condition { padding: 24px; }
}
@media (max-width: 1100px) {
  .rt-about-intro, .rt-about-detail, .rt-about-process { gap: 32px; }
}
@media (max-width: 1179px) {
  .rt-editorial-home .rt-final-layout .rt-newsletter__form > .rt-inline-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; align-items: center; }
  .rt-editorial-home .rt-final-layout .rt-inline-links > a { min-width: 0; min-height: 50px; width: 100%; padding-inline: 8px; font-size: 12px; justify-content: center; gap: 6px; white-space: nowrap; }
  .rt-editorial-home .rt-final-layout .rt-inline-links > a svg { width: 16px; height: 16px; flex-basis: 16px; }
}
@media (max-width: 1023px) {
  .rt-editorial-home .rt-final-layout { grid-template-columns: minmax(0,1fr); }
  .rt-editorial-home .rt-brand-stage .rt-category-mosaic { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .rt-concierge-layout { gap: 32px; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); }
  .rt-concierge-brief { padding: 24px; }
  .rt-concierge-brief h3 { font-size: 32px; }
  .rt-editorial-home .rt-concierge__content .rt-concierge-form, .rt-consultation-form .rt-concierge-form, .rt-service-content .rt-concierge-form { grid-template-columns: minmax(0,1fr); }
  .rt-concierge__content .rt-concierge-form > .rt-field:has(input[name=contact]), .rt-consultation-form .rt-concierge-form > .rt-field:has(input[name=contact]), .rt-service-content .rt-concierge-form > .rt-field:has(input[name=contact]) { grid-column: 1; }
  .rt-service-layout { grid-template-columns: minmax(0,1fr); gap: 32px; }
  .rt-about-hero__grid { gap: 32px; }
}
@media (max-width: 767px) {
  .rt-sidecart-item { grid-template-columns: 140px minmax(0,1fr); }
  .rt-editorial-home .rt-brand-stage .rt-category-mosaic { gap: 6px; }
  .rt-editorial-home .rt-brand-stage .rt-category-tile { grid-column: auto; grid-row: auto; aspect-ratio: 4/5; min-height: 0; padding: 18px; }
  .rt-editorial-home .rt-category-tile--catalogue > img { inset: 12px 8px 70px; width: calc(100% - 16px); height: calc(100% - 82px); object-position: center; }
  .rt-editorial-home .rt-brand-stage .rt-category-tile__content small { display: none; }
  .rt-editorial-home .rt-brand-stage .rt-category-tile__content strong { font-size: 24px; }
  .rt-concierge-layout { grid-template-columns: minmax(0,1fr); }
  .rt-concierge-brief { order: 2; }
  .rt-editorial-home .rt-concierge__content h2.rt-macro { font-size: clamp(38px,10vw,58px); }
  .rt-condition-grid { grid-template-columns: minmax(0,1fr); gap: 12px; }
  .rt-condition { padding: 24px; }
  .rt-condition__icon { margin-bottom: 20px; }
  .rt-condition h3 { font-size: 28px; }
  .rt-product-gallery { padding-top: 12px; }
  .rt-product-gallery__stage { min-height: 0; height: min(110vw,540px); }
  .rt-product-gallery__photo { padding: 20px; }
  .rt-product-gallery__bar { align-items: start; }
  .rt-product-gallery__bar > span { max-width: 22ch; }
  .single-product div.product div.summary { padding: 24px 0 32px; }
  .rt-passport { grid-template-columns: minmax(0,1fr); gap: 16px; }
  .rt-passport__group { padding: 20px; }
  .rt-passport__group h2 { font-size: 25px; }
  .rt-passport__group dl > div { gap: 12px; font-size: 13px; }
  .woocommerce div.product .woocommerce-tabs ul.tabs { gap: 8px; }
  .woocommerce div.product .woocommerce-tabs ul.tabs li a { font-size: 14px; padding-inline: 16px; }
  .rt-commerce-shell .related ul.products[class*="columns-"] { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: calc((100% - 12px)/2.08); gap: 12px; overflow-x: auto; scroll-snap-type: x proximity; padding-bottom: 12px; margin-bottom: 0; }
  .rt-editorial-home .rt-journal-card a { grid-template-columns: minmax(0,1fr); gap: 12px; }
  .rt-editorial-home .rt-journal-card__image { grid-column: 1; grid-row: auto; width: 100%; aspect-ratio: 3/2; margin: 0 0 4px; }
  .rt-editorial-home .rt-journal-card__image img, .rt-editorial-home .rt-journal-card:first-child .rt-journal-card__image img { width: 100%; aspect-ratio: 3/2; }
  /* Retain the full watch face near the right edge, above most of the headline. */
  .rt-editorial-home .rt-hero__media[data-hero-media] img { width: 180%; left: -55%; right: auto; top: 23%; height: auto; }
  .rt-editorial-home .rt-hero__veil { background: linear-gradient(180deg,rgba(10,10,12,.55),rgba(10,10,12,.06) 26%,rgba(10,10,12,.45) 52%,rgba(10,10,12,.99) 86%),linear-gradient(90deg,rgba(10,10,12,.72),rgba(10,10,12,0) 80%); }
  .rt-product-description > div { padding: 20px; }
  #concierge-dialog .rt-concierge-form { grid-template-columns: minmax(0,1fr); }
  #concierge-dialog .rt-concierge-form > .rt-field:has(input[name=contact]) { grid-column: 1; }
  .rt-product-description { grid-template-columns: minmax(0,1fr); gap: 16px; }
  .rt-product-photo-dialog { width: calc(100vw - 24px); padding: 12px; max-height: calc(100dvh - 24px); }
  .rt-product-photo-dialog .rt-dialog__bar h2 { font-size: 14px; }
  .rt-product-photo-dialog__stage { height: min(calc((100vw - 48px) * 1.25),calc(100dvh - 148px)); }
  .rt-service-layout { grid-template-columns: minmax(0,1fr); gap: 24px; padding-bottom: 56px; }
  .rt-service-nav { position: static; }
  .rt-service-nav summary { display: grid; grid-template-columns: minmax(0,1fr) 20px; gap: 4px 16px; padding-block: 16px; }
  .rt-service-nav summary > span { font-size: 11px; color: var(--rt-muted); }
  .rt-service-nav summary strong { display: block; font-size: 15px; font-weight: 500; }
  .rt-service-nav summary svg { grid-column: 2; grid-row: 1/3; }
  .rt-service-nav nav { display: grid; grid-template-columns: minmax(0,1fr); gap: 0; padding-bottom: 16px; }
  .rt-service-nav a { font-size: 14px; padding: 10px 12px; min-height: 44px; }
  .rt-service-section { padding: 24px 20px; }
  .rt-service-section--intro { padding: 0 0 4px; }
  .rt-about-hero__grid { grid-template-columns: minmax(0,1fr); gap: 32px; }
  .rt-about-hero .rt-inline-links { gap: 8px; }
  .rt-about-hero .rt-inline-links .rt-button { padding-inline: 8px; font-size: 12px; gap: 8px; }
  .rt-about-hero .rt-inline-links .rt-button svg { width: 14px; height: 14px; }
  .rt-faq-list > details > summary { font-size: 16px; padding-block: 20px; gap: 16px; }
  .rt-faq-list > details > p { margin-right: 0; font-size: 15px; }
  .rt-gallery-card__price { margin-top: 8px; }
  .rt-about-brief { padding: 24px; }
  .rt-about-intro, .rt-about-detail, .rt-about-process { grid-template-columns: minmax(0,1fr); gap: 24px; }
}
@media (max-width: 374px) {
  .rt-sidecart-item { grid-template-columns: 112px minmax(0,1fr); }
  .rt-editorial-home .rt-final-layout .rt-inline-links > a svg { display: none; }
  .rt-about-hero .rt-inline-links .rt-button { font-size: 11px; gap: 6px; }
}
@media (max-width: 767px) and (max-height: 780px) {
  .rt-editorial-home .rt-hero, .rt-editorial-home .rt-hero__grid { height: calc(100svh - var(--rt-announcement-height)); min-height: 0; }
  .rt-editorial-home .rt-hero__grid { grid-template-rows: auto minmax(0,1fr) auto auto auto; padding-top: calc(var(--rt-header) + 16px); padding-bottom: 16px; gap: 12px; }
  .rt-editorial-home .rt-hero__title { font-size: clamp(38px,13.5vw,82px); }
  .rt-editorial-home .rt-hero__copy { gap: 12px; }
  .rt-editorial-home .rt-hero__copy p { font-size: 13px; line-height: 1.55; }
  .rt-editorial-home .rt-hero__details dl > div { padding-top: 8px; }
  .rt-editorial-home .rt-hero__switcher { gap: 0 14px; }
  .rt-editorial-home .rt-hero__switcher button { font-size: 10px; min-height: 36px; }
}
@media (max-width: 767px) and (max-height: 700px) {
  .rt-editorial-home .rt-hero__kicker { display: none; }
  .rt-editorial-home .rt-hero__grid { grid-template-rows: 0 minmax(0,1fr) auto auto auto; gap: 10px; }
  .rt-editorial-home .rt-hero__title { font-size: clamp(36px,12vw,68px); }
}
