* {
  box-sizing: border-box;
}

html,
:root {
  --primary-color: #0B1A31;
  --secondary-color: lightblue;
  --secondary-color-light: #add8e6;
  --text-color: white;
}  

body {
    margin: 0;
    height: 100%;
    background-color: var(--primary-color);
}

html {
    scroll-behavior: smooth;
}

footer {
    position: fixed;
    padding-right: 10px;
    padding-bottom: 5px;
    padding-top: 5px;
    height: 38px;
    left: 0;
    right: 0;
    bottom: 0;
    text-align: end;
    z-index: 20;
    background-color: var(--primary-color);
}


section {
    z-index: 20;
}

.active { 
    text-decoration: underline 1px;
    text-underline-offset: 4px;
}

.text0 {
    color: var(--text-color);
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 100px;
    font-weight: 100;
}

.text1 {
    color: var(--text-color);
    font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
    font-size: 100px;
    font-weight: thin;
}
.text2 {
    color: var(--text-color);
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 24px;
    font-weight: 100;
}
.text3 {
    color: var(--text-color);
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 32px;
    font-weight: 100;
}

.text4 {
    color: var(--primary-color); 
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 36px;
}

.text5 {
    color: var(--text-color);
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 18px;
    font-weight: 100;
}

.text6 {
    color: var(--secondary-color);
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 60px;
    font-weight: 100;
    opacity: 80%;
}


.home {
    float: left;
}
.about {
    float:right;
}


.spacer {
    height: 100px;
}

.spacer2 {
    height: 350px;
}
.spacer3 {
    height: 60px;
}

.flower{
    width: 400px;
    position: fixed;
    bottom: 50px;
    right: 50px;
    opacity: 60%;
}

.flowertech{
    width: 500px;
    position: fixed;
    bottom: 10px;
    right: 90px;
    opacity: 60%;
}

.artflowercontainer {
    padding-left: 175px;
	margin-left: auto;
    margin-right: auto;
    display: flex; 
    justify-content: center;
    position: fixed;
    width: 75%;
    bottom: 40px;
}
.artflowerimg {
    width: 700px;
    opacity: 30%;
    z-index: -1;
}
.bizflowercontainer {
	margin-left: auto;
    margin-right: auto;
    display: flex; 
    justify-content: center;
    position: fixed;
    width: 75%;
    bottom: 0;
}

.bizflowerimg {
    width: 700px;
    opacity: 40%;
    z-index: -1;
}

.imgbox {
    flex-basis: 275px;
	flex-grow: 1;
	background-color: var(--secondary-color-light);
    z-index: 1;
    padding: 5px;
    position: relative; 
    width: fit-content; 
    text-align: center;
}

.logo {
	width:100%;
    opacity: 15%;
    display: block;
    width: 100%;
    height: auto;
    position: relative;
    transition: .5s;
    &:hover{
        border: var(--primary-color) 1px solid;
        opacity:100%;
        
}
}

.centered {
  margin: auto;
  width: 95%;
  height: 50%;
  position: absolute; 
  bottom: 20px;
  z-index: 5;
}

.wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 40px;
    margin: auto;
    padding: 30px;
    max-width: 1000px;
}

.homewrapper {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 40px;
    margin: auto;
    padding: 20px;
    max-width: 1000px;
    padding: 30px;
}

.grid-item {
    width: 100%; 
    height: 100%;
    object-fit: cover; 
}

.grid-center {
    place-self: center;
    text-align: center;
}

.colspan1 {
   grid-column: span 1;
}

.colspan2 {
   grid-column: span 2;
}

.colspan3 {
   grid-column: 1/ -1;
}

.rowspan1 {
   grid-row: span 1;
}

.rowspan2 {
   grid-row: span 2;
}

.rowspan3 {
   grid-row: 1/ -1;
}

.staycolspan2 {
   grid-column: span 2;
}

.slide {
    width: 400px;
    height: 225px;
}

.center {
    grid-column: 1 / -1;
    
    
    
    text-align: center; 
    padding-bottom: 35px;
}

.placeholder {
    background-color: var(--secondary-color);
    height: 100%;
    width: 100%;
}

.border {
    border: 1px solid var(--text-color);
}

.shadow {
    box-shadow: 0 0 10px 2px var(--primary-color);
}
.textshadow {
    text-shadow: 0 0 6px var(--primary-color);
}



#mainheader {
    padding: 10px;
    background-color: var(--primary-color);
    height: 80px;
    z-index: 7;
    position: fixed;
    left: 0px;
    right: 0px;
}

#subheader {
    position: fixed;
    left: 0px;
    right: 0px;
    height: 85px;
    background-color: var(--primary-color);
    z-index: 25;
    padding: 30px;
}

#container {
    padding: 50px;
    max-width: 700px;
}

#artcontainer {
  background-color: var(--primary-color);
  padding: 30px;
  text-align: center;
}

#outercontainer {
    display: flex;
	flex-wrap: wrap;
	padding: 50px;
	margin:auto;
}

a:link {
  color: var(--text-color);
  background-color: transparent;
  text-decoration: none;
  padding: 4px;
}

a:visited {
  color: var(--text-color);
  background-color: transparent;
  text-decoration: none;
  padding: 4px;
}

a:hover {
  color: var(--primary-color);
  padding: 4px;
  background-color: var(--text-color);
}

a.nohover:link {
  padding: 0;
}

a.nohover:visited {
    padding: 0; 
}

a.nohover:hover {
  padding: 0;
}



@media (max-width:940px) {
    .slide {
        width: 360px;
        height: 203px;
    }
}

@media (max-width:850px) {
    .slide {
        width: 320px;
        height: 180px;
    }
    .text6 {
        font-size: 50px;
    }
}

@media (max-width:768px) {
    
    .wrapper {
        grid-template-columns: 1fr 1fr;
    }
    .colspan2 {
        grid-column: span 1;
    }
    .text2 {
        font-size: 18px;
    }

    .techimg1 {
        order: 1;
    }
    .techblurb1{
        order: 2;
        text-align:left;
    }
    .techimg2 {
        order: 3;
    }
    .techblurb2{
        order: 4;
        text-align:left;
    }
    .techimg3 {
        order: 5;
    }
    .techblurb3{
        order: 6;
        text-align:left;
    }
    .techspacer {
        order: 7;
    }

    .biz {
        grid-template-columns: 1fr;
    }    
    .prismimg {
        order: 1;
    }
    .prismtext {
        order: 2;
    }
    .sabiimg {
        order: 3;
    }
    .sabitext {
        order: 4;
    }
    .slide {
        width: 360px;
        height: 203px;
    }

    .text6 {
        font-size: 35px;
    }

    .flower {
        width: 300px;
    }

}

@media (max-width:565px) {
    .about {
        float: left;
    }
    .text6 {
        font-size: 30px;
    }
    #subheader {
        height: 100px;
    }
    .text0 {
        font-size: 70px;
    }

}

@media (max-width:520px) {
    .wrapper {
        grid-template-columns: 1fr;
    }

    .about {
       font-size: 17px;
    }

}


