/* Revision 02. Logo palette: black / white / #EC1C24. Local system fonts only. */
:root{--paper:#000;--surface:#141414;--ink:#fff;--muted:#b1b1b1;--red:#ec1c24;--link:#ff6066;--line:#333;--dark:#000;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--link)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--link);outline-offset:4px}p{color:var(--muted);margin:0 0 1.25rem}h1,h2,h3{font-family:Arial,Helvetica,sans-serif;line-height:1.1;margin:0 0 1.2rem;font-weight:750;letter-spacing:-.04em;color:var(--ink);overflow-wrap:anywhere}h1{font-size:clamp(2.5rem,5vw,4.5rem)}h2{font-size:clamp(2rem,3.4vw,3.15rem)}h3{font-size:1.3rem;letter-spacing:-.02em}img{display:block;max-width:100%;object-fit:cover}small{display:block;font-size:.78rem;line-height:1.5;color:var(--muted)}code,pre{overflow-wrap:anywhere}pre{white-space:pre-wrap}figure{margin:0}form{margin:0}input,textarea,select{display:block;width:100%;min-height:46px;margin-top:7px;padding:11px 13px;border:1px solid #606060;border-radius:2px;color:var(--ink);background:var(--surface)}textarea{resize:vertical}select{cursor:pointer}input[type=checkbox]{width:19px;height:19px;min-height:19px;accent-color:var(--red);margin:3px 10px 0 0;flex-shrink:0}input[type=file]{font-size:.85rem}label{display:block;font-size:.88rem;color:var(--ink);margin-bottom:20px}.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}
.skip{position:absolute;top:-80px;left:20px;background:white;color:black;padding:12px;z-index:20}.skip:focus{top:10px}.review-strip{display:flex;justify-content:center;gap:22px;align-items:center;background:#191919;color:#bfbfbf;font-size:.67rem;min-height:30px;padding:5px 15px}.review-strip a{text-decoration:underline}.site-header{height:96px;padding:0 max(5%,calc((100vw - 1280px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #222;position:relative;z-index:5;background:#000}.brand{display:flex;align-items:center;height:100%}.brand img{width:58px;height:79px;object-fit:contain}.site-header nav{display:flex;align-items:center;gap:28px;font-size:.82rem;font-weight:600}.site-header nav>a{padding:10px 0}.site-header nav>.nav-book{border-bottom:2px solid var(--red)}.language{font-size:.74rem;border-left:1px solid var(--line);padding:8px 0 8px 20px!important}.menu-toggle{display:none;background:transparent;border:1px solid #666;color:var(--ink);padding:9px 13px;font-size:.83rem}.menu-toggle span{margin-left:12px}
.section{width:100%;max-width:1422px;margin:0 auto;padding:64px 5%}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:32px}.section-heading h2{margin:0}.section-dot{color:var(--red)}.eyebrow,.caption{font-size:.72rem;letter-spacing:.045em;color:var(--muted);line-height:1.5}.eyebrow{margin-bottom:20px}.text-link{display:inline-flex;align-items:center;gap:14px;font-size:.84rem;border-bottom:1px solid #666;padding:5px 0;line-height:1.5}.button,.outline{display:inline-flex;align-items:center;justify-content:center;gap:15px;border:1px solid var(--red);border-radius:2px;min-height:46px;padding:12px 21px;background:var(--red);color:#000;font-weight:700;font-size:.86rem;line-height:1.5;transition:background .16s,color .16s}.button:hover{background:#fff;border-color:#fff;color:#000}.outline{background:transparent;color:var(--ink);border-color:#666}.outline:hover{background:#fff;border-color:#fff;color:#000}.link{border:0;background:none;color:inherit;text-decoration:underline;padding:8px}.actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.full{width:100%}
.home-hero{display:grid;grid-template-columns:38% 62%;align-items:stretch;padding-top:34px;padding-bottom:36px}.hero-identity{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:26px 30px 26px 0}.hero-logo{width:auto;max-width:100%;height:340px;object-fit:contain}.genres{font-size:.77rem;text-align:center;color:#d0d0d0;margin:18px 0 20px;max-width:29ch}.hero-listen{display:flex;align-items:center;gap:55px;font-size:.82rem;border-bottom:2px solid var(--red);padding:7px 0}.hero-listen span{color:var(--link);font-size:1.2rem}.home-hero .photo-mount{height:100%;min-height:480px}.home-hero .photo-image{height:100%;width:100%;aspect-ratio:auto}.photo-slot{min-width:0}.photo-mount{position:relative;background:#141414;overflow:hidden}.photo-image{width:100%;aspect-ratio:4/3;object-fit:cover}.photo-slot figcaption{font-size:.73rem;color:var(--muted);padding:12px 0 0}.photo-pending{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-size:.75rem;color:#b5b5b5}.photo-symbol{font-size:2rem;font-weight:300;color:#777;line-height:1}.home-mixes{padding-top:32px}.home-events,.home-videos,.home-photos{padding-top:28px}.home-connect{display:grid;grid-template-columns:1fr auto;gap:8%;align-items:center;padding-top:38px;padding-bottom:70px}.home-connect h2{font-size:1.5rem;margin-bottom:25px}.booking-link{font-size:1.65rem;font-weight:700;letter-spacing:-.025em;display:flex;justify-content:space-between;gap:50px;border-bottom:2px solid var(--red);padding:12px 0}.booking-link span{color:var(--link)}
.media-grid,.event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.media-card,.event-card{min-width:0}.media-cover,.event-thumb{display:block;position:relative;overflow:hidden;margin-bottom:19px;background:#141414}.media-cover>img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform .25s}.media-cover:hover>img,.event-thumb:hover>img{transform:scale(1.025)}.cover-label{position:absolute;left:14px;bottom:14px;background:#000;color:#fff;font-size:.62rem;padding:4px 8px;letter-spacing:.025em}.media-meta{font-size:.73rem;display:flex;justify-content:space-between;gap:10px;color:var(--muted);margin-bottom:10px;min-height:18px}.media-card h3{margin-bottom:12px;font-size:1.4rem}.media-card p{font-size:.86rem;margin-bottom:12px;max-width:42ch}.media-card small{font-size:.72rem;margin-top:9px}.media-card audio{width:100%;height:40px;margin-top:4px;color-scheme:light}.media-card .text-link{margin-top:12px;display:table}.media-embed{border:0;width:100%;height:250px}.video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.video-card .media-cover>img{aspect-ratio:16/9}.video-card h3{font-size:1.15rem}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.page-top>.photo-grid{margin-top:30px}.artist-teaser{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.artist-teaser .photo-image{aspect-ratio:4/5}.artist-teaser .lead{max-width:35ch}
.event-thumb img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .25s}.event-date{font-size:.76rem;color:var(--muted);display:flex;justify-content:space-between;gap:14px;margin-bottom:10px}.event-card h3{font-size:1.35rem;margin-bottom:9px}.event-card p{font-size:.76rem;margin-bottom:17px}.arrow-link{display:flex;gap:13px;justify-content:space-between;font-size:.83rem;font-weight:600;border-top:1px solid var(--line);padding:12px 0}.arrow-link span{color:var(--link);font-size:1.1rem}
.page-top{padding-top:54px;min-height:65vh}.page-top>h1{margin-bottom:24px}.page-top>p{max-width:70ch}.genres-small{font-size:.84rem;margin-bottom:35px}.toolbar{display:flex;gap:24px;flex-wrap:wrap;padding-bottom:17px;border-bottom:1px solid var(--line);margin:35px 0;font-size:.85rem}.toolbar .active{color:var(--link);font-weight:700}.calendar-heading{display:flex;align-items:center;justify-content:space-between;max-width:320px;margin:0 auto 25px}.calendar-heading h2{font-size:1.5rem;margin:0}.calendar-heading a{padding:10px}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line);background:var(--surface)}.day-name{text-align:center;font-size:.76rem;padding:10px;background:#242424}.calendar-cell{min-height:125px;padding:10px;border:1px solid var(--line);font-size:.8rem}.calendar-cell a{display:block;font-size:.75rem;padding:7px;background:#3c1215;margin-top:8px;line-height:1.45;overflow-wrap:anywhere}.calendar-cell.empty{background:#0c0c0c}
.event-detail{display:grid;grid-template-columns:1fr 1.25fr;gap:7%;align-items:center;margin:35px 0 45px}.event-poster{width:100%;aspect-ratio:4/5;object-fit:contain;background:#141414;max-height:610px}.event-detail h1{font-size:clamp(2.1rem,3.8vw,3.6rem)}.caption{padding-top:10px}.lead{font-size:1.1rem;color:var(--ink)}.event-facts{border-top:1px solid var(--line);margin:25px 0}.event-facts>div{display:grid;grid-template-columns:95px 1fr;gap:20px;padding:13px 0;border-bottom:1px solid var(--line)}dt{font-size:.76rem;color:var(--muted)}dd{margin:0;font-size:.86rem}.checkout-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:8%;border-top:1px solid var(--line);padding-top:50px}.checkout-layout h2{font-size:2rem}.notice{padding:16px 19px;border-left:3px solid var(--red);background:#251416;color:#f6c8ca;font-size:.86rem;line-height:1.6}.success{padding:18px;border-left:3px solid #80c79d;background:#17281e;color:#bee4cc}.ticket-tier{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;border-top:1px solid var(--line)}.ticket-tier h3{font-size:1.06rem;margin-bottom:5px}.ticket-tier p{font-size:.8rem;margin:0}.ticket-tier strong{display:block;margin-top:10px;font-size:.95rem}.ticket-tier select{width:78px}.ticket-tier label{font-size:.78rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin-top:20px}.check{display:flex;align-items:flex-start;font-size:.8rem}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:30px 0}.gallery img{width:100%;aspect-ratio:16/10}.narrow{max-width:860px}.medium-title{font-size:clamp(2rem,3.5vw,3rem)}.summary{border-top:1px solid var(--line);margin:28px 0}.summary>div{display:flex;justify-content:space-between;gap:25px;padding:15px 0;border-bottom:1px solid var(--line);font-size:.95rem}.reference{font-size:.9rem;color:var(--link)}.hold-countdown{font-size:.84rem}.ticket-link{display:flex;justify-content:space-between;gap:20px;padding:20px;border:1px solid var(--line);margin-bottom:10px;background:var(--surface);font-size:.9rem}.ticket-page{display:flex;flex-direction:column;align-items:center;gap:25px}.digital-ticket{width:100%;max-width:450px;padding:28px;background:var(--surface);border:1px solid #555;text-align:center}.digital-ticket h1{font-size:2rem}.digital-ticket h2{font-size:1rem;letter-spacing:0}.digital-ticket p{font-size:.85rem}.ticket-top{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:22px;font-size:1.4rem}.ticket-top span{font-size:.72rem;color:var(--link);letter-spacing:.05em;border:1px solid var(--red);padding:3px 6px}.qr-wrap{background:white;width:min(100%,290px);padding:10px;margin:20px auto}.qr-wrap img{width:100%;height:auto}.door-token{display:block;font-size:.69rem;margin:12px 0}.ticket-status{font-size:.9rem;color:var(--link)}.prose{white-space:pre-line;max-width:74ch}.booking-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:8%}.booking-layout h1{font-size:clamp(2.4rem,4vw,3.8rem)}.honeypot{position:absolute;left:-9999px}.empty-state{padding:30px;background:var(--surface);border:1px solid var(--line)}
footer{display:grid;grid-template-columns:1fr 2fr;gap:25px;max-width:none;padding:35px max(5%,calc((100vw - 1280px)/2)) 25px;background:#000;color:#fff;border-top:1px solid var(--line)}footer p{color:var(--muted);font-size:.74rem}.footer-brand{display:inline-block}.footer-brand img{width:65px;height:89px;object-fit:contain}.footer-identity p{margin:10px 0 0}.footer-links{display:flex;justify-content:flex-end;align-items:start;flex-wrap:wrap;gap:17px 24px;font-size:.76rem;padding-top:12px}.socials{display:flex;flex-wrap:wrap;gap:20px 26px;font-size:.8rem}.socials a{border-bottom:1px solid #444;padding-bottom:5px;transition:color .16s}.socials a span{color:var(--link)}.social-pending{color:#9b9b9b;font-size:.76rem}.social-pending small{color:#898989;font-size:.6rem;margin-top:3px}.socials:empty{display:none}footer>.socials{grid-column:1/-1}.copyright{grid-column:1/-1;border-top:1px solid #222;padding-top:20px;font-size:.65rem;margin:0}
/* Existing owner workflows and structural layouts; shared neutral palette only. */
.admin-nav{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;padding:14px 5%;background:#1a1a1a;color:#fff;font-size:.77rem}.admin-nav form{margin-left:auto}.admin-section{max-width:1280px;padding-top:40px}.admin-section h2{font-size:1.7rem;margin-top:40px}.admin-row{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:20px 0;border-bottom:1px solid var(--line)}.admin-row h3{font-size:1.14rem;margin:0 0 8px}.admin-row p{font-size:.82rem;margin:0}.row-actions{display:flex;flex-wrap:wrap;gap:15px;font-size:.79rem}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:32px 0}.stats>div{background:#1d1d1d;padding:20px}.stats strong{display:block;font-size:1.4rem;overflow-wrap:anywhere}.stats span{font-size:.8rem;color:var(--muted)}.wide{grid-column:1/-1}.editor-form{max-width:950px}.asset-preview{height:125px;width:170px;object-fit:contain;background:#222;margin-top:12px}.small-cover{height:75px;width:75px}.search,.inline-form{display:flex;align-items:end;gap:15px;flex-wrap:wrap;margin:24px 0}.search label{flex:1;min-width:160px;margin:0}.inline-form label{margin:0}.journal-entry{padding:28px 0;border-bottom:1px solid var(--line)}.journal-entry h2{font-size:1.5rem;margin:10px 0}.audit-line{font-family:monospace;font-size:.77rem;padding:10px 0;border-bottom:1px solid var(--line)}.door-section{max-width:1150px;padding-top:40px}.attendance{font-size:.85rem}.attendance strong{font-size:1.8rem;color:#80c79d}.scan-form{padding:24px;background:#1d1d1d;margin:28px 0}.scan-form input{font-family:monospace}.scan-form video{max-width:100%;width:400px;margin:20px auto}.scan-form p{font-size:.8rem;margin:15px 0 0}.attendee{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 0;border-bottom:1px solid var(--line)}.attendee p{font-size:.8rem;margin:5px 0}.attendee code{font-size:.69rem}.attendee details{max-width:330px}.attendee summary{cursor:pointer;text-decoration:underline;font-size:.83rem}.attendee details form{margin-top:20px}
@media(max-width:1050px){.site-header nav{gap:20px}.hero-logo{height:300px}.hero-identity{padding-right:22px}.home-hero .photo-mount{min-height:440px}.media-grid,.event-grid{gap:23px}.booking-link{gap:25px;font-size:1.4rem}}
@media(max-width:800px){.site-header{height:86px}.brand img{height:70px;width:52px}.site-header nav{display:none;position:absolute;left:0;right:0;top:86px;background:#101010;padding:18px 5%;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:3px}.site-header nav.open{display:flex}.site-header nav>a{padding:12px}.site-header nav>.nav-book{border-bottom:0}.language{border-left:0;padding:12px!important}.menu-toggle{display:block}.section{padding:46px 5%}.home-hero{padding-top:28px;padding-bottom:28px}.hero-logo{height:255px}.hero-identity{padding:15px 20px 15px 0}.home-hero .photo-mount{min-height:390px}.genres{font-size:.7rem}.media-grid,.event-grid{gap:20px}.media-meta{flex-direction:column;gap:3px;font-size:.67rem}.media-card h3,.event-card h3{font-size:1.15rem}.cover-label{font-size:.56rem;left:10px;bottom:10px}.event-date{font-size:.66rem;gap:8px;flex-wrap:wrap}.event-card p{font-size:.69rem}.home-connect{grid-template-columns:1fr;gap:30px}.booking-link{justify-self:start;font-size:1.5rem;gap:55px}.photo-grid{gap:22px}.event-detail{gap:5%}.event-detail h1{font-size:2.3rem}.checkout-layout{gap:5%}.event-facts>div{grid-template-columns:75px 1fr;gap:15px}.calendar-cell{min-height:100px;padding:5px}.calendar-cell a{font-size:.65rem;padding:4px}.stats{grid-template-columns:1fr 1fr}.admin-row{align-items:flex-start}.attendee{align-items:flex-start;flex-direction:column}.footer-links{gap:15px 20px}.admin-nav form{margin-left:0}.booking-layout{grid-template-columns:1fr;gap:20px}.booking-layout>div:first-child>p{max-width:50ch}.artist-teaser{gap:6%}.artist-teaser .lead{font-size:1rem}}
@media(max-width:560px){.section{padding:38px 6%}.home-hero{grid-template-columns:1fr;gap:20px;padding-top:18px;padding-bottom:18px}.hero-identity{padding:0}.hero-logo{height:228px}.genres{max-width:none;font-size:.71rem;margin:10px 0 12px}.hero-listen{gap:60px;padding:5px 0;font-size:.77rem}.home-hero .photo-mount{min-height:0;height:220px}.home-mixes{padding-top:24px}.section-heading{gap:16px;align-items:baseline;margin-bottom:23px}.section-heading h2{font-size:2rem}.section-heading .text-link{font-size:.72rem;white-space:nowrap;gap:5px}.media-grid,.event-grid,.video-grid{grid-template-columns:1fr;gap:35px}.media-cover{margin-bottom:15px}.media-card h3,.event-card h3{font-size:1.3rem}.media-meta{flex-direction:row;font-size:.72rem}.media-card p{font-size:.83rem}.cover-label{font-size:.61rem;left:12px;bottom:12px}.home-events,.home-videos,.home-photos{padding-top:16px}.event-date{font-size:.75rem}.event-card p{font-size:.75rem}.event-thumb img{aspect-ratio:4/4.6}.photo-grid{grid-template-columns:1fr;gap:25px}.home-connect{padding-top:15px;padding-bottom:45px;gap:28px}.home-connect h2{font-size:1.4rem}.socials{gap:17px 23px}.review-strip{font-size:.58rem;gap:14px}.page-top h1{font-size:2.5rem}.page-top{padding-top:32px}.toolbar{gap:18px;font-size:.77rem;margin:28px 0}.calendar-heading h2{font-size:1.3rem}.calendar-cell{min-height:85px;padding:3px;font-size:.65rem}.calendar-cell a{font-size:.55rem;padding:3px;line-height:1.4}.day-name{padding:8px 2px;font-size:.63rem}.event-detail{grid-template-columns:1fr;gap:24px;margin-top:25px}.event-poster{max-height:460px}.event-detail h1{font-size:2.3rem}.event-detail .lead{font-size:1rem}.checkout-layout{grid-template-columns:1fr;gap:25px;padding-top:32px}.checkout-layout h2{font-size:1.75rem}.ticket-tier{padding:19px 0;gap:10px}.ticket-tier h3{font-size:1rem}.form-grid{grid-template-columns:1fr;gap:0}.wide{grid-column:auto}.gallery{grid-template-columns:1fr}.artist-teaser{grid-template-columns:1fr;gap:25px}.artist-teaser .photo-image{aspect-ratio:4/5}.booking-layout h1{font-size:2.5rem}.summary>div{font-size:.84rem;gap:14px}.ticket-link{font-size:.78rem;gap:14px;padding:17px}.digital-ticket{padding:20px}.digital-ticket h1{font-size:1.9rem}.ticket-page{padding:25px 5%}.notice{padding:14px 16px;font-size:.81rem}.medium-title{font-size:2rem}.stats{gap:12px}.stats>div{padding:15px}.stats strong{font-size:1.2rem}.admin-row{flex-wrap:wrap;gap:12px}.row-actions{width:100%}.small-cover{width:55px;height:55px}.search,.inline-form{align-items:stretch;flex-direction:column}.search label{min-width:0}.scan-form{padding:17px}.scan-form .actions>*{width:100%}.door-section>.section-heading{align-items:flex-start;flex-direction:column}.attendee details{max-width:none;width:100%}footer{grid-template-columns:1fr;padding:28px 6% 23px;gap:22px}.footer-links{justify-content:flex-start;gap:15px 20px;padding:0}.copyright{font-size:.64rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{body{background:white}.site-header,.review-strip,footer,.print-button,.skip{display:none!important}.section{padding:0}.digital-ticket{max-width:440px;border:1px solid #aaa;background:white}.digital-ticket,.digital-ticket *{color:black!important}.ticket-page{padding:0}}
/* Keep full section labels intact on narrow phones; the secondary link wraps. */
@media(max-width:560px){.section-heading{flex-wrap:wrap;row-gap:10px}.section-heading h2{overflow-wrap:normal}}

/* Revision 03: accounts, growing content, readable calendar and keyboard states. */
.site-header nav{gap:20px}.site-header a[aria-current=page],.admin-nav a[aria-current=page]{color:var(--link);text-decoration:underline;text-underline-offset:7px}.site-header nav>.account-nav-link{border:1px solid #555;padding:9px 12px;white-space:nowrap}.home-hero.logo-only{display:flex;justify-content:center;min-height:440px}.logo-only .hero-identity{padding:20px 0}.logo-only .hero-logo{height:310px}.artist-teaser.no-portrait{grid-template-columns:1fr;min-height:330px}.account-auth{max-width:680px}.account-auth small{margin:-12px 0 20px}.account-links{display:flex;flex-wrap:wrap;gap:16px 26px;margin-top:30px;font-size:.85rem}.account-links a{text-decoration:underline}.account-heading{display:flex;justify-content:space-between;align-items:start;gap:25px}.account-tools{margin:35px 0}.account-tools details,.account-tools>summary,details.account-tools{border-top:1px solid var(--line);padding:20px 0}.account-tools summary{cursor:pointer;font-weight:700;margin-bottom:20px}.account-tools form{max-width:700px}.account-card{padding:24px;border:1px solid var(--line);margin:22px 0;min-width:0}.account-card h2{font-size:1.3rem;margin-top:0;overflow-wrap:anywhere}.account-card p{overflow-wrap:anywhere}.account-card legend{font-weight:700;padding:0 10px}.account-card .inline-form{align-items:center}.photo-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:26px 0}.photo-admin-grid .account-card{margin:0}.photo-admin-grid .asset-preview{max-width:100%;width:100%;height:180px;margin-bottom:20px}.pagination{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:20px;margin-top:36px;font-size:.85rem}.pagination .outline{min-width:120px}.subheading{margin-top:40px}.copy-value{font-size:.85rem}.calendar-event .calendar-dot{display:none}.calendar-agenda{margin-top:38px}.calendar-agenda h2{font-size:1.6rem}.agenda-item{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;border-top:1px solid var(--line);scroll-margin-top:20px}.agenda-item p{font-size:.83rem;margin-bottom:6px}.agenda-item h3{font-size:1.25rem;margin-bottom:6px}.agenda-item .outline{flex-shrink:0}.event-gallery{margin-bottom:45px}.media-card video{width:100%;aspect-ratio:16/9;background:#111}.order-filters select{min-width:0;max-width:100%}.admin-row>*{min-width:0;overflow-wrap:anywhere}.editor-form .field{min-width:0}.editor-form .field:has(input[type=checkbox]){align-self:start}.editor-form .field>input[type=checkbox]{margin-top:12px}details form{margin-top:20px}
@media(max-width:1100px){.site-header{height:86px}.brand img{height:70px;width:52px}.site-header nav{display:none;position:absolute;left:0;right:0;top:86px;background:#101010;padding:18px 5%;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:3px}.site-header nav.open{display:flex}.site-header nav>a{padding:12px}.site-header nav>.nav-book{border-bottom:0}.language{border-left:0;padding:12px!important}.menu-toggle{display:block}.site-header nav>.account-nav-link{margin:5px 0}.site-header nav .language{align-self:start;min-width:44px}.photo-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.home-hero.logo-only{min-height:330px}.logo-only .hero-logo{height:245px}.account-heading,.agenda-item{flex-direction:column;align-items:stretch}.account-card{padding:18px}.account-card .inline-form{align-items:stretch}.account-card .inline-form .check{flex-direction:row}.photo-admin-grid{grid-template-columns:1fr}.calendar-cell{min-height:65px;text-align:center;padding:4px;font-size:.8rem}.calendar-cell .calendar-event{padding:0;min-height:24px;line-height:24px;background:none;margin:0}.calendar-event .calendar-event-title{display:none}.calendar-event .calendar-dot{display:block;color:var(--link);font-size:1rem}.calendar-agenda{margin-top:28px}.agenda-item .outline{min-height:48px}.agenda-item h3{overflow-wrap:normal}.calendar-heading a{min-width:44px;min-height:44px;text-align:center}.toolbar a{padding:8px 0}.home-connect:has(.socials:empty){grid-template-columns:1fr}.admin-nav{gap:4px 15px}.admin-nav a{padding:8px 0}.account-tools .form-grid{display:block}.ticket-tier>div{min-width:0}.ticket-tier label{flex-shrink:0}.page-top>h1{overflow-wrap:normal}.account-links a{padding:6px 0}}

.account-heading p,.account-heading strong{overflow-wrap:anywhere}

/* Revision 04: Ace's logo-led poster composition. No external type or imagery. */
:root{--ink:#f6f5f1;--red:#ec1c24;--link:#ff696f;--surface:#141414}
.button{background:var(--red);color:#000;border-radius:0}.outline{border-radius:0}a,button{touch-action:manipulation}
.home-hero.ace-cover{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:4% 7%;align-items:center;padding-top:55px;padding-bottom:0;position:relative;isolation:isolate;background-image:repeating-linear-gradient(0deg,transparent,transparent 7px,#ffffff02 8px);min-height:630px}
.ace-cover .hero-identity{align-items:flex-start;justify-content:center;padding:0;min-width:0}.ace-cover .eyebrow{letter-spacing:.14em;color:var(--link);margin:0 0 30px;font-size:.7rem}
.ace-cover h1{font-size:clamp(6rem,12vw,11rem);line-height:.82;letter-spacing:-.075em;margin:0 0 28px;overflow-wrap:normal;font-weight:900}.ace-cover h1>span{display:block}.ace-cover h1 .hero-name{font-size:clamp(1.2rem,2.45vw,2.3rem);letter-spacing:.045em;line-height:1.3;margin-top:12px;font-weight:700}
.ace-cover .genres{font-size:clamp(.82rem,1.4vw,1.1rem);max-width:none;text-align:left;letter-spacing:.025em;margin:0 0 14px;color:#eee}.hero-context{font-size:clamp(1.1rem,1.8vw,1.5rem);max-width:36ch;margin:0 0 28px;line-height:1.4;color:var(--muted)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-actions a{font-size:.8rem;min-height:50px}
.hero-sleeve{position:relative;padding:25px 30px;background:#000;border:1px solid #363636;border-left:9px solid var(--red);transform:rotate(3deg);width:100%;max-width:425px;justify-self:end;box-shadow:12px 12px 0 #181818}.hero-sleeve .hero-logo{width:100%;height:355px;max-width:100%;object-fit:contain;margin:0 auto}.sleeve-edge{position:absolute;left:8px;top:25px;writing-mode:vertical-rl;font:10px monospace;color:#9b9b9b;letter-spacing:.15em}.sleeve-caption{display:block;font:9px monospace;letter-spacing:.13em;color:#aaa;text-align:center;margin-top:15px}
.hero-bottom{grid-column:1/-1;width:100%;display:flex;justify-content:space-between;gap:20px;border-top:1px solid #3a3a3a;margin-top:40px;padding:20px 0;font:11px/1.4 monospace;text-transform:uppercase;letter-spacing:.06em;color:#bababa}.hero-bottom a{color:var(--ink)}.genre-divider{display:flex;justify-content:center;align-items:center;gap:clamp(15px,4vw,65px);background:var(--red);color:#000;padding:17px 5%;font-size:clamp(.72rem,1.3vw,1.1rem);font-weight:800;letter-spacing:.07em;border-block:1px solid #ec1c24}.genre-divider i{font-size:1.3em;font-style:normal}.selection-start{scroll-margin-top:20px}
.home-mixes,.home-events,.home-videos,.home-photos{padding-top:64px;padding-bottom:64px;border-bottom:1px solid #252525}.section-heading .eyebrow{margin-bottom:12px;color:var(--link)}.section-heading h2{font-size:clamp(1.8rem,3vw,3rem)}
.featured-event{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7%;align-items:center;background:#111;border:1px solid #303030;padding:28px}.featured-poster{display:block;min-width:0;background:#080808}.featured-poster img{width:100%;height:auto;max-height:510px;aspect-ratio:4/5;object-fit:contain}.featured-copy h3{font-size:clamp(2rem,3.7vw,3.6rem);margin-bottom:20px}.featured-copy .eyebrow{color:var(--link);font-size:.72rem}.featured-copy .feature-date{font-size:.95rem;color:var(--ink);margin-bottom:24px}.feature-date span{display:block;color:var(--muted);margin-top:8px}.featured-copy .feature-place{font-size:1rem}.featured-copy .button{margin-top:12px}.secondary-events{margin-top:38px}.ticket-badge{display:table;font-size:.66rem;line-height:1.4;text-transform:uppercase;letter-spacing:.065em;border-left:2px solid var(--red);padding:4px 8px;color:#e5e5e5;margin:12px 0 18px}.event-thumb img,.media-cover>img{object-fit:contain}.event-thumb:hover>img,.media-cover:hover>img{transform:none}.event-thumb{border:1px solid #272727}.event-card h3{line-height:1.25}.media-cover{border-bottom:4px solid var(--red)}.release-date{font-family:monospace;font-size:.69rem!important;color:#aaa}.media-card .listen-source{font-size:.81rem}.media-card .load-embed{font-size:.8rem;max-width:100%}.media-cover img{background:#080808}.video-card .media-cover>img{object-fit:contain}
.event-announcement{display:grid;grid-template-columns:1fr 2fr;gap:6%;border-bottom:1px solid var(--line);padding-block:55px}.event-announcement h2{font-size:clamp(1.7rem,3.1vw,2.7rem);max-width:18ch}.event-announcement p{max-width:48ch}.event-announcement .eyebrow{color:var(--link)}.music-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:9%;align-items:center;border-bottom:1px solid var(--line)}.music-intro>div{min-width:0}.music-intro h2{font-size:clamp(2rem,3.5vw,3.2rem)}.music-intro p{max-width:45ch}.mix-art{background:#171717;border:1px solid #3a3a3a;border-top:9px solid var(--red);aspect-ratio:1.15;padding:28px;display:flex;flex-direction:column;justify-content:space-between;max-width:420px}.mix-art>span{font-size:clamp(3.5rem,6vw,6rem);font-weight:900;letter-spacing:-.06em;line-height:.9}.mix-art small{font:12px/1.5 monospace;color:var(--link);letter-spacing:.04em;text-align:right}
.home-about{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9%;border-block:1px solid #333;background:#111}.home-about h2{font-size:clamp(2rem,4vw,3.7rem);white-space:pre-line;max-width:13ch}.home-about .eyebrow{color:var(--link)}.about-copy{font-size:clamp(1rem,1.6vw,1.3rem);color:#ddd;line-height:1.7}.home-about .actions{gap:20px}.home-owner-photo{grid-column:1/-1}.home-owner-photo img{max-height:560px;object-fit:contain}.home-connect{padding-block:60px;grid-template-columns:1fr 1fr;gap:9%}.home-connect h2{font-size:clamp(2rem,3.6vw,3.3rem);margin-bottom:25px}.home-connect .booking-link{font-size:clamp(1.2rem,2.5vw,2rem);line-height:1.3;max-width:25ch}.home-connect .socials:empty{display:none}.home-connect:has(.socials:empty){grid-template-columns:1fr 1fr}.home-connect .socials{row-gap:18px}
.footer-wordmark{grid-column:1/-1;font-size:clamp(1.6rem,5.3vw,5.5rem);font-weight:900;line-height:1.1;letter-spacing:-.045em;display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #353535;padding:5px 0 28px;overflow-wrap:normal}.footer-wordmark span{color:var(--red)}footer{padding-top:38px}.footer-links{line-height:1.8}footer .footer-brand img{height:100px;width:74px}.local-review-note{background:#2b1214;padding:12px 5%;color:#f6c7c9;font-size:.8rem}.preview-notice{padding:18px;border:1px solid var(--red);margin:0 0 25px}.preview-notice a{margin-right:20px;text-decoration:underline}.share-event{margin:24px 0;display:flex;gap:18px;align-items:center;flex-wrap:wrap}.share-status{font-size:.78rem;color:var(--muted)}.dashboard-actions{display:flex;gap:15px;flex-wrap:wrap;margin:25px 0}.dashboard-content{display:grid;grid-template-columns:1.4fr 1fr;gap:35px}.dashboard-content>section{min-width:0}.dashboard-content h2{margin-top:15px}.admin-quickrow{border-top:1px solid #333;padding:20px 0;display:block}.admin-quickrow h3{margin-bottom:8px;font-size:1.1rem}.admin-quickrow p{font-size:.8rem;margin-bottom:0}.account-card .account-dates{font-size:.78rem}.archive-tools{margin-top:32px;border-top:1px solid var(--line);padding-top:24px}.editor-toolbar{display:flex;gap:15px;flex-wrap:wrap;margin:25px 0}.audit-entry{border-bottom:1px solid var(--line);padding:22px 0}.audit-entry h2{font-size:1.1rem;margin:10px 0}.audit-entry p{font-size:.8rem}.audit-entry pre{color:var(--muted);font-size:.78rem}.editor-form input[type=file]{max-width:100%}.editor-form .field{overflow-wrap:anywhere}.account-nav-link{font-size:.76rem}
@media(min-width:1600px){.home-hero.ace-cover{padding-top:75px;min-height:690px}.hero-sleeve .hero-logo{height:400px}}
@media(max-width:1024px){.home-hero.ace-cover{min-height:570px;gap:5%;padding-top:45px}.hero-sleeve{padding:25px;box-shadow:8px 8px 0 #181818}.hero-sleeve .hero-logo{height:290px}.ace-cover h1{font-size:clamp(6rem,14vw,9rem)}.hero-actions{gap:10px}.hero-actions a{padding:10px 14px;font-size:.76rem}.featured-event{gap:5%;padding:22px}.dashboard-content{grid-template-columns:1fr}.event-announcement{grid-template-columns:1fr 2fr}}
@media(max-width:680px){.home-hero.ace-cover{grid-template-columns:1fr;min-height:0;gap:0;padding-top:32px}.ace-cover .hero-identity{align-items:flex-start;padding:0}.ace-cover .eyebrow{margin-bottom:22px;font-size:.64rem}.ace-cover h1{font-size:clamp(5rem,23vw,8rem);margin-bottom:20px}.ace-cover h1 .hero-name{font-size:clamp(1.1rem,4.4vw,1.7rem);letter-spacing:.04em}.ace-cover .genres{font-size:.8rem}.hero-context{font-size:1.08rem;margin-bottom:22px}.hero-actions{gap:10px;width:100%}.hero-actions a{flex:1;padding:11px 10px;font-size:.74rem;line-height:1.35;text-align:center}.hero-sleeve{margin:32px auto 0;justify-self:center;transform:rotate(2deg);max-width:280px;padding:20px;border-left-width:7px;box-shadow:7px 7px 0 #181818}.hero-sleeve .hero-logo{height:240px}.sleeve-caption{font-size:8px;margin-top:8px}.sleeve-edge{font-size:8px;left:5px}.hero-bottom{margin-top:30px;padding:18px 0;font-size:9px}.genre-divider{justify-content:space-between;gap:8px;padding:13px 6%;font-size:.65rem;letter-spacing:.01em}.genre-divider i{font-size:.85rem}.genre-divider span:last-child,.genre-divider i:last-of-type{display:none}.section-heading h2{font-size:1.85rem}.home-mixes,.home-events,.home-videos,.home-photos{padding-top:42px;padding-bottom:42px}.featured-event{grid-template-columns:1fr;padding:18px;gap:24px}.featured-poster img{max-height:440px}.featured-copy h3{font-size:2rem}.featured-copy .feature-date{font-size:.87rem;margin-bottom:16px}.feature-date span{display:inline;margin-left:10px}.featured-copy .button{width:100%}.secondary-events{margin-top:30px}.event-thumb img{aspect-ratio:4/5}.event-announcement{grid-template-columns:1fr;gap:10px;padding-block:36px}.event-announcement>.eyebrow{margin:0 0 14px}.event-announcement h2{font-size:2rem}.music-intro{grid-template-columns:1fr;gap:30px;padding-block:40px}.mix-art{max-width:none;aspect-ratio:1.5;padding:25px}.mix-art>span{font-size:3.8rem}.mix-art small{font-size:10px}.home-about{grid-template-columns:1fr;gap:16px;padding-block:42px}.home-about h2{font-size:2.3rem;max-width:16ch}.home-connect,.home-connect:has(.socials:empty){grid-template-columns:1fr;padding-block:40px;gap:32px}.home-connect h2{font-size:2.3rem}.home-connect .booking-link{font-size:1.45rem;max-width:none;width:100%;gap:25px}.footer-wordmark{font-size:clamp(1.35rem,5.7vw,2.5rem);padding-bottom:24px}.account-card .inline-form{align-items:stretch;flex-direction:column}.account-card .inline-form label{width:100%}.stats strong{font-size:1.5rem}.stats span{font-size:.74rem}.dashboard-actions a{flex:1;text-align:center;min-width:130px}.admin-nav{font-size:.73rem}.share-event button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
