/*
Theme Name: Vintage computer festival
Theme URI: https://generatepress.com
Template: generatepress
Author: Jay Roberts
Author URI: https://generatepress.com/about
Description: GeneratePress is a lightweight WordPress theme built with a focus on speed and usability. Performance is important to us, which is why a fresh GeneratePress install adds less than 10kb (gzipped) to your page size. We take full advantage of the block editor (Gutenberg), which gives you more control over creating your content. If you use page builders, GeneratePress is the right theme for you. It is completely compatible with all major page builders, including Beaver Builder and Elementor. Thanks to our emphasis on WordPress coding standards, we can boast full compatibility with all well-coded plugins, including WooCommerce. GeneratePress is fully responsive, uses valid HTML/CSS, and is translated into over 25 languages by our amazing community of users. A few of our many features include 60+ color controls, powerful dynamic typography, 5 navigation locations, 5 sidebar layouts, dropdown menus (click or hover), and 9 widget areas. Learn more and check out our powerful premium version at https://generatepress.com
Tags: two-columns,three-columns,one-column,right-sidebar,left-sidebar,footer-widgets,blog,e-commerce,flexible-header,full-width-template,buddypress,custom-header,custom-background,custom-menu,custom-colors,sticky-post,threaded-comments,translation-ready,rtl-language-support,featured-images,theme-options
Version: 1.01.1776604124
Updated: 2026-04-19 14:08:44


*/

/*html * {
    outline: 1px solid #fff;
}

.home .site-content {
    display: block;
    padding:0;
}
*/

:root {
  --retro-primary: #00ff41;
  --retro-secondary: #ffb000;
  --retro-bg: #050505;
  --retro-black: #000000;

  --font-retro: "Press Start 2P", monospace;
  --font-mono: "VT323", monospace;
  --font-system: "Share Tech Mono", monospace;
}

html {
    scroll-behavior: unset !important;
}

body {
  background-color: var(--retro-bg);
  color: var(--retro-primary);
  font-family: var(--font-system);
  overflow-x: hidden;
  min-height: 100vh;
}

body * {
  position: relative;
}

::selection {
  background-color: var(--retro-primary);
  color: var(--retro-black);
}

/* page layout stuff */

button:not(.menu-toggle) {
    font-size: 20px;
}

button:not(.menu-toggle), 
html input[type="button"], 
input[type="reset"], 
input[type="submit"], 
.button, 
.wp-block-button .wp-block-button__link {
    font-weight: bold;
    font-size: 17px;
    padding: 5px 10px;
}

button:hover, html input[type="button"]:hover, 
input[type="reset"]:hover, input[type="submit"]:hover, 
html input[type="button"]:focus,
input[type="reset"]:focus, 
input[type="submit"]:focus, {
    color: var(--base-3);
    background-color: #ffb000;
}





.inside-top-bar.grid-container p {
    color: #f6ad1d;
}

.site-header, 
.top-bar {
    z-index: 100;
}

.template-container {
  width: 100%;
}

ol,
ul {
  margin: 0 0 0 0.5em;
}

.top-bar-align-right .widget:first-child {
    margin-left: unset;
    margin: 0 auto;
}

.top-bar p {
    margin: 0;
}

nav#mobile-header {
  background: #000;
}

.home #page {
  padding: 0px !important;
}

.main-title {
  white-space: nowrap;
  display: flex;
}

p.main-title a {
  display: inline-block;
}

.breadcrumbs {
    margin: 10px 5px;
}

.breadcrumbs li {
   display: inline;
}

.breadcrumbs a {
    color: #ffb000;
}

.sidebar .widget,
.page-header,
.widget-area .main-navigation,
.site-main > * {
  margin-bottom: 30px;
}

.site-footer {
  border: 2px solid var(--base-3);
}

.page-header .taxonomy-description {
  margin-bottom: 20px !important;
}

#about {
  width: 99.8%;
}


