
/* ------------------------------------------------------------------------------------ 
    __________  _   _____________
   / ____/ __ \/ | / /_  __/ ___/
  / /_  / / / /  |/ / / /  \__ \ 
 / __/ / /_/ / /|  / / /  ___/ / 
/_/    \____/_/ |_/ /_/  /____/  
                                 
/* ------------------------------------------------------------------------------------ */

/* --- Conthrax --- */
@font-face { font-family: Conthrax; font-weight: 600; font-style: normal; font-display: swap; src: local("Conthrax SemiBold"), url("fonts/conthrax-SemiBold.woff2") format("woff2"), url("fonts/conthrax-SemiBold.woff") format("woff"); }

/* --- Unageo --- */
@font-face { font-family: Unageo; font-weight: normal; font-style: normal; font-display: swap; src: local("Unageo Regular"), url("fonts/Unageo-Regular.woff2") format("woff2"), url("fonts/Unageo-Regular.woff") format("woff"); }
@font-face { font-family: Unageo; font-weight: normal; font-style: italic; font-display: swap; src: local("Unageo Regular Italic"), url("fonts/Unageo-Regular-Italic.woff2") format("woff2"), url("fonts/Unageo-Regular-Italic.woff") format("woff"); }

@font-face { font-family: Unageo; font-weight: 300; font-style: normal; font-display: swap; src: local("Unageo Light"), url("fonts/Unageo-Light.woff2") format("woff2"), url("fonts/Unageo-Light.woff") format("woff"); }
@font-face { font-family: Unageo; font-weight: 300; font-style: italic; font-display: swap; src: local("Unageo Light Italic"), url("fonts/Unageo-Light-Italic.woff2") format("woff2"), url("fonts/Unageo-Light-Italic.woff") format("woff"); }

@font-face { font-family: Unageo; font-weight: 500; font-style: normal; font-display: swap; src: local("Unageo Medium"), url("fonts/Unageo-Medium.woff2") format("woff2"), url("fonts/Unageo-Medium.woff") format("woff"); }
@font-face { font-family: Unageo; font-weight: 500; font-style: italic; font-display: swap; src: local("Unageo Medium Italic"), url("fonts/Unageo-Medium-Italic.woff2") format("woff2"), url("fonts/Unageo-Medium-Italic.woff") format("woff"); }

@font-face { font-family: Unageo; font-weight: 600; font-style: normal; font-display: swap; src: local("Unageo SemiBold"), url("fonts/Unageo-SemiBold.woff2") format("woff2"), url("fonts/Unageo-SemiBold.woff") format("woff"); }
@font-face { font-family: Unageo; font-weight: 600; font-style: italic; font-display: swap; src: local("Unageo SemiBold Italic"), url("fonts/Unageo-SemiBold-Italic.woff2") format("woff2"), url("fonts/Unageo-SemiBold-Italic.woff") format("woff"); }

@font-face { font-family: Unageo; font-weight: bold; font-style: normal; font-display: swap; src: local("Unageo Bold"), url("fonts/Unageo-Bold.woff2") format("woff2"), url("fonts/Unageo-Bold.woff") format("woff"); }
@font-face { font-family: Unageo; font-weight: bold; font-style: italic; font-display: swap; src: local("Unageo Bold Italic"), url("fonts/Unageo-Bold-Italic.woff2") format("woff2"), url("fonts/Unageo-Bold-Italic.woff") format("woff"); }

@font-face { font-family: Unageo; font-weight: 800; font-style: normal; font-display: swap; src: local("Unageo ExtraBold"), url("fonts/Unageo-ExtraBold.woff2") format("woff2"), url("fonts/Unageo-ExtraBold.woff") format("woff"); }
@font-face { font-family: Unageo; font-weight: 800; font-style: italic; font-display: swap; src: local("Unageo ExtraBold Italic"), url("fonts/Unageo-ExtraBold-Italic.woff2") format("woff2"), url("fonts/Unageo-ExtraBold-Italic.woff") format("woff"); }

@font-face { font-family: Unageo; font-weight: 900; font-style: normal; font-display: swap; src: local("Unageo Black"), url("fonts/Unageo-Black.woff2") format("woff2"), url("fonts/Unageo-Black.woff") format("woff"); }
@font-face { font-family: Unageo; font-weight: 900; font-style: italic; font-display: swap; src: local("Unageo Black Italic"), url("fonts/Unageo-Black-Italic.woff2") format("woff2"), url("fonts/Unageo-Black-Italic.woff") format("woff"); }


/* ------------------------------------------------------------------------------------ 
      __________  __    ____  ____  _____
     / ____/ __ \/ /   / __ \/ __ \/ ___/
    / /   / / / / /   / / / / /_/ /\__ \ 
   / /___/ /_/ / /___/ /_/ / _, _/___/ / 
   \____/\____/_____/\____/_/ |_|/____/  
   
/* ------------------------------------------------------------------------------------ */

:root {
    /* Brand Colors */
    --infinite_tango: #FF3300;
    --infinite_gray_light: #E8EAEA;
    --infinite_gray_medium: #AFB0B4;
    --infinite_gray_dark: #333944;
	--infinite_gray_dark_rgb: 51, 57, 68; /* WICHTIG für den Verlauf */
    --infinite_gold: #B59759;
    --infinite_spaceblue: #023250;

    /* Unit: Design */
    --unit_design: #B41694;
    --unit_design_BG: #3B244D;

    /* Unit: Marketing */
    --unit_marketing: #540CCD;
    --unit_marketing_BG: #33077A;

    /* Unit: Digital */
    --unit_digital: #008DB7;
	--unit_digital_BG: #00789B;	

    /* Unit: Media */
    --unit_media: #66839F;
    --unit_media_BG: #4F6475;

    /* Unit: Druck */
    --unit_druck: #1ED27C;
    --unit_druck_BG: #1A8464;

    /* Standard */
    --c_error: #ff0000;
    --c_white: #ffffff;
}

