:root{--ink:#171515;
--paper:#f7f1e8;
--cream:#fffaf3;
--clay:#9c4b2c;
--gold:#c89538;
--muted:#6f675f;
--line:#d9cab7;
--serif:Georgia,'Times New Roman',serif;
--sans:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;
background:var(--paper);
color:var(--ink);
font:16px/1.6 var(--sans)}img{max-width:100%;
display:block}a{color:inherit}.skip{position:absolute;
left:1rem;
top:-5rem;
background:#fff;
padding:.7rem 1rem;
z-index:20}.skip:focus{top:1rem}.shell{width:min(1160px,calc(100% - 2.5rem));
margin:auto}.top{background:var(--ink);
color:#fff;
position:relative}.bar{min-height:78px;
display:flex;
align-items:center;
justify-content:space-between;
gap:1.5rem}.brand{font:700 1.45rem/1 var(--serif);
text-decoration:none;
letter-spacing:.03em}.brand span{display:block;
color:#ddb66b;
font:500 .68rem/1.4 var(--sans);
letter-spacing:.2em;
text-transform:uppercase;
margin-top:.35rem}.nav{display:flex;
align-items:center;
gap:1.25rem}.nav a{text-decoration:none;
font-size:.88rem;
font-weight:650}.nav a:hover,.nav a[aria-current=page]{color:#e7b655}.menu{display:none;
border:1px solid #947956;
background:none;
color:#fff;
padding:.55rem .75rem;
border-radius:2px;
font:inherit}.hero{background:var(--ink);
color:white}.hero-grid{min-height:560px;
display:grid;
grid-template-columns:1.1fr .9fr;
align-items:stretch}.hero-copy{padding:5.5rem 4.5rem 5rem 0;
align-self:center}.eyebrow{color:#dfb466;
letter-spacing:.16em;
font-weight:700;
text-transform:uppercase;
font-size:.75rem}.hero h1,.page-hero h1{font:clamp(2.7rem,5vw,5rem)/.98 var(--serif);
margin:.7rem 0 1.3rem;
letter-spacing:-.04em}.lead{font-size:1.16rem;
color:#eee2d1;
max-width:37rem}.actions{display:flex;
gap:.75rem;
flex-wrap:wrap;
margin-top:2rem}.button{display:inline-block;
text-decoration:none;
padding:.78rem 1.15rem;
background:#e0ae54;
color:#1c1814;
font-size:.88rem;
font-weight:750}.button.alt{color:#fff;
background:transparent;
border:1px solid #a28b68}.hero-image{min-height:400px;
background:linear-gradient(90deg,var(--ink) 0%,transparent 20%),url('assets/alba-espert-guitarra-flamenca.jpg') center/cover no-repeat}.section{padding:5.5rem 0}.section.tint{background:#e9ddcd}.kicker{color:var(--clay);
font-weight:750;
letter-spacing:.14em;
text-transform:uppercase;
font-size:.75rem}.section h2{font:clamp(2rem,3.4vw,3.2rem)/1.05 var(--serif);
margin:.4rem 0 1.4rem}.intro{max-width:44rem;
color:#5d554c}.events{display:grid;
grid-template-columns:repeat(3,1fr);
gap:1rem;
margin-top:2rem}.event{background:var(--cream);
padding:1.35rem;
border-top:3px solid var(--gold)}.event time{font-weight:800;
color:var(--clay);
font-size:.85rem}.event h3{font:700 1.12rem/1.25 var(--serif);
margin:.55rem 0}.event p{margin:0;
color:var(--muted);
font-size:.92rem}.split{display:grid;
grid-template-columns:1fr 1fr;
gap:5rem;
align-items:center}.portrait{aspect-ratio:4/5;
object-fit:cover;
object-position:center}.quote{border-left:3px solid var(--gold);
padding-left:1.3rem;
font:1.55rem/1.35 var(--serif)}.stats{display:grid;
grid-template-columns:repeat(3,1fr);
gap:1px;
background:var(--line);
margin-top:2rem}.stat{background:var(--cream);
padding:1.25rem}.stat strong{display:block;
font:2rem var(--serif);
color:var(--clay)}.cards{display:grid;
grid-template-columns:repeat(3,1fr);
gap:1.5rem}.card{border-top:1px solid var(--gold);
padding-top:1rem}.card h3{font:1.35rem/1.15 var(--serif);
margin:.3rem 0}.card p{color:var(--muted)}.card a{font-size:.87rem;
color:var(--clay);
font-weight:750}.cta{background:var(--clay);
color:#fff;
text-align:center;
padding:4.5rem 1rem}.cta h2{font:clamp(2.2rem,4vw,3.6rem)/1.05 var(--serif);
margin:0}.cta p{max-width:39rem;
margin:1rem auto 1.8rem;
color:#faeee2}.cta .button{background:#f0c268}.footer{background:var(--ink);
color:#e9ddcd;
padding:3rem 0}.footer-grid{display:flex;
justify-content:space-between;
gap:2rem}.footer small{display:block;
color:#afa496;
margin-top:1rem}.footer a{color:#fff}.page-hero{background:#251f1c;
color:#fff;
padding:5rem 0 4rem}.page-hero p{max-width:43rem;
color:#eee2d1;
font-size:1.1rem}.prose{max-width:780px}.prose h2{font:2rem/1.1 var(--serif);
margin-top:3rem}.prose h3{font:1.35rem/1.2 var(--serif);
margin-top:2rem}.prose p,.prose li{color:#504942}.timeline{border-left:1px solid var(--gold);
padding-left:1.4rem}.timeline li{margin:1.3rem 0;
padding-left:.2rem}.booking{display:grid;
grid-template-columns:1.1fr .9fr;
gap:3rem}.contact-box{background:#eadcc9;
padding:2rem}.contact-box h2{font:2rem/1.1 var(--serif);
margin-top:0}.contact-box a{color:var(--clay);
font-weight:750}.notice{font-size:.86rem;
color:var(--muted)}
@media(max-width:760px){.shell{width:min(100% - 2rem,1160px)}.bar{min-height:70px}.menu{display:block}.nav{display:none;
position:absolute;
top:70px;
left:0;
right:0;
background:var(--ink);
padding:1rem;
flex-direction:column;
align-items:stretch;
z-index:10;
border-top:1px solid #433630}.nav.open{display:flex}.hero-grid,.split,.booking{grid-template-columns:1fr}.hero-copy{padding:4rem 0 2rem}.hero-image{min-height:360px;
background:linear-gradient(0deg,var(--ink) 0%,transparent 25%),url('assets/alba-espert-guitarra-flamenca.jpg') center/cover no-repeat}.section{padding:4rem 0}.events,.cards{grid-template-columns:1fr}.stats{grid-template-columns:1fr}.split{gap:2rem}.portrait{max-height:520px;
width:100%;
object-fit:cover}.footer-grid{display:block}.footer-grid>div+div{margin-top:1.5rem}}

