/* Reading system across the existing site, without changing image geometry.
   Main/dialog scopes deliberately supersede older component-specific small type. */
:root{--read-body:24px;--read-ui:22px;--read-help:20px;--ink:#292622;--muted:#605a52;--accent:#4b443a;--bronze:#655f56;--night:#252320;--line:#d7d2ca;--soft:#efede8;--header-height:112px}
html{scroll-padding-top:calc(var(--header-height) + 16px)}
body.reading-v16{font-size:var(--read-body);line-height:1.65}
body.reading-v16 #main :is(p,li,dt,dd){font-size:var(--read-body);line-height:1.65}
body.reading-v16 #main :is(a,button,label,legend,summary,input,select,textarea),body.reading-v16 dialog :is(a,button,label,legend,summary,input,select,textarea){font-size:var(--read-ui);line-height:1.5}
body.reading-v16 #main :is(.small,.eyebrow,.art-meta,.sheet-note,.collection-key,.image-hint,.rights-note,.custom-photo-caption,.studio-scale-note,.studio-instruction,.measurement-summary),body.reading-v16 dialog :is(.small,.eyebrow,.art-meta,.selection-code,.comparison-intro){font-size:var(--read-help);line-height:1.6;letter-spacing:normal}
body.reading-v16 #main :is(figcaption,.control-heading>span,.studio-preview-top,.project-path li:before),body.reading-v16 dialog :is(p,span){font-size:var(--read-help);line-height:1.6}
body.reading-v16 #main :is(#scene-credit,#stage-instruction,#frame-size-result,#upload-help,#studio-art-meta,#custom-status,#quote-caption,#calendar-caption,#quote-zoom-caption,#quote-zoom-help,#quote-zoom-warning,#mode-note,#draft-help,#draft-status){font-size:var(--read-help);line-height:1.6}
body.reading-v16 #main .eyebrow{letter-spacing:.07em}
body.reading-v16 #main :is(.text-link,.primary-link,.outline-button){min-height:52px;white-space:normal;max-width:100%;gap:18px}
body.reading-v16 #main :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=range]){min-height:54px;padding:14px 15px;margin-bottom:26px;max-width:100%;border-color:#8a8175}
body.reading-v16 #main :is(input,textarea)::placeholder{color:#6a6359}
body.reading-v16 #main :is(.outline-button,.custom-modes label,.layout-presets button,.month-index button){border-color:#8a8175}
body.reading-v16 #main :is(label,legend){margin-bottom:12px}
body.reading-v16 #main :is(input[type=checkbox],input[type=radio]),body.reading-v16 dialog input[type=checkbox]{width:22px;height:22px;flex:0 0 22px}
body.reading-v16 #main p+p{margin-top:24px}
body.reading-v16 #main p a{font-size:inherit;line-height:inherit}
body.reading-v16 #main :is([data-count],.selected-contact span){font-size:var(--read-help);line-height:1.5}
body.reading-v16 #main .project-path li::before{font-size:18px;line-height:1.5;float:none;margin:0 0 12px}
body.reading-v16 #main .project-path p{margin-left:0}
body.reading-v16 #main :is(.reading,.curatorial-copy,.author-copy){max-width:76ch}
body.reading-v16 #main .reading{max-width:960px;padding-bottom:110px}
body.reading-v16 #main .reading h2{font-size:40px;line-height:1.25;margin:52px 0 24px}
body.reading-v16 #main :is(.page-lead,.studio-lead){padding-block:80px 65px}
body.reading-v16 #main .page-lead>p:last-child{font-size:26px;max-width:54ch}
body.reading-v16 #main :is(.project-path h2,.professional-process h2,.control-heading h2){font-size:32px;line-height:1.25}
body.reading-v16 #main :is(.professional-inquiry h2,.custom-review h2,.contact-layout h2){font-size:42px;line-height:1.2}
body.reading-v16 #main .professional-inquiry h3{font-size:32px;line-height:1.3}
body.reading-v16 #main .professional-intro h1{font-size:clamp(42px,4.6vw,64px)}
body.reading-v16 #main :is(.collection-works .work h3,.professional-intro figcaption strong){font:44px/1.35 Hand,cursive;letter-spacing:0}
body.reading-v16 #main .collection-cover h3{font-size:36px;line-height:1.3}
body.reading-v16 #main .collection-cover p{font-size:22px;line-height:1.6}
body.reading-v16 #main .collection-works{gap:90px 48px}
body.reading-v16 #main .work figcaption{margin-top:24px;gap:18px}
body.reading-v16 #main .sheet-download{font-size:var(--read-help);min-height:48px;margin-top:10px}
body.reading-v16 #main .collection-toolbar{gap:22px 28px;margin-bottom:58px}
body.reading-v16 #main .collection-filter{align-items:flex-start;flex-direction:column;gap:6px;flex:1 1 200px}
body.reading-v16 #main .collection-filter select{width:100%;margin:0;padding:10px 24px 10px 0}
body.reading-v16 #main .section-intro{gap:30px 70px;margin-bottom:64px}
body.reading-v16 #main .collection-key{margin:0 0 46px;max-width:72ch}
body.reading-v16 #main .author-copy p{max-width:53ch}
body.reading-v16 #main .author-portrait figcaption{font-size:var(--read-help);line-height:1.6}
body.reading-v16 #main .custom-invite{gap:40px;padding-block:56px;flex-wrap:wrap}

/* Initial composition stays in place, with fewer labels and more readable copy. */
body.reading-v16 #main .opening-v15 .opening-note{font-size:26px;line-height:1.6}
body.reading-v16 #main .opening-v15 #hero-title{font:50px/1.3 Hand,cursive;color:#faf9f6;margin:0}
body.reading-v16 #main .opening-v15 .opening-work figcaption{margin-top:23px}
body.reading-v16 #main .opening-v15 .opening-context{margin-top:35px}
body.reading-v16 #main .opening-v15 .opening-routes a{min-height:52px}
body.reading-v16 #main .opening-v15 .opening-primary{font-size:24px;min-height:62px}
body.reading-v16 #main .home-projects .project-study-note{font-size:var(--read-help);margin-top:18px;color:#605a52}
body.reading-v16 #main .first-photograph{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:70px;max-width:1440px;margin:0 auto 100px;padding:65px var(--gutter);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.first-photograph h2{font:clamp(40px,4vw,60px)/1.2 Book,Georgia,serif;letter-spacing:-.025em}
.first-photograph>div{min-width:0;max-width:62ch}.first-photo-links{display:flex;flex-wrap:wrap;gap:18px 30px;margin-top:28px}.first-photo-links a{min-height:52px;display:inline-flex;align-items:center;text-underline-offset:7px}

/* Shared navigation and footer. */
body.reading-v16 .preview-bar{font-size:18px;line-height:1.5;padding:8px 16px}
body.reading-v16 .site-header{min-height:112px;gap:22px;padding-block:21px}
body.reading-v16 #main-nav a{font-size:22px;line-height:1.45;min-height:48px}
body.reading-v16 .site-header :is(.selection-trigger,.menu-toggle),body.reading-v16 .language-switch select{font-size:20px;min-height:48px}
body.reading-v16 .site-header .selection-trigger [data-count]{font-size:18px}
body.reading-v16 .language-switch select{width:65px}
body.reading-v16 .site-footer.v7-footer .footer-bottom{font-size:24px;line-height:1.6;gap:20px 34px}
body.reading-v16 .site-footer.v7-footer .footer-invitation p{font-size:36px;line-height:1.4}
body.reading-v16 .site-footer.v7-footer .footer-invitation>.text-link{font-size:30px}
body.reading-v16 .site-footer.v7-footer .footer-preferences,body.reading-v16 .site-footer.v7-footer .motion-choice,body.reading-v16 .site-footer.v7-footer .motion-choice select{font-size:20px;line-height:1.5}
body.reading-v16 .site-footer.v7-footer :focus-visible,body.reading-v16 .opening-v15 :focus-visible{outline-color:#faf9f6}

/* Selection and details stay traceable; photograph display never loses its space. */
body.reading-v16 #selection-dialog{width:min(720px,100vw);padding:36px 40px}
body.reading-v16 #selection-dialog.is-comparing{width:min(1240px,100vw)}
body.reading-v16 #selection-dialog :is(a,button,label){font-size:var(--read-ui);line-height:1.5}
body.reading-v16 #selection-dialog h2{font-size:46px}
body.reading-v16 #selection-dialog .selection-row{padding-block:24px;gap:16px}
body.reading-v16 #selection-dialog .selection-code{font-size:20px}
body.reading-v16 #selection-dialog .comparison-work h3{font:44px/1.3 Hand,cursive}
body.reading-v16 #selection-dialog :is(.selection-tools,.selection-footer){gap:20px 26px;margin-top:28px}
body.reading-v16 #viewer .viewer-top{font-size:20px;line-height:1.5;flex-wrap:wrap;gap:12px 24px}
body.reading-v16 #viewer #viewer-background{font-size:20px;line-height:1.5;min-height:48px}
body.reading-v16 #viewer :is(.eyebrow,.small){color:#d8d2c9}
body.reading-v16 #viewer.light :is(.eyebrow,.small){color:var(--muted)}
body.reading-v16 #viewer :focus-visible{outline-color:#faf9f6}
body.reading-v16 #viewer.light :focus-visible{outline-color:var(--accent)}
body.reading-v16 #viewer .viewer-bottom h2{font:44px/1.2 Hand,cursive}
body.reading-v16 #viewer :is(#viewer-code,#viewer-meta,#viewer-position){font-size:18px;line-height:1.5}
body.reading-v16 #viewer .viewer-actions{gap:10px;justify-content:flex-end}
body.reading-v16 #viewer .viewer-actions :is(a,button){font-size:20px;min-height:48px}
body.reading-v16 .toast{font-size:20px;line-height:1.5}

/* Larger controls need room; preview coordinates and physical calculations stay unchanged. */
body.reading-v16 #main .studio-layout{grid-template-columns:minmax(0,1fr) 410px;gap:48px}
body.reading-v16 #main .studio-layout.is-expanded{grid-template-columns:minmax(0,1fr) 410px}
body.reading-v16 #main .studio-section{padding-block:32px 38px}
body.reading-v16 #main .studio-controls :is(button,select){min-height:52px;white-space:normal;max-width:100%}
body.reading-v16 #main .studio-label{font-size:18px;line-height:1.4;letter-spacing:0;padding:5px 9px;color:#49433b}
body.reading-v16 #main .studio-view-tools{gap:14px 18px;margin-block:16px 22px}
body.reading-v16 #main .layout-presets{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-block:25px 32px}
body.reading-v16 #main .layout-presets button{padding:14px 8px;min-height:110px;font-size:20px}
body.reading-v16 #main .layout-sketch{margin-bottom:14px}
body.reading-v16 #main :is(.primary-link:hover,.frame-tabs button[aria-pressed=true]){background:#4b443a;color:#faf9f6;border-color:#4b443a}
body.reading-v16 #main :is(.outline-button:hover,.outline-button[aria-pressed=true],.layout-presets button[aria-pressed=true]){background:#eae7e1;border-color:#756b5e;box-shadow:none}
body.reading-v16 #main .layout-sketch i{background:#8a8174}
body.reading-v16 #main .sim-frame:focus-visible{outline-color:#4b443a}
body.reading-v16 #main .studio-field-pair{gap:20px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
body.reading-v16 #main .wall-pins button{font-size:20px;min-height:44px;min-width:44px;width:44px;height:44px;line-height:1}
body.reading-v16 #main .control-heading{align-items:baseline;gap:20px}
body.reading-v16 #main .control-heading>span{color:#605a52}
body.reading-v16 #main .composition-summary{margin-top:32px;padding-top:30px}
body.reading-v16 #main .professional-inquiry{gap:70px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
body.reading-v16 #main .professional-form-row,body.reading-v16 #main .field-pair{gap:24px}
body.reading-v16 #main .professional-process{gap:40px;padding-top:52px}
body.reading-v16 #main .custom-layout{grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:50px}
body.reading-v16 #main .month-index{gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}
body.reading-v16 #main .month-index button{font-size:20px;padding:12px 8px;min-height:78px}
body.reading-v16 #main .month-index small{font-size:18px;line-height:1.5}
body.reading-v16 #main .calendar-grid{font-size:24px}
body.reading-v16 #main .calendar-grid :is(th,td){font-size:22px;line-height:1.5;padding:8px 0}
body.reading-v16 #main .calendar-message{font-size:28px;line-height:1.45}
body.reading-v16 #main .quote-overlay .quote-words{font-size:max(18px,var(--quote-font,32px));line-height:1.35}
body.reading-v16 #quote-zoom .quote-zoom-header{gap:20px;flex-wrap:wrap}
body.reading-v16 #quote-zoom .quote-zoom-header h2{font-size:34px;line-height:1.25}
body.reading-v16 #quote-zoom :is(#quote-zoom-help,#quote-zoom-caption,#quote-zoom-warning){font-size:18px;line-height:1.5}
body.reading-v16 #quote-zoom #quote-zoom-text{font-size:22px;line-height:1.6}

@media(max-width:1200px){
 body.reading-v16 .site-header #main-nav{display:none;order:5;width:100%;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:16px}
 body.reading-v16 .site-header #main-nav.open{display:flex}
 body.reading-v16 .site-header{flex-wrap:wrap}
 body.reading-v16 .site-header .menu-toggle{display:flex;margin-left:auto}
 body.reading-v16 #main .studio-layout{gap:30px;grid-template-columns:minmax(0,1fr) 370px}
 body.reading-v16 #main .studio-preview{position:static}
}
@media(max-width:900px){
 body.reading-v16 #main :is(.custom-layout,.professional-inquiry,.professional-intro,.professional-process){grid-template-columns:minmax(0,1fr);gap:36px}
 body.reading-v16 #main .custom-preview-column{position:static}
 body.reading-v16 #main .professional-form-row{grid-template-columns:minmax(0,1fr)}
 body.reading-v16 #main .studio-layout{display:flex;flex-direction:column;gap:28px}
 body.reading-v16 #main .studio-preview{position:static;width:100%}
 body.reading-v16 #main .scene-viewport{position:static;padding-bottom:18px}
 body.reading-v16 #main .studio-controls{width:100%}
 body.reading-v16 #main .studio-layout.is-expanded{display:flex}
 body.reading-v16 #main .first-photograph{grid-template-columns:minmax(0,1fr);gap:30px;padding-block:48px}
 body.reading-v16 #main .project-path{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:600px){
 :root{--read-body:22px;--read-ui:20px;--read-help:18px;--header-height:152px}
 body.reading-v16 .site-header{min-height:152px;gap:8px 14px;padding-block:16px}
 body.reading-v16 .site-header .menu-toggle{margin:0}
 body.reading-v16 .preview-bar{font-size:18px;line-height:1.5}
 body.reading-v16 #main .opening-v15 .opening-note{font-size:24px;line-height:1.6}
 body.reading-v16 #main .opening-v15 #hero-title{font-size:42px;line-height:1.3}
 body.reading-v16 #main .opening-v15 .opening-primary{font-size:22px}
 body.reading-v16 #main .page-lead{padding-block:52px 44px}
 body.reading-v16 #main .page-lead>p:last-child{font-size:24px}
 body.reading-v16 #main .reading h2{font-size:34px;margin-top:40px}
 body.reading-v16 #main .collection-works{gap:78px}
 body.reading-v16 #main .collection-works .work h3{font-size:40px}
 body.reading-v16 #main .collection-cover h3{font-size:32px}
 body.reading-v16 #main .collection-cover p{font-size:20px}
 body.reading-v16 #main .work figcaption{gap:10px}
 body.reading-v16 #main .collection-toolbar{gap:20px}
 body.reading-v16 #main .collection-filter{flex-basis:100%;width:100%}
 body.reading-v16 #main .studio-field-pair{grid-template-columns:minmax(0,1fr);gap:12px}
 body.reading-v16 #main .studio-label{font-size:18px;bottom:6px;left:7px}
 body.reading-v16 #main .month-index{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.reading-v16 #main .calendar-grid :is(th,td){font-size:18px}
 body.reading-v16 #main .calendar-message{font-size:24px}
 body.reading-v16 #main .studio-preview-top{flex-wrap:wrap;gap:10px}
 body.reading-v16 #main .professional-inquiry h2{font-size:36px}
 body.reading-v16 #main .custom-review{padding-inline:22px}
 body.reading-v16 .site-footer.v7-footer .footer-bottom{font-size:22px}
 body.reading-v16 .site-footer.v7-footer .footer-invitation p{font-size:32px}
 body.reading-v16 .site-footer.v7-footer .footer-preferences,body.reading-v16 .site-footer.v7-footer .motion-choice,body.reading-v16 .site-footer.v7-footer .motion-choice select{font-size:20px}
 body.reading-v16 #selection-dialog,body.reading-v16 #selection-dialog.is-comparing{padding:24px 22px}
 body.reading-v16 #selection-dialog h2{font-size:40px}
 body.reading-v16 #selection-dialog .selection-row{grid-template-columns:22px minmax(0,1fr) 44px;gap:10px}
 body.reading-v16 #selection-dialog .selection-code{font-size:18px}
 body.reading-v16 #viewer{overflow:auto;display:flex;padding:14px 18px}
 body.reading-v16 #viewer:not([open]){display:none}
 body.reading-v16 #viewer .viewer-picture{flex:1 0 170px;min-height:170px}
 body.reading-v16 #viewer .viewer-bottom h2{font-size:38px}
 body.reading-v16 #viewer .viewer-actions{justify-content:flex-start;gap:8px}
 body.reading-v16 #viewer .viewer-actions :is(a,button){font-size:18px;min-height:48px}
 body.reading-v16 #quote-zoom{overflow:auto}
 body.reading-v16 #quote-zoom .quote-zoom-stage{flex:1 0 180px}
}
@media(max-width:800px) and (min-height:700px){
 body.reading-v16 #main .studio-layout:not(.is-expanded) .scene-viewport{position:sticky;top:var(--header-height)}
}
