/* Luz — editorial photo sequence, scoped to this project only. */
.luz-editorial-page { --luz-yellow: #edc34c; }
.luz-editorial { overflow: clip; }
.luz-editorial .luz-photo { margin: 0; min-width: 0; }
.luz-editorial .luz-photo img { display: block; width: 100%; height: auto; max-height: none; object-fit: contain; }
.luz-editorial .luz-photo figcaption { margin: 14px 0 0; color: var(--luz-yellow); font-size: 11px; font-weight: 500; letter-spacing: .05em; }
.luz-editorial .luz-wide { width: 100%; margin: 0 0 clamp(36px,6vw,96px); }
.luz-editorial .luz-inset { width: min(86%, 1250px); margin: 0 auto clamp(60px,9vw,130px); }
.luz-duo { width: min(calc(100% - 64px), 1440px); margin: 0 auto clamp(64px,9vw,130px); display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: start; gap: clamp(20px,3vw,48px); }
.luz-duo--offset { grid-template-columns: 1.12fr .88fr; }
.luz-duo--offset > figure:nth-child(2) { padding-top: clamp(32px,7vw,110px); }
.luz-editorial .luz-words { width: min(calc(100% - 48px), 700px); margin: clamp(60px,8vw,120px) auto; text-align: center; }
.luz-editorial .luz-kicker { display: block; font-size: 10px; text-transform: uppercase; letter-spacing: .15em; color: var(--luz-yellow); margin-bottom: 22px; }
.luz-editorial .luz-words h2 { font-family: var(--text); color: var(--luz-yellow); font-size: clamp(23px,2.8vw,38px); font-weight: 500; line-height: 1.4; letter-spacing: -.015em; margin: 0 0 24px; text-transform: none; }
.luz-editorial .luz-words p { font-size: 15px; line-height: 1.9; color: var(--luz-yellow); margin: 0 auto; max-width: 580px; }
.luz-text-image { width: min(calc(100% - 64px), 1200px); display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(32px,7vw,100px); align-items: center; margin: 0 auto clamp(72px,10vw,150px); }
.luz-editorial .luz-text-image .luz-words { width: auto; margin: 0; text-align: left; }
.luz-editorial .luz-closing { padding-block: 24px; }
@media(max-width:700px) {
 .luz-duo, .luz-duo--offset, .luz-text-image { width: calc(100% - 40px); grid-template-columns: 1fr; gap: 32px; }
 .luz-duo--offset > figure:nth-child(2) { padding-top: 0; }
 .luz-editorial .luz-inset { width: calc(100% - 40px); }
 .luz-editorial .luz-text-image .luz-words { text-align: center; max-width: 540px; margin: 0 auto 12px; }
 .luz-editorial .luz-words h2 { font-size: 25px; }
}
