/*!
Theme Name: Starlifter.TV 2021
Author: Benet "Dr" Hicthcock
Author URI: http://www.starlifter.nz
Description: A basic WordPress Theme that utilises the Tailwind Framework
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: starliftertv
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL. Use it to make something cool, have fun, and share what you've learned with others. This is based on the theme from Rose Sherwood at http://www.rosesherwood.com

TailwindCSS for WordPress is based on Underscores https://underscores.me/, (C) 2012-2017 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Global
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Widgets
# Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
# Posts
# Stream
# Footer
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Global
--------------------------------------------------------------*/
:root {
  --white: #fff;
  --black: #171717;
  --blue: rgba(28, 61, 130, 0.6);
  --p3-pink: color(display-p3 0.965 0.023 0.678);
  --pink: color(srgb 1 0 0.694);
}

@font-face {
  font-family: "Muli-Regular";
  src: url("./fonts/Muli/muli-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "Muli-Bold";
  src: url("./fonts/Muli/muli-bold-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

body {
  color: var(--white);
  background-color: var(--black);
  font-family: "Muli-Regular";
}

/*--------------------------------------------------------------
# Site header
--------------------------------------------------------------*/
.site-header {
  background-image: radial-gradient(
    rgba(17, 17, 17, 0.5),
    rgba(29, 59, 122, 0.5)
  );
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 1rem;
  padding-top: 2rem;
  padding-bottom: 2rem;
  padding-block: 2rem;
}

@media screen and (min-width: 40em) {
  .site-header {
    margin-bottom: 1rem;
    margin-block-end: 1rem;
  }
}

.site-header__wrapper {
  position: relative;
  width: 100%;
  max-width: 40rem;
}

.site-branding,
.site-header__site-link {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.site-header__site-link:link {
  text-decoration: none;
}

.site-title {
  letter-spacing: -1px;
}

.stv-logo {
  border-radius: 50%;
  width: 12rem;
  height: 12rem;
}

.single .stv-logo {
  width: 6rem;
  height: 6rem;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/* Nav */
.star-nav {
  position: absolute;
  top: 0;
  left: 0;
}

.nav__checkbox {
  opacity: 0;
}

.nav__checkbox:checked ~ .nav__button > span {
  transform: rotate(45deg);
}

.nav__checkbox:checked ~ .nav__button > span::before {
  top: 0;
  transform: rotate(0);
}

.nav__checkbox:checked ~ .nav__button > span::after {
  top: 0;
  transform: rotate(90deg);
}

.nav__button {
  height: 2rem;
  width: 2rem;
  position: fixed;
  top: 1.25rem;
  left: 1rem;
  border-radius: 20%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 30;
  background-color: var(--white);
  cursor: pointer;
  padding: 2px;
}

.nav__button::before {
  display: block;
  position: absolute;
  width: 2.5rem;
  height: 2.5rem;
  background-color: var(--white);
  content: " ";
  border-radius: 20%;
}

.nav__button > span,
.nav__button > span::before,
.nav__button > span::after {
  display: block;
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: hotpink;
  transition-duration: 0.25s;
}

.nav__button > span::before {
  content: "";
  top: -8px;
}

.nav__button > span::after {
  content: "";
  top: 8px;
}

.nav__checkbox {
  display: none;
}

.nav__background {
  height: 100vh;
  width: 100vw;
  position: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background: rgb(2, 0, 36);
  background: -moz-radial-gradient(
    circle,
    rgba(2, 0, 36, 1) 0%,
    rgba(51, 32, 44, 0.37717093673406865) 100%
  );
  background: -webkit-radial-gradient(
    circle,
    rgba(2, 0, 36, 1) 0%,
    rgba(51, 32, 44, 0.37717093673406865) 100%
  );
  background: radial-gradient(
    circle,
    rgba(2, 0, 36, 1) 0%,
    rgba(51, 32, 44, 0.37717093673406865) 100%
  );
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#020024",endColorstr="#33202c",GradientType=1);
  z-index: 10;
  transform: scale(0);
  transition: transform 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55),
    height 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55),
    width 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.nav__checkbox:checked ~ .nav__background {
  opacity: 1;
  transform: scale(1);
}

.nav__nav {
  height: 100vh;
  width: 100vw;
  position: fixed;
  z-index: 20;
  text-align: center;
  opacity: 0;
  transform: scale(0);
  transition: opacity 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55),
    transform 0.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
}

.nav__checkbox:checked ~ .nav__nav {
  opacity: 1;
  transform: scale(1);
}

#primary-menu > ul {
  color: var(--white);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
  min-width: 60%;
}

.nav__nav ul {
  padding-left: 0;
}

.nav__nav .page_item {
  text-transform: uppercase;
  font-size: 1.375rem;
  list-style: none;
}

.nav__nav .page_item a {
  text-decoration: none;
}

.nav__nav .page_item a:hover,
.nav__nav .page_item a:focus {
  text-decoration: underline;
}

/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  color: whitesmoke;
}

a:visited {
  color: whitesmoke;
}

a:hover,
a:focus,
a:active {
  text-decoration: none;
}

a:focus {
  outline: thin dotted;
}

a:hover,
a:active {
  outline: 0;
}

.entry-title a {
  text-decoration: none;
}

.entry-title a:hover,
.entry-title a:focus,
.entry-title a:active {
  text-decoration: whitesmoke;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
  clear: both;
  display: block;
  float: left;
  width: 100%;
}

.main-navigation ul {
  display: none;
  list-style: none;
  margin: 0;
  padding-left: 0;
}

.main-navigation ul ul {
  background-color: #fff;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  float: left;
  position: absolute;
  top: 100%;
  left: -999em;
  z-index: 99999;
}

.main-navigation ul ul ul {
  background-color: #fff;
  left: -999em;
  top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
  left: 100%;
}

.main-navigation ul ul a {
  padding: 0.5em 1em;
  width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
  left: auto;
}

.main-navigation li {
  float: left;
  position: relative;
}

.main-navigation a {
  display: block;
  text-decoration: none;
  padding: 0.5em 1em 0.5em 0;
}

.site-main {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}

@media screen and (min-width: 40em) {
  .menu-toggle {
    display: none;
  }
  .main-navigation ul {
    display: block;
  }
}

.nav-links {
  max-width: 40rem;
  margin-inline: auto;
}

.nav-links a {
  padding: 1rem 2rem;
  display: inline-block;
  background-color: rgba(162, 49, 101, 0.3);
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  margin: 0 0 1.5em;
  overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  float: left;
  /* width: 50%; */
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  float: right;
  text-align: right;
  /* width: 50%; */
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
  margin: 0 0 1.5em;
  /* Make sure select elements fit in widgets. */
}

.widget select {
  max-width: 100%;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  /* Theme Footer (when set to scrolling) */
  display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
}

.gallery-columns-2 .gallery-item {
  max-width: 50%;
}

.gallery-columns-3 .gallery-item {
  max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
  max-width: 25%;
}

.gallery-columns-5 .gallery-item {
  max-width: 20%;
}

.gallery-columns-6 .gallery-item {
  max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
  max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
  max-width: 11.11%;
}

.gallery-caption {
  display: block;
}

/*--------------------------------------------------------------
## Entries
--------------------------------------------------------------*/
.entry-header {
  max-width: 40rem;
  margin-inline: auto;
}

.entry-title {
  padding: 1rem 2rem;
  background-color: rgba(162, 49, 101, 0.3);
  letter-spacing: -1px;
  font-size: 1.5rem;
}

.entry-meta {
  padding: 1rem 2rem;
  max-width: 40rem;
  margin-inline: auto;
}

.entry-content {
  background-color: var(--blue);
  padding: 2rem;
  max-width: 40rem;
  margin-inline: auto;
}

.entry-content p a img {
  margin-bottom: 2rem;
}

.entry-content p {
  margin-bottom: 1rem;
}

.entry-footer {
  padding: 2rem;
  max-width: 40rem;
  margin-inline: auto;
}

/*--------------------------------------------------------------
## Pages
--------------------------------------------------------------*/
.page-header,
.page-content p,
.page-content form {
  margin-bottom: 1rem;
}

.page-content h2 {
  margin-top: 2 rem;
}

.error-404 {
  background-color: var(--blue);
  padding: 2rem;
  max-width: 40rem;
  margin-inline: auto;
}

/*--------------------------------------------------------------
## Stream
--------------------------------------------------------------*/
.stream {
  display: flex;
  align-items: center;
  flex-direction: column;
}
.stream__link {
  text-align: center;
}

/*--------------------------------------------------------------
## Footers
--------------------------------------------------------------*/
.site-footer {
  text-align: center;
  padding: 2rem;
  max-width: 40rem;
  margin-inline: auto;
}

.site-footer section {
  margin-top: 1rem;
  margin-bottom: 1rem;
  margin-block: 1rem;
}

.site-footer p {
  margin-bottom: 1rem;
}

.site-info__about {
  white-space: pre-line;
}
