:root {
  --aside-width: 21.42vw;
  --main-width: 46.58vw;
  --content-gap: 11.34vw;
  --nav-margin-top: 9.13vh;
}

@font-face {
  font-family: marineRegular;
  src: url('../assets/fonts/marine/Marine-Regular.ttf');
}

@font-face {
  font-family: marineBold;
  src: url('../assets/fonts/marine/Marine-Bold.ttf');
}



html {
  box-sizing: border-box;
  font-family: marineRegular;
}

*, *:before, *:after {
  box-sizing: inherit;
}

body {
  overflow-x: hidden;
}

/* width */
body::-webkit-scrollbar {
  width: 8px;
}

/* Track */
body::-webkit-scrollbar-track {
  background: #f1f1f1; 
}
 
/* Handle */
body::-webkit-scrollbar-thumb {
  background: #888; 
  border-radius: 10px;
}

/* Handle on hover */
body::-webkit-scrollbar-thumb:hover {
  background: #555; 
}

a {
  text-decoration: none;
  color: #282A31;
}

.page-wrapper {
  display: flex;
  flex-direction: row;
  margin: var(--nav-margin-top) 0px var(--nav-margin-top) 65px;
}

aside {
  width: var(--aside-width);
  display: flex;
  flex-direction: row;
}



.aside--left {
  display: block;
  width: 40px;
  height: 40px;
  text-decoration: none;
  margin-top: 5px;
  background-image: url(../assets/icons/back-arrow.svg);
  background-position: top;
  background-size: auto;
  background-repeat: no-repeat;
  position: fixed;
  cursor: pointer;
  z-index: 999;
}

.nav-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: fixed;
  width: 300px;
}

.nav-content {
  width: 300px;
  margin-top: 58px;
  height: calc(100dvh - var(--nav-margin-top) - 44px - 58px);
  overflow-y: auto;
  overflow-x: hidden;
}

/* width */
.nav-content::-webkit-scrollbar {
  width: 5px;
}

/* Track */
.nav-content::-webkit-scrollbar-track {
  background: #f1f1f1; 
}
 
/* Handle */
.nav-content::-webkit-scrollbar-thumb {
  background: #888; 
  border-radius: 10px;
}

/* Handle on hover */
.nav-content::-webkit-scrollbar-thumb:hover {
  background: #555; 
}

.search-input {
  width: 90%;
  height: 41px;
  border: 1px solid #A3A3A3;
  border-radius: 10px;
  outline: none;
  padding: 10px;
  padding-left: 35px;
  background: url("../assets/icons/Search.svg") no-repeat scroll 7px 7px;


  font-size: 18px;
  line-height: 21px;
  color: #555;

}

.search-input::placeholder {
  color: #A3A3A3;
  opacity: 1; /* Firefox */
}

.search-input::-ms-input-placeholder { /* Edge 12 -18 */
  color: #A3A3A3;
}

.nav-content nav {
  margin-top: 43px;
}

.nav-content nav details, .non-collapsable {
  margin-bottom: 30px;
}

.nav-content nav details summary {
  list-style-type: none;
}

.nav-content nav details[open] summary {
  margin-bottom: 10px;
}

.nav-content nav details summary::before {
  content: ' ';
  border: solid #939faa;
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 3px;
  transform: rotate(-45deg);
  margin-right: 8px;
  margin-bottom: 2px;
}

.nav-content nav details[open] summary::before {
  content: ' ';
  border: solid #8EBE46;
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 3px;
  transform: rotate(45deg);
  margin-right: 8px;
  margin-bottom: 4px;
}

.nav-content nav details ul {
  border-left: 1px solid #E7ECF0;
  margin-left: 4px;
  padding: 10px 0px 10px 25px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 15px;
}

.nav-content nav ul {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding-left: 4px;
}

.nav-content nav details ul li, .nav-content nav ul li {
  display: flex;
  align-items: center;
  gap: 8px;
}


.nav-content nav details ul li div, .nav-content nav ul li div {
  width: 3px;
  height: 3px;
  background-color: #282A31;
  border-radius: 50%;
}

.nav-content nav details ul li a, .nav-content nav ul li a {
  line-height: 110%;
}




main {
  width: var(--main-width);
  height: 2000px;
  position: relative;

  margin-left: 100px;
  margin-top: var(--nav-margin-top);
}

section {
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  margin-bottom: 300px;
}

.section-h1 {
  font-size: 42px;
  font-family: marineBold;
  font-weight: 700;
  line-height: 70.73px;
  letter-spacing: 1%;
  color: #95BB31;
  border-bottom: 1px solid #B2C2D0;
  padding-bottom: 16px;
  margin-bottom: 40px;
}

.section-paragraph {
  font-size: 18px;
  line-height: 175%;
  font-weight: 400;
  color: #282A31;
  margin-bottom: 25px;
}

strong {
  font-family: marineBold;
  font-weight: 700;
}

.section-ordered-list {
  list-style: none;
}

.section-h3, .section-h2 {
  font-weight: 700;
  font-family: marineBold;
  font-size: 20px;
  line-height: 175%;
  color: #282A31;
  padding-left: 10px;
}

.section-h2 {
  padding: 0;
}

.section-unordered-list {
  margin-left: 30px;
  margin-bottom: 60px;
  list-style: disc;
}

.section-unordered-list-item {
  font-size: 18px;
  line-height: 175%;
  font-weight: 400;
  color: #282A31;
  margin-bottom: 10px;
}

.section-image-wrapper-row {
  width: 100%;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin-bottom: 60px;
}

.section-image-wrapper-column {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-bottom: 60px;
}

.section-image-wrapper-row img, .section-image-wrapper-column img {
  width: 17vw;
}

footer {
  margin-top: 50px;
  border-top: 1px solid #B2C2D0;
}