html {
    scroll-behavior: smooth;
  }

/* Reset and Base Styles */
* {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 300;
    font-style: normal;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    background-image: url("bg.png");
    background-size: 100%;
}

a {
    font-weight: 400;
    color: #fff;
    text-decoration: none;
    padding: 0.5em 1em;
    border-radius: 2em;
    background: transparent;
    transition: all 0.3s ease;
}

a:hover {
    text-decoration: underline;
}

.header > *:last-child > a {
    background: linear-gradient(to right, #ab77e3ff, #ab77e366);
}

.header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    padding: 2em 8em;
}

section {
    padding: 2em 8em;
}

.menu-item {
    font-size: 1.5em;
    font-weight: 400;
    color: #fff;
    text-decoration: none;
}

.hero {
    display: flex;
    flex-direction: column;
    color: #fff;
    max-width: 60%;
    gap: 1em;
}

.title {
    font-size: 3em;
    font-weight: 600;
}

b {
    font-weight: 600;
}

.goal {
    display: flex;
    flex-direction: row;
    gap: 2em;
    align-items: center;
    padding: 2em 8em;
    background: linear-gradient(90deg, #ffffffff 0%, #ffffff88 100%);
    color: #6114b4;
}

.goal-title {
    font-size: 3em;
    min-width: 6em;
    font-weight: 500;
}

.glol-about {
    font-size: 1.5em;
}

.projects {
    display: flex;
    flex-direction: column;
    gap: 2em;
    padding: 2em 8em;
    color: #fff;

}

.projects-title {
    font-size: 3em;
    font-weight: 500;
    text-align: center;
    text-transform: uppercase;
}

.projects-container {
    display: flex;
    flex-direction: row;
    gap: 2em;
    justify-content: center;
}

.project-card {
    padding: 1em;
    background: linear-gradient(0deg, #ffffffff 0%, #ffffffdd 100%);
    border-radius: 2em;
    color: #000;
    max-width: 30%;
    display: flex;
    flex-direction: column;
    gap: 1em;
}

.project-card > img:first-child {
    border-radius: 1em;
}

.project-about {
    display: flex;
    flex-direction: row;
}

.time {
    flex: 1;
}

.project-link {
    justify-content: center;
    align-items: center;

}

button {
    border-radius: 2em;
    padding: 0.5em 2em;
    border: 4px solid transparent; /* Create space for the border */
    border-radius: 50px;
    background:
      /* Layer 1: The content background */
      linear-gradient(white, white) padding-box,
      /* Layer 2: The border gradient */
      linear-gradient(to right, #6114b4ff, #6114b488) border-box;
}

.project-year {
    border-top: 2px solid #9a9a9a;
    padding-top: 0.5em;
    text-align: center;
    font-size: 1.5em;
    font-weight: 400;
}


.partners {
    padding: 2em 8em;
    background-color: #fff;
    border-top-left-radius: 10em;
    border-bottom-right-radius: 10em;
    display: flex;
    flex-direction: column;
    gap: 2em;
}

.partners-title {
    font-size: 3em;
    font-weight: 600;
    color: #6114b4;
    text-align: center;
    text-transform: uppercase;
}

.grid-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    background-color: #9a9a9a;
    gap: 3px;
}

.grid-container > * {
    background: #fff;
}
    
.div1 { grid-area: 1 / 1 / 2 / 2; }
.div2 { grid-area: 1 / 2 / 2 / 3; }
.div3 { grid-area: 2 / 1 / 3 / 2; }
.div4 { grid-area: 2 / 2 / 3 / 3; }

.grid-container > * > * {
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 1;
    height: 100%;
}

.grid-container > * > * > img {
    width: 300px;
    height: auto;
    display: block; /* Removes extra space below the image */
}

.footer {
    background: linear-gradient(90deg, #ffffffff 0%, #ffffff88 100%);
}

.documents {
    display: flex;
    flex-direction: column;
    gap: 1em;
    color: #fff;
}

.documents-title {
    font-size: 3em;
    font-weight: 500;
    text-align: center;
    text-transform: uppercase;
}

.contacts {
    display: flex;
    flex-direction: row;
    gap: 2em;
}

.director {
    border-radius: 3em;
    background: linear-gradient(90deg, #ffffffff 0%, #ffffffcc 100%);
    padding: 2em;
    color: #666;
    flex: 60;
    position: relative;
}

.director>img {
    width: 20%;
    height: auto;
    border-radius: 50%;
    border: 1px solid #9a9a9a;
    position: absolute;
    right: 2em;
    top: 2em;
}

.director-title {
    font-size: 1.5em;
    font-weight: 500;
}

.director-name {
    font-size: 2em;
}

.email {
    font-size: 1.2em;
}

.phrase {
    padding-top: 3em;
    font-size: 3em;
    color: #6114b4;
    font-weight: 600;
}

.adress {
    border: 5px solid #eee;
    border-radius: 3em;
    padding: 2em;
}

.files {
    border: 5px solid #eee;
    border-radius: 3em;
    padding: 2em;
}

.contacts2 {
    display: flex;
    flex-direction: column;
    gap: 1em;
    flex: 40;
}

.contacts2 > div:first-child {
    flex: 1;
}