/* Brand Utility Classes */
.color_tango { color: var(--infinite_tango) !important; }
.color_cb_tango { background-color: var(--infinite_tango) !important; }

.color_gray_light { color: var(--infinite_gray_light) !important; }
.color_cb_gray_light { background-color: var(--infinite_gray_light) !important; }

.color_gray_dark { color: var(--infinite_gray_dark) !important; }
.color_cb_gray_dark { background-color: var(--infinite_gray_dark) !important; }

.color_gold { color: var(--infinite_gold) !important; }
.color_cb_gold { background-color: var(--infinite_gold) !important; }

.color_spaceblue { color: var(--infinite_spaceblue) !important; }
.color_cb_spaceblue { background-color: var(--infinite_spaceblue) !important; }

/* Unit Utility Classes */
.color_u_design { color: var(--unit_design) !important; }
.color_cb_u_design { background-color: var(--unit_design_BG) !important; }

.color_u_marketing { color: var(--unit_marketing) !important; }
.color_cb_u_marketing { background-color: var(--unit_marketing_BG) !important; }

.color_u_digital { color: var(--unit_digital) !important; }
.color_cb_u_digital { background-color: var(--unit_digital_BG) !important; }

.color_u_media { color: var(--unit_media) !important; }
.color_cb_u_media { background-color: var(--unit_media_BG) !important; }

.color_u_druck { color: var(--unit_druck) !important; }
.color_cb_u_druck { background-color: var(--unit_druck_BG) !important; }

/* Standard Utility Classes */
.color_c_error { color: var(--c_error) !important; }
.color_cb_c_error { background-color: var(--c_error) !important; }

.color_c_white { color: var(--c_white) !important; }
.color_cb_c_white { background-color: var(--c_white) !important; }


/* ------------------------------------------------------------------------------------ 
    ______ _     ____  ____  ___    __ 
   / ____// /    / __ \/ __ )/   |  / / 
  / / __ / /    / / / / __  / /| | / /  
 / /_/ // /___ / /_/ / /_/ / ___ |/ /___
 \____//_____/ \____/_____/_/  |_/_____/
                                        
/* ------------------------------------------------------------------------------------ */

body {
    margin: 0;
    padding: 0;
    font-family: 'Unageo';
    font-weight: normal;
    font-size: 20px;
    line-height: 150%;
    color: white;
}

* {
    box-sizing: border-box;
}

a {
    text-decoration: underline;
    color: inherit; /* Verhindert das Standard-Browser-Blau */
    transition: text-decoration 0.3s ease;
}

a:hover {
    text-decoration: none;
}

.mobile-break {
  display: none;
}

.desktop-break {
  display: inline;
}


/* ------------------------------------------------------------------------------------ 
     _____  ____   ___    ______ ____ _   __ ______
    / ___/ / __ \ /   |  / ____//  _// | / // ____/
    \__ \ / /_/ // /| | / /     / / /  |/ // / __  
   ___/ // ____// ___ |/ /___ _/ / / /|  // /_/ /  
  /____//_/    /_/  |_|\____//___//_/ |_/ \____/   
                                                   
/* ------------------------------------------------------------------------------------ */

.spacing_5   { height: 5px;   display: block; width: 100%; }
.spacing_10  { height: 10px;  display: block; width: 100%; }
.spacing_15  { height: 15px;  display: block; width: 100%; }
.spacing_20  { height: 20px;  display: block; width: 100%; }
.spacing_25  { height: 25px;  display: block; width: 100%; }
.spacing_30  { height: 30px;  display: block; width: 100%; }
.spacing_35  { height: 35px;  display: block; width: 100%; }
.spacing_40  { height: 40px;  display: block; width: 100%; }
.spacing_45  { height: 45px;  display: block; width: 100%; }
.spacing_50  { height: 50px;  display: block; width: 100%; }
.spacing_60  { height: 100px;  display: block; width: 100%; }
.spacing_70  { height: 170px;  display: block; width: 100%; }
.spacing_80  { height: 180px;  display: block; width: 100%; }
.spacing_90  { height: 190px;  display: block; width: 100%; }
.spacing_100 { height: 150px; display: block; width: 100%; }
.spacing_200 { height: 200px; display: block; width: 100%; }


/* ------------------------------------------------------------------------------------ 
    __  ___________    ____  __    ____ _   __ ______ ___
   / / / / ____/   |  / __ \/ /   /  _/  | / // ____/ ___/
  / /_/ / __/ / /| | / / / / /    / / /  |/ // __/  \__ \   
 / __  / /___/ ___ |/ /_/ / /___ / / / /|  // /___ ___/ / 
/_/ |_/_____/_/  |_/_____/_____/___/_/  |_//_____//____/   
                                                               
/* ------------------------------------------------------------------------------------ */

h1 {
    font-family: 'Unageo';
    font-weight: 300;
    font-size: 24px;
    line-height: 130%;
    color: white;
    text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.65);
	margin-bottom: 15px; 
}

h2 {
    font-family: 'Unageo';
    font-weight: bold;
    font-size: 100px;
    line-height: 110%;
    color: white;
    text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.65);
    margin: 0;
    max-width: 950px;
    overflow-wrap: break-word;
    hyphens: auto;
}

/* Blur- und Glow-Animation während der Transformation (Dauer: 2s) */
.h2-glitch-active {
    animation: glitchBlur 2s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}

@keyframes glitchBlur {
    0% { 
        filter: blur(0px); 
        text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.65); 
    }
    10% { 
        filter: blur(8px); /* 20% stärker */
        text-shadow: 0px 0px 30px rgba(255, 51, 0, 0.8); 
    }
    75% { 
        filter: blur(3px); /* 20% stärker */
        text-shadow: 0px 0px 20px rgba(255, 51, 0, 0.4); 
    }
    100% { 
        filter: blur(0px); 
        text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.65); 
    }
}

