/* One type scale shared by every page. */
:root{--type-body:16px;--type-small:14px;--type-label:12px;--type-work:16px;--type-heading:20px;--type-sans:'Helvetica Neue',Helvetica,Arial,sans-serif}
body{font-size:var(--type-body);line-height:1.65}
header .brand{font-size:17px}
header nav a,.nav a{font-size:var(--type-label);line-height:1.5;letter-spacing:.08em}
.intro h1{font-size:var(--type-heading)}
.intro p,.archive-intro,.prose,.entry,.terms{font-size:var(--type-body);line-height:1.7}
.work-choice span,.work-choice span:last-child,.work-title,.format h3,.work-preview h1{font-size:var(--type-work);line-height:1.45}
.work-choice span,.work-choice span:last-child,.work-choice:hover span{color:#191917}
.detail-copy h2{font-size:21px}
.detail-description{font-size:var(--type-body);line-height:1.7}
.detail-facts dt,.year-group h2,.section-label,.year,.work-year{font-size:var(--type-label);line-height:1.55}
.detail-facts dd,.format p,.subentry,.note{font-size:var(--type-small);line-height:1.65}
.enquire,.detail-back,.breadcrumbs a,.back,.sound-toggle{font-size:var(--type-small);line-height:1.55}
.format-price{font-size:15px}
.tier{font-size:20px}
#contact p,#request label,#request p,#email-draft p{font-size:var(--type-small);line-height:1.65}
input,textarea,button{font-family:var(--type-sans);font-size:var(--type-small);line-height:1.6}
.contact-details p{font-size:var(--type-body)!important;line-height:1.7}
.intro p,.archive-intro{white-space:normal}
@media(max-width:760px){:root{--type-body:15px;--type-small:14px;--type-label:11px;--type-work:15px;--type-heading:19px}header .brand{font-size:15px}.detail-copy h2{font-size:21px}.tier{font-size:20px}}
@media(max-width:440px){.shell{grid-template-columns:112px minmax(0,1fr)}header .brand{font-size:14px}.nav a,header nav a{letter-spacing:.04em}}

/* Canonical rules override legacy page styles completely for shared roles. */
:root{--serif:Georgia,'Times New Roman',serif;--sans:'Helvetica Neue',Helvetica,Arial,sans-serif;--ink:#191917;--muted:#73716c;--line:#deddd8;--accent:#8a453d;--accent-hover:#69332d;--sidebar:158px;}
body{font-family:var(--sans);font-weight:400;letter-spacing:.01em;color:var(--ink)}
[hidden],.hidden{display:none!important}
.shell{max-width:1500px;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);align-items:start}
.shell>header{grid-column:1;grid-row:1;position:sticky;top:var(--page-top);height:auto;align-self:start;display:block;border:0;}
.shell>header .brand{display:block;font:400 17px/1.4 var(--serif);letter-spacing:0;text-transform:none;color:var(--ink)}
.shell>header nav{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;}
.shell>header nav a{display:block;font:400 var(--type-label)/1.5 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.shell>header nav a:not(.active):not([aria-current=page]){color:var(--muted);text-decoration:none}
.shell>header nav a.active,.shell>header nav a[aria-current=page]{color:var(--accent);text-decoration:none}
/* Touch browsers may retain :hover after Back. Only desktop mouse links use it. */
@media(hover:hover) and (pointer:fine) and (min-width:761px){.shell>header nav a:not(.active):not([aria-current=page]):hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}}
.shell>main{grid-column:2;grid-row:1;min-width:0;}
.intro{display:block;border:0}
.intro h1{font:400 var(--type-heading)/1.25 var(--serif);letter-spacing:0}
.intro p{font:400 var(--type-body)/1.7 var(--serif);color:#4f4f4a;max-width:none;white-space:normal}

.title-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.work-choice span,.work-choice span:last-child,.work-title{font:400 var(--type-work)/1.45 var(--serif);color:var(--ink)}

.work-choice:hover span{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.detail-copy h2{font:400 21px/1.35 var(--serif);}
.detail-description,.prose,.entry,.terms{font:400 var(--type-body)/1.7 var(--serif)}
.detail-description{white-space:pre-line}
.detail-facts{max-width:100%}
.detail-facts>div{grid-template-columns:150px minmax(0,1fr);}
.detail-facts dt,.cv .section-label{font:400 var(--type-label)/1.55 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.detail-facts dd,.recognition-entry,.format p,.subentry,.note{font:400 var(--type-small)/1.65 var(--sans)}
.detail-facts dd{min-width:0;overflow-wrap:anywhere;color:#62615b}
.recognition-entry{font-size:inherit;line-height:inherit}
.enquire,.detail-back,.breadcrumbs a,.back{font:400 var(--type-small)/1.55 var(--sans);letter-spacing:.035em;text-transform:none;color:var(--accent);text-decoration:underline;text-underline-offset:4px}
.enquire:hover,.detail-back:hover,.breadcrumbs a:hover,.back:hover{color:var(--accent-hover)}
.detail-facts dd a,#contact a,.contact-details a,#email-draft a{color:var(--accent);text-decoration:underline;text-underline-offset:4px;text-decoration-color:currentColor}
.cv a{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.cv a:hover{color:var(--accent-hover)}
.detail-facts dd a:hover,#contact a:hover,.contact-details a:hover{color:var(--accent-hover)}

.detail-back-bottom{display:block;width:fit-content;max-width:100%;}
.content{max-width:610px;}
.cv{max-width:1000px;}
.cv .entry,.cv .subentry{font:400 var(--type-body)/1.7 var(--serif);color:var(--ink);letter-spacing:inherit}
.cv-section{grid-template-columns:145px minmax(0,1fr);}

.entries{max-width:none;min-width:0}
.cv-row{grid-template-columns:64px minmax(0,1fr);}
.entry{overflow-wrap:anywhere}

/* Every metadata, credit and recognition row uses the same two columns. */


.format h3{font:400 17px/1.45 var(--serif);}

.format-price{font:400 15px/1.55 var(--sans);color:var(--accent);letter-spacing:0}
.enquiry-page main{max-width:1000px;grid-template-columns:minmax(0,540px) minmax(180px,300px);}

.work-preview h1{font:400 17px/1.45 var(--serif)}
.tier{font:400 20px/1.4 var(--serif)}
.terms{overflow-wrap:anywhere}
#contact h2,#draft-title{font:400 17px/1.4 var(--serif)!important}

.contact-details a,#contact a{overflow-wrap:anywhere}
input,textarea{font-family:var(--sans);color:var(--ink);}
textarea{min-height:112px;resize:vertical}
.note{color:var(--muted)}

a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
@media(max-width:1100px){.enquiry-page main{grid-template-columns:minmax(0,1fr) minmax(180px,260px);}.cv-section{grid-template-columns:125px minmax(0,1fr);}}
@media(max-width:1000px){.title-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 :root{--sidebar:112px;}


 .shell>header .brand{font-size:15px}



 .detail-copy h2{font-size:20px}
 .detail-facts>div{grid-template-columns:minmax(76px,32%) minmax(0,1fr);}
 .detail-facts dt{overflow-wrap:anywhere}
 .cv-section{grid-template-columns:1fr;}

 .cv-row{grid-template-columns:54px minmax(0,1fr);}
 .work-grid{grid-template-columns:1fr;}
 .enquiry-page main{display:block}

 .work-preview{max-width:300px;}
 .tier{font-size:19px}
 input,textarea{font-size:16px}
 .landing-media{height:auto;aspect-ratio:16/9;min-height:0}
}
@media(max-width:600px){.title-grid{grid-template-columns:1fr}}
@media(max-width:440px){


 .shell>header .brand{font-size:14px}
 .shell>header nav a{letter-spacing:.04em}


 .detail-facts>div{grid-template-columns:minmax(0,1fr);}
 .format h3{font-size:16px;}
 .cv-row{grid-template-columns:48px minmax(0,1fr);}
}

/* The same artist mark and name on every page. */
:root{--brand-logo-width:112px;--brand-logo-gap:2px;--brand-name-size:12px;--brand-base-name-size:17px;--brand-gap-before-logo:42px;}
.shell>header .brand{display:flex;flex-direction:column;align-items:flex-start;}
.shell>header .brand-mark{display:block;width:var(--brand-logo-width);max-width:100%;height:auto}
.shell>header .brand-name{display:block;width:var(--brand-logo-width);max-width:100%;line-height:0}
.shell>header .brand-name img{display:block;width:100%;height:auto}
/* Keep the Archive introduction aligned with the first navigation item. */

@media(max-width:760px){:root{--brand-logo-width:88px;--brand-name-size:11px;--brand-base-name-size:15px;--brand-gap-before-logo:32px;}}
@media(max-width:440px){:root{--brand-logo-width:84px;--brand-name-size:10.5px;--brand-base-name-size:14px;--brand-gap-before-logo:26px;}}

/* Quiet caption beneath the landing video. */
/* A little more reading room, with one-line navigation on every screen. */
:root{--sidebar:210px;}

.shell>header nav a{white-space:nowrap}
.detail-copy h2{font-size:22px}
.format h3,.work-preview h1{font-size:18px}
.format-price{font-size:16px}
.tier{font-size:21px}
#contact h2,#draft-title{font-size:18px!important}
.year-group{border:0}

.year-group h2{color:var(--accent);font-size:var(--type-label)}


@media(max-width:760px){
 :root{--sidebar:162px;}


 .shell>header nav a{letter-spacing:.04em}
 .detail-copy h2{font-size:21px}
 .tier{font-size:20px}

}
@media(max-width:440px){
 :root{--sidebar:156px;}


 .format h3{font-size:17px}
}
.landing-work{width:min(100%,1180px);}
.landing-caption{text-align:center}
.landing-caption a{font:italic 400 13px/1.4 var(--serif);letter-spacing:0;color:var(--accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
@media(hover:hover) and (pointer:fine){.landing-caption a:hover{color:var(--accent-hover)}}
@media(max-width:760px){
 .landing-caption{font-size:8px;line-height:1.2}
 .landing-caption a{font-size:8px;line-height:1.2;text-underline-offset:2px}
 .landing-media .sound-toggle{right:5px;bottom:5px;font:400 8px/1 var(--sans);letter-spacing:.04em}
 .landing-media .sound-toggle::before{content:"";position:absolute;inset:-25px -8px -5px}
}

