@font-face {
    font-family: "Libre Franklin";
    src: url('../fonts/Libre_Franklin/LibreFranklin-VariableFont_wght.ttf') format("truetype-variations");
    font-weight: 100 1000;
    font-stretch: 25% 151%;

}

:root {
    --bg1: #e8f2f8;
    --bg2: #d0e4f2;
    --bg3: #ffffff;
    --buttonbg: rgb(0, 48, 87);
    --lighttxt: white;
    --bord: rgb(229,299, 299);
    --text: #222222;
    --detail: #606060;
    --transp: #acd5f19f;
    --highlight: #81b2da;
    --green: #4CAF50;
    --red1: rgb(155,40,5);
    --red2: rgb(255, 60, 0);
    --txt_highlt0: rgb(218, 210, 139);
}

.bg2 {
    background-color: var(--bg2);
}

.center {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

html {
    background-color: var(--buttonbg);
}

body {
    margin: 0px;
    font-family: "Libre Franklin", Verdana, Geneva, Tahoma, sans-serif;
    color: var(--text);
    background-color: var(--bg1);
}

h2 {
    margin-top: 0px;
}

button {
    font-family: "Libre Franklin", Verdana, Geneva, Tahoma, sans-serif;
    font-size: clamp(16px, 1.5vw, 32px);
    border: none;
    border-radius: 1px;
    letter-spacing: 1pt;
    background-color: var(--buttonbg);
    color: var(--lighttxt);
    padding: clamp(8px, 10vw, 15px);
    cursor: pointer;
}

button:hover {
    opacity: 0.8;
}
button:active{
    opacity: 1;
}

p {
    font-size: clamp(14px, 1.5vw, 28px);
    line-height: 38px;
    padding-top: 0px;
}

section {
    padding: 0px;
    margin: 0px;
    overflow: hidden;
}


.navbar {
    border-bottom: 1px solid var(--bord);
}

.rowA {
    background-color: var(--bg1);
}

.rowB {
    background-color: var(--bg2);
}

.center {
    display: flex;
    justify-content: center;
}

.fullRowImg {
    width: clamp(200px, 100%, 800px);
}

.trans {
    background-color: var(--transp);
}

.fullWidth {
    width: 100%;
}

.h {
    font-size: clamp(35px, 5vw, 75px);
    font-weight: 600;
}

.flex-centered {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* navbar */

.navbar {
    display: flex;
    justify-content: baseline;
    overflow: hidden;
    background-color: var(--bg3);
}

.navbar > a {
    width: 20%;
}

.navbar > nav {
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    justify-items: flex-end;
    width: 77%;
    margin-right: 10px;
}


.navbar > nav > a {
    display: block;
    font-weight: 700;
    font-size: 18px;
    text-decoration: none;
    letter-spacing: 0.5pt;
    margin-top: 15px;
    padding: 4px;
    border-radius: 5px;
}

.smallImage {
    width: 20px;
}
.img-md {
    width: 30px;
}




.logo > img {
    width: 80px;
    height: 80px;
    margin-bottom: -6px;
}


@media(max-width: 480px) {
    .navbar > nav > a {
        font-size: 14px;
    }

    .logo {
        height: 100%;
        display: flex;
        justify-content: baseline;
        align-items: flex-start;
    }
    .navbar > nav {
        flex-direction: column;
    }
}


/* footer */

footer {
    padding-top: 10px;
    background-color: var(--buttonbg);
    color: var(--bg1);
}

footer > div {
    padding-top: 15px;
}

.footer-socials {
    display: flex;
    justify-content: space-evenly;
}

.footer-about {
    text-align: center;
    line-height: 20px;
    color: var(--detail);
}

.footer-contact {
    text-align: center;
}

.footer-socials > a > svg {
    width: 50px;
}
.footer-socials > a > svg > path {
    fill: var(--bg3);
    stroke: var(--detail);
    stroke-width: 8px;
}
.footer-copyright {
    padding-top: 20px;
    text-align: center;
    color: var(--detail);
}
.footer-contact > a {
    color: var(--highlight);
    text-decoration: none;
    font-weight: 700;
    letter-spacing: 1pt;
}

.error {
    background-color: var(--red2);
    color: white;
    padding: 5px;
    font-size: 18px;
}

.success {
    background-color: var(--green);
    color: white;
    padding: 5px;
    font-size: 18px;
}

.info {
    padding: 5px;
    font-size: 18px;

}

.danger-button {
    background-color: var(--red1);
    color: var(--lighttxt);
}



.field-pair {
    display: grid;
    grid-template-columns: 0.3fr 1fr;
    column-gap: 20px;
    border-bottom: 1px dotted var(--detail);
    width: 100%;
    padding-top: 5px;
    padding-bottom: 5px;
}
.field-pair > div:first-child {
    text-align: right;
    font-weight: 700;
}

.field-pair > div:last-child {
    text-align: left;
}