.h2_subheadline {
    font-family: 'Unageo';
    font-weight: 600;
    font-size: 42px;
    line-height: 120%;
    color: white;
    text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.65);
    margin-top: 20px;
    margin-bottom: 15px;
    display: block;
}

.h2_description {
    font-family: 'Unageo';
    font-weight: 300;
    font-size: 28px;
    line-height: 130%;
    color: white;
    text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.65);
	margin-top: 15px;
    max-width: 1200px;
}

h3 {
    font-family: 'Unageo';
    font-weight: bold;
    font-size: 28px;
    line-height: 110%;
    color: white;
	margin-top: 0;
    margin-bottom: 28px;
	overflow-wrap: break-word;
	word-break: break-word;
	hyphens: auto;
	text-transform: uppercase;
}

h4 {
    font-family: 'Unageo';
    font-weight: 800;
    font-size: 44px;
    line-height: 110%;
    color: white;
	margin: 0;
}

.h4_line_wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    color: white;
    font-family: 'Unageo';
    text-transform: uppercase;
}

.h4_line_left {
    background: linear-gradient(to right, rgba(255,255,255,0), rgba(255,255,255,1));
    margin-right: 16px;
	flex-grow: 1;
    height: 2px;
	min-width: 30px;
}

.h4_line_right {
    background: linear-gradient(to left, rgba(255,255,255,0), rgba(255,255,255,1));
    margin-left: 16px;
	flex-grow: 1;
    height: 2px;
	min-width: 30px;
}

.h4_headlinebar {
    width: 400px;
    height: 2px;
    margin: 20px auto 60px auto; /* Zentriert den Balken horizontal */
    /* Verlauf von Transparent -> Weiß -> Transparent */
    background: linear-gradient(to right, 
        rgba(255, 255, 255, 0) 0%, 
        rgba(255, 255, 255, 1) 50%, 
        rgba(255, 255, 255, 0) 100%);
}

h5 {
    font-family: 'Unageo';
    font-weight: normal;
    font-size: 44px; 
    color: var(--infinite_gray_dark);
    line-height: 120%; 
    letter-spacing: 0.16em; 
    margin: 0;
    text-align: center;
}

.h5_headlinebar {
    width: 400px;
    height: 2px;
    margin: 20px auto 40px auto; /* Zentriert den Balken horizontal */
    /* Verlauf nutzt die RGB-Variable für echte Transparenz */
    background: linear-gradient(to right, 
        rgba(var(--infinite_gray_dark_rgb), 0) 0%, 
        rgba(var(--infinite_gray_dark_rgb), 1) 50%, 
        rgba(var(--infinite_gray_dark_rgb), 0) 100%);
}

h6 {
    font-family: 'Unageo';
    font-weight: bold;
    font-size: 40px;
    line-height: 110%;
    letter-spacing: 0.2em; /* 120% Laufweite */
    color: white;
    margin-top: 50px;
    margin-bottom: 24px;
    text-align: left;
    text-transform: uppercase;
}

.quotation {
    font-family: 'Unageo';
    font-weight: 300;
    font-size: 44px;
    line-height: 110%;
    color: white;
    padding-top: 250px;
    padding-bottom: 250px;
    text-align: left;
	letter-spacing: 0.08em;
}

.content_headline {
    font-family: 'Unageo';
    font-weight: bold;
    font-size: 22px;
    padding-top: 20px;
    padding-bottom: 12px;
}


/* ------------------------------------------------------------------------------------ 
   ______ ____  ____   ______ ____   ___     __  ___ ______ 
  /_  __// __ \/ __ \ / ____// __ \ /   |   /  |/  // ____/ 
   / /  / / / / /_/ // /_   / /_/ // /| |  / /|_/ // __/    
  / /  / /_/ / ____// __/  / _, _// ___ | / /  / // /___    
 /_/   \____/_/    /_/    /_/ |_|/_/  |_|/_/  /_//_____/    
                                                            
/* ------------------------------------------------------------------------------------ */

#top_frame {
    width: 100%;
    height: 1000px;
    position: relative;
    z-index: 10;
    pointer-events: none;
    background-color: transparent; 
    background-size: cover !important;
    background-position: 50% 0px;
    background-repeat: no-repeat;
    overflow: hidden;
    will-change: background-position;
}

#top_frame .main-wrapper {
    position: relative;
    height: 100%;
}

#top_frame .main-wrapper, 
#top_frame .top_frame_container,
#top_frame .top_frame_cta_wrapper {
    pointer-events: auto !important;
}

/* Der Haupt-Container für H1, H2 etc */
.top_frame_container {
    display: flex;
    flex-direction: column;
    justify-content: center; /* Vertikale Zentrierung im 1000px Frame */
    height: 1000px;
    width: 100%;
    pointer-events: none;
    padding-top: 100px;
    opacity: 0; 
    transform: translateY(20px); /* Startet 20px tiefer */
    animation: heroFadeIn 1.2s ease-out forwards; /* 'forwards' hält den Endzustand */
    animation-delay: 0.4s; /* Wartet kurz, bis das Hintergrundbild geladen ist */
}

.top_frame_image {
    position: absolute;
    bottom: 0;
    right: -195px;
    width: 880px;
    height: 790px;
    z-index: -1; 
    pointer-events: none;
    user-select: none;
}

#main_logo {
    position: fixed;
    top: 50px;
    right: calc((100% - 1440px) / 2 + 30px);
    width: 259px;
    height: auto;
    z-index: 100;
    transform-origin: right top;
}

.top_frame_menubar {
    position: fixed;
    top: 85px;
    display: flex;
	align-items: flex-start;
    gap: 32px;
    z-index: 110;
}

.top_frame_menubar a {
    font-family: 'Unageo', sans-serif;
    font-weight: 500; 
    font-size: 19px;
    color: #FFFFFF;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
    transition: opacity 0.3s ease; 
    transition: color 0.3s ease-in-out; 
	text-decoration: none !important;
    border-bottom: 2px solid transparent !important;
    transition: all 0.3s ease-in-out;
}

