@charset "UTF-8";
:root{--accent:#cf814d;--bg:#111;--text:#f0ede8;--muted:#b5b0a9;--line:#ffffff25;--panel:#181817;--radius:18px;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--text);background:#111 url('/assets/ladrillo.jpg') center top/1100px auto fixed;font:16px/1.65 'Segoe UI',Arial,sans-serif}body:before{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(90deg,#09090965,#09090915,#09090965);pointer-events:none}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:550;letter-spacing:-.045em;line-height:1.13}h1{font-size:clamp(44px,5.5vw,72px)}h2{font-size:clamp(32px,3.7vw,48px)}h3{font-size:23px}p{color:var(--muted)}.wrap{width:min(var(--max),90%);margin-inline:auto}.section{padding-block:80px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:32px}.section-head>div{max-width:650px}.section-head p{margin-top:17px;max-width:590px;font-size:15px}.quiet{color:var(--accent);font-size:13px;letter-spacing:.02em}.notice{background:#16130fee;color:#b5a697;text-align:center;font-size:11px;padding:7px 20px;border-bottom:1px solid #30291f}.header{position:sticky;top:0;z-index:30;background:#10100ff2;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.header-inner{min-height:88px;display:flex;align-items:center;gap:35px;justify-content:space-between}.brand{flex-shrink:0}.brand img{width:228px;height:auto}.nav{display:flex;gap:27px;align-items:center}.nav a{font-size:13px;color:#d6d0c8}.nav a:hover{color:var(--accent)}.nav-toggle{display:none;background:none;border:1px solid var(--line);border-radius:8px;color:white;padding:8px 13px}.hero{padding-top:36px}.hero-frame{position:relative;min-height:610px;border:1px solid #ffffff20;border-radius:20px;overflow:hidden;background:#151515}.hero-image{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 42%}.hero-shade{position:absolute;inset:0;background:linear-gradient(0deg,#0a0a0aee,transparent 85%),linear-gradient(90deg,#080808a8,transparent 75%)}.hero-content{position:relative;z-index:1;max-width:610px;padding:270px 48px 46px}.hero-content .quiet{margin-bottom:12px;color:#e4b18a}.hero-content h1{font-weight:500}.hero-content>p:not(.quiet){color:#e0d8cf;max-width:485px;margin-top:20px;font-size:17px;line-height:1.65}.btn{display:inline-flex;align-items:center;gap:25px;border-radius:8px;background:var(--accent);border:1px solid var(--accent);color:#18120d;padding:12px 19px;font-size:13px;font-weight:600;min-height:47px}.btn:hover{filter:brightness(1.13)}.btn.subtle{background:#ffffff08;border-color:var(--line);color:#eee}.hero-content .btn{margin-top:25px}.hero-caption{position:absolute;right:28px;bottom:24px;color:#cdc6bc;font-size:11px;letter-spacing:.025em;z-index:2}.next-date{display:flex;gap:25px;align-items:center;border:1px solid #a8774c65;background:#201b16ea;border-radius:12px;padding:22px 28px;margin-top:20px}.date-badge{display:flex;align-items:center;gap:13px;color:var(--accent);border-right:1px solid #a8774c65;padding-right:26px;flex-shrink:0}.date-badge strong{font-size:42px;line-height:1;font-weight:500;letter-spacing:-.04em}.date-badge span{font-size:12px;line-height:1.5}.next-date h2{font-size:18px;letter-spacing:-.02em}.next-date p{font-size:12px;margin-top:4px}.next-date>a{margin-left:auto;white-space:nowrap;font-size:13px;color:var(--accent)}.band-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.member{padding:0;border:0;text-align:left;background:none;color:inherit;min-width:0}.member-photo{overflow:hidden;border-radius:12px;aspect-ratio:.78;background:#222}.member-photo img{width:100%;height:100%;object-fit:cover;object-position:top;filter:grayscale(1);transition:transform .4s,filter .4s}.member:hover img{transform:scale(1.04);filter:grayscale(0)}.member h3{font-size:17px;letter-spacing:-.035em;margin-top:15px;line-height:1.25}.member p{font-size:11px;margin-top:5px;color:var(--accent)}.member .member-link{display:block;margin-top:12px;font-size:11px;color:#a9a299}.story{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;align-items:center;margin-top:65px;padding-top:40px;border-top:1px solid var(--line)}.story figure{overflow:hidden;border-radius:14px}.story img{width:100%;aspect-ratio:1.65;object-fit:cover}.story h3{font-size:29px;margin-bottom:18px}.body-copy p+p{margin-top:16px}.body-copy p{font-size:15px}.gallery-section{background:#0e0e0ede;border-block:1px solid #ffffff15}.filters{display:flex;gap:6px;flex-shrink:0;border:1px solid var(--line);border-radius:30px;padding:4px;background:#181818}.filters button{border:0;border-radius:25px;background:none;color:#b8b0a7;padding:8px 16px;font-size:12px}.filters button[aria-pressed=true]{background:#cf814d;color:#17120e;background:var(--accent)}.media-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:205px;gap:15px}.media-tile{position:relative;overflow:hidden;border:0;border-radius:13px;background:#262321;padding:0;text-align:left;color:#fff;min-width:0}.media-tile:first-child{grid-column:span 2;grid-row:span 2}.media-tile:nth-child(6){grid-column:span 2}.media-tile img{width:100%;height:100%;object-fit:cover;object-position:center 20%;transition:transform .5s}.media-tile:first-child img{object-position:center}.media-tile:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#000c,transparent 60%)}.media-tile:hover img{transform:scale(1.045)}.tile-caption{position:absolute;bottom:17px;left:19px;right:15px;z-index:1;font-size:13px;line-height:1.4}.tile-caption small{display:block;font-size:10px;color:#c2b8ac;margin-top:4px}.tile-icon{position:absolute;top:14px;right:14px;z-index:2;display:grid;place-items:center;width:31px;height:31px;border:1px solid #ffffff70;border-radius:50%;background:#1118;font-size:15px}.video-placeholder{height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#483427,#191614);font-size:40px}.empty{padding:35px;border:1px dashed #ffffff30;border-radius:12px;color:#aaa;font-size:14px}.events-upcoming{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:24px}.event-card{background:#191817f0;border:1px solid #66513f70;border-radius:16px;overflow:hidden;display:grid;grid-template-columns:.75fr 1.25fr;min-width:0}.event-card:only-child{max-width:850px;grid-template-columns:.8fr 1.5fr}.event-art{position:relative;background:#25211d;border:0;padding:0;width:100%;color:var(--text);overflow:hidden}.event-art>img{width:100%;height:100%;max-height:450px;object-fit:contain;padding:15px}.event-placeholder{display:flex;flex-direction:column;justify-content:space-between;text-align:left;padding:27px;background:linear-gradient(145deg,#422f20d9,#131211eb),url('/assets/ladrillo.jpg') center/650px;min-height:290px;height:100%}.event-placeholder strong{font-size:83px;font-weight:350;line-height:1;color:#dfb18b;letter-spacing:-.07em}.event-placeholder>span{font-size:13px;color:#c4b4a5}.event-placeholder img{width:155px;margin-top:25px}.event-placeholder small{font-size:10px;margin-top:22px;color:#b8a898}.event-details{padding:27px;min-width:0}.event-details .quiet{font-size:11px}.event-details h3{font-size:23px;margin:13px 0 17px;line-height:1.25}.event-location{font-size:12px;margin-bottom:15px}.event-description{font-size:13px}.event-note{font-size:11px;color:#a5988a;margin-top:17px}.event-details a{font-size:12px;color:var(--accent);margin-top:20px;display:inline-block}.subheading{font-size:22px;margin-top:40px;margin-bottom:22px}.past-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.past-card{border-radius:14px;border:1px solid var(--line);overflow:hidden;background:#151514ef}.past-card:only-child{display:grid;grid-template-columns:230px 1fr;grid-column:span 3;max-width:850px}.poster-button{border:0;position:relative;background:#24201c;padding:20px;cursor:zoom-in}.poster-button img{width:100%;height:315px;object-fit:contain;transition:transform .3s}.poster-button:hover img{transform:scale(1.025)}.poster-button .tile-icon{right:10px;top:10px}.past-card .event-details{align-self:center}.social-section{padding-block:65px;background:#1b1612ed;border-block:1px solid #90634255}.social-layout{display:grid;grid-template-columns:.95fr 1fr;gap:65px;align-items:center}.social-image{position:relative;overflow:hidden;border-radius:14px}.social-image img{aspect-ratio:1.25;object-fit:cover;object-position:64% center;filter:grayscale(1)}.social-layout h2{margin:13px 0 25px}.social-layout .btn{margin-top:25px}.contact-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:85px}.contact-copy h2{margin-bottom:22px}.contact-copy>p{font-size:15px;max-width:400px}.email-address{display:inline-flex;gap:20px;font-size:clamp(20px,2.2vw,29px);letter-spacing:-.04em;margin:26px 0 10px;word-break:break-word}.email-address span{color:var(--accent)}.copy-btn{display:block;background:none;color:var(--accent);border:0;border-bottom:1px solid #9c71544d;padding:4px 0;font-size:11px}.social-links{display:flex;gap:12px;margin-top:38px}.social-links a{font-size:12px;border:1px solid var(--line);border-radius:30px;padding:9px 18px}.contact-form{padding:30px;background:#191817f0;border:1px solid var(--line);border-radius:16px}.contact-form h3{font-size:23px;margin-bottom:25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact-form label{display:block;color:#c8c0b7;font-size:12px;margin-bottom:16px}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;background:#111110;color:#eee;border:1px solid #ffffff28;border-radius:7px;padding:11px;margin-top:7px;min-width:0}.contact-form textarea{resize:vertical;min-height:110px}.contact-form .form-note{font-size:11px;margin-top:16px;line-height:1.5}.footer{background:#0c0c0cf0;border-top:1px solid var(--line);padding:30px 0}.footer-inner{display:flex;align-items:center;gap:30px;justify-content:space-between}.footer img{width:180px}.footer p,.footer a{font-size:11px}.footer-actions{display:flex;gap:24px}.lightbox{width:min(1200px,96vw);max-width:96vw;height:min(850px,94dvh);max-height:94dvh;background:#0c0c0c;color:#fff;border:1px solid #ffffff30;border-radius:14px;padding:22px;overflow:hidden}.lightbox::backdrop,.profile-dialog::backdrop{background:#000e;backdrop-filter:blur(6px)}.dialog-close{position:absolute;right:15px;top:15px;z-index:5;width:38px;height:38px;border:1px solid #ffffff55;border-radius:50%;background:#111d;color:#fff;font-size:26px;line-height:1}.lightbox-content{height:calc(100% - 85px);display:flex;align-items:center;justify-content:center;overflow:hidden}.lightbox-content img,.lightbox-content video{width:100%;height:100%;object-fit:contain}.lightbox-content iframe{width:100%;aspect-ratio:16/9;max-height:100%;border:0}.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 5px}.lightbox-title{color:#fff;font-size:14px}.lightbox-caption{font-size:11px;color:#aaa}.lightbox-controls{display:flex;align-items:center;gap:14px;font-size:12px}.lightbox-controls button{border:1px solid var(--line);background:#242322;border-radius:50%;color:white;width:35px;height:35px}.profile-dialog{width:min(790px,94vw);max-height:90dvh;border:1px solid #7f5c3d70;border-radius:16px;padding:0;background:#171615;color:#eee;overflow:auto}.profile-content{display:grid;grid-template-columns:.85fr 1fr}.profile-content img{width:100%;height:100%;min-height:380px;object-fit:cover;object-position:top}.profile-copy{padding:65px 35px 35px}.profile-copy h2{font-size:32px;margin:12px 0 25px}.profile-copy p:last-child{font-size:15px;line-height:1.8}.skip{position:fixed;top:-100px;left:20px;z-index:100;padding:10px 15px;background:#eee;color:#111}.skip:focus{top:12px}.loading{min-height:60vh;display:grid;align-content:center;justify-content:center;gap:20px;padding:40px}.loading img{width:250px}.loading p{font-size:14px}.preview-banner{padding:12px;text-align:center;font-size:12px;background:#885b24;color:#fff}.preview-banner a{text-decoration:underline;margin-left:15px}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:#eee;color:#222;padding:12px 20px;border-radius:9px;font-size:13px;z-index:100;display:none}#toast.show{display:block}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}
@media(max-width:1050px){.band-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 20px}.member-photo{aspect-ratio:1}.nav{gap:17px}.brand img{width:195px}.header-inner{gap:20px}.hero-frame{min-height:550px}.hero-content{padding-top:240px}.story,.social-layout{gap:40px}.contact-layout{gap:40px}.media-grid{grid-auto-rows:180px}.events-upcoming{grid-template-columns:1fr}.past-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.past-card:only-child{grid-column:span 2}.contact-form{padding:24px}.event-card:only-child{max-width:none}}
@media(max-width:720px){html{scroll-padding-top:90px}.wrap{width:89%}.section{padding-block:50px}.header-inner{min-height:76px;flex-wrap:wrap;padding-block:13px}.brand img{width:195px}.nav-toggle{display:block;font-size:12px}.nav{display:none;width:100%;padding-block:15px;justify-content:space-between;gap:12px;flex-wrap:wrap}.nav.open{display:flex}.nav a{font-size:12px}.hero{padding-top:20px}.hero-frame{min-height:590px;border-radius:14px}.hero-image{object-position:49% center}.hero-shade{background:linear-gradient(0deg,#080808f0 5%,#080808b0 40%,transparent 100%)}.hero-content{padding:325px 24px 30px}.hero-content h1{font-size:44px;font-weight:500}.hero-content>p:not(.quiet){font-size:14px;line-height:1.7}.hero-content .quiet{font-size:12px}.hero-caption{display:none}.hero-content .btn{margin-top:20px}.next-date{gap:16px;padding:20px;flex-wrap:wrap;align-items:flex-start}.date-badge{padding-right:16px;gap:9px}.date-badge strong{font-size:36px}.date-badge span{font-size:10px}.next-date>div:nth-child(2){flex:1;min-width:150px}.next-date h2{font-size:16px}.next-date p{font-size:11px}.next-date>a{margin-left:0}.section-head{display:block;margin-bottom:25px}.section-head p{font-size:14px}.band-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 16px}.member h3{font-size:17px}.member-photo{aspect-ratio:.85}.story{grid-template-columns:1fr;gap:25px;margin-top:45px;padding-top:30px}.story h3{font-size:27px}.body-copy p{font-size:14px}.filters{margin-top:22px;width:max-content}.filters button{padding:7px 14px;font-size:11px}.media-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:185px;gap:12px}.media-tile:first-child{grid-column:span 2;grid-row:span 1}.media-tile:nth-child(6){grid-column:span 1}.tile-caption{font-size:11px;bottom:13px;left:13px}.tile-caption small{font-size:9px}.tile-icon{top:10px;right:10px;width:27px;height:27px}.event-card,.event-card:only-child{grid-template-columns:1fr}.event-placeholder{min-height:200px;padding:24px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:15px}.event-placeholder strong{font-size:70px;grid-column:1}.event-placeholder img{width:145px;margin-top:0;grid-column:2;grid-row:1/3}.event-placeholder>span{grid-column:1}.event-placeholder small{margin:0;grid-column:1/3}.event-art>img{height:330px}.event-details{padding:24px}.event-details h3{font-size:23px}.past-grid{grid-template-columns:1fr}.past-card:only-child{display:block;grid-column:auto}.poster-button{width:100%}.poster-button img{height:330px}.subheading{font-size:21px;margin-top:32px}.social-layout{grid-template-columns:1fr;gap:30px}.social-image img{width:100%;aspect-ratio:1.65}.contact-layout{grid-template-columns:1fr;gap:35px}.contact-copy>p{max-width:none}.contact-form{padding:24px}.contact-form h3{font-size:22px}.contact-copy .social-links{margin-top:25px}.footer-inner{flex-wrap:wrap;gap:24px}.footer p{display:none}.footer img{width:170px}.footer-actions{gap:18px}.lightbox{padding:10px;height:86dvh;border-radius:10px}.lightbox-bottom{padding-inline:5px}.lightbox-title{font-size:12px}.lightbox-caption{font-size:10px}.lightbox-controls{gap:8px}.lightbox-controls button{width:30px;height:30px}.profile-content{grid-template-columns:1fr}.profile-content img{min-height:0;height:250px;object-position:center 15%}.profile-copy{padding:25px}.profile-copy h2{font-size:29px}}
@media(max-width:360px){.brand img{width:170px}.nav-toggle{padding:7px 10px}.hero-content{padding-inline:20px}.hero-content h1{font-size:38px}.form-row{grid-template-columns:1fr}.event-placeholder img{width:115px}.lightbox-controls{gap:5px}.lightbox-count{font-size:10px}}
.events-upcoming{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}
.upcoming-poster{min-width:0}
.upcoming-poster .event-art{display:block;aspect-ratio:2/3;border:1px solid #ffffff28;border-radius:13px;overflow:hidden;cursor:zoom-in;transition:transform .3s,border-color .3s,box-shadow .3s}
.upcoming-poster .event-art:hover{transform:translateY(-5px);border-color:var(--accent);box-shadow:0 15px 35px #0006}
.upcoming-poster .event-art>img{width:100%;height:100%;max-height:none;padding:0;object-fit:contain}
.upcoming-poster .event-placeholder{min-height:0;height:100%;padding:25px}
.concert-caption{padding:20px 2px 0}
.concert-caption>.quiet{font-size:12px;min-height:18px}
.concert-caption h3{font-size:22px;line-height:1.3;margin:9px 0}
.concert-place{font-size:12px}
.concert-more{margin-top:16px;border-top:1px solid var(--line);font-size:13px}
.concert-more summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:12px 0;color:#c7b8a9;font-size:12px}
.concert-more summary::-webkit-details-marker{display:none}
.concert-more summary span{color:var(--accent);font-size:20px;line-height:1}
.concert-more[open] summary span{transform:rotate(45deg)}
.concert-more p{font-size:12px;line-height:1.7;margin-bottom:12px}
.concert-more a{display:inline-block;margin:6px 0 12px;color:var(--accent);font-size:12px}
@media(max-width:720px){.events-upcoming{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.concert-caption{padding-top:14px}.concert-caption h3{font-size:17px}.concert-caption>.quiet{font-size:10px}.concert-place{font-size:11px}.concert-more summary{font-size:11px}.upcoming-poster .event-placeholder{display:flex;padding:15px}.upcoming-poster .event-placeholder strong{font-size:54px}.upcoming-poster .event-placeholder img{width:100%}.concert-more p{font-size:11px}}
.hero.wrap{width:100%;max-width:none;padding-top:0}
.hero-frame{border:0;border-radius:0;min-height:650px}
.hero-content{max-width:calc(610px + max(5vw, (100vw - var(--max))/2));padding-left:max(5vw,calc((100vw - var(--max))/2));padding-top:290px;padding-bottom:50px}
.hero-caption{right:max(5vw,calc((100vw - var(--max))/2))}
.hero>.next-date{width:min(var(--max),90%);margin-inline:auto}
@media(max-width:1050px){.hero-frame{min-height:580px}.hero-content{padding-top:250px}}
@media(max-width:720px){.hero.wrap{width:100%;padding-top:0}.hero-frame{min-height:590px;border-radius:0}.hero-content{max-width:610px;padding:325px 5.5% 35px}.hero>.next-date{width:89%}}
@media(max-width:360px){.hero-content{padding-inline:5.5%}}
.social-community{padding-top:65px;margin-top:55px;border-top:1px solid #a97d5545}
.social-community .section-head{margin-bottom:25px}
.social-community .section-head h3{font-size:29px;font-weight:500;letter-spacing:-.035em}
.social-community .section-head p{font-size:14px;max-width:720px;line-height:1.7}
.partners-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.partner-card{min-width:0}
.partner-mark{position:relative;display:grid;place-items:center;background:#e8e2d8;border:1px solid #f4efe644;border-radius:12px;height:130px;transition:transform .3s,border-color .3s}
.partner-mark img{height:73px;width:85px;object-fit:contain}
.partner-mark>span{position:absolute;top:10px;right:11px;font-size:9px;color:#928573;border:1px solid #a89d8b66;border-radius:4px;padding:2px 6px}
.partner-card:hover .partner-mark{transform:translateY(-3px);border-color:var(--accent)}
.partner-card h4{margin:15px 0 4px;font-size:15px;font-weight:500;line-height:1.4;color:#e9e0d5}
.partner-card>p{font-size:11px;color:#a99d8e}
.solidarity-actions{margin-top:60px}
.actions-list{border-top:1px solid #a97d5545}
.solidarity-action{display:grid;grid-template-columns:145px 115px 1fr;gap:30px;align-items:start;padding:30px 0;border-bottom:1px solid #a97d5545}
.action-date{font-size:12px;padding-top:5px;color:#c3ab95;line-height:1.6}
.action-date small{display:block;margin-top:12px;width:max-content;border:1px solid #b3916e55;border-radius:4px;padding:2px 8px;font-size:10px;color:#bda58e}
.action-picture{height:150px;overflow:hidden;border-radius:8px;background:#24201b}
.action-picture img{width:100%;height:100%;object-fit:contain}
.action-copy .quiet{font-size:11px}
.action-copy h4{font-size:24px;font-weight:500;letter-spacing:-.035em;line-height:1.3;margin:8px 0}
.action-copy .action-place{font-size:11px;color:#baaa98;margin-bottom:13px}
.action-copy>p:not(.quiet):not(.action-place){font-size:14px;line-height:1.8;max-width:750px}
.action-copy .action-result{border-left:2px solid #a77c5255;padding-left:13px;margin-top:15px;color:#a99c8d;font-size:12px!important}
.action-copy>a{display:inline-block;margin-top:17px;color:var(--accent);font-size:12px}
@media(max-width:720px){.social-community{margin-top:40px;padding-top:35px}.partners-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 16px}.partner-mark{height:112px}.partner-mark img{height:65px;width:74px}.partner-card h4{font-size:14px}.social-community .section-head h3{font-size:25px}.social-community .section-head p{font-size:13px}.solidarity-actions{margin-top:40px}.solidarity-action{grid-template-columns:85px 1fr;gap:15px 20px;padding:25px 0}.action-date{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;padding:0}.action-date small{margin:0}.action-picture{height:120px}.action-copy h4{font-size:21px}.action-copy>p:not(.quiet):not(.action-place){font-size:13px}.action-copy .quiet{font-size:10px}.action-copy .action-result{font-size:11px!important}}
@media(max-width:360px){.solidarity-action{grid-template-columns:1fr}.action-picture{width:100%;height:155px}.action-copy h4{font-size:22px}}
.sample-badge{position:absolute;top:14px;left:14px;z-index:2;border:1px solid #ffffff40;border-radius:4px;padding:3px 7px;background:#1119;color:#e7d6c4;font-size:9px;letter-spacing:.03em}
/* Ritmo de página: ladrillo para la banda, fondo limpio para imágenes,
   un tono más cálido para conciertos y obra social, y un cierre oscuro. */
.hero{background:#10100f;padding-bottom:34px}
#banda,#conciertos,#contacto{width:100%;max-width:none;padding-inline:max(5vw,calc((100vw - var(--max))/2));padding-block:104px}
#banda{background:linear-gradient(180deg,#0d0d0dbd,#11111155 48%,#111111c7)}
.section-head{margin-bottom:42px}
.section-head h2:before,.contact-copy h2:before{content:"";display:block;width:46px;height:3px;background:var(--accent);margin-bottom:22px;border-radius:2px}
.section-head p{margin-top:19px;line-height:1.8}
.story{margin-top:64px;padding:38px;gap:45px;border:0;border-left:3px solid var(--accent);background:#121313f2;box-shadow:0 15px 45px #0002;align-items:center}
.story figure{border-radius:8px}
.story h3{font-weight:500}
.story .body-copy p{color:#c0bab2;line-height:1.85}
.gallery-section{background:#1a1b1b;padding-block:104px;border:0;position:relative}
.gallery-section:before,.gallery-section:after{content:"";position:absolute;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#ffffff27,transparent)}
.gallery-section:before{top:0}.gallery-section:after{bottom:0}
.gallery-section .filters{background:#101111;border-color:#ffffff24}
.media-grid{gap:18px}
#conciertos{background:linear-gradient(180deg,#161411e8,#201b1599 48%,#171411ed)}
#conciertos .subheading{display:flex;align-items:center;gap:22px;margin-top:44px;margin-bottom:28px;font-size:25px;font-weight:500}
#conciertos .subheading:after{content:"";height:1px;background:linear-gradient(90deg,#a97d555c,transparent);flex:1}
#conciertos .past-grid+.subheading{margin-top:65px}
#conciertos .events-upcoming+.subheading{margin-top:78px}
.past-card{background:#141311;border-color:#ffffff1c}
.social-section{position:relative;padding-block:98px;background:#241b15;border:0}
.social-section:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#b8885b80,transparent)}
.social-layout{gap:70px}
.social-image{border-radius:10px}
.social-layout h2{margin-top:17px}
.social-community{margin-top:65px;padding-top:48px;border-color:#b6906a40}
.social-community .section-head{margin-bottom:30px}
.social-community .section-head h3{font-weight:500}
.partner-mark{background:#e9e3d9}
.solidarity-actions{margin-top:65px}
.solidarity-action{padding-block:34px}
#contacto{background:#101111;border-top:1px solid #ffffff15}
.contact-copy h2{margin-bottom:25px}
.contact-form{background:#1b1c1b;border-color:#ffffff24;box-shadow:0 12px 45px #0002}
.contact-form h3{font-weight:500}
.footer{background:#0b0c0c}
@media(max-width:1050px){.story{padding:30px;gap:32px}.social-layout{gap:40px}}
@media(max-width:720px){
  .hero{padding-bottom:25px}
  #banda,#conciertos,#contacto{padding-inline:5.5%;padding-block:65px}
  .section-head{margin-bottom:30px}
  .section-head h2:before,.contact-copy h2:before{width:35px;margin-bottom:18px}
  .section-head p{margin-top:16px}
  .story{margin-top:42px;padding:24px;gap:25px;border-left-width:2px}
  .story .body-copy p{font-size:14px}
  .gallery-section{padding-block:65px}
  .media-grid{gap:12px}
  #conciertos .subheading{font-size:22px;gap:16px;margin-top:32px;margin-bottom:24px}
  #conciertos .events-upcoming+.subheading{margin-top:52px}
  .social-section{padding-block:65px}
  .social-layout{gap:30px}
  .social-community{margin-top:42px;padding-top:35px}
  .solidarity-actions{margin-top:45px}
  .solidarity-action{padding-block:25px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Fichas y colaboradores por acción */
.profile-facts{margin:0 0 26px;display:grid;gap:14px}.profile-facts>div{padding-bottom:12px;border-bottom:1px solid var(--line)}.profile-facts dt{color:var(--accent);font-size:11px;margin-bottom:3px}.profile-facts dd{margin:0;font-size:14px}.profile-about{font-size:20px;margin-bottom:14px;letter-spacing:-.025em}.profile-copy{min-width:0}.profile-copy h2{margin-top:0}.profile-content>img{object-fit:cover}.social-links a{display:inline-grid;place-items:center;width:46px;height:46px;border:1px solid var(--line);border-radius:50%;padding:11px}.social-links a:hover{color:var(--accent);border-color:var(--accent)}.social-links svg{width:23px;height:23px}.action-copy{min-width:0}.action-collaborators{margin-top:25px;padding-top:16px;border-top:1px solid var(--line)}.collaborators-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;font-size:12px;color:var(--muted)}.carousel-controls{display:flex;gap:5px}.carousel-controls button{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--text);font-size:20px;line-height:1}.carousel-controls button:hover{border-color:var(--accent);color:var(--accent)}.action-logo-track{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#78604a transparent;padding:3px 2px 10px;overscroll-behavior-x:contain}.action-logo-track .action-logo{display:flex;flex:0 0 135px;align-items:center;flex-direction:column;scroll-snap-align:start;background:#f3f0e9;border-radius:8px;padding:13px 10px;color:#38332e;text-align:center;margin:0}.action-logo img{width:100%;height:52px;object-fit:contain}.action-logo span{font-size:10px;line-height:1.3;margin-top:9px}.action-logo small{font-size:9px;color:#795334;margin-top:5px}@media(max-width:720px){.action-logo-track .action-logo{flex-basis:120px}.profile-copy h2{margin-bottom:22px}}

.action-logo-track{gap:20px;scrollbar-width:none;padding:4px 0}.action-logo-track::-webkit-scrollbar{display:none}.action-logo-track .action-logo{flex:0 0 76px;background:transparent;border-radius:0;padding:2px;color:white;justify-content:center;min-height:45px}.action-logo img{height:30px;width:64px;object-fit:contain}.action-logo small{color:var(--muted);font-size:8px;margin-top:3px}.action-collaborators{margin-top:18px;padding-top:12px}.collaborators-head{margin-bottom:6px;font-size:11px}.carousel-controls button{width:24px;height:24px;font-size:17px}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media(max-width:720px){.action-logo-track .action-logo{flex-basis:68px}.action-logo img{height:27px;width:58px}}

.carousel-controls[hidden]{display:none}.carousel-controls button:disabled{opacity:.3;cursor:default}

.action-logo-track .action-logo{position:relative}.action-logo .sr-only{left:0;top:0}

/* Ladrillo en la banda; grano fino y luz ambiental en el resto. */
.gallery-section{background-color:#191b1c;background-image:url('/assets/grano.svg'),radial-gradient(ellipse at 10% 5%,#46515952,transparent 66%),linear-gradient(145deg,#1d2021,#131617 78%);background-size:180px 180px,auto,auto;background-position:center,center,center}
#conciertos{background-color:#191714;background-image:url('/assets/grano.svg'),radial-gradient(ellipse at 85% 28%,#78503128,transparent 65%),linear-gradient(165deg,#191a19,#201c18 55%,#171716);background-size:180px 180px,auto,auto}
.social-section{background-color:#211c18;background-image:url('/assets/grano.svg'),radial-gradient(ellipse at 95% 0%,#a06a3f38,transparent 58%),radial-gradient(ellipse at 0% 85%,#3d494028,transparent 60%),linear-gradient(160deg,#241e19,#191b19 72%,#171818);background-size:180px 180px,auto,auto,auto;background-position:center,center,center,center}
#contacto{background-color:#111414;background-image:url('/assets/grano.svg'),radial-gradient(ellipse at 10% 35%,#35443f35,transparent 68%),linear-gradient(135deg,#14191a,#0c0f10 85%);background-size:180px 180px,auto,auto;background-position:center,center,center}
.story{background-color:#121313;background-image:url('/assets/grano.svg'),linear-gradient(115deg,#141817,#1b1916);background-size:180px 180px,auto}
.contact-form{background:linear-gradient(135deg,#202421eb,#151919ed);box-shadow:0 16px 50px #0003,inset 0 1px 0 #ffffff06}

/* Overlays fotográficos: escenario, instrumentos y luz de directo. */
.gallery-section,#conciertos,.social-section,#contacto{position:relative;isolation:isolate;overflow:hidden}
.gallery-section>.wrap,.social-section>.wrap,#conciertos>*,#contacto>*{position:relative;z-index:1}
.gallery-section:before{inset:0;height:auto;background:linear-gradient(180deg,#11151622,#11151666 65%,#111516),var(--gallery-background,none) center top/cover no-repeat;filter:grayscale(.85);opacity:.32;pointer-events:none;z-index:-1}
.gallery-section:after{inset:0;height:720px;background:url('/assets/luces-escenario.svg') right top/1400px auto no-repeat;opacity:.85;pointer-events:none;z-index:-1}
#conciertos:before{content:"";position:absolute;inset:0;background:var(--events-background,none) right 18%/min(950px,85vw) auto no-repeat;filter:grayscale(1);opacity:.24;mask-image:linear-gradient(90deg,transparent 10%,#000 75%),linear-gradient(180deg,transparent,#000 22%,#000 65%,transparent);mask-composite:intersect;pointer-events:none;z-index:-1}
.social-section:before{inset:0;height:auto;background:linear-gradient(90deg,#191b19 2%,#191b1922 70%),var(--social-background,none) right top/1350px auto no-repeat;opacity:.25;mask-image:linear-gradient(180deg,#000,transparent 68%);pointer-events:none;z-index:-1}
#contacto:before{content:"";position:absolute;inset:0;background:var(--contact-background,none) left center/800px auto no-repeat;filter:grayscale(1);opacity:.16;mask-image:linear-gradient(90deg,#000,transparent 65%);pointer-events:none;z-index:-1}
@media(max-width:720px){.gallery-section:before{background-position:65% top}.gallery-section:after{background-size:1000px auto;background-position:65% top;opacity:.7}#conciertos:before{background-size:650px auto;background-position:35% 25%;opacity:.17}.social-section:before{background-size:1000px auto;background-position:60% top;opacity:.2}#contacto:before{opacity:.13;background-position:35% center}}

/* Archivo real de conciertos, con carteles pendientes honestos. */
.past-card .event-art{display:block}.past-card .event-placeholder{min-height:245px;height:245px;padding:24px;gap:12px;background:radial-gradient(ellipse at 90% 0%,#a66f4230,transparent 65%),linear-gradient(145deg,#25221e,#121514)}.event-placeholder .placeholder-year{font-size:12px;letter-spacing:.12em;color:var(--accent)}.past-card .event-placeholder strong{font-size:38px;letter-spacing:-.04em;overflow-wrap:anywhere;line-height:1.1}.past-card .event-placeholder img{width:145px;margin-top:5px}.past-card .event-placeholder small{font-size:10px;margin-top:0}.upcoming-poster .event-placeholder{aspect-ratio:3/4;min-height:330px;gap:12px}.upcoming-poster .event-placeholder strong{font-size:clamp(30px,4vw,72px);overflow-wrap:anywhere;line-height:1.1}.action-image-pending{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;background:linear-gradient(145deg,#302a22,#171a18);color:#cfaa85;font-size:25px;letter-spacing:-.03em}.action-image-pending small{font-size:12px;letter-spacing:.15em;color:#817668}.action-logo-track .action-logo:has(.action-logo-text){flex-basis:130px}.action-logo .action-logo-text{font-size:11px;line-height:1.35;color:#f0ede8;margin:0;max-width:130px}.past-card .event-description{line-height:1.75}@media(max-width:720px){.past-card .event-placeholder{height:220px;min-height:220px;padding:19px}.past-card .event-placeholder strong{font-size:30px}.upcoming-poster .event-placeholder{min-height:265px}.upcoming-poster .event-placeholder strong{font-size:27px}}

.gallery-more{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;margin-top:30px}.gallery-more p{font-size:12px;color:var(--muted)}.gallery-more:has(p:empty){display:none}.gallery-more [hidden]{display:none!important}

/* Compact concert and solidarity programmes. */
#conciertos{padding-block:45px}.events-upcoming,.past-grid{display:block;margin-top:0}.concert-list{border-top:1px solid var(--line)}.concert-row{display:grid;grid-template-columns:165px minmax(0,1fr);gap:24px;align-items:start;padding:17px 0;border-bottom:1px solid var(--line)}.concert-date{font-size:12px;color:var(--accent);padding-top:3px}.concert-date small{display:block;color:var(--muted);margin-top:3px}.concert-copy{min-width:0}.concert-copy h4{font-size:18px;font-weight:550;letter-spacing:-.025em;margin:0;line-height:1.3}.concert-venue{font-size:12px;margin-top:4px}.concert-details{font-size:12px;margin-top:7px;color:var(--muted)}.concert-details summary{cursor:pointer;color:#d8c5b4;font-size:11px;display:list-item;list-style-position:inside}.concert-details p{margin-top:8px;max-width:760px}.concert-details a{display:inline-block;color:var(--accent);margin-top:7px}.concert-featured{grid-template-columns:125px 140px minmax(0,1fr);gap:24px;padding-block:20px;align-items:center}.concert-poster{padding:0;background:none;border:0;cursor:zoom-in}.concert-poster img{width:125px;max-height:180px;object-fit:contain;object-position:left center;border-radius:5px}.social-section{padding-block:45px}.social-layout{display:block}.social-layout>div{max-width:950px}.social-layout .quiet{font-size:11px}.social-layout h2{margin:8px 0 16px}.social-layout .body-copy p{font-size:14px}.social-layout .body-copy p+p{margin-top:10px}.social-layout .btn{margin-top:15px;padding:7px 13px;min-height:36px;font-size:12px}.social-community{margin-top:28px}.solidarity-actions{margin-top:0;padding-top:0;border-top:0}.solidarity-actions .section-head{margin-bottom:18px}.solidarity-actions .section-head h3{font-size:23px}.solidarity-actions .section-head p{margin-top:8px;font-size:13px}.actions-list{border-top:1px solid var(--line)}.solidarity-action{display:grid;grid-template-columns:145px minmax(0,1fr) 180px;gap:25px;align-items:start;padding:18px 0;border-bottom:1px solid var(--line)}.action-date{padding-top:3px;font-size:12px}.action-date time{font-size:12px}.action-copy h4{font-size:17px;font-weight:550;line-height:1.3;margin:0 0 6px;letter-spacing:-.025em}.action-copy p,.action-copy .action-result{font-size:12px;line-height:1.6;margin:0}.action-copy .action-result{margin-top:6px;padding:0;border:0;color:#d4c1ac}.action-copy>a{font-size:12px}.action-partner-slot{min-width:0;min-height:36px}.action-partner-slot .action-collaborators{margin:0;padding:0;border:0}.collaborators-head{font-size:10px;margin-bottom:6px}.action-logo-track .action-logo{flex-basis:64px;min-height:28px}.action-logo img{width:58px;height:26px}.action-logo-track{gap:13px;padding:0}.action-logo-track .action-logo:has(.action-logo-text){flex-basis:110px}.action-logo .action-logo-text{font-size:10px}.carousel-controls button{width:22px;height:22px;font-size:16px}
@media(max-width:720px){#conciertos,.social-section{padding-block:32px}.concert-row{grid-template-columns:1fr;gap:5px;padding-block:15px}.concert-featured{grid-template-columns:85px minmax(0,1fr);gap:8px 17px}.concert-featured .concert-poster{grid-row:span 2}.concert-poster img{width:85px;max-height:130px}.concert-featured .concert-date{grid-column:2}.concert-featured .concert-copy{grid-column:2}.concert-copy h4{font-size:17px}.concert-date small{display:inline;margin-left:9px}.solidarity-action{grid-template-columns:1fr;gap:6px;padding:16px 0}.action-copy h4{font-size:16px}.action-partner-slot:empty{display:none}.action-partner-slot{margin-top:5px;max-width:330px}.action-logo-track .action-logo{flex-basis:58px}.social-layout>div{max-width:none}}

.social-community{padding-top:24px}.social-community .section-head{margin-bottom:18px}@media(max-width:720px){.social-community{padding-top:20px;margin-top:22px}.solidarity-action .action-date{grid-column:auto;display:block}}
#conciertos .section-head{margin-bottom:20px}#conciertos .subheading{margin-top:25px;margin-bottom:13px}#conciertos h2{font-size:38px}.concert-row{padding-block:12px}.concert-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:20px}.concert-copy h4,.concert-venue{grid-column:1}.concert-details{grid-column:2;grid-row:1/span 2;margin-top:2px;align-self:center}.concert-details[open]{grid-column:1/-1;grid-row:3;justify-self:stretch;margin-top:9px}.concert-featured{padding-block:16px}.social-community .section-head h3{font-size:23px}.social-community .section-head p{font-size:13px}.solidarity-action{padding-block:14px}.action-copy h4{margin-bottom:5px}.action-copy p{font-size:12px;line-height:1.5}
@media(max-width:720px){#conciertos h2{font-size:30px}.concert-copy{column-gap:10px}.concert-copy h4{font-size:16px}.concert-details summary{font-size:10px}.concert-row{padding-block:13px}.concert-featured .concert-copy{display:block}.concert-featured .concert-details{margin-top:7px}.solidarity-action{padding-block:14px}.action-partner-slot{min-height:0}}

/* Complete, proportional posters; collaborator logos always visible. */
.concert-poster{width:125px;justify-self:start}.concert-poster img{width:100%;height:auto;max-height:180px;aspect-ratio:auto;object-fit:contain;object-position:center}.action-logos{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;overflow:visible}.action-logos .action-logo{display:flex;align-items:center;justify-content:flex-start;flex:0 1 auto;min-width:0;min-height:30px;padding:0;background:none;border:0;margin:0}.action-logos .action-logo img{width:auto;height:28px;max-width:110px;object-fit:contain}.action-logos .action-logo-text{display:block;font-size:11px;line-height:1.4;margin:0;max-width:160px}.action-logos .action-logo span{margin:0}.action-partner-slot .collaborators-head{margin-bottom:9px}
@media(max-width:720px){.concert-poster{width:85px}.concert-poster img{max-height:130px}.action-partner-slot{max-width:100%}.action-logos .action-logo img{height:26px;max-width:100px}}

.solidarity-action{grid-template-columns:145px minmax(0,1fr) 260px}.action-logos .action-logo img{filter:brightness(0) invert(1)}@media(max-width:720px){.solidarity-action{grid-template-columns:1fr}}
/* All poster thumbnails use the same frame; the full artwork stays proportional. */
.concert-poster{width:125px;height:125px;display:flex;align-items:center;justify-content:center}.concert-poster img{width:100%;height:100%;max-height:none;object-fit:contain;border-radius:0}
@media(max-width:720px){.concert-poster{width:85px;height:85px}.concert-poster img{max-height:none}}

.concert-poster{position:relative}.concert-video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:30px;height:30px;display:grid;place-items:center;border:1px solid #ffffffb0;border-radius:50%;background:#111b;color:white;font-size:18px}.concert-video-link{grid-column:1;justify-self:start;background:none;border:0;color:var(--accent);font-size:11px;padding:3px 0;margin-top:3px}.concert-video-link:hover{text-decoration:underline}
.action-logos .action-logo img[src*="logo-ayuntamiento-el-boalo"]{height:76px;max-width:130px}.action-logos .action-logo:has(img[src*="logo-ayuntamiento-el-boalo"]){align-self:center}

/* Full event information in the home banner. */
.next-date{display:grid;grid-template-columns:130px 90px minmax(0,1fr) auto;gap:20px;padding:20px 25px}.next-date:not(:has(.next-date-art)){grid-template-columns:90px minmax(0,1fr) auto}.next-date-art{width:130px;padding:0;background:none;border:0;cursor:zoom-in}.next-date-art img{width:130px;height:78px;object-fit:contain;border-radius:4px}.next-date .date-badge{padding-right:15px;gap:10px}.next-date-copy{min-width:0}.next-date-copy .next-date-type{color:var(--accent);font-size:11px;margin:0 0 5px}.next-date-copy h2{font-size:17px;line-height:1.35}.next-date-copy .next-date-place{margin-top:8px;line-height:1.4}.next-date-copy .next-date-hours{color:#e6d2bf;font-size:12px;margin-top:5px;font-weight:600}.next-date>.next-date-link{margin:0;font-size:12px}.concert-type{grid-column:1/-1;font-size:11px;color:var(--accent);margin-bottom:5px}
@media(max-width:720px){.next-date{grid-template-columns:110px minmax(0,1fr);gap:14px 20px;padding:17px 20px}.next-date:not(:has(.next-date-art)){grid-template-columns:75px minmax(0,1fr)}.next-date-art{grid-column:1;grid-row:1;width:110px}.next-date-art img{width:110px;height:65px}.next-date .date-badge{grid-column:2;grid-row:1;border:0;padding:0;justify-self:start}.next-date .date-badge strong{font-size:36px}.next-date-copy{grid-column:1/-1}.next-date-copy h2{font-size:16px}.next-date>.next-date-link{grid-column:1/-1;justify-self:start}.next-date-copy .next-date-place{font-size:12px}}
/* Poster frames tie the artwork to the dark copper palette. */
.concert-poster{padding:6px;border:1px solid #b17c5266;border-radius:7px;background:linear-gradient(145deg,#23211e,#0f1110);box-shadow:0 4px 14px #0004,inset 0 0 0 1px #ffffff06;transition:border-color .2s,box-shadow .2s}.concert-poster:hover{border-color:var(--accent);box-shadow:0 5px 18px #0006}.concert-poster img{border-radius:2px}.next-date-art{padding:4px;border:1px solid #b17c5266;border-radius:5px;background:#111310;box-shadow:0 3px 12px #0003}.next-date-art img{width:100%;height:72px}.next-date-art:hover{border-color:var(--accent)}
@media(max-width:720px){.concert-poster{padding:4px}.next-date-art img{height:57px}}

.media-teaser{display:flex;flex-direction:column;border:1px solid #b17c5266;background:#141615}.media-teaser:after{display:none}.media-teaser-art{position:relative;flex:1;min-height:0;overflow:hidden;background:#0d1010}.media-teaser-art img{height:100%;width:100%;object-fit:contain;object-position:center}.media-teaser-label{position:absolute;left:16px;top:16px;z-index:2;padding:6px 12px;border:1px solid #cf814d80;border-radius:4px;background:#141310e6;color:#f2c19b;font-size:12px;font-weight:600;letter-spacing:.035em}.media-teaser-caption{padding:15px 18px;font-size:14px;color:#efe7df;line-height:1.5;margin:0}.media-teaser:hover img{transform:none}
@media(max-width:720px){.media-teaser-caption{font-size:12px;padding:10px 12px}.media-teaser-label{top:10px;left:10px;font-size:11px;padding:4px 9px}}
.action-logos .action-logo img[src*="logo-feor-blanco"]{height:40px;max-width:110px}
