@import url('components.css.php');
@import "grid.css";
@import "header.css";
@import "component-sponsors.css";
@import "component-layouts.css";
@import "component-video.css";
@import "component-gallery.css";
@import "component-slideshow.css";
@import "component-breadcrumb.css";
@import "footer.css";
@import "filters.css";



/* Global variables for layout measurements */
:root {
  /* Padding variables */
  /* 
  * - MIN: 1rem (16px) minimum padding on small screens
  * - VAL: 5vw fluid padding (5% of viewport width)
  * - MAX: 2rem (32px) maximum padding on large screens
  * This ensures text never touches the screen edges while maintaining
  * proportional spacing across different screen sizes
  */
  --padding-min: 1rem;
  --padding-fluid: 5vw;
  --padding-max: 2rem;
  --padding: clamp(var(--padding-min), var(--padding-fluid), var(--padding-max));



  --font-size-medium: 18px;
  --font-size-regular: 16px;
  --font-size-small: 14px;
  --font-size-x-small: 12px;

  --color-primary: #a3a3a3;
  --color-secondary: #999999;
  --color-tertiary: #666666;
  --color-accent: #FF00CC;

}



body {
  margin: 0;
  padding: 0;
  font-family: Verdana, sans-serif;
  background-color: black;
  color: var(--color-primary);
  font-size: var(--font-size-regular);
}

.has-bg{
    background-image: url('../img/bg.jpg');
    background-repeat: no-repeat;
    background-position: top center;
    background-size: contain;
}

a{
    color: var(--color-primary);
    
    &:active{
        color: var(--color-secondary);
    }

    &:visited{
        color: var(--color-secondary);
    }
    
    &:hover{
        color: var(--color-accent);
    }
}



h1, h2, h3, h4{
    font-size: var(--font-size-regular);
    margin: 0 0 1rem 0;
}

h1{
    font-weight: bold;
    text-transform: uppercase;
}

h2{
    font-weight: normal;   
}

@media (min-width: 64rem) {
    h2{
        text-transform: uppercase;
    }
}


h3{
    font-weight: bold;
}

h4{
    font-weight: normal;
    text-transform: uppercase;
}

p{
    margin: 0 0 1rem 0;
}

figure, figcaption{
    margin: 0;
    padding: 0;
}

figcaption{
    font-style: italic;
    color: var(--color-tertiary);
    font-size: var(--font-size-x-small);
    padding-top: 0.5rem;
}


img{
    width: 100%;
    display: block;
    height: auto;
}


.visually-hidden{
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}


/*  other styles  */


.teaser{
    margin-bottom: 2rem;
}

.banner{
    margin-bottom: 2rem;
}

.block{
    margin-bottom: 3rem;
}

@media (min-width: 64rem) {

    .banner{
        margin-bottom: 4rem;
    }
    .teaser{
        margin-bottom: 4rem;
    }

}