.top_frame_menubar a:hover {
	border-bottom: 2px solid #FFFFFF !important;
}

.top_frame_menubar a.active {
    border-bottom: 2px solid #FFFFFF !important;
    color: #FFFFFF !important;
    opacity: 1 !important;
    display: inline-block;
}

#menu_bar_background {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100px;
    background-color: var(--infinite_tango);
    opacity: 0;
    z-index: 50;
    pointer-events: none; 
	transition: background-color 0.3s ease;
}

/* Container für die Ausrichtung */
.menu_item_with_sub {
    position: relative;    
    display: flex;
    align-items: center;
    height: 23px;
}

/* Gemeinsame Stile für alle Hauptmenü-Elemente */
.menu_item_with_sub > a, 
.top_frame_menubar > a {
    display: flex;
    align-items: center;
    height: 23px;
    vertical-align: top;
    line-height: 100%;
}

/* Grundzustand Submenü (unsichtbar) */
.topframe_menubar_sub {
    position: absolute;
    top: 23px; 
    left: 0;  
    display: flex;
    flex-direction: column;
    gap: 2px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    padding-top: 15px; 
    z-index: 1000;
}

.menu_item_with_sub:hover .topframe_menubar_sub {
    opacity: 1;
    visibility: visible;
}

/* Die einzelnen Buttons im Submenü */
.topframe_menubar_sub a {
    background-color: var(--infinite_tango) !important;
    color: #ffffff !important;
    height: 32px;
    padding: 0 10px;
    white-space: nowrap; 
    display: flex;
    align-items: center; 
    text-decoration: none;
	font-family: 'Unageo', sans-serif; 
    font-weight: 500; 
    font-size: 17px;
    line-height: 100%;
    width: fit-content; 
    min-width: 100%;
}

.topframe_menubar_sub a:hover {
    background-color: #ffffff !important;
    color: var(--infinite_tango) !important;
}

@keyframes heroFadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* ------------------------------------------------------------------------------------ 
   ______ ____   _   __ ______ ______ _   __ ______ ______ ____   ___     __  ___ ______ 
  / ____// __ \ / | / //_  __// ____// | / //_  __// ____// __ \ /   |   /  |/  // ____/ 
 / /    / / / //  |/ /  / /  / __/  /  |/ /  / /  / __/  / /_/ // /| |  / /|_/ // __/    
/ /___ / /_/ // /|  /  / /  / /___ / /|  /  / /  / /    / _, _// ___ | / /  / // /___    
\____/ \____//_/ |_/  /_/  /_____//_/ |_/  /_/  /_/    /_/ |_|/_/  |_|/_/  |_/ /_____/    
                                                                                        
/* ------------------------------------------------------------------------------------ */

#content_frame {
    width: 100%;
    position: relative;
    background-color: #fff; 
    margin-top: 0; 
    z-index: 5;
}


/* ------------------------------------------------------------------------------------ 
   _____  ____   ______ ______ ____ ___     __      ______ ____   ___   __  ___ ______ 
  / ___/ / __ \ / ____// ____//  _//   |   / /     / ____// __ \ /   | /  |/  // ____/ 
  \__ \ / /_/ // __/  / /     / / / /| |  / /     / /_   / /_/ // /| |/ /|_/ // __/    
 ___/ // ____// /___ / /___ _/ / / ___ | / /___  / __/  / _, _// ___ // /  / // /___    
/____//_/    /_____/ \____//___//_/  |_|/_____/ /_/    /_/ |_|/_/  |_|/_/  |_//_____/   

/* ------------------------------------------------------------------------------------ */

.special_frame {
    width: 100%;
	margin-top: 0 !important;	
}

.special_box {
  padding: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  opacity: 0.8;
  transition: transform 0.3s ease, box-shadow 0.3s ease, opacity 0.3s ease;
}

.special_box:hover {
  opacity: 1;
  transform: scale(1.035);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.6);
}

.special_box img {
    width: 200px;
    height: 136px;
    object-fit: contain;
    margin-bottom: 0px;
}

.flex_box_4col_headline {
    font-family: 'Unageo', sans-serif;
    font-weight: bold;
    font-size: 26px;
    line-height: 110%;
    color: #FFFFFF;
    margin-bottom: 15px;
    text-align: center;
}

.flex_box_4col_text {
    font-size: 18px;
    line-height: 130%;
    color: #FFFFFF;
    text-align: center;
}

/* Kontakt-Boxen auf der Seite Über uns */
.contact_box {
    position: relative;
    overflow: hidden;
    z-index: 1;
    display: flex;
    flex-direction: column;
    padding: 20px;
    min-height: 360px;
    text-decoration: none; /* Wichtig für das <a> Tag */
    transition: transform 0.3s ease;
}

/* Das Hintergrundbild mit vertikaler Zentrierung */
.contact_box_image {
    position: absolute;
    right: -10px;       
    top: 50%;           
    transform: translateY(-50%);    
    width: 324px;    
    height: auto;
    object-fit: contain;
    z-index: -1;
    pointer-events: none;
    transition: all 0.4s ease;
}

/* Die Mailadresse oben links */
.contact_box_mail {
    position: absolute;
    top: 20px;
    left: 20px;
    font-family: 'Unageo';
    font-weight: normal;
    font-size: 15px;
    line-height: 100%;
    color: white;
    letter-spacing: normal;
    text-transform: none;
    text-decoration: none;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.4s ease, transform 0.4s ease;
    transform: translateY(-5px);
    z-index: 10;
}

@media (max-width: 1250px) {
    /* Die Mailadresse komplett ausblenden und Hover-Effekte verhindern */
    .contact_box_mail {
        display: none !important;
    }
}

/* Footer-Bereich für Name und Unit */
.contact_box_textblock {
    margin-top: auto; 
    text-align: left;
}

