/* Comfortable reading size and a consistent vertical showcase. */
.section{padding-top:78px;padding-bottom:78px}
.section-heading>p,.digital-section .section-heading>p{font-size:16px;line-height:1.75;max-width:490px}
.eyebrow,.hero-copy>.eyebrow{font-size:12px;letter-spacing:1.2px}
.project-category{font-size:11px;letter-spacing:.8px}
.project-description{font-size:15px;line-height:1.7;max-width:100%}
.project-heading h3{font-size:22px}
.work-credit,.filter{font-size:14px}
.work-toolbar{align-items:flex-start;flex-wrap:wrap}.filters{flex-wrap:wrap}
.horizontal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 25px}
.horizontal-grid .work-item,.horizontal-grid .work-item.is-filtered{grid-column:auto}
.vertical-group{margin-top:46px;border-top:1px solid var(--line);padding-top:32px}
.subsection-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:23px}
.subsection-heading h3{font-size:32px;letter-spacing:-1px;margin:0}
.subsection-heading p{font-size:15px;color:var(--muted);margin:0}
.vertical-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 22px;align-items:start}
.vertical-grid .work-item{grid-column:auto;min-width:0}
.vertical-cover{display:block;position:relative;aspect-ratio:9/16;overflow:hidden;background:#ddd}
.vertical-cover>img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.vertical-cover:hover>img{transform:scale(1.025)}
.vertical-open{position:absolute;bottom:0;left:0;right:0;padding:38px 14px 14px;background:linear-gradient(transparent,#000b);color:white;font-size:13px;font-weight:700}
.vertical-card .project-heading{margin-top:13px;margin-bottom:7px}.vertical-card .project-heading h3{font-size:19px}.vertical-card .project-category{font-size:10px;line-height:1.6}.vertical-card .project-arrow{display:none}.vertical-card .project-description{font-size:14px}
.waow-feature p{font-size:16px;line-height:1.7}.waow-feature h4{font-size:19px}.waow-copy>p:not(.waow-slogan){font-size:16px}.waow-copy>.waow-footnote{font-size:14px!important}.waow-feature-note{font-size:10px}
.about-text>p,.tool-row p,.timeline-row p,.timeline-row span,.education p{font-size:16px!important;line-height:1.7}.timeline-row time{font-size:14px}.timeline-row h4{font-size:23px}.timeline-row{padding-top:24px;padding-bottom:24px}.toolkit-note{font-size:14px}.about-text .large-copy{font-size:25px!important}
.courseart-copy>p,.sync-copy>p{font-size:16px!important}.tool-row>span,.magazine-read,.magazine-label,.photo-footer,.work-endnote,.product-footnote{font-size:13px}.magazine-item figcaption>strong{font-size:15px}
.theme-toggle{flex-shrink:0;background:transparent;border:1px solid var(--line);border-radius:30px;padding:9px 14px;font-size:13px;font-weight:700;white-space:nowrap}.theme-toggle:hover{border-color:var(--orange)}
.hero-stage{overflow:hidden}.hero-stage .hero-slide{position:absolute;inset:0;width:100%;height:calc(100% - 30px);object-fit:cover;opacity:0;transition:opacity 1s}.hero-stage .hero-slide.is-current{opacity:1}.hero-stage figcaption{position:absolute;bottom:0;left:0;right:0;height:30px;font-size:8px;overflow:hidden}.collage-pause{position:absolute;right:8px;bottom:38px;background:#1d271fcc;color:#fff;border:1px solid #fff8;border-radius:3px;font-size:10px;padding:4px 7px;z-index:3}.hero-work-snippets{position:absolute;left:2%;top:17%;width:45%;display:grid;gap:12px;transform:rotate(-9deg)}.hero-work-snippets img{width:100%;height:125px;object-fit:cover;border:6px solid #f3f0e6;box-shadow:0 5px 15px #0003}.hero-work-snippets img:first-child{width:55%;height:140px;transform:rotate(14deg)}
/* Each concert opens its own carousel; thumbnails remain visible beside the cover. */
.concert-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 30px}.concert-album{min-width:0}.concert-mosaic{display:grid;grid-template-columns:1fr 3fr;gap:10px;height:420px}.concert-thumbs{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:10px;min-height:0}.concert-thumb{position:relative;border:0;padding:0;background:#364333;overflow:hidden}.concert-thumb img{width:100%;height:100%;object-fit:cover}.concert-main{display:block;position:relative;overflow:hidden;width:100%;padding:0;border:0;background:#364333}.concert-main>img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.concert-main:hover>img{transform:scale(1.025)}.album-count{position:absolute;bottom:15px;right:15px;background:#f3f0e6;color:#1d271f;padding:6px 12px;font-size:13px;font-weight:700}.concert-meta{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:14px}.concert-meta h3{font-size:23px;margin:0}.concert-meta a{font-size:13px;text-decoration:underline;text-underline-offset:4px}.gallery-nav{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.gallery-nav button{padding:8px 15px;background:var(--cream);color:var(--ink);border:1px solid var(--line);font-size:14px}.portrait-expanded{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:24px}.portrait-expanded a{aspect-ratio:3/4;overflow:hidden;position:relative}.portrait-expanded img{height:100%;width:100%;object-fit:cover}.portrait-expanded span{position:absolute;bottom:0;left:0;right:0;padding:30px 12px 12px;color:white;background:linear-gradient(transparent,#000a);font-size:13px}
html[data-theme="dark"]{--cream:#171d19;--ink:#eef0e6;--olive:#627654;--muted:#c2caba;--line:#465043;--blue:#adc7d8;color-scheme:dark}
html[data-theme="dark"] body,html[data-theme="dark"] .site-header,html[data-theme="dark"] .mobile-nav{background:#171d19;color:#eef0e6}
html[data-theme="dark"] .hero{background:#35452f;color:#f3f0e6}html[data-theme="dark"] .hero:after{background:#171d19}html[data-theme="dark"] .hero-stage{background:#f3f0e6}html[data-theme="dark"] .hero-stage figcaption{color:#1d271f}html[data-theme="dark"] .paper-tag,html[data-theme="dark"] .collage-label{color:#1d271f}
html[data-theme="dark"] .photo-section,html[data-theme="dark"] .editorial-section,html[data-theme="dark"] .contact-section{background:#222e25;color:#f3f0e6}html[data-theme="dark"] .waow-features{background:#28382d;color:#f3f0e6}html[data-theme="dark"] .waow-feature p{color:#e0e6d9}html[data-theme="dark"] .photo-section h2,html[data-theme="dark"] .photo-footer,html[data-theme="dark"] .editorial-section h2{color:#f3f0e6}html[data-theme="dark"] .filter.active{background:#d7dfcb;color:#172016}html[data-theme="dark"] .button-cream{background:#eef0e6;color:#1d271f}html[data-theme="dark"] .media-dialog{background:#171d19;color:#eef0e6}html[data-theme="dark"] .dialog-close{color:#eef0e6}html[data-theme="dark"] .product-section{background:#1d251f}
@media(min-width:1800px){.section{max-width:1920px}.work-section{max-width:1920px}.project-description{font-size:17px}.vertical-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1100px){.site-header{gap:18px}.desktop-nav{gap:15px}.horizontal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vertical-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.concert-mosaic{height:340px}.portrait-expanded{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.site-header{gap:12px}.wordmark{font-size:23px}.theme-toggle{margin-left:auto;font-size:11px;padding:8px 10px}.header-download{display:none}.menu-toggle{margin-left:0}.section{padding-top:46px;padding-bottom:46px}.section-heading>p,.digital-section .section-heading>p{font-size:15px}.eyebrow,.hero-copy>.eyebrow{font-size:10px}.horizontal-grid{grid-template-columns:1fr;gap:30px}.vertical-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.vertical-grid .work-item,.vertical-grid .work-item.is-filtered{grid-column:auto}.vertical-card .project-heading h3{font-size:17px}.vertical-card .project-description{font-size:13px}.vertical-open{font-size:11px;padding:30px 9px 10px}.project-description{font-size:15px}.project-category{font-size:10px}.filter{font-size:12px;padding:7px 10px}.work-credit{font-size:13px}.subsection-heading{display:block}.subsection-heading p{font-size:14px;margin-top:10px}.waow-feature p{font-size:15px}.waow-feature h4{font-size:18px}.waow-copy>p:not(.waow-slogan){font-size:15px}.timeline-row time{font-size:12px}.timeline-row h4{font-size:21px}.timeline-row span,.timeline-row p{font-size:15px!important}.concert-grid{grid-template-columns:1fr;gap:32px}.concert-mosaic{height:400px}.concert-meta h3{font-size:22px}.concert-meta a{font-size:12px}.portrait-expanded{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.hero-work-snippets{top:13%;left:0}.hero-work-snippets img{height:85px}.hero-work-snippets img:first-child{height:110px}.collage-pause{font-size:9px}.hero-stage figcaption{font-size:6px}.about-text>p{font-size:16px!important}}
@media(prefers-reduced-motion:reduce){.hero-stage .hero-slide{transition:none}.vertical-cover>img{transition:none}}
.concert-mosaic.single-cover{grid-template-columns:1fr}.portrait-showcase{max-width:1440px;margin:55px auto 0;padding-top:32px;border-top:1px solid #f3f0e633}.portrait-showcase .portrait-intro{display:flex;align-items:baseline;gap:25px;flex-wrap:wrap}.portrait-showcase .portrait-intro h3{font-size:36px;margin:0}.portrait-showcase .portrait-intro p{font-size:15px;max-width:500px}.vertical-group{margin-top:24px;padding-top:24px}html[data-theme="dark"] .paper-tag{background:#f3f0e6;color:#1d271f}html[data-theme="dark"] .cream-paper{background:#f3f0e6}
.concert-thumb{box-shadow:3px 4px 0 #aabda522}.concert-thumb:nth-child(2){transform:rotate(-3deg);z-index:1}.concert-thumb:nth-child(3){transform:rotate(2deg)}.concert-thumb:hover{transform:rotate(0);outline:2px solid #adc7d8}.concert-main:focus-visible,.concert-thumb:focus-visible{outline:3px solid #adc7d8;outline-offset:4px}
.horizontal-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.horizontal-grid .work-item,.horizontal-grid .work-item.is-filtered{grid-column:span 2}.horizontal-grid .work-item[data-category="music"]{grid-column:span 3}@media(max-width:1100px){.horizontal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.horizontal-grid .work-item,.horizontal-grid .work-item.is-filtered,.horizontal-grid .work-item[data-category="music"]{grid-column:auto}}@media(max-width:760px){.horizontal-grid{grid-template-columns:1fr}}
