/* DOC — refinamiento editorial y movimiento discreto. */
:root{--ease:cubic-bezier(.22,1,.36,1)}
::selection{background:#e52529;color:#fff}
.header{background:#101010f2;backdrop-filter:blur(16px);border-color:#ffffff14;box-shadow:0 4px 24px #0000000d}
.reading-progress{position:absolute;bottom:-1px;left:0;height:2px;width:100%;background:var(--red);transform:scaleX(0);transform-origin:left;pointer-events:none}
.header nav a{position:relative;transition:color .25s}
.header nav a[aria-current="location"]{color:#ff6367}
.header nav a:after{content:'';position:absolute;bottom:3px;left:0;right:0;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.header nav a:hover:after,.header nav a[aria-current="location"]:after{transform:scaleX(1)}
.hero-copy{background:linear-gradient(130deg,#faf8f2,var(--paper));position:relative}
.hero-photo figcaption{border:1px solid #ffffff40;backdrop-filter:blur(12px);padding:10px 16px}
.hero-foot{max-width:280px;line-height:1.8;color:#5b5b58}
.button{min-height:56px;transition:background .25s,color .25s,box-shadow .3s,transform .3s var(--ease)}
.button span{transition:transform .3s var(--ease)}
.hero-copy .button-dark{font-size:14px}
.button:hover span{transform:translate(3px,-3px)}
.button:hover{box-shadow:0 9px 24px #00000018;transform:translateY(-2px)}
.ticker{border-block:1px solid #00000014;font-size:26px;letter-spacing:.2em;padding-block:15px}
.section{padding-block:110px}.section-heading{margin-bottom:42px}.section-heading>p{padding-left:20px;border-left:1px solid #8885}
.live{background:radial-gradient(ellipse at 90% 0,#331417 0,transparent 45%),#101010}
.video-container{border:1px solid #ffffff26;box-shadow:0 22px 60px #0004}
.video-poster{height:510px}.video-mark{width:62px;height:62px;background:#ffffff12;backdrop-filter:blur(8px);transition:background .3s,transform .3s var(--ease)}
.video-poster:hover .video-mark{transform:scale(1.08)}.video-caption{bottom:32px;left:32px}.video-caption>span:last-child{font-size:20px}.video-caption small{font-size:12px}
.repertoire{margin-top:36px;padding-block:28px}.pending{padding:10px 15px;transition:border-color .2s,background .2s}.pending:hover{border-color:var(--red);background:#e525291a}
.gallery-section{background:#f2efe8}.gallery-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:0 0 24px;margin-bottom:24px;border-bottom:1px solid #10101026}
.gallery-filters{display:flex;gap:8px;flex-wrap:wrap}.gallery-filters button{border:1px solid #10101030;background:transparent;color:#101010;padding:10px 17px;min-height:44px;font-size:12px;transition:background .25s,color .25s,border-color .25s}
.gallery-filters button[aria-pressed=true]{background:#101010;color:#fff;border-color:#101010}.gallery-filters button:hover{border-color:var(--red)}.gallery-filters small{margin-left:9px;opacity:.65;font-variant-numeric:tabular-nums}
#gallery-status{font-size:11px;color:#555;white-space:nowrap;font-variant-numeric:tabular-nums}
.gallery-grid{gap:22px}.gallery-item{border:1px solid #ffffff1a;transition:box-shadow .35s,border-color .35s,transform .35s var(--ease)}
.gallery-item img{padding:10px}.gallery-item span{border-top:1px solid #ffffff1a;padding:12px 15px;min-height:46px;font-size:10px;letter-spacing:.025em}.gallery-item b{color:#ff5559;transition:transform .3s}
@media(hover:hover){.gallery-item:hover{border-color:var(--red);box-shadow:0 18px 35px #0002;transform:translateY(-4px)}.gallery-item:hover b{transform:translate(2px,-2px)}}
.quotes{gap:18px}.quotes article{position:relative;background:linear-gradient(135deg,#1a1a1a,#111);border:1px solid #ffffff24;padding:32px;min-height:245px;transition:border-color .3s,transform .3s var(--ease)}
.quotes article:after{content:'';position:absolute;left:32px;right:32px;bottom:62px;height:1px;background:#ffffff12}.quotes article:hover{border-color:#e5252970;transform:translateY(-3px)}.quotes blockquote{font-size:19px;line-height:1.65;margin-bottom:40px}.quotes article p{font-size:11px}
.contact{position:relative;overflow:hidden;background:linear-gradient(115deg,#e52529 35%,#ba151e);padding-block:90px}.contact-inner{position:relative;z-index:1}.contact:after{content:'DOC';position:absolute;right:-20px;bottom:-100px;font:420px/.85 var(--heading);color:#ffffff07;pointer-events:none}
.message-preview{margin-top:22px;max-width:360px;padding:15px 18px;border:1px solid #ffffff38;background:#0000000c;font-size:12px;line-height:1.8}.message-preview span{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:9px;margin-bottom:6px;color:#fff}
.footer{padding-top:44px}.socials a{border:1px solid #ffffff25;padding:8px 12px;transition:background .2s,border-color .2s}.socials a:hover{background:#e5252914;border-color:#e5252980}.back-top{padding-block:12px}
dialog{border-color:#ffffff30;box-shadow:0 24px 100px #0009}dialog[open]{animation:viewer-in .25s var(--ease)}dialog::backdrop{backdrop-filter:blur(8px)}
@keyframes viewer-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:768px) and (max-width:1199px){.section{padding-block:80px}.video-poster{height:410px}.gallery-grid{gap:14px}.quotes article{padding:26px}.contact{padding-block:75px}}
@media(max-width:767px){.section{padding-block:64px}.section-heading{margin-bottom:28px}.section-heading>p{padding-left:0;border-left:0}.hero-copy{padding-block:42px}.ticker{font-size:23px;padding-block:12px}.video-poster{height:280px}.video-caption{left:20px;bottom:20px}.video-caption>span:last-child{font-size:16px}.video-mark{width:48px;height:48px}.gallery-tools{align-items:flex-start;flex-direction:column;gap:12px}.gallery-filters{gap:6px}.gallery-filters button{padding:9px 11px;font-size:11px}.gallery-filters small{margin-left:5px}.gallery-grid{gap:10px}.gallery-item img{padding:5px}.gallery-item span{padding:7px;font-size:8px;min-height:32px}.quotes article{padding:25px;min-height:210px}.quotes blockquote{font-size:18px}.contact{padding-block:64px}.contact h2{font-size:clamp(52px,14vw,70px)}.socials a{padding:8px 10px}.footer-top{gap:20px}.message-preview{max-width:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.button:hover,.gallery-item:hover,.quotes article:hover{transform:none}}

/* YouTube sessions: equal frames, original order on every screen. */
.live-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}
.live-card{min-width:0;background:#151515;overflow:hidden}
.live-player{position:relative;aspect-ratio:16/9;background:#080808}
.live-player iframe{position:absolute;inset:0;display:block;width:100%;height:100%;border:0}
.live-player iframe:focus-visible{outline:2px solid var(--red);outline-offset:-2px}
.live-card-caption{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px}
.live-card-caption>span{font-size:16px;font-weight:500}
.live-card-caption small{display:block;color:var(--muted);font-size:9px;letter-spacing:.13em;margin-bottom:4px}
.live-card-caption a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:11px;white-space:nowrap;transition:color .2s}
.live-card-caption a:hover{color:#ff5559}
@media(min-width:768px) and (max-width:1099px){.live-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.live-card:last-child{grid-column:1/-1;width:calc((100% - 20px)/2);justify-self:center}}
@media(max-width:767px){.live-grid{grid-template-columns:minmax(0,1fr);gap:24px}.live-card-caption{padding:14px 16px}}

/* Minimal editorial video covers. YouTube loads only on request. */
.live-card.video-container{border:0;box-shadow:none;background:transparent;overflow:visible}
.live-cover{display:block;position:relative;width:100%;height:100%;padding:0;border:0;background:#111;overflow:hidden;color:#fff;text-align:left}
.live-cover img{width:100%;height:100%;object-fit:cover;object-position:center 38%;transition:transform .6s var(--ease),filter .3s;filter:brightness(.85)}
.live-cover:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#0009);pointer-events:none}
.live-play{position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:60px;height:60px;border:1px solid #ffffff80;border-radius:50%;background:#10101066;backdrop-filter:blur(8px);transition:background .25s,border-color .25s}
.live-play svg{margin-left:2px}.live-label{position:absolute;z-index:1;left:20px;bottom:18px;font-size:9px;font-weight:600;letter-spacing:.16em}
.live-cover:hover img{transform:scale(1.035);filter:brightness(1)}
.live-cover:hover .live-play{background:#e5252980;border-color:#fff}
.live-cover:focus-visible{outline:3px solid #ffba42;outline-offset:4px}
.live-card-caption{padding:20px 0 22px;border-bottom:1px solid #ffffff26;gap:10px;min-height:88px}
.live-card-caption h3{font-family:var(--heading);font-size:clamp(23px,2.2vw,30px);font-weight:400;line-height:1.15}
.live-card-caption a{justify-content:center;width:44px;flex-shrink:0;font-size:19px;color:var(--red)}
@media(max-width:767px){.live-card-caption{padding:14px 0 18px;min-height:74px}.live-card-caption h3{font-size:27px}.live-play{width:56px;height:56px}}
@media(prefers-reduced-motion:reduce){.live-cover img,.live-play{transition:none}.live-cover:hover img{transform:none}}