/* ticker stuff */
.ticker-news span {
  background: #00f84c;
  height: 40px;
  float: left;
  padding: 0 12px;
  color: #000000;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 40px;
}

.ticker-news .tickercontainer ul.newsticker li a {
  text-transform: uppercase !important;
  color: #000 !important;
}

ul.newsticker li::marker {
  content: "++ ";
  color: #00f84c;
}

/* Typography */
.font-retro {
  font-family: var(--font-retro);
}
.font-mono {
  font-family: var(--font-mono);
}
.font-system {
  font-family: var(--font-system);
}

.text-primary-retro {
  color: var(--retro-primary) !important;
}
.text-secondary-retro {
  color: var(--retro-secondary) !important;
}

.bg-primary-retro {
  background-color: var(--retro-primary) !important;
  color: var(--retro-black) !important;
}
.bg-secondary-retro {
  background-color: var(--retro-secondary) !important;
  color: var(--retro-black) !important;
}
.bg-primary-retro-muted {
  background-color: rgba(0, 255, 65, 0.2) !important;
  color: var(--retro-primary) !important;
}

.border-primary-retro {
  border-color: var(--retro-primary) !important;
}
.border-secondary-retro {
  border-color: var(--retro-secondary) !important;
}

/* Effects */
.text-glow {
  text-shadow: 0 0 10px var(--retro-primary), 0 0 20px var(--retro-primary);
}
.text-glow-amber {
  text-shadow: 0 0 10px var(--retro-secondary), 0 0 20px var(--retro-secondary);
  word-wrap: break-word;
}

@keyframes pulse-opacity {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
}
.animate-pulse-fast {
  animation: pulse-opacity 1s infinite;
}
.animate-pulse-slow {
  animation: pulse-opacity 2s infinite;
}

@keyframes slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
.marquee-container {
  overflow: hidden;
  white-space: nowrap;
  background-color: var(--retro-primary);
  color: var(--retro-black);
  font-weight: bold;
  font-family: var(--font-mono);
  padding: 0.5rem 0;
  border-top: 2px solid var(--retro-black);
  border-bottom: 2px solid var(--retro-black);
}
.marquee-content {
  display: inline-block;
  animation: slide 20s linear infinite;
}

/* CRT Effects */
.scanline {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  height: 100px;
  z-index: 50;
  background: linear-gradient(
    0deg,
    rgba(0, 0, 0, 0) 0%,
    rgb(0 255 65 / 38%) 50%,
    rgba(0, 0, 0, 0) 100%
  );
  opacity: 0.5;
  position: absolute;
  bottom: 100%;
  animation: scanline-anim 10s linear infinite;
}
@media (max-width: 680px) {
  .scanline {
    background: linear-gradient(
      0deg,
      rgba(0, 0, 0, 0) 0%,
      rgb(0 255 65 / 74%) 50%,
      rgba(0, 0, 0, 0) 100%
    );
    opacity: 1;
  }
}
@keyframes scanline-anim {
  0% {
    bottom: 100%;
  }
  100% {
    bottom: -100px;
  }
}
.crt-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%),
    linear-gradient(
      90deg,
      rgba(255, 0, 0, 0.06),
      rgba(0, 255, 0, 0.02),
      rgba(0, 0, 255, 0.06)
    );
  background-size: 100% 2px, 3px 100%;
  pointer-events: none;
  z-index: 100;
}

/* Nav */
.retro-nav {
  background-color: rgba(0, 0, 0, 0.8);
  backdrop-filter: blur(4px);
  border-bottom: 2px solid var(--retro-primary);
  z-index: 50;
}
.retro-nav a {
  color: var(--retro-primary);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 2px;
  transition: color 0.2s;
}
.retro-nav a:hover {
  color: var(--retro-secondary);
}
.nav-link-item:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-thickness: 2px;
}

