:root {
    --primary-color: #2A292E;
    --secondary-color: #F6F6F6;
    --tritery-color: #676570;
    --quadery-color: #ffffff;
    --fifth-color: #BBAABB;
    --confirm-color: rgb(93, 255, 93);
    --confirm-color-light: rgb(151, 255, 151);
    --cancel-color: rgb(255, 79, 79);
    --cancel-color-light: rgb(255, 131, 131);
    /* --wait-color: rgb(255, 237, 71); */
    --wait-color: rgb(255, 215, 71);
    /* --wait-color-light: rgb(254, 242, 140); */
    --wait-color-light: rgb(255, 227, 124);
    /* --shadow: 0 2px 5px rgba(0,0,0,0.1), 0 0 5px rgba(0,0,0,0.1), 2px 0 5px rgba(0,0,0,0.1);
    --shadow-medium: 0 3px 7px rgba(0,0,0,0.15), 0 0 7px rgba(0,0,0,0.15), 3px 0 7px rgba(0,0,0,0.15);
    --shadow-strong: 0 4px 10px rgba(0,0,0,0.2), 0 0 10px rgba(0,0,0,0.2), 4px 0 10px rgba(0,0,0,0.2); Old versions, new versions are softer and have no offset */
    --shadow: 0 0 10px rgba(0,0,0,0.1), 0 0 10px rgba(0,0,0,0.1), 0 0 10px rgba(0,0,0,0.1);
    --shadow-medium: 0 0 14px rgba(0,0,0,0.15), 0 0 14px rgba(0,0,0,0.15), 0 0 14px rgba(0,0,0,0.15);
    --shadow-strong: 0 0 20px rgba(0,0,0,0.2), 0 0 20px rgba(0,0,0,0.2), 0 0 20px rgba(0,0,0,0.2);
    /* --shadow: 0 0 20px rgba(0,0,0,0.05), 0 0 20px rgba(0,0,0,0.05), 0 0 20px rgba(0,0,0,0.05);
    --shadow-medium: 0 0 28px rgba(0,0,0,0.1), 0 0 28px rgba(0,0,0,0.1), 0 0 28px rgba(0,0,0,0.1);
    --shadow-strong: 0 0 40px rgba(0,0,0,0.15), 0 0 40px rgba(0,0,0,0.15), 0 0 40px rgba(0,0,0,0.15); Even softer, but in my opinion too soft */
    --shadow-bright: 0 0 10px rgba(255, 255, 255, 0.1), 0 0 10px rgba(255, 255, 255, 0.1), 0 0 10px rgba(255, 255, 255, 0.1);
    --shadow-bright-strong: 0 0 20px rgba(255, 255, 255, 0.2), 0 0 20px rgba(255, 255, 255, 0.2), 0 0 20px rgba(255, 255, 255, 0.2);

    --width-sidebar: 250px;

    background: linear-gradient(to top, var(--quadery-color) 0%, var(--secondary-color) 1%, var(--secondary-color) 100%);
}

body {
    height: fit-content;
    width: 100vw;
    max-width: 100vw;
    min-height: calc(100vh - 75px);
    padding-top: 75px;

    /* background-color: var(--secondary-color); */
    background: linear-gradient(to bottom, var(--quadery-color) 0%, var(--secondary-color) 1%, var(--secondary-color) 100%);
    background-position: center center; /* Center the image */
    background-repeat: no-repeat; /* Do not repeat the image */
    background-attachment: fixed; /* Fix the background image */
    background-size: contain; /* Resize the background image to cover the entire container */
    height: 100%; /* Set a specific height */
    margin: 0; /* Remove default margin */

    font-family: Arial, Helvetica, sans-serif;
    color: var(--primary-color);
    font-weight: lighter;
    font-size: 16px;

    overflow-x: hidden;

    display: flex;
    flex-direction: column;
}

*::selection {
    background-color: var(--primary-color);
    color: var(--quadery-color);
}

footer {
    /* bottom: 0; */
    margin-top: auto;
    /* position: fixed; */
    width: 100%;
}

/* Classes ------------------------------------------------------------------------------------------ */

.logo {
    height: 100%;
    aspect-ratio: 1 / 1;
    box-sizing: border-box;
    border-radius: 10px;
    background-color: #2A292E;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    cursor: pointer;
}