.contact_box_name {
    font-family: 'Unageo';
    font-weight: 300;
    font-size: 40px;
    line-height: 100%;
    color: white;
    letter-spacing: 0.12em;
    padding-bottom: 12px;
    text-transform: none; 
}

.contact_box_unit {
    font-family: 'Unageo';
    font-weight: bold;
    font-size: 16px;
    line-height: 100%;
    color: white;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

/* Hover-Effekte */
.contact_box:hover .contact_box_image {
    right: 5px; 
    transform: translateY(-50%) scale(1.05);
}

.contact_box:hover .contact_box_mail {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.contact_box_mail:hover {
    text-decoration: underline;
}

/* Kontakt-Boxen auf der Seite Anfrage */

.inquiry_box {
    display: flex;
    flex-direction: column;
    padding: 25px 28px;
    height: 100%;
	min-height: 240px;
    flex-grow: 1; 
    width: 100%;
    box-sizing: border-box;
}

/* Headlines */
.inquiry_box_headline {
    font-family: 'Unageo';
    font-weight: 300;
    font-size: 32px;
    line-height: 100%;
    letter-spacing: 0.08em;
    padding-bottom: 25px;
    text-transform: none;
}

/* Kontakt-Texte (Bold/Medium) */
.inquiry_box_contact {
    font-family: 'Unageo';
    font-weight: 800;
    font-size: 24px;
    line-height: 110%;
    letter-spacing: normal;
    text-transform: none;
}

.inquiry_box_contact.fw_300 {
    font-weight: 300;
}

.inquiry_box_contact a {
    white-space: nowrap;
    color: #ffffff;
    text-decoration: none;
}

/* Hover-Verhalten für alle anderen Links (Call/Text) */
.inquiry_box_contact a:hover {
    text-decoration: none;
}

.inquiry_box_text {
    font-family: 'Unageo';
    font-weight: 600;
    font-size: 18px;
    line-height: 120%;
}

.inquiry_box a {
    color: #ffffff;
    text-decoration: none;
    transition: text-decoration 0.3s ease;
}

/* Spezielles Link-Styling für Box 3 (Visit us) */
.inquiry_box_text a {
    text-decoration: underline;
}

.inquiry_box_text a:hover {
    text-decoration: none;
}

/* Mailadresse verschlüsseln und sichtbar machen */
.dynamic-mail {
    text-decoration: none !important;
    border-bottom: none !important; /* Falls irgendwo ein Border als Linie genutzt wird */
    color: inherit !important;
}

.dynamic-mail:hover, 
.dynamic-mail:hover .mail_legal {
    color: var(--infinite_tango) !important;
    text-decoration: none !important;
    border: none !important;
}



/* --- FAQ BEREICH (ONE-PAGER & LANDINGPAGES) --- */

.faq_frame {
    background-color: var(--infinite_spaceblue);
    width: 100%;
    position: relative;
}

/* Erzwingt, dass die beiden Spalten oben bündig anfangen */
.faq_grid {
    align-items: flex-start; 
}

.faq_item {
    background-color: #ffffff;
    padding: 35px;
    margin-bottom: 30px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.05);
    border-left: 4px solid var(--unit_digital); /* Kleiner Farb-Akzent passend zur Rubrik */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.faq_item:hover {
    box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.25);
}

.faq_question {
    font-family: 'Unageo', sans-serif;
    font-weight: bold;
    font-size: 26px;
    line-height: 120%;
    color: var(--infinite_spaceblue);
    margin-bottom: 15px;
}

.faq_answer {
    font-family: 'Unageo', sans-serif;
    font-weight: 300;
    font-size: 19px;
    line-height: 140%;
    color: var(--infinite_gray_dark);
}

/* ------------------------------------------------------------------------------------ 
   __________  _   _______________   ________
  / ____/ __ \/ | / /_  __/ ____/ | / /_  __/
 / /   / / / /  |/ / / / / __/ /  |/ / / /   
/ /___/ /_/ / /|  / / / / /___/ /|  / / /    
\____/\____/_/ |_/ /_/ /_____/_/ |_/ /_/     
   
/* ------------------------------------------------------------------------------------ */

/* ============== LAYOUT WRAPPER ============== */
.main-wrapper {
    width: 100%;
	max-width: 1440px;
    margin: 0 auto;
    padding: 0 30px;
    box-sizing: border-box;
}

/* ============== FLEX BOX BASIS STYLES ============== */

.flex_box_1col { display: flex; width: 100%; }

.flex_box_2col, .flex_box_3col, .flex_box_4col, .flex_box_5col { 
    display: flex; 
    flex-wrap: wrap; 
    justify-content: flex-start; 
    align-items: stretch; /* Dehnt die Spalten-Container auf gleiche Höhe */
}

.flex_box_2col { gap: 44px; }
.flex_box_2col > * { flex: 0 0 calc((100% - 44px) / 2); }

.flex_box_3col { gap: 45px; }
.flex_box_3col > * { flex: 0 0 calc((100% - (2 * 45px)) / 3); }

.flex_box_4col { gap: 28px; }
.flex_box_4col > * { flex: 0 0 calc((100% - (3 * 28px)) / 4); }

.flex_box_5col { gap: 20px; }
.flex_box_5col > * { flex: 0 0 calc((100% - (4 * 20px)) / 5); }

/* --- DER FIX FÜR INQUIRY BOXEN & COUNTER --- */

/* Wir machen die Spalten-Container NUR DANN zu Flex-Containern, 
   wenn sie eine inquiry_box enthalten. So bleibt der Counter (und alles andere) verschont. */
.flex_box_2col > div:has(.inquiry_box),
.flex_box_3col > div:has(.inquiry_box),
.flex_box_4col > div:has(.inquiry_box) {
    display: flex;
    flex-direction: column;
}

/* --- FLEX BOX 2-COL UNIT BUTTONS --- */

.flex_box_2col_button {
    text-decoration: none;
    background-color: var(--infinite_gray_light);
    padding: 30px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition: background-color 0.4s ease, box-shadow 0.4s ease;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
}

.flex_box_2col_button:hover {
    background-color: var(--unit_design) !important;
    box-shadow: 0 0 30px rgba(180, 22, 148, 0.4); /* Schimmer in var(--unit_design) */
}

.flex_box_2col_button_headline_container {
    height: 200px;
    width: 100%;
    display: flex;
	flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 0;
}

.flex_box_2col_button_headline {
    font-family: 'Unageo';
    font-weight: 300;
    font-size: 40px;
    line-height: 110%;
    letter-spacing: 0.12em; 
    color: var(--unit_design);
    margin: 0;
    transition: color 0.4s ease;
    text-transform: uppercase;
}

.flex_box_2col_info_text {
    font-size: 20px;
    font-weight: bold;
    line-height: 120%;
    color: var(--infinite_gray_dark) !important;
    margin: 30px 0 0 0;
    transition: color 0.4s ease;
}

.flex_box_2col_button_text {
    font-size: 20px;
    line-height: 130%;
    color: var(--infinite_gray_dark);
    margin: 0;
    transition: color 0.4s ease;
}

.flex_box_2col_button:hover .flex_box_2col_button_headline,
.flex_box_2col_button:hover .flex_box_2col_info_text,
.flex_box_2col_button:hover .flex_box_2col_button_text {
    color: var(--c_white) !important;
}

.flex_box_2col_image {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 4px;
}
.flex_box_2col_image:hover {
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.4);
}