/* Hero */
.hero-section {
  position: relative;
  padding-top: 30px;
  min-height: 80vh;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-bottom: 2px solid var(--retro-primary);
}
.hero-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 1;
  filter: grayscale(50%) contrast(125%);
}
.hero-bg-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  background-image: linear-gradient(rgba(0, 255, 0, 0.1) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0, 255, 0, 0.1) 1px, transparent 1px);
  background-size: 4px 4px;
}
.hero-content-box {
  max-width: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  border: 2px solid var(--retro-primary);
  box-shadow: 8px 8px 0px 0px var(--retro-primary);
  transition: transform 0.2s;
  /*background-image: url('https://www.vintagecomputerfestival.org.uk/wp-content/uploads/2026/04/VCF_banner_notext2.jpg'); */
  background-size: contain;
  background-repeat: no-repeat;
}

.btn-retro-primary {
  background-color: var(--retro-primary);
  color: var(--retro-black);
  border: 2px solid transparent;
  font-weight: bold;
  text-transform: uppercase;
  transition: all 0.2s;
}
.btn-retro-primary:hover {
  background-color: var(--retro-secondary);
  color: var(--retro-black);
  border-color: #fff;
}

.btn-retro-outline {
  background-color: transparent;
  color: var(--retro-primary);
  border: 2px solid var(--retro-primary);
  font-weight: bold;
  text-transform: uppercase;
  transition: all 0.2s;
}
.btn-retro-outline:hover {
  background-color: var(--retro-primary);
  color: var(--retro-black);
}

/* Event Cards */
.event-card {
  background-color: rgba(24, 24, 27, 0.5);
  border: 2px solid rgba(0, 255, 65, 0.5);
  transition: border-color 0.2s;
  height: 100%;
}
.event-card:hover {
  border-color: var(--retro-primary);
}
.event-card:hover .card-title {
  text-shadow: 0 0 10px var(--retro-primary), 0 0 20px var(--retro-primary);
}

/* Utility */
.bg-black-90 {
  background-color: rgba(0, 0, 0, 0.95);
}
.bg-zinc-900 {
  background-color: #18181b;
}
.bg-zinc-950 {
  background-color: #09090b;
}
.border-left-primary {
  border-left: 2px solid rgba(0, 255, 65, 0.3);
}
.border-left-secondary {
  border-left: 4px solid var(--retro-secondary);
}

.hover-primary:hover {
  color: var(--retro-primary) !important;
  opacity: 1 !important;
}


/* events calendar stuff */

.tribe-events-back {
        display: none;
    }

.tribe-common--breakpoint-medium.tribe-events .tribe-events-header--has-event-search .tribe-events-header__top-bar {
    width: 100%;
    display: none;
}

.tribe-common--breakpoint-medium.tribe-events .tec-events-c-view-box-border {
    padding: 0 !important;
}

.tribe-events .tec-events-c-view-box-border {
    margin-bottom: var(--tec-spacer-5);
    padding: 0!important;
  }

nav.tribe-events-back {
    display: none;
}

nav.tribe-events-calendar-list-nav.tribe-events-c-nav {
    display: none;
}
nav.tribe-events-nav-pagination {
    display: none;
}
.tribe-events-pro .tribe-events-pro-venue__meta-website {
    display: block!important;
  }

.tribe_events-template-default .site-content {
    display: block;
}

.tribe-common--breakpoint-medium.tribe-events
  .tribe-events-calendar-month-mobile-events {
  display: block !important;
  visibility: visible !important;
}

.tribe-events-c-subscribe-dropdown {
  margin: 10px 0 !important;
}
.single-tribe_events .tribe-events-event-meta {
  background: #45454514 !important;
  margin: 0 !important;
}

.tribe-events-venue-map > div,
.tribe-events-venue-map > iframe {
  height: 400px !important;
  max-height: 400px !important;
}

.tribe-events-venue-map {
  width: 100% !important;
  margin-top: 0;
}