.burger-container {
    height: 50px;
    width: 50px;
    margin: 5px;
    position: absolute;
    right: 10px;
    /*display: inline-block;*/
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    background-color: var(--secondary-color);
    background-size: 60%;
    background-position: center center;
    background-repeat: no-repeat;
    border-radius: 15px;
    border: none;
}

.burger-bar1, .burger-bar2, .burger-bar3 {
    width: 30px;
    height: 4px;
    background-color: #333;
    /*margin: 6px 0;*/
    margin-top: 2.5px;
    margin-bottom: 2.5px;
    transition: 0.4s;
    border-radius: 2px;
}

.burger-change .burger-bar1 {
    /*transform: translate(0, 11px) rotate(-45deg);*/
    transform: translate(0, 9px) rotate(-45deg);
}

.burger-change .burger-bar2 {opacity: 0;}

.burger-change .burger-bar3 {
    /*transform: translate(0, -11px) rotate(45deg);*/
    transform: translate(0, -9px) rotate(45deg);
}

.topbar {
    height: 75px; /* probably needs to be auto */
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    position: fixed;
    top: 0;
    z-index: 100;
    box-shadow: var(--shadow);
    background-color: var(--quadery-color);
}

.topbar-links-holder {
    height: 45px;
    width: auto;
    margin-top: 5px;
    display: flex;
    flex-grow: 1;
    padding-right: 10px;
    overflow-x: scroll;
    overflow-y: hidden;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
}

/* Hide scrollbar for Chrome, Safari and Opera */
.topbar-links-holder::-webkit-scrollbar {
    display: none;
}

.topbar-links {
    height: 100%;
    width: auto;
    margin-left: 25px;
    margin-top: calc((45px - 20px) / 2);
    margin-right: 25px;
    color: var(--tritery-color);
    cursor: pointer;

    font-size: 18px;
    

    text-decoration: none;
    white-space: nowrap;
}

.topbar-links:hover {
    color: var(--fifth-color);
}

.topbar-links-selected {
    color: var(--primary-color);
    font-weight: bold;
}

.topbar-small {
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    flex-direction: column;
    position: fixed;
    top: 0;
    z-index: 100;
    box-shadow: var(--shadow);
    background-color: var(--quadery-color);
    display: none;
}

.topbar-small-extended {
    height: 100%;
}

.topbar-small-initialelement {
    height: 55px; /* probably needs to be auto */
    width: 100%;
    display: flex;
    flex-direction: row;
}

.topbar-small-link-holder {
    height: auto;
    width: 100%;
    margin-top: 10px;
    display: none;
    flex-direction: column;
    flex-grow: 1;
    overflow-y: scroll;
}

.topbar-small-link {
    text-align: center;
    text-decoration: none;
    color: var(--primary-color);
    cursor: pointer;
}

.topbar-small-link-selcted {
    background-color: var(--primary-color);
    color: var(--quadery-color);
}

.topbar-small-button-holder {
    height: auto;
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    display: none;
}

.page-content {
    padding-top: 75px;
    width: 100%;
    height: 100vh;
    box-sizing: border-box;
    overflow-x: hidden;
}

.content-block {
    width: 80%;
    margin-left: 10%;
    padding: 15px;
    border-radius: 30px;
    display: flex;
    flex-direction: column;
    background-color: var(--quadery-color);
    box-shadow: var(--shadow);
    margin-top: 30px;
    box-sizing: border-box;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
}

/* Hide scrollbar for Chrome, Safari and Opera */
.content-block::-webkit-scrollbar {
    display: none;
}

.banner {
    width: 100%;
    height: auto;
    padding: 30px;
    background-color: var(--primary-color);
    color: var(--quadery-color);
    box-sizing: border-box;
}

.main-background-image {
    width: 100%;
    height: 60vh;
    background-size: cover;
    background-position: center center;
}

.reviews-block {
    height: 200px;
    width: 90%;
    margin-left: 10%;
    display: flex;
    flex-direction: row;
}

.reviews-initial {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    width: 200px;
    border-right: solid var(--primary-color) 2px;
    padding: 15px;
    box-sizing: border-box;
}


.reviews-initial-header {
    width: 100%;
    height: auto;
    text-align: center;
    font-weight: bold;
    margin-bottom: 10px;
}

.reviews-initial-starholder {
    width: 100%;
    height: 35px;
    border-radius: 5px;
    background-color: var(--confirm-color);
}

