.sauna-home { --sauna-ink: #193c32; --sauna-sand: #f3eee5; color: var(--sauna-ink); max-width: 1120px; margin-inline: auto; }
.sauna-home__hero { padding: clamp(32px, 7vw, 88px); background: var(--sauna-sand); border-radius: 8px; }
.sauna-home__eyebrow { font-size: 12px; letter-spacing: .14em; font-weight: 700; }
.sauna-home h1 { font-size: clamp(46px, 8vw, 90px); line-height: 1.04; letter-spacing: -.045em; margin-block: 28px; }
.sauna-home__intro { max-width: 580px; font-size: clamp(18px, 2.3vw, 23px); line-height: 1.6; }
.sauna-home .wp-block-button__link { background: var(--sauna-ink); color: #fff; border: 2px solid var(--sauna-ink); border-radius: 5px; padding: 16px 25px; font-weight: 600; text-decoration: none; }
.sauna-home .wp-block-button__link:hover { background: #285a49; }
.sauna-home .wp-block-button__link:focus-visible { outline: 3px solid #b16b2a; outline-offset: 4px; }
.sauna-home__note { font-size: 13px; line-height: 1.8; margin-top: 20px; }
.sauna-home__media img { width: 100%; height: 100%; object-fit: cover; border-radius: 6px; }
.sauna-home__steps { gap: clamp(24px, 4vw, 56px); padding: clamp(28px, 5vw, 64px) 12px; }
.sauna-home__steps h2 { font-size: clamp(23px, 3vw, 30px); line-height: 1.2; }
.sauna-home__steps p { line-height: 1.7; }
.sauna-home__video video { display: block; width: 100%; max-height: 650px; border-radius: 6px; }
.sauna-home__closing { border-top: 1px solid #d9dfd6; text-align: center; padding: 48px 20px; }
.sauna-home__closing .wp-block-buttons { justify-content: center; }
.sauna-home__media:empty, .sauna-home__video:empty, .sauna-home__media .wp-block-gallery:empty { display: none; }
@media (max-width: 600px) { .sauna-home__hero { border-radius: 0; } .sauna-home .wp-block-button, .sauna-home .wp-block-button__link { box-sizing: border-box; width: 100%; } }

/* Three real photographs, kept as individually editable WordPress image blocks. */
.sauna-home__media .sauna-home__collage { display: grid; grid-template-columns: 1.15fr 1fr; grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 14px; height: clamp(430px, 58vw, 700px); margin: 24px 0 0; }
.sauna-home__media .sauna-home__collage > .wp-block-image { width: 100% !important; height: 100%; margin: 0 !important; min-width: 0; position: relative; }
.sauna-home__media .sauna-home__collage > .wp-block-image:first-child { grid-row: 1 / 3; }
.sauna-home__media .sauna-home__collage > .wp-block-image img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.sauna-home__media .sauna-home__collage > .wp-block-image:nth-child(2) img { object-position: center 57%; }
.sauna-home__media .sauna-home__collage figcaption { padding: 25px 16px 12px; border-radius: 0 0 6px 6px; background: linear-gradient(transparent, rgba(0, 0, 0, .65)); color: white; font-size: 14px; text-align: left; }
@media (max-width: 600px) {
  .sauna-home__media .sauna-home__collage { grid-template-columns: 1fr 1fr; grid-template-rows: 340px 210px; height: auto; gap: 10px; }
  .sauna-home__media .sauna-home__collage > .wp-block-image:first-child { grid-row: 1; grid-column: 1 / 3; }
  .sauna-home__media .sauna-home__collage figcaption { font-size: 12px; padding: 24px 10px 10px; }
}

.wp-block-post-content > .sauna-home { width: 100%; max-width: 1120px; }
@media (min-width: 961px) {
  .sauna-home:has(.sauna-home__collage img) { display: grid; grid-template-columns: .85fr 1.15fr; column-gap: 24px; align-items: stretch; }
  .sauna-home:has(.sauna-home__collage img) > * { min-width: 0; width: 100%; max-width: none; box-sizing: border-box; margin-block-start: 0; }
  .sauna-home:has(.sauna-home__collage img) > .sauna-home__hero { grid-column: 1; grid-row: 1; padding: 42px 32px; }
  .sauna-home:has(.sauna-home__collage img) > .sauna-home__media { grid-column: 2; grid-row: 1; }
  .sauna-home:has(.sauna-home__collage img) > .sauna-home__steps,
  .sauna-home:has(.sauna-home__collage img) > .sauna-home__video,
  .sauna-home:has(.sauna-home__collage img) > .sauna-home__closing { grid-column: 1 / -1; }
  .sauna-home:has(.sauna-home__collage img) h1 { font-size: clamp(46px, 5.2vw, 64px); }
  .sauna-home:has(.sauna-home__collage img) .sauna-home__intro { font-size: 18px; }
  .sauna-home:has(.sauna-home__collage img) .sauna-home__collage { height: 100%; min-height: 660px; margin-top: 0; }
}

.sauna-home__interior { padding: 24px 0 40px; }
.sauna-home__interior > h2 { margin-bottom: 12px; }
.sauna-home__interior .wp-block-columns { gap: 18px; margin-top: 24px; }
.sauna-home__interior .wp-block-image { margin: 0; }
.sauna-home__interior img { display: block; width: 100%; height: 350px; object-fit: cover; border-radius: 6px; }
@media (min-width: 961px) { .sauna-home:has(.sauna-home__collage img) > .sauna-home__interior { grid-column: 1 / -1; } }
@media (max-width: 600px) { .sauna-home__interior img { height: 280px; } }

.sauna-home__location { margin-block: 16px 24px; padding: 28px; background: var(--sauna-sand, #f3eee5); border-radius: 6px; }
.sauna-home__location h2 { margin-top: 0; }
.sauna-home__location a { color: inherit; text-underline-offset: 4px; }
@media (min-width: 961px) { .sauna-home:has(.sauna-home__collage img) > .sauna-home__location { grid-column: 1 / -1; } }

/* On mobile/tablet, lead with the photographs directly below the page title. */
@media (max-width: 960px) {
  .sauna-home:has(.sauna-home__collage img) { display: flex; flex-direction: column; }
  .sauna-home:has(.sauna-home__collage img) > * { width: 100%; max-width: none; min-width: 0; box-sizing: border-box; }
  .sauna-home:has(.sauna-home__collage img) > .sauna-home__media { order: -1; }
  .sauna-home__media .sauna-home__collage { margin-top: 0; margin-bottom: 20px; }
  .sauna-home:has(.sauna-home__collage img) > .sauna-home__hero { margin-block-start: 0; }
}
