@import "https://cdn.jsdelivr.net/npm/bulma@0.9.3/css/bulma.min.css";

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
   body {
	width: 100%;
	background-color: black; }
  
  html {
	background-color: black; }
  
  main {
	padding: 20px;
	color: black;
	background-color: white;
	}
  
  .skip-me {
	display: none; }
  
  .unhide {
	display: block; }
  
  /* unimportant styles */
  .skip-me {
	padding-top: 0.1em;
	padding-bottom: 0.1em;
	color: white !important;
	background: #2fbdff;
	font-size: 2.25rem;
	line-height: 2.5rem;
	letter-spacing: -0.03em;
	text-align: center; }
  
  .marquee {
	width: 100%;
	/* the plugin works for responsive layouts so width is not necessary */
	overflow: hidden; }
  
  .rs-card {
	background-color: rgba(0, 0, 0, 0.048);
	padding: 48px 40px;
	border-radius: 10px;
	position: relative;
	overflow: hidden;
	/* -moz-box-shadow:    inset 0 0 10px #00000025;
	  -webkit-box-shadow: inset 0 0 10px #00000025;
	  box-shadow:         inset 0 0 10px #00000025; */ }
	.rs-card .rs-sub + .content {
	  margin-top: 30px; }
	.rs-card .rs-card-img {
	  background-color: rgba(0, 0, 0, 0.048);
	  /* padding: 48px 40px; */
	  border-radius: 10px;
	  overflow: hidden;
	  margin-top: 48px;
	  margin-left: -40px;
	  margin-right: -40px;
	  margin-bottom: -48px; }
	.rs-card .rs-title {
	  /* margin-top: 20px;
		   margin-bottom: 50px; */
	  /* font-size: calc(120px + (100vw - ((100vw - 850px)/6 + 15px)*2 - 1600px)*0.0005*120); */
	  font-size: 2.25rem;
	  line-height: 2.5rem;
	  letter-spacing: -0.03em;
	  margin-bottom: 1.75rem; }
	.rs-card .rs-sub, .rs-card p {
	  font-size: 1.375rem; }
	.rs-card .rs-copy {
	  font-size: 1.125rem; }
  
  .rs-card-img-full img {
	position: relative;
	border-radius: 10px;
	width: 100%;
	height: 100%;
	object-fit: cover;
	vertical-align: middle; }
  
  .section-header {
	position: relative; }
  
  .section-header p {
	font-size: 0.8rem;
	border: 1px solid black;
	padding: 1px 6px;
	border-radius: 20px;
	width: fit-content;
	/* margin-top: 10em; */ }
  
  .section-header::before {
	content: "";
	display: block;
	position: absolute;
	top: 0px;
	left: 1rem;
	height: 1px;
	width: calc(100% - 1rem);
	background: black; }
  
  .rs-section {
	margin-top: 6em !important; }
  
  section {
	padding-bottom: 10em !important; }
  
  .rs-card-img img {
	position: relative;
	width: 100%;
	height: 400px;
	object-fit: cover;
	vertical-align: middle; }
  
  .rs-card-img {
	background-color: rgba(0, 0, 0, 0.048);
	/* padding: 48px 40px; */
	border-radius: 10px;
	overflow: hidden; }

	.rs-img{
		/* border-radius: 10px; */
		/* overflow: hidden; */
		height: fit-content;
	}
	.rs-img img{
		width: 100%;
		object-fit: cover;
		border-radius: 10px;
	}
  
  .rs-card:hover .rs-card-bg {
	opacity: 1;
	/* HOVER OFF */
	-webkit-transition: all 0.1s; }
  
  .rs-card-bg {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 0;
	/* z-index: -1; */
	/* transition: all 5s; */
	/* HOVER ON */
	-webkit-transition: all 0.6s; }
  
  .rs-card-bg img {
	position: relative;
	width: 100%;
	height: 100%;
	object-fit: cover;
	vertical-align: middle; }
  
  #logo {
	/* width: 100%; */
	/* height: calc(100vh - 80px); */
	width: 400px;
	height: 100px;
	margin-bottom: 15px;
	transform-origin: top center;
	position: fixed; }
  
.rs-card + .rs-card{
	margin-top: 20px;
}	

pre{
	border-radius: 5px !important;
}

  main {
	transition: all 0.2 ease-in-out; }
  
  .logo-section {
	height: 95vh; }
  
  .night {
	transition: all 0.2 ease-in-out;
	background-color: black;
	color: #cfcfcf; }
	.night .rs-card {
	  background-color: #191919; }
	  .night .rs-card a {
		color: yellowgreen; }
		.night .rs-card a:hover {
		  color: #daff8f; }
	.night .section-header p {
	  border: 1px solid #cfcfcf; }
	.night .section-header::before {
	  background: #cfcfcf; }
	.night .rainbow-checkbox span {
	  border: 1px solid white; }
  
  .tile .rs-card {
	transition: all 0.3s; }
	.tile .rs-card:hover {
	  transform: scale(1.04); }
  
  :root {
	--height: 180px;
	--width: 320px; }
  
  .centered {
	display: flex;
	align-items: center;
	justify-content: center; }
  
  .rainbow-checkbox {
	cursor: pointer; }
  
  .rainbow-checkbox input {
	width: 0;
	height: 0;
	margin: 0;
	position: absolute; }
  
  .rainbow-checkbox span {
	display: inline-block;
	position: relative;
	width: var(--width);
	height: var(--height);
	border-radius: var(--width);
	padding: 4px;
	background-size: 200%;
	border: 1px solid #aaaaaa; }
  
  .rainbow-checkbox span:before {
	content: "";
	position: absolute;
	inset: 0;
	border: 2px solid transparent;
	background-clip: padding-box;
	border-radius: var(--width); }
  
  .rainbow-checkbox span:after {
	content: "";
	display: block;
	width: var(--height);
	height: 100%;
	background-color: #afafaf;
	border-radius: 50%;
	position: relative;
	transition: right 0.2s ease-in-out;
	right: 0;
	background-size: 500%; }
  
  .rainbow-checkbox input:checked + span {
	background-color: white;
	animation: slidebg 4s linear infinite; }
  
  .rainbow-checkbox input:checked + span:after {
	right: calc(-100% + var(--height));
	background-color: #aaaaaa;
	animation: slidebg2 16s linear infinite; }
  
  @keyframes slidebg {
	to {
	  background-position-x: 200%; } }
  
  @keyframes slidebg2 {
	to {
	  background-position-x: -500%; } }
  