.reviews-initial-text {
    width: 100%;
    text-align: center;
    font-size: 12px;
    font-weight: lighter;
    margin-top: 10px;
}

.reviews-holder {
    width: calc(100% - 200px);
    height: 100%;
    display: flex;
    flex-direction: row;
    overflow-x: scroll;
    padding-right: 10vw;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
}

/* Hide scrollbar for Chrome, Safari and Opera */
.reviews-holder::-webkit-scrollbar {
    display: none;
}

.reviews-item {
    height: calc(100% - 20px);
    aspect-ratio: 1 / 1.1;
    margin-left: 15px;
    margin-top: 10px;
    margin-bottom: 10px;
    border-radius: 15px;
    box-sizing: border-box;
    box-shadow: var(--shadow);
    padding: 10px;
}

.offer-elements-holder {
    width: 100%;
    height: auto;
    padding-left: 10%;
    padding-right: 10%;
    padding-top: 15px;
    padding-bottom: 15px;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    overflow-x: hidden;
    background-position: left center;
    background-size: contain;
    background-repeat: no-repeat;
}

.offer-elements {
    width: calc((100% - 30px) / 3);
    height: auto;
    max-height: 80vh;
    margin-left: 15px;
    border-radius: 30px;
    padding: 30px;
    background-color: var(--quadery-color);
    box-shadow: var(--shadow);
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}

ul.circle-list {
  list-style-type: disc;

}

.list-main {
    font-size: 20px;
    font-weight: bold;
}

.list-sub {
    margin-left: 15px;
    /* margin-right: 55px; */
    margin-right: 30px;
    list-style-type: none;
    margin-bottom: 10px;
    /* text-align: justify; */
}

.subjec-holder {
    width: 100%;
    padding-left: 10%;
    padding-right: 10%;
    height: auto;
    display: flex;
    flex-direction: row;
    overflow-x: scroll;
    padding-top: 10px;
    padding-bottom: 10px;
    box-sizing: border-box;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
}

/* Hide scrollbar for Chrome, Safari and Opera */
.subjec-holder::-webkit-scrollbar {
    display: none;
}

.offer-grid-subject {
    width: 250px;
    min-width: 250px;
    aspect-ratio: 1 / 1.25;
    position: relative;
    background-color: var(--quadery-color);
    box-shadow: var(--shadow);
    border-radius: 30px;
    display: flex;
    flex-direction: column;
    transition-duration: 200ms;
    margin-right: 15px;
}

