@charset "utf-8";
@import url("fontawesome-all.min.css");
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600&display=swap");

html {
scroll-behavior: smooth;
}
body {
background: #f5f7fa;
font-family:'Montserrat', sans-serif;
color: #0e0a2b;
line-height: 1.75em;
font-size: 16px;
padding:0;
margin:0;
}
#page {
max-width:1605px;
background-color:#FFFFFF;
margin:0 auto;
padding:0 0 6em;
}
.sticky {
position: fixed;
top: 0;
width: 100%;
}
h1, h2, h3, h4, p {
color:#0e0a2b;
line-height:1.25;
}
h1, h2 {
font-size:1.85em;
font-weight:500;
}
p {
font-size:1.3em;
font-weight:300;
line-height:1.5;
}
p span {
font-weight:400;
display:block;
font-size:inherit;
}
b {
font-weight:500;
}
a {
font-weight:500;
font-size:inherit;
color:#D4AF37;
text-decoration:underline;
}
a[href^="tel:"] {
font-size:1.75em;
text-decoration:none;
}
a:hover {
color:#0e0a2b;
}
ul {
list-style:none;
margin:0;
padding:0;
}
ul li {
font-weight:400;
font-size:1em;
line-height:1.5;
}
blockquote {
font-size:1.5em;
font-style:italic;
}
hr {
font-family:'Montserrat', sans-serif; /* choose the font you like */
text-align: center; /* horizontal centering */
line-height: 1px; /* vertical centering */
height: 1px; /* gap between the lines */
font-size: 1.6em; /* choose font size you like */
border-width: 1px 0; /* top and bottom borders */
border-style: solid;
border-color: #CCCCCC;
margin: 4.5em 10px 0; /* 20px space above/below, 10px left/right */
overflow: visible;
/* ensure 1px gap between borders */
-webkit-box-sizing: content-box;
-moz-box-sizing: content-box;
-ms-box-sizing: content-box;
-o-box-sizing: content-box;
box-sizing: content-box;
}
hr:after {
content: "𝄞"; /* section sign */
color: #0e0a2b;
display: inline; /* for vertical centering and background knockout */
background-color: #FFFFFF; /* same as background color */
padding: 0 0.5em; /* size of background color knockout */
}
hr:last-of-type {
margin:0 10px 5em;
}
span i.fa-brands {
font-family: FontAwesome;
color: #D4AF37;
font-style:normal;
font-size:1.5em;
}
/* CSS Document */

.wrapper {
padding:5em 2em 0;
}
.wrapper:last-of-type {
padding:5em 0;
}
.container {
flex-direction: row;
position:relative;
gap:30px;
display:flex;
max-width:1500px;
margin:0 auto;
}
.container-item {
flex:1;
}
.container-item img {
width:100%;
height:auto;
}
.panel,
.panel:last-of-type {
padding:1.5em;
background-color:#EEEEEE;
border-radius:2em;
width:auto;
margin:0 auto 2em;
}
/*====

HERO

====*/
.hero {
width:100%;
max-width:1605px;
margin:0 auto;
display:flex;
align-items:center;
justify-content:center;
position: relative;
aspect-ratio:16/9;
}
/*====

HERO VIDEO

====*/
.hero-video {
height: 100%;
width: 100%;
object-fit: cover;
}
.hero-video-content{
position: absolute;
padding:0 20px;
}
.hero-video-content img {
width:300px;
margin-bottom:2em;
}
.hero-video-content h1 {
color:#FFFFFF;
padding:0;
text-shadow: 2px 3px 5px rgba(0,0,0,0.5);
font-size:1.5em;
margin:0 0 1.5em;
}
/*====

DEMO VIDEO

====*/
.video-container {
position:relative;
overflow:hidden;
border-radius: 6px;
border: 1px solid rgba(0,0,0,0.8);
box-shadow: 0 0 5px rgba(0,0,0,0.5);
margin:0 auto;
max-width:1000px;
width: 100%;
height: auto;
aspect-ratio:16/9;
}
.video-container video {
position: absolute;
width: 100%;
height: 100%;
}

input[type=text],
input[type=email],
textarea {
width: 100%;
padding: 12px;
border: 1px solid #ccc;
border-radius: 4px;
box-sizing: border-box;
margin-top: 6px;
margin-bottom: 16px;
resize: vertical;
}
input[type=submit] {
background-color: #04AA6D;
color:#0e0a2b;
padding: 12px 20px;
border: none;
border-radius: 4px;
cursor: pointer;
}
input[type=submit]:hover {
background-color: #45a049;
}


.btn {
padding: 10px;
text-align:center;
background-color:#D4AF37;
color:#0e0a2b;
height: 1.8em;
border-radius: 1.3em;
min-width:200px;
text-decoration:none;
display: inline-block;
font-size:1.25em;
cursor:pointer;
font-weight:500;
line-height:1.8em;
}
button.btn {
line-height:10%;
padding:25px;
border:none;
}
.btn:hover,
button.btn:hover,
#toTop:hover {
background-color:#BBBBBB;
}
#toTop {
display: none; /* Hidden by default */
position: fixed; /* Fixed/sticky position */
bottom: 3.5em; /* Place the button at the bottom of the page */
right: 2em; /* Place the button 30px from the right */
z-index: 99; /* Make sure it does not overlap */
border: none; /* Remove borders */
outline: none; /* Remove outline */
background-color: #D4AF37; /* Set a background color */
color: #0e0a2b; /* Text color */
cursor: pointer; /* Add a mouse pointer on hover */
padding: 1em; /* Some padding */
border-radius: 2em; /* Rounded corners */
font-size: 1em; /* Increase font size */
font-weight:500;
}



.left {
text-align:left;
}
.center {
text-align:center;
}
.right {
text-align:right;
}
.grid-layout {
display: -ms-grid;
display: grid;
gap: 20px 30px;
}
.grid-layout.three-col-grid {
grid-template-columns: repeat(3, 1fr);
}
.grid-layout.four-col-grid {
grid-template-columns: repeat(4, 1fr);
}



@media screen and (max-width: 600px) {
hr,
hr:last-of-type {
margin:2em 0;
}
.hero {
aspect-ratio:4/3;
}
.hero-video-content img {
width:200px;
margin-bottom:1em;
}
.hero-video-content h1 {
font-size:1em;
}
.hero video {
margin:0;
}
h1, h2 {
font-size:1.5em;
}
p {
font-size:1em;  
}
blockquote {
font-size:1.2em;    
}
.wrapper,
.wrapper:last-of-type {
padding:1em;
}
.container{
flex-direction: column;
}
video {
margin:0 0 0.65em;
}
.grid-layout.three-col-grid,
.grid-layout.four-col-grid {
grid-template-columns: 1fr;
}
.accordion span .fa.fa-angle-down {
margin-left:0;
}
.panel {
padding: 1em;
margin:0;
}
.panel:last-of-type {
margin:0 0 2em;
}
.btn {
height:1.5em;
min-width:170px;
font-size:1.1em;
line-height:1.5em;
}
}