@import url('assets/fonts.css?v=1.0.5-dev');
/* The PSD frame has unequal edge depths: top 16, right 17, bottom 27, left 26.
   Paint it over a 2px content bleed so its transparent inner grain cannot create gaps. */
:root{--ink:#282d29;--muted:#575e57;--teal:#086e68;--paper:#e9e1cf;--line:#9d9f90;--serif:'Cormorant Garamond',Georgia,serif;--sans:Manrope,Arial,sans-serif;--frame-width:1080px;--frame-height:680px;--slide-fit:cover}

*{box-sizing:border-box}
html{color-scheme:light}
body{margin:0;background:#c9bfa7 url('assets/paper.webp') repeat;color:var(--ink);font:16px/1.7 var(--sans)}
button,input,textarea,select{font:inherit;color:inherit}
button,a,input,textarea{touch-action:manipulation}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,h4,p,figure{margin:0}
[hidden]{display:none!important}
button{background:none}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
::selection{background:var(--teal);color:white}
.skip{position:fixed;top:-100px;left:20px;background:var(--ink);color:white;padding:12px;z-index:100}
.skip:focus{top:12px}
.icon{width:20px;height:20px;flex:none;vertical-align:middle}
.page{min-height:100svh;display:grid;place-items:center;padding:24px;overflow:clip}
.composition{width:min(calc(var(--frame-width) + 264px),100%);min-width:0;display:grid;grid-template-columns:112px minmax(0,1fr) 112px;grid-template-rows:auto auto auto;gap:0 20px;position:relative}
.composition:before{content:'';position:absolute;left:112px;top:-32px;bottom:-45px;width:10px;border-left:3px double #353b33;border-right:1px solid #353b33;opacity:.65;pointer-events:none;z-index:-1}
.masthead{grid-column:2;display:flex;align-items:center;justify-content:flex-end;gap:20px;padding:0 10px 14px;min-width:0}
.masthead-note{font-size:12px;letter-spacing:.11em;text-transform:uppercase}
.brand{flex:none}
.brand img{width:103px;height:auto;filter:none;opacity:1;mix-blend-mode:normal}
.side-nav{grid-column:1;grid-row:2;align-self:center;display:flex;flex-direction:column;gap:8px}
.side-nav a{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-height:44px;font-size:14px}
.side-nav a:after{content:'';width:19px;height:19px;background:url('assets/nav-ornament.png') center/contain no-repeat;flex:none;opacity:.7}
.side-nav a:hover,.side-nav a[aria-current=page]{color:#004d49}
.side-nav a[aria-current=page]{font-weight:700}
.side-nav a[aria-current=page]:after{opacity:1;transform:rotate(90deg)}

.stage{grid-column:2;grid-row:2;min-width:0;width:100%;height:min(var(--frame-height),calc(100svh - 160px));min-height:0;--frame-edge:10px;border:var(--frame-edge) solid transparent;border-image:url("assets/frame.png") 16 17 27 26 stretch;padding:0;overflow:hidden;background:var(--paper);background-clip:padding-box;position:relative;isolation:isolate;box-shadow:7px 11px 25px #2a281d17}
.stage:before{content:'';position:absolute;inset:0;background:url('assets/paper.webp') center/907px 531px;opacity:.14;z-index:-1;pointer-events:none}
.panel{height:100%;min-width:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--teal) transparent}
.panel:focus{outline:0}
.panel:focus-visible{outline:3px solid var(--teal);outline-offset:-4px}
.content{padding:28px 32px 34px}
.panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;padding-bottom:18px;margin-bottom:25px;border-bottom:1px solid var(--line)}
.panel h2{font:600 44px/1.12 var(--serif);letter-spacing:-.02em}
.intro{max-width:410px;font-size:16px;color:var(--muted)}
.eyebrow{font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--teal)}
.text-link{display:inline-flex;align-items:center;gap:16px;color:var(--teal);border:0;border-bottom:1px solid var(--teal);padding:6px 0;font-size:14px;font-weight:600}
.text-link:hover{color:#034b46}
.button{min-height:44px;padding:10px 18px;border:1px solid var(--teal);background:var(--teal);color:white;display:inline-flex;align-items:center;justify-content:center;gap:14px;font-size:14px}
.button:hover{background:#034e49}
.small-caption{font-size:13px;color:var(--muted);line-height:1.65}
.frame-footer{grid-column:2;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px 20px;flex-wrap:wrap;padding:15px 7px 0;font-size:12px}
.footer-links{display:flex;gap:22px;flex-wrap:wrap}
.footer-links a,.contact-socials a{display:inline-flex;align-items:center;gap:7px;min-height:36px;font-size:14px}
.footer-links a:hover,.contact-socials a:hover{color:var(--teal)}
/* Instagram/YouTube share Email's normal/visited and hover colours; keep its focus outline. */
.footer-links a[data-footer-social]:is(:link,:visited){color:var(--ink);border-bottom:0;text-decoration:none}
.footer-links a[data-footer-social]:hover{color:var(--teal)}
.footer-legal{display:flex;flex-direction:column;align-items:stretch;gap:4px;max-width:100%;padding:8px 0 0 12px;text-align:left;color:var(--ink)}
@media(min-width:1025px){.footer-legal{padding-left:32px}}
.footer-legal>a,.footer-legal>[data-privacy-settings]{display:block;text-align:left;min-height:24px;line-height:20.4px;padding:0;margin:0;overflow-wrap:anywhere;color:inherit;border:0;text-decoration:none}
.footer-legal>a:is(:link,:visited,:hover,:focus),.footer-legal>[data-privacy-settings]:is(:hover,:focus){color:inherit}
.manage-link{font-size:12px;display:inline-flex;gap:6px;align-items:center;width:100%;justify-content:flex-end}
.manage-link .icon{width:14px;height:14px}
.ornament{position:absolute;left:82px;bottom:-45px;width:85px;z-index:-1;pointer-events:none}

.home-panel{display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden}
.home-slider{min-width:0;min-height:0;position:relative;overflow:hidden;background:#c7c2b6}
.slides,.slide,.slide picture{height:100%;width:100%;position:relative}
.slide img{width:100%;height:100%;object-fit:var(--slide-fit);display:block;object-position:var(--photo-focus,50%) var(--photo-focus-y,50%)}
.image-note{position:absolute;top:20px;left:20px;max-width:calc(100% - 40px);background:#eee8d9ed;border-left:2px solid var(--teal);padding:5px 11px;font-size:12px;letter-spacing:.07em}
.slider-toolbar{position:absolute;bottom:16px;right:18px;left:18px;display:flex;align-items:center;justify-content:flex-end;gap:5px;padding:3px 6px;background:#eee8d9ed;width:max-content;max-width:calc(100% - 36px);margin-left:auto}
.icon-button{width:38px;height:38px;display:inline-grid;place-items:center;border:0;color:var(--ink);flex:none}
.icon-button:hover{background:#d0c9b6}
.slide-dots{display:flex;max-width:200px;overflow:auto;scrollbar-width:thin}
.slide-dots button{width:24px;height:36px;border:0;display:grid;place-items:center;padding:4px;flex:none}
.slide-dots span{width:6px;height:6px;border:1px solid var(--teal);border-radius:50%}
.slide-dots [aria-current=true] span{background:var(--teal)}
.slide-count{font-size:12px;white-space:nowrap;margin:0 6px}
.home-copy{display:grid;grid-template-columns:1.03fr 1fr;align-items:center;gap:35px;padding:24px 30px 28px}
.home-copy h1{font:600 clamp(38px,3.5vw,54px)/1.02 var(--serif);letter-spacing:-.035em}
.home-copy h1 em{font-style:normal;color:var(--teal)}
.home-copy p{font-size:16px;color:var(--muted);line-height:1.75}
.home-copy .text-link{margin-top:11px}

.albums{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.album-link{display:block}
.album img{width:100%;aspect-ratio:1;object-fit:cover}
.album :is(h2,h3){font:600 28px/1.25 var(--serif);margin-top:10px}
.album-meta{font-size:13px;color:var(--muted);display:flex;justify-content:space-between;gap:10px}
.streaming{display:flex;align-items:center;flex-wrap:wrap;gap:18px;border-top:1px solid var(--line);margin-top:28px;padding-top:18px;font-size:14px}
.streaming>span{margin-right:auto;color:var(--muted)}
.streaming>a{display:inline-flex;gap:8px;align-items:center;color:var(--teal);font-weight:600;padding:6px 0;border-bottom:1px solid currentColor}
.streaming>a:hover{color:#034b46}
.album-detail-grid{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1.2fr);gap:35px}
.album-detail-grid>*{min-width:0}
.album-detail-grid img{aspect-ratio:1;object-fit:cover;width:100%}
.back-link{margin-bottom:24px}
.track-list{list-style:none;padding:0;margin:20px 0;counter-reset:track}
.track-list li{border-top:1px solid var(--line);padding:12px 0;font-size:15px}
.track-list li>span:before{counter-increment:track;content:counter(track,decimal-leading-zero) ' / ';font-size:12px;color:var(--teal);margin-right:9px}
.track-list details{font-size:13px;color:var(--muted);margin:6px 0 0 30px}
.track-list details p{margin-top:8px}
.track-audio{margin-top:12px}
summary{cursor:pointer;width:max-content}
audio{display:block;width:100%;height:38px}
.audio-error{font-size:13px;color:#792d23;margin-top:8px}

.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px}
.video-grid:has(.video-card:only-child){grid-template-columns:1fr}
.video-choice{border:0;padding:0;text-align:left;display:block;width:100%}
.video-poster{display:block;position:relative;background:#28322d;aspect-ratio:16/9;overflow:hidden}
.video-poster img{width:100%;height:100%;object-fit:cover}
.play-circle{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--paper);color:var(--teal);box-shadow:0 3px 15px #0003}
.video-name{display:block;font:600 28px/1.2 var(--serif);margin:13px 0 9px}
.video-card>p{font-size:14px;color:var(--muted)}
.video-card .text-link{margin-top:7px}
.video-player{aspect-ratio:16/9;width:100%;background:#19231e;position:relative}
.video-player iframe,.video-player video{position:absolute;width:100%;height:100%;inset:0;border:0;object-fit:contain}
.video-feature-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:14px}
.video-feature-caption h3{font:600 30px/1.2 var(--serif)}
#video-feature{margin-bottom:30px;padding-bottom:25px;border-bottom:1px solid var(--line)}
.video-privacy{margin-top:20px}
.local-video-link{margin-left:20px}

.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:start}
.about-grid img{width:100%;aspect-ratio:1;object-fit:cover}
.about-grid figcaption{margin-top:9px}
.prose{font-size:16px;color:var(--muted);overflow-wrap:anywhere}
.prose p+p{margin-top:17px}
.members-section{margin-top:35px;padding-top:25px;border-top:1px solid var(--line)}
.members-heading{font:600 35px/1.2 var(--serif);margin-bottom:25px}
.member-list{display:grid;gap:30px}
.member{display:grid;grid-template-columns:180px minmax(0,1fr);gap:26px;align-items:start}
.member:not(:has(.member-photo)){grid-template-columns:1fr}
.member-photo{width:100%;aspect-ratio:4/5;object-fit:cover}
.member :is(h3,h4){font:600 31px/1.2 var(--serif);margin-bottom:5px}
.member-role{font-size:14px;color:var(--teal);margin-bottom:12px}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 20px}
.gallery-item{min-width:0;font-size:14px}
.gallery-item img{width:100%;aspect-ratio:1.4;object-fit:cover}
.gallery-item>span{display:flex;justify-content:space-between;gap:10px;padding-top:8px}
.photo-view{padding:20px 25px;display:flex;flex-direction:column}
.photo-bar,.photo-controls{display:flex;align-items:center;justify-content:space-between;gap:20px}
.photo-view figure{min-height:0;flex:1;display:flex;flex-direction:column;padding:16px 0 10px}
.photo-view figure>img{flex:1;min-height:0;width:100%;height:100%;object-fit:contain}
.photo-view figcaption{text-align:center;font:500 26px/1.4 var(--serif);padding-top:8px}
.photo-controls .text-link{min-height:44px}

.live-empty{text-align:center;max-width:460px;margin:35px auto}
.live-emblem{display:block;width:142px;max-width:100%;height:auto;object-fit:contain;margin:12px auto 20px;filter:none;opacity:1}
.live-empty :is(h2,h3){font:600 34px/1.2 var(--serif);margin-bottom:15px}
.live-empty p{color:var(--muted)}
.live-empty .text-link{margin-top:18px}
.quiet-link{display:block;margin-top:15px;font-size:14px;text-decoration:underline;text-underline-offset:4px}
.event-card{padding:20px 0;border-bottom:1px solid var(--line)}
.event-card h3{font:600 31px/1.3 var(--serif)}
.event-card time{font-size:14px;color:var(--teal)}
.contact-grid{display:grid;grid-template-columns:.78fr 1.2fr;gap:35px}
.contact-intro>p{color:var(--muted)}
.email-link{display:inline-flex;align-items:center;gap:8px;font-size:16px;color:var(--teal);margin:20px 0;overflow-wrap:anywhere}
.contact-socials{display:flex;flex-wrap:wrap;gap:10px 20px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}
label{display:block;font-size:14px;margin-bottom:6px}
input,textarea,select{display:block;width:100%;min-width:0;border:1px solid #797e70;background:#f4efe18f;border-radius:0;padding:9px 10px;font-size:16px}
input,select{min-height:44px}
textarea{min-height:112px;resize:vertical}
form>label{margin-top:15px}
.form-hint{font-size:13px;line-height:1.6;color:var(--muted);margin:10px 0}
.form-status{font-size:14px;color:var(--teal);margin-top:12px}
.draft{border-top:1px solid var(--line);padding-top:15px;margin-top:18px}
.draft p{font-size:14px}
.draft .button{margin:15px 12px 7px 0}
.draft-text{min-height:180px;font-size:14px}
.site-notice,.noscript-note{padding:10px 20px;margin:0;background:#eee6d2;text-align:center;font-size:14px}
.image-unavailable{background:#c9c3b4}
.not-found{max-width:600px;padding:45px;background:var(--paper)}
.not-found h1{font:600 54px/1.2 var(--serif)}

@media(max-width:1100px){.page{padding:24px 20px 30px}
.composition{display:flex;flex-direction:column;width:min(var(--frame-width),100%)}
.composition:before,.ornament{display:none}
.masthead{padding:0 5px 15px}
.side-nav{flex-direction:row;justify-content:center;gap:0;align-self:stretch;flex-wrap:wrap;overflow:visible;scrollbar-width:thin;margin-bottom:10px;padding-bottom:5px}
.side-nav a{flex:none;justify-content:center;min-height:44px;padding:7px 15px;border-bottom:1px solid #6d766770}
.side-nav a:after{display:none}
.side-nav a[aria-current=page]{border-bottom:2px solid var(--teal)}
.stage{height:min(var(--frame-height),calc(100svh - 190px));min-height:0}
.frame-footer{width:100%}
.contact-grid{grid-template-columns:1fr;gap:20px}
.contact-socials{margin-bottom:8px}
.home-copy{gap:25px}
.albums{grid-template-columns:repeat(2,minmax(0,1fr))}
.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.about-grid{gap:24px}
}

@media(max-width:600px){.page{padding:20px 12px 28px}
.masthead-note{font-size:10px;max-width:150px;letter-spacing:.07em}
.brand img{max-width:103px}
.side-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));justify-content:center;overflow:visible;gap:3px}
.side-nav a{min-width:0}
.side-nav a{font-size:14px;padding:8px 12px}
.stage{--frame-edge:8px;height:auto;min-height:0}
.panel{height:auto;overflow:visible;overscroll-behavior:auto}
.home-panel{display:block}
.home-slider{display:flex;flex-direction:column}
.slides{aspect-ratio:16/10;height:auto}
.slide{position:absolute;inset:0}
.slide img{object-position:var(--mobile-focus,50%) var(--mobile-focus-y,50%)}
.home-copy{min-height:0}
.home-copy{grid-template-columns:1fr;gap:12px;padding:19px 20px 22px}
.home-copy h1{font-size:38px;line-height:1.06}
.home-copy h1 br{display:none}
.home-copy h1 em:before{content:' '}
.home-copy p{font-size:16px}
.home-copy .text-link{margin-top:8px}
.slider-toolbar{position:static;width:100%;max-width:100%;margin:0;justify-content:center;gap:0;padding:3px 2px;flex-wrap:wrap}
.slider-toolbar .slide-count{margin:0 3px}
.home-slider{background:var(--paper)}
.slide-dots{max-width:132px}
.slide-dots button{width:44px;height:44px}
.slide-count{font-size:11px}
.icon-button{width:44px;height:44px}
.image-note{top:12px;left:12px;max-width:calc(100% - 24px);font-size:11px}
.content{padding:22px 18px 28px}
.panel-head{display:block;margin-bottom:22px}
.panel h2{font-size:38px}
.intro{margin-top:10px;font-size:15px}
.frame-footer{justify-content:center;gap:7px;padding-top:12px}
.footer-links{gap:17px}
.footer-links a{font-size:13px}
.manage-link{justify-content:center}
.about-grid{grid-template-columns:1fr}
.about-grid img{aspect-ratio:1.45}
.member{grid-template-columns:1fr;gap:16px}
.member-photo{width:min(220px,100%)}
.member :is(h3,h4){font-size:28px}
.member .prose{grid-column:1/-1}
.video-grid{grid-template-columns:1fr}
.album-detail-grid{grid-template-columns:1fr;gap:23px}
.album-detail-grid figure{max-width:250px}
.albums{gap:23px 16px}
.album :is(h2,h3){font-size:26px}
.album-meta{font-size:12px}
.streaming{gap:12px}
.streaming>span{width:100%}
.gallery-grid{gap:21px 15px}
.gallery-item{font-size:13px}
.photo-view{padding:15px}
.photo-view figure>img{height:auto;max-height:none;flex:none}
.photo-view figure{flex:none}
.photo-view{display:block}
.photo-view figcaption{font-size:23px}
.photo-bar .text-link,.photo-controls .text-link{font-size:13px}
.form-row{grid-template-columns:1fr}
.video-feature-caption{align-items:start}
.video-feature-caption h3{font-size:26px}
.live-empty{margin:24px auto}
.live-empty :is(h2,h3){font-size:29px}
}

@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}


/* Archive and owner flows use the same type, paper and original frame assets. */
.platform-links{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}
.platform-links:empty{display:none}
.platform-link{border:1px solid var(--teal);color:var(--teal);padding:8px 12px;min-height:44px;font-size:14px;display:inline-flex;gap:8px;align-items:center}
.platform-link:hover{background:#086e6812}
.archive-meta{font-size:14px;color:var(--muted);margin:7px 0}
.track-card{border-top:1px solid var(--line);padding:20px 0;display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.track-card:has(.track-cover){grid-template-columns:80px minmax(0,1fr)}
.track-card :is(h2,h3){font:600 28px/1.2 var(--serif)}
.track-card details{margin:10px 0;font-size:14px}
.track-cover{width:80px;height:80px;object-fit:cover}
.archive-toolbar{display:flex;align-items:end;gap:18px;flex-wrap:wrap;margin-bottom:24px}
.archive-toolbar label{flex:1;min-width:130px}
.archive-toolbar .text-link{margin-bottom:6px}
.prose :is(h2,h3){font:600 28px/1.2 var(--serif);margin:22px 0 10px;color:var(--ink)}
.related-links{display:flex;gap:18px;flex-wrap:wrap;margin:15px 0}
.event-card{display:flex;align-items:start;gap:22px}
.event-card>img{width:150px;aspect-ratio:4/3;object-fit:cover}
.event-card>div{min-width:0}
.event-status{display:block;font-size:14px;font-weight:700;color:var(--teal)}
.past-events{margin-top:30px}
.access-card{width:min(560px,calc(100% - 32px));margin:10vh auto;background:var(--paper);padding:32px}
.access-card h1{font:600 42px/1.2 var(--serif)}
.access-card p{margin:20px 0}
.access-card .text-link{display:flex;width:max-content;margin-top:20px}
.site-notice a{text-decoration:underline}
.email-link{max-width:100%;word-break:break-word}
.home-slider>img{width:100%;height:100%;object-fit:cover}

@media(max-width:600px){.page{display:block}
.event-card{display:block}
.event-card>img{width:100%;margin-bottom:16px}
.video-grid,.about-grid,.contact-grid{min-width:0}
.video-feature-caption{flex-wrap:wrap}
.panel-head h2{overflow-wrap:anywhere}
.archive-toolbar{gap:12px}
.archive-toolbar label{width:100%}
.image-note{font-size:12px}
.slide-dots span{width:8px;height:8px}
.slider-toolbar .icon{width:22px;height:22px}
.frame-footer{padding-top:15px}
.footer-links{justify-content:center}
.track-card:has(.track-cover){grid-template-columns:1fr}
.track-cover{width:100px;height:100px}
}

.branded-link{display:inline-flex;align-items:center;gap:8px}
.branded-link .icon{width:20px;height:20px;flex-shrink:0}

.collection-tracks{margin-top:12px;border-top:1px solid #756f5b50;padding-top:10px}
.collection-tracks summary{cursor:pointer;font-size:14px;min-height:32px}
.music-track{padding:12px 0;border-bottom:1px solid #756f5b30}
.music-track :is(h3,h4){font-size:16px;margin:0}
.music-track .platform-link{font-size:14px;padding:6px 8px}

.event-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:12px}.event-date{margin:8px 0}.footer-links{flex-wrap:wrap}
@media(max-width:600px){.side-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.side-nav a{padding:8px 3px}.frame-footer{gap:12px}.footer-links{justify-content:center;gap:12px}}

/* Turn the original navigation ornament when a page is selected. */
.side-nav a.is-turning:after{animation:nav-ornament-turn .46s cubic-bezier(.22,.7,.25,1) both}
.panel.is-entering{animation:page-reveal .26s ease-out both}
@keyframes nav-ornament-turn{from{transform:rotate(90deg)}to{transform:rotate(450deg)}}
@keyframes page-reveal{from{opacity:.65}to{opacity:1}}
@media(max-width:900px){.side-nav a{gap:5px}.side-nav a:after{display:block;width:14px;height:14px}}
@media(max-width:600px){.side-nav a{gap:4px}.side-nav a:after{width:12px;height:12px}}

/* Server-rendered primary headings retain the original panel typography. */
html[data-php-site] .content h1{font:600 44px/1.12 var(--serif);letter-spacing:-.02em;margin:0}
@media(max-width:600px){html[data-php-site] .content h1{font-size:34px}}

.language-nav{grid-column:2;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;font-size:12px;padding:0 8px 10px}.language-nav a{padding:6px;min-height:32px}.language-nav a[aria-current]{border-bottom:1px solid var(--teal)}
html[dir=rtl]{--sans:Tahoma,Arial,sans-serif;--serif:Tahoma,Arial,sans-serif}
html[dir=rtl] .composition:before{left:auto;right:112px}
html[dir=rtl] .prose,html[dir=rtl] .contact-intro{text-align:start}
html[dir=rtl] input[type=email],html[dir=rtl] input[type=url],html[dir=rtl] .email-link{direction:ltr}
html[dir=rtl] .back-link{flex-direction:row-reverse}
@media(max-width:1000px){html[dir=rtl] .composition:before{display:none}}
@media(max-width:600px){.language-nav{grid-column:1;justify-content:center}}

.masthead:has(.language-nav){flex-wrap:wrap}.masthead .language-nav{margin-inline-end:auto;padding:0;justify-content:flex-start}

html[dir=rtl] #slide-prev svg,html[dir=rtl] #slide-next svg{transform:scaleX(-1)}

.music-facts{display:grid;gap:5px;margin:12px 0;font-size:.88rem}.music-facts>div{display:grid;grid-template-columns:minmax(90px,1fr) minmax(0,2fr);gap:14px}.music-facts dt{color:var(--muted)}.music-facts dd{margin:0;overflow-wrap:anywhere}.music-credits,.music-lyrics{margin:12px 0}.music-lyrics p{white-space:pre-line}

.contact-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.server-contact{min-width:0}.server-contact select{width:100%;margin-bottom:1rem}.server-contact [data-contact-fields]{display:grid;gap:1rem}.server-contact input,.server-contact textarea{width:100%;box-sizing:border-box}
.privacy-dialog{max-width:min(560px,calc(100vw - 36px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #81775f;background:#eee9d6;color:#282d29;padding:28px;font-family:Manrope,sans-serif;line-height:1.7}.privacy-dialog::backdrop{background:rgb(0 0 0/.55)}.privacy-actions{display:flex;gap:14px;flex-wrap:wrap}.privacy-actions>.button{flex:1;min-width:160px;background:#086e68;color:#fff;font:inherit;padding:12px;cursor:pointer}.privacy-actions>.button:focus-visible,.privacy-dialog a:focus-visible{outline:3px solid #086e68;outline-offset:4px}button[data-privacy-settings]{font:inherit;cursor:pointer;background:transparent;border:0}.privacy-dialog [hidden]{display:none!important}
.privacy-dialog{font-family:var(--sans)}
/* Impressum and privacy: readable line length, list and link styling for owner-formatted legal text. */
.legal-text{max-width:72ch;margin-top:14px}.legal-text :is(p,ul)+:is(p,ul){margin-top:12px}.legal-text ul{padding-inline-start:1.3em}.legal-text li+li{margin-top:4px}.legal-text a{text-decoration:underline;text-underline-offset:2px}
/* Disabled consent actions look disabled. */
.privacy-actions>.button:disabled{opacity:.45;cursor:not-allowed}
/* Centred privacy panel: reuse the site's paper, serif heading and teal controls. */
.privacy-dialog{width:min(720px,calc(100% - 32px));max-width:720px;max-height:calc(100dvh - 32px);margin:auto;padding:clamp(20px,4vw,36px);background:var(--paper) url('assets/paper.webp') repeat;color:var(--ink);box-shadow:0 18px 70px #282d2940}
.privacy-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.privacy-heading h2{font:600 clamp(28px,3.5vw,36px)/1.15 var(--serif);overflow-wrap:anywhere;hyphens:auto}
.privacy-heading .privacy-close{flex:none;min-height:44px;padding:8px;border:0;font-size:13px;font-weight:400}
.privacy-dialog>p{margin-block:18px;font-size:14px;line-height:1.75;overflow-wrap:anywhere}
.privacy-actions>.button{flex:1 1 220px;min-width:0;white-space:normal}
.privacy-dialog .privacy-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));grid-auto-rows:1fr}
.privacy-dialog .privacy-legal-links{display:flex;flex-wrap:wrap;gap:8px 22px;margin-block:22px 0;font-size:12px}
.privacy-legal-links a{min-height:24px;text-decoration:underline;text-underline-offset:3px}
.footer-legal noscript{display:flex;flex-direction:column;gap:4px}

/* Let mobile/tablet pages end with their content; preserve desktop framing. */
@media(max-width:1100px){
  .page{min-height:0}
  .stage:has(>.content:not([hidden])){height:auto}
  .stage>.content{height:auto;overflow:visible;overscroll-behavior:auto}
}

/* Compact the footer spacing visible below the frame on smaller screens. */
@media(max-width:1100px){
  .page{padding-bottom:12px}
  .frame-footer{padding-top:6px;row-gap:0}
  .footer-legal{padding-top:0}
}
@media(max-width:600px){
  .footer-legal{padding-left:0}
}