/* Imagen de portada procedente de la web original. */
.hero-image{background-image:linear-gradient(90deg,var(--ink) 0%,transparent 20%),url('assets/portada-alba-espert.jpg')}
@media(max-width:760px){.hero-image{background-image:linear-gradient(0deg,var(--ink) 0%,transparent 25%),url('assets/portada-alba-espert.jpg')}}

.shows{display:grid;
grid-template-columns:repeat(2,minmax(0,1fr));
gap:2rem}.show{background:var(--cream);
border:1px solid var(--line)}.show img{width:100%;
aspect-ratio:16/10;
object-fit:cover}.show-body{padding:1.5rem}.show h2{font:2rem/1.05 var(--serif);
margin:.3rem 0 1rem}.show p{color:#504942}.show .contact{font-size:.9rem;
color:var(--clay);
font-weight:700}@media(max-width:760px){.shows{grid-template-columns:1fr}}
.show-detail{display:grid;
grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
gap:clamp(2rem,5vw,5rem);
align-items:start}.show-detail>img{width:100%;
max-height:680px;
object-fit:contain;
background:var(--cream);
border:1px solid var(--line)}.show-detail .prose{max-width:unset}.show-detail h2{font:clamp(1.7rem,2.8vw,2.35rem)/1.1 var(--serif);
margin:0 0 1rem}.show-detail h2:not(:first-child){margin-top:2rem}@media(max-width:760px){.show-detail{grid-template-columns:1fr}.show-detail>img{max-height:560px}}
.event img{width:calc(100% + 2.7rem);
max-width:none;
height:550px;
object-fit:cover;
margin:-1.35rem -1.35rem 1.2rem}.event:has(img){padding-top:1.35rem}
.timeline h3{margin:.3rem 0 .35rem}
.year-nav{display:flex;
flex-wrap:wrap;
gap:.45rem;
margin:0 0 2.5rem}.year-nav a{border:1px solid var(--line);
padding:.35rem .55rem;
text-decoration:none;
font-size:.86rem}.year-nav a:hover,.year-nav a[aria-current=page]{background:var(--clay);
border-color:var(--clay);
color:#fff}
.year-hero-grid{display:grid;
grid-template-columns:1fr 1fr;
gap:3rem;
align-items:center;
min-height:360px}.year-featured{display:block;
width:100%;
height:auto;
max-height:285px;
object-fit:contain;
border:1px solid #5e4a3c}@media(max-width:760px){.year-hero-grid{grid-template-columns:1fr;
gap:1.5rem;
min-height:0}.year-featured{max-height:230px}}
.page-hero:has(.year-hero-grid){padding:2.5rem 0}
.page-hero:has(.year-hero-grid)+.section{padding-top:2.5rem}
.agenda-group+.agenda-group{margin-top:3.5rem}.agenda-group h2{font:1.8rem/1.1 var(--serif);
margin:0 0 1.5rem}.agenda-past{border-top:1px solid var(--line);
padding-top:2.5rem}.agenda-past h2{color:var(--muted)}
.social{display:flex;
gap:.7rem;
margin-top:1rem;
align-items:center}.social a{display:block;
width:28px;
height:28px}.social img{width:100%;
height:100%;
object-fit:contain;
filter:grayscale(1) brightness(2)}.social a:hover img,.social a:focus-visible img{filter:none}
.footer-contact>a{font:1.1rem/1.7 var(--serif);
text-decoration:none}.footer-contact>a:hover,.footer-contact>a:focus-visible{text-decoration:underline;
color:#ddb66b}.download-bio,.tint .prose:has(.kicker){border-left:3px solid var(--gold);
padding-left:2rem}
.gallery-section{padding-top:5rem}
.photo-carousel{max-width:980px}
.photo-carousel-stage{position:relative;
display:grid;
grid-template-columns:auto minmax(0,1fr) auto;
align-items:center;
gap:1rem;
margin-top:2rem}
.photo-carousel-main{display:block;
width:100%;
height:min(62vw,580px);
object-fit:contain;
background:#171515;
border:1px solid var(--line)}
.photo-carousel-control{width:2.8rem;
height:2.8rem;
border:1px solid var(--gold);
border-radius:50%;
background:transparent;
color:var(--ink);
font:1.8rem/1 var(--serif);
cursor:pointer}
.photo-carousel-control:hover,.photo-carousel-control:focus-visible{background:var(--clay);
color:#fff}
.photo-carousel-caption{margin:.8rem 0 1rem;
color:var(--muted)}
.photo-carousel-thumbnails{display:flex;
gap:.65rem;
overflow-x:auto;
padding:.25rem 0 .65rem;
scrollbar-color:var(--gold) transparent}
.photo-carousel-thumbnail{flex:0 0 76px;
height:58px;
padding:0;
border:2px solid transparent;
background:#171515;
cursor:pointer}
.photo-carousel-thumbnail[aria-current=true]{border-color:var(--gold)}
.photo-carousel-thumbnail img{display:block;
width:100%;
height:100%;
object-fit:cover}
@media(max-width:600px){.gallery-section{padding-top:3.5rem}
.photo-carousel-stage{grid-template-columns:1fr;
gap:.75rem}.photo-carousel-main{height:78vw}.photo-carousel-control{position:absolute;
top:calc(50% - 1.4rem);
z-index:1;
background:rgba(23,21,21,.78);
color:#fff}.photo-carousel-control.previous{left:.65rem}.photo-carousel-control.next{right:.65rem}.photo-carousel-thumbnail{flex-basis:64px;
height:49px}}
.video-grid{display:grid;
grid-template-columns:repeat(2,minmax(0,1fr));
gap:1rem;
margin-top:2rem}
.video-card{padding:1.35rem;
border:1px solid var(--line);
background:rgba(255,255,255,.35)}
.video-card h3{margin:0 0 .55rem;
font:1.35rem/1.1 var(--serif)}
.video-card p{margin:0 0 .9rem;
color:var(--muted)}
.video-card a{color:var(--clay);
font-weight:700}
@media(max-width:650px){.video-grid{grid-template-columns:1fr}}
.detail-layout{display:grid;
grid-template-columns:minmax(0,1fr);
gap:1.5rem;
align-items:start}
.detail-image{display:block;
width:80%;
height:auto;
margin-inline:auto;
background:var(--ink);
border:1px solid var(--line)}
.detail-title-line{display:block;
margin-top:.45rem;
font:400 clamp(1.3rem,2.6vw,1.95rem)/1.25 var(--serif);
color:var(--muted)}
.detail-navigation{display:grid;
grid-template-columns:repeat(3,minmax(0,1fr));
align-items:center;
gap:.75rem}
.detail-navigation .button{text-align:center;
margin:0}.detail-previous{justify-self:start}.detail-back{justify-self:center}.detail-next{justify-self:end}
@media(max-width:560px){.detail-navigation{gap:.4rem}.detail-navigation .button{padding:.65rem .5rem;
font-size:.78rem}}
@media(max-width:760px){.detail-layout{grid-template-columns:1fr;
gap:2rem}}
