.tirso-tc{box-sizing:border-box;width:min(calc(100% - var(--tt-gutter)*2),var(--tt-width));max-width:100%;margin:0 auto;position:relative;font-family:inherit}.tirso-tc *{box-sizing:border-box}.tirso-tc__viewport{height:var(--tt-height);position:relative;overflow:hidden;border-radius:var(--tt-radius);background:#171717;border:var(--tt-border-width) solid var(--tt-border);isolation:isolate}.tirso-tc__slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity var(--tt-duration) ease,visibility var(--tt-duration) ease;pointer-events:none}.tirso-tc__slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}.tirso-tc__background,.tirso-tc__shade,.tirso-tc__art,.tirso-tc__person{position:absolute;inset:0}.tirso-tc__background{width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;z-index:0}.tirso-tc__shade{z-index:1;background:var(--tt-overlay);opacity:var(--tt-opacity);pointer-events:none}.tirso-tc__art{width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;opacity:var(--tt-overlay-image-opacity);z-index:2;pointer-events:none}.tirso-tc__person{inset:auto auto 0 0;width:var(--tt-person-width)!important;height:100%!important;max-width:none!important;object-fit:contain;object-position:bottom left;z-index:3;pointer-events:none}.tirso-tc__content{position:absolute;right:var(--tt-text-side);bottom:var(--tt-text-bottom);width:var(--tt-text-width);z-index:4;color:var(--tt-quote-color);text-shadow:0 2px 13px rgba(0,0,0,.30);pointer-events:none}.tirso-tc__quote{font-size:var(--tt-quote-size);font-weight:700;line-height:1.19;color:var(--tt-quote-color);letter-spacing:-.025em}.tirso-tc__byline{font-size:var(--tt-meta-size);color:var(--tt-meta-color);text-transform:uppercase;letter-spacing:.09em;font-weight:600;margin-top:25px}.tirso-tc__dots{position:absolute;bottom:35px;left:50%;z-index:6;transform:translateX(-50%);display:flex;align-items:center;gap:12px}.tirso-tc__dot{width:8px;height:8px;border-radius:50%;border:0;padding:0;background:rgba(255,255,255,.95);cursor:pointer;box-shadow:0 1px 5px #0005}.tirso-tc__dot.is-active{width:14px;height:14px;background:transparent;border:2px solid #fff;position:relative}.tirso-tc__dot.is-active:after{content:'';position:absolute;inset:3px;background:white;border-radius:50%}.tirso-tc__arrow{position:absolute;z-index:8;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:1px solid #ffffff95;background:#0005;color:white;cursor:pointer;font-size:28px;line-height:1}.tirso-tc__arrow--prev{left:18px}.tirso-tc__arrow--next{right:18px}.tirso-tc__arrow:disabled{opacity:.25;cursor:default}.tirso-tc button:focus-visible{outline:2px solid white;outline-offset:3px}@media(max-width:767px){.tirso-tc{width:100%;margin-left:auto;margin-right:auto}.tirso-tc__viewport{height:var(--tt-height-m)}.tirso-tc__person{width:var(--tt-person-width-m)!important;height:85%!important;opacity:.9}.tirso-tc__content{width:calc(100% - var(--tt-text-side-m)*2);right:var(--tt-text-side-m);bottom:var(--tt-text-bottom-m)}.tirso-tc__quote{font-size:var(--tt-quote-size-m)}.tirso-tc__byline{margin-top:12px}.tirso-tc__dots{bottom:13px}.tirso-tc__arrow{width:34px;height:34px;font-size:22px}.tirso-tc__arrow--prev{left:8px}.tirso-tc__arrow--next{right:8px}}@media(prefers-reduced-motion:reduce){.tirso-tc__slide{transition:none}}

/* Versión 1.1: tres fondos independientes por diapositiva */
.tirso-tc__backgrounds{position:absolute;inset:0;z-index:0;overflow:hidden}.tirso-tc__backgrounds .tirso-tc__background{inset:0;opacity:0;transition:opacity var(--tt-bg-duration,1100ms) ease}.tirso-tc__backgrounds .tirso-tc__background.is-bg-active{opacity:1}.tirso-tc__person{transform:translate(calc(var(--tt-person-x,0px) + var(--tt-slide-person-x,0px)),calc(var(--tt-person-y,0px) + var(--tt-slide-person-y,0px)))}
@media(max-width:767px){.tirso-tc__person{transform:translate(calc(var(--tt-person-x-m,0px) + var(--tt-slide-person-x,0px)),calc(var(--tt-person-y-m,0px) + var(--tt-slide-person-y,0px)))}}
@media(prefers-reduced-motion:reduce){.tirso-tc__backgrounds .tirso-tc__background{transition:none}}

/* v1.3: cada fotografía tiene un ciclo de zoom completo, sincronizado con su permanencia. */
.tirso-tc__backgrounds .tirso-tc__background{transform:scale(1);will-change:transform,opacity;backface-visibility:hidden;transition:opacity var(--tt-bg-duration,1100ms) cubic-bezier(.45,0,.55,1);}
.tirso-tc__backgrounds .tirso-tc__background.is-bg-active{z-index:2;opacity:1}
.tirso-tc__backgrounds .tirso-tc__background.is-bg-leaving{z-index:1;opacity:0}
.tirso-tc.tt-zoom .tirso-tc__slide.is-active .tirso-tc__background:is(.is-bg-active,.is-bg-leaving){animation:tt-kenburns var(--tt-bg-cycle,5000ms) linear both}
.tirso-tc.tt-zoom.tt-zoom-out .tirso-tc__slide.is-active .tirso-tc__background:is(.is-bg-active,.is-bg-leaving){animation-name:tt-kenburns-out}
.tirso-tc.tt-zoom.tt-zoom-alternate .tirso-tc__slide.is-active .tirso-tc__background:is(.is-bg-active,.is-bg-leaving){animation-name:tt-kenburns-alternate}
@keyframes tt-kenburns{from{transform:scale(1)}to{transform:scale(var(--tt-bg-zoom-scale,1.12))}}
@keyframes tt-kenburns-out{from{transform:scale(var(--tt-bg-zoom-scale,1.12))}to{transform:scale(1)}}
@keyframes tt-kenburns-alternate{0%{transform:scale(1)}50%{transform:scale(var(--tt-bg-zoom-scale,1.12))}100%{transform:scale(1)}}
.tirso-tc__person{width:var(--tt-person-width)!important;height:var(--tt-slide-person-height,100%)!important;scale:calc(var(--tt-slide-person-width,100) / 100) calc(var(--tt-slide-person-height,100) / 100);transform-origin:bottom left}
@media(max-width:767px){.tirso-tc__person{width:var(--tt-person-width-m)!important;height:85%!important;scale:calc(var(--tt-slide-person-width-m,100) / 100) calc(var(--tt-slide-person-height-m,100) / 100);transform:translate(calc(var(--tt-person-x-m,0px) + var(--tt-slide-person-x-m,0px)),calc(var(--tt-person-y-m,0px) + var(--tt-slide-person-y-m,0px)))}}
.tirso-tc__viewport.tt-dragging{cursor:grabbing!important;user-select:none;touch-action:pan-y}
.tirso-tc__viewport.tt-draggable{cursor:grab;touch-action:pan-y}
.tirso-tc__viewport.tt-draggable img{-webkit-user-drag:none;user-select:none;pointer-events:none}
@media(prefers-reduced-motion:reduce){.tirso-tc.tt-zoom .tirso-tc__slide.is-active .tirso-tc__background:is(.is-bg-active,.is-bg-leaving){animation:none!important}}
