:root{color-scheme:light;--paper:#fbfaf7;--ink:#17191a;--muted:#626460;--accent:#a32e30;--rule:#dadbd5;--soft:#eeeee8;--font:Arial,Helvetica,sans-serif;--page-gutter:clamp(20px,4vw,72px)}*{box-sizing:border-box;scrollbar-width:none}*::-webkit-scrollbar{display:none}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.7 var(--font)}img{max-width:100%;height:auto}a{color:inherit;text-underline-offset:5px}button,input,select{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:700;line-height:1.1}h1{font-size:clamp(46px,6.2vw,80px);letter-spacing:-3.4px}h2{font-size:39px;letter-spacing:-1.5px}h3{font-size:24px;letter-spacing:-.6px}p{margin-bottom:20px}.site-header,main,.site-footer{width:100%;margin:auto;padding-left:var(--page-gutter);padding-right:var(--page-gutter)}main{max-width:1584px}main{padding-top:52px;padding-bottom:90px;min-height:65vh}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;line-height:1.6;text-transform:uppercase;color:var(--accent);margin-bottom:18px}.intro{font-size:20px;line-height:1.7;color:var(--muted);max-width:680px}.muted{color:var(--muted)}.text-link,.back{display:inline-block;font-size:13px;font-weight:700;line-height:1.7}.text-link:hover{color:var(--accent)}.back{margin-bottom:35px}.button{display:inline-block;padding:14px 22px;background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:0;font-size:13px;font-weight:700;text-decoration:none;margin-top:22px}.button:hover{background:var(--accent);border-color:var(--accent)}.section-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:35px;margin-bottom:35px}.section-heading .text-link{white-space:nowrap}.section-heading .eyebrow{margin-bottom:13px}.recordings-feature{padding:42px 0 55px;border-top:1px solid var(--rule)}.release-card{min-width:0}.release-card>a{text-decoration:none;display:block}.release-card img{display:block;width:100%;max-width:none;aspect-ratio:1;object-fit:contain;margin-bottom:21px}.release-card h3{font-size:21px;line-height:1.25;letter-spacing:-.4px;margin-bottom:10px}.release-card a:hover h3{text-decoration:underline;text-decoration-thickness:1px}.release-card>p{font-size:12px;color:var(--muted)}.cover-unavailable{aspect-ratio:1;display:grid;place-items:center;font-size:12px;background:var(--soft);color:var(--muted);margin-bottom:21px}.live-section{padding:45px 0 65px}.live-date{display:grid;grid-template-columns:90px 1fr 100px 25px;align-items:center;gap:28px;border-top:1px solid var(--rule);padding:24px 0;text-decoration:none}.live-date:last-child{border-bottom:1px solid var(--rule)}time strong{font-size:37px;line-height:1;display:block;letter-spacing:-1.5px}time span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1.2px;margin-top:8px}.live-date h3{font-size:24px;margin-bottom:7px}.live-date p{margin:0;font-size:14px;color:var(--muted)}.live-status,.status{font-size:11px;font-weight:600;color:var(--muted)}.live-date .arrow{font-size:24px;color:var(--accent)}.live-date:hover h3{text-decoration:underline;text-decoration-thickness:1px}.book-feature{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;padding:60px 70px;margin:5px 0 85px;background:#efeee8;border-radius:0 170px 0 0}.book-copy{max-width:465px}.book-copy h2{font-size:55px;letter-spacing:-2px;margin-bottom:25px}.book-copy h2 span{display:block;font-weight:400;font-size:31px;letter-spacing:-.8px;line-height:1.25;margin-top:16px}.book-copy>p:not(.eyebrow){font-size:16px;line-height:1.8;color:var(--muted);margin-bottom:28px}.book-image{justify-self:center;width:65%;max-width:235px;display:block;transform:rotate(4deg)}.book-image img{display:block;width:100%;box-shadow:13px 18px 23px #17191a1f}.discovery{margin:0 0 85px}.discovery-flow{border-top:1px solid var(--rule)}.discovery-item{border-bottom:1px solid var(--rule)}.discovery-item>a,.discovery-item:not(:has(>a)){display:grid;grid-template-columns:135px 1fr;gap:35px;align-items:center;padding:24px 0;text-decoration:none}.discovery-item img{width:135px;height:105px;object-fit:cover;border-radius:0 30px 0 0}.discovery-item>a>div,.discovery-item>div{display:flex;align-items:center;gap:35px;justify-content:space-between}.discovery-item h3{font-size:40px;font-weight:600;letter-spacing:-1.6px;white-space:nowrap}.discovery-item h3 span{font-size:23px;color:var(--accent);margin-left:18px}.discovery-item p{max-width:270px;font-size:15px;color:var(--muted);margin:0}.discovery-item a:hover h3{text-decoration:underline;text-decoration-thickness:1px}.programs-feature{display:grid;grid-template-columns:1fr 1fr;column-gap:70px;align-items:center;padding:0 0 75px}.programs-feature>.eyebrow{grid-column:1/-1}.programs-feature h2{font-size:55px;letter-spacing:-2px;line-height:1.08}.programs-feature>div p{font-size:18px;color:var(--muted);line-height:1.8}.photo-gallery{background:#080909;color:#f1f0e9;display:grid;grid-template-columns:.6fr 1fr;align-items:center;gap:20px;margin:0 -48px;padding:45px 48px;border-radius:85px 0 0 0}.gallery-heading h2{font-size:40px}.gallery-heading>.eyebrow{color:#c8b3a6}.gallery-heading>p:last-child{font-size:13px;color:#bcbfb8;max-width:190px;margin-top:20px}.gallery-stage{min-width:0}.hero-slides{position:relative;aspect-ratio:3/2;background:#000;overflow:hidden}.hero-slide{position:absolute;inset:0}.hero-slide[hidden]{display:none!important}.hero-slide img{width:100%;height:100%;object-fit:contain;display:block;animation:gallery-settle 4.5s ease-out both}.slider-controls{display:flex;align-items:center;gap:10px;margin-top:20px;font-size:11px}.slider-controls[hidden]{display:none}.slider-controls>span{margin-right:auto;letter-spacing:2px}.slider-controls button{display:grid;place-items:center;background:transparent;color:#fff;border:1px solid #767974;border-radius:50%;height:35px;width:35px;font-size:17px}.slider-controls button:hover{background:#ffffff20}.slider-controls .slider-play{font-size:10px;border:0;border-radius:0;width:auto;padding-left:12px;text-decoration:underline;text-underline-offset:4px}.page-heading{margin:0 0 55px;max-width:1000px}.page-heading h1{margin-bottom:28px}.page-heading h1>span{display:block;font-weight:400;font-size:34px;line-height:1.3;letter-spacing:-1px;margin-top:15px}.download-help-link{border-top:1px solid var(--rule);padding-top:30px;margin-top:55px}.editorial-layout{display:block}.editorial-layout.has-photo{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.8fr);gap:65px;align-items:start}.reading-column{max-width:70ch;font-size:18px;line-height:1.85;overflow-wrap:anywhere}.reading-column p{margin-bottom:26px;white-space:pre-line}.reading-column h2{font-size:29px;font-weight:600;line-height:1.3;letter-spacing:-.7px;margin:48px 0 21px}.reading-column h2:first-child{margin-top:0}.editorial-photo{max-width:360px}.editorial-photo img{display:block;max-width:100%;height:auto;border-radius:90px 0 0 0}.editorial-photo img[src$="the-songman.jpg"]{border-radius:0;max-width:250px;margin:auto}.contact-line{margin-bottom:8px!important}.editorial-enquiry{border-top:1px solid var(--rule);margin-top:48px;padding-top:28px}.editorial-enquiry h2{margin-top:0}.release-heading{display:grid;grid-template-columns:1fr 300px;align-items:center;gap:60px;margin-bottom:65px}.release-heading h1{font-size:clamp(40px,4.9vw,65px);max-width:750px}.release-heading>img{width:300px;height:300px;object-fit:contain}.release-meta{margin-top:22px;font-size:12px;color:var(--muted)}.release-content{display:grid;grid-template-columns:1fr 1fr;gap:70px}.release-content h2{font-size:30px;margin-bottom:28px}.release-content .reading-column{font-size:17px}.tracks{padding-left:25px;margin:0}.tracks li{padding:15px 5px;border-bottom:1px solid var(--rule);font-size:15px;line-height:1.5}.tracks li::marker{font-size:11px;color:var(--muted)}.tracks li>div{display:inline-block;vertical-align:top;width:86%}.tracks strong{font-weight:600}.tracks small{display:block;font-size:11px;color:var(--muted);margin-top:6px}.tracks li>span{font-size:11px}.concert-list{margin-top:25px}.event{display:grid;grid-template-columns:90px 1fr 90px 70px;gap:25px;border-top:1px solid var(--rule);padding:28px 0;align-items:center}.event h3{font-size:23px;margin:5px 0 10px}.event h3 a{text-decoration:none}.event h3 a:hover{text-decoration:underline}.event p{font-size:13px;color:var(--muted);margin:0}.event .event-town{font-size:10px;letter-spacing:.8px;text-transform:uppercase}.archive{margin-top:45px;border-top:1px solid var(--rule);padding-top:25px}.archive summary{cursor:pointer;font-weight:600;margin-bottom:25px}.archive p{font-size:15px}.prose{white-space:pre-line;max-width:70ch}.notice{background:#eeeae3;border-left:3px solid var(--accent);padding:16px 22px;font-size:14px;line-height:1.7;margin:25px 0}.notice h2{font-size:25px;margin:0 0 15px}.preview-notice{font-size:12px;margin-top:0;margin-bottom:35px}.empty{font-size:16px;padding:25px 0;color:var(--muted)}.skip{position:absolute;top:-100px;left:20px;padding:12px;background:white;z-index:30}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.basket-item{display:flex;justify-content:space-between;gap:25px;border-bottom:1px solid var(--rule);padding:25px 0}.basket-item h2{font-size:26px}.text-button{border:0;background:transparent;text-decoration:underline;color:var(--ink);font-size:14px;padding:8px 0}.offer{border-top:1px solid var(--rule);padding:24px 0}.checkout-form{max-width:640px}.checkout-form label{display:block;font-size:15px;margin:22px 0 8px}.checkout-form input,.checkout-form select{width:100%;padding:14px;border:1px solid #727772;border-radius:0;background:white;color:var(--ink);font-size:17px}.totals{display:grid;grid-template-columns:1fr auto;max-width:640px;gap:12px;padding:24px 0}.totals dd{margin:0;text-align:right}@keyframes portrait-settle{from{transform:translateY(4px)}to{transform:translateY(0)}}@keyframes gallery-settle{from{transform:scale(1.025)}to{transform:scale(1)}}
main:has(>.artist-opening){padding:0 0 90px;max-width:none;width:100%}main:has(>.artist-opening)>:not(.artist-opening){width:calc(100% - var(--page-gutter)*2);max-width:1440px;margin-left:auto;margin-right:auto}main:has(>.artist-opening)>.preview-notice{width:100%;max-width:none;margin:0;padding:7px 22px;font-size:11px;line-height:1.4;border:0;border-bottom:1px solid var(--rule)}.artist-opening{position:relative;isolation:isolate;min-height:620px;height:calc(100svh - 112px);max-height:900px;width:100%;margin:0 0 78px;background:#202020;overflow:hidden}.opening-portrait{position:absolute;inset:0;margin:0;z-index:0}.opening-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0;animation:hero-breathe 4.5s ease-out both;transform-origin:55% 35%}.opening-portrait:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,27,17,.65),rgba(12,27,17,.29) 24%,transparent 47%),linear-gradient(0deg,rgba(9,24,14,.3),transparent 30%);pointer-events:none}.opening-portrait figcaption{position:absolute;right:30px;bottom:21px;color:#fff;font-size:9px;letter-spacing:.4px;text-shadow:0 1px 5px #202020;z-index:1}.opening-type{position:absolute;left:max(48px,calc((100vw - 1184px)/2));bottom:65px;max-width:410px;z-index:2;color:white}.opening-type>.eyebrow{color:#fff;font-size:9px;letter-spacing:1.4px;margin-bottom:18px;text-shadow:0 1px 5px #202020}.opening-type h1{font-size:70px;line-height:1;letter-spacing:-3.3px;max-width:390px;text-shadow:0 2px 16px #20202044}.opening-intro{margin-top:22px;max-width:360px}.opening-intro p{font-size:20px;line-height:1.5;margin:0 0 24px;text-shadow:0 1px 7px #202020}.opening-intro .text-link{color:#fff;font-size:12px;margin-right:22px;text-shadow:0 1px 5px #202020}.opening-intro .text-link:hover{color:#f6e7cd}@keyframes hero-breathe{from{transform:scale(1.015)}to{transform:scale(1)}}
@media(max-width:1050px){:root{--page-gutter:clamp(22px,4vw,40px)}.site-header,main,.site-footer{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}.book-feature{padding:45px;gap:45px}.book-copy h2{font-size:47px}.discovery-item h3{font-size:33px}.discovery-item p{max-width:210px;font-size:14px}.discovery-item>a,.discovery-item:not(:has(>a)){gap:25px}.programs-feature{gap:40px}.programs-feature h2{font-size:47px}.photo-gallery{margin-left:-30px;margin-right:-30px;padding:40px 30px}.editorial-layout.has-photo{gap:35px}.release-heading{gap:35px}.release-content{gap:40px}}
@media(min-width:761px) and (max-width:1050px){.opening-type{left:30px;bottom:55px;max-width:330px}.opening-type h1{font-size:59px}.opening-intro p{font-size:18px}.artist-opening{height:calc(100svh - 112px);min-height:580px}.opening-portrait img{object-position:54% 0}}
@media(max-width:760px){:root{--page-gutter:clamp(18px,5vw,28px)}.site-header,main,.site-footer{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}main{padding-top:32px;padding-bottom:55px}.section-heading{gap:20px;margin-bottom:27px}.section-heading h2{font-size:30px;letter-spacing:-1px}.section-heading .text-link{font-size:11px;white-space:normal;text-align:right;max-width:110px}.eyebrow{font-size:8px;letter-spacing:1.3px}.recordings-feature{padding:30px 0 35px}.release-card h3{font-size:19px}.release-card>p{font-size:11px}.live-section{padding:35px 0 45px}.live-date{grid-template-columns:58px 1fr 20px;gap:20px;padding:21px 0}.live-status{display:none}.live-date h3{font-size:20px}.live-date p{font-size:12px}.live-date time strong{font-size:32px}.live-date time span{font-size:8px}.book-feature{padding:35px 25px;gap:25px;margin-bottom:55px;border-radius:0 90px 0 0;grid-template-columns:1.15fr .8fr}.book-copy h2{font-size:35px;letter-spacing:-1.4px}.book-copy h2 span{font-size:23px;margin-top:12px}.book-copy>p:not(.eyebrow){font-size:13px;line-height:1.8;margin-bottom:21px}.book-image{width:100%;max-width:180px}.book-copy .text-link{font-size:11px}.discovery{margin-bottom:55px}.discovery-item>a,.discovery-item:not(:has(>a)){grid-template-columns:90px 1fr;gap:22px;padding:21px 0}.discovery-item img{width:90px;height:80px;border-radius:0 23px 0 0}.discovery-item>a>div,.discovery-item>div{display:block}.discovery-item h3{font-size:28px;letter-spacing:-1px;white-space:normal}.discovery-item h3 span{font-size:18px;margin-left:10px}.discovery-item p{font-size:12px;margin-top:9px;max-width:none}.programs-feature{grid-template-columns:1fr;gap:20px;padding-bottom:45px}.programs-feature>.eyebrow{margin:0}.programs-feature h2{font-size:42px}.programs-feature>div p{font-size:16px}.photo-gallery{grid-template-columns:1fr;gap:20px;margin:0 -22px;padding:36px 22px;border-radius:55px 0 0 0}.gallery-heading h2{font-size:32px}.gallery-heading>p:last-child{margin-top:12px;max-width:none}.hero-slides{max-width:600px;margin:auto}.slider-controls{margin-top:15px}.page-heading{margin-bottom:35px}.page-heading h1{font-size:45px;letter-spacing:-2px}.page-heading h1>span{font-size:25px;letter-spacing:-.6px}.intro{font-size:18px}.discography .release-card h3{font-size:18px}.editorial-layout.has-photo{grid-template-columns:1fr;gap:35px}.reading-column{font-size:18px;line-height:1.85}.reading-column h2{font-size:26px;margin-top:35px}.editorial-photo{max-width:350px;order:-1}.editorial-photo img{border-radius:70px 0 0 0;max-height:360px;width:auto;object-fit:contain}.editorial-photo img[src$="the-songman.jpg"]{max-width:220px;max-height:330px;border-radius:0}.release-heading{grid-template-columns:1fr 150px;gap:25px;margin-bottom:45px}.release-heading h1{font-size:35px;letter-spacing:-1.5px}.release-heading>img{width:150px;height:150px}.release-meta{font-size:11px}.release-content{grid-template-columns:1fr;gap:35px}.release-content h2{font-size:27px;margin-bottom:20px}.event{grid-template-columns:60px 1fr;gap:18px;padding:25px 0}.event .status{grid-column:2}.event>.text-link{grid-column:2}.event h3{font-size:20px}.event p{font-size:12px}.notice{font-size:13px}.preview-notice{font-size:11px}.basket-item{gap:15px}.basket-item h2{font-size:21px}.prose{font-size:17px}}
@media(max-width:760px){.artist-opening{height:77svh;min-height:590px;max-height:780px;margin-top:0;margin-bottom:48px}.opening-portrait img{object-position:52% 0}.opening-portrait:after{background:linear-gradient(0deg,rgba(10,25,16,.83),rgba(10,25,16,.25) 29%,transparent 53%)}.opening-type{left:25px;right:25px;bottom:57px;max-width:none}.opening-type>.eyebrow{font-size:8px;letter-spacing:1px;margin-bottom:12px}.opening-type h1{font-size:48px;letter-spacing:-2px;max-width:none}.opening-intro{margin-top:12px}.opening-intro p{font-size:16px;line-height:1.4;margin-bottom:15px}.opening-intro p br{display:none}.opening-intro .text-link{font-size:11px;margin-right:22px}.opening-portrait figcaption{right:23px;bottom:20px;font-size:8px}}
@media(max-width:420px){.book-feature{grid-template-columns:1fr;gap:30px}.book-image{width:55%;max-width:185px;grid-row:1}.book-copy h2{font-size:41px}.book-copy>p:not(.eyebrow){font-size:15px}.discovery-item>a,.discovery-item:not(:has(>a)){grid-template-columns:75px 1fr;gap:18px}.discovery-item img{width:75px;height:75px}.discovery-item h3{font-size:25px}.release-heading{grid-template-columns:1fr;gap:25px}.release-heading>img{width:230px;height:230px}.release-heading h1{font-size:40px}.section-heading{align-items:center}}
@media(max-width:420px){.preview-notice{padding:9px 13px;margin-bottom:23px;font-size:10px;line-height:1.5}.opening-intro p.muted br{display:none}main{padding-top:24px}}
@media(max-width:420px){.artist-opening{margin-top:0;min-height:580px}.opening-type h1{font-size:45px}.opening-intro .text-link{font-size:10px;margin-right:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.opening-portrait img,.hero-slide img{animation:none;transform:none}}
.concert-detail{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid var(--rule);padding-top:35px}.concert-detail h2{font-size:32px;margin-bottom:20px}.concert-detail h3{font-size:21px;margin-top:35px}.concert-detail ul{padding-left:20px;font-size:16px}.concert-when>time{display:block;font-size:29px;line-height:1.4;font-weight:600;letter-spacing:-.7px;margin-bottom:18px}.concert-when>p:not(.eyebrow){font-size:14px;color:var(--muted)}.concert-notes{margin-top:45px}@media(max-width:760px){.concert-detail{grid-template-columns:1fr;gap:35px}.concert-detail h2{font-size:28px}.concert-when>time{font-size:26px}}

.site-header{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:22px;padding-bottom:22px;max-width:none;background:var(--paper);border-bottom:1px solid var(--rule)}.wordmark{font-family:var(--font);font-size:clamp(25px,2.3vw,35px);font-weight:750;letter-spacing:-1.4px;line-height:1.05;text-decoration:none;white-space:nowrap}.site-header nav{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px clamp(16px,2vw,32px);font-size:clamp(12px,1vw,15px);line-height:1.5;font-weight:500;min-width:0}.site-header nav a{text-decoration:none;white-space:nowrap;padding:8px 0;border-bottom:1px solid transparent}.site-header nav a:hover,.site-header nav a[aria-current]{color:var(--accent);border-bottom-color:currentColor}.site-footer{max-width:none;width:100%;margin-top:0;background:#202020;color:#f7f6ef;border:0;border-radius:clamp(45px,7vw,120px) 0 0 0;padding:clamp(45px,6vw,90px) var(--page-gutter) 27px}.footer-content{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(35px,7vw,100px);align-items:start;padding-bottom:50px}.footer-identity .wordmark{display:inline-block;font-size:clamp(52px,6.3vw,90px);line-height:.9;letter-spacing:-4px;white-space:normal}.footer-contact{display:block;width:max-content;max-width:100%;font-size:clamp(14px,1.3vw,18px);text-decoration:none;margin-top:32px;border-bottom:1px solid #a2aba1;padding-bottom:8px}.footer-contact span{margin-left:35px}.footer-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 30px;padding-top:6px;font-size:clamp(14px,1.2vw,17px);line-height:1.5}.footer-nav a{display:block;color:#e6ebe3;text-decoration:none;padding:3px 0;overflow-wrap:anywhere}.footer-nav a:hover,.footer-contact:hover{text-decoration:underline;text-underline-offset:6px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;max-width:1440px;margin:auto;border-top:1px solid #404840;padding-top:23px;font-size:11px;color:#bbc5ba}.footer-bottom a{color:inherit;text-decoration:none}.footer-bottom a:hover{text-decoration:underline}.live-date>div,.event>div,.reading-column,.release-content>section{min-width:0}.reading-column{overflow-wrap:anywhere}
@media(max-width:760px){.site-header{display:block;min-height:0;padding-top:20px;padding-bottom:16px}.site-header .wordmark{font-size:30px;letter-spacing:-1.3px}.site-header nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));justify-content:start;gap:4px 15px;margin-top:15px;font-size:12px}.site-header nav a{padding:5px 0;white-space:normal}.footer-content{grid-template-columns:1fr 1fr;gap:30px;padding-bottom:36px}.footer-identity .wordmark{font-size:clamp(48px,8vw,67px);letter-spacing:-2.6px}.footer-nav{grid-template-columns:1fr;gap:11px;font-size:14px}.footer-contact{font-size:12px;margin-top:26px}.footer-contact span{margin-left:9px}.site-footer{padding-top:45px;border-radius:55px 0 0 0}.footer-bottom{font-size:10px}.section-heading .text-link{max-width:none;text-align:left}}
@media(max-width:360px){.site-header nav{column-gap:12px;font-size:11px}.site-header .wordmark{font-size:28px}.footer-content{grid-template-columns:1fr;gap:35px}.footer-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}.footer-identity .wordmark{font-size:61px}.footer-contact{margin-top:22px}.footer-bottom{gap:12px}}
.concert-introduction{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(28px,6vw,80px);align-items:center;margin:12px 0 clamp(45px,7vw,90px)}.concert-introduction h1{font-size:clamp(52px,6.5vw,90px);letter-spacing:-3.5px;margin-bottom:28px}.concert-introduction p{font-size:clamp(17px,1.7vw,22px);line-height:1.65;color:var(--muted);margin:0}.concert-introduction img{display:block;width:100%;max-height:390px;aspect-ratio:16/10;object-fit:cover;object-position:center 32%;border-radius:0 clamp(45px,6vw,90px) 0 0}.concert-schedule{margin-top:48px}.concert-schedule>h2{font-size:clamp(26px,2.6vw,37px);margin-bottom:28px}.concert-list .event,.event-postponed{grid-template-columns:95px minmax(0,1fr) 105px 110px;gap:clamp(18px,3vw,42px);padding:34px 0}.event time strong{font-size:clamp(42px,4vw,58px);letter-spacing:-2px;font-weight:500;color:var(--accent)}.event time span{font-size:11px;letter-spacing:1px;margin-top:12px}.event h3{font-size:clamp(21px,2.2vw,29px);line-height:1.25;letter-spacing:-.8px;margin:0 0 10px}.event p.event-location{font-size:15px;color:var(--ink);margin-bottom:8px}.event>div>p:last-child{font-size:13px;line-height:1.6}.event .status{font-size:12px}.event-details{display:flex;justify-content:space-between;gap:10px;align-items:center;min-width:0;font-size:13px;font-weight:600;text-decoration:none;border-bottom:1px solid #a5aba4;padding:11px 0}.event-details span{font-size:20px}.event-details:hover{color:var(--accent)}.past-concerts{margin-top:20px}.past-concerts>a{display:grid;grid-template-columns:125px minmax(0,1fr) minmax(130px,.6fr);gap:25px;padding:19px 0;border-top:1px solid var(--rule);font-size:14px;line-height:1.6;text-decoration:none}.past-concerts time,.past-concerts>a>span:last-child{color:var(--muted);font-size:12px}.past-concerts>a:hover>span:first-of-type{text-decoration:underline}.concert-title{max-width:1100px;padding:0;margin:5px 0 45px}.concert-title h1{font-size:clamp(39px,5.6vw,76px);letter-spacing:-2.8px;line-height:1.08}.concert-status{font-size:14px;color:var(--accent);margin:24px 0 0}.concert-detail{grid-template-columns:minmax(180px,.55fr) minmax(0,1.45fr);gap:clamp(35px,7vw,100px);padding-top:40px}.concert-when>time{margin-bottom:27px}.concert-when>time strong{font-size:clamp(74px,8vw,112px);font-weight:500;letter-spacing:-5px;color:var(--accent)}.concert-when>time span{font-size:24px;letter-spacing:-.6px;text-transform:none;margin-top:12px}.concert-when>time .concert-weekday{font-size:15px;letter-spacing:0;color:var(--muted);margin-top:15px}.concert-when>p:not(.eyebrow){font-size:14px;max-width:240px}.concert-venue h2{font-size:clamp(30px,3.3vw,46px);letter-spacing:-1.5px;line-height:1.18;margin-bottom:16px}.concert-location{font-size:20px;color:var(--muted);margin-bottom:32px}.concert-venue h3{font-size:20px;letter-spacing:-.3px}.concert-venue ul{font-size:17px;line-height:1.75}.concert-ticket{padding:17px 24px;font-size:14px}.venue-link-note{font-size:12px;color:var(--muted);max-width:380px;margin:15px 0 0}.concert-notes{padding-top:35px;border-top:1px solid var(--rule)}.editorial-layout{padding-top:15px}.editorial-layout .reading-column{font-size:clamp(17px,1.3vw,19px);line-height:1.9;max-width:66ch}.editorial-layout .reading-column p{margin-bottom:29px}.editorial-layout .reading-column h2{font-size:clamp(25px,2.4vw,34px);line-height:1.3;letter-spacing:-.7px;margin-top:48px;margin-bottom:22px}.editorial-layout .reading-column h2:first-child{margin-top:0}.editorial-photo{width:100%;max-width:420px}.editorial-photo img{width:100%;height:auto;object-fit:contain}.editorial-enquiry{margin-top:50px;padding-top:32px}.editorial-enquiry .text-link{font-size:14px}
@media(max-width:760px){.concert-introduction{grid-template-columns:1fr;gap:28px;margin-top:0;margin-bottom:42px}.concert-introduction h1{font-size:54px;letter-spacing:-2.6px;margin-bottom:20px}.concert-introduction img{max-height:300px;aspect-ratio:16/9;border-radius:0 55px 0 0}.concert-list .event,.event-postponed{grid-template-columns:65px minmax(0,1fr);gap:12px 23px;padding:26px 0}.event h3{font-size:23px}.event p.event-location{font-size:14px}.event .status{grid-column:2;font-size:11px}.event .event-details{grid-column:2;width:100px;font-size:12px;padding:8px 0}.past-concerts>a{grid-template-columns:1fr;gap:7px;padding:18px 0}.concert-title{margin-bottom:30px}.concert-title h1{font-size:40px;letter-spacing:-1.7px}.concert-detail{grid-template-columns:1fr;gap:35px;padding-top:27px}.concert-when>time{display:grid;grid-template-columns:86px 1fr;column-gap:16px;align-items:center;max-width:280px;margin-bottom:18px}.concert-when>time strong{grid-row:1/3;font-size:76px;letter-spacing:-3px}.concert-when>time span{font-size:20px;margin:0}.concert-when>time .concert-weekday{font-size:13px;margin:0}.concert-venue h2{font-size:32px}.concert-location{font-size:17px}.concert-ticket{padding:15px 18px;font-size:13px;max-width:100%;white-space:normal}.editorial-layout .reading-column{font-size:17px;line-height:1.85}.editorial-photo{max-width:360px}.editorial-photo img{max-height:390px;width:auto;margin:auto}.editorial-layout .reading-column h2{margin-top:37px}.editorial-enquiry{margin-top:35px}.event>div,.concert-venue{overflow-wrap:anywhere}}

.recordings-strip,.discography{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(26px,3vw,45px) clamp(16px,2vw,30px);width:100%}.recordings-strip .release-card,.discography .release-card{width:100%;max-width:none;min-width:0}.recordings-strip .release-card img,.discography .release-card img{width:100%;max-width:none;height:auto;aspect-ratio:1;object-fit:contain}.recordings-strip .release-card h3,.discography .release-card h3{font-size:clamp(16px,1.35vw,21px);line-height:1.3;letter-spacing:-.3px;overflow-wrap:anywhere}.recordings-strip .release-card p,.discography .release-card p{font-size:11px;line-height:1.5}.editorial-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:clamp(35px,6vw,85px);align-items:center;margin:8px 0 clamp(45px,7vw,90px)}.editorial-title{min-width:0;max-width:800px}.editorial-title h1{font-size:clamp(42px,5.2vw,74px);line-height:1.09;letter-spacing:-2.8px;margin-bottom:30px;overflow-wrap:normal}.editorial-lead{font-size:clamp(19px,1.8vw,25px);line-height:1.65;color:#565e57;max-width:41ch;margin-bottom:0}.editorial-hero>figure{margin:0;max-width:450px;justify-self:end;width:100%}.editorial-hero>figure img{display:block;width:100%;height:auto;max-height:580px;object-fit:contain;border-radius:0 clamp(45px,6vw,90px) 0 0}.editorial-hero>figure img[src*="songman"]{max-width:250px;max-height:420px;border-radius:0;margin:auto;box-shadow:12px 16px 24px #17191a1a}.editorial-hero figcaption{font-size:10px;line-height:1.5;color:var(--muted);margin-top:12px}.editorial-body{max-width:1250px;margin:auto;padding-top:38px;border-top:1px solid var(--rule)}.editorial-body .reading-column{font-size:clamp(17px,1.3vw,19px);line-height:1.9;max-width:70ch}.editorial-body .reading-column p{margin-bottom:29px}.editorial-body .reading-column h2{font-size:clamp(25px,2.3vw,34px);letter-spacing:-.7px;line-height:1.3;margin:48px 0 22px}.editorial-body .reading-column h2:first-child{margin-top:0}.editorial-body:has(>.editorial-related){display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:65px}.editorial-related{font-size:14px;color:var(--muted)}.editorial-related h2{font-size:23px;line-height:1.25;margin-bottom:20px}.editorial-related a{display:block;margin:14px 0}
@media(min-width:700px){.recordings-strip,.discography{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1000px){.recordings-strip,.discography{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:1280px){.recordings-strip,.discography{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(min-width:1600px){.recordings-strip,.discography{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:760px){.editorial-hero{grid-template-columns:1fr;gap:30px;margin-bottom:40px}.editorial-title h1{font-size:clamp(38px,7vw,53px);letter-spacing:-1.8px;margin-bottom:22px}.editorial-lead{font-size:19px;line-height:1.7;max-width:100%}.editorial-hero>figure{justify-self:start;max-width:420px}.editorial-hero>figure img{max-height:430px;width:auto;max-width:100%;border-radius:0 60px 0 0}.editorial-hero>figure img[src*="songman"]{max-width:220px;max-height:330px;border-radius:0}.editorial-body{padding-top:28px}.editorial-body .reading-column{font-size:17px;line-height:1.85}.editorial-body:has(>.editorial-related){grid-template-columns:1fr;gap:35px}.editorial-related{border-top:1px solid var(--rule);padding-top:25px}}
.programmes-page{width:100%;min-width:0}.programmes-intro{max-width:1000px;margin:8px 0 40px}.programmes-intro h1{font-size:clamp(43px,5.4vw,78px);line-height:1.1;letter-spacing:-2.7px;margin-bottom:28px}.programmes-lead{font-size:clamp(18px,1.8vw,24px);line-height:1.7;color:#565e57;max-width:52ch}.programmes-jump{display:flex;flex-wrap:wrap;gap:14px 30px;margin:0 0 25px;padding-bottom:25px;border-bottom:1px solid var(--rule);font-size:14px;line-height:1.5}.programmes-jump a{text-decoration:none;padding:8px 0;border-bottom:1px solid #8b9389}.programmes-jump a:hover{color:var(--accent)}.programme-detail{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr);gap:clamp(35px,6vw,90px);align-items:start;padding:65px 0;border-bottom:1px solid var(--rule);scroll-margin-top:25px}.programme-copy{min-width:0}.programme-copy h2{font-size:clamp(32px,3.4vw,48px);letter-spacing:-1.5px;line-height:1.17;margin:0 0 25px}.programme-summary{font-size:clamp(18px,1.5vw,22px);line-height:1.7;color:#555e55;margin-bottom:28px}.programme-reading{font-size:17px;line-height:1.9;max-width:67ch}.programme-reading p{margin-bottom:25px}.programme-reading blockquote{margin:30px 0;padding:0 0 0 24px;border-left:2px solid #a8afa3;font-size:19px;line-height:1.75;color:#58604f}.programme-reading blockquote p{margin-bottom:14px}.programme-more{padding:20px 0;border-top:1px solid var(--rule);margin:25px 0}.programme-more summary{cursor:pointer;font-size:14px;font-weight:600;margin-bottom:16px}.programme-copy>.text-link{margin-top:16px;font-size:14px}.programme-art{margin:0;width:100%;max-width:450px;justify-self:center;padding-top:5px}.programme-art img{display:block;max-width:100%;width:100%;height:auto;max-height:520px;object-fit:contain}.programme-art img[src*="songman"],.programme-art img[src*="Songman"]{max-width:250px;margin:auto;box-shadow:12px 17px 25px #17191a18}.programme-art figcaption{font-size:11px;line-height:1.6;color:var(--muted);margin:15px auto 0;max-width:330px}.programmes-enquiry{padding:45px 0 10px;max-width:740px}.programmes-enquiry h2{font-size:clamp(29px,3vw,42px);line-height:1.2;margin-bottom:22px}.programmes-enquiry p{font-size:18px;line-height:1.75;color:var(--muted)}.programmes-enquiry .text-link{font-size:14px}
@media(max-width:760px){.programmes-intro{margin-bottom:30px}.programmes-intro h1{font-size:43px;letter-spacing:-1.8px}.programmes-lead{font-size:19px}.programmes-jump{gap:10px 20px;font-size:12px;padding-bottom:22px}.programme-detail{grid-template-columns:1fr;gap:30px;padding:40px 0}.programme-copy h2{font-size:33px;margin-bottom:22px}.programme-summary{font-size:19px}.programme-reading{font-size:17px;line-height:1.85}.programme-reading blockquote{font-size:18px;padding-left:19px}.programme-art{max-width:360px;justify-self:start}.programme-art img{max-height:400px}.programme-art img[src*="songman"],.programme-art img[src*="Songman"]{max-width:220px;margin:0}.programme-art figcaption{margin-left:0}.programmes-enquiry{padding-top:35px}.programmes-enquiry p{font-size:17px}}

/* Whole tour artwork and Tommy's own introduction. */
.tour-feature{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:clamp(30px,6vw,90px);align-items:center;margin:10px 0 50px}.tour-feature-poster{display:block;max-width:320px;justify-self:center;width:100%}.tour-feature-poster img,.tour-poster img{display:block;width:100%;height:auto;object-fit:contain;border-radius:0}.tour-feature-copy{max-width:650px;min-width:0}.tour-feature-copy h2{font-size:clamp(34px,4.6vw,68px);font-weight:500;line-height:1.08;letter-spacing:-2px;margin:0 0 24px}.tour-feature-copy p{font-size:clamp(18px,1.7vw,23px);line-height:1.65;color:var(--muted);max-width:40ch;margin:0 0 25px}.live-calendar-title{font-size:22px;font-weight:500;letter-spacing:-.4px;margin:0 0 22px}.tour-own-words blockquote,.tour-background blockquote{margin:0;font-size:17px;line-height:1.85}.tour-own-words blockquote p,.tour-background blockquote p{margin:0 0 21px}.tour-attribution{font-size:13px;color:var(--muted);margin:15px 0 0}.tour-background{border-top:1px solid var(--rule);margin:28px 0 0;padding-top:20px;max-width:65ch}.tour-background summary{font-size:15px;cursor:pointer;line-height:1.6}.tour-background[open] summary{margin-bottom:22px}#upcoming-concerts{scroll-margin-top:28px}
@media(max-width:760px){.tour-feature{grid-template-columns:minmax(0,.7fr) minmax(0,1fr);gap:22px;margin-bottom:35px}.tour-feature-copy h2{font-size:clamp(27px,5.3vw,40px);letter-spacing:-1px;margin-bottom:17px}.tour-feature-copy p{font-size:16px;line-height:1.65;margin-bottom:20px}.tour-feature-copy .text-link{font-size:12px;line-height:1.6}.tour-own-words blockquote,.tour-background blockquote{font-size:17px;line-height:1.85}}
@media(max-width:440px){.tour-feature{grid-template-columns:1fr;gap:26px}.tour-feature-poster{max-width:240px;justify-self:start}.tour-feature-copy h2{font-size:39px}.tour-feature-copy p{font-size:18px}.tour-feature-copy .text-link{font-size:13px}}

.press-quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(25px,4vw,65px);padding:0 0 55px}.press-quotes figure{margin:0;min-width:0}.press-quotes blockquote{margin:0 0 18px}.press-quotes blockquote p{font-size:clamp(19px,1.8vw,27px);line-height:1.45;letter-spacing:-.5px;margin:0;max-width:26ch}.press-quotes figcaption{font-size:13px;color:var(--muted)}@media(max-width:650px){.press-quotes{grid-template-columns:1fr;gap:28px;padding-bottom:35px}.press-quotes figure{padding-bottom:24px;border-bottom:1px solid var(--rule)}.press-quotes blockquote p{max-width:none}.press-quotes blockquote{margin-bottom:10px}}

/* Concert page: compact tour opening, dates before the long-form story. */
.tour-introduction{display:block;gap:clamp(24px,6vw,90px);align-items:center;background:#202020;color:#faf9f3;margin:0 calc(-1 * var(--page-gutter)) 55px;padding:clamp(35px,5vw,72px) var(--page-gutter);border-radius:0 0 clamp(35px,6vw,90px) 0}.tour-introduction-copy{min-width:0;max-width:1050px}.tour-introduction h1{font-size:clamp(34px,5.4vw,78px);font-weight:500;line-height:1.05;letter-spacing:-2px;margin-bottom:24px}.tour-lead{font-size:clamp(16px,1.7vw,23px);line-height:1.6;color:#e0e5dc;max-width:36ch;margin-bottom:30px}.tour-poster{width:100%;max-width:390px;justify-self:center;margin:0;grid-row:auto;transform:rotate(2deg);box-shadow:0 18px 45px #0004}.tour-date-button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:#eeeacb;color:#202020;padding:13px 21px;border-radius:99px;font-size:14px;font-weight:600;text-decoration:none}.tour-story{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(35px,6vw,80px);margin:65px 0 0;padding-top:40px;border-top:1px solid var(--rule)}.tour-own-words{margin:0;max-width:65ch}.tour-own-words h2{font-size:clamp(26px,3vw,38px);margin-bottom:28px}.tour-story .tour-background{margin-top:0}.tour-story blockquote{margin-left:0}@media(max-width:600px){.tour-introduction{display:block;gap:20px;padding-top:35px;padding-bottom:35px;margin-bottom:35px}.tour-introduction h1{font-size:clamp(29px,6.2vw,37px);letter-spacing:-1px;margin-bottom:17px}.tour-lead{font-size:15px;line-height:1.55;margin-bottom:22px}.tour-date-button{font-size:12px;padding:10px 14px;gap:12px}.tour-poster{transform:none}.tour-story{grid-template-columns:1fr;margin-top:40px}.tour-introduction h1 br{display:none}}

/* Keep long-form content visible, with a readable editorial rhythm. */
.editorial-body .reading-column{max-width:62ch;line-height:1.8}.editorial-body .reading-column p{margin-bottom:1.5em}.editorial-body .reading-column h2{padding-top:28px;border-top:1px solid var(--rule);margin-top:48px;margin-bottom:24px}.editorial-body .reading-column h2:first-child{padding-top:0;border-top:0}.editorial-lead{max-width:48ch;line-height:1.55}.programme-reading{max-width:62ch}.programme-more h3,.tour-background h3,.archive>h3{font-size:clamp(23px,2.5vw,32px);line-height:1.2;margin:30px 0 22px}.programme-more{margin-top:32px;padding-top:12px}.tour-background blockquote{margin:0}.tour-story blockquote p{max-width:58ch;line-height:1.8}.download-help section{margin:35px 0}.download-help section>h3{margin-bottom:18px}

.press-quotes{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(35px,6vw,100px);padding:65px 0 30px;border-top:1px solid var(--rule);text-align:center}.press-quotes figure{border:0;padding:0}.press-quotes blockquote{margin:0 auto 22px;max-width:32ch}.press-quotes blockquote p{font-family:Georgia,serif;font-style:italic;font-size:clamp(24px,2.5vw,36px);line-height:1.4;letter-spacing:-.5px;max-width:none}.press-quotes figcaption{font-size:12px;letter-spacing:.035em}.press-quotes figcaption span{margin:0 10px}@media(max-width:650px){.press-quotes{grid-template-columns:1fr;padding:40px 0 0;gap:38px}.press-quotes figure{border:0;padding:0}.press-quotes blockquote{margin-bottom:14px}.press-quotes blockquote p{font-size:26px}}

.editorial-body:has(>.editorial-related){display:block;max-width:1250px}.editorial-body .reading-column{max-width:none}.reading-chapter{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(0,1.35fr);gap:clamp(35px,6vw,85px);padding:42px 0;border-bottom:1px solid var(--rule)}.editorial-body .reading-chapter h2{border:0;padding:0;margin:0;font-size:clamp(25px,2.8vw,39px);line-height:1.2}.reading-chapter>div{max-width:62ch}.reading-chapter>div>p:first-child{font-size:clamp(19px,1.7vw,23px);line-height:1.6}.reading-chapter p:last-child{margin-bottom:0}.editorial-related{max-width:660px;padding:38px 0 0;margin-left:auto}.editorial-related h2{font-size:26px}.reading-chapter h3{margin:25px 0 20px}@media(max-width:760px){.reading-chapter{grid-template-columns:1fr;gap:22px;padding:32px 0}.editorial-body .reading-chapter h2{font-size:28px}.reading-chapter>div>p:first-child{font-size:20px}}
/* Long-form copy uses the page width instead of a narrow side column. */
.editorial-body{max-width:980px}.editorial-body .reading-column{max-width:none}.reading-chapter{display:block;padding:42px 0}.editorial-body .reading-chapter h2{max-width:820px;margin:0 0 28px}.reading-chapter>div{max-width:76ch}.editorial-body .reading-column p{font-size:19px;line-height:1.8}.reading-chapter>div>p:first-child{font-size:23px;line-height:1.65}.editorial-related{max-width:none;margin-left:0;padding-top:40px}.editorial-related p{max-width:70ch}.programme-detail{display:flex;flex-direction:column;align-items:stretch;max-width:980px;margin-left:auto;margin-right:auto;gap:30px}.programme-copy{width:100%;max-width:none}.programme-reading{max-width:76ch}.programme-art{max-width:260px;width:100%;align-self:center;order:-1}.programme-reading p{font-size:19px;line-height:1.8}.tour-story{display:block;max-width:980px;margin-left:auto;margin-right:auto}.tour-own-words{max-width:none}.tour-story blockquote p{max-width:76ch;font-size:19px;line-height:1.8}.tour-story .tour-background{margin-top:50px;padding-top:30px;border-top:1px solid var(--rule)}
@media(max-width:760px){.editorial-body .reading-column p,.programme-reading p,.tour-story blockquote p{font-size:17px;line-height:1.8}.reading-chapter>div>p:first-child{font-size:20px}.reading-chapter{padding:30px 0}.editorial-body .reading-chapter h2{margin-bottom:22px}.programme-art{max-width:210px}}

.editorial-page-bio .editorial-hero{display:block;max-width:980px;margin:0 auto 32px}.editorial-page-bio .editorial-title{max-width:none}.editorial-page-bio .editorial-lead{max-width:760px;font-size:clamp(23px,2.4vw,32px);line-height:1.5;color:var(--ink);font-weight:400;letter-spacing:-.4px}.editorial-page-bio .editorial-body{padding-top:0;border-top:0}.editorial-page-bio .reading-chapter:first-child{padding-top:18px}
.home-page .artist-opening{margin-bottom:0}.home-page .recordings-feature{border-top:0;padding-top:clamp(28px,4vw,55px)}

.tour-feature>h2{grid-column:1/-1;font-size:clamp(32px,4vw,56px);line-height:1.12;letter-spacing:-1.5px;margin:0}.tour-feature{row-gap:30px}

/* A distinct tour advertisement, with the original poster kept intact. */
main>.tour-feature{background:#eee8dd;border-radius:0 clamp(50px,9vw,140px) 0 clamp(40px,7vw,100px);padding:clamp(28px,5vw,72px);margin-top:30px;margin-bottom:60px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:clamp(30px,6vw,90px);row-gap:40px;align-items:center}
.tour-feature>h2{max-width:1050px;font-size:clamp(34px,5.4vw,76px);line-height:1.03;letter-spacing:-.045em;font-weight:750;text-wrap:balance}.tour-feature>h2 em{font-family:Georgia,serif;font-weight:400;color:#9a352d}.tour-feature-poster{max-width:390px;justify-self:start;box-shadow:0 14px 35px #30271c24;transform:rotate(-2deg)}.tour-feature-copy{max-width:560px}.tour-feature-copy p.tour-ad-invitation{font-size:clamp(28px,3.6vw,52px);line-height:1.14;letter-spacing:-.035em;font-weight:650;color:#25211d;margin:0 0 26px}.tour-feature-copy p.tour-ad-description{font-size:clamp(17px,1.5vw,21px);line-height:1.65;max-width:33ch;color:#514b43;margin-bottom:32px}.tour-ad-button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;background:#9a352d;color:white;border-radius:999px;padding:16px 25px;text-decoration:none;font-size:15px;font-weight:700}.tour-ad-button:hover{background:#76271f}.tour-ad-button span{font-size:24px;line-height:1}
@media(max-width:650px){main>.tour-feature{grid-template-columns:1fr;padding:30px 25px;row-gap:30px;border-radius:0 60px 0 50px}.tour-feature>h2{font-size:38px}.tour-feature-poster{width:80%;max-width:300px;justify-self:center}.tour-feature-copy{max-width:none}.tour-feature-copy p.tour-ad-invitation{font-size:32px}.tour-feature-copy p.tour-ad-invitation br{display:none}.tour-feature-copy p.tour-ad-invitation br:after{content:' '}.tour-ad-button{font-size:14px;padding:14px 22px}}

.press-quotes{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,4vw,60px)}.press-quotes blockquote p{font-size:clamp(23px,2.2vw,32px)}@media(max-width:650px){.press-quotes{grid-template-columns:1fr;gap:38px}}
.press-quotes.quote-carousel{display:block;text-align:center;padding:65px 0 35px}.quote-stage{max-width:950px;margin:auto}.quote-carousel figure{margin:0 0 45px}.quote-carousel.is-carousel figure{margin:0}.quote-carousel figure[hidden]{display:none}.quote-carousel blockquote{max-width:39ch;margin:0 auto 24px}.quote-carousel blockquote p{font-size:clamp(27px,3.2vw,44px);line-height:1.4}.quote-carousel figcaption{font-size:14px;line-height:1.6}.quote-carousel figcaption a{text-decoration:none}.quote-carousel figcaption a:hover{text-decoration:underline}.quote-context{display:block;font-size:11px;letter-spacing:0;margin:6px 0 0!important;color:var(--muted)}.quote-controls{display:flex;justify-content:center;align-items:center;gap:25px;margin-top:32px}.quote-controls[hidden]{display:none}.quote-controls button{border:1px solid var(--rule);border-radius:50%;width:48px;height:48px;background:transparent;font-size:24px;line-height:1;color:var(--ink)}.quote-controls button:hover{background:var(--ink);color:white}.quote-controls>span{font-size:12px;font-variant-numeric:tabular-nums}.quote-carousel.is-carousel .quote-stage{min-height:285px;display:grid;align-items:center}@media(max-width:650px){.press-quotes.quote-carousel{padding:40px 0 25px}.quote-carousel.is-carousel .quote-stage{min-height:350px}.quote-carousel blockquote p{font-size:27px}}

.quote-carousel.is-carousel .quote-stage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,48px);align-items:center;max-width:none;min-height:340px}.quote-carousel.is-carousel figure{min-width:0}.quote-carousel.is-carousel blockquote p{font-size:clamp(20px,2.05vw,30px);line-height:1.45}.quote-carousel.is-carousel figcaption{font-size:13px}.quote-carousel.is-carousel .quote-context{font-size:10px}.quote-controls button[data-quote-pause]{font-size:17px}@media(max-width:650px){.quote-carousel.is-carousel .quote-stage{grid-template-columns:1fr;gap:32px;min-height:0}.quote-carousel.is-carousel blockquote p{font-size:25px}.quote-carousel.is-carousel blockquote{margin-bottom:12px}}

main>.press-quotes.quote-carousel{background:#eee8dd;border-top:0;border-radius:clamp(35px,6vw,80px) 0 clamp(35px,6vw,80px) 0;padding:clamp(35px,5vw,65px) clamp(24px,4vw,60px);margin-top:35px;margin-bottom:25px}.quote-carousel>h2{font-size:clamp(34px,4.3vw,60px);line-height:1.08;letter-spacing:-.04em;margin:0 0 42px}.quote-carousel.is-carousel figcaption>a{font-weight:700;font-size:15px;letter-spacing:.02em}.quote-carousel .quote-controls{margin-top:28px}.quote-carousel .quote-controls button{border-color:#b8afa1}.quote-carousel blockquote p{color:#352d26}@media(max-width:650px){.quote-carousel>h2{margin-bottom:32px}}

/* Open editorial press section: quotation first, attribution beneath. */
main>.press-quotes.quote-carousel{background:transparent;color:var(--ink);border-radius:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:clamp(32px,4vw,56px) 0;margin:35px 0 25px;text-align:left}
.quote-carousel>h2{font-size:clamp(28px,3vw,42px);font-weight:500;letter-spacing:-.035em;line-height:1.15;margin:0 0 42px;padding:0;border:0;text-wrap:balance}
.quote-carousel.is-carousel .quote-stage{align-items:stretch;gap:clamp(24px,4vw,64px);min-height:0}
.quote-carousel.is-carousel figure{display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:0;border:0}
.quote-carousel.is-carousel figure[hidden]{display:none}
.quote-carousel.is-carousel blockquote{margin:0 0 25px;max-width:none;flex:1}
.quote-carousel.is-carousel blockquote p{color:#34312c;font-family:Georgia,serif;font-style:normal;font-size:clamp(19px,1.7vw,25px);line-height:1.5;letter-spacing:-.015em}
.quote-carousel.is-carousel figcaption{order:0;color:var(--ink);min-height:0;margin:0;padding:15px 0 0;border-top:1px solid var(--rule);font-size:14px;line-height:1.5}
.quote-carousel.is-carousel figcaption>a{display:block;font-size:15px;font-weight:700;line-height:1.4;letter-spacing:0}
.quote-carousel figcaption a .quote-author{display:block;margin:0;font-size:14px;font-weight:400;color:var(--muted)}
.quote-carousel figcaption a .quote-publication{display:block;margin:3px 0 0;font-size:16px;font-weight:700;color:var(--ink)}
.quote-carousel.is-carousel .quote-context{font-size:11px;color:var(--muted);line-height:1.5;margin-top:6px!important}
.quote-carousel .quote-controls{justify-content:flex-end;margin-top:26px;gap:12px}
.quote-carousel .quote-controls button{width:36px;height:36px;font-size:20px;color:var(--muted);border-color:var(--rule)}
.quote-carousel .quote-controls button:hover{background:var(--ink);color:white}
#press-title{scroll-margin-top:50px}
@media(max-width:650px){.quote-carousel>h2{font-size:30px;margin-bottom:32px}.quote-carousel.is-carousel .quote-stage{gap:32px}.quote-carousel.is-carousel blockquote p{font-size:21px}.quote-carousel.is-carousel blockquote{margin-bottom:18px}}
main>.press-quotes.quote-carousel{margin-left:var(--page-gutter);margin-right:var(--page-gutter)}
.quote-carousel.is-carousel figcaption{min-height:64px}
/* Separate press quotations with whitespace rather than divider rules. */
main>.press-quotes.quote-carousel{border-top:0;border-bottom:0}
.quote-carousel>h2,.quote-carousel.is-carousel figcaption,.quote-carousel.is-carousel figure+figure{border:0}
/* Each attribution follows its own quotation at its natural height. */
.quote-carousel.is-carousel .quote-stage{align-items:start}
.quote-carousel.is-carousel blockquote{flex:none;margin-bottom:16px}
.quote-carousel.is-carousel figcaption{min-height:0;padding-top:0}
/* Restrained colour on the press heading and attributions. */
.quote-carousel>h2,.quote-carousel.is-carousel figcaption>a,.quote-carousel figcaption a .quote-author{color:#87373b}
/* Soft background for the press feature. */
main>.press-quotes.quote-carousel{background:#f2eee7;padding:clamp(28px,4vw,52px);border-radius:0 clamp(32px,5vw,64px) 0 clamp(32px,5vw,64px)}

/* A burgundy band behind the thank-you title. */
.quote-carousel>h2{display:table;max-width:100%;color:#fffaf3;background:#87373b;padding:12px 20px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.quote-carousel>h2::after{content:none}

.concert-list .event p.appearance-start{font-size:15px;font-weight:700;color:#87373b;margin:8px 0 0}

/* Programmes: performances, testimony and educational participation. */
.programmes-renewed{max-width:1280px;margin:auto}.programme-opening{padding:20px 0 42px;max-width:980px}.programme-opening>p{font-size:clamp(28px,3.3vw,46px);line-height:1.2;letter-spacing:-.035em;margin:0 0 24px}.programme-opening>div{font-size:19px;line-height:1.75;max-width:75ch;color:var(--muted)}
.programme-paths{display:flex;flex-wrap:wrap;gap:22px 48px;margin-bottom:65px}.programme-paths a{font-size:18px;font-weight:700;text-decoration:none}.programme-paths span{display:block;font-size:14px;font-weight:400;color:var(--muted);margin-top:8px}
.programme-feature{padding:clamp(32px,5vw,66px) 0;scroll-margin-top:100px}.programme-feature header{max-width:1000px;margin-bottom:32px}.programme-feature h2{font-size:clamp(34px,4.6vw,64px);line-height:1.06;letter-spacing:-.045em;margin:0 0 19px;text-wrap:balance}.programme-deck{font-size:clamp(21px,2.4vw,30px);line-height:1.4;color:#87373b;margin:0;max-width:48ch}.programme-narrative{max-width:88ch}.programme-narrative p,.programme-themes p{font-size:19px;line-height:1.85;margin:0 0 23px}
.programme-reviews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin:35px 0;background:#f2eee7;padding:clamp(24px,4vw,46px);border-radius:0 48px 0 48px}.programme-reviews figure{margin:0}.programme-reviews blockquote{margin:0 0 20px;font-family:Georgia,serif;font-size:22px;line-height:1.5}.programme-reviews figcaption,.programme-testimony figcaption{font-weight:700;color:#87373b;font-size:16px}.programme-reviews figcaption span,.programme-testimony figcaption span{display:block;font-size:14px;color:var(--muted);font-weight:400;margin-top:5px}
.programme-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 36px;margin-top:30px}.programme-actions>a{font-size:16px}.programme-actions>a:not(.text-link){color:var(--muted)}
.programme-peace{margin-top:30px}.programme-testimony{margin:30px 0;padding:clamp(25px,4vw,50px);background:#f0ede7;border-radius:48px 0 48px 0}.programme-testimony blockquote{margin:0;max-width:90ch}.programme-testimony blockquote p{font-family:Georgia,serif;font-size:clamp(19px,1.8vw,23px);line-height:1.7;margin:0 0 22px}
.programme-themes{max-width:1000px}.programme-themes section{margin:30px 0}.programme-themes h3,.programme-settings h3{font-size:26px;letter-spacing:-.025em;margin:0 0 12px}.programme-themes p{max-width:88ch}.programme-settings{padding:30px 0}.programme-settings ul{padding:0;display:flex;flex-wrap:wrap;gap:12px;list-style:none}.programme-settings li{padding:12px 20px;border-radius:30px;background:#f0ede7;font-size:16px}.programme-invitation{background:#f2eee7;padding:clamp(30px,5vw,64px);border-radius:0 64px 0 64px;margin:25px 0 60px}.programme-invitation h2{font-size:clamp(32px,4vw,50px);letter-spacing:-.04em;margin:0 0 20px}.programme-invitation p{font-size:19px;line-height:1.75;max-width:70ch}
@media(max-width:700px){.programme-reviews{grid-template-columns:1fr;gap:30px}.programme-paths{display:grid;gap:24px;margin-bottom:28px}.programme-feature{padding-top:35px}.programme-narrative p,.programme-themes p{font-size:18px}.programme-actions{align-items:flex-start;flex-direction:column}.programme-settings ul{display:grid;justify-items:start}}

/* Distinct, softly coloured programme settings with photography. */
.programmes-renewed .programme-feature{padding:clamp(24px,4.5vw,58px);margin:0 0 clamp(30px,5vw,64px);border-radius:0 clamp(32px,5vw,64px) 0 clamp(32px,5vw,64px);background:#f2e9df}
.programmes-renewed .programme-peace{background:#eaf0f3}
.programmes-renewed .programme-learning{background:#f0eaf0}
.programme-visual-intro{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:clamp(24px,4vw,50px);margin-bottom:36px}
.programme-visual-intro figure{margin:0;min-width:0}.programme-visual-intro img{display:block;width:100%;height:auto;border-radius:4px 38px 4px 38px}.programme-visual-intro header{margin:0;min-width:0}.programme-visual-intro h2{font-size:clamp(30px,3.8vw,52px)}.programme-visual-intro .programme-deck{font-size:clamp(20px,2vw,26px)}
.programme-peace .programme-visual-intro{grid-template-columns:1fr 1.15fr}.programme-peace .programme-visual-intro figure{order:2}.programme-peace .programme-visual-intro img{max-width:500px;margin:auto}
.programmes-renewed .programme-reviews,.programmes-renewed .programme-testimony{background:rgba(255,255,255,.48)}.programmes-renewed .programme-settings li{background:rgba(255,255,255,.6)}
@media(max-width:760px){.programme-visual-intro,.programme-peace .programme-visual-intro{grid-template-columns:1fr;gap:26px}.programme-peace .programme-visual-intro figure{order:0}.programme-visual-intro img{max-height:360px;object-fit:cover}.programme-peace .programme-visual-intro img{object-fit:contain;max-height:none}.programmes-renewed .programme-feature{padding:24px}.programme-reviews{padding:24px}.programme-visual-intro h2{font-size:34px}}

.programme-opening.programme-opening-simple{max-width:900px;margin:0 auto;padding:clamp(30px,5vw,60px) 0 clamp(35px,5vw,60px);text-align:center}.programme-opening-simple>p{font-size:clamp(25px,3vw,38px);margin:0 0 16px}.programme-opening-simple>div{font-size:18px;line-height:1.7;max-width:65ch;margin:auto}

.programme-projects-heading{max-width:900px;margin:70px auto 38px;text-align:center}.programme-projects-heading h2{font-size:clamp(30px,4vw,48px);letter-spacing:-.035em;margin-bottom:16px}.programme-projects-heading p{font-size:19px;line-height:1.6}.programme-project-status{font-size:15px;font-weight:700;line-height:1.5;margin:0 0 18px;color:#56515a}.programme-visual-intro figcaption{font-size:12px;color:var(--muted);margin-top:10px}.programmes-renewed .project-tone-sand{background:#ede9dc}.programmes-renewed .project-tone-rose{background:#f3e6e4}.programmes-renewed .project-tone-blue{background:#e5edf3}.programmes-renewed .project-tone-lavender{background:#ede7f1}.programmes-renewed .project-tone-peach{background:#f3e8dc}.programme-feature[class*="project-tone"] .programme-visual-intro img{max-height:350px;object-fit:cover;object-position:center 35%}

#rediscover-northern-ireland .programme-visual-intro img{max-width:360px;margin:auto}

/* Biography and activism share the illustrated programme layout. */
.editorial-page-bio .editorial-body,.editorial-page-activist .editorial-body{display:block}
.editorial-page-bio .reading-column,.editorial-page-activist .reading-column{max-width:none;width:100%}
.editorial-page-bio .editorial-hero,.editorial-page-activist .editorial-hero{border:0;display:block;max-width:1000px;margin:0 auto;padding:clamp(24px,4vw,52px) 0;text-align:center}
.life-sections .life-feature{border:0}
.life-sections .programme-visual-intro h2{margin:0;font-size:clamp(30px,3.8vw,52px);line-height:1.1;letter-spacing:-.035em}
.life-sections .programme-visual-intro img{height:clamp(230px,27vw,350px);object-fit:cover;object-position:center 30%}
.life-feature:nth-child(even) .programme-visual-intro figure{order:2}
.life-narrative{width:100%;max-width:none}
.life-narrative p{font-size:clamp(18px,1.5vw,21px);line-height:1.8;max-width:none;margin:0 0 24px}
.life-narrative h3{font-size:clamp(25px,2.5vw,34px);line-height:1.2;color:#87373b;margin:36px 0 20px;letter-spacing:-.025em}
.life-narrative p:last-child{margin-bottom:0}
.editorial-page-bio .editorial-related,.editorial-page-activist .editorial-related{border:0}
@media(max-width:760px){.life-feature:nth-child(even) .programme-visual-intro figure{order:0}.life-sections .programme-visual-intro img{height:260px}.life-sections .programme-visual-intro h2{font-size:32px}}

/* Carry the illustrated treatment through the book and production pages. */
.editorial-page-songman .editorial-body,.editorial-page-producer .editorial-body{display:block}
.editorial-page-songman .reading-column,.editorial-page-producer .reading-column{max-width:none;width:100%}
.editorial-page-songman .editorial-hero,.editorial-page-producer .editorial-hero{border:0;display:block;max-width:1000px;margin:0 auto;padding:clamp(24px,4vw,52px) 0;text-align:center}
.editorial-page-songman .editorial-related,.editorial-page-producer .editorial-related{border:0;background:#e5edf3;padding:clamp(24px,4.5vw,58px);border-radius:0 56px 0 56px}
.life-sections .life-book-cover img{height:360px;object-fit:contain;border-radius:0}
.life-book-cover figcaption{text-align:center}
.editorial-page-producer .programme-visual-intro h2{font-size:clamp(26px,3vw,42px);overflow-wrap:normal}
@media(max-width:760px){.life-sections .life-book-cover img{height:300px}}
.editorial-page-songman .editorial-body,.editorial-page-producer .editorial-body,.editorial-page-activist .editorial-body{border:0;padding-top:0}
.editorial-page-songman .life-sections .programme-feature .programme-visual-intro .life-book-cover img{object-fit:contain;height:360px;max-height:none;width:100%;border-radius:0}
@media(max-width:760px){.editorial-page-songman .life-sections .programme-feature .programme-visual-intro .life-book-cover img{height:300px}}

/* Short, balanced project titles beside the photographs. */
.editorial-page-producer .life-sections .programme-visual-intro header{padding:clamp(8px,2vw,28px) 0}
.editorial-page-producer .life-sections .programme-visual-intro h2{font-size:clamp(30px,3.4vw,48px);line-height:1.13;letter-spacing:-.035em;max-width:17ch;text-wrap:balance;margin:0;padding:0;border:0;color:#352b29}
.editorial-page-producer .life-sections .life-heading-detail{font-size:clamp(18px,1.8vw,24px);line-height:1.45;letter-spacing:0;color:#87373b;margin:20px 0 0;max-width:28ch}
@media(max-width:760px){.editorial-page-producer .life-sections .programme-visual-intro header{padding:0}.editorial-page-producer .life-sections .programme-visual-intro h2{font-size:32px;max-width:none}.editorial-page-producer .life-sections .life-heading-detail{margin-top:12px}}

/* Illustrated stories: photographic campaign openings, lighter editorial type. */
.life-sections .life-feature .programme-visual-intro{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center;margin-bottom:clamp(32px,4vw,52px)}
.life-sections .life-feature .programme-visual-intro figure{min-width:0}
.life-sections .life-feature .programme-visual-intro img{height:clamp(280px,32vw,440px);max-height:none;object-fit:cover;object-position:center 30%;border-radius:3px 48px 3px 48px}
.life-sections .life-feature .programme-visual-intro header{padding:clamp(12px,2vw,26px) 0;max-width:none}
.editorial-body .life-sections .life-feature .programme-visual-intro h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,4.2vw,62px);font-weight:400;line-height:1.08;letter-spacing:-.035em;color:#49332f;text-wrap:balance;max-width:18ch;margin:0;padding:0;border:0}
.editorial-body .life-sections .life-feature .programme-visual-intro .life-heading-detail{font-size:clamp(16px,1.5vw,20px);font-weight:400;line-height:1.55;letter-spacing:.01em;max-width:27ch;margin:24px 0 0;color:#66514c}
.life-feature:nth-child(even) .programme-visual-intro{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}
@media(max-width:760px){.life-sections .life-feature .programme-visual-intro,.life-sections .life-feature:nth-child(even) .programme-visual-intro{grid-template-columns:1fr;gap:24px}.life-sections .life-feature .programme-visual-intro img{height:290px}.life-sections .life-feature .programme-visual-intro header{padding:0 4px}.editorial-body .life-sections .life-feature .programme-visual-intro h2{font-size:clamp(34px,8vw,46px);max-width:22ch}.editorial-body .life-sections .life-feature .programme-visual-intro .life-heading-detail{margin-top:16px}}

/* A complete tour-advert-style opening for each illustrated story. */
.editorial-body .life-sections .life-feature .life-advert-title{max-width:none;margin:0 0 clamp(28px,4vw,48px);padding:0;text-align:center}
.editorial-body .life-sections .life-feature .life-advert-title h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(30px,3.8vw,54px);font-weight:400;line-height:1.12;letter-spacing:-.035em;text-wrap:balance;margin:0;padding:0;border:0;color:#49332f}
.life-advert{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:clamp(30px,6vw,80px);align-items:center;margin:0 0 clamp(36px,5vw,62px)}
.life-advert figure{margin:0;min-width:0;padding:8px}
.life-advert img{display:block;width:100%;height:clamp(250px,29vw,390px);object-fit:cover;object-position:center 30%;border-radius:3px;box-shadow:0 14px 28px #30271c24;transform:rotate(-2deg)}
.life-feature:nth-child(even) .life-advert img{transform:rotate(2deg)}
.life-advert .life-book-cover img{object-fit:contain;box-shadow:none}
.life-advert-copy{min-width:0}
.life-advert-copy .life-advert-invitation{font-size:clamp(30px,3.7vw,53px);font-weight:500;line-height:1.14;letter-spacing:-.04em;margin:0 0 24px;color:#302724;text-wrap:balance}
.life-advert-invitation em{display:block;font-family:Georgia,'Times New Roman',serif;font-weight:400;color:#87373b;margin-top:8px}
.life-advert-copy .life-advert-description{font-size:clamp(17px,1.6vw,21px);line-height:1.6;color:#62544d;max-width:32ch;margin:0}
@media(max-width:760px){.life-advert{grid-template-columns:1fr;gap:30px}.life-advert figure{width:90%;margin:auto}.life-advert img{height:300px}.life-advert-copy{padding:0 4px}.life-advert-copy .life-advert-invitation{font-size:35px}.life-advert-copy .life-advert-description{max-width:none}}
.editorial-body .life-sections .life-advert-copy p.life-advert-invitation{font-size:clamp(30px,3.7vw,53px);font-weight:500;line-height:1.14;letter-spacing:-.04em;margin:0 0 24px;color:#302724;max-width:none}
.editorial-body .life-sections .life-advert-copy p.life-advert-description{font-size:clamp(17px,1.6vw,21px);line-height:1.6;max-width:32ch;margin:0;color:#62544d}

/* One composed photographic banner, rather than a photograph beside a title. */
.life-sections .life-feature{--banner-paper:#ede9dc}
.life-sections .project-tone-blue{--banner-paper:#e5edf3}
.life-sections .project-tone-rose{--banner-paper:#f3e6e4}
.life-sections .project-tone-lavender{--banner-paper:#ede7f1}
.life-sections .project-tone-peach{--banner-paper:#f3e8dc}
.life-advert-banner{position:relative;isolation:isolate;overflow:hidden;min-height:420px;display:flex;flex-direction:column;justify-content:center;padding:clamp(32px,4vw,60px) clamp(24px,3vw,48px) clamp(32px,4vw,60px) 48%;margin:0 0 42px;background:var(--banner-paper);border-radius:4px 48px 4px 48px}
.editorial-body .life-sections .life-feature .life-advert-banner .life-advert-title{text-align:left;margin:0 0 22px;position:relative;z-index:1}
.editorial-body .life-sections .life-feature .life-advert-banner .life-advert-title h2{font:500 clamp(17px,1.6vw,22px)/1.35 Arial,Helvetica,sans-serif;letter-spacing:.01em;color:#72534a;max-width:30ch;text-wrap:balance}
.life-advert-banner .life-advert{display:block;margin:0}
.life-advert-banner .life-advert figure{position:absolute;z-index:-1;inset:0 35% 0 0;width:auto;margin:0;padding:0}
.life-advert-banner .life-advert figure::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 45%,var(--banner-paper) 100%)}
.life-advert-banner .life-advert figure img,.life-feature:nth-child(even) .life-advert-banner .life-advert img{height:100%;width:100%;max-height:none;object-fit:cover;object-position:35% 30%;border-radius:0;box-shadow:none;transform:none}
.editorial-body .life-sections .life-advert-banner .life-advert-copy p.life-advert-invitation{font-size:clamp(28px,3.5vw,49px);line-height:1.12;letter-spacing:-.035em;margin-bottom:23px}
.editorial-body .life-sections .life-advert-banner .life-advert-copy p.life-advert-description{font-size:clamp(16px,1.4vw,19px);line-height:1.5;max-width:29ch}
.life-advert-banner:has(.life-book-cover) .life-advert figure img{object-fit:contain;padding:35px 25% 35px 20px}
@media(max-width:650px){.life-advert-banner{min-height:0;padding:280px 24px 32px;border-radius:3px 36px 3px 36px}.life-advert-banner .life-advert figure{inset:0 0 auto;height:300px}.life-advert-banner .life-advert figure::after{background:linear-gradient(180deg,transparent 50%,var(--banner-paper) 100%)}.life-advert-banner .life-advert-copy{padding:0}.editorial-body .life-sections .life-advert-banner .life-advert-copy p.life-advert-invitation{font-size:34px}.life-advert-banner:has(.life-book-cover) .life-advert figure img{padding:15px;object-position:center}}

/* Full-width graphic opening; padding belongs to the narrative below. */
.programmes-renewed.life-sections .programme-feature.life-feature{padding:0;overflow:hidden}
.life-sections .life-feature .life-advert-banner{margin:0;border-radius:0;min-height:440px}
.life-sections .life-feature .life-narrative{padding:clamp(28px,4.5vw,58px)}
.life-sections .life-feature .life-advert-banner{--banner-paper:#f8f4ed;background:var(--banner-paper)}
.life-sections .project-tone-blue .life-advert-banner{--banner-paper:#f4f7fa}
.life-sections .project-tone-rose .life-advert-banner{--banner-paper:#fcf3ef}
.life-sections .project-tone-lavender .life-advert-banner{--banner-paper:#f8f3fa}
.life-sections .project-tone-peach .life-advert-banner{--banner-paper:#fff5e9}
@media(max-width:650px){.life-sections .life-feature .life-advert-banner{min-height:0}.life-sections .life-feature .life-narrative{padding:26px 24px}}

/* Balance each headline within its own banner, independently of screen width. */
.life-advert-banner{container-type:inline-size}
.editorial-body .life-sections .life-advert-banner .life-advert-title h2{max-width:100%;text-wrap:balance;line-height:1.4}
.editorial-body .life-sections .life-advert-banner .life-advert-copy p.life-advert-invitation{font-size:clamp(28px,7.5cqi,48px);white-space:normal;text-wrap:balance;overflow-wrap:normal;line-height:1.16}
.life-advert-invitation>span,.life-advert-invitation>em{display:block;text-wrap:balance}
.editorial-body .life-sections .life-advert-banner .life-advert-copy p.life-advert-description{white-space:normal;text-wrap:pretty;max-width:32ch;line-height:1.6}
.life-advert-banner .life-advert figure::after{background:linear-gradient(90deg,transparent 35%,var(--banner-paper) 90%)}
@media(max-width:650px){.editorial-body .life-sections .life-advert-banner .life-advert-copy p.life-advert-invitation{font-size:clamp(28px,9cqi,36px)}.life-advert-banner .life-advert figure::after{background:linear-gradient(180deg,transparent 45%,var(--banner-paper) 95%)}}

/* Compose around the subjects of each photograph, not one universal crop. */
@media(min-width:651px){
.life-advert-banner.banner-portrait-right{padding-left:clamp(28px,4vw,58px);padding-right:54%}
.life-advert-banner.banner-portrait-right .life-advert figure{inset:0 0 0 38%}
.life-advert-banner.banner-portrait-right .life-advert figure img{object-position:65% 25%}
.life-advert-banner.banner-portrait-right .life-advert figure::after{background:linear-gradient(90deg,var(--banner-paper),transparent 38%)}
.life-advert-banner.banner-portrait-left .life-advert figure::after{background:linear-gradient(90deg,transparent 65%,var(--banner-paper) 100%)}
.life-advert-banner.banner-group-photo{padding:0 0 34px;display:grid;grid-template-columns:1fr 1fr;gap:0 28px;min-height:0}
.life-advert-banner.banner-group-photo .life-advert{display:contents}
.life-advert-banner.banner-group-photo .life-advert figure{position:relative;inset:auto;z-index:0;grid-column:1/-1;grid-row:1;margin:0;width:100%}
.life-advert-banner.banner-group-photo .life-advert figure img{width:100%;height:auto;max-height:none;object-fit:contain}
.life-advert-banner.banner-group-photo .life-advert figure::after{background:linear-gradient(180deg,transparent 85%,var(--banner-paper) 100%)}
.editorial-body .life-sections .life-feature .banner-group-photo .life-advert-title{grid-column:1;grid-row:2;margin:0;padding:24px 0 0 34px;align-self:center}
.life-advert-banner.banner-group-photo .life-advert-copy{grid-column:2;grid-row:2;padding:24px 34px 0 0}
.editorial-body .life-sections .banner-group-photo .life-advert-copy p.life-advert-invitation{font-size:clamp(28px,3vw,40px)}
}
@media(max-width:650px){
.life-advert-banner.banner-group-photo{padding-top:0;display:flex}
.life-advert-banner.banner-group-photo .life-advert figure{position:relative;inset:auto;width:calc(100% + 48px);margin-left:-24px;height:auto;order:0}
.life-advert-banner.banner-group-photo .life-advert figure img{height:auto;width:100%;object-fit:contain}
.life-advert-banner.banner-group-photo .life-advert figure::after{background:linear-gradient(180deg,transparent 85%,var(--banner-paper))}
.life-advert-banner.banner-group-photo .life-advert{display:contents}
.life-advert-banner.banner-group-photo .life-advert-title{order:1;padding-top:20px!important}
.life-advert-banner.banner-group-photo .life-advert-copy{order:2}
.life-advert-banner.banner-portrait-right .life-advert figure img{object-position:65% 20%}
}

/* Bespoke first biography banner — one photograph, one headline. */
.biography-opening-banner{position:relative;isolation:isolate;overflow:hidden;min-height:480px;margin:0!important;max-width:none!important;background:#100f0b;color:#fff7e8;display:flex;align-items:center;padding:clamp(34px,5vw,72px)}
.biography-opening-banner>img{position:absolute;z-index:-2;inset:0 0 0 auto;width:66%;height:100%;object-fit:cover;object-position:36% center}
.biography-opening-banner::after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#100f0b 0%,#100f0b 27%,rgba(16,15,11,.92) 35%,rgba(16,15,11,.2) 54%,transparent 65%)}
.biography-opening-copy{width:51%;max-width:570px}
.editorial-body .life-sections .biography-opening-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,4.2vw,61px);font-weight:400;letter-spacing:-.04em;line-height:1.1;color:#fff7e8;margin:0;padding:0;border:0;text-wrap:initial}
.biography-opening-banner h2 em{font-weight:400;color:#ddbf87}
.editorial-body .life-sections .biography-opening-banner p{font-size:clamp(16px,1.5vw,20px);font-weight:400;line-height:1.65;color:#ded7c9;margin:30px 0 0;max-width:32ch;white-space:normal}
@media(max-width:650px){.biography-opening-banner{min-height:610px;align-items:flex-end;padding:32px 26px}.biography-opening-banner>img{width:100%;height:400px;object-position:38% top}.biography-opening-banner::after{background:linear-gradient(180deg,transparent 25%,rgba(16,15,11,.15) 40%,#100f0b 66%)}.biography-opening-copy{width:100%;max-width:none}.editorial-body .life-sections .biography-opening-banner h2{font-size:38px}.editorial-body .life-sections .biography-opening-banner p{margin-top:20px}}

/* Second biography banner: the whole gathering, with a warm campaign panel. */
.biography-community-banner{max-width:none!important;margin:0!important;background:#79383c;color:#fff6e9;overflow:hidden}
.biography-community-banner>img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.biography-community-copy{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:clamp(24px,4vw,60px);padding:clamp(28px,4vw,54px);position:relative}
.editorial-body .life-sections .biography-community-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,4.5vw,62px);font-weight:400;line-height:1.05;letter-spacing:-.035em;color:#fff6e9;margin:0;padding:0;border:0}
.biography-community-banner h2 em{font-weight:400;color:#f2caa1}
.editorial-body .life-sections .biography-community-banner p{font-size:clamp(18px,1.8vw,24px);line-height:1.55;color:#f3e4db;max-width:25ch;margin:0;white-space:normal;text-wrap:balance}
@media(max-width:650px){.biography-community-copy{grid-template-columns:1fr;gap:22px;padding:28px 24px}.editorial-body .life-sections .biography-community-banner h2{font-size:39px}}

/* Third biography banner: a light editorial composition around the portrait. */
.biography-peace-banner{display:grid;grid-template-columns:1fr 1.15fr;align-items:stretch;background:#f5eadb;max-width:none!important;margin:0!important;min-height:440px;overflow:hidden}
.biography-peace-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(30px,4.5vw,65px);position:relative;z-index:1}
.editorial-body .life-sections .biography-peace-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(37px,4.5vw,64px);font-weight:400;line-height:1.06;letter-spacing:-.045em;color:#873e2d;margin:0;padding:0;border:0}
.biography-peace-banner h2 em{font-weight:400}
.editorial-body .life-sections .biography-peace-banner p{font-size:clamp(17px,1.5vw,21px);line-height:1.65;letter-spacing:.01em;color:#68574b;margin:30px 0 0;white-space:normal}
.biography-peace-banner>img{width:100%;height:100%;min-height:440px;object-fit:cover;object-position:66% center;border-radius:110px 0 0 0}
@media(max-width:650px){.biography-peace-banner{grid-template-columns:1fr}.biography-peace-banner>img{order:-1;height:310px;min-height:0;object-position:65% 25%;border-radius:0}.biography-peace-copy{padding:32px 26px}.editorial-body .life-sections .biography-peace-banner h2{font-size:44px}.editorial-body .life-sections .biography-peace-banner p{margin-top:23px}}

/* Third banner, revised as one full photographic composition. */
.biography-peace-banner{position:relative;isolation:isolate;display:flex;align-items:center;background:#252724;min-height:470px}
.biography-peace-banner>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;min-height:0;object-fit:cover;object-position:center 38%;border-radius:0}
.biography-peace-banner::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(28,31,29,.97) 0%,rgba(28,31,29,.88) 24%,rgba(28,31,29,.48) 43%,transparent 65%)}
.biography-peace-copy{width:49%;padding:clamp(32px,5vw,70px)}
.editorial-body .life-sections .biography-peace-banner h2{font-size:clamp(39px,4.8vw,68px);line-height:1.03;color:#fff9ef;letter-spacing:-.04em}
.biography-peace-banner h2 em{color:#e2c99f}
.editorial-body .life-sections .biography-peace-banner p{font-size:clamp(16px,1.5vw,20px);color:#eee7dc;line-height:1.65;margin-top:30px}
@media(max-width:650px){.biography-peace-banner{min-height:570px;align-items:flex-end}.biography-peace-banner>img{height:100%;object-position:64% center}.biography-peace-banner::after{background:linear-gradient(180deg,transparent 25%,rgba(28,31,29,.45) 48%,rgba(28,31,29,.96) 75%)}.biography-peace-copy{width:100%;padding:30px 26px}.editorial-body .life-sections .biography-peace-banner h2{font-size:43px}}

/* Fourth biography banner: intimate family portrait and a warm editorial panel. */
.biography-family-banner{max-width:none!important;margin:0!important;display:grid;grid-template-columns:1.15fr 1fr;background:#20232a;align-items:center;overflow:hidden}
.biography-family-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.biography-family-copy{padding:clamp(28px,4vw,56px)}
.editorial-body .life-sections .biography-family-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(32px,3.7vw,53px);font-weight:400;line-height:1.12;letter-spacing:-.035em;color:#fff7eb;margin:0;padding:0;border:0}
.biography-family-banner h2 em{font-weight:400;color:#e9b985}
.editorial-body .life-sections .biography-family-banner p{font-size:clamp(16px,1.5vw,20px);line-height:1.65;color:#dbd6ce;margin:26px 0 0;white-space:normal}
@media(max-width:650px){.biography-family-banner{grid-template-columns:1fr}.biography-family-copy{padding:30px 26px}.editorial-body .life-sections .biography-family-banner h2{font-size:38px}}
.biography-family-banner{background:#100f0e}

/* Closing biography banner: a concert-poster composition. */
.biography-road-banner{position:relative;isolation:isolate;display:flex;align-items:center;min-height:470px;max-width:none!important;margin:0!important;background:#060606;overflow:hidden}
.biography-road-banner>img{position:absolute;z-index:-2;right:0;top:0;width:75%;height:100%;object-fit:cover;object-position:65% center}
.biography-road-banner::after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#060606 5%,rgba(6,6,6,.94) 24%,rgba(6,6,6,.2) 48%,transparent 65%)}
.biography-road-copy{width:48%;padding:clamp(30px,5vw,70px)}
.editorial-body .life-sections .biography-road-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(48px,6.4vw,88px);font-weight:400;line-height:.98;letter-spacing:-.05em;color:#fff6e4;margin:0;padding:0;border:0}
.biography-road-banner h2 em{font-weight:400;color:#dfb575}
.editorial-body .life-sections .biography-road-banner p{font-size:clamp(17px,1.5vw,21px);line-height:1.65;color:#ded4c5;margin:30px 0 0;white-space:normal}
@media(max-width:650px){.biography-road-banner{min-height:600px;align-items:flex-end}.biography-road-banner>img{width:100%;height:420px;object-position:65% top}.biography-road-banner::after{background:linear-gradient(180deg,transparent 30%,rgba(6,6,6,.25) 45%,#060606 70%)}.biography-road-copy{width:100%;padding:30px 26px}.editorial-body .life-sections .biography-road-banner h2{font-size:58px}}

/* A single quiet surface for illustrated stories; artwork keeps its own palette. */
.programmes-renewed.life-sections .programme-feature.life-feature{background:#f5f2ec}

/* First activist banner: mural and portrait composed as one warm poster. */
.activist-opening-banner{position:relative;isolation:isolate;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;max-width:none!important;margin:0!important;background:#4b2924;overflow:hidden}
.activist-opening-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.activist-opening-copy{padding:clamp(28px,4vw,58px)}
.editorial-body .life-sections .activist-opening-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(35px,4.5vw,63px);font-weight:400;line-height:1.06;letter-spacing:-.035em;color:#fff5e5;margin:0;padding:0;border:0}
.activist-opening-banner h2 em{font-weight:400;color:#eac497}
.editorial-body .life-sections .activist-opening-banner p{font-size:clamp(17px,1.5vw,21px);line-height:1.65;color:#ead8cc;margin:30px 0 0;white-space:normal}
@media(max-width:650px){.activist-opening-banner{grid-template-columns:1fr}.activist-opening-copy{padding:32px 26px}.editorial-body .life-sections .activist-opening-banner h2{font-size:43px}}

/* Second activist banner: portrait-led, open space for the conversation. */
.activist-dialogue-banner{position:relative;isolation:isolate;display:flex;align-items:center;min-height:470px;max-width:none!important;margin:0!important;background:#242624;overflow:hidden}
.activist-dialogue-banner>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 38%}
.activist-dialogue-banner::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(28,31,29,.97),rgba(28,31,29,.88) 24%,rgba(28,31,29,.48) 43%,transparent 65%)}
.activist-dialogue-copy{width:51%;padding:clamp(30px,5vw,70px)}
.editorial-body .life-sections .activist-dialogue-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,4.6vw,65px);font-weight:400;line-height:1.08;letter-spacing:-.04em;color:#fff7e8;margin:0;padding:0;border:0}
.activist-dialogue-banner h2 em{font-weight:400;color:#e2c99f}
.editorial-body .life-sections .activist-dialogue-banner p{font-size:clamp(17px,1.5vw,21px);line-height:1.65;color:#eee7dc;margin:30px 0 0;white-space:normal}
@media(max-width:650px){.activist-dialogue-banner{min-height:590px;align-items:flex-end}.activist-dialogue-banner>img{object-position:64% center}.activist-dialogue-banner::after{background:linear-gradient(180deg,transparent 25%,rgba(28,31,29,.45) 48%,rgba(28,31,29,.96) 75%)}.activist-dialogue-copy{width:100%;padding:30px 26px}.editorial-body .life-sections .activist-dialogue-banner h2{font-size:40px}}

/* Third activist banner: a complete group portrait above a unified campaign strip. */
.activist-rights-banner{max-width:none!important;margin:0!important;background:#353244;overflow:hidden}
.activist-rights-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.activist-rights-copy{display:grid;grid-template-columns:1.35fr 1fr;align-items:center;gap:clamp(24px,4vw,60px);padding:clamp(28px,4vw,54px)}
.editorial-body .life-sections .activist-rights-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(35px,4.5vw,62px);font-weight:400;line-height:1.07;letter-spacing:-.035em;color:#fff6e9;margin:0;padding:0;border:0}
.activist-rights-banner h2 em{font-weight:400;color:#e4c4a0}
.editorial-body .life-sections .activist-rights-banner p{font-size:clamp(18px,1.7vw,23px);line-height:1.6;color:#ece3de;margin:0;white-space:normal}
@media(max-width:650px){.activist-rights-copy{grid-template-columns:1fr;gap:24px;padding:28px 24px}.editorial-body .life-sections .activist-rights-banner h2{font-size:38px}}

/* Final activist banner: learning through the shared experience of song. */
.activist-learning-banner{position:relative;isolation:isolate;display:flex;align-items:center;min-height:460px;max-width:none!important;margin:0!important;background:#060606;overflow:hidden}
.activist-learning-banner>img{position:absolute;z-index:-2;right:0;top:0;width:74%;height:100%;object-fit:cover;object-position:65% center}
.activist-learning-banner::after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#060606 5%,rgba(6,6,6,.95) 25%,rgba(6,6,6,.2) 48%,transparent 65%)}
.activist-learning-copy{width:53%;padding:clamp(30px,5vw,70px)}
.editorial-body .life-sections .activist-learning-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(37px,4.5vw,63px);font-weight:400;line-height:1.08;letter-spacing:-.04em;color:#fff6e4;margin:0;padding:0;border:0}
.activist-learning-banner h2 em{font-weight:400;color:#dfb575}
.editorial-body .life-sections .activist-learning-banner p{font-size:clamp(17px,1.5vw,21px);line-height:1.65;color:#ded4c5;margin:30px 0 0;white-space:normal}
@media(max-width:650px){.activist-learning-banner{min-height:590px;align-items:flex-end}.activist-learning-banner>img{width:100%;height:420px;object-position:65% top}.activist-learning-banner::after{background:linear-gradient(180deg,transparent 30%,rgba(6,6,6,.25) 45%,#060606 70%)}.activist-learning-copy{width:100%;padding:30px 26px}.editorial-body .life-sections .activist-learning-banner h2{font-size:41px}}

/* Quiet introduction between the activist hero and first feature. */
.editorial-page-activist .editorial-hero{max-width:900px;padding:clamp(26px,4vw,48px) 0}
.editorial-page-activist .editorial-hero .editorial-lead{font-size:clamp(18px,1.8vw,23px);font-weight:400;line-height:1.65;letter-spacing:0;max-width:68ch;margin:0 auto;color:#55534e;text-wrap:pretty}

/* First Producer banner: a landscape portrait and a cinematic title. */
.producer-opening-banner{position:relative;isolation:isolate;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;max-width:none!important;margin:0!important;background:#29363e;overflow:hidden}
.producer-opening-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.producer-opening-copy{padding:clamp(28px,4vw,56px)}
.editorial-body .life-sections .producer-opening-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,4.5vw,63px);font-weight:400;line-height:1.08;letter-spacing:-.035em;color:#fff7e8;margin:0;padding:0;border:0}
.producer-opening-banner h2 em{font-weight:400;color:#dfc79d}
.editorial-body .life-sections .producer-opening-banner p{font-size:clamp(17px,1.5vw,21px);line-height:1.65;color:#e3e5e3;margin:30px 0 0;white-space:normal}
@media(max-width:650px){.producer-opening-banner{grid-template-columns:1fr}.producer-opening-copy{padding:32px 26px}.editorial-body .life-sections .producer-opening-banner h2{font-size:43px}}

/* Second Producer banner: a single stage photograph and a clear film-series title. */
.producer-borders-banner{position:relative;isolation:isolate;display:flex;align-items:center;min-height:470px;max-width:none!important;margin:0!important;background:#060606;overflow:hidden}
.producer-borders-banner>img{position:absolute;z-index:-2;right:0;top:0;width:74%;height:100%;object-fit:cover;object-position:65% center}
.producer-borders-banner::after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#060606 5%,rgba(6,6,6,.95) 25%,rgba(6,6,6,.2) 48%,transparent 65%)}
.producer-borders-copy{width:55%;padding:clamp(30px,5vw,70px)}
.editorial-body .life-sections .producer-borders-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,4.5vw,63px);font-weight:400;line-height:1.08;letter-spacing:-.04em;color:#fff6e4;margin:0;padding:0;border:0}
.producer-borders-banner h2 em{font-weight:400;color:#dfb575}
.editorial-body .life-sections .producer-borders-banner p{font-size:clamp(17px,1.5vw,21px);line-height:1.65;color:#ded4c5;margin:30px 0 0;white-space:normal}
@media(max-width:650px){.producer-borders-banner{min-height:590px;align-items:flex-end}.producer-borders-banner>img{width:100%;height:420px;object-position:65% top}.producer-borders-banner::after{background:linear-gradient(180deg,transparent 30%,rgba(6,6,6,.25) 45%,#060606 70%)}.producer-borders-copy{width:100%;padding:30px 26px}.editorial-body .life-sections .producer-borders-banner h2{font-size:40px}}

/* Rostrevor: preserve the complete group photograph in a festival composition. */
.producer-rostrevor-banner{max-width:none!important;margin:0!important;background:#512e36;overflow:hidden}
.producer-rostrevor-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.producer-rostrevor-copy{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:clamp(24px,4vw,56px);padding:clamp(28px,4vw,52px)}
.editorial-body .life-sections .producer-rostrevor-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,4.5vw,62px);font-weight:400;line-height:1.08;letter-spacing:-.035em;color:#fff6e9;margin:0;padding:0;border:0}
.producer-rostrevor-banner h2 em{font-weight:400;color:#e5c9a3}
.editorial-body .life-sections .producer-rostrevor-banner p{font-size:clamp(18px,1.7vw,23px);line-height:1.6;color:#eee0d8;margin:0;white-space:normal}
@media(max-width:650px){.producer-rostrevor-copy{grid-template-columns:1fr;gap:22px;padding:28px 24px}.editorial-body .life-sections .producer-rostrevor-banner h2{font-size:38px}}

/* Moneydarragh: a portrait-led film title, echoing the photograph's warm ochre. */
.producer-moneydarragh-banner{position:relative;isolation:isolate;display:flex;align-items:center;min-height:480px;max-width:none!important;margin:0!important;background:#0a0b07;overflow:hidden}
.producer-moneydarragh-banner>img{position:absolute;z-index:-2;right:0;top:0;width:57%;height:100%;object-fit:cover;object-position:center 28%}
.producer-moneydarragh-banner::after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#0a0b07 20%,rgba(10,11,7,.94) 40%,rgba(10,11,7,.2) 57%,transparent 70%)}
.producer-moneydarragh-copy{width:54%;padding:clamp(30px,5vw,70px)}
.editorial-body .life-sections .producer-moneydarragh-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(44px,6vw,82px);font-weight:400;line-height:1.02;letter-spacing:-.04em;color:#fff5df;margin:0;padding:0;border:0}
.producer-moneydarragh-banner h2 em{font-weight:400;color:#d8b36b}
.editorial-body .life-sections .producer-moneydarragh-banner p{font-size:clamp(17px,1.6vw,22px);line-height:1.65;color:#e1d7c3;margin:28px 0 0;white-space:normal}
@media(max-width:650px){.producer-moneydarragh-banner{min-height:650px;align-items:flex-end}.producer-moneydarragh-banner>img{width:100%;height:420px;object-position:center top}.producer-moneydarragh-banner::after{background:linear-gradient(180deg,transparent 30%,rgba(10,11,7,.35) 49%,#0a0b07 65%)}.producer-moneydarragh-copy{width:100%;padding:30px 26px}.editorial-body .life-sections .producer-moneydarragh-banner h2{font-size:48px}}

/* Newry: a river-blue film poster with an uncropped outdoor portrait. */
.producer-newry-banner{position:relative;display:grid;grid-template-columns:1.15fr 1fr;align-items:center;max-width:none!important;margin:0!important;background:#243d50;overflow:hidden}
.producer-newry-banner>img{display:block;width:100%;height:auto;align-self:stretch;object-fit:contain;background:#243d50}
.producer-newry-copy{position:relative;isolation:isolate;padding:clamp(30px,5vw,68px);align-self:stretch;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.producer-newry-copy::after{content:'';position:absolute;z-index:-1;width:150%;height:200px;left:-20%;bottom:-145px;border-radius:50%;border-top:1px solid #7890a2;box-shadow:0 -22px 0 -21px #7890a2,0 -44px 0 -43px #7890a2;transform:rotate(-12deg);opacity:.45}
.editorial-body .life-sections .producer-newry-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(40px,5.8vw,80px);font-weight:400;line-height:1.06;letter-spacing:-.04em;color:#fff7e9;margin:0;padding:0;border:0}
.producer-newry-banner h2 em{font-weight:400;color:#e4c69b}
.editorial-body .life-sections .producer-newry-banner p{font-size:clamp(19px,2vw,27px);line-height:1.5;color:#f2ede4;margin:32px 0 0;white-space:normal}
.producer-newry-copy>span{font-size:clamp(16px,1.5vw,20px);line-height:1.6;color:#cbd7df;margin-top:22px}
@media(max-width:650px){.producer-newry-banner{grid-template-columns:1fr}.producer-newry-banner>img{grid-row:1;width:100%;height:auto}.producer-newry-copy{padding:32px 26px 48px}.editorial-body .life-sections .producer-newry-banner h2{font-size:48px}}

/* Sport and shared ground: mural colour carried into a community-film poster. */
.producer-sport-banner{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;max-width:none!important;margin:0!important;background:#713e32;overflow:hidden}
.producer-sport-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.producer-sport-copy{padding:clamp(28px,4vw,56px)}
.editorial-body .life-sections .producer-sport-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(32px,4.1vw,58px);font-weight:400;line-height:1.1;letter-spacing:-.035em;color:#fff7eb;margin:0;padding:0;border:0}
.producer-sport-banner h2 em{font-weight:400;color:#efcf9d}
.editorial-body .life-sections .producer-sport-banner p{font-size:clamp(20px,2vw,27px);line-height:1.5;color:#fff2df;margin:30px 0 0;white-space:normal}
.producer-sport-copy>span{display:block;font-size:clamp(16px,1.5vw,20px);line-height:1.65;color:#ecd9cd;margin-top:15px}
@media(max-width:650px){.producer-sport-banner{grid-template-columns:1fr}.producer-sport-copy{padding:32px 26px 38px}.editorial-body .life-sections .producer-sport-banner h2{font-size:38px}}

.producer-sport-banner{background:#24211b;grid-template-columns:1.15fr 1fr}.producer-sport-banner h2 em{color:#d8bf8c}@media(max-width:650px){.producer-sport-banner{grid-template-columns:1fr}}

/* Artsawonder: keep all speakers visible, with a shared title band. */
.producer-artsawonder-banner{max-width:none!important;margin:0!important;background:#3d303a;overflow:hidden}
.producer-artsawonder-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.producer-artsawonder-copy{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:clamp(24px,4vw,56px);padding:clamp(28px,4vw,52px)}
.editorial-body .life-sections .producer-artsawonder-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,5vw,68px);font-weight:400;line-height:1.05;letter-spacing:-.035em;color:#fff6e9;margin:0;padding:0;border:0}
.producer-artsawonder-banner h2 em{font-weight:400;color:#e9c39f}
.editorial-body .life-sections .producer-artsawonder-banner p{font-size:clamp(20px,2vw,27px);line-height:1.5;color:#fff0de;margin:0;white-space:normal}
.producer-artsawonder-copy p span{display:block;font-size:clamp(16px,1.6vw,21px);line-height:1.65;color:#e0d1d5;margin-top:15px}
@media(max-width:650px){.producer-artsawonder-copy{grid-template-columns:1fr;gap:24px;padding:30px 26px}.editorial-body .life-sections .producer-artsawonder-banner h2{font-size:42px}}

/* Producer introduction: a quiet lead into the illustrated features. */
.editorial-page-producer .editorial-hero{max-width:900px;padding:clamp(26px,4vw,48px) 0}
.editorial-page-producer .editorial-hero .editorial-lead{font-size:clamp(18px,1.8vw,23px);font-weight:400;line-height:1.65;letter-spacing:0;max-width:68ch;margin:0 auto;color:#55534e;text-wrap:pretty}

/* Producer closing invitation: a compact, responsive contact panel. */
.editorial-page-producer .producer-contact-panel{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:clamp(32px,5vw,64px) 0 0;padding:clamp(28px,4vw,48px);background:#ebe6dd;border-radius:0 34px 0 34px}
.editorial-page-producer .producer-contact-panel h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(28px,3vw,40px);line-height:1.15;letter-spacing:-.025em;color:#342e29;border:0;padding:0;margin:0}
.editorial-page-producer .producer-contact-panel p{font-size:clamp(16px,1.5vw,20px);line-height:1.55;color:#625b53;margin:12px 0 0}
.editorial-page-producer .producer-contact-panel a{display:inline-flex;align-items:center;justify-content:center;gap:24px;flex-shrink:0;padding:16px 24px;border-radius:4px;background:#773d38;color:#fffaf3;font-size:17px;font-weight:600;text-decoration:none}
.editorial-page-producer .producer-contact-panel a:hover{background:#5e2e2a}
.editorial-page-producer .producer-contact-panel a:focus-visible{outline:3px solid #773d38;outline-offset:4px}
@media(max-width:650px){.editorial-page-producer .producer-contact-panel{align-items:flex-start;flex-direction:column;gap:24px}}

/* Always-visible routes into Tommy's story, without a dropdown or scroll strip. */
.about-subnav{display:flex;align-items:center;justify-content:center;gap:28px;padding:12px var(--page-gutter);background:#eee9e1;color:#544b44}
.about-subnav>span{font-size:13px;font-weight:600;color:#71675f;white-space:nowrap}
.about-subnav>div{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 12px}
.about-subnav a{display:block;padding:7px 13px;border-radius:4px;text-decoration:none;font-size:14px;line-height:1.4;font-weight:500;white-space:nowrap}
.about-subnav a:hover{background:#e0d8cc;color:#4d2926}
.about-subnav a[aria-current=page]{background:#773d38;color:#fffaf3}
.about-subnav a:focus-visible{outline:2px solid #773d38;outline-offset:3px}
@media(max-width:650px){.about-subnav{flex-direction:column;gap:8px;padding:14px 20px}.about-subnav>div{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 8px;text-align:center}.about-subnav a{white-space:normal}}

/* One navigation hierarchy on desktop and mobile. */
.navigation-header{position:relative;z-index:30;gap:24px;border-bottom:0}
.navigation-header #primary-navigation{display:flex;align-items:center;gap:clamp(14px,1.6vw,26px);margin:0;font-size:14px}
.navigation-header #primary-navigation>a{border:0;padding:10px 0}
.navigation-about{position:relative}
.navigation-about summary{display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none;padding:10px 0;font-weight:500;white-space:nowrap}
.navigation-about summary::-webkit-details-marker{display:none}
.navigation-about[data-current-group] summary{color:#773d38}
.navigation-about[open] summary>span{transform:rotate(180deg)}
.navigation-about-links{position:absolute;right:0;top:100%;min-width:210px;padding:12px;background:#faf8f3;border-radius:8px;box-shadow:0 12px 36px #0002}
.navigation-header .navigation-about-links a{display:block;padding:11px 14px;border:0;border-radius:4px;white-space:nowrap}
.navigation-header .navigation-about-links a:hover,.navigation-header .navigation-about-links a[aria-current]{background:#eee6db;color:#773d38}
.navigation-header #primary-navigation>.navigation-contact{padding:10px 18px;border-radius:4px;background:#773d38;color:#fffaf3}
.navigation-header a:focus-visible,.navigation-header summary:focus-visible,.navigation-toggle:focus-visible{outline:2px solid #773d38;outline-offset:4px}
.navigation-toggle{display:none}
@media(max-width:819px){
.navigation-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding-top:18px;padding-bottom:18px;min-height:0}
.navigation-header .wordmark{font-size:30px}
.navigation-header .navigation-toggle:not([hidden]){display:inline-flex;align-items:center;gap:12px;border:0;background:transparent;color:#292521;padding:10px 0 10px 16px;font-family:inherit;font-size:16px;font-weight:600;cursor:pointer}
.navigation-toggle-icon{font-size:23px;line-height:1}
.navigation-header #primary-navigation{flex:0 0 100%;display:flex;flex-direction:column;align-items:stretch;gap:2px;padding:10px 0 4px;font-size:18px}
.navigation-header.navigation-enhanced #primary-navigation{display:none}
.navigation-header.navigation-enhanced.menu-open #primary-navigation{display:flex}
.navigation-header #primary-navigation>a,.navigation-about summary{padding:12px 4px}
.navigation-about summary{justify-content:space-between}
.navigation-about-links{position:static;box-shadow:none;min-width:0;background:#eee9e1;padding:8px 12px;margin:0 0 10px;border-radius:6px}
.navigation-header .navigation-about-links a{font-size:16px;padding:11px 12px}
.navigation-header #primary-navigation>.navigation-contact{align-self:flex-start;padding:12px 22px;margin-top:12px}
}

/* Compact desktop navigation stays visible on tablets and smaller laptops. */
@media(min-width:820px){
.navigation-header{padding:24px clamp(22px,3.2vw,64px);min-height:88px;flex-wrap:nowrap;gap:20px}
.navigation-header .wordmark{font-size:clamp(24px,2.3vw,34px);letter-spacing:-1px}
.navigation-header #primary-navigation{flex-wrap:nowrap;gap:clamp(12px,1.5vw,24px);font-size:clamp(12px,1.05vw,15px);white-space:nowrap}
.navigation-header #primary-navigation>.navigation-contact{padding:10px 14px}
.navigation-about summary{gap:5px}
}

/* The Songman: a book-jacket advertisement, with the complete cover preserved. */
.songman-opening-banner{position:relative;isolation:isolate;display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:clamp(28px,5vw,70px);max-width:none!important;margin:0!important;padding:clamp(32px,5vw,68px);background:#e6ddcc;overflow:hidden}
.songman-opening-banner::after{content:'';position:absolute;z-index:-1;width:62%;height:150%;right:-18%;top:-20%;border-radius:50%;background:#d5c5ab;transform:rotate(-18deg)}
.editorial-body .life-sections .songman-opening-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(35px,4.6vw,64px);font-weight:400;line-height:1.08;letter-spacing:-.035em;color:#352e26;margin:0;padding:0;border:0}
.songman-opening-banner h2 em{font-weight:400;color:#526b36}
.editorial-body .life-sections .songman-opening-banner p{font-size:clamp(17px,1.7vw,22px);line-height:1.65;color:#534b40;margin:28px 0 0;white-space:normal}
.songman-opening-copy>span{display:block;margin-top:28px;font-size:clamp(14px,1.3vw,17px);line-height:1.5;color:#6c5541}
.songman-opening-banner>figure{margin:0;display:flex;justify-content:center}
.songman-opening-banner>figure>img{display:block;width:min(100%,268px);height:auto;box-shadow:12px 20px 35px #44311d40;transform:rotate(3deg)}
@media(max-width:650px){.songman-opening-banner{grid-template-columns:1fr;gap:36px;padding:34px 26px 42px}.songman-opening-banner>figure>img{width:220px}.songman-opening-banner::after{width:120%;height:65%;top:auto;bottom:-25%;right:-30%}.editorial-body .life-sections .songman-opening-banner h2{font-size:40px}.songman-opening-banner p br{display:none}}

/* Book to stage: a companion performance poster in the Songman palette. */
.songman-stage{margin-top:clamp(32px,5vw,64px);overflow:hidden;border-radius:0 54px 0 54px;background:#f5f2ec}
.songman-stage-banner{position:relative;isolation:isolate;display:flex;align-items:center;min-height:460px;background:#080907;overflow:hidden;margin:0}
.songman-stage-banner>img{position:absolute;z-index:-2;right:0;top:0;width:74%;height:100%;object-fit:cover;object-position:65% center}
.songman-stage-banner::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#080907 8%,rgba(8,9,7,.95) 26%,rgba(8,9,7,.2) 50%,transparent 68%)}
.songman-stage-banner>div{width:55%;padding:clamp(30px,5vw,68px)}
.editorial-body .songman-stage-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(42px,5.5vw,76px);font-weight:400;line-height:1.04;letter-spacing:-.035em;color:#fff5df;margin:0;padding:0;border:0}
.songman-stage-banner h2 em{font-weight:400;color:#b8c79b}
.editorial-body .songman-stage-banner p{font-size:clamp(20px,2vw,28px);line-height:1.5;color:#eee5d4;margin:28px 0 0}
.songman-stage-banner div>span{display:block;font-size:clamp(16px,1.5vw,21px);line-height:1.6;color:#d2d3c9;margin-top:14px}
.songman-stage-body{padding:clamp(28px,4.5vw,58px)}
.editorial-body .songman-stage-body p{font-size:clamp(18px,1.6vw,22px);line-height:1.75;margin:0 0 26px;color:#423e37}
.songman-stage-body>a{display:inline-flex;align-items:center;gap:22px;background:#526b36;color:#fff;padding:14px 20px;border-radius:4px;text-decoration:none;font-size:16px;font-weight:600}
.songman-stage-body>a:hover{background:#40532a}.songman-stage-body>a:focus-visible{outline:3px solid #526b36;outline-offset:4px}
@media(max-width:650px){.songman-stage-banner{min-height:580px;align-items:flex-end}.songman-stage-banner>img{width:100%;height:400px;object-position:65% top}.songman-stage-banner::after{background:linear-gradient(180deg,transparent 28%,rgba(8,9,7,.3) 45%,#080907 68%)}.songman-stage-banner>div{width:100%;padding:30px 26px}.editorial-body .songman-stage-banner h2{font-size:48px}.songman-stage-body>a{font-size:15px;gap:12px}}

/* Opening programme: a full-width theatrical portrait, not a thumbnail and heading. */
.programmes-renewed #ballad-of-a-songman{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-ballad-banner{position:relative;isolation:isolate;display:flex;align-items:center;min-height:490px;max-width:none;margin:0;background:#252620;overflow:hidden}
.programmes-ballad-banner>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 35%}
.programmes-ballad-banner::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(24,27,23,.98) 0%,rgba(24,27,23,.9) 26%,rgba(24,27,23,.4) 46%,transparent 66%)}
.programmes-ballad-banner>div{width:53%;padding:clamp(32px,5vw,70px)}
.programme-feature .programmes-ballad-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(44px,5.8vw,80px);font-weight:400;line-height:1.02;letter-spacing:-.04em;color:#fff6e5;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-ballad-banner h2 em{font-weight:400;color:#c5d0ac}
.programme-feature .programmes-ballad-banner p{font-size:clamp(20px,2vw,28px);line-height:1.5;color:#eee7db;margin:30px 0 0}
.programmes-ballad-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programme-feature .programmes-ballad-banner{min-height:580px;align-items:flex-end}.programmes-ballad-banner>img{object-position:64% center}.programmes-ballad-banner::after{background:linear-gradient(180deg,transparent 23%,rgba(24,27,23,.35) 43%,rgba(24,27,23,.97) 73%)}.programmes-ballad-banner>div{width:100%;padding:30px 26px}.programme-feature .programmes-ballad-banner h2{font-size:48px}}

/* Arising from the Troubles: the complete mural portrait and a warm title panel. */
.programmes-renewed #arising-from-the-troubles{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-troubles-banner{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;max-width:none;margin:0;background:#58332e;overflow:hidden}
.programmes-troubles-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.programmes-troubles-banner>div{padding:clamp(28px,4vw,56px)}
.programme-feature .programmes-troubles-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(33px,4.2vw,59px);font-weight:400;line-height:1.09;letter-spacing:-.035em;color:#fff6e9;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-troubles-banner h2 em{font-weight:400;color:#e6c296}
.programme-feature .programmes-troubles-banner p{font-size:clamp(18px,1.8vw,25px);line-height:1.55;color:#eddfd2;margin:28px 0 0}
.programmes-troubles-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programme-feature .programmes-troubles-banner{grid-template-columns:1fr}.programmes-troubles-banner>div{padding:32px 26px}.programme-feature .programmes-troubles-banner h2{font-size:42px}}

/* Education: a complete community photograph with an inclusive title band. */
.programmes-renewed #educational-mission{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-learning-banner{max-width:none;margin:0;background:#293b4b;overflow:hidden}
.programmes-learning-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.programmes-learning-banner>div{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:28px;padding:clamp(28px,4vw,54px)}
.programme-feature .programmes-learning-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,4.8vw,66px);font-weight:400;line-height:1.06;letter-spacing:-.035em;color:#fff7eb;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-learning-banner h2 em{font-weight:400;color:#e2c598}
.programme-feature .programmes-learning-banner p{font-size:clamp(19px,2vw,27px);line-height:1.6;color:#e0e8ed;margin:0}
.programmes-learning-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programmes-learning-banner>div{grid-template-columns:1fr;gap:22px;padding:30px 26px}.programme-feature .programmes-learning-banner h2{font-size:42px}}

/* Harvard collaboration: a portrait and a restrained academic-event poster. */
.programmes-renewed #harvard-collaboration{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-harvard-banner{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;max-width:none;margin:0;background:#282b34;overflow:hidden}
.programmes-harvard-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.programmes-harvard-banner>div{padding:clamp(28px,4vw,56px)}
.programme-feature .programmes-harvard-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(32px,4vw,56px);font-weight:400;line-height:1.1;letter-spacing:-.035em;color:#fff7e9;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-harvard-banner h2 em{font-weight:400;color:#dfbe84}
.programme-feature .programmes-harvard-banner p{font-size:clamp(18px,1.8vw,25px);line-height:1.55;color:#e8e3d9;margin:26px 0 0}
.programmes-harvard-banner div>span{display:block;font-size:14px;line-height:1.5;color:#bfc4d0;margin-top:24px}
.programmes-harvard-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programme-feature .programmes-harvard-banner{grid-template-columns:1fr}.programmes-harvard-banner>div{padding:32px 26px}.programme-feature .programmes-harvard-banner h2{font-size:38px}}

.programmes-renewed #hume-tribute-2026{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-hume-banner{position:relative;isolation:isolate;display:flex;align-items:center;min-height:490px;max-width:none;margin:0;background:#282323;overflow:hidden}
.programmes-hume-banner>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 35%}
.programmes-hume-banner::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(35,29,30,.98),rgba(35,29,30,.9) 28%,rgba(35,29,30,.35) 48%,transparent 68%)}
.programmes-hume-banner>div{width:58%;padding:clamp(30px,4.5vw,64px)}
.programme-feature .programmes-hume-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(32px,4.3vw,60px);font-weight:400;line-height:1.1;letter-spacing:-.035em;color:#fff6e9;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-hume-banner h2 em{font-weight:400;color:#ddc1ae}
.programme-feature .programmes-hume-banner p{font-size:clamp(18px,1.8vw,25px);line-height:1.55;color:#eee2d8;margin:28px 0 0}
.programmes-hume-banner div>span{display:block;font-size:14px;line-height:1.5;color:#d3c6bd;margin-top:26px}
.programmes-hume-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programme-feature .programmes-hume-banner{min-height:620px;align-items:flex-end}.programmes-hume-banner>img{object-position:64% center}.programmes-hume-banner::after{background:linear-gradient(180deg,transparent 20%,rgba(35,29,30,.35) 42%,rgba(35,29,30,.98) 68%)}.programmes-hume-banner>div{width:100%;padding:30px 26px}.programme-feature .programmes-hume-banner h2{font-size:38px}}

.programmes-renewed #music-mends-minds-2025{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-minds-banner{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;max-width:none;margin:0;background:#282029;overflow:hidden}
.programmes-minds-banner>img{display:block;width:100%;height:540px;object-fit:cover;object-position:center 35%}
.programmes-minds-banner>div{padding:clamp(28px,4.5vw,64px)}
.programme-feature .programmes-minds-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,4.9vw,68px);font-weight:400;line-height:1.07;letter-spacing:-.035em;color:#fff6e9;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-minds-banner h2 em{font-weight:400;color:#e5bcb0}
.programme-feature .programmes-minds-banner p{font-size:clamp(18px,1.8vw,25px);line-height:1.5;color:#f0e1da;margin:28px 0 0}
.programmes-minds-banner div>span{display:block;font-size:clamp(16px,1.5vw,21px);line-height:1.65;color:#d9ced6;margin-top:16px}
.programmes-minds-banner small{display:block;font-size:13px;line-height:1.6;color:#c7b9c3;margin-top:28px;max-width:29ch}
.programmes-minds-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programme-feature .programmes-minds-banner{grid-template-columns:1fr}.programmes-minds-banner>img{grid-row:1;height:420px;object-position:center 24%}.programmes-minds-banner>div{padding:32px 26px}.programme-feature .programmes-minds-banner h2{font-size:44px}}

/* Wexford: a song-led festival composition, with the historical status visible. */
.programmes-renewed #douglass-wexford-2025{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-douglass-banner{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;max-width:none;margin:0;background:#302d24;overflow:hidden}
.programmes-douglass-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.programmes-douglass-banner>div{padding:clamp(28px,3.6vw,52px)}
.programme-feature .programmes-douglass-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(30px,3.4vw,48px);font-weight:400;line-height:1.13;letter-spacing:-.035em;color:#fff5df;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-douglass-banner h2 em{font-weight:400;color:#dfc18a}
.programme-feature .programmes-douglass-banner p{font-size:clamp(18px,1.8vw,25px);line-height:1.55;color:#e8dfce;margin:26px 0 0}
.programmes-douglass-banner div>span{display:block;font-size:14px;line-height:1.5;color:#c9bfac;margin-top:24px}
.programmes-douglass-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programme-feature .programmes-douglass-banner{grid-template-columns:1fr}.programmes-douglass-banner>div{padding:32px 26px}.programme-feature .programmes-douglass-banner h2{font-size:36px}}

.programmes-renewed #swannanoa-advisory-2024{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-swannanoa-banner{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;max-width:none;margin:0;background:#e5ddca;overflow:hidden}
.programmes-swannanoa-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.programmes-swannanoa-banner>div{padding:clamp(28px,4.5vw,62px)}
.programme-feature .programmes-swannanoa-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,4.2vw,59px);font-weight:400;line-height:1.1;letter-spacing:-.035em;color:#322e25;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-swannanoa-banner h2 em{font-weight:400;color:#77603b}
.programme-feature .programmes-swannanoa-banner p{font-size:clamp(19px,1.9vw,26px);line-height:1.55;color:#4e4739;margin:28px 0 0}
.programmes-swannanoa-banner div>span{display:block;font-size:14px;line-height:1.6;color:#6c6354;margin-top:26px;max-width:29ch}
.programmes-swannanoa-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programme-feature .programmes-swannanoa-banner{grid-template-columns:1fr}.programmes-swannanoa-banner>img{grid-row:1}.programmes-swannanoa-banner>div{padding:32px 26px}.programme-feature .programmes-swannanoa-banner h2{font-size:40px}}

@media(min-width:651px){.programmes-swannanoa-banner>img{height:100%;align-self:stretch;object-fit:cover;object-position:center}}

/* Féile Bríde: owner-selected performance photograph, preserved as a portrait. */
.programmes-renewed #afri-feile-bride-2023{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-afri-banner{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;max-width:none;margin:0;background:#293441;overflow:hidden}
.programmes-afri-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.programmes-afri-banner>div{padding:clamp(30px,5vw,68px)}
.programme-feature .programmes-afri-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(40px,5.2vw,72px);font-weight:400;line-height:1.06;letter-spacing:-.035em;color:#fff6e7;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-afri-banner h2 em{font-weight:400;color:#e0bd88}
.programme-feature .programmes-afri-banner p{font-size:clamp(20px,2vw,28px);line-height:1.55;color:#e5e8e9;margin:30px 0 0}
.programmes-afri-banner div>span{display:block;font-size:14px;line-height:1.6;color:#bfcad3;margin-top:28px}
.programmes-afri-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programme-feature .programmes-afri-banner{grid-template-columns:1fr}.programmes-afri-banner>div{padding:32px 26px}.programme-feature .programmes-afri-banner h2{font-size:44px}}

/* Artsahealing: owner-selected guitar portrait with a quiet, warm title. */
.programmes-renewed #artsahealing{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-healing-banner{display:grid;grid-template-columns:1.25fr .85fr;align-items:center;max-width:none;margin:0;background:#11110f;overflow:hidden}
.programmes-healing-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.programmes-healing-banner>div{padding:clamp(30px,4.5vw,64px)}
.programme-feature .programmes-healing-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,4.5vw,62px);font-weight:400;line-height:1.12;letter-spacing:-.035em;color:#fff6e7;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-healing-banner h2 em{font-weight:400;color:#dfb978}
.programme-feature .programmes-healing-banner p{font-size:clamp(20px,2vw,28px);line-height:1.55;color:#e6dfd1;margin:30px 0 0}
.programmes-healing-banner div>span{display:block;font-size:14px;line-height:1.65;color:#bcb6aa;margin-top:28px;max-width:30ch}
.programmes-healing-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programme-feature .programmes-healing-banner{grid-template-columns:1fr}.programmes-healing-banner>img{grid-row:1}.programmes-healing-banner>div{padding:32px 26px}.programme-feature .programmes-healing-banner h2{font-size:38px}}

/* Revised Artsahealing composition: one continuous photographic poster. */
.programme-feature .programmes-healing-banner{position:relative;isolation:isolate;display:flex;min-height:550px;background:#030303}
.programmes-healing-banner>img{position:absolute;right:0;top:0;z-index:-2;width:52%;height:100%;object-fit:cover;object-position:center 32%}
.programmes-healing-banner::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#030303 10%,#030303 39%,rgba(3,3,3,.75) 48%,transparent 66%)}
.programmes-healing-banner>div{width:62%;padding:clamp(32px,5vw,70px)}
.programme-feature .programmes-healing-banner h2{font-size:clamp(40px,5.4vw,76px);line-height:1.12;letter-spacing:-.04em}
.programme-feature .programmes-healing-banner p{font-size:clamp(19px,1.8vw,25px);margin-top:32px}
.programmes-healing-banner div>span{margin-top:32px;color:#c4bcac}
@media(max-width:650px){.programme-feature .programmes-healing-banner{min-height:690px;align-items:flex-end}.programmes-healing-banner>img{width:100%;height:520px;object-position:center 20%}.programmes-healing-banner::after{background:linear-gradient(180deg,transparent 25%,rgba(3,3,3,.4) 43%,#030303 65%)}.programmes-healing-banner>div{width:100%;padding:30px 26px}.programme-feature .programmes-healing-banner h2{font-size:39px}}
.programmes-healing-banner>img{mask-image:linear-gradient(90deg,transparent,black 28%);-webkit-mask-image:linear-gradient(90deg,transparent,black 28%)}
@media(max-width:650px){.programmes-healing-banner>img{mask-image:linear-gradient(180deg,black 55%,transparent);-webkit-mask-image:linear-gradient(180deg,black 55%,transparent)}}

.programme-feature .programmes-healing-banner h2{font-size:clamp(48px,6.5vw,88px);line-height:1.06}
@media(max-width:650px){.programme-feature .programmes-healing-banner h2{font-size:clamp(36px,8.9vw,54px)}}

/* Fiddler's Green: preserve the musical exchange across the whole photograph. */
.programmes-renewed #fiddlers-green-collaboration{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-fiddlers-banner{max-width:none;margin:0;background:#373345;overflow:hidden}
.programmes-fiddlers-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.programmes-fiddlers-banner>div{display:grid;grid-template-columns:1.25fr 1fr;gap:32px;align-items:center;padding:clamp(30px,4.5vw,60px)}
.programme-feature .programmes-fiddlers-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,4.7vw,66px);font-weight:400;line-height:1.08;letter-spacing:-.035em;color:#fff6e7;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-fiddlers-banner h2 em{font-weight:400;color:#e1c59c}
.programme-feature .programmes-fiddlers-banner p{font-size:clamp(18px,1.8vw,25px);line-height:1.55;color:#ece5eb;margin:0}
.programmes-fiddlers-banner section>span{display:block;font-size:14px;line-height:1.65;color:#cec4d2;margin-top:20px}
.programmes-fiddlers-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programmes-fiddlers-banner>div{grid-template-columns:1fr;gap:24px;padding:30px 26px}.programme-feature .programmes-fiddlers-banner h2{font-size:38px}}

/* Community films: landscape portrait and a title drawn from the work. */
.programmes-renewed #community-films{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-films-banner{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;max-width:none;margin:0;background:#e4dbca;overflow:hidden}
.programmes-films-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.programmes-films-banner>div{padding:clamp(28px,4vw,56px)}
.programme-feature .programmes-films-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,4.2vw,60px);font-weight:400;line-height:1.08;letter-spacing:-.035em;color:#332e28;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-films-banner h2 em{font-weight:400;color:#795c39}
.programme-feature .programmes-films-banner p{font-size:clamp(18px,1.8vw,25px);line-height:1.55;color:#51483d;margin:28px 0 0}
.programmes-films-banner div>span{display:block;font-size:14px;line-height:1.6;color:#6e6254;margin-top:26px}
.programmes-films-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programme-feature .programmes-films-banner{grid-template-columns:1fr}.programmes-films-banner>div{padding:32px 26px}.programme-feature .programmes-films-banner h2{font-size:40px}}

.programmes-renewed #kinship-of-difference{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-kinship-banner{max-width:none;margin:0;background:#503539;overflow:hidden}
.programmes-kinship-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.programmes-kinship-banner>div{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center;padding:clamp(30px,4.5vw,60px)}
.programme-feature .programmes-kinship-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(40px,5vw,70px);font-weight:400;line-height:1.06;letter-spacing:-.035em;color:#fff5e9;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-kinship-banner h2 em{font-weight:400;color:#e4c4a3}
.programme-feature .programmes-kinship-banner p{font-size:clamp(19px,1.9vw,26px);line-height:1.55;color:#f0e1dd;margin:0}
.programmes-kinship-banner section>span{display:block;font-size:14px;line-height:1.65;color:#d7c3c4;margin-top:22px}
.programmes-kinship-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programmes-kinship-banner>div{grid-template-columns:1fr;gap:24px;padding:30px 26px}.programme-feature .programmes-kinship-banner h2{font-size:44px}}

/* International work: an open, sunlit portrait with a travel-poster composition. */
.programmes-renewed #international-peace-work{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-borders-banner{display:grid;grid-template-columns:1fr 1fr;align-items:center;max-width:none;margin:0;background:#e9dfcc;overflow:hidden}
.programmes-borders-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.programmes-borders-banner>div{padding:clamp(28px,4.5vw,66px)}
.programme-feature .programmes-borders-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(44px,6vw,84px);font-weight:400;line-height:1.04;letter-spacing:-.045em;color:#302b25;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-borders-banner h2 em{font-weight:400;color:#876039}
.programme-feature .programmes-borders-banner p{font-size:clamp(20px,2vw,28px);line-height:1.5;color:#574a3a;margin:32px 0 0}
.programmes-borders-banner div>span{display:block;font-size:13px;line-height:1.65;color:#6c604e;margin-top:32px;max-width:31ch}
.programmes-borders-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programme-feature .programmes-borders-banner{grid-template-columns:1fr}.programmes-borders-banner>img{grid-row:1}.programmes-borders-banner>div{padding:32px 26px}.programme-feature .programmes-borders-banner h2{font-size:clamp(44px,10vw,64px)}}

/* Reno: a contemplative portrait above an integrated ink-blue title panel. */
.programmes-renewed #reno-songwriting{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-reno-banner{max-width:none;margin:0;background:#283746;overflow:hidden}
.programmes-reno-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.programmes-reno-banner>div{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:36px;padding:clamp(30px,4.5vw,60px)}
.programme-feature .programmes-reno-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(40px,5.4vw,76px);font-weight:400;line-height:1.05;letter-spacing:-.035em;color:#fff5e6;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-reno-banner h2 em{font-weight:400;color:#d9b47b}
.programme-feature .programmes-reno-banner p{font-size:clamp(20px,2vw,28px);line-height:1.5;color:#f0e9df;margin:0}
.programmes-reno-banner section>span{display:block;font-size:13px;line-height:1.65;color:#c3cbd0;margin-top:24px;max-width:32ch}
.programmes-reno-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programmes-reno-banner>div{grid-template-columns:1fr;gap:24px;padding:30px 26px}.programme-feature .programmes-reno-banner h2{font-size:clamp(40px,10vw,60px)}}

/* Sarajevo to Belfast: performance photograph and a copper concert-poster panel. */
.programmes-renewed #sarajevo-belfast{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-sarajevo-banner{display:grid;grid-template-columns:1.15fr 1fr;align-items:stretch;max-width:none;margin:0;background:#603d2f;overflow:hidden}
.programmes-sarajevo-banner>img{display:block;width:100%;height:100%;object-fit:cover;object-position:42% center}
.programmes-sarajevo-banner>div{padding:clamp(32px,4.3vw,62px);align-self:center}
.programme-feature .programmes-sarajevo-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(42px,5.5vw,78px);font-weight:400;line-height:1.05;letter-spacing:-.035em;color:#fff5e6;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-sarajevo-banner h2 em{font-weight:400;color:#e2bd8e}
.programme-feature .programmes-sarajevo-banner p{font-size:clamp(19px,1.9vw,26px);line-height:1.5;color:#f0e2d5;margin:30px 0 0}
.programmes-sarajevo-banner div>span{display:block;font-size:13px;line-height:1.65;color:#d8c3b3;margin-top:28px;max-width:30ch}
.programmes-sarajevo-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programme-feature .programmes-sarajevo-banner{grid-template-columns:1fr}.programmes-sarajevo-banner>img{height:auto;object-fit:contain}.programmes-sarajevo-banner>div{padding:32px 26px}.programme-feature .programmes-sarajevo-banner h2{font-size:clamp(44px,10vw,64px)}}

/* Rediscover: a family concert poster, keeping the small group portrait intact. */
.programmes-renewed #rediscover-northern-ireland{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-rediscover-banner{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:clamp(24px,4vw,56px);max-width:none;margin:0;padding:clamp(32px,5vw,70px);background:#252e36;overflow:hidden}
.programme-feature .programmes-rediscover-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(40px,5.2vw,72px);font-weight:400;line-height:1.06;letter-spacing:-.035em;color:#fff6e8;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-rediscover-banner h2 em{font-weight:400;color:#dfbf82}
.programme-feature .programmes-rediscover-banner p{font-size:clamp(19px,1.9vw,26px);line-height:1.5;color:#ece5d9;margin:30px 0 0}
.programmes-rediscover-banner div>span{display:block;font-size:13px;line-height:1.65;color:#c5cbd0;margin-top:28px;max-width:32ch}
.programmes-rediscover-banner>figure{margin:0;max-width:420px}
.programmes-rediscover-banner img{display:block;width:100%;height:auto;object-fit:contain}
.programmes-rediscover-banner figcaption{font-size:14px;line-height:1.5;color:#dfbf82;margin:16px 0 0;text-align:center}
.programmes-rediscover-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programme-feature .programmes-rediscover-banner{grid-template-columns:1fr;padding:32px 26px;gap:30px}.programmes-rediscover-banner>figure{width:100%;justify-self:center}.programme-feature .programmes-rediscover-banner h2{font-size:clamp(40px,10vw,60px)}}

/* Ballymun: a new outdoor portrait with a spacious, slate-blue title band. */
.programmes-renewed #ballymun-young-people{padding:0;overflow:hidden;background:#f5f2ec}
.programme-feature .programmes-ballymun-banner{max-width:none;margin:0;background:#354955;overflow:hidden}
.programmes-ballymun-banner>img{display:block;width:100%;height:auto;object-fit:contain}
.programmes-ballymun-banner>div{display:grid;grid-template-columns:1.2fr 1fr;gap:36px;align-items:center;padding:clamp(30px,4.5vw,60px)}
.programme-feature .programmes-ballymun-banner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(42px,5.5vw,76px);font-weight:400;line-height:1.05;letter-spacing:-.035em;color:#fff8e9;margin:0;padding:0;border:0;text-wrap:initial}
.programmes-ballymun-banner h2 em{font-weight:400;color:#d9c9a5}
.programme-feature .programmes-ballymun-banner p{font-size:clamp(19px,1.9vw,26px);line-height:1.5;color:#f1ebe1;margin:0}
.programmes-ballymun-banner section>span{display:block;font-size:13px;line-height:1.65;color:#c9d3d8;margin-top:24px;max-width:32ch}
.programmes-ballymun-body{padding:clamp(28px,4.5vw,58px)}
@media(max-width:650px){.programmes-ballymun-banner>div{grid-template-columns:1fr;gap:24px;padding:30px 26px}.programme-feature .programmes-ballymun-banner h2{font-size:clamp(42px,10vw,60px)}}

/* Editorial sections use space and typography instead of decorative dividers. */
main .reading-chapter,main .editorial-body,main .editorial-related,main .editorial-body .reading-column h2,main .programme-feature,main .programme-more,main .programmes-jump,main .tour-story,main .tour-background,main .concert-detail,main .concert-notes{border-top:0;border-bottom:0}
.site-footer .footer-bottom{border-top:0}

/* Download help: calm, readable instructions rather than an unstyled document. */
.download-guide{padding:0 0 30px}.download-guide-hero{background:#eee8dc;margin:0 calc(-1 * var(--page-gutter)) 48px;padding:clamp(36px,6vw,80px) var(--page-gutter);border-radius:0 0 80px 0}
.download-guide-hero>a{font-size:14px;text-decoration:none}.download-guide .download-guide-hero h1{font:400 clamp(48px,7vw,92px)/1.03 Georgia,serif;letter-spacing:-.045em;margin:32px 0 24px}.download-guide-hero h1 em{color:#934334}.download-guide-hero>p{font-size:clamp(20px,2.3vw,29px);line-height:1.5;margin:0 0 30px}.download-guide-hero nav{display:flex;flex-wrap:wrap;gap:16px 30px}.download-guide-hero nav a{font-size:15px;text-decoration:none}
.download-guide-content{max-width:1040px;margin:auto}.download-guide-content>.intro{font-size:21px;line-height:1.7;max-width:none;margin-bottom:52px}.download-guide h2{font-size:clamp(28px,3.3vw,42px);line-height:1.2;letter-spacing:-.025em;font-weight:500;margin:0 0 26px}
.download-steps{scroll-margin-top:30px;margin-bottom:64px}.download-steps ol{list-style:none;counter-reset:steps;padding:0;margin:0 0 28px;display:grid;grid-template-columns:1fr 1fr;gap:28px 42px}.download-steps li{counter-increment:steps;position:relative;padding-left:54px;font-size:17px;line-height:1.75}.download-steps li::before{content:counter(steps);position:absolute;left:0;top:2px;width:34px;height:34px;border-radius:50%;background:#923b30;color:white;text-align:center;line-height:34px;font-size:15px}.download-steps>p{font-size:16px;line-height:1.7;color:#625b50;background:#eee8dc;padding:22px 26px;border-radius:16px}
.listening-options{scroll-margin-top:30px}.listening-options .listening-lead{font-size:19px;line-height:1.6;color:#625b50;margin-bottom:40px}.download-guide .listening-option{padding:30px 0;margin:0 0 18px;max-width:none;border:0}.download-guide .listening-option h3{font:400 clamp(24px,2.8vw,34px)/1.2 Georgia,serif;color:#873e31;letter-spacing:-.02em;margin:0 0 22px}.download-guide .listening-option p{font-size:18px;line-height:1.8;max-width:none;margin:0 0 19px}.download-guide .listening-option a{font-size:15px;text-underline-offset:4px}.download-guide-footer{background:#eee8dc;padding:32px 38px;border-radius:0 35px 0 35px;margin-top:35px}.download-guide-footer h2{font-size:30px;margin-bottom:12px}.download-guide-footer p{font-size:18px;line-height:1.6}.download-guide-footer a{display:inline-block;background:#923b30;color:white;padding:12px 22px;border-radius:28px;text-decoration:none;font-size:15px}
@media(max-width:650px){.download-guide-hero{border-radius:0 0 40px 0}.download-steps ol{grid-template-columns:1fr;gap:24px}.download-guide-content>.intro{font-size:18px}.download-guide .listening-option p{font-size:17px}.download-guide-footer{padding:28px 24px}}

/* Complete, grouped site directory. */
.site-footer .footer-content{grid-template-columns:minmax(180px,.7fr) minmax(0,1.8fr);gap:clamp(28px,5vw,75px)}
.site-footer .footer-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.footer-link-group h2{font-family:var(--font);font-size:14px;letter-spacing:.02em;font-weight:650;color:#fff;margin:0 0 18px;line-height:1.4}
.footer-link-group a+a{margin-top:9px}
@media(max-width:900px){.site-footer .footer-content{grid-template-columns:1fr}.site-footer .footer-nav{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.site-footer .footer-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px}.footer-link-group h2{margin-bottom:12px}}

/* Readable legal pages, matching the neutral editorial palette. */
.legal-page{max-width:1100px;margin:auto;padding:clamp(32px,5vw,70px) var(--page-gutter)}
.legal-opening{margin-bottom:48px;max-width:850px}.legal-opening p{font-size:clamp(23px,3vw,34px);line-height:1.4;margin:0 0 18px}.legal-opening span{font-size:14px;color:#666}
.legal-reading{max-width:850px}.legal-reading section{margin:0 0 34px}.legal-reading h2{font-size:clamp(22px,2.4vw,29px);line-height:1.25;margin:0 0 13px}.legal-reading p{font-size:17px;line-height:1.8;margin:0;overflow-wrap:anywhere}.legal-contact{background:#f3f0e9;padding:28px;border-radius:22px;margin-top:45px}.legal-contact p+p{margin-top:14px}.footer-legal{display:flex;gap:22px;flex-wrap:wrap}.site-footer .footer-bottom{flex-wrap:wrap;font-size:12px}

/* Homepage compositions stay balanced on wide and high-density displays. */
@media(min-width:700px){.recordings-feature .recordings-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1100px){.recordings-feature .recordings-strip{grid-template-columns:repeat(6,minmax(0,1fr));gap:28px 22px}.recordings-feature .release-card h3{font-size:clamp(16px,1.15vw,19px)}}
@media(min-width:800px){
main>.tour-feature{grid-template-columns:minmax(220px,340px) minmax(0,1fr);grid-template-rows:auto 1fr;gap:24px clamp(36px,5vw,72px);padding:42px clamp(32px,4vw,60px);max-width:1240px!important;border-radius:0 80px 0 60px}
.tour-feature>.tour-feature-poster{grid-column:1;grid-row:1/3;max-width:320px;justify-self:center;transform:rotate(-1deg)}
.tour-feature>h2{grid-column:2;grid-row:1;font-size:clamp(36px,3.4vw,54px);max-width:650px;align-self:end;text-wrap:balance}
.tour-feature>.tour-feature-copy{grid-column:2;grid-row:2;align-self:start}
.tour-feature-copy p.tour-ad-invitation{font-size:clamp(24px,2.1vw,32px);line-height:1.2;margin-bottom:18px}
.tour-feature-copy p.tour-ad-invitation br{display:none}
.tour-feature-copy p.tour-ad-description{font-size:18px;line-height:1.6;max-width:40ch;margin-bottom:22px}
.opening-portrait img{object-position:50% 45%;animation:none;transform:none}
}
@media(min-width:800px){.tour-own-words{max-width:72ch;margin-inline:auto}.tour-own-words h2{font-size:30px;margin-bottom:22px}.tour-own-words blockquote{font-size:18px;line-height:1.7}.tour-story{padding-block:36px!important;margin-top:32px!important}}
@media(min-width:1100px){.opening-type h1{font-size:clamp(82px,6.4vw,104px);line-height:.98;letter-spacing:-.045em;max-width:390px}}

/* Wide-screen sections: keep photographs and headings in one proportionate banner. */
@media(min-width:1000px){
 .programmes-renewed{max-width:1280px}
 .programme-feature :is(.programmes-learning-banner,.programmes-fiddlers-banner,.programmes-kinship-banner,.programmes-reno-banner,.programmes-ballymun-banner),
 .life-sections :is(.biography-community-banner,.activist-rights-banner,.producer-rostrevor-banner,.producer-artsawonder-banner){display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center}
 .programme-feature :is(.programmes-learning-banner,.programmes-fiddlers-banner,.programmes-kinship-banner,.programmes-reno-banner,.programmes-ballymun-banner)>img,
 .life-sections :is(.biography-community-banner,.activist-rights-banner,.producer-rostrevor-banner,.producer-artsawonder-banner)>img{width:100%;height:auto;max-height:540px;object-fit:contain}
 .programme-feature :is(.programmes-learning-banner,.programmes-fiddlers-banner,.programmes-kinship-banner,.programmes-reno-banner,.programmes-ballymun-banner)>div,
 .life-sections :is(.biography-community-banner,.activist-rights-banner,.producer-rostrevor-banner,.producer-artsawonder-banner)>div{display:block;padding:clamp(28px,3vw,48px)}
 .programme-feature :is(.programmes-learning-banner,.programmes-fiddlers-banner,.programmes-kinship-banner,.programmes-reno-banner,.programmes-ballymun-banner) h2{font-size:clamp(38px,3.5vw,60px)}
 .programme-feature :is(.programmes-learning-banner,.programmes-fiddlers-banner,.programmes-kinship-banner,.programmes-reno-banner,.programmes-ballymun-banner) p{margin-top:24px;font-size:22px}
 .programme-feature :is(.programmes-troubles-banner,.programmes-harvard-banner,.programmes-douglass-banner,.programmes-afri-banner,.programmes-films-banner,.programmes-borders-banner)>img{max-height:540px;object-fit:contain}
 .programmes-renewed .programme-narrative,.programmes-renewed .programme-themes,.programmes-renewed .programme-themes p,.programmes-renewed .programme-testimony blockquote{max-width:none;width:100%}
 .editorial-body .life-narrative p,.editorial-body .life-narrative>div{max-width:none}
 .tour-story{max-width:1600px;width:100%}
 .tour-story .tour-own-words,.tour-story .tour-background,.tour-story blockquote p{max-width:none;width:100%}
 .tour-story .tour-background{border-top:0;margin-top:36px;padding-top:0}
 .editorial-page .editorial-hero{width:100%;max-width:none}
 .editorial-page .editorial-hero .editorial-lead{max-width:none;width:100%}
}

@media(min-width:1000px){
 main:has(.programmes-renewed,.editorial-page,.media-page,.album-detail){max-width:1440px}
 .editorial-page .editorial-body,.editorial-page .editorial-body:has(>.editorial-related),.editorial-page .life-sections{width:100%;max-width:none}
 .life-sections [class$="-banner"]>img:not([class]){max-height:540px}
 .life-sections :is(.biography-opening-banner,.biography-family-banner,.activist-opening-banner,.producer-opening-banner,.producer-newry-banner,.producer-sport-banner)>img{height:auto;object-fit:contain}
 .editorial-page .editorial-hero{margin-inline:auto;text-align:left;padding-block:30px}
 .editorial-page .editorial-hero .editorial-lead{margin-inline:0;font-size:23px;line-height:1.6}
 .programme-opening{max-width:none;width:100%;margin-inline:0}
 .programme-opening>div{max-width:none}
}

@media(min-width:1440px){.inner-page main{max-width:1440px}.tour-story{max-width:1240px}.programme-opening{margin-inline:auto}.editorial-page .editorial-hero{padding-block:28px}}

/* Long reading sections gain balanced columns only when both have room. */
@media(min-width:1200px){
 .programme-narrative:has(>p+p),.life-narrative:has(>p+p),.tour-story blockquote:has(>p+p){columns:2;column-gap:48px}
 .programme-narrative>p,.life-narrative>p,.tour-story blockquote>p{break-inside:avoid}
 .life-narrative>h2,.life-narrative>h3{break-after:avoid}
 .programme-themes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
 .programme-themes section{margin-bottom:0}
}

@media(min-width:1000px){.biography-community-copy p,.activist-rights-copy p,.producer-rostrevor-copy p,.producer-artsawonder-copy p{margin-top:24px!important}}

/* Reading wrappers must follow the same section edges as their banners. */
@media(min-width:1000px){
 .editorial-page .editorial-title,.editorial-page .editorial-related,.editorial-page .editorial-related p,.programme-invitation p,.programme-reading,.tour-background{max-width:none;width:100%}
 .editorial-page .editorial-hero .editorial-title{padding:0}
 .editorial-page .editorial-hero .text-link{margin-top:18px}
 .reading-chapter>div{max-width:none}
 .programme-feature .life-narrative{width:100%;max-width:none}
}

/* Compact related-page invitations on wide screens. */
.editorial-page .editorial-related{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 40px;align-items:center;padding:32px 0;margin:32px 0 0;color:var(--ink)}
.editorial-page .editorial-related h2{margin:0;font-size:clamp(25px,2.3vw,34px)}
.editorial-page .editorial-related p{margin:0;grid-column:1;font-size:18px;line-height:1.6}
.editorial-page .editorial-related>.text-link{grid-column:2;grid-row:1 / 3;justify-self:end}
@media(max-width:700px){.editorial-page .editorial-related{display:block;padding:24px 0}.editorial-page .editorial-related p{margin:14px 0 20px}}
