/* V4.9: carry the approved home's material, rhythm and restraint into interiors.
   Scoped presentation only. Original blocks, photos, text and queries remain. */
body.rrom-interior-continuity {
  --rrom-base: #fcfbf6;
  --rrom-ink: #07354d;
  --rrom-deep: #07354d;
  --rrom-green: #155f37;
  --rrom-sage: #edf2e7;
  --rrom-line: #d8e0d2;
  --rrom-interior-space: clamp(64px,6.5vw,104px);
  --rrom-interior-gap: clamp(32px,4.5vw,64px);
  background: var(--rrom-base);
}
body.rrom-interior-continuity :is(.rrom-reading-shell,.rrom-blog-shell,.rrom-comments-shell) {
  background: var(--rrom-base) !important;
  padding-inline: 48px !important;
}
body.rrom-interior-continuity .rrom-main { background: var(--rrom-base); }
body.rrom-interior-continuity .rrom-page-heading {
  width: calc(100% - 96px);
  max-width: 1360px;
  margin: 28px auto 56px !important;
  padding: 28px 48px 46px !important;
  border: 1px solid var(--rrom-line);
  border-radius: 28px;
  background: var(--rrom-sage) !important;
}
body.rrom-interior-continuity .rrom-page-heading::before,
body.rrom-interior-continuity .rrom-page-heading::after { display: none; }
body.rrom-interior-continuity .rrom-page-heading > * { max-width: none !important; }
body.rrom-interior-continuity .rrom-breadcrumbs { margin-bottom: 24px !important; }
body.rrom-interior-continuity .rrom-breadcrumbs a { color: var(--rrom-green) !important; }
body.rrom-interior-continuity :is(.rrom-page-heading,.rrom-blog-shell) > .rrom-eyebrow {
  display: flex;
  gap: 14px;
  align-items: center;
  color: var(--rrom-green) !important;
  font-size: 11px !important;
  letter-spacing: .14em !important;
  margin-bottom: 18px !important;
}
body.rrom-interior-continuity :is(.rrom-page-heading,.rrom-blog-shell) > .rrom-eyebrow::before {
  content: '';
  width: 28px;
  height: 2px;
  flex: 0 0 28px;
  background: currentColor;
}
body.rrom-interior-continuity :is(.rrom-page-heading h1,.rrom-blog-title) {
  color: var(--rrom-ink) !important;
  font-family: var(--rrom-heading) !important;
  font-size: clamp(44px,5.2vw,76px) !important;
  font-weight: 400 !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
  text-wrap: balance;
  overflow-wrap: break-word;
}
body.rrom-interior-continuity.single .rrom-page-heading h1 { max-width: 24ch !important; }
body.rrom-interior-continuity .rrom-page-heading .wp-block-post-date { margin-top: 24px; color: var(--rrom-green) !important; }
body.rrom-interior-continuity .rrom-reading { --wp--style--global--wide-size: 1360px; }
body.rrom-interior-continuity .rrom-reading > .wp-block-group.alignfull {
  max-width: 1360px;
  margin-inline: auto !important;
  background: transparent !important;
  padding-block: 0 64px !important;
}
body.rrom-interior-continuity .rrom-reading > .wp-block-group + .wp-block-group { padding-top: 52px !important; border-top: 1px solid var(--rrom-line); }
body.rrom-interior-continuity .rrom-reading :is(p,li) { font-size: 16px; line-height: 1.85; }
body.rrom-interior-continuity .rrom-reading .has-text-align-justify { text-align: start; }
body.rrom-interior-continuity .rrom-reading :is(h2,h3,h4) {
  color: var(--rrom-ink);
  letter-spacing: -.025em;
  text-wrap: balance;
}
body.rrom-interior-continuity .rrom-reading h2 { font-size: clamp(32px,3.2vw,46px) !important; line-height: 1.14; }
body.rrom-interior-continuity .rrom-reading h3 { font-size: clamp(28px,2.5vw,36px) !important; line-height: 1.2; color: var(--rrom-green); }
body.rrom-interior-continuity .rrom-reading h4 { font-size: clamp(25px,2.2vw,32px) !important; line-height: 1.2; }
body.rrom-interior-continuity .rrom-reading .wp-block-image:not(:has(img.wp-image-219)) {
  overflow: hidden;
  border: 1px solid var(--rrom-line);
  border-radius: 24px;
  background: #fffefa;
}
body.rrom-interior-continuity .rrom-reading .wp-block-image img {
  display: block;
  width: 100%;
  height: auto !important;
  max-height: 680px;
  border-radius: 22px;
  object-fit: contain !important;
}
body.rrom-interior-continuity .rrom-reading .wp-block-image figcaption { padding: 0 18px 14px; margin-top: 14px; }
body.rrom-interior-continuity .rrom-reading .wp-block-column { min-width: 0; }
body.rrom-interior-continuity.rrom-interior-association .rrom-reading > .wp-block-group:first-child > .wp-block-columns:first-child > .wp-block-column:first-child > p {
  color: var(--rrom-green);
  font-family: var(--rrom-heading);
  font-size: 24px;
  line-height: 1.5;
}
body.rrom-interior-continuity.rrom-interior-association .rrom-reading > .wp-block-group:first-child > .wp-block-columns:first-child > .wp-block-column:first-child > p strong { font-weight: 400; }
/* The existing project groups become the same quiet cards as the home. */
body.rrom-interior-continuity.rrom-interior-projects .rrom-reading h3.has-background {
  margin-block: 40px 24px;
  padding: 28px 32px;
  border-radius: 22px;
  color: #fcfbf6 !important;
  background: var(--rrom-ink) !important;
}
body.rrom-interior-continuity.rrom-interior-projects .rrom-reading .wp-block-columns:has(.is-service-name) {
  padding: 30px 32px !important;
  margin-block: 18px !important;
  gap: 48px;
  border: 1px solid var(--rrom-line);
  border-radius: 22px;
  background: #fffefa;
}
body.rrom-interior-continuity .rrom-reading .is-service-name { max-width: 24ch; }
body.rrom-interior-continuity .rrom-reading .is-service-link {
  margin-top: 18px;
  padding-top: 10px;
  border-top: 1px solid var(--rrom-line);
  color: var(--rrom-green);
}
body.rrom-interior-continuity .rrom-reading .is-service-link a { color: var(--rrom-green) !important; min-height: 48px; }
/* Institute: the whole real photograph, with its existing message below it. */
body.rrom-interior-continuity.rrom-interior-institute .rrom-reading > .wp-block-cover {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-height: 0 !important;
  aspect-ratio: auto;
  padding: 0 !important;
  border: 1px solid var(--rrom-line);
  border-radius: 24px;
  background: #fffefa;
}
body.rrom-interior-continuity.rrom-interior-institute .rrom-reading > .wp-block-cover > img {
  position: relative;
  width: 100%;
  height: auto;
  object-fit: contain;
  max-height: 680px;
  border-radius: 0;
}
body.rrom-interior-continuity.rrom-interior-institute .rrom-reading > .wp-block-cover > .wp-block-cover__background { display: none; }
body.rrom-interior-continuity.rrom-interior-institute .wp-block-cover__inner-container { padding: 28px 32px; }
body.rrom-interior-continuity.rrom-interior-institute .rrom-reading > .wp-block-cover mark {
  display: block;
  max-width: none;
  padding: 0 0 0 20px;
  border-radius: 0;
  color: var(--rrom-green) !important;
  background: transparent !important;
}
/* Preserve every name and logo in the original partner-network image. */
body.rrom-interior-continuity.rrom-interior-network .rrom-reading { padding: 40px; border: 1px solid var(--rrom-line); border-radius: 24px; background: #fffefa; }
body.rrom-interior-continuity.rrom-interior-network .rrom-reading img.wp-image-219 { width: 100%; border-radius: 0; }
/* Native WordPress news remains dynamic. Posters are shown in full. */
body.rrom-interior-continuity .rrom-blog-shell { padding-block: 32px var(--rrom-interior-space) !important; }
body.rrom-interior-continuity .rrom-blog-shell > * { max-width: 1360px !important; }
body.rrom-interior-continuity .rrom-blog-title { margin-bottom: 44px !important; }
body.rrom-interior-continuity .rrom-blog-feature {
  border-radius: 28px !important;
  border-color: var(--rrom-line);
  background: var(--rrom-sage) !important;
}
body.rrom-interior-continuity .rrom-blog-feature-grid { align-items: stretch !important; }
body.rrom-interior-continuity .rrom-blog-feature-image { min-width: 0; }
body.rrom-interior-continuity .rrom-blog-feature-image figure { min-width: 0; }
body.rrom-interior-continuity .rrom-blog-feature-image .wp-block-post-featured-image a {
  display: flex;
  align-items: center;
  height: 100%;
  min-height: 360px;
  background: var(--rrom-ink);
}
body.rrom-interior-continuity .rrom-blog-feature-image img { min-height: 0; height: auto !important; max-height: 560px; object-fit: contain !important; background: var(--rrom-ink); }
body.rrom-interior-continuity .rrom-blog-feature-copy { display: flex; flex-direction: column; height: 100%; box-sizing: border-box; padding: 44px !important; }
body.rrom-interior-continuity .rrom-blog-feature-copy .wp-block-post-title { font-size: clamp(34px,3.3vw,50px) !important; line-height: 1.12 !important; letter-spacing: -.025em; }
body.rrom-interior-continuity .rrom-blog-feature-copy .wp-block-post-date { color: var(--rrom-green) !important; }
body.rrom-interior-continuity .rrom-blog-feature-copy .rrom-read-more { color: var(--rrom-green) !important; margin-top: auto; padding-top: 24px; min-height: 52px; }
body.rrom-interior-continuity .rrom-blog-list { gap: 28px !important; }
body.rrom-interior-continuity .rrom-blog-list > .wp-block-post {
  display: flex;
  flex-direction: column;
  padding: 0 !important;
  border: 1px solid var(--rrom-line);
  border-radius: 24px;
  overflow: hidden;
  background: #fffefa;
}
body.rrom-interior-continuity .rrom-blog-list .wp-block-post-featured-image { margin: 0 0 26px !important; }
body.rrom-interior-continuity .rrom-blog-list .wp-block-post-featured-image a { display: block; height: 260px; aspect-ratio: auto; background: #eef1e8; }
body.rrom-interior-continuity .rrom-blog-list .wp-block-post-featured-image img { width: 100%; height: 100% !important; aspect-ratio: auto !important; object-fit: contain !important; background: #eef1e8; }
body.rrom-interior-continuity .rrom-blog-list > .wp-block-post > :not(.wp-block-post-featured-image) { margin-inline: 28px !important; }
body.rrom-interior-continuity .rrom-blog-list .wp-block-post-date { font-size: 11px !important; color: var(--rrom-green) !important; letter-spacing: .11em; }
body.rrom-interior-continuity .rrom-blog-list .wp-block-post-title { font-size: 31px !important; line-height: 1.16 !important; letter-spacing: -.025em; text-wrap: balance; }
body.rrom-interior-continuity .rrom-blog-list .wp-block-post-excerpt { margin-bottom: 24px !important; }
body.rrom-interior-continuity .rrom-blog-list .wp-block-post-excerpt p { font-size: 15px; line-height: 1.75; }
body.rrom-interior-continuity .rrom-blog-list .rrom-read-more { width: auto; min-height: 64px; margin-top: auto !important; margin-bottom: 0 !important; padding: 18px 0; color: var(--rrom-green) !important; }
body.rrom-interior-continuity .rrom-reading-shell > p:last-child a { color: var(--rrom-green) !important; padding-block: 10px; min-height: 48px; }
body.rrom-interior-continuity .rrom-article-content { --wp--style--global--content-size: 740px; }
body.rrom-interior-continuity .rrom-article-content p > img { border: 1px solid var(--rrom-line); border-radius: 20px; }
body.rrom-interior-continuity .rrom-article-content :is(p,li) { line-height: 1.9; }
/* Match the already-approved contact and footer finish exactly. */
body.rrom-interior-continuity .rrom-contact { margin-top: 0 !important; padding: 80px 48px !important; background: var(--rrom-sage) !important; border-color: var(--rrom-line); }
body.rrom-interior-continuity .rrom-contact-grid { gap: 80px !important; }
body.rrom-interior-continuity .rrom-contact h2 { color: var(--rrom-ink) !important; font-size: clamp(38px,3.8vw,58px) !important; line-height: 1.08 !important; letter-spacing: -.035em; text-wrap: balance; }
body.rrom-interior-continuity .rrom-contact-intro { font-size: 16px !important; line-height: 1.8 !important; }
body.rrom-interior-continuity .rrom-contact-copy { padding-top: 4px; }
body.rrom-interior-continuity .rrom-contact-copy a { color: var(--rrom-green) !important; text-underline-offset: 4px; }
body.rrom-interior-continuity .rrom-footer { padding: 32px 48px !important; background: var(--rrom-ink) !important; }
body.rrom-interior-continuity :is(.rrom-contact,.rrom-footer) > * { max-width: 1360px !important; }
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  body.rrom-interior-continuity .rrom-reading .wp-block-columns:has(.is-service-name),
  body.rrom-interior-continuity .rrom-blog-list > .wp-block-post { transition: border-color 200ms var(--rrom-motion-ease); }
  body.rrom-interior-continuity .rrom-reading .wp-block-columns:has(.is-service-name):hover,
  body.rrom-interior-continuity .rrom-blog-list > .wp-block-post:hover { border-color: #91ae8e; }
}
@media (prefers-reduced-motion: no-preference) {
  body.rrom-interior-continuity :is(.rrom-page-heading h1,.rrom-blog-title,[data-rrom-motion='entering']) { animation-duration: 520ms; }
}
@media (max-width: 1100px) {
  body.rrom-interior-continuity :is(.rrom-reading-shell,.rrom-blog-shell,.rrom-comments-shell,.rrom-contact,.rrom-footer) { padding-inline: 32px !important; }
  body.rrom-interior-continuity .rrom-page-heading { width: calc(100% - 64px); padding-inline: 32px !important; }
  body.rrom-interior-continuity .rrom-blog-feature-copy { padding: 32px !important; }
  body.rrom-interior-continuity .rrom-contact-grid { gap: 36px !important; }
  body.rrom-interior-continuity .rrom-blog-list { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (min-width: 782px) and (max-width: 1100px) {
  body.rrom-interior-continuity .rrom-blog-list > .wp-block-post:last-child:nth-child(odd) {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(0,1fr);
    grid-template-rows: auto auto 1fr auto;
    grid-template-areas: 'media date' 'media title' 'media copy' 'media link';
  }
  body.rrom-interior-continuity .rrom-blog-list > .wp-block-post:last-child:nth-child(odd) .wp-block-post-featured-image {
    grid-area: media;
    position: relative;
    min-height: 280px;
    height: auto;
    margin: 0 !important;
  }
  body.rrom-interior-continuity .rrom-blog-list > .wp-block-post:last-child:nth-child(odd) .wp-block-post-featured-image a {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  body.rrom-interior-continuity .rrom-blog-list > .wp-block-post:last-child:nth-child(odd) .wp-block-post-date { grid-area: date; margin-top: 26px !important; }
  body.rrom-interior-continuity .rrom-blog-list > .wp-block-post:last-child:nth-child(odd) .wp-block-post-title { grid-area: title; }
  body.rrom-interior-continuity .rrom-blog-list > .wp-block-post:last-child:nth-child(odd) .wp-block-post-excerpt { grid-area: copy; }
  body.rrom-interior-continuity .rrom-blog-list > .wp-block-post:last-child:nth-child(odd) .rrom-read-more { grid-area: link; }
}
@media (max-width: 781px) {
  body.rrom-interior-continuity :is(.rrom-reading-shell,.rrom-blog-shell,.rrom-comments-shell,.rrom-contact,.rrom-footer) { padding-inline: 24px !important; }
  body.rrom-interior-continuity .rrom-page-heading { width: calc(100% - 48px); margin-block: 20px 36px !important; padding: 18px 24px 32px !important; border-radius: 24px; }
  body.rrom-interior-continuity :is(.rrom-page-heading h1,.rrom-blog-title) { font-size: clamp(35px,8vw,50px) !important; }
  body.rrom-interior-continuity .rrom-breadcrumbs { margin-bottom: 16px !important; }
  body.rrom-interior-continuity .rrom-reading > .wp-block-group.alignfull { padding-bottom: 40px !important; }
  body.rrom-interior-continuity .rrom-reading > .wp-block-group + .wp-block-group { padding-top: 36px !important; }
  body.rrom-interior-continuity.rrom-interior-projects .rrom-reading h3.has-background { padding: 24px; font-size: 29px !important; }
  body.rrom-interior-continuity.rrom-interior-projects .rrom-reading .wp-block-columns:has(.is-service-name) { padding: 24px !important; gap: 18px; }
  body.rrom-interior-continuity .rrom-reading .is-service-name { max-width: none; }
  body.rrom-interior-continuity.rrom-interior-network .rrom-reading { padding: 24px; }
  body.rrom-interior-continuity.rrom-interior-institute .wp-block-cover__inner-container { padding: 24px; }
  body.rrom-interior-continuity.rrom-interior-institute .rrom-reading > .wp-block-cover .wp-block-paragraph { font-size: 24px !important; }
  body.rrom-interior-continuity .rrom-blog-feature-grid { grid-template-columns: minmax(0,1fr) !important; }
  body.rrom-interior-continuity .rrom-blog-feature-image .wp-block-post-featured-image a { min-height: 0; height: auto; }
  body.rrom-interior-continuity .rrom-blog-feature-image img { width: 100%; height: auto !important; max-height: 400px; aspect-ratio: 4/3 !important; }
  body.rrom-interior-continuity .rrom-blog-feature-copy { padding: 28px !important; gap: 20px; }
  body.rrom-interior-continuity .rrom-blog-feature-copy .rrom-read-more { margin-top: 4px; }
  body.rrom-interior-continuity .rrom-blog-list { grid-template-columns: minmax(0,1fr) !important; }
  body.rrom-interior-continuity .rrom-blog-list .wp-block-post-featured-image a { height: 240px; }
  body.rrom-interior-continuity .rrom-contact { padding-block: 56px !important; }
  body.rrom-interior-continuity .rrom-contact-grid { grid-template-columns: minmax(0,1fr); gap: 30px !important; }
  body.rrom-interior-continuity .rrom-contact h2 { font-size: clamp(36px,7vw,48px) !important; }
  body.rrom-interior-continuity .rrom-footer { padding-block: 28px !important; }
}
@media (max-width: 380px) {
  body.rrom-interior-continuity :is(.rrom-reading-shell,.rrom-blog-shell,.rrom-comments-shell,.rrom-contact,.rrom-footer) { padding-inline: 18px !important; }
  body.rrom-interior-continuity .rrom-page-heading { width: calc(100% - 36px); padding-inline: 20px !important; }
  body.rrom-interior-continuity .rrom-blog-feature-copy { padding: 24px !important; }
  body.rrom-interior-continuity.rrom-interior-projects .rrom-reading .wp-block-columns:has(.is-service-name),
  body.rrom-interior-continuity.rrom-interior-projects .rrom-reading h3.has-background { padding: 22px !important; }
}
@media (prefers-reduced-motion: reduce), print {
  body.rrom-interior-continuity .rrom-reading .wp-block-columns:has(.is-service-name),
  body.rrom-interior-continuity .rrom-blog-list > .wp-block-post { transition: none !important; }
  body.rrom-interior-continuity :is(.rrom-page-heading h1,.rrom-blog-title,[data-rrom-motion]) { animation: none !important; transform: none !important; }
}