.flex_box_2col_detailtext {
    font-size: 20px;
}

/* FLEX BOX 5 COL DRUCK KACHELN */

.flex_box_5col_item {
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: white;
    padding: 12px 12px 20px 12px;
    text-decoration: none;
    transition: transform 0.3s ease, background-color 0.3s ease;
    box-sizing: border-box;
}

.flex_box_5col_item img {
    height: auto;
	max-height: 196px;
    width: 100%;
    object-fit: contain;
    margin-bottom: 15px;
}

.flex_box_5col_headline {
    font-family: 'Unageo';
    font-weight: bold;
    font-size: 20px;
    line-height: 100%;
    color: var(--infinite_gray_dark);
    margin: 0;
    text-align: center;
    text-transform: uppercase;
    transition: color 0.3s ease;
	letter-spacing: normal !important;
}

.flex_box_5col_item:hover {
    transform: scale(0.95);
    background-color: var(--unit_druck);
}

.flex_box_5col_item:hover .flex_box_5col_headline {
    color: white;
}

/* ============== CTA Button in der top_frame ============== */

/* ============== CTA Wrapper Anpassung ============== */
.top_frame_cta_wrapper {
    margin-top: 15px !important;
    position: relative;
    z-index: 20;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: center;
}

/* ============== Primary Button (Bestehend) ============== */
a.top_frame_cta_button {
    display: block !important;
    width: 400px !important;
    height: 56px !important;
    perspective: 1000px !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

a.top_frame_cta_button:hover .cta_inner {
    transform: rotateX(180deg) !important;
}

.cta_inner {
    position: relative;
    width: 100%;
    height: 100%;
    transition: transform 0.4s ease-in-out;
    transform-style: preserve-3d;
    pointer-events: none; 
}

.cta_front, .cta_back {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Unageo';
    font-weight: bold;
    font-size: 24px;
    color: white;
    
    /* Der neue Idle-Effekt: Läuft permanent auf beiden Flächen im Hintergrund */
    animation: tangoPulse 3s infinite ease-in-out;
    transition: box-shadow 0.3s ease;
}

.cta_front {
    background-color: var(--infinite_tango) !important;
    z-index: 2;
    transform: rotateX(0deg); 
}

.cta_back {
    /* Ein etwas dunkleres Tango-Rot für die Rückseite beim Drehen */
    background-color: #A82200 !important;
    transform: rotateX(180deg); 
    z-index: 1;
}

/* ============== Secondary Button (Neu) ============== */
a.top_frame_secondary_button {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 400px !important;
    height: 56px !important;
    text-decoration: none !important;
    cursor: pointer !important;
    border: 2px solid #FFFFFF;
    background-color: transparent;
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
    transition: background-color 0.4s ease, border-color 0.4s ease;
}

.top_frame_secondary_button .btn-text {
    font-family: 'Unageo';
    font-weight: bold;
    font-size: 24px;
    color: #FFFFFF;
    transition: transform 0.4s ease;
    display: inline-block;
}

.top_frame_secondary_button .btn-arrows {
    position: absolute;
    top: -100px; /* Startposition außerhalb des Buttons wie bei der Landingpage */
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    gap: 2px; /* Exakter vertikaler Abstand der Landingpage */
    transition: top 0.4s ease, transform 0.4s ease;
    color: #000000; /* Schwarze Pfeile */
}

/* Hover-Effekte für den Secondary Button */
a.top_frame_secondary_button:hover {
    background-color: #39FF14 !important;
    border-color: #39FF14 !important;
}

a.top_frame_secondary_button:hover .btn-text {
    transform: translateY(200%);
}

a.top_frame_secondary_button:hover .btn-arrows {
    top: 50%;
    transform: translate(-50%, -50%);
}

/* ==========================================================================
   NEUE PULS-ANIMATION (Basierend auf #FF3300)
   ========================================================================== */
@keyframes tangoPulse {
    0% {
        box-shadow: 0 0 0 0 rgba(255, 51, 0, 0.5);
    }
    70% {
        box-shadow: 0 0 0 15px rgba(255, 51, 0, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(255, 51, 0, 0);
    }
}

/* ============== CTA Button in der content frame ============== */

.content_frame_cta_button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 80px;
    margin-top: 44px;
    padding: 15px 25px;
    box-sizing: border-box;
    background-color: var(--infinite_tango);
    text-decoration: none;
    border-radius: 0;
    transition: box-shadow 0.3s ease;
    overflow: hidden; 
}

.content_frame_cta_button span {
    color: white;
    font-weight: bold;
    font-size: 32px;
    line-height: 110%;
    text-align: center;
    display: block;
    transition: transform 0.3s ease;
    will-change: transform;
}

.content_frame_cta_button:hover {
    box-shadow: 0 0 20px 5px var(--infinite_tango);
}

.content_frame_cta_button:hover span {
    transform: scale(0.97);
}

/* ============== CTA Button in der content frame ============== */

.content_inner_cta_button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 50px;
    padding: 15px 25px;
    box-sizing: border-box;
    background-color: var(--infinite_tango);
    text-decoration: none;
    transition: box-shadow 0.3s ease;
    overflow: hidden; 
}

