/* v0.22: readable evidence and shorter mobile introductions. */
html{scrollbar-gutter:stable}
.case-role{font-size:14px;line-height:1.5;margin:16px 0 0;color:var(--muted)}
.project-production{font-size:14px;line-height:1.6;padding:16px 0 20px;color:var(--muted)}
.project-production strong{font-weight:normal;color:var(--ink)}
.project-production a{text-decoration:underline;text-underline-offset:3px}
.secondary-cards .project-card{display:flex;flex-direction:column;height:100%}
.secondary-cards .card-info{flex:1}
.secondary-cards .poster-card .card-image img{object-fit:cover;object-position:center}
.caption .type{white-space:normal;flex-shrink:0}
.caption .caption-copy{min-width:0}
.car-final-pair{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:start}
.car-final-pair .final-story{margin:0;width:100%;max-width:none}
.car-final-pair img,.car-final-pair video{width:100%;height:auto;display:block}
#car-final .car-final-pair .caravan-film{max-width:none;margin:0}
#car-realization .assembly-evidence{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:center}
#car-realization .material-evidence .image-button{aspect-ratio:1.13;overflow:hidden;position:relative}
#car-realization .material-evidence .image-button img{position:absolute;inset:0;height:100%!important;width:100%!important;max-height:none!important;object-fit:cover!important;object-position:54% 65%}
.section .function-note{font-size:16px;line-height:1.6;margin:12px 0 0;max-width:70ch}
.sheet-link{display:block;margin-top:9px}
.sheet-link .text-image-link{font-size:14px}
.mule-sequence-clean{max-width:900px;margin:22px auto 0;scroll-margin-top:90px}
.mule-sequence-clean .image-button img{display:block;width:100%;height:auto;object-fit:contain}
.mule-sequence-clean .caption{font-size:13px}
.page-rides .process-three .caption{font-size:14px}
.page-rides .water-atmosphere-small{max-width:720px;margin:28px auto}
.tool-sheets{grid-template-columns:1.28fr 1fr!important;align-items:stretch}
.tool-sheets .stamp-sheet{max-width:none!important}
.tool-sheets .stamp-sheet img{width:100%;height:auto;max-height:470px;object-fit:contain}
.tool-comparison{min-width:0;display:flex;flex-direction:column;gap:18px}
.tool-comparison>figure:first-child>.image-button{height:340px;display:flex;align-items:center;justify-content:center}
.tool-comparison>figure:first-child>.image-button img{width:100%;height:100%;max-height:none;object-fit:contain}
.tool-comparison .tool-model{margin-top:auto}
.tool-comparison .tool-model .image-button img{height:280px;width:100%;object-fit:contain;background:#a6afaa}
.page-deadletter .interaction-grid{display:block;max-width:950px;margin:auto}
.page-deadletter .poster-scope{font-size:14px}
.play-trigger.video-label{position:absolute;left:50%;top:50%;bottom:auto;right:auto;transform:translate(-50%,-50%);pointer-events:auto;cursor:pointer;border:1px solid #f1ebdd80;background:#243b32ed;color:#fff;font:14px/1.4 var(--body);padding:14px 20px;white-space:nowrap}
.play-trigger[hidden]{display:none!important}
.video-player.playing .play-trigger{display:none}
.video-player .play-trigger:focus-visible{outline:3px solid #cfb345;outline-offset:4px}
.console-version-note{font-size:16px;line-height:1.6;margin-bottom:24px;max-width:76ch}
.page-divingbell .console-process-pair .image-button{overflow:hidden}
.page-divingbell .console-process-pair img{width:103%;max-width:none;transform:translateX(-1.5%)}
.resume-contact{display:flex;gap:10px 22px;align-items:baseline;flex-wrap:wrap;font-size:16px}
.resume-contact a[href^="tel:"]{white-space:nowrap}
.resume-contact a[href^="mailto:"]{overflow-wrap:anywhere}
.resume-availability{font-size:15px;line-height:1.5;color:var(--muted);margin-top:17px;max-width:65ch}
.copy-email-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:14px}
.copy-email-row button{border:0;border-bottom:1px solid var(--accent);background:none;font:14px/1.5 var(--body);padding:4px 0;color:var(--accent);cursor:pointer}
.copy-status{font-size:14px}
.availability h2{font-size:30px}
.page-contact .contact-actions{flex-wrap:wrap;gap:18px 25px}
.other-intro p{max-width:65ch}
.art-reader.dialog{width:min(1400px,96vw);max-width:96vw;max-height:96dvh;height:fit-content;margin:auto;padding:16px;border:1px solid #aaa;background:#18211d;color:#f1ebdd;overflow:auto}
.art-reader::backdrop{background:#080c0be8}
.reader-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-bottom:12px;font:14px/1.4 var(--body)}
.reader-toolbar button,.reader-original{font:inherit;color:inherit;background:#2b3d32;border:1px solid #718073;padding:7px 10px;min-height:36px;cursor:pointer;white-space:nowrap}
.reader-toolbar button:disabled{opacity:.4;cursor:default}
.reader-toolbar button:focus-visible,.reader-original:focus-visible{outline:3px solid #dfbd4f;outline-offset:2px}
.reader-scale{min-width:4ch;font:13px/1.3 var(--body);text-align:center}
.reader-close{margin-left:auto}
.reader-stage{position:relative;overflow:auto;overscroll-behavior:contain;touch-action:none;outline-offset:-3px}
.reader-stage.can-pan{cursor:grab}
.reader-stage.can-pan:active{cursor:grabbing}
.reader-canvas{display:flex;justify-content:center;align-items:start;min-width:100%;margin:auto}
.dialog .reader-image{display:block;max-width:none!important;max-height:none!important;flex:none;object-fit:contain;margin:0;user-select:none}
.art-reader .reader-caption{font:14px/1.5 var(--body);margin:12px 0 0;max-width:100%}
.reader-help{font:13px/1.4 var(--body);margin:8px 0 0;color:#c2cabc}
.art-reader.is-loading .reader-image{visibility:hidden}
@media(max-width:900px){.car-final-pair{grid-template-columns:1fr}.car-final-pair .caravan-film{max-width:760px!important;margin:0 auto!important}.tool-sheets{gap:22px!important}}
@media(max-width:700px){
 .project-intro{padding:22px 0 16px!important}
 .project-intro .intro-grid{gap:10px!important;margin-top:10px!important}
 .project-intro h1{font-size:40px!important;line-height:1.03!important;margin:0!important}
 .project-intro .intro-copy{font-size:16px!important;line-height:1.5!important;margin:0!important}
 .case-role{font-size:14px;margin-top:12px}
 .project-production{font-size:14px;padding:12px 0 16px}
 .hero-caption{font-size:13px!important;padding-top:9px!important;padding-bottom:8px!important}
 .page-rides .rides-final-pair{padding-top:8px;gap:17px}
 .page-rides .rides-final-pair h2{font-size:25px;margin:0 0 8px}
 .page-rides .rides-final-pair .caption{font-size:13px}
 .page-rides .rides-final-pair img{aspect-ratio:auto}
 .page-deadletter .poster-opening{display:flex!important;flex-direction:column!important;padding-top:20px!important;gap:18px!important}
 .page-deadletter .poster-copy{display:contents}
 .page-deadletter .poster-heading{order:0}
 .page-deadletter .poster-heading h1{font-size:40px!important;line-height:1.05!important;margin:10px 0!important}
 .page-deadletter .poster-heading .intro-copy{font-size:16px!important;line-height:1.5!important}
 .page-deadletter .poster-scope{order:1;margin:0;display:block;padding:0;border:0;font-size:14px;line-height:1.5}
 .page-deadletter .poster-scope>div{margin:5px 0!important}
 .page-deadletter .poster-tools{display:none}
 .page-deadletter .poster-art{order:2;width:100%;margin:0!important}
 .page-deadletter .full-poster .image-button{height:230px!important;overflow:hidden}
 .page-deadletter .full-poster img{width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:50% 22%!important}
 .page-deadletter .poster-opening .caption{font-size:13px}
 .page-deadletter #dead-design{padding-top:28px}
 .page-deadletter #dead-design .section-head{gap:12px;margin-bottom:20px}
 .page-deadletter #dead-design h2{font-size:32px}
 .tool-sheets{grid-template-columns:1fr!important;display:grid!important}
 .tool-sheets .stamp-sheet{width:100%;margin:0!important}
 .tool-comparison>figure:first-child>.image-button{height:auto}
 .tool-comparison>figure:first-child>.image-button img{height:auto}
 .tool-comparison .tool-model .image-button img{height:260px}
 #car-realization .assembly-evidence{display:grid;grid-template-columns:1fr}
 #car-realization .material-evidence .image-button{aspect-ratio:1.6}
 .caption .type{font-size:11px;max-width:none}
 .caption{column-gap:8px!important}
 .car-final-pair{gap:23px}
 .page-other .other-intro{padding:24px 0 12px}
 .page-other .other-intro h1{font-size:40px}
 .page-other .other-intro p{display:none}
 .page-other #epic-door{padding-top:20px}
 .page-other #epic-door .section-head{gap:10px;margin-bottom:22px}
 .page-other #epic-door .section-head h2{font-size:33px}
 .page-other #epic-door .section-head p{font-size:16px}
 .page-other #epic-door .other-credit{font-size:14px!important;margin-top:9px}
 .resume-contact{display:flex;flex-direction:column;gap:10px;font-size:15px}
 .resume-availability{font-size:15px}
 .page-contact .contact-copy h1{font-size:39px;line-height:1.08;margin-bottom:22px}
 .page-contact .contact-page{padding-top:28px}
 .page-contact .availability h2{font-size:26px}
 .art-reader.dialog{padding:10px;width:calc(100vw - 16px);max-width:calc(100vw - 16px)}
 .reader-toolbar{gap:6px;font-size:14px;padding-bottom:9px}
 .reader-toolbar button,.reader-original{padding:6px 8px;min-height:36px}
 .reader-close{margin-left:0}
 .reader-help{font-size:12px}
 .art-reader .reader-caption{font-size:14px}
}
