.cinematic-modern .selected{padding:80px var(--space) 100px}
.portfolio-heading{padding:0 0 40px}
.cinematic-modern .portfolio-heading h2{font-size:clamp(42px,5vw,76px)}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.portfolio-tile{position:relative;display:block;aspect-ratio:1;overflow:hidden;background:#17201b;isolation:isolate}
.portfolio-tile>img{width:100%;height:100%;object-fit:cover}
.portfolio-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;text-align:center;background:#07110db3;color:#fff;opacity:0;transition:opacity .25s ease}
.portfolio-title{font-size:clamp(22px,2.2vw,36px);font-weight:300;letter-spacing:-.035em;line-height:1.2;text-wrap:balance}
.portfolio-view{font-size:14px;letter-spacing:.02em;margin-top:14px}
.portfolio-tile:hover .portfolio-overlay,.portfolio-tile:focus-visible .portfolio-overlay{opacity:1}
.portfolio-tile:focus-visible{outline:3px solid #fff;outline-offset:-5px;z-index:1}
.archive-project-heading .archive-statement{max-width:840px;margin-top:35px}
.archive-project-heading .archive-statement p{max-width:none;font-size:18px;line-height:1.85;margin:22px 0}
.archive-project-heading .small{display:block;margin-top:28px}
.archive-project-end{display:flex;justify-content:space-between;gap:35px;border-top:1px solid var(--line)}
@media(max-width:1000px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-title{font-size:clamp(22px,3vw,30px)}}
@media(hover:none),(pointer:coarse){.portfolio-overlay{opacity:1;justify-content:flex-end;background:linear-gradient(transparent 48%,#07110dc7);padding:24px 18px}.portfolio-view{margin-top:10px}}
@media(max-width:620px){.cinematic-modern .selected{padding:55px 6vw 65px}.portfolio-heading{padding:0 0 30px}.portfolio-grid{grid-template-columns:1fr}.portfolio-overlay{padding:25px}.portfolio-title{font-size:28px}.archive-project-heading .archive-statement p{font-size:16px}.archive-project-end{flex-direction:column;align-items:start}}
@media(prefers-reduced-motion:reduce){.portfolio-overlay{transition:none}}

/* Compact contact sheets; the viewer retains the complete photograph. */
.cinematic-modern .plates{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 20px;align-items:start}
.cinematic-modern .plates .plate{grid-column:auto;width:100%;min-width:0;margin:0;padding:0}
.cinematic-modern .plates .photo-button{aspect-ratio:1;display:flex;align-items:center;justify-content:center}
.cinematic-modern .plates .plate img{display:block;width:100%;height:100%;max-height:100%;object-fit:contain}
.cinematic-modern .plates .photo-button:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.cinematic-modern .plates .plate figcaption{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:5px 10px;margin-top:12px;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.cinematic-modern .plates .plate figcaption>span:first-child{display:none}
.cinematic-modern .plates .plate figcaption>span:nth-child(2){flex-basis:100%}
.cinematic-modern #light-photo{height:auto;min-height:0;flex:1;max-height:78dvh;object-fit:contain}
.cinematic-modern #lightbox .light-controls{flex-shrink:0}
.cinematic-modern #light-caption{font-size:14px;line-height:1.5;overflow-wrap:anywhere}
@media(max-width:1000px){.cinematic-modern .plates{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.cinematic-modern .plates{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}}
@media(max-width:380px){.cinematic-modern .plates{grid-template-columns:1fr}}

/* A single dramatic opening, followed by restrained gallery typography. */
.cinematic-modern .project-heading h1,
.cinematic-modern .page-heading h1,
.cinematic-modern .artist-opening h1,
.cinematic-modern .edition-opening h1,
.cinematic-modern .contact-layout h1,
.cinematic-modern .shop-intro h1{font-size:clamp(36px,4.3vw,64px);line-height:1.15;letter-spacing:-.035em;text-wrap:balance}
.cinematic-modern .portfolio-heading h2,
.cinematic-modern .section-head h2,
.cinematic-modern .behance-heading h2,
.cinematic-modern .feature h2,
.cinematic-modern .artist-intro h2,
.cinematic-modern .contact-promo h2,
.cinematic-modern .print-information h2{font-size:clamp(32px,3.75vw,56px);line-height:1.18;letter-spacing:-.035em}
.cinematic-modern .artist-recognition h2,
.cinematic-modern .artist-record h2,
.cinematic-modern .artist-gear h2,
.cinematic-modern .edition-materials h2,
.cinematic-modern .edition-requests h2,
.cinematic-modern .quiet-editions h2,
.cinematic-modern .print-series-heading h2{font-size:clamp(28px,3vw,46px);line-height:1.2}
.cinematic-modern .exhibition-note h2{font-size:clamp(28px,3vw,34px)}
.cinematic-modern .portfolio-title{font-size:clamp(20px,1.8vw,29px);line-height:1.25}
@media(max-width:620px){.cinematic-modern .portfolio-title{font-size:24px}}
.portfolio-all-link{display:flex;justify-content:center;margin-top:36px}

/* One shared title scale across pages; the cinematic splash is the exception. */
body.cinematic-modern #main h1:not(.hybrid-hero h1),
body.cinematic-modern #main h2{font-size:clamp(32px,4vw,56px);font-family:var(--sans);font-weight:300;line-height:1.18;letter-spacing:-.035em;text-wrap:balance}
/* Product rows are labels, not page or section titles. */
body.cinematic-modern #main .cart-line h2,
body.cinematic-modern #main .checkout-items h2{font-size:22px;line-height:1.35}

.cinematic-modern .editorial-photo-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6vw;align-items:center;padding:64px var(--space)}
.cinematic-modern .editorial-photo-row figure{margin:0;min-width:0}
.cinematic-modern .editorial-photo-row img{display:block;width:100%;height:auto}
.cinematic-modern .editorial-photo-row>div{max-width:620px}
.cinematic-modern .editorial-photo-row .eyebrow{margin-bottom:22px}
.cinematic-modern .editorial-photo-row p:not(.eyebrow){font-size:17px;line-height:1.8}
.cinematic-modern .editorial-photo-row .text-link{margin-top:20px}
.cinematic-modern .exhibition-photo{overflow:hidden;aspect-ratio:1.24}
.cinematic-modern .exhibition-photo img{width:108%;max-width:none;height:100%;object-fit:cover;object-position:left center}
.cinematic-modern .artist-opening figure img{filter:none;aspect-ratio:1;object-fit:contain}
.cinematic-modern .journal-promo,.cinematic-modern .contact-promo{padding-top:64px;padding-bottom:64px}
@media(max-width:700px){.cinematic-modern .editorial-photo-row{grid-template-columns:1fr;gap:30px;padding:44px 6vw}.cinematic-modern .editorial-photo-row>div{max-width:none}.cinematic-modern .journal-promo,.cinematic-modern .contact-promo{padding-top:44px;padding-bottom:44px}}
