/* Rebuild Yourself V4 — authentic documentary artwork / 2025. Overrides V3 without altering the accepted exhibition-card design. */
.ryv .ry-mark{object-fit:contain;max-width:none}
.ryv .ry-hero .ry-mark.chain{width:43vw;height:auto;max-height:620px;right:-15vw;top:-8vh;transform:rotate(19deg);opacity:.32}
.ryv .ry-hero .ry-mark.nail{height:56vh;width:auto;max-height:580px;right:12vw;bottom:0;transform:rotate(24deg);opacity:.75}
.ryv .ry-hero .ry-mark.button{height:100px;width:auto;right:27%;top:26%}
.ryv .ry-manifesto .ry-mark.stitches{height:450px;width:auto;left:3vw;bottom:-100px;opacity:.47}
.ryv .ry-graphic .ry-mark.shirt{width:48vw;height:auto;max-height:670px;right:-15vw;bottom:-18%;opacity:.33}
.ryv .ry-graphic .ry-mark.stitches{height:520px;width:auto;left:-25px;bottom:-90px;opacity:.3}
.ryv .ry-application-copy img.ry-mark{height:320px;width:auto;top:80px;right:-60px;opacity:.27}
.ryv .ry-cover{background:#eeeae4}
.ryv .ry-cover img{object-fit:contain;max-height:800px;background:#ebe8e2}
.ryv .ry-real-poster{margin:0;background:#dbd7d0;padding:clamp(18px,4vw,70px);border:1px solid var(--ry-line);display:flex;justify-content:center;align-items:center}
.ryv .ry-real-poster img{display:block;width:100%;height:auto;max-width:1030px;max-height:none;box-shadow:0 16px 48px rgba(0,0,0,.13);object-fit:contain}
.ryv .ry-poster-intro{margin-top:60px}
.ryv .ry-real-poster figcaption,.ryv .ry-asset-figure figcaption{font:10px/1.5 "IBM Plex Mono",monospace;text-transform:uppercase;color:#6c6660}
.ryv .ry-media-caption{display:flex;justify-content:space-between;gap:16px;padding:14px 0 28px;border-bottom:1px solid var(--ry-line)}
.ryv .ry-asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:40px}
.ryv .ry-asset-figure{margin:0;min-width:0}
.ryv .ry-asset-figure img{display:block;width:100%;height:auto;object-fit:contain;background:#e5e0d8;max-height:850px}
.ryv .ry-asset-figure.ry-frame{background:#e5e0d8;padding:20px}
.ryv .ry-asset-figure.ry-frame img{box-shadow:0 12px 25px rgba(0,0,0,.08)}
.ryv .ry-asset-figure figcaption{margin-top:12px;border-top:1px solid var(--ry-line);padding-top:10px}
.ryv .ry-fold-explanation{margin-top:48px;padding:30px;background:#181816;color:#f2ede5;display:grid;grid-template-columns:1fr 1.3fr;gap:40px;align-items:start}
.ryv .ry-fold-explanation h3{font-size:clamp(42px,5.4vw,80px);line-height:.86;letter-spacing:-.065em;font-weight:500;margin:26px 0}
.ryv .ry-fold-explanation p{font-size:clamp(17px,1.5vw,22px);line-height:1.4;margin:10px 0}
.ryv .ry-fold-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid #77736c;margin-top:34px}
.ryv .ry-fold-steps div{min-height:122px;border-right:1px solid #77736c;padding:13px;display:flex;flex-direction:column;justify-content:space-between}
.ryv .ry-fold-steps div:last-child{border:0}
.ryv .ry-fold-steps strong{font-size:clamp(33px,4vw,65px);letter-spacing:-.06em;font-weight:500}
.ryv .ry-exhibit-gallery{margin-top:48px}
.ryv .ry-exhibit-gallery>.ry-label{margin-bottom:18px}
.ryv .ry-exhibit-feature{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}
.ryv .ry-exhibit-feature img{width:100%;height:100%;max-height:740px;min-height:370px;object-fit:cover;display:block}
.ryv .ry-exhibit-feature figure{margin:0;min-width:0}
.ryv .ry-exhibit-feature figcaption{font:10px/1.5 "IBM Plex Mono",monospace;text-transform:uppercase;color:#6c6660;padding:10px 0}
.ryv .ry-photo-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:30px}
.ryv .ry-photo-strip figure{margin:0;min-width:0}
.ryv .ry-photo-strip img{width:100%;height:460px;object-fit:cover;display:block}
.ryv .ry-photo-strip figcaption{font:10px/1.45 "IBM Plex Mono",monospace;text-transform:uppercase;color:#77716b;padding-top:9px}
.ryv .ry-tote-stage{padding:22px;background:#f4f2ee;min-height:580px}
.ryv .ry-tote-stage .ry-original-tote{display:block;width:100%;height:auto;max-height:610px;object-fit:contain}
.ryv .ry-rollup-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:45px}
.ryv .ry-rollup-layout figure{margin:0;background:#edeae6;padding:24px 12px 16px}
.ryv .ry-rollup-layout img{display:block;width:100%;height:auto;object-fit:contain;max-height:550px}
.ryv .ry-rollup-layout figcaption{padding:12px 14px 0;font:10px/1.5 "IBM Plex Mono",monospace;text-transform:uppercase}
.ryv .ry-party{background:#151515;color:#f4f0e7;padding:105px 22px}
.ryv .ry-party .ry-label{color:#b4aca2;border-color:#7c756f}
.ryv .ry-party h2{margin:55px 0 45px;font-size:clamp(62px,8.8vw,145px);letter-spacing:-.077em;font-weight:500;line-height:.82}
.ryv .ry-party .ry-party-intro{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-bottom:65px}
.ryv .ry-party .ry-party-intro p{font-size:clamp(17px,1.6vw,23px);line-height:1.4;margin:0;max-width:740px}
.ryv .ry-party .ry-party-intro p:last-child{color:#c8c0b6}
.ryv .ry-party-images{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}
.ryv .ry-party-images figure{margin:0;min-width:0}
.ryv .ry-party-images img{width:100%;height:min(68vw,700px);display:block;object-fit:cover}
.ryv .ry-party-images figure:nth-child(2) img{object-position:center}
.ryv .ry-party-images figcaption{font:10px/1.5 "IBM Plex Mono",monospace;text-transform:uppercase;color:#c1b7ac;padding-top:12px}
.ryv .ry-party-comms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:70px}
.ryv .ry-party-comms figure{background:#292724;padding:20px 20px 14px;margin:0;min-width:0;display:flex;flex-direction:column;justify-content:space-between}
.ryv .ry-party-comms img{width:100%;height:480px;object-fit:contain;display:block}
.ryv .ry-party-comms figcaption{font:10px/1.5 "IBM Plex Mono",monospace;text-transform:uppercase;color:#bdb3a9;padding-top:18px}
.ryv .ry-wristbands{margin-top:34px;padding:25px 0;border-top:1px solid #77716b;display:grid;grid-template-columns:1fr 2fr;gap:30px}
.ryv .ry-wristbands p{max-width:650px;margin:0;font-size:clamp(16px,1.5vw,22px);line-height:1.4}
.ryv .ry-wristbands .ry-mono{color:#e9ddce}
.ryv .ry-real-mark-gallery{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.ryv .ry-real-mark-gallery img{height:80px;width:80px;object-fit:contain}
.ryv .ry-graphic p{max-width:820px}
.ryv img{max-width:100%}
@media(max-width:900px){
.ryv .ry-exhibit-feature{grid-template-columns:1fr 1fr}.ryv .ry-party-images{grid-template-columns:1fr 1fr}.ryv .ry-party-comms img{height:360px}
}
@media(max-width:650px){
 .ryv .ry-real-poster{padding:12px}
 .ryv .ry-asset-grid,.ryv .ry-exhibit-feature,.ryv .ry-party-images,.ryv .ry-rollup-layout{grid-template-columns:1fr}
 .ryv .ry-asset-figure.ry-frame{padding:8px}
 .ryv .ry-media-caption{flex-direction:column}
 .ryv .ry-fold-explanation{grid-template-columns:1fr;padding:22px 14px;gap:12px}
 .ryv .ry-fold-steps div{min-height:95px;padding:8px}
 .ryv .ry-fold-steps strong{font-size:38px}
 .ryv .ry-exhibit-feature img{height:auto;max-height:630px;min-height:0;object-fit:contain}
 .ryv .ry-photo-strip{grid-template-columns:1fr}
 .ryv .ry-photo-strip img{height:auto;max-height:520px;object-fit:contain}
 .ryv .ry-tote-stage{min-height:0}
 .ryv .ry-party{padding:72px 14px}
 .ryv .ry-party h2{font-size:clamp(56px,12vw,87px)}
 .ryv .ry-party .ry-party-intro{grid-template-columns:1fr;gap:16px}
 .ryv .ry-party-images img{height:auto;max-height:650px;object-fit:contain}
 .ryv .ry-party-comms{grid-template-columns:1fr;gap:10px;margin-top:35px}
 .ryv .ry-party-comms img{height:auto;max-height:600px}
 .ryv .ry-wristbands{grid-template-columns:1fr}
 .ryv .ry-real-mark-gallery img{width:49px;height:49px}
}
@media(prefers-reduced-motion:reduce){.ryv *, .ryv *:before,.ryv *:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}