.offer-grid-subject-image {
    aspect-ratio: 1 / 1;
    border-top-left-radius: 30px;
    border-top-right-radius: 30px;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.offer-grid-subject-transition {
    height: 100px;
    width: 100%;
    margin-top: -100px;
    background-image: linear-gradient(to bottom, transparent, var(--quadery-color));
    z-index: 1;
}

.offer-grid-subject-title {
    width: 100%;
    position: absolute;
    text-align: center;
    font-size: 30px;
    bottom: 30px;
    z-index: 2;
}

.advantages-holder {
    width: 80%;
    max-height: 550px;
    margin-left: 10%;
    display: flex;
    flex-direction: row;
    box-sizing: border-box;
}

.advantages-student, .advantages-tutor {
    width: calc((100% - 15px) / 2);
    height: auto;
    border-radius: 30px;
    padding: 30px;
    box-sizing: border-box;
    background-color: var(--quadery-color);
    box-shadow: var(--shadow);
    overflow-y: scroll;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
}

/* Hide scrollbar for Chrome, Safari and Opera */
.advantages-student::-webkit-scrollbar {
    display: none;
}

/* Hide scrollbar for Chrome, Safari and Opera */
.advantages-tutor::-webkit-scrollbar {
    display: none;
}

.advantages-tutor {
    margin-left: 15px;
}

.price-holder {
    width: 80%;
    margin-left: 10%;
    display: flex;
    flex-direction: row;
}

.price-student, .price-tutor {
    width: 50%;
    padding: 30px;
    padding-top: 0px;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
}

.price-student {
    border-right: solid 2px var(--primary-color);
}

.price-display {
    width: 100%;
    text-align: center;
    font-size: 25px;
    font-weight: bold;
}

.about-us-profile-row-holder {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.about-us-profile-row {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    padding-left: 10%;
    padding-right: 10%;
    padding-top: 10px;
    padding-bottom: 10px;
    overflow-x: scroll;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
}

/* Hide scrollbar for Chrome, Safari and Opera */
.about-us-profile-row::-webkit-scrollbar {
    display: none;
}

.about-us-profile {
    width: 200px;
    min-width: 200px;
    padding: 15px;
    border-radius: 30px;
/*    border-top-right-radius: 100px; */
/*    border-top-left-radius: 100px; */
    background-color: var(--quadery-color);
    box-sizing: border-box;
    box-shadow: var(--shadow);
}

.about-us-profile-image {
    aspect-ratio: 1 / 1;
    width: 100%;
    margin-left: 0%;
    margin-bottom: 10px;
    border-radius: 15px;
    background-position: center center;
    background-size: cover;
}

.about-us-profile-name {
    width: 100%;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 5px;

    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

.about-us-profile-role {
    width: 100%;
    text-align: center;
}

.FAQ-header-holder {
    width: 100%;
    display: flex;
    flex-direction: row;
}

.FAQ-toggle {
    width: 45px;
    min-width: 45px;
    height: 45px;
    border-radius: 15px;
    background-position: center center;
    background-size: 60%;
    background-repeat: no-repeat;
    cursor: pointer;
    transition: transform 0.3s ease-in-out;
}

.FAQ-toggle:hover {
    background-color: var(--secondary-color);
}

.rotated {
    transform: rotate(90deg);
    transition: transform 0.3s ease; /* Smooth transition for rotation */
}

.FAQ-Header {
    height: auto;
    display: flex;
    flex-grow: 1;
    margin-left: 5px;
    font-size: 25px;
    font-weight: bold;
    padding-top: 10px;
    box-sizing: border-box;
}

.FAQ-seperator {
    width: 100%;
    height: 1.5px;
    background-color: var(--primary-color);
    margin-top: 10px;
    margin-bottom: 10px;
}

.blog-post-holder, .blog-post-holder-reversed {
    width: 80%;
    margin-left: 10%;
    height: 250px;
    display: flex;
    box-sizing: border-box;
    text-decoration: none;
    cursor: pointer;
}

.blog-post-holder {
    flex-direction: row;
}

.blog-post-holder-reversed {
    flex-direction: row-reverse;
}

.blog-post-text-holder {
    width: calc(100% - 150px);
    height: 150px;
    margin-top: 50px;
    padding: 15px;
    border-radius: 30px;
    z-index: 5;
    box-sizing: border-box;
    box-shadow: var(--shadow);
    background-color: var(--quadery-color);
}

.blog-post-title {
    width: 100%;
    height: 100px;
    font-size: 30px;
    font-weight: bold;
    color: var(--primary-color);
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    overflow-y: hidden;
}

.blog-post-date {
    width: 100%;
    height: 20px;
    padding-top: 5px;
    text-align: center;
    color: var(--tritery-color);
    box-sizing: border-box;
}

.blog-post-image {
    aspect-ratio: 1 / 1;
    height: 100%;
    border-radius: 30px;
    border: solid 4px var(--primary-color);
    margin-left: -100px;
    margin-right: -100px;
    box-sizing: border-box;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.blogpost-info {
    width: calc(80% + 30px);
    margin-left: calc(10% - 15px);
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    overflow-x: scroll;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
}

/* Hide scrollbar for Chrome, Safari and Opera */
.blogpost-info::-webkit-scrollbar {
    display: none;
}

.blogpost-info-element {
    margin-left: 15px;
    margin-right: 15px;
    color: var(--tritery-color);
    text-align: center;
    white-space: nowrap;
}

.blogpost-info-element-seperator {

}

.blogpost-blog-post-holder {
    width: 100%;
    padding-left: 10%;
    padding-right: calc(10% - 10px);
    display: flex;
    flex-direction: row;
    overflow-x: scroll;
    box-sizing: border-box;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
}

/* Hide scrollbar for Chrome, Safari and Opera */
.blogpost-blog-post-holder::-webkit-scrollbar {
    display: none;
}

.blogpost-blog-post {
    width: 500px;
    min-width: 500px;
    height: 100px;
    margin-right: 10px;
    border-radius: 30px;
    text-decoration: none;
    overflow-x: hidden;
    background-color: var(--quadery-color);
    box-shadow: var(--shadow);
    margin-top: 15px;
    margin-bottom: 15px;
    display: flex;
    flex-direction: row;
}

.blogpost-blog-post-image {
    width: 100px;
    height: 100px;
    background-position: left center;
    background-size: contain;
    background-repeat: no-repeat;
}

.blogpost-blog-post-transition {
    height: 100%;
    width: 50px;
    margin-left: -62px;
    background: linear-gradient(to right, transparent, var(--quadery-color));
}

.blogpost-blog-post-title {
    height: 100%;
    width: 400px;
    padding-top: 15px;
    padding-bottom: 15px;
    font-size: 30px;
    font-weight: bold;
    display: flex;
    text-align: left;
    justify-content: left;
    align-items: center;
    box-sizing: border-box;
}

.blogpost-blog-post-title-content {
    width: 400px;
    text-decoration: none;
    color: var(--primary-color);
    white-space: nowrap;
    overflow-x: hidden;
    text-overflow: ellipsis;
}

/* Footer ------------------------------------------------------------------------------------------- */

.footer-content {
    width: 80%;
    height: auto;
    margin-left: 10%;
    padding: 15px;
    border-top: solid var(--fifth-color) 1px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    overflow-x: scroll;
    box-sizing: border-box;
}

.footer-element {
    /*color: var(--tritery-color);*/
    color: var(--fifth-color);
    font-size: 12px;
    white-space: nowrap;
}
    
.footer-element-spacer {
    cursor: default;
}

/* Buttons ------------------------------------------------------------------------------------------ */

.button-normal {
    height: 45px;
    min-height: 45px;
    width: 100%;
    font-size: 15px;
    color: #F6F6F6;
    background-color: #2A292E;
    border: none;
    border-radius: 15px;
    margin-top: auto;
    /* margin-bottom: 10px; */
    cursor: pointer;
}

.button-normal:hover {
    color: #ffffff;
    background-color: #676570;
}

.button-normal:disabled {
    /* color: var(--primary-color); */
    color: var(--quadery-color);
    /* color: var(--tritery-color); */
    background-color: var(--secondary-color);
    cursor: auto;
}

.button-medium {
    height: 45px;
    min-height: 45px;
    width: 100%;
    font-size: 15px;
    color: var(--quadery-color);
    background-color: var(--tritery-color);
    border: none;
    border-radius: 15px;
    margin-top: auto;
    /* margin-bottom: 10px; */
    cursor: pointer;
}
/* Fix the action styles*/
.button-medium:hover {
    color: var(--primary-color);
    background-color: var(--secondary-color);
}

.button-medium:disabled {
    color: #2A292E;
    background-color: #F6F6F6;
    cursor: auto;
}

.button-decent {
    height: 45px;
    min-height: 45px;
    width: 100%;
    font-size: 15px;
    color: #2A292E;
    background-color: #F6F6F6;
    border: none;
    border-radius: 15px;
    margin-top: auto;
    /* margin-bottom: 10px; */
    cursor: pointer;
    transition-duration: 200ms;
}
/* Fix the action styles*/
.button-decent:hover {
    color: #ffffff;
    background-color: #676570;
}

.button-decent:disabled {
    color: #2A292E;
    background-color: #F6F6F6;
    cursor: auto;
}

.switch-container {
    display: grid;
    overflow-y: hidden;
    overflow-x: auto;
    gap: 5px;
    padding: 0;
    grid-template-columns: repeat(auto-fit, minmax(60px, 1fr));
    /* max-height: 60px; */
    /* min-height: 60px; */
    margin-bottom: 10px;
    grid-auto-flow: column; /* Was original: not there */
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
}

/* Hide scrollbar for Chrome, Safari and Opera */
.switch-container::-webkit-scrollbar {
    display: none;
}

.switch-button {
    flex: 0 0 auto; /* This ensures each button only takes up its own space */
    height: 45px;
    min-width: 60px; /* You can set a minimum width for each button */
    font-size: 15px;
    color: var(--primary-color);
    background-color: var(--secondary-color);
    border: none;
    border-radius: 15px;
    cursor: pointer;
    /* Add more styling as needed */
}


.switch-button.active {
    background-color: var(--primary-color);
    color: white;
}

.switch-button:hover {
    background-color: var(--tritery-color);
    color: white;
}

/* Transitions -------------------------------------------------------------------------------------- */

.transition-vertical-to-second {
    background-image: linear-gradient(to bottom, transparent, var(--secondary-color));
    width: 100%;
}

/* Input -------------------------------------------------------------------------------------------- */

.inputV2 {
    width: 100%;
    height: 45px;
    font-size: 15px;
    color: #2A292E;
    background-color: var(--secondary-color);
    border: none;
    outline: none;
    border-radius: 15px;
    margin-bottom: 10px;
    position: relative;
    padding: 15px; /* Adjust the padding as needed */
    box-sizing: border-box;
}

.inputV2:hover {
    /*background-color: #676570;*/
    background-color: var(--secondary-color);
}

.dropdown-decent {
    height: 45px;
    width: 100%;
    font-size: 15px;
    color: #2A292E;
    background-color: #F6F6F6;
    border: none;
    border-radius: 15px;
    margin-top: auto;
    cursor: pointer;
    transition-duration: 200ms;
}
/*
.dropdown-decent:hover {
    color: #ffffff;
    background-color: #676570;
}
*/
/* Custom styling for the dropdown arrow */
.dropdown-container {
    position: relative;
    width: 100%;
    margin-bottom: 10px;
}

.dropdown-container::after {
    content: '';
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    border: 5px solid transparent;
    border-top-color: #2A292E;
}

.dropdown-decent {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-left: 15px;
}

.dropdown-decent:focus {
    outline: none;
}

/* Text --------------------------------------------------------------------------------------------- */

.header {
    width: 80%;
    height: auto;
    margin-left: 10%;
    font-size: 60px;
    font-weight: bold;
    text-align: center;
}

.header-mid {
    width: 80%;
    height: auto;
    margin-left: 10%;
    font-size: 50px;
    font-weight: bold;
    text-align: center;
}

.header-sub {
    width: 80%;
    height: auto;
    margin-left: 10%;
    font-size: 40px;
    font-weight: bold;
    text-align: center;
}

.login-header {
    width: 80%;
    height: auto;
    color: #2A292E;
    font-size: 30px;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: light;
    margin-bottom: 10px;
    cursor: default;
}

.login-header-mid {
    width: 80%;
    height: auto;
    color: #2A292E;
    font-size: 20px;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: light;
    margin-bottom: 10px;
    cursor: default;
}

.login-header-sub {
    width: 80%;
    height: auto;
    color: #676570;
    font-size: 15px;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: light;
    margin-bottom: 10px;
    cursor: default;
}

.text-block {
    width: 80%;
    height: auto;
    margin-left: 10%;
    text-align: justify;
    line-height: 1.5;
    color: var(--primary-color);
}

.citation-block {
    width: 50%;
    height: auto;
    margin-left: 25%;
    text-align: center;
    color: var(--tritery-color);
}

.citation-block-holder {
    width: 80%;
    margin-left: 10%;
    border-left: solid var(--tritery-color) 2px;
    padding-left: 45px;
    padding-right: 45px;
    box-sizing: border-box;
}

.citation-block-V2 {
    width: 100%;
    max-width: 550px;
    height: auto;
    text-align: justify;
    color: var(--tritery-color);
    line-height: 1.5;
}

.citation-block-V3 {
    width: 50%;
    height: auto;
    margin-left: 25%;
    text-align: center;
    color: var(--tritery-color);
    line-height: 1.5;
}

.outlink {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 80%;
    margin-left: 10%;
    color: var(--primary-color);
}

.outlink-icon {
    margin-left: 10px;
    width: 20px;
    height: 20px;
    background-position: center center;
    background-repeat: no-repeat;
}

/* Spacer ------------------------------------------------------------------------------------------- */

.spacer-small {
    width: 100%;
    height: 20px;
}

.spacer-medium {
    width: 100%;
    height: 40px;
}

.spacer-big {
    width: 100%;
    height: 60px;
}

.vertical-spacer-10 {
    height: 100%;
    width: 10px;
    min-width: 10px;
}

.vertical-spacer-15 {
    height: 100%;
    width: 15px;
    min-width: 15px;
}

/* IDs ---------------------------------------------------------------------------------------------- */

#base-textblock-2 {
    display: flex;
    flex-direction: column;
    width: 40%;
    margin-left: 10%;
    justify-content: center;
    align-items: center;
}

#aboutus-containerblock-1 {
    display: flex;
    flex-direction: row;
}

#aboutus-textblock-1 {
    display: flex;
    flex-direction: column;
    width: 45%;
    margin-left: 5%;
    justify-content: center;
    align-items: center;
}

#aboutus-background-image-1 {
    width: 40%;
    aspect-ratio: 1 / 1;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}