.single-tribe_events .tribe-events-single .tribe-events-event-meta {
  width: 100%;
  padding: 0 20px;
}

.tribe-events .tribe-events-c-breadcrumbs {
  /* display: none; */
}

.event-excerpt-home {
  font-size: 14px;
  font-weight: 600;
}

.event-excerpt-home p {
  margin: 0 !important;
}

.tribe-events .tribe-events-l-container {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}

a.tribe-events-calendar-list__event-title-link.tribe-common-anchor-thin {
  color: #ffb000 !important;
}

.tribe-events .tribe-events-c-search__button,
.tribe-events button.tribe-events-c-search__button {
  background-color: #b93434;
  background-image: none;
  box-shadow: none;
  color: var(--tec-color-text-events-bar-submit-button);
  font-style: normal;
  outline: none;
  text-decoration: none;
  text-shadow: none;
}

@media (max-width: 767px) {
  .tribe-events-venue-map > div,
  .tribe-events-venue-map > iframe {
    height: 200px !important;
    max-height: 200px !important;
  }

  .site-header .header-image {
    width: 200px;
  }
  .home .elementor-posts .elementor-post {
    flex-direction: column;
  }
  .wp-container-core-social-links-layout-1.wp-container-core-social-links-layout-1 {
    justify-content: center !important;
  }
  .single-tribe_events .tribe-events-single .tribe-events-event-meta {
    width: 100%;
    padding: 15px;
  }
  .home .single-tribe_events .tribe-events-schedule {
    display: none;
  }
  .home h1.tribe-events-single-event-title {
    margin-bottom: 10px !important;
  }
  .blog .inside-article .post-image {
    width: 100% !important;
  }
}

/* whats on sections */

.gb-loop-item.gb-loop-item-26bb21e4.post-4354 {
    background-position-y: -150px;
}
.event-cat-link a:hover {
  color: #fff;
}

.guests-grid {
    max-width: 1320px;
    margin: 0 auto;
    background: #000;
}

.gb-text-0d53f336 a {
    color: #000000!important;
    cursor: pointer;
}

.gb-element-06780f23 {
    background: #000;
  }

a.generate-back-to-top {
    background-color: #fab003;
    color: #ffffff;
    z-index: 1000;
}

a.generate-back-to-top:hover, a.generate-back-to-top:focus {
    background-color: #00dd38;
    color: #ffffff;
}

/* footer */

aside#block-8 a {
    word-wrap: break-word;
}

.site-footer .footer-widgets-container .inside-footer-widgets
 {
    margin-left: 0px!important;

}

.site-footer .footer-widgets-container .inner-padding {
    padding: 0px 0 0 25%;
}

/* ticket tailor emebed */

/*temp background */
.tt-widget-inline {
    background: #ffffff;
}

h1#dialog_header {
    color: #01ff42;
}

.subtitle {
    color: #01ff42 !important;
}

h2#main_heading {
    color: #fff;
}

.event_ticket_form {
    color: #fff !important;
}

div.ticket_row span.ticket_name > small {
    color: #FFC107!important;
}

.ticket_name var {
    color: #fff !important;
}
em.booking_fees {
    color: #fff !important;
}
.quantity.quantity__increment--increment-initialised button.quantity__increment_button {
    background: #FFC107!important;
  }

  ul.progress li span {
    color: #fff !important;
}
ul.progress li::after {
    color: #fff !important;
  }

a.btn[name="submit"] {
  background-color: #FFC107;

}
@media (max-width: 996px) {
    .inside-footer-widgets {
        flex-direction: column;
    }
    .site-footer .footer-widgets-container .inner-padding {
    padding: 0;
}
}


@media (min-width: 997px) {
  .block-9ba5aa80-6cf3-4090-a10d-7da56dd135ac.col.areoi-element {
    padding-left: 80px;
}
aside#block-11 {
    padding-left: 40%;
}
}

