/* One continuous stage for the land, a home, and the feeling of ownership. */
.cinema { color: #f5f2e9; background: #13271d; border-bottom: 1px solid #ffffff18; }
.cinema-heading { display: grid; grid-template-columns: .34fr 1fr; gap: 5%; margin-bottom: 38px; }
.cinema-heading > .eyebrow { padding-top: 10px; color: #c0cabb; }
.cinema-heading > div { display: flex; justify-content: space-between; align-items: end; gap: 34px; }
.cinema-heading h2 { font-size: clamp(43px, 4.35vw, 65px); }
.cinema-heading > div > p { max-width: 290px; color: #c4cebd; font-size: 13px; line-height: 1.85; padding-bottom: 3px; }
.cinema-player { background: #0b1c13; border: 1px solid #ffffff28; }
.cinema-label { display: flex; align-items: center; gap: 9px; min-height: 44px; padding: 12px 20px; font-size: 9px; line-height: 1.5; font-weight: 600; letter-spacing: .12em; color: #dce2d6; }
.cinema-indicator { width: 6px; height: 6px; border: 1px solid #dce2d6; border-radius: 50%; flex: 0 0 6px; }
.cinema-player[data-playing="true"] .cinema-indicator { background: #dce2d6; }
.cinema-duration { margin-left: auto; font-size: 8px; letter-spacing: .1em; color: #a8b7a3; }
.cinema-stage { position: relative; aspect-ratio: 16 / 9; max-height: 600px; width: 100%; overflow: hidden; background: #203529; isolation: isolate; }
.cinema-frame { position: absolute; inset: 0; overflow: hidden; opacity: 0; z-index: 0; transition: opacity .45s ease; }
.cinema-frame.is-current { opacity: 1; z-index: 1; }
@media (prefers-reduced-motion: reduce) { .cinema-frame { transition: none; } }
.cinema-frame img, .cinema-frame video { width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; }
.cinema-frame video { display: block; }
.cinema-vignette { position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, #0b1a1420 40%, #06150d95 100%); }
.cinema-scene-caption { position: absolute; left: 30px; right: 26px; bottom: 24px; pointer-events: none; text-shadow: 0 1px 15px #0d211b99; }
.cinema-scene-caption > p { font-size: 9px; font-weight: 650; letter-spacing: .16em; line-height: 1.5; margin-bottom: 9px; }
.cinema-scene-caption h3 { font-size: 38px; }
 .cinema-stage-pause { position: absolute; top: 18px; right: 18px; z-index: 2; display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 44px; padding: 10px 15px; border: 1px solid #ffffff85; background: #10261edb; color: #fffdf6; font-size: 11px; line-height: 1.5; backdrop-filter: blur(8px); }
.cinema-stage-pause > span { font-size: 15px; }
.cinema-stage-pause:hover { background: #1c382cf2; }
.cinema-screen-actions { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 17px; padding: 25px 20px 65px; background: #0b1c1312; }
.cinema-player[data-ended="true"] .cinema-scene-caption { display: none; }
.cinema-player[data-ended="true"] .cinema-screen-actions { padding: 20px; }
.cinema-screen-play { display: flex; align-items: center; justify-content: center; gap: 18px; min-height: 66px; background: #f6f3ea; color: #183022; padding: 14px 24px; box-shadow: 0 3px 30px #061b1340; text-align: left; }
.cinema-screen-play:hover { background: #fffdf6; }
.cinema-play-symbol { font-size: 19px; line-height: 1; }
#cinema-screen-play-label { font-size: 14px; line-height: 1.5; font-weight: 650; }
#cinema-screen-play-label small { font-size: 8px; line-height: 1.5; font-weight: 500; letter-spacing: .13em; display: block; margin-top: 4px; }
#cinema-end-map { background: #132a1ee8; font-size: 11px; gap: 20px; }
.cinema-controls { display: flex; align-items: center; gap: 24px; padding: 10px 20px; min-height: 65px; border-bottom: 1px solid #ffffff26; }
.cinema-control-play { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; padding: 8px 4px 8px 0; min-width: 120px; font-size: 11px; color: #f5f2e9; }
#cinema-control-symbol { width: 16px; text-align: left; font-size: 12px; }
.cinema-control-play:hover { color: white; text-decoration: underline; text-underline-offset: 4px; }
.cinema-seek-wrap { flex: 1; position: relative; min-width: 40px; }
#cinema-seek { --cinema-progress: 0%; width: 100%; height: 36px; margin: 0; padding: 0; display: block; cursor: pointer; appearance: none; -webkit-appearance: none; background: transparent; }
#cinema-seek::-webkit-slider-runnable-track { height: 3px; background: linear-gradient(to right, #e3e9dc var(--cinema-progress), #66775e var(--cinema-progress)); }
#cinema-seek::-webkit-slider-thumb { appearance: none; -webkit-appearance: none; width: 13px; height: 13px; margin-top: -5px; border: 0; border-radius: 50%; background: #f5f2e9; }
#cinema-seek::-moz-range-track { height: 3px; background: #66775e; }
#cinema-seek::-moz-range-progress { height: 3px; background: #e3e9dc; }
#cinema-seek::-moz-range-thumb { width: 13px; height: 13px; border: 0; border-radius: 50%; background: #f5f2e9; }
.cinema-seek-divisions { position: absolute; inset: 0; pointer-events: none; }
.cinema-seek-divisions i { position: absolute; top: 15px; height: 6px; width: 2px; background: #0b1c13; }
.cinema-sound { min-height: 44px; min-width: 80px; padding: 8px 4px; color: #f5f2e9; font-size: 11px; white-space: nowrap; }
.cinema-sound:hover:not(:disabled) { text-decoration: underline; text-underline-offset: 4px; }
.cinema-sound:disabled { color: #aab8a4; cursor: default; }
.cinema-time { min-width: 72px; color: #aab8a4; font-size: 10px; font-variant-numeric: tabular-nums; white-space: nowrap; }
#cinema-elapsed { color: #f5f2e9; }
.cinema-chapters { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
.cinema-chapter { display: flex; align-items: flex-start; gap: 16px; text-align: left; padding: 24px 22px; color: #b4c0ab; min-height: 106px; position: relative; }
.cinema-chapter + .cinema-chapter { border-left: 1px solid #ffffff26; }
.cinema-chapter:before { content: ''; position: absolute; height: 2px; inset: 0 0 auto; background: transparent; }
.cinema-chapter[aria-pressed="true"] { background: #ffffff06; color: #f5f2e9; }
.cinema-chapter[aria-pressed="true"]:before { background: #e1e8d9; }
.cinema-chapter:hover { background: #ffffff0c; color: #fff; }
.cinema-chapter-number { font-size: 9px; padding-top: 8px; }
.cinema-chapter strong { display: block; font: 32px/1.1 var(--serif); letter-spacing: -.02em; font-weight: 400; }
.cinema-chapter small { display: block; font-size: 10px; line-height: 1.65; margin-top: 7px; max-width: 195px; }
.cinema-chapter-medium { display: block; margin-top: 8px; font-size: 9px; line-height: 1.5; color: #c1cfb6; }
.cinema-chapter-duration { margin-left: auto; padding-top: 8px; font-size: 9px; color: #a4b59a; }
.cinema-status { padding: 12px 20px; border-top: 1px solid #ffffff26; font-size: 11px; line-height: 1.7; color: #d5dfcd; }
.cinema-footer { display: flex; justify-content: space-between; align-items: flex-start; gap: 36px; margin-top: 22px; }
.cinema-footer > p { color: #d1daca; font-size: 11px; line-height: 1.8; max-width: 600px; }
.cinema-footer > p > span { font-size: 10px; color: #aebeaa; }
.cinema-footer .text-link { padding-top: 1px; flex-shrink: 0; color: #f5f2e9; font-size: 12px; border-color: #a9b99c; gap: 24px; }
.cinema button:focus-visible, #cinema-seek:focus-visible { outline-color: #f5f2e9; outline-offset: 4px; }
.visually-hidden { position: absolute; height: 1px; width: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@media (max-width: 1150px) { .cinema-heading { grid-template-columns: 1fr 3.2fr; gap: 4%; }.cinema-heading > div { gap: 28px; }.cinema-heading > div > p { font-size: 12px; max-width: 240px; }.cinema-chapter { padding: 21px 18px; gap: 12px; }.cinema-chapter small { font-size: 10px; }.cinema-chapter-duration { display: none; }.cinema-footer { gap: 25px; }.cinema-footer .text-link { font-size: 11px; gap: 14px; } }
@media (max-width: 850px) { .cinema-heading { display: block; }.cinema-heading > .eyebrow { padding-top: 0; margin-bottom: 25px; }.cinema-heading > div > p { max-width: 220px; }.cinema-scene-caption h3 { font-size: 33px; }.cinema-footer { flex-direction: column; gap: 12px; }.cinema-footer .text-link { font-size: 12px; } }
@media (max-width: 700px) {
  .site-header nav a:nth-child(2) { display: none; }.site-header nav a:first-child { display: block; padding-block: 12px; border-bottom: 1px solid #a8b49c; line-height: 1.4; }
  .cinema { padding-block: 48px; }.cinema-heading { margin-bottom: 26px; }.cinema-heading > .eyebrow { margin-bottom: 19px; font-size: 9px; }.cinema-heading > div { display: block; }.cinema-heading h2 { font-size: clamp(44px, 12vw, 60px); }.cinema-heading > div > p { max-width: 340px; font-size: 13px; margin-top: 18px; line-height: 1.8; }
  .cinema-label { min-height: 44px; padding: 10px 12px; gap: 7px; font-size: 7px; letter-spacing: .075em; }.cinema-duration { display: none; }.cinema-stage { aspect-ratio: 4 / 3; max-height: none; }.cinema-scene-caption { left: 16px; right: 16px; bottom: 17px; }.cinema-scene-caption > p { font-size: 8px; margin-bottom: 6px; }.cinema-scene-caption h3 { font-size: 27px; }.cinema-screen-actions { padding: 18px 12px 75px; gap: 10px; }.cinema-screen-play { min-height: 59px; gap: 13px; padding: 12px 17px; }#cinema-screen-play-label { font-size: 12px; }#cinema-screen-play-label small { font-size: 7px; }.cinema-play-symbol { font-size: 15px; }#cinema-end-map { min-height: 44px; padding: 10px 12px; font-size: 10px; gap: 13px; }#cinema-end-map span { font-size: 17px; }
  .cinema-stage-pause { top: 12px; right: 12px; }
  .cinema-controls { display: grid; grid-template-columns: 1fr auto; padding: 7px 12px; gap: 0 12px; min-height: 64px; }.cinema-seek-wrap { grid-column: 1; grid-row: 2; }.cinema-time { grid-column: 2; grid-row: 2; }.cinema-sound { grid-column: 2; grid-row: 1; padding-inline: 0; text-align: right; font-size: 10px; min-width: 61px; }.cinema-control-play { min-width: 100px; font-size: 10px; gap: 8px; }.cinema-time { font-size: 9px; min-width: 61px; }.cinema-seek-divisions i { width: 1px; }
  .cinema-chapters { grid-template-columns: repeat(2, minmax(0, 1fr)); }.cinema-chapter:nth-child(odd) { border-left: 0; }.cinema-chapter:nth-child(n+3) { border-top: 1px solid #ffffff26; }
  .cinema-chapter { display: block; min-height: 88px; padding: 12px 11px 14px; }.cinema-chapter-number { font-size: 8px; display: block; padding: 0; margin-bottom: 7px; }.cinema-chapter strong { font-size: 27px; }.cinema-chapter small { display: none; }.cinema-chapter-medium { font-size: 9px; margin-top: 7px; line-height: 1.5; }.cinema-footer { margin-top: 19px; gap: 13px; }.cinema-footer > p { font-size: 11px; }.cinema-footer > p > span { display: inline-block; margin-top: 3px; font-size: 10px; }.cinema-footer .text-link { font-size: 11px; gap: 18px; }.cinema-status { font-size: 10px; padding: 10px 12px; }
}
@media (max-width: 370px) { .cinema-controls { gap: 8px; }.cinema-control-play { min-width: 91px; font-size: 9px; }.cinema-time { font-size: 8px; min-width: 55px; }.cinema-chapter { padding-inline: 9px; }.cinema-chapter strong { font-size: 25px; } }

.cinema[hidden],.cinema [hidden]{display:none!important}.cinema .wrap{max-width:1440px;width:90%;margin:auto}.cinema.chapter{padding-block:80px}.cinema h2,.cinema h3{font-family:var(--serif,Estate),Georgia,serif;font-weight:400;line-height:1.05;margin:0;letter-spacing:-.03em}.cinema button{font-family:inherit;cursor:pointer;border:0;border-radius:0}.cinema-control-play,.cinema-sound,.cinema-chapter{background:transparent}.cinema .text-link{color:inherit;text-decoration:none;border-bottom:1px solid #9fab92;padding-bottom:8px}.cinema p{margin:0}.cinema .cinema-screen-play{background:#f6f3ea}.cinema .cinema-stage-pause{border:1px solid #ffffff85;background:#10261edb}.cinema .cinema-chapter+.cinema-chapter{border-left:1px solid #ffffff26}.cinema .cinema-heading{font-family:inherit;padding:0}.cinema .button-outline-light{padding:14px 20px;color:#fff;text-decoration:none;border:1px solid #ffffff65}.cinema .cinema-chapter strong{font-family:var(--serif,Estate),Georgia,serif}@media(max-width:700px){.cinema.chapter{padding-block:48px}.cinema .cinema-chapter:nth-child(odd){border-left:0}.cinema .cinema-chapter:nth-child(n+3){border-top:1px solid #ffffff26}}
