/*
Theme Name: The Bas[s]ment
Author: The Bas[s]ment
Description: Underground techno platform. Editable homepage, events and DJ sets.
Version: 1.1.6
Requires at least: 6.6
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: the-bassment
*/
:root{--bg:#151515;--panel:#242424;--fg:#f2f2f2;--muted:#b8b8b8;--accent:#d2d2d2;--line:#454545}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font:17px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:5px}img{max-width:100%;height:auto}button{font:inherit}.wrap{max-width:1400px;margin:auto;padding:0 6vw}.site-header{border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:105px}.brand{font-weight:900;font-size:25px;letter-spacing:-1.5px}.brand img{max-width:220px;max-height:65px;width:auto}.nav{display:flex;gap:26px;align-items:center;font-size:14px;text-transform:uppercase;font-weight:700}.nav ul{display:flex;list-style:none;gap:26px;margin:0;padding:0}.menu-toggle{display:none;color:var(--fg);background:none;border:1px solid var(--line);padding:8px 13px}.eyebrow{text-transform:uppercase;font-size:14px;letter-spacing:2px;color:var(--accent);font-weight:700}.hero{padding:85px 0 65px;position:relative}.hero h1{font-size:clamp(60px,10vw,150px);line-height:.92;letter-spacing:-.065em;max-width:1100px;margin:28px 0 35px;text-transform:uppercase}.hero h1 span{color:var(--accent)}.hero-bottom{display:flex;gap:45px;justify-content:space-between;align-items:end}.hero-bottom p{max-width:480px;color:var(--muted);margin:0}.actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-block;padding:13px 22px;border:1px solid var(--line);font-weight:700;font-size:15px}.button.primary{background:var(--accent);border-color:var(--accent);color:#151515}.band{background:var(--accent);color:#151515;padding:16px 6vw;font-weight:800;text-transform:uppercase;display:flex;justify-content:space-between;gap:20px;font-size:14px;flex-wrap:wrap}.section{padding:70px 0;border-bottom:1px solid var(--line)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:30px}.section h2{font-size:clamp(34px,5vw,66px);line-height:1.05;letter-spacing:-.04em;margin:0}.section-head a{font-size:14px;text-transform:uppercase}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{border:1px solid var(--line);padding:26px;background:var(--panel)}.card img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;margin-bottom:22px}.card h3{font-size:27px;line-height:1.15;letter-spacing:-.025em;margin:15px 0}.card p{color:var(--muted);font-size:16px}.tag{font-size:12px;letter-spacing:1px;text-transform:uppercase;border:1px solid var(--line);padding:5px 9px;display:inline-block}.date{color:var(--accent);font-weight:700;font-size:14px}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px}.split p{color:var(--muted);margin-top:0}.big-note{font-size:clamp(32px,4vw,57px);font-weight:800;letter-spacing:-.04em;line-height:1.15}.facts{display:flex;gap:40px;flex-wrap:wrap;margin-top:30px}.facts strong{font-size:34px;color:var(--accent);display:block}.facts span{color:var(--muted);font-size:14px}.channels{display:flex;flex-wrap:wrap;gap:15px;margin-top:25px}.site-footer{padding:45px 0}.footer-inner{display:flex;justify-content:space-between;gap:35px}.site-footer p{color:var(--muted);font-size:14px}.content{max-width:850px;padding:65px 0}.content h1{font-size:clamp(38px,6vw,78px);line-height:1.05;letter-spacing:-.04em}.content a{color:var(--accent);text-decoration:underline}.content iframe{max-width:100%}.wp-block-embed__wrapper{max-width:100%}.empty{color:var(--muted);border:1px solid var(--line);padding:25px}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:20px;top:20px;background:var(--accent);color:#151515;padding:12px;z-index:100}.pagination{margin-top:25px}.pagination a,.pagination span{padding:8px}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:800px){.header-inner{min-height:85px;flex-wrap:wrap;padding:15px 0}.menu-toggle{display:block}.nav{display:none;width:100%;padding:15px 0}.nav.open{display:flex}.nav,.nav ul{flex-direction:column;align-items:flex-start}.hero{padding:55px 0}.hero-bottom,.footer-inner{flex-direction:column;align-items:start}.hero h1{font-size:clamp(52px,12vw,90px)}.grid,.split{grid-template-columns:1fr}.split{gap:25px}.section{padding:45px 0}.section-head{align-items:start}.section-head a{max-width:120px}.band{justify-content:start}.facts{gap:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Industrial hero: photographs keep their original colours. */
.hero-media{position:absolute;inset:0;overflow:hidden;z-index:0;background:var(--panel)}
.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1s ease}
.hero-slide.is-active{opacity:1}
.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.55))}
.hero.has-media{padding:75px 36px 36px;margin:32px -36px}
.hero-copy,.hero-controls{position:relative;z-index:1}
.hero.has-media .hero-copy{color:#f2f2f2;--accent:#f2f2f2;--muted:#e0e0e0;--line:#b8b8b8}
.hero.has-media .button:not(.primary){background:rgba(0,0,0,.5)}
.hero-controls{display:flex;gap:8px;margin-top:26px;align-items:center}
.hero-controls button{background:#242424;color:#f2f2f2;border:1px solid #777;padding:7px 14px;cursor:pointer}
.hero-controls span{font-size:13px;color:#f2f2f2}
body .byta{--yt-line:var(--line);--yt-bg:var(--panel);--yt-fg:var(--fg);--yt-accent:var(--accent)}
@media(max-width:800px){.hero.has-media{margin:20px -16px;padding:45px 16px 25px}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}

/* Mobile sizing: allow content to shrink instead of widening the viewport. */
.hero-copy,.hero-bottom>*,.split>*,.grid>*,.section-head>*,.footer-inner>*{min-width:0}
.content,.byta{width:100%;max-width:100%}
.content img,.content video,.content iframe{max-width:100%}
.content p,.site-footer p,.card h3,.byta-player h3{overflow-wrap:anywhere}
body .byta-controls{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr)}
body .byta-controls>div{min-width:0}
body .byta input,body .byta select{min-width:0;max-width:100%}
@media(max-width:850px){body .byta-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
 body{font-size:16px;line-height:1.55}
 .wrap{padding-left:20px;padding-right:20px}
 .header-inner{padding:16px 20px;gap:12px;min-height:76px}
 .brand{font-size:21px;letter-spacing:-1px;min-width:0}
 .brand img{max-width:min(190px,55vw);max-height:50px}
 .menu-toggle{font-size:14px;min-height:44px;padding:8px 12px}
 .nav,.nav ul{gap:12px;width:100%}
 .nav a{display:block;padding:6px 0}
 .hero{padding:42px 0 36px}
 .hero h1{font-size:clamp(32px,9.5vw,56px);line-height:1.02;letter-spacing:-.045em;margin:22px 0 25px;overflow-wrap:normal}
 .eyebrow{font-size:11px;letter-spacing:1px;line-height:1.6}
 .hero-bottom{gap:24px;align-items:stretch}
 .hero-bottom p{max-width:100%}
 .actions{display:grid;grid-template-columns:1fr;width:100%;gap:10px}
 .button{text-align:center;padding:12px 16px;min-height:46px;font-size:14px}
 .hero.has-media{margin:16px 0;padding:32px 18px 22px}
 .hero-controls{flex-wrap:wrap;gap:8px}
 .hero-controls button{min-height:44px}
 .band{padding:16px 20px;gap:8px;font-size:12px;flex-direction:column}
 .section{padding:36px 0}
 .section h2{font-size:clamp(28px,8vw,40px)}
 .section-head{flex-direction:column;gap:12px;margin-bottom:22px}
 .section-head a{max-width:none;font-size:12px;min-height:32px}
 .card{padding:18px}.card h3{font-size:23px}
 .facts{display:grid;grid-template-columns:1fr;gap:18px}.facts strong{font-size:28px}
 .channels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .channels .button{padding:12px 6px;font-size:13px}
 .content{padding:36px 0}
 .content h1{font-size:34px}
 .content .alignwide,.content .alignfull{width:100%;max-width:100%;margin-left:0;margin-right:0}
 body .byta-controls,body .byta-grid{grid-template-columns:minmax(0,1fr)}
 body .byta-controls>div:first-child{grid-column:auto}
 body .byta-player{padding:14px}
 body .byta-player h3{font-size:20px}
 body .byta-count,body .byta-small,body .byta-label{color:var(--muted)}
 #sbi_images{display:flex!important;flex-wrap:wrap!important}
 #sb_instagram #sbi_images .sbi_item{width:100%!important;max-width:100%!important}
 #sb_instagram .sbi_header_text{min-width:0;overflow-wrap:anywhere}
}

.ade-callout{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);background:var(--panel);padding:18px 22px;margin-bottom:32px}
.ade-callout>span{color:var(--fg);font-weight:800;letter-spacing:1px;text-transform:uppercase;font-size:14px}
.ade-callout .ade-button{background:var(--accent);color:#151515;border-color:var(--accent);font-weight:800}
@media(max-width:600px){.ade-callout{padding:16px;margin-bottom:26px;gap:12px}.ade-callout .ade-button{width:100%}.ade-callout>span{font-size:12px}}

/* Yellow ADE highlight, independent of the website palette. */
.ade-callout{background:#ffed00;border-color:#ffed00;color:#151515}
.ade-callout>span{color:#151515}
.ade-callout .ade-button{background:#151515;border-color:#151515;color:#ffed00}
.ade-callout .ade-button:hover{background:#303030;border-color:#303030;color:#ffed00}
.ade-callout .ade-button:focus-visible{outline:3px solid #151515;outline-offset:4px}
