:root{--ink:#0d171d;--ink-2:#14232b;--paper:#f0eadc;--paper-2:#d9cfba;--gold:#d5ad58;--teal:#5f9a96;--copper:#a76945;--white:#fffdf6;--serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--max:1240px}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);line-height:1.6}
img{display:block;width:100%;height:auto}
a{color:inherit}
.wrap{width:min(calc(100% - 40px),var(--max));margin-inline:auto}
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:var(--gold);color:var(--ink);padding:.7rem 1rem}
.skip-link:focus{top:1rem}
.site-header{height:88px;display:flex;align-items:center;gap:28px;padding:0 max(20px,calc((100vw - var(--max))/2));border-bottom:1px solid #ffffff20;background:#0d171df2;backdrop-filter:blur(12px);position:relative;z-index:30}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;margin-right:auto}
.brand-mark{width:44px;height:44px;border:1px solid var(--gold);display:grid;place-items:center;border-radius:50%;font-family:var(--serif);font-size:.82rem;color:var(--gold)}
.brand b{display:block;font-family:var(--serif);font-size:1.2rem;letter-spacing:.03em}
.brand small{display:block;font-size:.57rem;letter-spacing:.12em;text-transform:uppercase;color:#aeb9b8}
.main-nav{display:flex;align-items:center;gap:22px}
.main-nav a,.language-switch a{font-size:.75rem;letter-spacing:.09em;text-transform:uppercase;text-decoration:none;color:#ccd3cf}
.main-nav a:hover,.main-nav a[aria-current=page],.language-switch a[aria-current=true]{color:var(--gold)}
.language-switch{display:flex;gap:5px;font-size:.72rem}
.language-switch a{text-decoration:none}
.nav-toggle{display:none;background:none;border:1px solid #ffffff35;color:var(--paper);padding:.5rem .7rem}
.hero{min-height:690px;display:grid;align-items:end;position:relative;overflow:hidden;background:var(--ink)}
.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#081116f5 2%,#0b161dcc 47%,#0b161d35 76%);z-index:1;pointer-events:none}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,var(--ink),transparent 30%);z-index:1;pointer-events:none}
.hero-content{position:relative;z-index:2;padding:110px 0 125px}
.hero-content>*{max-width:780px}
.eyebrow{color:var(--gold);font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin:0 0 12px}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.07;margin:0}
h1{font-size:clamp(3.4rem,7.2vw,7.1rem);max-width:920px!important}
h2{font-size:clamp(2.5rem,5vw,5rem);margin-bottom:28px}
h3{font-size:1.55rem}
.hero-lead{font-size:clamp(1.05rem,1.6vw,1.35rem);max-width:650px!important;color:#d8ddd8;margin:28px 0 36px}
.button-row{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.button{display:inline-block;background:var(--gold);color:var(--ink);text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.73rem;padding:17px 24px;border:0;cursor:pointer}
.button:hover{background:#efd184}
.text-link{color:var(--gold);text-decoration:none;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700}
.portal-strip{display:grid;grid-template-columns:1fr 1fr;width:min(calc(100% - 40px),var(--max));margin:-42px auto 0;position:relative;z-index:3;background:var(--paper);color:var(--ink)}
.portal-strip a{padding:28px 34px;text-decoration:none;display:grid;grid-template-columns:42px 1fr;column-gap:16px;border-right:1px solid #0d171d20}
.portal-strip span{grid-row:1/3;color:var(--copper);font-family:var(--serif);font-size:1.3rem}
.portal-strip b{font-family:var(--serif);font-size:1.25rem}
.portal-strip small{text-transform:uppercase;letter-spacing:.12em;color:#6e695f}
.split-section{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center;padding:140px 0}
.large-copy{font-family:var(--serif);font-size:clamp(1.2rem,2vw,1.65rem);color:#cdd4d0}
.framed-image{margin:0;position:relative}
.framed-image:before{content:"";position:absolute;inset:-18px 18px 18px -18px;border:1px solid var(--gold)}
.framed-image img{position:relative;aspect-ratio:4/3;object-fit:cover}
.program-section,.album-section,.reference-section{background:var(--paper);color:var(--ink);padding:105px 0}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.program-card{padding:42px;border-right:1px solid #0d171d2c}
.program-card span{color:var(--copper);font-family:var(--serif);font-size:1.4rem}
.program-card h3{margin:20px 0 14px;font-size:2rem}
.section-block{padding-top:120px;padding-bottom:120px}
.event-list article{display:grid;grid-template-columns:110px 1fr auto;gap:28px;align-items:center;border-top:1px solid #ffffff28;padding:28px 0}
.event-list time{display:flex;align-items:center;gap:10px}
.event-list time b{font-family:var(--serif);font-size:3rem;color:var(--gold)}
.event-list time span{font-size:.8rem}
.event-list p{margin:6px 0;color:#aeb8b4}
.news-section{background:var(--ink-2)}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.news-grid article{background:#0d171d;min-width:0}
.news-grid article>img{aspect-ratio:16/10;object-fit:cover}
.news-grid article>div{padding:24px}
.news-grid .news-published{color:#aeb8b4;font-size:.7rem}
.news-event-date{display:flex;gap:7px;align-items:baseline;margin:.7rem 0;color:var(--paper);font-size:.82rem}
.news-event-date span{color:var(--gold);font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.news-event-date time{font-weight:700}
.video-cta{background-image:linear-gradient(90deg,#0d171de8,#0d171d82),var(--section-background,linear-gradient(transparent,transparent));background-position:center;background-size:cover;background-attachment:fixed;padding:150px 0}
.video-cta h2{max-width:800px}
.musician-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.musician-card{display:grid;grid-template-columns:190px 1fr;background:var(--ink-2);min-height:250px}
.musician-card img{height:100%;object-fit:cover;filter:saturate(.8)}
.musician-card>div{padding:28px}
.musician-card h3{font-size:1.9rem;margin-bottom:14px}
.musician-card p:last-child{color:#b7c0bc;font-size:.92rem}
.album-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;margin-bottom:34px}
.album-grid article{background:var(--ink);color:var(--paper);padding:20px}
.album-grid h3{margin-bottom:14px}
.album-grid iframe{border:0;width:100%;height:120px}
.external-player-notice{min-height:120px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;border:1px solid #ffffff20;padding:18px;color:#b9c2be}
.external-player-notice p{flex:1 1 240px;margin:0;font-size:.85rem}
.external-player-notice a{color:var(--gold);font-size:.72rem}
.booking-section{background:var(--teal);color:#071215;padding:120px 0}
.booking-section .eyebrow,.booking-section .text-link{color:#173634}
.booking-section h2{max-width:880px}
.booking-section p:not(.eyebrow){max-width:720px;font-family:var(--serif);font-size:1.35rem}
.booking-section .button{background:var(--ink);color:var(--white)}
.site-footer{background:#071015;display:grid;grid-template-columns:2fr 1fr 1fr;gap:36px;padding:70px max(20px,calc((100vw - var(--max))/2)) 35px;color:#aab5b1}
.site-footer b{font-family:var(--serif);font-size:1.6rem;color:var(--paper)}
.site-footer a{text-decoration:none}
.footer-links{display:flex;flex-direction:column}
.site-footer small{grid-column:1/-1;border-top:1px solid #ffffff18;padding-top:24px}
.legal-hero{background:var(--ink-2);padding:100px 0 74px;border-bottom:1px solid #ffffff18}
.legal-wrap{max-width:1040px;margin-left:max(20px,calc((100vw - var(--max))/2));margin-right:auto}
.legal-hero h1{font-size:clamp(2.8rem,4.4vw,4.5rem);overflow-wrap:break-word;hyphens:auto}
.legal-content{padding-top:84px;padding-bottom:110px}
.legal-content section{padding:0 0 42px;margin:0 0 42px;border-bottom:1px solid #ffffff20}
.legal-content section:last-child{border-bottom:0}
.legal-content h2{font-size:clamp(1.8rem,3.4vw,2.7rem);margin-bottom:20px}
.legal-content p,.legal-content li{color:#c3ccc8}
.legal-content a{color:var(--gold);text-underline-offset:.18em}
.legal-content code{background:#ffffff12;padding:.12em .35em;color:var(--paper)}
.admin-legal-section{border:1px solid #d7d8d4;margin:28px 0;padding:22px;background:#fbfaf7}
.admin-legal-section legend{padding:0 9px;font-family:var(--serif);font-size:1.25rem;color:#132027}
.admin-legal-section textarea{min-height:190px;line-height:1.45}
.admin-legal-save{display:flex;justify-content:flex-end;margin-top:28px;padding-top:18px;border-top:1px solid #d7d8d4}
.hero-workshop:before{background:linear-gradient(90deg,#17100ce8,#17100c60)}
.page-instruments{--gold:#d7a45a;--teal:#8c755c}
.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.feature-card{background:var(--paper);color:var(--ink);display:grid;grid-template-columns:44% 1fr;min-height:340px}
.feature-card img{height:100%;object-fit:cover}
.feature-card>div{padding:34px}
.feature-card h2{font-size:2.3rem;margin-bottom:18px}
.feature-card p:not(.eyebrow){font-size:.94rem}
.workshop-contact{background:#9c7957;color:#17100c}
.page-events{--gold:#e0bd6f;--teal:#7b9488}
.hero-events .hero-media{object-position:center}
.org-intro{align-items:start}
.service-list{border-top:1px solid #ffffff30}
.service-list p{border-bottom:1px solid #ffffff30;padding:18px 0;margin:0;font-family:var(--serif);font-size:1.25rem}
.service-list span{color:var(--gold);margin-right:16px;font-size:.7rem}
.reference-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#0d171d2c}
.reference-grid article{background:var(--paper);padding:30px}
.reference-grid>article>span{color:var(--copper)}
.reference-grid h3{margin:20px 0 12px}
.reference-grid p{min-height:76px}
.admin-body{background:#e8e3d9;color:#132027}
.admin-shell{width:min(calc(100% - 32px),1100px);margin:40px auto 100px}
.admin-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}
.admin-head h1{font-size:2.5rem}
.admin-panel{background:white;padding:28px;margin-bottom:22px;box-shadow:0 8px 28px #10202915}
.admin-panel h2{font-size:2rem;margin-bottom:22px}
.admin-panel h3{margin-bottom:14px}
.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.admin-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.admin-field label{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.admin-field input,.admin-field textarea{width:100%;border:1px solid #bbc1bd;background:#fbfaf7;padding:10px;font:inherit;color:#132027}
.admin-field textarea{min-height:110px}
.admin-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.admin-message{background:#d9eadc;border-left:4px solid #378552;padding:12px 16px}
.admin-error{background:#f0d6d3;border-left-color:#ad3b32}
.person-editor{border-top:1px solid #d7d8d4;padding:24px 0}
.person-editor img{width:120px;height:100px;object-fit:cover;margin-bottom:14px}
.danger-button{background:#8e2c2c;color:white;border:0;padding:10px 14px;cursor:pointer}
.subtle-button{background:#d8ddd8;color:#132027;border:0;padding:10px 14px;cursor:pointer}
.login-card{width:min(calc(100% - 40px),480px);margin:12vh auto;background:white;padding:38px;color:#132027}
.login-card h1{font-size:2.8rem;margin-bottom:22px}

.integration-help{background:#f2eee4;border-left:4px solid var(--gold);padding:20px;margin:18px 0 24px}
.integration-help h3{margin-bottom:8px}
.integration-help p{margin-top:0}
.integration-help code{background:#fff;padding:.1em .35em}
.integration-help .admin-actions{margin-top:16px}

.admin-tabs{position:sticky;z-index:20;top:0;display:flex;gap:4px;margin:0 0 22px;padding:8px;background:#132027;box-shadow:0 8px 24px #10202925;overflow-x:auto}
.admin-tabs button{flex:1;min-width:max-content;border:0;border-bottom:3px solid transparent;background:transparent;color:#d8ddd8;padding:13px 18px;font:800 .73rem/1.2 var(--sans);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.admin-tabs button:hover{background:#ffffff10;color:#fff}
.admin-tabs button[aria-selected=true]{border-bottom-color:var(--gold);background:#ffffff12;color:var(--gold)}
.admin-tabs button:focus-visible{outline:2px solid #fff;outline-offset:-3px}
.admin-tab-panel[hidden]{display:none}
.admin-field-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:28px}
.admin-copy-button{border:0;background:transparent;color:#755112;padding:3px 0;font:800 .67rem/1.2 var(--sans);letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.admin-copy-button:hover,.admin-copy-button:focus-visible{text-decoration:underline}
.admin-copy-button.is-success{color:#27723b}

.admin-subtabs{display:flex;gap:8px;margin:22px 0 28px;padding-bottom:10px;border-bottom:1px solid #d7d8d4;overflow-x:auto}
.admin-subtabs button{min-width:max-content;border:1px solid #c4cac6;background:#f2eee4;color:#34413f;padding:9px 14px;font:750 .72rem/1.2 var(--sans);cursor:pointer}
.admin-subtabs button:hover{border-color:#9e7b3c}
.admin-subtabs button[aria-selected=true]{border-color:#132027;background:#132027;color:#fff}
.admin-subtabs button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.admin-subtab-panel[hidden]{display:none}
.admin-area-title{font-size:1.9rem!important;margin:0 0 24px!important;padding-bottom:12px;border-bottom:2px solid var(--gold)}
.admin-image-heading{margin-top:34px!important}
.admin-content-save{position:sticky;bottom:12px;display:flex;justify-content:flex-end;margin-top:26px;padding:12px;background:#ffffffeb;border-top:1px solid #d7d8d4;backdrop-filter:blur(6px)}

@media(max-width:980px){.main-nav{position:absolute;display:none;top:88px;left:0;right:0;background:var(--ink);padding:24px;flex-direction:column;align-items:flex-start}
.main-nav.is-open{display:flex}
.nav-toggle{display:block}
.language-switch{margin-left:0}
.split-section{gap:50px}
.musician-grid,.feature-grid{grid-template-columns:1fr}
.reference-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:700px){.site-header{height:74px}
.brand small{display:none}
.brand-mark{width:38px;height:38px}
.language-switch{position:absolute;right:80px}
.main-nav{top:74px}
.hero{min-height:620px}
.hero-content{padding:90px 0}
.portal-strip,.split-section,.card-grid,.news-grid,.album-grid,.admin-grid{grid-template-columns:1fr}
.portal-strip a{border-bottom:1px solid #0d171d20}
.split-section{padding:95px 0}
.framed-image{margin-left:18px}
.card-grid .program-card{border-right:0;border-bottom:1px solid #0d171d2c}
.section-block{padding-top:85px;padding-bottom:85px}
.event-list article{grid-template-columns:90px 1fr}
.event-list .text-link{grid-column:2}
.musician-card{grid-template-columns:1fr}
.musician-card img{height:280px}
.feature-card{grid-template-columns:1fr}
.feature-card img{height:260px}
.reference-grid{grid-template-columns:1fr}
.site-footer{grid-template-columns:1fr}
.wrap{width:min(calc(100% - 28px),var(--max))}
}


.inline-editor-enabled{padding-top:44px}
.inline-editor-enabled .site-header{z-index:35}
.inline-editor-bar{position:fixed;z-index:90;inset:0 0 auto;height:44px;background:#f2eee4;color:#132027;display:flex;align-items:center;gap:18px;padding:0 20px;border-bottom:1px solid #c8bda8;font:600 .78rem/1.2 var(--sans);box-shadow:0 4px 18px #0002}
.inline-editor-bar span{color:#596368;margin-right:auto}
.inline-editor-bar a{color:#6f4c14;text-decoration:none}
.inline-edit-button{position:absolute;z-index:80;width:30px;height:30px;border:1px solid #fff;background:#d5ad58;color:#101a21;border-radius:50%;display:grid;place-items:center;padding:0;font:800 17px/1 var(--sans);cursor:pointer;box-shadow:0 3px 12px #0007;transition:transform .15s,background .15s}
.inline-edit-button:hover,.inline-edit-button:focus-visible{background:#f1d58c;transform:scale(1.08);outline:2px solid #fff;outline-offset:2px}
.inline-editor-modal-open{overflow:hidden}
.inline-editor-dialog{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:16px;background:#071015b8;backdrop-filter:blur(3px);overflow:auto}
.inline-editor-dialog[hidden]{display:none}
.inline-editor-form{width:min(100%,680px);max-height:calc(100vh - 32px);overflow:auto;border:0;padding:28px;background:#fff;color:#132027;box-shadow:0 30px 90px #0008}
.inline-editor-form header{display:flex;align-items:flex-start;gap:20px;margin-bottom:20px}
.inline-editor-form header>div{flex:1}
.inline-editor-form h2{font-size:2rem;margin:0}
.inline-editor-close{border:0;background:transparent;font-size:2rem;line-height:1;cursor:pointer;color:#132027}
.inline-editor-form label{display:flex;flex-direction:column;gap:8px;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.inline-editor-language-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.inline-editor-language-grid[hidden]{display:none}
.inline-editor-form textarea,.inline-editor-form input[type=file]{width:100%;border:1px solid #aeb6b2;background:#fbfaf7;color:#132027;padding:12px;font:400 1rem/1.5 var(--sans);text-transform:none;letter-spacing:0}
.inline-editor-status{min-height:24px;margin:12px 0}
.inline-editor-status.is-error{color:#9b2f28}
.inline-editor-status.is-success{color:#27723b}
.inline-editor-form .button:disabled{opacity:.55;cursor:wait}

@media(max-width:700px){.inline-editor-bar span{display:none}
.inline-editor-bar{gap:12px;padding-inline:12px}
.inline-edit-button{width:28px;height:28px}
.inline-editor-form{padding:22px}
.inline-editor-form h2{font-size:1.6rem}
.inline-editor-language-grid{grid-template-columns:1fr}
}


/* Responsive content disclosures and compact mobile rhythm */
.inline-editor-field-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.inline-editor-mini-button{border:1px solid #aeb6b2;background:#f0eee8;color:#132027;padding:6px 9px;font:700 .68rem/1 var(--sans);letter-spacing:.04em;text-transform:none;cursor:pointer}
.inline-editor-mini-button:hover,.inline-editor-mini-button:focus-visible{background:#d5ad58;border-color:#d5ad58}
.inline-editor-mini-button:disabled{opacity:.55;cursor:wait}
.past-events-title{margin:58px 0 8px;color:#aeb8b4;font-size:1.15rem;text-transform:uppercase;letter-spacing:.1em}
.event-list-past{opacity:.72}
.event-list-past article:last-child{border-bottom:1px solid #ffffff28}

.inline-editor-dialog:has(.inline-editor-crop-wrap:not([hidden])) .inline-editor-form{width:min(100%,780px)}
.inline-editor-image-info{color:#66716d;font-size:.72rem;font-weight:500;letter-spacing:0;text-transform:none}
.inline-editor-crop-wrap{margin-top:14px}
.inline-editor-crop{display:block;max-width:100%;max-height:52vh;margin-inline:auto;background:#162129;cursor:grab;touch-action:none;box-shadow:inset 0 0 0 1px #13202733}
.inline-editor-crop.is-dragging{cursor:grabbing}
.inline-editor-crop:focus-visible{outline:3px solid #d5ad58;outline-offset:3px}
.inline-editor-zoom{margin-top:14px}
.inline-editor-zoom input{width:100%;accent-color:#b78836}
.inline-editor-crop-wrap>p{margin:8px 0 0;color:#66716d;font-size:.78rem}

.inline-editor-image-source{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end}
.inline-editor-drive-row{display:flex;align-items:center;gap:10px;padding-bottom:1px}
.inline-editor-drive-row>span{color:#66716d;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}
.inline-editor-drive-row .subtle-button{white-space:nowrap}
.inline-editor-drive-row .subtle-button:disabled{opacity:.55;cursor:wait}
.inline-editor-drive-option{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.inline-editor-drive-option small{color:#66716d;font-size:.68rem;line-height:1.35}
@media(max-width:700px){.inline-editor-image-source{grid-template-columns:1fr}
.inline-editor-drive-row{justify-content:flex-start;flex-wrap:wrap}
}

.inline-editor-form [hidden]{display:none!important}
.musician-card{display:block;min-height:250px}
.musician-disclosure{position:relative;min-height:250px;padding:28px 28px 28px 218px}
.musician-disclosure summary,.album-disclosure summary{list-style:none;cursor:pointer}
.musician-disclosure summary::-webkit-details-marker,.album-disclosure summary::-webkit-details-marker{display:none}
.musician-disclosure summary>img{position:absolute;inset:0 auto 0 0;width:190px;height:100%;object-fit:cover;filter:saturate(.8)}
.musician-heading h3{font-size:1.9rem;margin-bottom:14px}
.musician-bio p{color:#b7c0bc;font-size:.92rem;margin:0}
.disclosure-label{display:none}
.album-grid .album-card{padding:0}
.album-disclosure summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px}
.album-disclosure summary h3{margin:0}
.album-player{padding:0 20px 20px}
.album-player iframe{display:block;border:0;width:100%;height:120px}

@media(max-width:700px){body{line-height:1.5}
h1{font-size:clamp(2.55rem,12.5vw,3.8rem);overflow-wrap:anywhere}
h2{font-size:clamp(2rem,9.5vw,3rem);margin-bottom:20px;overflow-wrap:anywhere}
h3{overflow-wrap:anywhere}
.hero{min-height:520px}
.hero-content{padding:68px 0 58px}
.hero-lead{margin:20px 0 28px;font-size:1rem}
.portal-strip{margin-top:-24px}
.portal-strip a{padding:20px}
.split-section{padding:64px 0;gap:36px}
.large-copy{font-size:1.12rem}
.framed-image img{max-height:260px;object-fit:cover}
.program-section,.album-section,.reference-section{padding:64px 0}
.program-card{padding:28px}
.section-block{padding-top:64px;padding-bottom:64px}
.news-grid{gap:12px}
.news-grid article{display:grid;grid-template-columns:104px minmax(0,1fr)}
.news-grid article>img{height:100%;min-height:150px;aspect-ratio:auto;object-fit:cover}
.news-grid article>div{padding:15px}
.news-grid article p{font-size:.87rem;line-height:1.45;margin:.45rem 0 .8rem}
.video-cta{padding:80px 0;background-attachment:scroll}
.musician-grid{gap:10px}
.musician-card{min-height:0}
.musician-disclosure{min-height:0;padding:0}
.musician-disclosure summary{display:grid;grid-template-columns:82px minmax(0,1fr);align-items:center;min-height:82px}
.musician-disclosure summary>img{position:static;width:82px;height:82px}
.musician-heading{padding:10px 14px}
.musician-heading .eyebrow{font-size:.59rem;margin-bottom:4px}
.musician-heading h3{font-size:1.25rem;margin:0}
.disclosure-label{display:block;margin-top:5px;color:var(--gold);font-size:.65rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.disclosure-label i{display:inline-block;font-style:normal;transition:transform .2s}
.responsive-disclosure[open] .disclosure-label i{transform:rotate(180deg)}
.musician-bio{padding:14px 16px 18px}
.musician-bio p{font-size:.88rem}
.album-grid{gap:8px}
.album-disclosure summary{padding:16px}
.album-disclosure summary h3{font-size:1.15rem}
.album-disclosure .disclosure-label{margin:0;white-space:nowrap}
.album-player{padding:0 12px 12px}
.feature-card img{height:190px}
.booking-section{padding:72px 0}
.booking-section p:not(.eyebrow){font-size:1.12rem}
.site-footer{padding-top:52px}
}


/* Mobile hero composition and live-date hierarchy */
.event-list-past{opacity:.56}

.event-list-past article{grid-template-columns:80px minmax(0,1fr) auto;gap:20px;padding:17px 0}

.event-list-past time b{font-size:2rem;color:#8d9a96}

.event-list-past time span{font-size:.7rem;color:#8d9a96}

.event-list-past h3{font-size:1.15rem;color:#c2c9c5}

.event-list-past p{margin-top:3px;font-size:.82rem}

.event-list-past .text-link{font-size:.68rem;color:#a99362}


@media(max-width:700px){
  .hero-poeta{
    min-height:560px;
    background-color:var(--ink);
  }

  .hero-poeta:after{background:linear-gradient(0deg,var(--ink),transparent 45%)}

  .hero-poeta .hero-content{padding:72px 0 54px}


  .event-list article{
    grid-template-columns:68px minmax(0,1fr);
    gap:14px;
    align-items:start;
    padding:21px 0;
  }

  .event-list article>div{min-width:0;padding-top:2px}

  .event-list time{display:flex;flex-direction:column;align-items:flex-start;gap:2px}

  .event-list time b{font-size:3rem;line-height:.88}

  .event-list time span{font-size:.7rem;line-height:1;letter-spacing:.04em;white-space:nowrap}


  .event-list h3{font-size:clamp(1.35rem,6.8vw,1.75rem);line-height:1.08;overflow-wrap:break-word;hyphens:auto}

  .event-list p{margin:7px 0 0;font-size:.9rem;line-height:1.35}

  .event-list .text-link{grid-column:2;margin-top:-3px;font-size:.72rem}


  .past-events-title{margin:44px 0 6px;font-size:.78rem;letter-spacing:.13em}

  .event-list-past article{grid-template-columns:52px minmax(0,1fr);gap:12px;padding:13px 0}

  .event-list-past time b{font-size:1.65rem;line-height:.9}

  .event-list-past time span{font-size:.59rem;letter-spacing:.02em}


  .event-list-past h3{font-size:1.02rem;line-height:1.15;color:#b8c0bc}

  .event-list-past p{margin-top:4px;font-size:.74rem;line-height:1.3}

  .event-list-past .text-link{margin-top:-2px;font-size:.61rem}

}


.admin-media-input{display:flex;flex-direction:column;gap:8px}
.admin-media-input>small{color:#66716d;font-size:.72rem;line-height:1.4}
.admin-media-choice{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.admin-media-choice span{color:#66716d;font-size:.78rem}
.admin-media-choice span.is-selected{color:#27723b;font-weight:700}
.media-size-legend{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 24px}
.media-size-legend span,.media-size-badge,.media-picker-size{border:1px solid currentColor;border-radius:999px;padding:5px 9px;font-size:.68rem;font-weight:800;line-height:1.2}
.media-size-legend .is-optimal,.media-size-badge.is-optimal,.media-picker-size.is-optimal{background:#d9eadc;color:#27723b}
.media-size-legend .is-okay,.media-size-badge.is-okay,.media-picker-size.is-okay{background:#fff0bd;color:#765400}
.media-size-legend .is-large,.media-size-badge.is-large,.media-picker-size.is-large{background:#f2d2cf;color:#9b2f28}
.media-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.media-library-card{min-width:0;border:1px solid #d2d5d1;background:#f7f5ef}
.media-library-card>img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#d8ddd8}
.media-library-card>div{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:13px}
.media-library-card strong{max-width:100%;font-size:.76rem;overflow-wrap:anywhere}
.media-library-card small{color:#66716d;font-size:.7rem;line-height:1.45}
.media-library-used{display:inline-flex;background:#dce8de;color:#27723b;padding:6px 8px;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.media-library-card form{margin:0}
.media-library-card .danger-button{padding:8px 10px;font-size:.72rem}
.admin-media-empty{padding:26px;background:#f7f5ef;color:#66716d}
.admin-media-modal-open{overflow:hidden}
.admin-media-dialog{position:fixed;z-index:110;inset:0;display:grid;place-items:center;padding:18px;background:#071015c4;backdrop-filter:blur(3px)}
.admin-media-dialog[hidden]{display:none}
.admin-media-dialog-card{width:min(100%,900px);max-height:calc(100vh - 36px);overflow:auto;background:#fff;color:#132027;padding:26px;box-shadow:0 30px 90px #0008}
.admin-media-dialog-card>header,.inline-editor-library-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}
.admin-media-dialog-card h2{margin:0;font-size:2rem}
.admin-media-close{border:0;background:transparent;color:#132027;font-size:2rem;line-height:1;cursor:pointer}
.admin-media-picker-grid,.inline-editor-library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.admin-media-picker-item,.inline-editor-library-item{min-width:0;border:2px solid transparent;background:#f0eee8;padding:0;color:#132027;cursor:pointer;text-align:left}
.admin-media-picker-item:hover,.admin-media-picker-item:focus-visible,.inline-editor-library-item:hover,.inline-editor-library-item:focus-visible{border-color:#b78836;outline:0}
.admin-media-picker-item img,.inline-editor-library-item img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#d8ddd8}
.admin-media-picker-item span,.inline-editor-library-item span{display:block;padding:7px;font-size:.68rem;font-weight:700}
.admin-media-picker-item .media-picker-size,.inline-editor-library-item .media-picker-size{display:inline-block;margin:0 7px 8px;padding:4px 7px}
.admin-media-picker-status{margin:16px 0 0;color:#66716d}
.inline-editor-library-panel{margin-bottom:14px}
.inline-editor-library-panel[hidden]{display:none}
.inline-editor-library-head{align-items:center}
.inline-editor-library-grid{max-height:45vh;overflow:auto;padding:2px}
.inline-editor-library-status{display:block;margin-top:10px}


@media(max-width:760px){.media-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-media-picker-grid,.inline-editor-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-media-dialog-card{padding:20px}
.inline-editor-drive-row{align-items:stretch}
.inline-editor-drive-row .subtle-button{white-space:normal}
.inline-editor-drive-row>span{width:100%}
.inline-editor-drive-option{display:none}
}
