@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300&display=swap');
@import url('https://fonts.googleapis.com/css?family=Varela+Round');

:root {
   --vcr-green: #59b847;
   --bg-color: #eaf0ec;
}

* {
   box-sizing: border-box;
}

body {
   background-color: var(--bg-color);
   font-family: 'Montserrat', sans-serif;
   display: flex;
   flex-direction: column;
   align-items: center;
   margin: 0;
}

#header {
   position: relative;
}

#header a {
   text-decoration: none;
   color: #000;
}

#header a:visited, #header a:active {
   text-decoration: none;
   color: #000;
}

#header h1 {
   font-family: Arial, sans-serif;
   font-size: 2.25rem;
   text-align: center;
   text-transform: uppercase;
   margin: 50px 0;
   /* Disable Text Selection */
   user-select: none; /* supported by Chrome and Opera */
   -webkit-user-select: none; /* Safari */
   -khtml-user-select: none; /* Konqueror HTML */
   -moz-user-select: none; /* Firefox */
   -ms-user-select: none; /* Internet Explorer/Edge */
}

#header h1 span {
   color: var(--vcr-green);
}

#header p {
   font-size: 2rem;
   text-align: center;
   margin-top: -30px;
}

#instructions {
   margin: 20px auto;
}

#instructions h3 {
   font-size: 1.5rem;
   position: relative;
}

#instructions h3:before {
   content: '';
   position: absolute;
   top: 20px;
   width: 143px;
   height: 3px;
   background-color: var(--vcr-green);
   margin-top: 10px;
}

#instructions ol {
   list-style: none;
   counter-reset: li;
}

#instructions ol li {
   font-size: 1.2rem;
   margin: 5px 0;
   counter-increment: li;
}

#instructions ol li::before {
   margin-left: -1rem;
   content: counter(li);
   color: #b1b1b1;
   font-size: 1rem;
   display: inline-block;
   text-align: center;
}

.form-container {
   max-width: 1140px;
   background-color: #E0E0E0;
   padding: 20px;
   border-radius: 12px;
}

#price-change {
   display: flex;
   flex-direction: row;
   align-items: center;
   justify-content: center;
   flex-wrap: wrap;
   margin: 20px auto;
   margin-top: 0;
   width: 100%;
}

.form-group  {
   margin: 16px;
   display: flex;
   flex-direction: column;
}

.form-group label {
   margin: 5px auto;
   font-size: 1.2rem;
}

.form-group .price-input {
   width: 120px;
   height: 40px;
   text-align: center;
   font-size: 1rem;
   color: #000;
}

.form-group .price-input:focus {
   outline-color: var(--vcr-green);
}

.form-group .price-input::placeholder {
    color: #fff;
}

.btn {
   background-color: #acacac;
   cursor: pointer;
   border-radius: 20px;
   font-size: 16px;
   font-family: 'Varela Round', sans-serif;
   height: 42px;
   width: 100px;
   color: #fff;
   text-decoration: none;
   border: none;
   margin: auto 16px;
   margin-top: 52px;
}

.btn:hover {
    opacity: 0.9;
}

.btn:focus {
   outline: none;
}

.btn:active {
   transform: scale(0.98);
}

.btn.save {
   background-color: var(--vcr-green);
}

#status-msg {
   text-align: center;
   font-size: 1.25rem;
   transition: opacity 1s ease-in;
}

#footer {
	background:#e2e2e2;
   color: #808080;
	width:100%;
	text-align: center;
	position: fixed;
	bottom:0;
	left: 0;
   padding: 25px;
	font-size: 16px;
	font-family: 'Varela Round', sans-serif;
	border-top: 1px solid #cecece;
}

@media(max-width: 450px) {
   #header h1 {
      font-size: 2rem;
      text-align: center;
      margin-top: 30px;
   }
}

@media(max-width: 850px) {
   #instructions h3:before {
      width: 153px;
   }
   #footer {
      margin-top: 25px;
      position: static;
   }
}

@media(max-height: 900px) {
   #footer {
      margin-top: 25px;
      position: static;
   }
}

/* ------ START SEASONAL ------ */

.seasonal-container {
   display: flex;
   flex-direction: row;
   width: 1200px;
   height: 750px;
   background-color: #E0E0E0;
   padding: 0;
   border: 1px solid #000;
}

.vehicles {
   display: flex;
   justify-content: center;
   align-items: center;
   /* border: 1px solid red; */
}

.vehicles ul {
   display: flex;
   flex-direction: column;
   justify-content: center;
   margin: 0 30px;
   margin-left: -10px;
}

.vehicles ul li {
   list-style: none;
   cursor: pointer;
   font-size: 1.25rem;
   margin: 7.5px auto;
   background-color: #000;
   color: #fff;
   width: 200px;
   padding: 7.5px;
   border-radius: 6px;
   text-align: center;
}

.seasonal-rates {
   width: 100%;
   height: 640px;
   margin: auto 0;
   margin-right: 25px;
   border: 1px solid #000;
}

.seasonal-rates table tr:nth-child(1) {
   text-align: left;
   background-color: #cecece;
}

.seasonal-rates table tr:nth-child(1) th {
   padding: 10px;
   font-size: 1.25rem;
}

.seasonal-rates table tr:nth-child(2) td input {
   padding: 12px;
   font-size: 18px;
}

.seasonal-rates table tr:nth-child(2) td input#price-per-day {
   text-align: right;
   margin-left: 30px;
}

input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button {  
   opacity: 1;
}

.seasonal-rates table tr:nth-child(2) td button {
   padding: 12px;
}

/* .seasonal-container .seasonal-rates table {} */

/* ------ END SEASONAL ------ */