
:root{
    --dct-text:#f4f7f9;
    --dct-muted:#b7c8d1;
    --dct-blue:#9BB4C2;
    --dct-blue-2:#CAECFF;
    --dct-blue-soft:rgba(155,180,194,.29);
    --dct-blue-soft-2:rgba(155,180,194,.18);
    --dct-line:#9BB4C2;
    --dct-gold:#FFD189;
    --dct-red:#B43434;
}
.dct-landing,.dct-cards,.dct-list{font-family:"Jura",system-ui,sans-serif}
.dct-landing h1,.dct-landing h2,.dct-landing h3,.dct-card h3,.dct-section-head h2{font-family:"Cinzel","Times New Roman",serif}
.dct-landing{background:transparent;color:var(--dct-text)}
.dct-container{width:min(1350px,calc(100% - 48px));margin:0 auto}

/* Trailer: full-width, like the Elementor template */
.dct-trailer{position:relative;width:100%;background:transparent;overflow:hidden}
.dct-video-shell{position:relative;width:100%;aspect-ratio:21/9}
.dct-video-shell iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* Header */
.dct-event-hero{position:relative;min-height:610px;background:transparent;display:flex;align-items:center;text-align:center}
.dct-event-overlay{display:none}
.dct-event-head{position:relative;z-index:1;padding:42px 0 32px}
.dct-event-symbol{line-height:1;margin-bottom:-12px}.dct-event-symbol img{width:74px;height:74px;object-fit:contain}
.dct-event-mark{display:flex;align-items:center;justify-content:center;gap:13px;width:min(470px,84%);margin:0 auto -8px;font:400 20px/1 "Cinzel",serif;letter-spacing:.48em;text-transform:uppercase;color:#fff}
.dct-event-mark span{height:1px;flex:1;background:rgba(242,248,255,.8)}
.dct-event-hero h1{font:400 clamp(48px,6vw,76px)/1 "Cinzel",serif;margin:18px 0 3px;text-transform:uppercase;background:linear-gradient(#fff,#9BB4C2);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.dct-event-hero h2{font:400 clamp(28px,4vw,50px)/1.15 "Cinzel",serif;color:var(--dct-gold);text-transform:uppercase;margin:7px 0}
.dct-event-venue{font:400 clamp(20px,2.4vw,35px)/1.2 "Cinzel",serif;text-transform:uppercase;color:#fff}
.dct-event-date{margin-top:22px;font:700 clamp(20px,3vw,44px)/1.1 "Jura",sans-serif;text-transform:uppercase;color:#fff}
.dct-capacity-line{margin-top:15px;font:400 16px/1.4 "Cinzel",serif;text-transform:uppercase;color:var(--dct-gold)}

/* Countdown */
.dct-countdown{width:min(780px,100%);margin:26px auto 0;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(155,180,194,.31)}
.dct-countdown>div{padding:12px 8px;border-right:1px solid rgba(255,255,255,.18)}
.dct-countdown>div:last-child{border-right:0}
.dct-countdown strong{display:block;font:400 34px/1.1 "Jura",sans-serif}
.dct-countdown span{font:400 10px/1.3 "Jura",sans-serif;text-transform:uppercase;letter-spacing:.08em}
.dct-hero-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:18px}

/* Buttons */
.dct-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border:1px solid var(--dct-blue);color:#fff;background:rgba(155,180,194,.16);font:800 12px/1 "Jura",sans-serif;text-transform:uppercase;text-decoration:none;transition:.2s}
a.dct-btn:hover{background:rgba(155,180,194,.4);color:#fff}
.dct-btn-gold{background:var(--dct-gold);border-color:var(--dct-gold);color:#131313}
.dct-btn-danger{background:var(--dct-red);border-color:var(--dct-red)}

/* Native seating chart */
.dct-seating-section{padding:22px 0;background:transparent}

/* Main content = 70 / 25 like Elementor */
.dct-content-section{padding:30px 0 90px;background:transparent}
.dct-two-cols{display:grid;grid-template-columns:minmax(0,70fr) minmax(270px,25fr);gap:5%;align-items:start}
.dct-main-column{min-width:0}
.dct-block{margin-bottom:58px}
.dct-venue-photo{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;margin-bottom:24px}
.dct-lead{margin:0 0 24px;padding:12px 18px;text-align:center;font:italic 400 18px/1.6 Georgia,serif;background:linear-gradient(90deg,rgba(61,99,121,.68),rgba(24,24,24,.24));color:#fff}
.dct-prose{font:400 17px/1.82 "Jura",sans-serif;color:inherit}
.dct-prose p{margin:0 0 1.35em}

/* Sticky sidebar: both panels move together */
.dct-sidebar{position:relative;align-self:stretch}
.dct-sidebar-sticky{position:sticky;top:88px;display:flex;flex-direction:column;gap:16px}
.dct-info-panel{border:2px solid var(--dct-blue);padding:7%;background:rgba(155,180,194,.12);backdrop-filter:blur(5px)}
.dct-info-row{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;margin-bottom:24px;font:400 15px/1.58 "Jura",sans-serif}
.dct-info-row:last-child{margin-bottom:0}
.dct-info-row strong{font-weight:800}
.dct-info-row small{display:block;margin-top:8px;font-style:italic;color:var(--dct-muted)}
.dct-info-icon{width:28px;height:28px;display:block}.dct-info-icon img{width:28px;height:28px;display:block;object-fit:contain}

/* Section headings */
.dct-section-head{text-align:center;margin-bottom:22px}
.dct-section-head h2{display:flex;align-items:center;justify-content:center;gap:14px;margin:0;font:400 28px/1.25 "Cinzel",serif;text-transform:uppercase;color:#fff}
.dct-section-head .dct-line{height:1px;flex:1;background:var(--dct-blue)}
.dct-section-head p{margin:8px 0 0;font:400 11px/1.4 "Jura",sans-serif;text-transform:uppercase;color:var(--dct-blue-2)}
.dct-section-head-left h2{justify-content:flex-start}

/* Reviews carousel */
.dct-testimonials-carousel{overflow:hidden;width:100%;position:relative}
.dct-testimonials-track{display:flex;gap:24px;will-change:transform;transition:transform .65s cubic-bezier(.22,.61,.36,1)}
.dct-testimonials-track blockquote{position:relative;flex:0 0 calc((100% - 48px)/3);margin:0;padding:30px;background:rgba(155,180,194,.18);border:0;min-height:210px}
.dct-testimonials-track .dct-quote{position:absolute;right:18px;top:8px;font:400 44px/1 Georgia,serif;color:#fff}
.dct-testimonials-track p{margin:0 0 18px;font:italic 400 15px/1.68 "Jura",sans-serif}
.dct-testimonials-track cite{font:700 12px/1.2 "Jura",sans-serif;color:var(--dct-blue-2);font-style:normal;text-transform:uppercase}

/* Artist */
.dct-artist{display:grid;grid-template-columns:55% 45%;gap:25px;align-items:center}
.dct-artist img{width:100%;height:auto;display:block;filter:grayscale(1)}

/* FAQs + map */
.dct-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.dct-faqs details{margin:0 0 7px;background:rgba(155,180,194,.31)}
.dct-faqs summary{cursor:pointer;list-style:none;padding:12px 15px;font:700 12px/1.35 "Jura",sans-serif;color:#fff}
.dct-faqs summary::-webkit-details-marker{display:none}
.dct-faqs summary:before{content:"+";margin-right:10px}
.dct-faqs details[open] summary{background:rgba(155,180,194,.68)}
.dct-faqs details[open] summary:before{content:"−"}
.dct-faqs details>div{padding:15px;border-top:1px solid rgba(255,255,255,.15);font:400 12px/1.6 "Jura",sans-serif}
.dct-map{aspect-ratio:4/3;overflow:hidden}
.dct-map iframe{width:100%;height:100%;border:0;filter:saturate(0)}
.dct-map-address{text-align:center;font-size:11px;color:var(--dct-muted)}

/* Cards / list */
.dct-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.dct-card{border:1px solid rgba(155,180,194,.45);background:rgba(5,20,29,.42);color:var(--dct-text)}
.dct-card-media{display:block;position:relative;aspect-ratio:16/9;background:center/cover no-repeat}
.dct-card-date{position:absolute;top:20px;left:27px;display:flex;gap:12px;color:#fff}
.dct-card-date strong{font:400 42px/1 "Cinzel",serif}
.dct-card-date span{font:400 16px/1.05 "Cinzel",serif}
.dct-card-body{padding:24px 28px}
.dct-card h3{font:400 28px/1.08 "Cinzel",serif;text-transform:uppercase;margin:0 0 8px}
.dct-card h3 a{color:inherit;text-decoration:none}
.dct-detail{font:600 12px/1.35 "Jura",sans-serif;text-transform:uppercase;margin:6px 0}

.dct-list{border-top:1px solid rgba(155,180,194,.45)}
.dct-row{display:grid;grid-template-columns:82px 1.45fr 1.45fr .55fr 1fr 1fr;border:1px solid rgba(155,180,194,.45);border-top:0;background:rgba(5,20,29,.25);color:var(--dct-text)}
.dct-row>div{padding:13px;border-right:1px solid rgba(155,180,194,.45);display:flex;flex-direction:column;justify-content:center}
.dct-row>div:last-child{border-right:0}
.dct-row-date{align-items:center}.dct-row-date strong{font:400 25px/1 "Cinzel",serif}.dct-row-date span{font-size:10px}
.dct-row-label{font-size:9px;text-transform:uppercase;color:var(--dct-muted);margin-bottom:5px}
.dct-row strong{font-size:12px}.dct-row small{font-size:10px;color:var(--dct-muted);margin-top:3px}
.dct-status{font-size:10px;text-transform:uppercase}.dct-status-on_sale{color:#4cf395}.dct-status-coming{color:#ef75ff}.dct-status-sold_out,.dct-status-cancelled{color:#ff7676}
.dct-btn-small{min-height:34px;padding:0 13px;font-size:10px}
.dct-mobile-buy{display:none}

@media(max-width:900px){
    .dct-review-card{flex-basis:100%!important}
    .dct-container{width:min(100% - 34px,1350px)}
    .dct-two-cols{grid-template-columns:1fr}
    .dct-sidebar{order:-1}
    .dct-sidebar-sticky{position:relative;top:auto;display:grid;grid-template-columns:1fr 1fr}
    .dct-artist{grid-template-columns:1fr}
    .dct-bottom-grid{grid-template-columns:1fr}
    .dct-cards{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
    .dct-review-card{flex-basis:100%!important}
    .dct-video-shell{aspect-ratio:16/9}
    .dct-event-hero{min-height:590px}
    .dct-event-mark{font-size:14px;letter-spacing:.25em}
    .dct-event-hero h1{font-size:43px}
    .dct-event-date{font-size:18px;line-height:1.45}
    .dct-countdown strong{font-size:28px}
    .dct-countdown span{font-size:8px}
    .dct-sidebar-sticky{grid-template-columns:1fr}
    .dct-cards{grid-template-columns:1fr}
    .dct-mobile-buy{position:fixed;left:0;right:0;bottom:0;z-index:9999;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:rgba(10,16,20,.94);border-top:1px solid var(--dct-blue)}
    .dct-mobile-buy div{display:flex;flex-direction:column}.dct-mobile-buy strong{font:400 12px/1.2 "Cinzel",serif}.dct-mobile-buy span{font-size:10px}
    .dct-mobile-buy a{padding:12px 18px;background:var(--dct-gold);color:#111;text-decoration:none;text-transform:uppercase;font-weight:800}
}


/* Próximos / histórico: tabla visual original */
.dct-table-wrap{width:100%;overflow-x:auto}
.dct-table{width:100%;border-collapse:collapse;color:#f3f6f8;background:transparent;font-family:"Jura",sans-serif}
.dct-table th,.dct-table td{border:1px solid rgba(166,190,202,.52);padding:10px 12px;text-align:left;vertical-align:middle}
.dct-table th{background:rgba(126,151,164,.47);font-size:14px;font-weight:500;text-transform:uppercase;color:#fff}
.dct-table td{height:84px;font-size:14px}
.dct-date-badge{width:72px;height:62px;border-radius:15px;background:rgba(155,180,194,.45);display:flex;flex-direction:column;align-items:center;justify-content:center;text-transform:uppercase}
.dct-date-badge strong{font:400 25px/1 "Jura",sans-serif}
.dct-date-badge span{font:400 13px/1 "Jura",sans-serif;margin-top:8px}
.dct-place-province{font-weight:400}
.dct-status-pill{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:165px;padding:5px 15px;border-radius:999px;font:400 12px/1 "Jura",sans-serif}
.dct-status-pill i{width:8px;height:8px;border-radius:50%;background:#aed9ef}
.dct-status-coming{background:rgba(99,0,135,.72)}.dct-status-coming i{background:#d315ff}
.dct-status-on_sale{background:rgba(0,122,48,.72)}.dct-status-on_sale i{background:#00ff65}
.dct-status-finished{background:rgba(29,45,54,.88)}.dct-status-finished i{background:#b9dff1}
.dct-status-sold_out,.dct-status-cancelled{background:rgba(150,39,39,.74)}.dct-status-sold_out i,.dct-status-cancelled i{background:#ff6666}
.dct-table-buy{display:inline-flex;align-items:center;justify-content:center;min-width:118px;min-height:39px;padding:0 18px;background:#cce8f7;color:#041017;text-transform:uppercase;text-decoration:none;font:700 12px/1 "Jura",sans-serif}
.dct-table-buy:hover{background:#fff;color:#041017}
.dct-table-buy-static{cursor:default}

@media(max-width:680px){
    .dct-table,.dct-table tbody,.dct-table tr,.dct-table td{display:block;width:100%}
    .dct-table thead{display:none}
    .dct-table tr{border:1px solid rgba(166,190,202,.52);margin-bottom:18px;padding:12px 15px}
    .dct-table td{height:auto;border:0;display:grid;grid-template-columns:100px 1fr;gap:12px;padding:9px 0}
    .dct-table td:before{content:attr(data-label);font-size:10px;text-transform:uppercase;color:var(--dct-muted)}
}


/* 1.4 — exact sizing and historical/list parity */
.dct-table{table-layout:fixed}
.dct-table th:nth-child(1),.dct-table td:nth-child(1){width:10.5%}
.dct-table th:nth-child(2),.dct-table td:nth-child(2){width:25%}
.dct-table th:nth-child(3),.dct-table td:nth-child(3){width:25%}
.dct-table th:nth-child(4),.dct-table td:nth-child(4){width:8.5%}
.dct-table th:nth-child(5),.dct-table td:nth-child(5){width:17%}
.dct-table th:nth-child(6),.dct-table td:nth-child(6){width:14%}
.dct-status-pill{color:#fff!important}
.dct-status-pill i{flex:0 0 8px}
.dct-status-coming{background:rgba(103,0,137,.70)!important;color:#fff!important}
.dct-status-on_sale{background:rgba(0,117,45,.68)!important;color:#fff!important}
.dct-status-finished{background:rgba(29,45,54,.88)!important;color:#fff!important}
.dct-status-sold_out{background:rgba(139,20,29,.78)!important;color:#fff!important}
.dct-table-soldout{background:#ff0808!important;color:#000!important;font-weight:700}

/* Force the real webfonts instead of Times/system fallbacks. */
.dct-landing,
.dct-landing p,
.dct-landing div,
.dct-landing span,
.dct-landing a,
.dct-landing li,
.dct-table,
.dct-cards{font-family:"Jura",sans-serif!important}
.dct-landing h1,
.dct-landing h2,
.dct-landing h3,
.dct-landing .dct-event-mark,
.dct-landing .dct-event-venue,
.dct-landing .dct-capacity-line,
.dct-card h3{font-family:"Cinzel",serif!important}

/* Ticketing launcher centered without touching D:C Ticketing's fullscreen modal */
.dct-hero-ticketing,
.dct-sidebar-ticketing{display:flex;justify-content:center;align-items:center;text-align:center}
.dct-hero-ticketing > .dc-seating-launcher-wrap,
.dct-sidebar-ticketing > .dc-seating-launcher-wrap{display:inline-block;width:auto;max-width:100%}

/* Sidebar reproduces the Elementor cards */
.dct-info-panel{border:2px solid var(--dct-blue);padding:22px 24px}
.dct-info-panel-top{background:rgba(155,180,194,.28);backdrop-filter:blur(5px)}
.dct-info-panel-bottom{background:transparent;backdrop-filter:none}
.dct-info-icon{width:26px;height:26px}
.dct-info-icon img{
    width:26px;height:26px;display:block;object-fit:contain;
    filter:brightness(0) saturate(100%) invert(83%) sepia(14%) saturate(560%) hue-rotate(156deg) brightness(91%) contrast(87%);
}
.dct-info-row{font-size:15.5px;line-height:1.62}
.dct-info-row small{font-size:14px;line-height:1.6;font-style:italic;margin-top:10px;color:#fff}
.dct-sidebar-ticketing{text-align:center}
.dct-sidebar-ticketing > *{margin-left:auto!important;margin-right:auto!important}

/* Fixed lead phrase */
.dct-lead{
    margin:22px 0 30px;
    padding:0;
    background:none!important;
    color:var(--dct-blue-2)!important;
    text-align:center;
    font:italic 400 20px/1.6 Georgia,serif!important;
}

/* FAQ + map are full-width and are no longer constrained by the sticky sidebar. */
.dct-bottom-full{margin-top:10px}
.dct-bottom-full .dct-bottom-grid{grid-template-columns:1fr 1fr}

/* SOLD OUT result */
.dct-soldout-banner{padding:14px 0 26px;background:transparent}
.dct-soldout-banner .dct-container{
    background:rgba(205,0,0,.82);
    color:#fff;text-align:center;
    padding:26px 20px;
    font:700 24px/1.2 "Jura",sans-serif!important;
    text-transform:uppercase;
}

/* Reviews — 2 desktop / 1 tablet / 1 mobile */
.dct-testimonials-carousel{position:relative;padding:0 46px 36px;overflow:hidden}
.dct-testimonials-track{display:flex;gap:24px;will-change:transform;transition:transform .6s cubic-bezier(.22,.61,.36,1)}
.dct-review-card{
    position:relative;
    flex:0 0 calc((100% - 24px)/2)!important;
    min-height:410px!important;
    margin:0!important;
    padding:0!important;
    background:rgba(20,51,69,.72)!important;
    border:0!important;
    box-shadow:none!important;
    overflow:hidden;
}
.dct-review-card:before{display:none!important}
.dct-review-head{
    min-height:70px;
    padding:18px 22px 14px;
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    background:rgba(155,180,194,.25);
}
.dct-review-head strong{
    display:block;
    font:500 15px/1.2 "Cinzel",serif!important;
    text-transform:uppercase;
    color:#fff;
}
.dct-review-head span:not(.dct-quote){
    display:block;
    margin-top:4px;
    font:500 11px/1.2 "Jura",sans-serif!important;
    text-transform:uppercase;
    color:var(--dct-blue-2);
}
.dct-review-head .dct-quote{
    position:static!important;
    font:700 34px/1 Georgia,serif!important;
    color:#fff;
}
.dct-review-body{padding:20px 22px 28px}
.dct-review-body p{
    margin:0!important;
    font:italic 500 14px/1.55 "Jura",sans-serif!important;
    color:#fff;
}
.dct-carousel-arrow{
    position:absolute;top:46%;transform:translateY(-50%);
    z-index:4;width:34px;height:40px;
    display:flex;align-items:center;justify-content:center;
    border:1px solid rgba(255,255,255,.85);
    border-radius:4px;
    background:rgba(0,0,0,.18);
    color:#fff;cursor:pointer;
    font:400 30px/1 "Jura",sans-serif;
}
.dct-carousel-prev{left:0}.dct-carousel-next{right:0}
.dct-carousel-dots{
    position:absolute;left:50%;bottom:6px;transform:translateX(-50%);
    display:flex;gap:10px;align-items:center;justify-content:center;
}
.dct-carousel-dot{
    width:8px;height:8px;padding:0;border:0;border-radius:50%;
    background:#fff;opacity:.95;cursor:pointer;
}
.dct-carousel-dot.is-active{background:var(--dct-blue-2);box-shadow:0 0 0 2px rgba(255,255,255,.18)}
@media(max-width:900px){
    .dct-table{table-layout:auto}
    .dct-testimonials-carousel{padding:0 36px}
    .dct-info-row{font-size:15px}
}
@media(max-width:680px){
    .dct-table th,.dct-table td{width:auto!important}
    .dct-bottom-full .dct-bottom-grid{grid-template-columns:1fr}
    .dct-testimonials-carousel{padding:0 28px}
    .dct-carousel-arrow{width:26px;font-size:34px}
    .dct-soldout-banner .dct-container{font-size:18px}
}


/* 1.5 — video preview without YouTube chrome */
.dct-trailer{position:relative;width:100%;overflow:hidden;background:#000}
.dct-video-poster{
    position:relative;display:block;width:100%;aspect-ratio:21/9;
    padding:0;border:0;background:#000;cursor:pointer;overflow:hidden;
}
.dct-video-poster>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.dct-video-shade{position:absolute;inset:0;background:rgba(0,0,0,.22);transition:.25s}
.dct-video-play{
    position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
    width:70px;height:70px;border:2px solid #fff;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    background:rgba(0,0,0,.22);
    animation:dctPlayPulse 1.8s ease-in-out infinite;
}
.dct-video-play i{
    width:0;height:0;border-top:11px solid transparent;border-bottom:11px solid transparent;
    border-left:18px solid #fff;margin-left:5px;
}
.dct-video-poster:hover .dct-video-shade{background:rgba(0,0,0,.12)}
@keyframes dctPlayPulse{
    0%,100%{box-shadow:0 0 0 0 rgba(255,255,255,.22)}
    50%{box-shadow:0 0 0 14px rgba(255,255,255,0)}
}
.dct-video-shell-created{position:relative;width:100%;aspect-ratio:21/9;background:#000}
.dct-video-shell-created iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* More visual countdown */
.dct-countdown{
    width:min(900px,100%);
    margin-top:30px;
    background:rgba(155,180,194,.34);
    border-top:1px solid rgba(202,236,255,.26);
    border-bottom:1px solid rgba(202,236,255,.26);
    box-shadow:0 10px 32px rgba(0,0,0,.12);
}
.dct-countdown>div{padding:20px 12px}
.dct-countdown strong{font-size:48px!important;line-height:1!important;font-weight:500!important}
.dct-countdown span{font-size:11px!important;letter-spacing:.15em!important;margin-top:5px;display:block}

/* Keep sidebar icons from flashing at intrinsic SVG size before stylesheet paint */
.dct-event-symbol img{display:block;width:74px!important;height:74px!important;margin:0 auto}
.dct-info-icon{display:block;width:26px!important;height:26px!important;overflow:hidden}
.dct-info-icon img{display:block;width:26px!important;height:26px!important;max-width:26px!important;max-height:26px!important}

/* Card images use WordPress responsive image markup instead of full-size CSS backgrounds */
.dct-card-media{position:relative;overflow:hidden;background:rgba(0,0,0,.14)}
.dct-card-image{
    position:absolute;inset:0;width:100%;height:100%;
    object-fit:cover;display:block;
}

/* Table proportions matching the reference */
.dct-table th:nth-child(1),.dct-table td:nth-child(1){width:8.5%!important}
.dct-table th:nth-child(2),.dct-table td:nth-child(2){width:24.5%!important}
.dct-table th:nth-child(3),.dct-table td:nth-child(3){width:24.5%!important}
.dct-table th:nth-child(4),.dct-table td:nth-child(4){width:8.5%!important}
.dct-table th:nth-child(5),.dct-table td:nth-child(5){width:17%!important}
.dct-table th:nth-child(6),.dct-table td:nth-child(6){width:17%!important}

@media(max-width:900px){
    .dct-review-card{flex:0 0 100%!important;min-height:360px!important}
}
@media(max-width:680px){
    .dct-video-poster,.dct-video-shell-created{aspect-ratio:16/9}
    .dct-video-play{width:56px;height:56px}
    .dct-countdown strong{font-size:34px!important}
    .dct-countdown>div{padding:16px 5px}
    .dct-testimonials-carousel{padding-left:36px;padding-right:36px}
}


/* 1.6 */
.dct-landing *{box-sizing:border-box}
.dct-event-date,.dct-event-date strong,.dct-event-date span{font-family:"Bebas Neue",sans-serif!important;font-weight:400!important;letter-spacing:.015em}
.dct-video-poster,.dct-video-poster img,.dct-trailer{border:0!important;outline:0!important;box-shadow:none!important}
@media(max-width:680px){
  .dct-table-wrap{overflow-x:auto!important;overflow-y:hidden;-webkit-overflow-scrolling:touch;padding-bottom:8px;scrollbar-width:thin}
  .dct-table{display:table!important;width:760px!important;min-width:760px!important;table-layout:fixed!important;border-collapse:collapse!important}
  .dct-table thead{display:table-header-group!important}.dct-table tbody{display:table-row-group!important}.dct-table tr{display:table-row!important;width:auto!important;border:0!important;margin:0!important;padding:0!important}
  .dct-table th,.dct-table td{display:table-cell!important;width:auto!important;height:76px!important;border:1px solid rgba(166,190,202,.52)!important;padding:9px 10px!important;vertical-align:middle!important}
  .dct-table th{height:auto!important;font-size:11px!important}.dct-table td:before{display:none!important;content:none!important}
  .dct-table th:nth-child(1),.dct-table td:nth-child(1){width:82px!important;position:sticky;left:0;z-index:2;background:rgba(7,28,40,.96)}.dct-table th:nth-child(1){z-index:3;background:rgba(126,151,164,.88)}
  .dct-table th:nth-child(2),.dct-table td:nth-child(2){width:180px!important}.dct-table th:nth-child(3),.dct-table td:nth-child(3){width:185px!important}.dct-table th:nth-child(4),.dct-table td:nth-child(4){width:72px!important}.dct-table th:nth-child(5),.dct-table td:nth-child(5){width:130px!important}.dct-table th:nth-child(6),.dct-table td:nth-child(6){width:111px!important}
  .dct-date-badge{width:58px;height:55px;border-radius:12px}.dct-date-badge strong{font-size:22px}.dct-date-badge span{font-size:10px;margin-top:6px}.dct-status-pill{min-width:116px;padding:5px 10px;font-size:10px}.dct-table-buy{min-width:91px;min-height:34px;padding:0 10px;font-size:10px}
  .dct-landing{overflow-x:clip}.dct-container{width:calc(100% - 28px)!important;max-width:none!important}.dct-event-head{padding:30px 0 24px!important}.dct-event-symbol img{width:58px!important;height:58px!important}.dct-event-mark{width:min(330px,88%)!important;font-size:12px!important;letter-spacing:.22em!important;gap:9px!important;margin-bottom:0!important}.dct-event-hero h1{font-size:clamp(38px,12vw,52px)!important;line-height:1.03!important;margin:12px 0 7px!important;overflow-wrap:anywhere}.dct-event-hero h2{font-size:clamp(24px,8vw,34px)!important;line-height:1.12!important;margin:5px 0!important}.dct-event-venue{font-size:18px!important;line-height:1.35!important;padding:0 5px}.dct-event-date{font-size:27px!important;line-height:1.18!important;margin-top:18px!important;padding:0 3px}.dct-event-date strong,.dct-event-date span{display:inline!important}
  .dct-countdown{width:100%!important;margin-top:22px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}.dct-countdown>div{min-width:0!important;padding:14px 3px!important}.dct-countdown strong{font-size:30px!important}.dct-countdown span{font-size:7.5px!important;letter-spacing:.06em!important}.dct-capacity-line{font-size:13px!important;line-height:1.45!important;padding:0 10px}.dct-hero-ticketing{width:100%;overflow:visible}.dct-hero-ticketing>*{max-width:100%!important}
  .dct-content-section{padding:28px 0 70px!important}.dct-two-cols{display:flex!important;flex-direction:column!important;gap:30px!important}.dct-main-column{width:100%!important}.dct-sidebar{width:100%!important;order:2!important}.dct-sidebar-sticky{display:flex!important;flex-direction:column!important;gap:14px!important}.dct-info-panel{padding:20px 18px!important}.dct-info-row{grid-template-columns:30px minmax(0,1fr)!important;gap:11px!important;font-size:14px!important}.dct-info-row small{font-size:13px!important}.dct-block{margin-bottom:42px!important}.dct-venue-photo{margin-bottom:18px!important}.dct-lead{margin:16px 0 24px!important;font-size:17px!important;line-height:1.55!important;padding:0 4px!important}.dct-prose{font-size:15.5px!important;line-height:1.72!important}.dct-section-head h2{font-size:21px!important;line-height:1.25!important;gap:9px!important}.dct-section-head p{font-size:9px!important}.dct-review-card{min-height:330px!important}.dct-review-head{padding:15px 17px 12px!important;min-height:61px!important}.dct-review-body{padding:17px!important}.dct-review-body p{font-size:13.5px!important}.dct-artist{display:flex!important;flex-direction:column!important;gap:20px!important}.dct-artist img{width:100%!important}.dct-bottom-full{width:calc(100% - 28px)!important}.dct-bottom-grid{display:flex!important;flex-direction:column!important;gap:22px!important}.dct-map{aspect-ratio:1.15/1!important}.dct-faqs summary{font-size:12px!important;padding:12px 13px!important}
}
@media(min-width:681px) and (max-width:900px){.dct-event-hero{min-height:auto;padding:28px 0}.dct-event-date{font-size:34px!important}.dct-countdown strong{font-size:40px!important}.dct-content-section{padding-top:38px}.dct-two-cols{gap:34px}.dct-sidebar-sticky{display:grid;grid-template-columns:1fr 1fr;gap:18px}.dct-sidebar-ticketing{grid-column:1/-1}}

/* =========================================================
 * 1.7.0 — Concert cards carousel
 * Visual language: rectangular, editorial, theme-inherited.
 * The shortcode intentionally inherits typography and colour
 * from the page/theme instead of imposing the landing fonts.
 * ======================================================= */
.dct-concerts-carousel{
    --dct-concert-gap:22px;
    --dct-concert-accent:var(--e-global-color-primary,currentColor);
    position:relative;
    width:100%;
    padding:0 46px 30px;
    color:inherit;
    font-family:inherit!important;
}
.dct-concerts-carousel *{box-sizing:border-box}
.dct-concerts-viewport{width:100%;overflow:hidden}
.dct-concerts-carousel .dct-cards{
    display:flex!important;
    grid-template-columns:none!important;
    gap:var(--dct-concert-gap)!important;
    width:100%;
    transform:translate3d(0,0,0);
    transition:transform .62s cubic-bezier(.22,.61,.36,1);
    will-change:transform;
    font-family:inherit!important;
}
.dct-concerts-carousel .dct-card{
    position:relative;
    flex:0 0 calc((100% - (var(--dct-concert-gap) * 2))/3);
    min-width:0;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.24);
    border-color:color-mix(in srgb,currentColor 28%,transparent);
    border-radius:0!important;
    background:transparent!important;
    color:inherit!important;
    box-shadow:none;
    isolation:isolate;
    transition:border-color .25s ease,transform .25s ease;
}
.dct-concerts-carousel .dct-card:hover{
    border-color:color-mix(in srgb,var(--dct-concert-accent) 68%,transparent);
    transform:translateY(-2px);
}
.dct-concerts-carousel .dct-card-media{
    position:relative;
    display:block;
    width:100%;
    height:clamp(260px,25vw,390px);
    aspect-ratio:auto!important;
    overflow:hidden;
    background:transparent!important;
    color:inherit;
}
.dct-concerts-carousel .dct-card-image{
    position:absolute;
    inset:0;
    display:block;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover;
    object-position:center;
    transform:scale(1.002);
    transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .4s ease;
    -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 53%,rgba(0,0,0,.94) 62%,rgba(0,0,0,.62) 75%,transparent 100%);
    mask-image:linear-gradient(to bottom,#000 0%,#000 53%,rgba(0,0,0,.94) 62%,rgba(0,0,0,.62) 75%,transparent 100%);
}
.dct-concerts-carousel .dct-card:hover .dct-card-image{transform:scale(1.025)}
.dct-card-media-fade{
    position:absolute;
    inset:0;
    z-index:1;
    pointer-events:none;
    background:linear-gradient(to bottom,rgba(0,0,0,.08) 0%,transparent 40%,rgba(0,0,0,.10) 60%,transparent 100%);
}
.dct-concerts-carousel .dct-card-date{
    position:absolute;
    z-index:2;
    top:20px;
    left:22px;
    display:flex;
    align-items:flex-start;
    gap:12px;
    margin:0;
    padding:12px 14px 11px;
    color:#fff;
    background:rgba(0,0,0,.42);
    border:1px solid rgba(255,255,255,.18);
    border-radius:0!important;
    backdrop-filter:blur(6px);
    -webkit-backdrop-filter:blur(6px);
}
.dct-concerts-carousel .dct-card-date strong{
    display:block;
    margin:0;
    font-family:inherit!important;
    font-size:clamp(32px,3vw,46px)!important;
    font-weight:400!important;
    line-height:.92!important;
    letter-spacing:-.03em;
}
.dct-concerts-carousel .dct-card-date span{
    display:flex;
    min-height:40px;
    flex-direction:column;
    justify-content:space-between;
    padding-left:11px;
    border-left:1px solid rgba(255,255,255,.38);
    font-family:inherit!important;
    line-height:1!important;
}
.dct-concerts-carousel .dct-card-date b,
.dct-concerts-carousel .dct-card-date em{
    display:block;
    font:inherit;
    font-style:normal;
    font-weight:500;
    text-transform:uppercase;
}
.dct-concerts-carousel .dct-card-date b{font-size:13px;letter-spacing:.08em}
.dct-concerts-carousel .dct-card-date em{font-size:10px;letter-spacing:.14em;opacity:.8}
.dct-concerts-carousel .dct-card-body{
    position:relative;
    z-index:3;
    margin-top:-88px;
    padding:22px 26px 27px!important;
    background:transparent!important;
    color:inherit;
}
.dct-card-place{
    margin:0 0 8px;
    font-family:inherit!important;
    font-size:11px;
    font-weight:600;
    line-height:1.2;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:var(--dct-concert-accent);
    opacity:.9;
}
.dct-concerts-carousel .dct-card h3{
    margin:0 0 10px!important;
    padding:0;
    color:inherit!important;
    font-family:inherit!important;
    font-size:clamp(22px,2vw,30px)!important;
    font-weight:inherit!important;
    line-height:1.08!important;
    letter-spacing:inherit!important;
    text-transform:uppercase;
}
.dct-concerts-carousel .dct-card h3 a{color:inherit!important;text-decoration:none!important;font:inherit!important}
.dct-concerts-carousel .dct-detail{
    margin:5px 0!important;
    color:inherit!important;
    font-family:inherit!important;
    font-size:11px!important;
    font-weight:inherit!important;
    line-height:1.35!important;
    letter-spacing:.04em;
    text-transform:uppercase;
    opacity:.76;
}
.dct-concerts-carousel .dct-card-time{
    margin-top:14px!important;
    opacity:1;
}
.dct-concerts-carousel .dct-card-time:before{
    content:"◷";
    display:inline-block;
    margin-right:8px;
    font-size:14px;
    transform:translateY(1px);
    opacity:.75;
}
.dct-card-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-top:18px;
    flex-wrap:wrap;
}
.dct-concerts-carousel .dct-btn{
    min-height:42px;
    margin:0;
    padding:0 17px;
    border:1px solid currentColor!important;
    border-radius:0!important;
    background:color-mix(in srgb,var(--dct-concert-accent) 12%,transparent)!important;
    color:inherit!important;
    font-family:inherit!important;
    font-size:11px!important;
    font-weight:600!important;
    line-height:1!important;
    letter-spacing:.03em;
    text-transform:uppercase;
    text-decoration:none!important;
    transition:background .2s ease,border-color .2s ease;
}
.dct-concerts-carousel a.dct-btn:hover{
    background:color-mix(in srgb,var(--dct-concert-accent) 25%,transparent)!important;
    border-color:var(--dct-concert-accent)!important;
    color:inherit!important;
}
.dct-card-details{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:inherit!important;
    font-family:inherit!important;
    font-size:10px;
    font-weight:500;
    letter-spacing:.08em;
    text-transform:uppercase;
    text-decoration:none!important;
    opacity:.68;
    transition:opacity .2s ease;
}
.dct-card-details:hover{color:inherit!important;opacity:1}
.dct-card-details span{font-size:17px;line-height:1}

/* Page controls — one movement = one complete group (3 / 2 / 1). */
.dct-concert-arrow{
    position:absolute;
    top:44%;
    z-index:8;
    width:34px;
    height:52px;
    padding:0;
    display:flex;
    align-items:center;
    justify-content:center;
    transform:translateY(-50%);
    border:0;
    border-radius:0!important;
    background:transparent;
    color:inherit;
    font-family:inherit;
    font-size:25px;
    font-weight:300;
    line-height:1;
    opacity:.72;
    cursor:pointer;
    transition:opacity .2s ease,transform .2s ease;
}
.dct-concert-arrow:hover{opacity:1}
.dct-concert-prev{left:2px}.dct-concert-next{right:2px}
.dct-concert-arrow[hidden],.dct-concert-dots[hidden]{display:none!important}
.dct-concert-dots{
    position:absolute;
    left:50%;
    bottom:2px;
    display:flex;
    gap:9px;
    align-items:center;
    justify-content:center;
    transform:translateX(-50%);
}
.dct-concert-dot{
    width:24px;
    height:2px;
    padding:0;
    border:0;
    border-radius:0!important;
    background:currentColor;
    opacity:.24;
    cursor:pointer;
    transition:opacity .2s ease,width .2s ease;
}
.dct-concert-dot.is-active{width:38px;opacity:.9}

@media(max-width:1024px){
    .dct-concerts-carousel{--dct-concert-gap:18px;padding-left:40px;padding-right:40px}
    .dct-concerts-carousel .dct-card{flex-basis:calc((100% - var(--dct-concert-gap))/2)}
    .dct-concerts-carousel .dct-card-media{height:330px}
}
@media(max-width:680px){
    .dct-concerts-carousel{--dct-concert-gap:14px;padding:0 25px 28px}
    .dct-concerts-carousel .dct-card{flex-basis:100%}
    .dct-concerts-carousel .dct-card-media{height:320px}
    .dct-concerts-carousel .dct-card-body{margin-top:-84px;padding:20px 20px 24px!important}
    .dct-concerts-carousel .dct-card-date{top:16px;left:16px;padding:10px 12px}
    .dct-concerts-carousel .dct-card h3{font-size:24px!important}
    .dct-card-actions{align-items:flex-start;flex-direction:column}
    .dct-concert-arrow{width:24px;font-size:22px}
    .dct-concert-prev{left:0}.dct-concert-next{right:0}
}

@media(prefers-reduced-motion:reduce){
    .dct-concerts-carousel .dct-cards,
    .dct-concerts-carousel .dct-card,
    .dct-concerts-carousel .dct-card-image{transition:none!important}
}

/* =========================================================
 * 1.8.0 — Concert carousel visual correction
 * Full-bleed layout + Cinzel/Jura + reference-style date badge.
 * ======================================================= */
.dct-concerts-carousel{
    --dct-concert-gap:24px;
    --dct-concert-accent:#C8913A;
    --dct-concert-bg:#07131b;
    width:100vw!important;
    max-width:none!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    padding:0 clamp(28px,4vw,72px) 34px!important;
    color:inherit;
    font-family:"Jura",sans-serif!important;
}
.dct-concerts-carousel .dct-cards{gap:var(--dct-concert-gap)!important}
.dct-concerts-carousel .dct-card{
    flex:0 0 calc((100% - (var(--dct-concert-gap) * 2))/3)!important;
    min-height:560px;
    border:1px solid rgba(255,255,255,.22)!important;
    background:var(--dct-concert-bg)!important;
    color:inherit!important;
}
.dct-concerts-carousel .dct-card:hover{border-color:rgba(200,145,58,.8)!important}
.dct-concerts-carousel .dct-card-media{
    height:390px!important;
    background:var(--dct-concert-bg)!important;
}
.dct-concerts-carousel .dct-card-image{
    -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 58%,rgba(0,0,0,.96) 68%,rgba(0,0,0,.7) 79%,rgba(0,0,0,.28) 90%,transparent 100%)!important;
    mask-image:linear-gradient(to bottom,#000 0%,#000 58%,rgba(0,0,0,.96) 68%,rgba(0,0,0,.7) 79%,rgba(0,0,0,.28) 90%,transparent 100%)!important;
}
.dct-card-media-fade{
    background:linear-gradient(to bottom,rgba(0,0,0,.04) 0%,transparent 50%,rgba(7,19,27,.12) 68%,rgba(7,19,27,.72) 89%,var(--dct-concert-bg) 100%)!important;
}
.dct-concerts-carousel .dct-card-date{
    top:20px!important;
    left:20px!important;
    gap:0!important;
    min-width:132px;
    padding:13px 15px 12px!important;
    align-items:stretch!important;
    background:rgba(4,8,12,.62)!important;
    border:1px solid rgba(255,255,255,.22)!important;
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
}
.dct-concerts-carousel .dct-card-date strong{
    min-width:59px;
    padding-right:13px;
    font-family:"Cinzel",serif!important;
    font-size:46px!important;
    font-weight:400!important;
    line-height:1!important;
    letter-spacing:-.045em!important;
    color:#fff!important;
}
.dct-concerts-carousel .dct-card-date span{
    min-height:auto!important;
    padding:3px 0 2px 13px!important;
    border-left:1px solid rgba(255,255,255,.48)!important;
    font-family:"Jura",sans-serif!important;
    justify-content:space-between!important;
}
.dct-concerts-carousel .dct-card-date b{
    font-family:"Jura",sans-serif!important;
    font-size:13px!important;
    font-weight:700!important;
    line-height:1!important;
    letter-spacing:.06em!important;
    color:#fff!important;
}
.dct-concerts-carousel .dct-card-date em{
    font-family:"Jura",sans-serif!important;
    font-size:10px!important;
    font-weight:600!important;
    line-height:1!important;
    letter-spacing:.12em!important;
    color:#fff!important;
    opacity:.9!important;
}
.dct-concerts-carousel .dct-card-body{
    margin-top:-88px!important;
    padding:22px 27px 28px!important;
    background:linear-gradient(to bottom,rgba(7,19,27,0) 0%,var(--dct-concert-bg) 24%,var(--dct-concert-bg) 100%)!important;
}
.dct-card-place{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    margin:0 0 10px!important;
    color:inherit!important;
    font-family:"Jura",sans-serif!important;
    font-size:12px!important;
    font-weight:600!important;
    letter-spacing:.06em!important;
    opacity:.92!important;
}
.dct-card-icon{
    display:inline-flex;
    flex:0 0 15px;
    width:15px;
    height:15px;
    color:#C8913A!important;
}
.dct-card-icon svg{
    display:block;
    width:100%;
    height:100%;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.dct-concerts-carousel .dct-card h3{
    margin-bottom:8px!important;
    font-family:"Cinzel",serif!important;
    font-size:clamp(25px,2.1vw,34px)!important;
    font-weight:400!important;
    line-height:1.08!important;
    letter-spacing:-.025em!important;
    text-transform:uppercase!important;
}
.dct-concerts-carousel .dct-card h3 a{font-family:"Cinzel",serif!important;font-weight:400!important;letter-spacing:-.025em!important}
.dct-concerts-carousel .dct-detail{
    font-family:"Jura",sans-serif!important;
    font-size:11px!important;
    font-weight:600!important;
    letter-spacing:.035em!important;
    opacity:.78!important;
}
.dct-concerts-carousel .dct-card-time{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    margin-top:15px!important;
    color:inherit!important;
    opacity:1!important;
}
.dct-concerts-carousel .dct-card-time:before{display:none!important;content:none!important}
.dct-card-actions{
    display:block!important;
    margin-top:20px!important;
}
.dct-concerts-carousel .dct-btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:46px!important;
    padding:0 22px!important;
    border:1px solid #C8913A!important;
    background:#C8913A!important;
    color:#081017!important;
    font-family:"Jura",sans-serif!important;
    font-size:11px!important;
    font-weight:700!important;
    letter-spacing:.045em!important;
    text-transform:uppercase!important;
    box-shadow:none!important;
}
.dct-concerts-carousel a.dct-btn:hover{
    background:transparent!important;
    border-color:#C8913A!important;
    color:#C8913A!important;
}
.dct-concerts-carousel .dct-btn-muted{
    background:transparent!important;
    color:#C8913A!important;
}
.dct-card-details{display:none!important}
.dct-concert-dot.is-active{background:#C8913A!important}
.dct-concert-arrow{color:#C8913A!important}

@media(max-width:1024px){
    .dct-concerts-carousel{
        width:100vw!important;
        --dct-concert-gap:18px;
        padding-left:34px!important;
        padding-right:34px!important;
    }
    .dct-concerts-carousel .dct-card{flex-basis:calc((100% - var(--dct-concert-gap))/2)!important}
    .dct-concerts-carousel .dct-card-media{height:360px!important}
}
@media(max-width:680px){
    .dct-concerts-carousel{
        width:100vw!important;
        --dct-concert-gap:14px;
        padding:0 20px 30px!important;
    }
    .dct-concerts-carousel .dct-card{flex-basis:100%!important;min-height:0}
    .dct-concerts-carousel .dct-card-media{height:340px!important}
    .dct-concerts-carousel .dct-card-body{margin-top:-80px!important;padding:21px 20px 25px!important}
    .dct-concerts-carousel .dct-card-date{top:16px!important;left:16px!important;min-width:124px;padding:11px 13px 10px!important}
    .dct-concerts-carousel .dct-card-date strong{min-width:55px;font-size:41px!important}
    .dct-concerts-carousel .dct-card h3{font-size:26px!important}
    .dct-concerts-carousel .dct-btn{width:100%;min-height:46px!important}
}

/* =========================================================
 * 1.9.0 — Elementor-contained concert carousel correction
 * Stay inside the shortcode/widget container; stacked date badge;
 * transparent gold-outline CTA.
 * ======================================================= */
.dct-concerts-carousel{
    --dct-concert-gap:22px;
    --dct-concert-accent:#C8913A;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0 34px 32px!important;
    overflow:hidden!important;
}
.dct-concerts-viewport{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
}
.dct-concerts-carousel .dct-cards{
    width:100%!important;
    max-width:100%!important;
    gap:var(--dct-concert-gap)!important;
}
.dct-concerts-carousel .dct-card{
    flex:0 0 calc((100% - (var(--dct-concert-gap) * 2))/3)!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
}

/* Date: 20 / SEP / line / 2026 */
.dct-concerts-carousel .dct-card-date{
    top:20px!important;
    left:20px!important;
    min-width:88px!important;
    width:88px!important;
    padding:12px 10px 11px!important;
    display:block!important;
    text-align:center!important;
    background:rgba(4,8,12,.62)!important;
    border:1px solid rgba(255,255,255,.22)!important;
}
.dct-concerts-carousel .dct-card-date strong{
    display:block!important;
    min-width:0!important;
    padding:0!important;
    margin:0 0 5px!important;
    font-family:"Cinzel",serif!important;
    font-size:44px!important;
    font-weight:400!important;
    line-height:.95!important;
    letter-spacing:-.04em!important;
}
.dct-concerts-carousel .dct-card-date span{
    display:block!important;
    min-height:0!important;
    padding:0!important;
    border:0!important;
    font-family:"Jura",sans-serif!important;
}
.dct-concerts-carousel .dct-card-date b{
    display:block!important;
    margin:0!important;
    font-family:"Jura",sans-serif!important;
    font-size:12px!important;
    font-weight:700!important;
    line-height:1.1!important;
    letter-spacing:.08em!important;
}
.dct-concerts-carousel .dct-card-date b::after{
    content:"";
    display:block;
    width:38px;
    height:1px;
    margin:8px auto 7px;
    background:rgba(255,255,255,.48);
}
.dct-concerts-carousel .dct-card-date em{
    display:block!important;
    margin:0!important;
    font-family:"Jura",sans-serif!important;
    font-size:9px!important;
    font-weight:600!important;
    line-height:1!important;
    letter-spacing:.13em!important;
    opacity:.9!important;
}

/* Gold outline only — no fill. */
.dct-concerts-carousel .dct-btn,
.dct-concerts-carousel .dct-btn-muted{
    background:transparent!important;
    border:1px solid #C8913A!important;
    color:#C8913A!important;
    box-shadow:none!important;
}
.dct-concerts-carousel a.dct-btn:hover{
    background:transparent!important;
    border-color:#C8913A!important;
    color:#C8913A!important;
    opacity:.78;
}

/* Keep controls inside the Elementor widget instead of widening the page. */
.dct-concert-prev{left:2px!important}
.dct-concert-next{right:2px!important}

@media(max-width:1024px){
    .dct-concerts-carousel{
        width:100%!important;
        max-width:100%!important;
        margin:0!important;
        --dct-concert-gap:18px;
        padding:0 30px 30px!important;
    }
    .dct-concerts-carousel .dct-card{
        flex-basis:calc((100% - var(--dct-concert-gap))/2)!important;
    }
}
@media(max-width:680px){
    .dct-concerts-carousel{
        width:100%!important;
        max-width:100%!important;
        margin:0!important;
        --dct-concert-gap:14px;
        padding:0 24px 28px!important;
    }
    .dct-concerts-carousel .dct-card{flex-basis:100%!important}
    .dct-concerts-carousel .dct-card-date{
        top:16px!important;
        left:16px!important;
        min-width:78px!important;
        width:78px!important;
        padding:10px 8px!important;
    }
    .dct-concerts-carousel .dct-card-date strong{font-size:39px!important}
    .dct-concerts-carousel .dct-card-date b{font-size:11px!important}
    .dct-concerts-carousel .dct-card-date b::after{width:34px;margin:7px auto 6px}
    .dct-concerts-carousel .dct-card-date em{font-size:8px!important}
}

/* =========================================================
 * 2.0.0 — exact 3-column sizing + typography + sticky restore
 * ======================================================= */
.dct-concerts-carousel{
    --dct-concert-gap:20px;
    width:100%!important;
    max-width:100%!important;
    padding:0 0 34px!important;
    margin:0!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
}
.dct-concerts-viewport{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
}
.dct-concerts-carousel .dct-cards{
    display:flex!important;
    flex-wrap:nowrap!important;
    width:100%!important;
    max-width:none!important;
    gap:var(--dct-concert-gap)!important;
    box-sizing:border-box!important;
}
/* Three equal cards across the exact Elementor shortcode width. */
.dct-concerts-carousel .dct-card{
    flex:0 0 calc((100% - (var(--dct-concert-gap) * 2)) / 3)!important;
    width:calc((100% - (var(--dct-concert-gap) * 2)) / 3)!important;
    min-width:0!important;
    max-width:none!important;
    box-sizing:border-box!important;
}

/* Requested type scale. */
.dct-concerts-carousel .dct-card h3,
.dct-concerts-carousel .dct-card h3 a{
    font-family:"Cinzel",serif!important;
    font-size:35px!important;
    font-weight:400!important;
    line-height:1.08!important;
}
.dct-concerts-carousel .dct-card-venue{
    font-family:"Jura",sans-serif!important;
    font-size:20px!important;
    font-weight:600!important;
    line-height:1.25!important;
}
.dct-concerts-carousel .dct-card-place,
.dct-concerts-carousel .dct-card-time,
.dct-concerts-carousel .dct-detail.dct-card-time{
    font-family:"Jura",sans-serif!important;
    font-size:16px!important;
    line-height:1.3!important;
}
.dct-concerts-carousel .dct-btn,
.dct-concerts-carousel .dct-btn-muted{
    min-height:48px!important;
    padding:0 22px!important;
    font-family:"Jura",sans-serif!important;
    font-size:16px!important;
    font-weight:700!important;
    line-height:1!important;
    background:transparent!important;
    border:1px solid #C8913A!important;
    color:#C8913A!important;
}

/* Date badge: 20 / SEP / line / 2026 — all Cinzel. */
.dct-concerts-carousel .dct-card-date,
.dct-concerts-carousel .dct-card-date strong,
.dct-concerts-carousel .dct-card-date span,
.dct-concerts-carousel .dct-card-date b,
.dct-concerts-carousel .dct-card-date em{
    font-family:"Cinzel",serif!important;
}
.dct-concerts-carousel .dct-card-date strong{
    color:#fff!important;
    font-size:44px!important;
    font-weight:400!important;
    line-height:.95!important;
}
.dct-concerts-carousel .dct-card-date b{
    color:#C8913A!important;
    font-size:17px!important;
    font-weight:500!important;
    line-height:1.05!important;
    letter-spacing:.06em!important;
}
.dct-concerts-carousel .dct-card-date b::after{
    width:42px!important;
    margin:9px auto 8px!important;
    background:rgba(255,255,255,.62)!important;
}
.dct-concerts-carousel .dct-card-date em{
    color:#fff!important;
    font-size:12px!important;
    font-style:normal!important;
    font-weight:400!important;
    line-height:1!important;
    letter-spacing:.08em!important;
    opacity:1!important;
}

/* Keep carousel controls over the shortcode instead of reserving side width. */
.dct-concert-prev{left:8px!important}
.dct-concert-next{right:8px!important}

/* Restore the single-concert sticky sidebar on desktop. */
@media(min-width:901px){
    .dct-content-section,
    .dct-content-section .dct-container,
    .dct-two-cols,
    .dct-sidebar{
        overflow:visible!important;
    }
    .dct-sidebar{
        position:relative!important;
        align-self:stretch!important;
    }
    .dct-sidebar-sticky{
        position:-webkit-sticky!important;
        position:sticky!important;
        top:88px!important;
        align-self:flex-start!important;
        height:max-content!important;
        z-index:10!important;
    }
}

@media(max-width:1024px){
    .dct-concerts-carousel{--dct-concert-gap:18px;padding:0 0 32px!important}
    .dct-concerts-carousel .dct-card{
        flex-basis:calc((100% - var(--dct-concert-gap)) / 2)!important;
        width:calc((100% - var(--dct-concert-gap)) / 2)!important;
    }
}
@media(max-width:680px){
    .dct-concerts-carousel{--dct-concert-gap:14px;padding:0 0 28px!important}
    .dct-concerts-carousel .dct-card{
        flex-basis:100%!important;
        width:100%!important;
    }
    .dct-concerts-carousel .dct-card h3,
    .dct-concerts-carousel .dct-card h3 a{font-size:30px!important}
    .dct-concerts-carousel .dct-card-venue{font-size:17px!important}
    .dct-concerts-carousel .dct-card-place,
    .dct-concerts-carousel .dct-card-time,
    .dct-concerts-carousel .dct-detail.dct-card-time,
    .dct-concerts-carousel .dct-btn,
    .dct-concerts-carousel .dct-btn-muted{font-size:15px!important}
    .dct-concerts-carousel .dct-card-date strong{font-size:39px!important}
    .dct-concerts-carousel .dct-card-date b{font-size:15px!important}
    .dct-concerts-carousel .dct-card-date em{font-size:11px!important}
}

/*
 * 2.0.2 — sticky sidebar + D:C Ticketing canvas stacking fix
 * -------------------------------------------------------------------------- */
@media(min-width:901px){
    /* A sticky child needs a parent taller than itself. The grid previously
       used align-items:start, which collapsed the sidebar to its own content. */
    .dct-two-cols{
        align-items:stretch!important;
    }
    .dct-main-column{
        min-width:0!important;
    }
    .dct-sidebar{
        position:relative!important;
        align-self:stretch!important;
        min-height:100%!important;
        overflow:visible!important;
    }
    .dct-sidebar-sticky{
        position:-webkit-sticky!important;
        position:sticky!important;
        top:88px!important;
        align-self:flex-start!important;
        height:auto!important;
        max-height:none!important;
        overflow:visible!important;
        z-index:auto!important;
    }

    /* The Ticketing launcher/modal is intentionally a sibling of the sticky
       wrapper. This keeps its fullscreen canvas out of the sticky stacking
       context so overlays and close controls remain interactive. */
    .dct-sidebar-ticketing{
        position:relative!important;
        z-index:auto!important;
        margin-top:16px!important;
        overflow:visible!important;
    }
}


/* =========================================================
 * 2.0.3 — sticky root fix + hero spacing + complete hover frame
 * ======================================================= */

/*
 * Sticky fix: `overflow-x:hidden` on an ancestor creates a scrolling
 * container in the other axis too. That made the sidebar stick to
 * .dct-landing instead of the viewport. `clip` prevents horizontal
 * spill without creating a sticky containing block.
 */
.dct-landing{
    overflow-x:clip!important;
    overflow-y:visible!important;
}

/* Give the identity mark proper breathing room. The previous negative
 * margins intentionally pulled the icon/label together and caused the
 * head symbol to collide with "TRIBUTO A" at real page sizes. */
.dct-event-symbol{
    line-height:1!important;
    margin:0 0 14px!important;
}
.dct-event-symbol img{
    display:block!important;
    margin:0 auto!important;
}
.dct-event-mark{
    margin:0 auto 12px!important;
    gap:16px!important;
    line-height:1.15!important;
}
.dct-event-hero h1{
    margin:10px 0 7px!important;
}

@media(min-width:901px){
    .dct-content-section,
    .dct-content-section > .dct-container,
    .dct-two-cols,
    .dct-sidebar{
        overflow:visible!important;
        contain:none!important;
    }
    .dct-two-cols{
        align-items:stretch!important;
    }
    .dct-sidebar{
        align-self:stretch!important;
        position:relative!important;
        min-height:100%!important;
    }
    .dct-sidebar-sticky{
        position:-webkit-sticky!important;
        position:sticky!important;
        top:88px!important;
        align-self:flex-start!important;
        height:max-content!important;
        max-height:calc(100vh - 108px)!important;
        overflow:visible!important;
        z-index:1!important;
    }
}

/* Keep the hover frame above the image/fade layers, including the top edge. */
.dct-concerts-carousel .dct-card::after{
    content:"";
    position:absolute;
    inset:-1px;
    z-index:8;
    pointer-events:none;
    border:1px solid transparent;
    transition:border-color .25s ease;
}
.dct-concerts-carousel .dct-card:hover::after{
    border-color:#C8913A!important;
}

@media(max-width:680px){
    .dct-event-symbol{margin-bottom:10px!important}
    .dct-event-mark{margin-bottom:10px!important;gap:10px!important}
    .dct-event-hero h1{margin-top:9px!important}
}

/* =========================================================
 * 2.0.4 — sticky sidebar as one atomic block
 * ======================================================= */
@media(min-width:901px){
    /* Panels + purchase CTA must travel as a single unit. */
    .dct-sidebar-sticky{
        position:-webkit-sticky!important;
        position:sticky!important;
        top:88px!important;
        display:flex!important;
        flex-direction:column!important;
        gap:16px!important;
        width:100%!important;
        height:max-content!important;
        max-height:none!important;
        overflow:visible!important;
        contain:none!important;
        isolation:auto!important;
        z-index:2!important;
    }

    /* The launcher is part of the sticky flow, never an independently
       scrolling/floating sibling. This prevents it sliding behind panel 2. */
    .dct-sidebar-ticketing{
        position:relative!important;
        inset:auto!important;
        width:100%!important;
        margin:0!important;
        padding:0!important;
        display:flex!important;
        justify-content:center!important;
        align-items:center!important;
        overflow:visible!important;
        contain:none!important;
        z-index:auto!important;
    }
    .dct-sidebar-ticketing > *{
        margin:0 auto!important;
        max-width:100%!important;
    }
}


/* =========================================================
 * 2.0.5 — Ticketing canvas must always paint above the sticky sidebar
 * ======================================================= */
@media(min-width:901px){
    /* `position:sticky` creates its own stacking context. In 2.0.4 the
       explicit z-index:2 put the whole concert sidebar above D:C Ticketing's
       fullscreen seating canvas. Keep the sticky behavior, but place that
       stacking context at the page base layer so Ticketing overlays can win. */
    .dct-sidebar,
    .dct-sidebar-sticky{
        z-index:0!important;
        isolation:auto!important;
    }

    /* The information cards must never establish a layer above the Ticketing
       interface. Their translucent/backdrop styling remains unchanged. */
    .dct-info-panel{
        position:relative!important;
        z-index:0!important;
    }

    /* Do not promote the launcher or any of its wrappers. The D:C Ticketing
       plugin is then free to place its own fullscreen canvas/dialog at its
       native overlay z-index. */
    .dct-sidebar-ticketing,
    .dct-sidebar-ticketing > *{
        z-index:auto!important;
        isolation:auto!important;
    }
}
