@import url('https://fonts.googleapis.com/css2?family=Rampart+One&family=Roboto&family=Space+Mono&display=swap');

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* =====================
== CUSTOM CSS =======
===================== */
html, body {
	font-family: sans-serif;
	scroll-behavior: smooth;
	font-family: 'Roboto', sans-serif;
}

*{
	box-sizing: border-box;
}

h1 {
	font-family: 'Rampart One', sans-serif;
	font-size: 6rem;
	margin-bottom: 10px;
}

h1 span{
	background: -webkit-linear-gradient(rgb(245, 101, 180), rgb(243, 230, 128));
  	-webkit-background-clip: text;
  	-webkit-text-fill-color: transparent;
	 -webkit-transition: background 0.9s linear;
	-moz-transition: background 0.9s linear;
	-o-transition: background 0.9s linear;
	transition: background 0.9s linear;
}

h1 span:hover{
	background: -webkit-linear-gradient(rgb(228, 67, 156), rgb(240, 218, 55));
	-webkit-background-clip: text;
  	-webkit-text-fill-color: transparent;
}

h2 {
	font-size: 1.6rem;
	margin-top: 20px;
	line-height: 2.2rem;
}

p{
	font-size: 1.2rem;
	line-height: 1.6rem;
}

.underlined{
	text-decoration: underline;
}

.is-center {
	text-align: center;
}

.is-flex {
	display: flex;
}

.is-align-center {
	align-items: center;
}

.is-justify-center{
	justify-content: center;
}

.is-space-around{
	justify-content: space-around;
}

.is-middle {
	margin: 0 auto;
}

.is-orange{
	color: #FFCB39;
}

section{
	padding: 50px 0;
}

.section-landing {
	background: #161835;
	color: #fff;
}

.button {
	display: block;
	padding: 20px 25px;
	border-radius: 10px;
	text-align: center;
	-webkit-transition: 0.5s -webkit-filter linear;
	-moz-transition: 0.5s -moz-filter linear;
	-moz-transition: 0.5s filter linear;
	-ms-transition: 0.5s -ms-filter linear;
	-o-transition: 0.5s -o-filter linear;
	transition: 0.5s filter linear, 0.5s -webkit-filter linear;
}

a.button{
	text-decoration: none;
}

.button.is-large{
	width: 300px;
}

.button.is-small {
	padding: 10px;
}

.button:hover{
	cursor: pointer;
}

.bg-yellow {
	background: #FFCB39;
	color: #333;
	filter: drop-shadow(0 0 0.1rem #fecc43);
}
.bg-yellow:hover {
	filter: drop-shadow(0 0 0.5rem #fcc93b);
}

.bg-white {
	background: #f2f2f2;
	filter: drop-shadow(0 0 0.1rem rgb(242, 242, 242));
	color: #333;
}
.bg-white:hover {
	filter: drop-shadow(0 0 0.5rem rgb(255, 255, 255));
}

.bg-green {
	background: #41D8B2;
	color: #333;
	filter: drop-shadow(0 0 0.1rem #41D8B2);
}
.bg-green:hover {
	filter: drop-shadow(0 0 0.5rem #5ef1cd);
}

.is-large {
	font-size: 1.6rem;
}

.mt-5{
	margin-top: 5rem;
}

.my-1{
	margin: 1rem 0;
}

.my-2{
	margin: 2rem 0;
}

.my-3{
	margin: 3rem 0;
}

.py-7{
	padding: 7rem 0;
}

.section-yellow {
	background: radial-gradient(#FFF497, #FFCE5E);
}

.container{
	max-width: 960px;
	margin: 0 auto;
}

.box {
	max-width: 600px;
	margin: 0 auto;
	border: 4px solid #333;
	padding: 40px;
	transition: border-style 1s ease-in-out;
}

.box:hover{
	border-style: dashed;
}

.box-white{
	border: 1px solid #fff;
}

.box .content p{
	margin-bottom: 15px;
	line-height: 1.6rem;
}

.title{
	font-family: 'Space Mono', monospace;
	font-size: 2rem;
	line-height: 2.5rem;
	margin-bottom: 25px;
}

.is-yellow{
	color: #FFCE5E;
}

.is-rounded{
	border-radius: 50%;
}

/* ======================== 
== Pricing Section ========  
===========================*/

.section-blue{
	background: #161835;
	color: #fff;	
}

#pricelist{
	margin-top: 150px;
}

.pricebox{
	border: 1px solid #fff;
	border-radius: 5px;
	padding: 30px;
	padding-top: 150px;
	width: 30%;
	margin: 0 2.5%;
	position: relative;
}

.pricebox:nth-child(2){
	border-color: #41D8B2;
}

.pricebox:nth-child(3){
	padding-top: 100px;
}


.pricebox img{
	position: absolute;
	top: -75px;
	left: calc(50% - 60px);
}

#secondbook{
	left: 100px;
	top: -50px;
}

.item{
	font-size: 1.8rem;
	font-weight: bold;
	margin-top: -20px;
	margin-bottom: 5px;
}

.item-highlight {
	color: #FFE78E;
	margin-bottom: 10px;
}

.info{
	font-size: 1rem;
	margin-bottom: 20px;
}

.discount{
	color: rgb(250, 104, 104);
	text-decoration: line-through;
}

.snippets h3{
	font-size: 1.5rem;
	margin-bottom: 10px;
}

.snippets{
	padding: 0 2.5%;
	width: 33%;
}

/* Cursor Stuff */
.cursor {
    width: 20px;
    height: 20px;
    border: 1px solid white;
    border-radius: 50%;
    position: absolute;
    transition-duration: 200ms;
    transition-timing-function: ease-out;
    animation: cursorAnim .5s infinite alternate;
    pointer-events: none;
}
@keyframes cursorAnim {
    from {
        transform: scale(1);
    }
    to {
        transform: scale(.7);
    }
}

.cursor::after {
    content: "";
    width: 20px;
    height: 20px;
    position: absolute;
    border: 8px solid rgb(241, 250, 113);
    border-radius: 50%;
    opacity: .5;
    top: -8px;
    left: -8px;
    animation: cursorAnim2 .5s infinite alternate;
}
@keyframes cursorAnim2 {
    from {
        transform: scale(1);
    }
    to {
        transform: scale(.4);
    }
}

.faq li{
	font-size: 1.2rem;
	margin-bottom: 30px;
}

.faq li span{
	display: block;
	font-style: italic;
	line-height: 1.5rem;
	margin-top: 5px;
	padding-top: 10px;
	border-top: 1px solid grey;
}


@media only screen and (max-width: 760px) {
  .is-flex {
    display: block;
  }
  body{
	  font-size: 16px;
  }
  h1 {
	  font-size: 5rem;
  }
  h2 {
	  font-size: 1.4rem;
  }
  .title{
	  font-size: 1.8rem;
  }
  .button{
	  width: 100% !important;
  }
  .is-large{
	  font-size: 1.4rem;
  }
  .container{
	  max-width: 90%;
  }
  .pricebox, .snippets{
	width: 95%;
	margin-bottom: 120px;
  }
  .snippets{
	  margin-bottom: 50px;
  }
  .pricebox img{
	width: 140px;
  }
  #secondbook{
	left: 40%;
  }
}

.alert {
	background: #ebff87;
	color: #333;
	padding: 20px;
	border-radius: 5px;
	margin-top: 20px;
	text-align: center;
}