﻿/*
## GLOBONET VISUAL CSS - ecosun-ag.ch LPT
*/





/**** TEXT COLORS ****/

/* WHITE (on dark backgrounds) */
h1,
#hero h1,
#hero .tagline,
#hero .hero-sub,
#hero .hero-sub strong,
button,
.button,
input[type=submit],
#bottomfooter p,
#bottomfooter a {
    color: var(--white);
}

/* BLUE */
a,
.form h4,
#decline,
#popup h3,
#selection,
.menuitem a:hover,
.stat-number{
    color: var(--blue);
}
.grid svg path {
    fill: var(--blue);
}
#hero .highlight {
    color: #81BFF4;
}

/* DARK / BLACK (default body text) */
h2,
h3,
h4,
p,
li,
.menuitem a,
#topfooter p,
#topfooter a,
#topfooter h3 {
    color: var(--black);
}

/* POPUP */
#popup h3 {
    color: var(--blue);
}

#popup p {
    color: var(--text);
}

/* OTHER */
.alert i:nth-of-type(1) {
    color: green;
}

/**** BACKGROUNDS ****/

/* WHITE */
body,
.dropdown,
#teaserbox .box {
    background: var(--white);
}

/* GREY */
input,
textarea,
.teaser,
/* BLUE */
.button,
button:not(#burgermenu):not(#selection):not(#decline),
.teaser i,
input[type=submit] {
    background: var(--blue);
}

/* Outline style (Ueber uns in hero) */
.button.btn-outline {
    background: transparent;
    color: var(--white);
    border: 2px solid rgba(255, 255, 255, 0.85);
}

.button.btn-outline:hover {
    background: #004b9a;
    border-color: #004b9a;
}

/* TRANSPARENT */
#selection,
#burgermenu,
#decline {
    background: transparent;
}

#decline {
    color: var(--blue);
    border: 1px solid var(--blue);
    background: transparent;
}

/* POPUP */
#popup {
    background: rgba(255, 255, 255, 0.92);
}

/**** STATS BAR ****/
#statsbar {
    background: var(--blue);
}

#statsbar .stat-number {
    font-size: 2rem;
    font-weight: 800;
    line-height: 1;
    color: var(--white);
}

#statsbar .stat-label {
    font-size: 0.88rem;
    color: rgba(255, 255, 255, 0.88);
}

/**** OUTLINE ****/
#decline,
input:focus,
textarea:focus {
    outline: 1px solid var(--blue);
}

.button:focus-visible,
button:focus-visible,
input[type="submit"]:focus-visible,
a:focus-visible {
    outline: .2rem solid var(--black);
}

/**** BOX SHADOW ****/
#popup {
    -webkit-backdrop-filter: blur(1.5rem);
    backdrop-filter: blur(1.5rem);
    box-shadow: 0 8px 40px rgba(0, 0, 0, 0.18);
}

.bottommenu .inner {
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.13);

}

/**** TEXT DECORATION ****/
.menuitem a:hover {
    text-decoration: none;
}

#popup a,
#bottomfooter a {
    text-decoration: underline;
}

/**** TRANSITIONS ****/
nav,
.dropdown,
.menuitem a,
#selection span {
    transition: all linear 100ms;
}

#burgermenu {
    transition: all linear 200ms;
}

.button,
button {
    transition: all 0.15s ease;
}

.button:hover,
button:not(#burgermenu):not(#selection):not(#decline):hover {
    background-color: #004b9a !important;
}

/**** TEASERBOX hover ****/

/**** NAV LI COLORS ****/
nav li a {
    color: #1A1A1A;
}

nav li a:hover {
    color: #004b9a;
}

/**** BURGER LINES ****/
#burgermenu .burger .line {
    background: #222;
}

/* NEW FOOTER VISUALS */
#cta-footer {
    position: relative;
    background-color: #ffcb05;
    color: var(--white);
    z-index: 1;
}

#cta-footer::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url('../img/cta-background.png');
    background-position: top center;
    background-repeat: repeat-x;
    opacity: 0.5;
    transition: background 0.3s, border-radius 0.3s, opacity 0.3s;
    z-index: -1;
}

#cta-footer h2,
#cta-footer p,
#cta-footer .small-tag {
    color: var(--white);
}

#cta-footer .btn-cta {
    background-color: #007CD8 !important;
    color: var(--white);
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    font-weight: 600;
    padding: 20px 40px;
    border-radius: 4px;
    box-shadow: 0px 8px 24px rgba(0, 0, 0, 0.25);
    border: none;
    letter-spacing: 0.5px;
}

#cta-footer .btn-cta:hover {
    background-color: #005A9E !important;
    box-shadow: 0px 12px 30px rgba(0, 0, 0, 0.3);
}

#topfooter,
#bottomfooter {
    background-color: transparent;
    background-image: linear-gradient(90deg, #007CD8 0%, #0045B0 100%);
    color: var(--white);
}

#topfooter h3,
#topfooter p,
#topfooter a,
#bottomfooter p,
#bottomfooter a {
    color: var(--white);
}

#topfooter a:hover,
#bottomfooter a:hover {
    opacity: 0.8;
}

#topfooter .social-list a {
    color: var(--white);
    font-size: 1.85rem;
}

#topfooter .social-list a:hover {
    opacity: 0.7;
}

/* --- Moved from visual.css --- */
@media (max-width: 900px) {
    .bottommenu .inner {
        background: transparent !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        width: 100% !important;
        height: auto !important;
        margin-top: 0 !important;
        padding: 0 15px !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        position: relative !important;
    }

    .logo {
        margin: 0 auto !important;
        width: auto !important;
        position: static !important;
        left: 0 !important;
        padding: 0 !important;
    }

    .logo img {
        width: 130px !important;
        display: block !important;
    }
}
/**** FONTS ****/
@font-face {
    font-family: 'Text';
    src: url(../font/dm-sans/DMSans-VariableFont_opsz,wght.ttf);
}

* {
    font-family: 'Text';
    line-height: 1.5;
}

/**** ROOT ****/
:root {
    --white: #FFFFFF;
    --grey: #F2F4F7;
    --blue: #1d73be;
    --blue-light: #2390e5;
    --yellow: #f5a623;
    --black: #1a1a1a;
    --text: #333333;
}