/* One visual hierarchy: white gallery, green identity, quiet rose accents. */
:root{--paper:#fff;--wash:#fff;--line:#d7ded8}
body,body main,body .archive-preview,body .discovery,body .restored-art,body .foundation-portrait{background:#fff}
body .header-inner{padding-top:20px}body .brand{gap:20px}body .nav{margin-top:16px;padding-block:0}
body .hero{padding-block:48px}body .hero-layout{grid-template-columns:1.1fr 1fr;gap:64px;align-items:center}
body .hero-copy h1{font-size:clamp(2.25rem,4.2vw,3.5rem);max-width:15ch}
body .hero-copy>p{max-width:32ch}body .restored-art{border:0;padding:0;max-width:470px;width:100%;justify-self:end}
body .restored-art:before{display:none}body .restored-art img{aspect-ratio:1.4;object-fit:contain}body .restored-art figcaption{padding-top:18px;margin-top:14px;border-top:1px solid var(--line)}
body .museum-opening{background:#fff;color:var(--ink);padding-top:42px}
body .museum-intro{grid-template-columns:1fr 1fr;gap:64px;align-items:center}
body .museum-intro h1{font-size:clamp(2.5rem,4.5vw,3.8rem);line-height:1.12}
body .museum-intro h1 em{color:var(--rose)}body .museum-intro>div>p{font-size:1.15rem;color:var(--muted);line-height:1.6;margin-top:22px}
body .museum-enter{min-width:0;width:fit-content;gap:30px;margin-top:26px;border:0;border-bottom:1px solid #6c8070;padding:12px 0}
body .exhibition-piece{max-width:470px;width:100%;justify-self:end}
body .exhibition-mount{padding:0;background:#fff;box-shadow:none}
body .exhibition-mount img{aspect-ratio:1.5;object-fit:contain}
body .exhibition-piece figcaption{border-left:0;border-top:1px solid var(--line);padding:16px 0 0;margin-top:20px;gap:6px}
body .exhibition-piece figcaption span,body .museum-provenance{color:var(--muted)}
body .museum-provenance{border-top:0;border-bottom:1px solid var(--line);margin-top:32px;padding:18px 0;align-items:baseline;gap:20px;line-height:1.6}
body .collection-intro{padding-top:42px;padding-bottom:26px;grid-template-columns:1.2fr 1fr;gap:16px 50px;align-items:center}
body .collection-intro h2{font-size:2rem;max-width:22ch}body .collection-intro .collection-medium{margin-top:0}
body.museum-archive .archive-tools{padding-block:24px}body.museum-archive #archive-recordings{gap:44px 32px}
body.museum-archive .thumb,body .teacher-photo{background:#fff;border:1px solid #d7ded8;padding:22px;aspect-ratio:1.35;display:flex;justify-content:center;align-items:center;border-radius:0}
body.museum-archive .thumb img,body .teacher-photo img{width:auto;height:190px;max-width:100%;object-fit:contain;box-shadow:none;filter:none}
body.museum-archive .recording .thumb:hover{background:#fff}
body .recording-meta,body.museum-archive .recording-meta{margin-top:18px;line-height:1.6}
body .recording h3,body .teacher-description h3{margin-top:8px;font-size:1.3rem;line-height:1.4}
body .recording .teacher,body .teacher-description .teacher{margin-top:10px;color:var(--muted)}
body .recording-links,body.museum-archive .recording-links{margin-top:16px;border:0;padding:0}
body .recording-links a{display:inline-flex;align-items:center;gap:12px;min-height:48px;text-decoration:underline;text-underline-offset:6px}
body .recording-links svg{flex-shrink:0}
body .foundation-title{padding-block:36px;gap:48px}body .foundation-title h1{max-width:19ch}body .foundation-content{padding-top:32px}
@media(max-width:1000px){body .hero-layout,body .museum-intro{gap:30px}body .hero-copy h1{font-size:2.6rem}body .hero-copy .actions{display:flex;flex-wrap:wrap}body .collection-intro{grid-template-columns:1fr}body .exhibition-piece{max-width:420px}body .museum-provenance{flex-wrap:wrap}}
@media(max-width:699px){body .hero-layout,body .museum-intro{grid-template-columns:1fr;gap:28px}body .hero{padding-block:30px}body .hero-copy h1{max-width:none;font-size:2.4rem}body .restored-art,body .exhibition-piece{justify-self:center;max-width:390px}body .museum-opening{padding-top:30px}body .museum-intro h1{font-size:2.65rem}body .museum-intro>div>p{font-size:1.05rem;margin-top:18px}body .museum-enter{margin-top:18px}body .exhibition-mount img{height:220px}body .exhibition-piece figcaption{margin-top:12px;padding-top:12px}body .museum-provenance{margin-top:18px;padding:16px 0}body .collection-intro{padding-top:30px}body .collection-intro h2{font-size:1.8rem}body .recordings{gap:36px}body.museum-archive .thumb,body .teacher-photo{aspect-ratio:1.45;padding:18px}body.museum-archive .thumb img,body .teacher-photo img{height:170px}body .teacher-recording{grid-template-columns:1fr}body .foundation-title{gap:24px}body .foundation-title h1{font-size:2.1rem}}
/* Classes lead; heritage remains in the lettering, emblem and considered spacing. */
body .class-intro{padding-block:42px 30px}
body .class-intro h1{font-size:clamp(2rem,3.7vw,3.2rem);line-height:1.12;max-width:24ch;margin:0}
body .class-intro>p{max-width:58ch;margin:18px 0 0;line-height:1.65;color:var(--muted)}
body .class-intro .actions{margin-top:18px;gap:28px}
body .class-spotlight{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:56px;padding-block:44px 54px;border-block:1px solid var(--line)}
body .class-spotlight h2{font-size:clamp(2rem,3.9vw,3.5rem);line-height:1.15;margin:0}
body .spotlight-teacher{font-size:1.1rem;margin:20px 0 12px}
body .spotlight-copy>p:not(.spotlight-teacher){max-width:48ch;color:var(--muted);line-height:1.7;margin:0 0 26px}
body .class-spotlight>img{width:100%;max-width:220px;height:240px;object-fit:contain;justify-self:center}
body .featured-discovery{padding-block:58px}
body .featured-discovery> .wrap > h2{font-size:clamp(2rem,3.7vw,3.2rem);line-height:1.12;margin:0 0 34px}
body .feature-group{border-top:1px solid var(--line);padding-top:26px}
body .feature-group + .feature-group{margin-top:44px}
body .feature-group-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:18px}
body .feature-group-heading h3{font-family:Spectral,Georgia,serif;font-size:1.5rem;font-weight:400;line-height:1.2;margin:0}
body .feature-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
body .feature-link{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);color:var(--ink);font-family:Spectral,Georgia,serif;font-size:1.4rem;line-height:1.35;text-decoration:none;padding-bottom:14px}
body .feature-link:hover,body .master-feature:hover span{text-decoration:underline;text-underline-offset:5px}
body .master-feature{display:flex;align-items:center;gap:18px;min-height:116px;color:var(--ink);font-family:Spectral,Georgia,serif;font-size:1.4rem;line-height:1.3;text-decoration:none}
body .master-feature img{width:94px;height:108px;object-fit:contain;border:1px solid var(--line)}
body .featured-discovery .recordings{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 32px}
body .season-feature-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:center;border-top:1px solid var(--line);padding-top:48px}
body .season-feature h2{font-size:2.2rem;line-height:1.2;margin:0 0 24px}
body .season-feature h2 em{font-weight:400;color:var(--rose)}
body .season-feature p{max-width:48ch;line-height:1.7}
body .season-feature img{width:100%;height:auto}
body .archive-heading{padding-bottom:16px}
body.museum-archive .archive-tools{margin-top:0;padding-block:20px}
body .class-coverage{font-size:1rem;line-height:1.65;color:var(--muted);margin:14px 0 0}
body.museum-archive .recording{display:flex;flex-direction:column;position:relative;border-top:1px solid var(--line);padding-top:22px}
body.museum-archive .recording .thumb{order:0;border:0;aspect-ratio:auto;height:100px;padding:0;justify-content:flex-start;margin:0 0 4px}
body.museum-archive .recording .thumb img{height:100px;max-width:160px;object-position:left center}
body.museum-archive .recording h3{font-size:1.6rem;line-height:1.25}
body.museum-archive .recording-links{margin-top:auto;padding-top:18px}
body .teacher-photo{border:0;border-bottom:1px solid var(--line);height:180px;aspect-ratio:auto;padding:0 0 20px;justify-content:flex-start}
body .teacher-photo img{height:160px;object-position:left center}
@media(max-width:699px){
 body .class-intro{padding-block:28px 24px}
 body .class-intro h1{font-size:2rem}
 body .class-spotlight{grid-template-columns:minmax(0,1fr) 90px;gap:12px;align-items:start;padding-block:28px 32px}
 body .class-spotlight h2{font-size:1.7rem}
 body .class-spotlight>img{height:110px;width:90px;grid-column:2;grid-row:1}
 body .spotlight-copy{display:contents}
 body .spotlight-copy h2{grid-column:1;grid-row:1}
 body .spotlight-copy>p,body .spotlight-copy>a{grid-column:1/-1}
 body .spotlight-teacher{margin:8px 0}
 body .spotlight-copy>p:not(.spotlight-teacher){margin:0 0 12px}
 body .spotlight-copy>a{justify-self:start}
 body .season-feature-layout{grid-template-columns:1fr;gap:24px;padding-top:32px}
 body .season-feature h2{font-size:1.8rem}
 body .season-feature img{max-width:400px;justify-self:center}
 body .featured-discovery{padding-block:40px}
 body .featured-discovery> .wrap > h2{font-size:2rem;margin-bottom:26px}
 body .feature-group + .feature-group{margin-top:34px}
 body .feature-group-heading{margin-bottom:14px}
 body .feature-group-heading h3{font-size:1.35rem}
 body .feature-pair,body .featured-discovery .recordings{grid-template-columns:1fr;gap:18px}
 body .feature-link{font-size:1.25rem;min-height:60px}
 body .master-feature{min-height:90px}
 body .master-feature img{width:76px;height:88px}
 body.museum-archive .recording h3{font-size:1.5rem}
}
[hidden]{display:none!important}
body .browse-modes{display:flex;gap:24px;margin-top:26px}
body .browse-modes button{font:inherit;color:var(--ink);background:#fff;border:0;border-bottom:2px solid transparent;padding:12px 4px;min-height:48px;cursor:pointer}
body .browse-modes button[aria-pressed=true]{border-color:var(--ink);font-weight:700}
body .masters-directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:42px 32px;padding-block:24px 60px}
body .master-choice{font:inherit;text-align:left;color:var(--ink);background:#fff;border:0;border-top:1px solid var(--line);padding:24px 0 12px;display:flex;flex-direction:column;align-items:flex-start;gap:14px;cursor:pointer}
body .master-choice:hover .master-name{text-decoration:underline;text-underline-offset:5px}
body .master-choice img{width:140px;height:150px;object-fit:contain;object-position:left bottom;margin-bottom:8px}
body .master-name{font-family:Spectral,Georgia,serif;font-size:1.4rem;line-height:1.3}
body .master-count{font-size:1rem;line-height:1.6;color:var(--muted)}
body #collection-title{font-size:1.8rem;line-height:1.3;margin:20px 0}
@media(max-width:1000px){body .masters-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}}
@media(max-width:400px){body .master-choice img{width:110px;height:120px}body .master-name{font-size:1.15rem}}
body .master-name{overflow-wrap:anywhere}

/* 2026 programme: the full season is the first destination, with each master visible. */
body .programme-opening{background:#fff;padding:50px 0 32px;border-bottom:1px solid var(--line)}
body .programme-intro{display:grid;grid-template-columns:1.25fr .75fr;gap:56px;align-items:end}
body .programme-intro h1{font-size:clamp(2.45rem,5vw,4.7rem);line-height:1.05;letter-spacing:-.035em;margin:0;max-width:15ch}
body .programme-theme{font-family:Spectral,Georgia,serif;font-size:clamp(1.5rem,2.3vw,2rem);color:var(--rose);margin:16px 0 0}
body .programme-facts{padding-bottom:5px}
body .programme-facts p{margin:0;padding:8px 0;border-bottom:1px solid var(--line);font-size:1.05rem;line-height:1.45}
body .programme-facts p:first-child{border-top:1px solid var(--line)}
body .programme-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
body .programme-list{padding:48px 0 68px;background:#fff}
body .programme-list h2{font-size:clamp(2rem,3.7vw,3.1rem);line-height:1.12;margin:0}
body .programme-note{color:var(--muted);max-width:54ch;line-height:1.6;margin:13px 0 34px}
body .programme-grid{display:grid;gap:0}
body .programme-column-headings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;border-bottom:1px solid var(--ink);padding-bottom:13px}
body .programme-column-headings p{font-family:Spectral,Georgia,serif;font-size:1.55rem;line-height:1.2;margin:0}
body .programme-weekend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;border-bottom:1px solid var(--line);padding:46px 0 54px}
body .programme-weekend:last-child{border-bottom:0;padding-bottom:0}
body .programme-weekend-label{grid-column:1/-1;font-family:Manrope,system-ui,sans-serif;font-size:1rem;font-weight:700;line-height:1.4;letter-spacing:.02em;color:var(--muted);margin:0 0 20px}
body .programme-day{min-width:0;display:flex;flex-direction:column}
body .programme-day-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body .programme-class{min-width:0;border-top:1px solid var(--line);padding-top:16px}
body .programme-class>img{display:block;width:100%;height:auto;border:1px solid var(--line);background:#fff}
body .programme-class-details{padding-top:20px}
body .programme-date{font-size:1rem;line-height:1.45;color:var(--muted);margin:0}
body .programme-class h3{font-family:Spectral,Georgia,serif;font-size:clamp(1.55rem,2.4vw,2.1rem);font-weight:400;line-height:1.16;margin:10px 0 8px;overflow-wrap:anywhere}
body .programme-master{font-size:1.1rem;font-weight:700;line-height:1.45;margin:0}
body .local-time{font-size:1rem;line-height:1.5;color:var(--muted);margin:9px 0 0}
body .class-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:22px}
body .class-actions .button{min-height:48px}
body .quiet-action,body .share-tools summary,body .share-tools button{appearance:none;border:0;background:transparent;color:var(--ink);font:inherit;font-weight:600;line-height:1.35;min-height:48px;padding:8px 0;cursor:pointer;text-decoration:underline;text-underline-offset:5px}
body .share-tools{position:relative}
body .share-tools summary{list-style:none;display:flex;align-items:center;gap:8px}
body .share-tools summary::-webkit-details-marker{display:none}
body .share-tools summary::after{content:'+';font-size:1.35rem;font-weight:400;text-decoration:none}
body .share-tools[open] summary::after{content:'–'}
body .share-tools>div{display:grid;gap:4px;margin-top:8px;padding:16px;border:1px solid var(--line);background:#fff;min-width:min(340px,calc(100vw - 40px))}
body .share-tools form{display:grid;gap:10px;border-top:1px solid var(--line);padding-top:14px;margin-top:6px}
body .share-tools label{display:grid;gap:6px;font-weight:600;font-size:1rem;line-height:1.4}
body .share-tools label span{font-weight:400;color:var(--muted)}
body .share-tools input{min-height:48px;border:1px solid var(--line);background:#fff;color:var(--ink);font:inherit;padding:8px 10px}
body .share-tools form button{justify-self:start}
body .programme-pause{height:100%;min-height:240px;border-top:1px solid var(--line);display:grid;place-items:center;text-align:center;padding:36px;color:var(--muted)}
body .programme-pause p{display:grid;gap:7px;margin:0;max-width:28ch}
body .programme-pause strong{font-family:Spectral,Georgia,serif;font-size:1.45rem;font-weight:400;color:var(--ink)}
body .programme-pause span{display:block;font-size:1rem;line-height:1.5}
body .attendance-information{border-top:1px solid var(--line);background:#fff}
@media(max-width:699px){body .programme-opening{padding:32px 0 25px}body .programme-intro{grid-template-columns:1fr;gap:24px;align-items:start}body .programme-intro h1{font-size:2.45rem}body .programme-theme{font-size:1.45rem;margin-top:12px}body .programme-facts{max-width:430px}body .programme-actions{margin-top:22px;gap:10px}body .programme-actions .button{width:100%;justify-content:center}body .programme-list{padding:34px 0 48px}body .programme-note{margin-bottom:26px}body .programme-column-headings{display:none}body .programme-weekend{grid-template-columns:1fr;gap:30px;padding:36px 0 42px}body .programme-weekend-label{margin-bottom:-10px;font-size:1.05rem}body .programme-day-label{position:static;width:auto;height:auto;margin:0 0 10px;overflow:visible;clip:auto;white-space:normal;font-family:Spectral,Georgia,serif;font-size:1.5rem;line-height:1.2;color:var(--ink)}body .programme-pause{min-height:126px;padding:24px 20px}body .programme-class{padding-top:12px}body .programme-class-details{padding-top:16px}body .programme-class h3{font-size:1.7rem}body .class-actions{margin-top:18px;gap:8px 16px}body .class-actions .button{width:100%;justify-content:center}body .share-tools{width:100%}body .share-tools summary{min-height:44px}body .share-tools>div{min-width:0;width:100%}}