/* Media -------------------------------------------------------------------------------------------- */

@media (max-width: 1000px) {
    #aboutus-textblock-1 {
        width: 80%;
        margin-left: 10%;
    }

    #aboutus-background-image-1 {
        display: none;
        width: 50%;
    }

    #aboutus-containerblock-1 {
        flex-direction: column-reverse;
    }
}

@media (max-width: 850px) {
    .offer-elements-holder {
        flex-direction: column;
        /* background-position: top center; */
    }

    .offer-elements {
        margin-left: 0px;
        margin-top: 15px;
        width: 100%;
    }

    .blog-post-holder, .blog-post-holder-reversed {
        width: 90%;
        margin-left: 5%;
        margin-bottom: 20px;
        height: auto;
    }
    
    .blog-post-holder-reversed {
        flex-direction: row;
    }

    .blog-post-text-holder {
        width: 100%;
        height: 200px;
        margin-top: 0px;
    }

    .blog-post-title {
        height: 150px;
    }

    .blog-post-image {
        height: 150px;
        margin-left: calc(((100% + 150px) / 2) * -1);
        display: none;
    }

    .blogpost-info {
        flex-direction: column;
    }
    
    .blogpost-info-element {
        width: 100%;
        margin-left: 0px;
        margin-right: 0x;
        margin-top: 15px;
        margin-bottom: 15x;
    }

    .blogpost-info-element-seperator {
        display: none;
    }

    .main-background-image {
        height: 55vh;
    }

    .footer-content {
        width: 90%;
        margin-left: 5%;
        padding: 15px;
        flex-direction: column;
        justify-content: center;
        overflow-x: hidden;
    }
    
    .footer-element {
        box-sizing: border-box;
        text-align: center;
        margin-bottom: 5px;
    }
    
    .footer-element-spacer {
        display: none;
    }
}

