:root {
  --main-color: rgb(192, 192, 192);
  --secondary-color: rgb(255, 140, 0);
  --accent-color: rgb(0, 0, 0);
  --button-color: rgb(255,180, 0);
  --text-color: #fff;
  --secondary-accent-color: rgb(64, 64, 64);
}

* {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  margin: 0 auto;
  padding: 0;
}

body {
    background-color: var(--accent-color);
    color: var(--text-color);
    line-height: 2;
}


header {
    border: 2px solid var(--secondary-color);
    width: 99%;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto auto auto; 
    grid-template-areas: "headertitle headertitle headertitle" "logo cta nav" "location location location";
    position: relative;
    z-index: 10;
    margin-bottom: 40px;
}

.logo {
    grid-area: logo;
    justify-content: center;
    align-self: center;
}

.headertitle {
    grid-area: headertitle;
    justify-content: center;
    align-self: center;
    padding-top: 10px;
    text-align: center;
}

#navigation {
    grid-area: nav;
    justify-content: center;
    align-self: center;
}

.location {
    grid-area: location;
    justify-content: center;
    align-self: center;
    background-color: var(--accent-color);
    padding: 0 15px;
    transform: translateY(50%);
}
   

img {
    width: 250px;
}

.cta {
    border: 1px solid var(--secondary-color);
    grid-area: cta;
    justify-content: center;
    align-self: center;
    padding: 5px 10px;
    background-color: var(--accent-color);
    color: var(--text-color);
    border-radius: 10px;
}

/*Link Styling*/

a:link {
    color: var(--secondary-color);
}

a:hover {
    color: var(--button-color);
}

a:visited {
    color: var(--secondary-color);
}

.cta:hover {
    background-color: var(--button-color);
}

/*Homepage Styling*/

video {
    width: 99%;
    height: 50vh;
    display: block;
    margin-top: 15px;
    border: 2px solid var(--secondary-color);
    object-fit: cover;
}

.hero {
    position: relative;
}

.hero > h2 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width:100%;
    text-align: center;
    text-shadow: 3px 2px black;
}

.hero > h3 {
    position: absolute;
    top: 60%;
    left: 50%;
    transform: translate(-50%, -50%);
    width:100%;
    text-align: center;
    text-shadow: 3px 2px black;
}

.hero > button {
    position: absolute;
    top: 10%;
    text-align: center;
    margin-left: 10px;
    background-color: var(--button-color);
    padding: 0 5px;
}


.socialIcons {
    display: flex;
    background-color: var(--button-color);
    margin: 0;
    padding: 10px;
    text-align: center;
    border: 2px solid var(--secondary-accent-color);
    border-radius: 20px;
    height: 25px;
    width: 25px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

footer {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-around;
    height:  10vh;
    border: 2px solid var(--secondary-color);
    width: 99%;
    margin-top: 40px;
}


/*Services Styling*/

.services-container {
    margin-left: 100px;
    margin-right: 20px;
    width: 80%;
}


.servicesone, .servicestwo, .servicesthree {
    border: 2px solid var(--secondary-color);
    padding: 10px;
    margin-top: 10px;
    margin-bottom: 10px;
}

.services {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto auto;
    grid-template-areas: "title photo" "title photo" "title photo";
    align-items: center;
    justify-content: center;
    justify-content: space-evenly;
    margin: 0;
}

.servicesone > li, .servicestwo > li, .servicesthree > li {
    font-weight: 700;
    margin-top: 5px;
    margin-bottom: 10px;
}

.img {
    border: 2px solid var(--secondary-color);
    width: 100%;
    height: 50%;
    margin-left: 30px;
    object-fit: cover;
}

.servicesone > img, .servicestwo > img, .servicesthree > img {
    grid-area: photo;
}

/*Contact Us Styling*/

label {
  margin: 0.5rem auto;
  display: block;
}

fieldset {
  border: none;
  border-bottom: 3px solid var(--main-color);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

fieldset:last-of-type {
  border-bottom: none;
}

legend {
  margin: 0 auto;  
  padding: 0;
  text-align: center;
  width: 100%;
}

input, textarea {
  width: 100%;
  box-sizing: border-box;
  border: 2px solid var(--secondary-color);
  background-color: var(--secondary-accent-color);
}

 input::placeholder, textarea::placeholder {
  color: var(--text-color);
}

form {
  width: 60vw;
  max-width: 500px;
  min-width: 300px;
  margin-top: 40px;
}

.radiofield {
  margin: 15px;
}

.radiofield input[type="radio"] {
  order: -1;
  margin-right: 8px;
  width: auto;
}

.btn {
  width: 125px;
  height: 30px;
  padding: 0;
  display: block;
  margin-top: 10px;
  background-color: var(--secondary-accent-color);
  color: var(--text-color);
  border-radius: 20px;
  border: 2px solid var(--secondary-color)
}

.btn:hover {
  translate: transform(0.03s ease-in);
  background-color: var(--accent-color);
}



ul {
    list-style: none;
}

/*About Us Styling*/

.about-container {
    margin-top: 40px;
    width: 80%;
}

.about-container > h2 {
    margin-bottom: 10px;
    margin-top: 40px;

}