.content_inner_cta_button span {
    color: white;
    font-weight: bold;
    font-size: 20px;
    line-height: 110%;
    text-align: center;
    display: block;
    transition: transform 0.3s ease;
    will-change: transform;
}

.content_inner_cta_button:hover {
    box-shadow: 0 0 10px 0px rgba(255, 255, 255, 0.5);
}

.content_inner_cta_button:hover span {
    transform: scale(0.97);
}

/* Die VIDEO LIGHTBOX */
.motion_container {
    position: relative;
    cursor: pointer;
    width: 100%;
    line-height: 0;
    background-color: #000;
    transition: box-shadow 0.4s ease;
    overflow: visible; 
}

.motion_play_button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80px;
    height: 80px;
    background: rgba(180, 22, 148, 0.8); /* Unit Media Violett */
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    transition: background 0.4s ease, transform 0.4s ease, opacity 0.3s ease;
    pointer-events: none;
}

.motion_play_button svg {
    width: 30px;
    height: 30px;
    margin-left: 5px;
}

/* Hover-Effekte: Nur Schatten und Play-Button Farbe/Größe */
.motion_container:hover {
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.4);
}

.motion_container:hover .motion_play_button {
    background: rgba(180, 22, 148, 1);
    transform: translate(-50%, -50%) scale(1.1); /* Nur der Button growt leicht */
}

.flex_box_2col_video {
    width: 100%;
    height: auto;
    display: block;
    /* Kein transform: scale mehr hier */
    border-radius: 4px;
}

/* Status: Video aktiv (Play-Button & Schatten ausblenden) */
.motion_container.is-active .motion_play_button {
    opacity: 0 !important;
    visibility: hidden !important;
}

.motion_container.is-active {
    box-shadow: none !important;
}

/* --- LIGHTBOX OVERLAY --- */
.motion_lightbox_overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(15, 15, 15, 0.98);
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.motion_lightbox_content {
    position: relative;
    width: 90%;
    max-width: 1280px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.motion_lightbox_video {
    width: 100%;
    height: auto;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
    background: #000;
}

.motion_lightbox_close {
    position: absolute;
    top: -60px;
    right: 0;
    color: #ffffff;
    font-size: 50px;
    font-weight: 300;
    cursor: pointer;
    line-height: 1;
    transition: transform 0.3s ease;
}

.motion_lightbox_close:hover {
    transform: scale(1.2);
}

.motion_lightbox_caption {
    color: #ffffff;
    font-family: 'Unageo';
    font-weight: 300;
    font-size: 18px;
    text-align: center;
    padding-top: 25px;
    line-height: 140%;
    letter-spacing: 0.03em;
}

/* Mobile Anpassung */
@media (max-width: 800px) {
    .motion_lightbox_caption {
        font-size: 14px;
        padding: 15px 10px 0 10px;
    }
}

/* ----------------------------------------------------------------------------- 
   ______ ___    _____  ______ ______ ____   ___     __  ___ ______ 
  / ____//   |  / ___/ / ____// ____// __ \ /   |   /  |/  // ____/ 
 / /    / /| |  \__ \ / __/  / /_   / /_/ // /| |  / /|_/ // __/    
/ /___ / ___ | ___/ // /___ / __/  / _, _// ___ | / /  / // /___    
\____//_/  |_|/____//_____//_/    /_/ |_|/_/  |_|/_/  |_//_____/    
                                                                    
----------------------------------------------------------------------------- */

.case_frame {
    width: 100%;
    position: relative;
    overflow: hidden;
    background-color: var(--unit_design);
}

.case_frame_h4_wrapper h4 {
    margin: 0;
    text-align: center;
    color: #ffffff;
}

.case_frame_h4_wrapper h4 span {
    font-weight: 300;
}

.case_frame_h4_wrapper .h4_line_left,
.case_frame_h4_wrapper .h4_line_right {
    background-color: rgba(255, 255, 255, 0.4);
}

.case_card {
    display: flex;
    flex-direction: column;
    background-color: #ffffff;
    text-decoration: none;
    border-radius: 4px;
    overflow: hidden;
    transition: box-shadow 0.5s ease;
    /* Da sich die Flexbox stretcht, wird die Karte immer gleich hoch */
    height: 100%; 
}

.case_card:hover {
    box-shadow: 0 0px 14px rgba(0, 0, 0, 0.35);
}

.case_card_image_wrapper {
    width: 100%;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    position: relative;
}

.case_card_image_wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.case_frame .flex_box_3col img {
    max-width: 100% !important;
  }

/* Der smoothe Zoom in das Bild beim Hover */
.case_card:hover .case_card_image_wrapper img {
    transform: scale(1.06);
}

.case_card_content {
    padding: 35px 30px;
    display: flex;
    flex-direction: column;
    flex-grow: 1; /* Schiebt den Inhalt in der Flexbox auf die volle Höhe */
}

.case_card_tag {
    font-family: 'Conthrax', sans-serif;
    font-size: 15px;
    letter-spacing: 0.1em;
	line-height: 1.3;
    text-transform: uppercase;
    color: var(--unit_design);
    margin-bottom: 12px;
}

.case_card_title {
    font-family: 'Unageo', sans-serif;
    font-weight: bold;
    font-size: 26px;
    line-height: 120%;
    color: var(--infinite_spaceblue);
    margin: 0 0 15px 0;
}

.case_card_excerpt {
    font-family: 'Unageo', sans-serif;
    font-weight: 300;
    font-size: 19px;
    line-height: 140%;
    color: var(--infinite_gray_dark);
    margin: 0;
}

/* --- THE REVEAL MAGIC --- */

.case_card_action_wrapper {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    margin-top: auto; /* Zwingt den Container immer ans untere Ende der Karte */
}

.case_card:hover .case_card_action_wrapper {
    grid-template-rows: 1fr;
}

.case_card_action {
    overflow: hidden;
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--unit_design);
    font-family: 'Conthrax', sans-serif;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    opacity: 0;
    transform: translateY(15px);
    transition: opacity 0.4s ease 0.1s, transform 0.4s ease 0.1s, padding 0.5s ease;
    padding-top: 0;
}

