/*!
Theme Name: Contact-Theme
Theme URI: -
Author: Contact GmbH
Author URI:
Description:
Version: 1.0.0
License: -
License URI: -
Text Domain: contact-theme
Tags:

*/

/* ================================

General
    Presets

Modules

================================ */


/* ================================
------------- General -------------
================================ */

@font-face {
    font-family: 'NotoSerif';
    src: url('./assets/fonts/notoserif-regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Roboto';
    src: url('./assets/fonts/roboto-regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'OpenSans';
    src: url('./assets/fonts/opensans-regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

/* ========== Presets ========== */

:root {
    --black: #333333;
    --white: #FFFFFF;
    --blue: #2A4B63;
    --grey: #F0EFEB;
    --brown: #A26F52;
}

html {
    font-size: 62.5%;
    scroll-behavior: smooth;
}

body {
    color: var(--black);
    font-family: "Roboto", Arial, Helvetica, sans-serif;
    font-size: 1.6rem;
    line-height: 150%;
    font-weight: 400;
    letter-spacing: 1px;
    word-wrap: break-word;
}

section {
    position: relative;
    padding: 8rem .75rem;
}

a {
    text-decoration: none;
}

a.link-button {
    display: inline-block;
    padding: .7rem 1rem;
    border: 1px solid var(--black);
    color: var(--black);
    text-transform: uppercase;
    margin-top: 3rem;
    font-family: "OpenSans", Arial, Helvetica, sans-serif;
    font-weight: 400;
}

.h1 {
    font-size: 6.5rem;
    font-weight: 400;
    font-family: "NotoSerif", Arial, Helvetica, sans-serif;
    color: var(--blue);
    margin-bottom: 3rem;
}

.h2 {
    font-size: 2rem;
    font-weight: 400;
    font-family: "Roboto", Arial, Helvetica, sans-serif;
    margin-bottom: 2rem;
    text-transform: uppercase;
}

img {
    max-width: 100%;
    width: 100%;
    height: auto;
}

.background-color-white {
    background-color: var(--white);
}

.background-color-grey {
    background-color: var(--grey);
}

/* ================================
------------- Modules -------------
================================ */

/* NAVGATION */

.site-header, .main-navigation {
    padding: 0;
}

.navbar-brand {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 0;
    z-index: 999;
}

@media only screen and (min-width: 575px) {
    .navbar-brand {
        top: 6rem;
    }
}

/* HEADER-MODULE */

.header-module {
    padding: 0;
}

.header-module .image {
    display: none;
}

.header-module .text-container {
    text-align: center;
    color: var(--white);
}

.header-module .logo {
    width: 200px;
}

.header-module .content-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2rem;
    width: 100%;
}

@media only screen and (min-width: 768px) {
    .header-module .content-container {
        width: unset;
    }
    .header-module .logo {
        width: 375px;
    }
    .header-module .text-container {
        max-width: 450px;
    }
}

@media only screen and (min-width: 1440px) {
    .header-module .image {
        display: block;
    }
    .header-module .image-mobile {
        display: none;
    }
}

/* QUOTE-MODULE */

.quote-module .text-container {
    position: relative;
}

@media only screen and (min-width: 768px) {
    .quote-module .text-container::before {
        position: absolute;
        top: 8rem;
        left: -11rem;
        color: var(--black);
        transform: rotate(-90deg);
        text-transform: uppercase;
    }
    .quote-module .text-container {
        border-left: 1px solid var(--black);
        padding-left: 4rem;
    }
}

/* IAMGE-MODULE */

.image-module {
    padding: 0;
}

/* NEWS-MODULE */
.news-module .news-container {
    display: grid;
    grid-template-columns: 1fr;
    gap: 3rem;
}

.news-module .news-item {
    padding-top: 2rem;
    border-top: 1px solid var(--black);
}

.news-module .news-item img {
    margin-bottom: 4rem;
}
.news-module a.load-more-button {
    background-color: var(--blue);
    color: var(--white);
    display: inline-block;
    margin: 10rem 0 0 0;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}

@media only screen and (min-width: 768px) {
    .news-module .news-container {
        grid-template-columns: repeat(2, 350px);
        gap: 7rem 3rem;
        justify-content: center;
    }
}

@media only screen and (min-width: 992px) {
    .news-module .news-container {
        gap: 7rem 13rem;
    }
}

/* NEWSLETTER-MODULE */

.newsletter-module {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    color: var(--white);
}
.newsletter-module .h1 {
    color: var(--white);
}
.newsletter-module .text-container {
    position: relative;
    padding: 2rem 0;
}
.newsletter-module .newsletter-row {
    border-top: 1px solid var(--brown);
    border-bottom: 1px solid var(--brown);
}

/* TEXT-BOX-IMAGE-MODULE */
.text-box-image-module .text-container {
    padding: 3rem;
    background-color: var(--brown);
    color: var(--white);
    height: 100%;
}
.text-box-image-module img {
    height: 100%;
}
.text-box-image-module a.link-button {
    color: var(--white);
    border-color: var(--white);
}
/* CONTACT-FORM-MODULE */
.contact-form-module {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    color: var(--white);
}
.contact-form-module .h1 {
    color: var(--brown);
}
.contact-form-module .form-container p {
    display: flex;
    gap: 2rem;
}
.contact-form-module input[type="text"], .contact-form-module input[type="email"], .contact-form-module textarea {
    width: 100%;
    padding: 1rem;
    margin-bottom: 2rem;
    border: none;
    border-radius: 0;
    outline: none;
    box-shadow: none;
    margin-top: 1rem;
}
.contact-form-module input[type="submit"] {
    padding: 1rem 2rem;
    border: none;
    background-color: var(--white);
    cursor: pointer;
    margin-top: 2rem;
}
.contact-form-module label {
    width: 100%;
}
.contact-form-module .wpcf7-list-item {
    margin: 2rem 0;
}
.contact-form-module .wpcf7-list-item a {
    color: var(--white);
}
/* NEWSDETAIL-MODULE */
.newsdetail-module .thumbnail {
    margin-bottom: 5rem;
}
.newsdetail-module img:not(.thumbnail) {
    margin: 1rem 0;
}
/* FOOTER */
footer {
    padding: 2rem 0;
}
footer p {
    margin-bottom: 0;
}
footer .link-container {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}
footer .link-container a {
    color: var(--black);
}
@media only screen and (min-width: 768px) {
    footer .link-container {
        flex-direction: row;
        justify-content: end;
    }
}
