/* ==== Scope: White on Black + Times only for site container & side menu ==== */
html, body { background:#000; scroll-behavior:smooth; }

/* Site content + side menu */
#bl-page-container, #bl-page-container *,
#bl-side-menu, #bl-side-menu * {
  color:#fff !important;
  font-family:"Times New Roman", Times, serif !important;
}

/* Links in site content & side menu */
#bl-page-container a, #bl-page-container a:visited,
#bl-side-menu a, #bl-side-menu a:visited {
  color:#fff !important; text-decoration:none !important;
}
#bl-page-container a:hover { color:#ccc !important; }

/* Hide theme header/footer menus (one-page UX) */
.ct-header .ct-menu, .ct-footer .ct-menu { display:none !important; }

/* ==== Sections container ==== */
.bl-container { width:100%; }
.bl-section { min-height:100vh; display:flex; align-items:center; justify-content:center; padding:48px 20px; }
.bl-hero { text-align:center; }

/* Glitch logo (subtle, monochrome) */
.bl-glitch-logo{ position:relative; display:inline-block; width:min(46vw,520px) }
.bl-glitch-logo img{ display:block; width:100%; height:auto }
.bl-glitch-logo img.r,.bl-glitch-logo img.b{ position:absolute; inset:0; opacity:.45; mix-blend-mode:screen; pointer-events:none }
.bl-glitch-logo img.r{ filter:drop-shadow(0 0 0 #fff); animation:bl-gl-1 2.1s steps(6,end) infinite }
.bl-glitch-logo img.b{ filter:drop-shadow(0 0 0 #fff); animation:bl-gl-2 1.8s steps(7,end) infinite }
@keyframes bl-gl-1{0%{transform:translate(0,0)}20%{transform:translate(1px,-1px)}40%{transform:translate(-1px,1px)}60%{transform:translate(1px,0)}80%{transform:translate(-1px,1px)}100%{transform:translate(0,0)}}
@keyframes bl-gl-2{0%{transform:translate(0,0)}25%{transform:translate(-1px,1px)}50%{transform:translate(1px,0)}75%{transform:translate(-1px,-1px)}100%{transform:translate(0,0)}}

.bl-tagline{ color:#cfcfcf; margin:26px auto; max-width:780px; font-size:20px; line-height:1.45 }
.bl-buttons{ display:flex; gap:16px; justify-content:center; margin-top:8px }
.bl-btn{ background:#fff; color:#000 !important; padding:12px 20px; border-radius:10px; font-weight:700; }
.bl-btn-outline{ background:transparent; border:2px solid #fff; color:#fff !important; }

/* ==== Right-side fixed menu ==== */
#bl-side-menu{ position:fixed; top:50%; right:24px; transform:translateY(-50%); display:flex; flex-direction:column; gap:10px; z-index:9999 }
#bl-side-menu .bl-nav-link{
  color:#fff !important; border:1px solid rgba(255,255,255,.22); padding:8px 10px; border-radius:12px;
  font-size:14px; background:rgba(255,255,255,.04);
}
#bl-side-menu .bl-nav-link.is-active{ background:rgba(255,255,255,.16) }
@media (max-width: 768px){
  #bl-side-menu{ right:10px }
  #bl-side-menu .bl-nav-link{ padding:6px 8px; font-size:13px }
}

/* ==== Cinematic intro overlay ==== */
#bl-intro{ position:fixed; inset:0; background:#000; display:grid; place-items:center; z-index:99999 }
#bl-intro[hidden]{ display:none }
.bl-intro-center{ text-align:center }
.bl-intro-logo{ position:relative; width:min(50vw,560px) }
.bl-intro-logo img{ display:block; width:100%; height:auto }
.bl-intro-logo .slice-1,.bl-intro-logo .slice-2{ position:absolute; inset:0; opacity:.9; pointer-events:none }
.bl-intro-logo .slice-1{ clip-path: polygon(0 0,100% 0,100% 44%,0 40%); animation:intro-left .58s steps(2,end) 1 .15s both }
.bl-intro-logo .slice-2{ clip-path: polygon(0 60%,100% 56%,100% 100%,0 100%); animation:intro-right .58s steps(2,end) 1 .15s both }
@keyframes intro-left{0%{transform:translateX(0)}50%{transform:translateX(-10px)}100%{transform:translateX(0)}}
@keyframes intro-right{0%{transform:translateX(0)}50%{transform:translateX(10px)}100%{transform:translateX(0)}}
.bl-intro-fade{ animation:intro-fade .7s ease .7s both }
@keyframes intro-fade{ to{ opacity:0; visibility:hidden }}

@media (prefers-reduced-motion: reduce){
  .bl-glitch-logo img.r,.bl-glitch-logo img.b, .bl-intro-logo .slice-1,.bl-intro-logo .slice-2{ animation:none !important }
}

/* ==== Sections content loaded via AJAX ==== */
.bl-section .entry-content, .bl-section .ct-container, .bl-section main{ width:100%; max-width:1200px; }

/* ==== Glitch hover (content only) ==== */
:root{ --gl-dur: 240ms; --gl-shift: 2px; --gl-op:.8; }
/* apply only inside content container, not on side menu/Admin bar */
#bl-page-container a, #bl-page-container .wp-block-button__link, #bl-page-container button,
#bl-page-container h1, #bl-page-container h2, #bl-page-container h3,
#bl-page-container h4, #bl-page-container h5, #bl-page-container h6 {
  position:relative;
}
#bl-page-container a::before, #bl-page-container a::after,
#bl-page-container .wp-block-button__link::before, #bl-page-container .wp-block-button__link::after,
#bl-page-container button::before, #bl-page-container button::after,
#bl-page-container h1::before, #bl-page-container h1::after,
#bl-page-container h2::before, #bl-page-container h2::after,
#bl-page-container h3::before, #bl-page-container h3::after,
#bl-page-container h4::before, #bl-page-container h4::after,
#bl-page-container h5::before, #bl-page-container h5::after,
#bl-page-container h6::before, #bl-page-container h6::after {
  content: attr(data-text);
  position:absolute; inset:0; color:currentColor; opacity:0; pointer-events:none;
}
/* Two slices */
#bl-page-container a::before, #bl-page-container .wp-block-button__link::before,
#bl-page-container button::before,
#bl-page-container h1::before, #bl-page-container h2::before, #bl-page-container h3::before,
#bl-page-container h4::before, #bl-page-container h5::before, #bl-page-container h6::before {
  clip-path: polygon(0 0,100% 0,100% 45%,0 40%);
}
#bl-page-container a::after, #bl-page-container .wp-block-button__link::after,
#bl-page-container button::after,
#bl-page-container h1::after, #bl-page-container h2::after, #bl-page-container h3::after,
#bl-page-container h4::after, #bl-page-container h5::after, #bl-page-container h6::after {
  clip-path: polygon(0 60%,100% 55%,100% 100%,0 100%);
}
#bl-page-container a:hover::before, #bl-page-container .wp-block-button__link:hover::before,
#bl-page-container button:hover::before,
#bl-page-container h1:hover::before, #bl-page-container h2:hover::before, #bl-page-container h3:hover::before,
#bl-page-container h4:hover::before, #bl-page-container h5:hover::before, #bl-page-container h6:hover::before {
  animation: gl-left var(--gl-dur) steps(2,end) 1; opacity:var(--gl-op);
}
#bl-page-container a:hover::after, #bl-page-container .wp-block-button__link:hover::after,
#bl-page-container button:hover::after,
#bl-page-container h1:hover::after, #bl-page-container h2:hover::after, #bl-page-container h3:hover::after,
#bl-page-container h4:hover::after, #bl-page-container h5:hover::after, #bl-page-container h6:hover::after {
  animation: gl-right var(--gl-dur) steps(2,end) 1; opacity:var(--gl-op);
}
@keyframes gl-left { 0%{transform:translateX(0)} 50%{transform:translateX(calc(-1*var(--gl-shift)))} 100%{transform:translateX(0)} }
@keyframes gl-right{ 0%{transform:translateX(0)} 50%{transform:translateX(var(--gl-shift))} 100%{transform:translateX(0)} }

/* Disable glitch on side menu completely */
#bl-side-menu .bl-nav-link::before,
#bl-side-menu .bl-nav-link::after { content:none !important; }