.case_card:hover .case_card_action {
    opacity: 1;
    transform: translateY(0);
    padding-top: 25px; /* Schafft beim Ausfahren den nötigen Abstand nach oben */
}


/* ------------------------------------------------------------------------------------ 
    __________  ____  ________________ 
   / ____/ __ \/ __ \/_  __/ ____/ __ \
  / /_  / / / / / / / / / / __/ / /_/ /
 / __/ / /_/ / /_/ / / / / /___/ _, _/ 
/_/    \____/\____/ /_/ /_____/_/ |_|  

/* ------------------------------------------------------------------------------------ */

#footer_frame {
    min-height: 400px;
    width: 100%;
    background-image: url('graphics/infinite-footer-bg.webp');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding: 60px 0; 
    color: #FFFFFF;
	font-family: 'Unageo', sans-serif;
    font-weight: normal;
    font-size: 17px;
    line-height: 140%;
}

.footer_main_container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.footer_headline {
    font-family: 'Unageo', sans-serif;
    font-weight: bold;
    font-size: 19px;
    margin: 0 0 10px 0;
    color: #FFFFFF;
	letter-spacing: normal !important;
}

.footer_textblock_6col {
    width: 30%; /* 3 Spalten Layout */
    margin-bottom: 50px;
    box-sizing: border-box;
	letter-spacing: normal !important;
}

.footer_textblock_6col a {
    display: block;
    color: #FFFFFF;
    text-decoration: none;
    margin-bottom: 2px;
}

.footer_textblock_6col a:hover {
    text-decoration: underline;
}

.footer_textblock_6col a:visited {
    color: #FFFFFF;
}

/* Spezial-Abstände für Textzeilen ohne Link */
.footer_info_line {
    margin-bottom: 2px;
}

.footer_spacer {
    height: 16px;
}


/* ------------------------------------------------------------------------------------ 
   ______ ____  ____  __ __  ____ ______ ____   ___    ____ 
  / ____// __ \/ __ \/ //_/ /  _// ____// __ ) /   |  / __ \
 / /    / / / / / / / ,<    / / / __/  / __  |/ /| | / /_/ /
/ /___ / /_/ / /_/ / /| | _/ / / /___ / /_/ // ___ |/ _, _/ 
\____/ \____/\____/_/ |_|/___//_____//_____//_/  |_/_/ |_|  

/* ------------------------------------------------------------------------------------ */

#cookie_box {
    display: none; /* Wird per JS eingeblendet */
    position: fixed;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
	transition: opacity 0.3s ease-in-out;
    width: calc(100% - 40px);
    max-width: 760px;
    background-color: var(--infinite_gray_light);
    padding: 20px;
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.35);
    z-index: 2000;
    box-sizing: border-box;
    border-radius: 4px;
}

#cookie_box_icon {
    float: right;
    width: 74px;
    height: 84px;
    margin-left: 20px;
}

#cookie_box_headline {
    font-family: 'Unageo';
    font-weight: 300;
    font-size: 22px;
    line-height: 100%;
    color: var(--infinite_gray_dark);
    margin-bottom: 8px;
}

#cookie_box_headline strong {
    font-weight: bold;
}

#cookie_box_text {
    font-family: 'Unageo';
    font-weight: 300;
    font-size: 16px;
    line-height: 1.1;
    color: var(--infinite_gray_dark);
    margin-bottom: 16px;
}

#cookie_box_text strong {
    font-weight: bold;
}

.cookie_box_button_container {
    display: flex;
    gap: 10px;
}

.cookie_box_button {
    flex: 1;
    height: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'Unageo';
    font-weight: bold;
    font-size: 17px;
    line-height: 36px;
    color: #FFFFFF;
    cursor: pointer;
    transition: opacity 0.3s ease;
    border-radius: 4px;
}

.cookie_box_button:hover {
    opacity: 0.6;
}

#cookie_reject {
    background-color: var(--infinite_gray_medium);
}

#cookie_accept {
    background-color: var(--infinite_tango);
}

@media screen and (max-width: 600px) {
	#cookie_box {
    bottom: 20px;
    padding: 14px;
	}
    .cookie_box_button_container {
    flex-direction: column;
    }
    #cookie_box_headline {
    font-size: 15px;
    line-height: 100%;
    color: var(--infinite_gray_dark);
    margin-bottom: 6px;
	}
	#cookie_box_icon {
        display: none; 
    }
	#cookie_box_text {
    font-size: 12px;
    margin-bottom: 14px;
	}
	.cookie_box_button {
    height: 28px;
    font-size: 13px;
    line-height: 28px;
	}
	.cookie_box_button_container {
    gap: 6px;
	}
}

.logo_slider_container
{
    align-self: start;
}

.grecaptcha-badge { 
    visibility: hidden; 
}