@font-face {
    font-family: 'GtFlexa';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("static/fonts/gt-flexa/GT-Flexa-Extended-Regular.woff2") format('woff2');
  }
@font-face {
    font-family: 'GtFlexa';
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url("static/fonts/gt-flexa/GT-Flexa-Extended-Thin.woff2") format('woff2');
  }
@font-face {
    font-family: 'PtMono'; 
    font-style: 'normal';
    font-weight: 200;
    font-display: swap;
    src: url("static/fonts/PT_Mono/PTMono-Regular.ttf");
}
@font-face {
    font-family: 'Montserrat'; 
    font-style: 'normal';
    font-weight: 500;
    font-display: swap;
    src: url("static/fonts/Montserrat/static/Montserrat-Medium.ttf");
}
@font-face {
    font-family: 'Montserrat'; 
    font-style: 'normal';
    font-weight: 200;
    font-display: swap;
    src: url("static/fonts/Montserrat/static/Montserrat-Light.ttf");
}

body {
    margin: 0;
}
:root {
    --black-screen: #030003; 
    --black-light: #f5ede0; 
    --big-orange: #f55733;
    --blue-mode: #c2d4f5;
}

h1 {
    font-family: GtFlexa, sans ;
    font-weight: lighter;
    font-size: 3em; 
}
h2 {
    font-family: GtFlexa, sans ;
    font-weight: normal;
    font-size: 2em; 
}
h3 {
    font-family: PtMono;
    font-weight: 200;
    font-size: 2em; 
    letter-spacing: 0.1rem;
}
h4 {
    font-family: Montserrat, sans;
    font-weight: 500;
    font-size: 1.5em; 
    letter-spacing: 0;
}
body {
    font-family: Montserrat, sans ;
    font-weight: 200;
    font-size: 1em; 
    letter-spacing: 0;
}
.highlight {
    font-family: Montserrat, sans;
    font-weight: normal;
    letter-spacing: 0;
}
.highlight.underline {
    text-decoration: underline 0.03em var(--big-orange);     
    text-underline-offset: 0.1em;
}

section {
    min-height: 100vh;
    width: 100%;
}

.bg-black-screen {
    background-color: var(--black-screen); 
    color: white;
}

.bg-black-light {
    background-color: var(--black-light); 
    color: var(--big-orange);
}

.bg-blue-mode {
    background-color: var(--blue-mode); 
    color: black;
}
/* End of theme */

/* Header section */
section.header {
    display: flex;
    flex-direction: column;
    vertical-align: center;
}
.logo {
    width: 15em;
}
.slogan {
    font-family: GtFlexa, sans ;
    font-weight: lighter;
    font-size: 3em; 
    padding-left: 10%;

    /* alignment */
    flex-grow: 1;
    display: flex; 
    flex-direction: column;
    justify-content: center;
}
.slogan p {
    display: inline-block
}
.slogan img {
    vertical-align: baseline;
    height: 0.7em;
}
.slogan-arrow {
    height: 0.5em
}

/* Contact section */
section.contact {
    display: flex;
    align-items: center;
    justify-content: center;
}
section.contact>div {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: space-around;
}
section.contact div div {
    padding: 4em;
}

/* Scroll to top*/ 
.top-scroll {
    /* z-index: 10; */
    position: fixed;
    bottom: 40px;
    right: 40px;
    cursor: pointer;
}

.top-scroll img {
    height: 60px; 
}

/* sub-processors */
.sub-processors {
    padding: 4em;
}
.sub-processors table {
    width: 100%;
    text-align: left;
    border-collapse: collapse;
    border: 2px solid;
}

.sub-processors td, th {
    width: 50%;
    border: 2px solid;
    border-color: var(--big-orange);
    padding: 1em
}