@media (max-width: 787.5px) {
    .about-us-profile-row {
        justify-content: left;
    }
}

@media (max-width: 700px) {
    .topbar {
        display: none;
    }

    .topbar-small {
        display: flex;
    }

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

    .header {
        font-size: 40px;
        word-break: break-word;
        overflow-wrap: break-word;
        white-space: normal;
        hyphens: auto;
    }

    .header-sub {
        font-size: 20px;
    }

    /* .text-block {
        text-align: left;
    } */

    .advantages-holder {
        flex-direction: column;
        padding-right: 15px;
        box-sizing: border-box;
        max-height: 180vh;
    }

    .advantages-student, .advantages-tutor {
        width: 100%;
        margin-left: 0px;
        max-height: none;
    }

    .advantages-tutor {
        margin-top: 15px;
    }

    .price-holder {
        flex-direction: column;
    }

    .price-student, .price-tutor {
        width: 100%;
    }

    .price-student {
        border-right: none;
        border-bottom: solid 2px var(--primary-color);
    }
}


/* Loader ----------------------------*/

.construction-holder {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    flex-direction: column;
    margin: 0;
    /* position: absolute; */
    position: relative;
    /* top: 50%;
    left: 50%; */
    /* -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); */
    /* Commented out sections are still here from the original version on the actual StudierZone, but are not needed here since we have a slightly different structure */
}

