html {
  scroll-behavior: smooth;
}

/* define (colors and margins) variables for the whole site */
:root {
  --light: #d4e5f8;
  --dark: #001a33;

  --bg-color: #002244;

  --white: #ffffff;
  --black: #000000;

  --primary: #3c464c;
  --secondary: #59b0c8;

  --info: #559bb7;
  --success: #02af5a;
  --warning: #eacc02;
  --danger: #eacc02;

  --accent1: #204b74;
  --accent2: #047bc0;
  --accent3: #3b5d6ad2;
  --accent4: #3c78fd;
  --accent5: #ff0000;

  --margin: 10px;
  --padding: 10px;
  --border-radius: 10px;
  --box-shadow: #000e1b 0 0 10px;
}

/* style for my site */
/* base settings: border box, font, color, background, etc. */
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;

  /*outline: white solid 1px;*/
}
/* color: bone*/
body {
  background-color: var(--bg-color);
  font-family: "Lucida Grande", sans-serif;
  font-family: "Open Sans", sans-serif;
  font-size: 14px;
  font-weight: light;
  line-height: 20px;
  max-width: 800px;
  margin: auto;
}

/* sticky header that fills 100% of the parent width*/
header {
  padding: 10px;
  margin: 0;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  box-shadow: var(--box-shadow);
  border-radius: 0 0 0px 0px;
  color: var(--white);
  background-color: var(--bg-color);
  transition: all 1s ease-in-out;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Open Sans", sans-serif;
  font-weight: normal;
}
header h1 {
  color: inherit;
  font-size: 24px;
  line-height: 30px;
  margin: 0;
  display: inline;
  padding: 0 0 0 30px;
}

nav {
  max-width: 800px;
  margin: auto;
  padding: 10px;
}
a {
  color: inherit;
  text-decoration: none;
  font-size: 18px;
}
.lang {
  color: var(--accent1);
  text-decoration: none;
  padding: 0 10px;
  margin: 0;
  display: inline;
  float: right;
  line-height: 30px;
}

header ul {
  list-style-type: none;
  margin: auto;
  padding: 0;
  width: auto;
  display: inline;
  float: right;
}

header li {
  text-align: center;
  display: inline;
  padding: 0 10px;
  width: fit-content;
  line-height: 30px;
}

header li a {
  text-decoration: none;
}

header li a:hover {
  color: var(--info);
  text-decoration: none;
}

#wrapper {
  padding: 0;
  margin: 70px 0 120px 0;
  width: 100%;
  height: 100%;
  position: relative;
  top: 0;
  left: 0;
  z-index: 0;
}
.anchor {
  position: absolute;
  top: -110px; /* given the fixed header is 50px tall, and you want 15px padding */
  left: 0px;
}
section {
  position: relative;
  min-height: 300px;
  height: fit-content;
  padding: 10px;
  margin-top: 100px;
  color: var(--light);
  background-color: var(--dark);
  border-radius: 10px;
  padding: 20px;
  transition: all 0.3s ease-in-out;
}
section:hover {
  transform: scale(1.05);
}

/* make every other section smth else*/
section:nth-child(odd) {
  background-color: var(--light);
  color: var(--primary);
}

.section-split {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}
.img_container {
  width: 50%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease-in-out;
}
.img_container:hover {
  transform: scale(1.05);
}

.img_container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
  margin: 10px;
}
.text_container {
  width: 50%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 10px;
  padding: 30px;
  text-align: justify;

  transition: all 0.3s ease-in-out;
}

.text_container:hover {
  transform: scale(1.05);
}
.intro {
  margin: 10px;
  padding: 0;
  text-align: center;
}
ul.bullets li {
  list-style-type: disc;
  margin: 10px;
  padding: 0;
  text-align: left;
}

.section-pricing {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: stretch;
  height: 100%;
  columns: 3;
}

/* make content of each pricing column float to the top */

.pricing-column {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  margin: 5px;
  padding: 10px;
  border-radius: 10px;
  transition: all 0.2s ease-out;
}
.pricing-column ul {
  padding: 20px;
}
.pricing-column ul li {
  margin-bottom: 10px;
  padding: 0;
}

.pricing-column:hover {
  border: #e3dac9 2px solid;
  background-color: var(--accent1);
  color: var(--light);
  transform: scale(1.05);
}
.pricing-column h2,
h4 {
  text-align: center;
  margin: 10px;
}

/* footer */
footer {
  padding: 10px;
  margin: 0;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  box-shadow: var(--box-shadow);
  border-radius: 0px 0px 0 0;
  background-color: var(--dark);
  color: var(--white);
  text-align: center;
}
footer a {
  color: inherit;
  text-decoration: none;
  font-size: 14px;
}
footer p {
  color: inherit;
  text-decoration: none;
  font-size: inherit;
  opacity: 0.7;
}
#copyright {
  font-size: 12px;
  line-height: 18px;
  opacity: 0.5;
}

/* media width 800px */
@media screen and (max-width: 600px) {
  body {
    max-width: 100%;
  }
  header h1 {
    font-size: 18px;
    display: block;
    text-align: center;
    padding: 0;
  }
  nav {
    display: block;
    width: 100%;
    padding: 0;
  }
  header ul {
    font-size: 14px;
    display: block;
    text-align: center;
    float: none;
  }
  header a {
    font-size: 14px;
  }
  /* main */
  #wrapper {
    margin: 100px 0 100px 0;
  }
  section {
    margin: 50px 0;
  }
  .section-split {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    height: 100%;
  }
  .img_container {
    width: 100%;
    height: 50%;
  }
  .img_container img {
    width: 100%;
  }
  .text_container {
    width: 100%;
    height: 50%;
  }
  .section-pricing {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    height: 100%;
    columns: 1;
  }
  .pricing-column {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    height: 100%;
    border-radius: 10px;
  }
}