.socket {
    width: 200px;
    height: 200px;
    position: relative;
}

.hex-brick {
    background: var(--primary-color);
    width: 30px;
    height: 17px;
    position: absolute;
    top: 5px;
    animation-name: fade00;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    -webkit-animation-name: fade00;
    -webkit-animation-duration: 2s;
    -webkit-animation-iteration-count: infinite;
}

.h2 {
    transform: rotate(60deg);
    -webkit-transform: rotate(60deg);
}

.h3 {
    transform: rotate(-60deg);
    -webkit-transform: rotate(-60deg);
}

.gel {
    height: 30px;
    width: 30px;
    transition: all .3s;
    -webkit-transition: all .3s;
    position: absolute;
    top: 50%;
    left: 50%;
}

.center-gel {
    margin-left: -15px;
    margin-top: -15px;
    animation-name: pulse00;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    -webkit-animation-name: pulse00;
    -webkit-animation-duration: 2s;
    -webkit-animation-iteration-count: infinite;
}

.c1 {
    margin-left: -47px;
    margin-top: -15px;
}

.c2 {
    margin-left: -31px;
    margin-top: -43px;
}

.c3 {
    margin-left: 1px;
    margin-top: -43px;
}

.c4 {
    margin-left: 17px;
    margin-top: -15px;
}

.c5 {
    margin-left: -31px;
    margin-top: 13px;
}

.c6 {
    margin-left: 1px;
    margin-top: 13px;
}

.c7 {
    margin-left: -63px;
    margin-top: -43px;
}

.c8 {
    margin-left: 33px;
    margin-top: -43px;
}

.c9 {
    margin-left: -15px;
    margin-top: 41px;
}

.c10 {
    margin-left: -63px;
    margin-top: 13px;
}

.c11 {
    margin-left: 33px;
    margin-top: 13px;
}

.c12 {
    margin-left: -15px;
    margin-top: -71px;
}

.c13 {
    margin-left: -47px;
    margin-top: -71px;
}

.c14 {
    margin-left: 17px;
    margin-top: -71px;
}

.c15 {
    margin-left: -47px;
    margin-top: 41px;
}

.c16 {
    margin-left: 17px;
    margin-top: 41px;
}

.c17 {
    margin-left: -79px;
    margin-top: -15px;
}

.c18 {
    margin-left: 49px;
    margin-top: -15px;
}

.c19 {
    margin-left: -63px;
    margin-top: -99px;
}

.c20 {
    margin-left: 33px;
    margin-top: -99px;
}

.c21 {
    margin-left: 1px;
    margin-top: -99px;
}

.c22 {
    margin-left: -31px;
    margin-top: -99px;
}

.c23 {
    margin-left: -63px;
    margin-top: 69px;
}

.c24 {
    margin-left: 33px;
    margin-top: 69px;
}

.c25 {
    margin-left: 1px;
    margin-top: 69px;
}

.c26 {
    margin-left: -31px;
    margin-top: 69px;
}

.c27 {
    margin-left: -79px;
    margin-top: -15px;
}

.c28 {
    margin-left: -95px;
    margin-top: -43px;
}

.c29 {
    margin-left: -95px;
    margin-top: 13px;
}

.c30 {
    margin-left: 49px;
    margin-top: 41px;
}

.c31 {
    margin-left: -79px;
    margin-top: -71px;
}

.c32 {
    margin-left: -111px;
    margin-top: -15px;
}

.c33 {
    margin-left: 65px;
    margin-top: -43px;
}

.c34 {
    margin-left: 65px;
    margin-top: 13px;
}

.c35 {
    margin-left: -79px;
    margin-top: 41px;
}

.c36 {
    margin-left: 49px;
    margin-top: -71px;
}

.c37 {
    margin-left: 81px;
    margin-top: -15px;
}

.r1 {
    animation-name: pulse00;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-delay: .2s;
    -webkit-animation-name: pulse00;
    -webkit-animation-duration: 2s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-delay: .2s;
}

.r2 {
    animation-name: pulse00;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-delay: .4s;
    -webkit-animation-name: pulse00;
    -webkit-animation-duration: 2s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-delay: .4s;
}

.r3 {
    animation-name: pulse00;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-delay: .6s;
    -webkit-animation-name: pulse00;
    -webkit-animation-duration: 2s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-delay: .6s;
}

.r1 > .hex-brick {
    animation-name: fade00;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-delay: .2s;
    -webkit-animation-name: fade00;
    -webkit-animation-duration: 2s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-delay: .2s;
}

.r2 > .hex-brick {
    animation-name: fade00;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-delay: .4s;
    -webkit-animation-name: fade00;
    -webkit-animation-duration: 2s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-delay: .4s;
}

.r3 > .hex-brick {
    animation-name: fade00;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-delay: .6s;
    -webkit-animation-name: fade00;
    -webkit-animation-duration: 2s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-delay: .6s;
}

@keyframes pulse00 {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    50% {
        -webkit-transform: scale(0.01);
        transform: scale(0.01);
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes fade00 {
    0% {
        background: var(--tritery-color);
    }

    50% {
        background: var(--secondary-color);
    }

    100% {
        background: var(--primary-color);
    }
}


