/* css *//* css *//* Korrigierte @font-face: führende Slash, mehrere Formate, gleiche font-family-Namen */@font-face {    font-family: "neue-haas-unica";    src: url(/fonts/NeueHaasUnica-Medium.woff2) format("woff2"),    url(/fonts/NeueHaasUnica-Medium.woff) format("woff"),    url(/fonts/NeueHaasUnica-Medium.ttf) format("truetype");    font-weight: 400;    font-style: normal;    font-display: swap;}@font-face {    font-family: "neue-haas-unica-light";    src: url(/fonts/NeueHaasUnica-Light.woff2) format("woff2"),    url(/fonts/NeueHaasUnica-Light.woff) format("woff"),    url(/fonts/NeueHaasUnica-Light.ttf) format("truetype");    font-weight: 300;    font-style: normal;    font-display: swap;}@font-face {    font-family: "bodoni-urw-regular";    src: url(/fonts/bodoni-urw-regular.woff2) format("woff2"),    url(/fonts/bodoni-urw-regular.woff) format("woff");    font-weight: 300;    font-style: normal;    font-display: swap;}@font-face {    font-family: "IvyOra Display";    src: local("IvyOra Display Light Italic"), local("IvyOra-Display-Light-Italic"),    url(/fonts/IvyOraDisplay-LightItalic.woff2) format("woff2"),    url(/fonts/IvyOraDisplay-LightItalic.woff) format("woff"),    url(/fonts/IvyOraDisplay-LightItalic.ttf) format("truetype");    font-weight: 300;    font-style: italic;    font-display: swap;}/* Korrigierter Einsatz: h2 verwendet jetzt denselben font-family-Namen wie @font-face */h2 {    font-size: 4.5rem;    font-family: var(--headline-italic-font), serif; /* = "IvyOra Display" */    line-height: 1.15;    font-weight: 300;    color: var(--scharff-blue);}:root {    --header-height: 6rem;    --scharff-blue: hsl(231, 99%, 12%);    --scharff-jade: hsl(142, 17%, 75%);    --scharff-green: hsl(76, 80%, 65%);    --body-color: hsl(220, 100%, 99%);    --footer-color: hsl(233, 100%, 98%);    --light-blue: rgb(142, 178, 223);    --orange-color: #d86406;    --green-color: #71b84c;    --beige-color: #fffbf9;    --brown-color: #5a3c07;    --gold-color: #d4af37;    --sans-serif-font-family-bold: 'neue-haas-unica', sans-serif;    --sans-serif-font-family: 'neue-haas-unica-light', sans-serif;    --headline-font: "bodoni-urw-regular", serif;    --headline-italic-font: "IvyOra Display", serif;    --animate-duration: 1000ms;}/* Optional: verhindert iOS-Faux-Bold/-Italic */html {    font-synthesis-weight: none;    font-synthesis-style: none;}* {    margin: 0;    padding: 0;    box-sizing: border-box;    scroll-behavior: smooth;}svg {    width: 24px;    height: 24px;}html {    scroll-behavior: smooth;}body {    width: 100vw;    font-size: 16px;    overflow-x: hidden;    word-wrap: break-word;    overflow-wrap: break-word;    -webkit-hyphens: none;    -moz-hyphens: none;    hyphens: none;    background-color: var(--body-color);}/* H E A D E R */header {    position: fixed;    top: 0;    left: 0;    background: var(--body-color);    width: 100%;    z-index: 25;}nav {    height: calc(var(--header-height) + 1rem);    display: flex;    justify-content: space-between;}.nav-container {    margin-inline: auto;    max-width: 1480px;}.nav-logo {    height: 100%;    display: inline-flex;    align-items: center;}.nav-menu {    margin: 0 auto;}.nav-active {    transform: translateX(0%);}.navbar-active {    background: var(--scharff-blue);    height: 80px;}.navbar-active-black {    background: rgba(0,0,0, 0.9);}.nav-logo img {    width: 240px;    height: auto;}.nav-logo.scharff-logo img {    width: 220px;}.logo h4 {    text-indent: -99999px;}.nav-links {    display: flex;    align-items: center;    gap: 1.5rem;    height: 100%;    opacity: 1;    width: 100%;}nav .nav-inner ul {    padding-left: 0;}.nav-links li {    list-style: none;}.nav-icons {    height: 100%;    display: inline-flex;    padding-top: 10px;}.nav-icons ul {    display: flex;    align-items: center;    list-style-type: none;    gap: 1.5rem;}.nav-icons ul i {    font-size: 16px;    color: var(--scharff-blue);    opacity: 1;}.nav-icons ul i:hover {    opacity: 0.6;}.nav-links li.mobile_item {    display: none;}.nav-links li a {    color: var(--scharff-blue);    font-family: var(--sans-serif-font-family), sans-serif;    text-decoration: none;    letter-spacing: 1px;    font-size: 11px;    font-weight: 400;    font-style: normal;    text-transform: uppercase;    opacity: 1;}.nav-links li a i {    padding-right: 0.25rem;}.nav-links li a.black {    color: #111;}.nav-links li a:hover {    opacity: 0.6;}.nav-links li a.active {    color: var(--scharff-blue);    transition: all 0.3s ease;    opacity: 0.6;    pointer-events: none;    font-family: var(--sans-serif-font-family), sans-serif;}.link-item { color: var(--scharff-blue); }.icons {    display: none;    margin-top: -20px;}.burger {    display: none;    cursor: pointer;}.burger div {    width: 25px;    height: 2px;    background-color: rgb(175, 174, 174);    margin: 5px 5px 5px 2rem;    transition: all 0.3s ease;}.burger div.black {    background-color: #111;}/* T Y P O G R A P H Y */.ampersand {    display: inline-flex;    align-items: center;    justify-content: center;    margin-right: 0.3rem;    line-height: 1;            /* wichtig: keine extra Höhe */    vertical-align: middle;    color: currentColor;    font-family: inherit;    font-weight: 600;    padding: 0;}.ampersand--circle {    display: inline-flex;      /* sicherstellen, dass Zentrierung gilt */    align-items: center;    justify-content: center;    width: 18px;    height: 18px;    border-radius: 50%;    border: 1px solid currentColor;    background: transparent;    font-size: 0.75rem;    box-sizing: border-box;    line-height: 1;    vertical-align: middle;    /* optional: leichte optische Anpassung       transform: translateY(-0.02em); */}h1 {    font-size: 0.9rem;    font-family: var(--sans-serif-font-family), sans-serif;    font-weight: 500;    font-style: normal;    color: white;    letter-spacing: 8px;    text-transform: uppercase;    text-align: center;    line-height: 1.5rem;}h2 {    font-size: 4.5rem;    font-family: var(--headline-italic-font), serif; /* = "IvyOra Display" */    font-weight: 300;   /* muss zu @font-face passen */    font-style: italic; /* muss zu @font-face passen */    font-synthesis-weight: none; /* verhindert Faux-Bold in Safari */    font-synthesis-style: none;    line-height: 1.15;    text-align: left;    color: var(--scharff-blue);    letter-spacing: 0;}h2.big {    font-size: clamp(4rem, 6rem, 5rem);    line-height: 1.3;    color: var(--scharff-blue);    font-family: var(--headline-italic-font), serif; /* = "IvyOra Display" */    font-weight: 300;   /* muss zu @font-face passen */    font-style: italic; /* muss zu @font-face passen */    font-synthesis-weight: none; /* verhindert Faux-Bold in Safari */    font-synthesis-style: none;    letter-spacing: 1px;    hyphens: none;    text-align: left;}h2.small {    font-size: 3rem;    line-height: 1.25;    color: var(--scharff-blue);    font-family: var(--headline-italic-font), serif; /* = "IvyOra Display" */    font-weight: 300;   /* muss zu @font-face passen */    font-style: italic; /* muss zu @font-face passen */    font-synthesis-weight: none; /* verhindert Faux-Bold in Safari */    font-synthesis-style: none;    letter-spacing: 0;    hyphens: none;}h2.white {    color: #fff;}h2.center {    text-align: center;}h3 {    font-family: var(--sans-serif-font-family-bold), sans-serif;    font-size: 2rem;    line-height: 1;    color: var(--scharff-blue);    font-weight: 500;    text-align: left;    padding-bottom: 3rem;}h4 {    font-size: 1.35rem;    font-family: var(--sans-serif-font-family), sans-serif;    font-weight: 500;    color: #000;    text-align: left;    letter-spacing: 1px;    margin-bottom: 1rem;}p {    font-size: 1rem;    font-family: var(--sans-serif-font-family), sans-serif;    text-align: left;    font-weight: 300;    letter-spacing: 1px;    color: #000;    line-height: 1.75;    margin-bottom: 2rem;}.bold {    font-weight: 500;}.extrabold {    font-weight: 700;}/* L I N K S */a {    font-family: var(--sans-serif-font-family), sans-serif;    color: var(--scharff-blue);    font-weight: 300;    opacity: 1;    transition: all 0.3s ease;    text-align: center;}a:hover {    opacity: 0.6;}ul li p {    margin-bottom: 0;}/*  S E C T I O N  C O N T A I N E R  */.container {    width: 98%;    margin: auto;}.container.onTop {    margin-top: calc(var(--header-height) + 1rem);}.container-image {    position: relative;    width: 100%;}.container-image-colored {    position: relative;    width: 100%;}.container-image-colored.blue {    position: relative;    width: 100%;}.container-image img {    width: 100%;    object-fit: cover;}.container-image-colored img {    width: 100%;    object-fit: cover;}.container-image-colored::after {    content: '';    background: rgba(180, 202, 188, 1) linear-gradient(0deg, rgba(180, 202, 188, 0.7) 5%, rgba(180, 202, 188, 0.7) 100%);    position: absolute;    height: 65%;    top: 35%;    right: 0;    left: 0;    margin-top: -4px;    mix-blend-mode: multiply;}.container-image-colored.blue::after {    content: '';    background: rgba(188, 205, 255,1) linear-gradient(0deg, rgba(0, 11, 129, 0.5) 50%, rgb(0, 9, 74) 100%);    position: absolute;    height: 65%;    top: 35%;    right: 0;    left: 0;    margin-top: -4px;    mix-blend-mode: soft-light;}.container-image-colored.green::after {    content: '';    background: rgba(199, 237, 94,1) linear-gradient(0deg, rgb(209, 241, 124) 5%, rgb(222, 244, 172) 100%);    position: absolute;    height: 65%;    top: 35%;    right: 0;    left: 0;    margin-top: -4px;    mix-blend-mode: multiply;}.container-content {    position: absolute;    top: 6%;    left: 6%;    display: flex;    justify-content: center;    align-items: center;}.container-overlay {    position: relative;    width: 100%;}.container-overlay img {    width: 100%;    opacity: 0.85;}.container-content-text {    position: absolute;    top: 1rem;    left: 1rem;    text-align: left;    overflow: hidden;}.container-content-text h1 {    padding: 1rem;}.container-content-text h2 {    padding: 0 3rem;}.container--headline {    width: 70%;    margin: auto;    text-align: left;    padding-right: 30%;    padding-top: 8rem;    padding-bottom: 5rem;}.container--headline.sprung {    padding-top: 8.125rem;    padding-bottom: 5rem;}.container--headline.imprint {    width: 70%;    margin: auto;    text-align: left;    padding-right: 20%;    padding-top: 5rem;    padding-bottom: 5rem;}.container--inner {    width: 60%;    display: flex;    justify-content: center;    gap: 1.25rem;    padding-bottom: 3rem;    margin: auto;}.container--inner-text {    display: flex;    flex-direction: column;    flex-basis: 50%;}.container--inner-text h3 {    display: inline-block;    padding-bottom: 0;    min-height: 100px;}.container--inner-text h3.no-height {    display: inline-block;    padding-bottom: 1rem;    min-height: 0;}.container--text {    flex: 1;}.container--text ul {    padding-left: 1rem;}.container-content-text.center {    top: 50%;    left: 50%;    transform: translate(-50%, -50%);    z-index: 2;    width: 60%;}/* ----- B L U E ----- */.container-content.blue {    position: absolute;    top: 8%;    left: 58%;}/* ----- G R E E N ----- */.container-content.green {    position: absolute;    top: 8%;    left: 58%;}.white{    color: #fff;}.black {    color: #2F4F4F;}/* B U T T O N S */.button-group {    display: flex;    justify-content: center;    gap: 1rem;    padding-bottom: 7rem;    width: 98%;    margin: auto;}.button {    display: inline-block;    padding: 1rem 1.25rem;    border: none;    outline: none;    cursor: pointer;    text-align: center;    border-radius: 25px;    color: #000;    font-size: 12px;    font-weight: 700;    text-transform: uppercase;    letter-spacing: 5px;    width: 220px;}.button.jade {    background-color: var(--scharff-jade);    color: var(--scharff-blue);}.button.jade:hover {    background-color: var(--scharff-green);    color: var(--scharff-blue);    transform: scale(1.05) translateY(-1px);    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1);    transition: all 0.3s ease-in-out;}.button.darkblue {    background-color: var(--scharff-blue);    color: var(--scharff-jade);}.button.darkblue:hover {    background-color: var(--scharff-jade);    transform: scale(1.05) translateY(-1px);    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1);    transition: all 0.3s ease-in-out;    color: var(--scharff-blue);}.button.green {    background-color: var(--scharff-green);    color: var(--scharff-blue);}.button.green:hover {    background-color: var(--scharff-blue);    color: var(--scharff-jade);    transform: scale(1.05) translateY(-1px);    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1);    transition: all 0.3s ease-in-out;}.chevron-icon {    position: absolute;    bottom: 12%;    left: 50%;    transform: translate(-50%, -50%);    width: 50px;    height: 50px;    display: flex;    justify-content: center;    align-items: center;    z-index: 20;}.chevron i.white {    color: #ffffff;    text-shadow: 0 0 12px rgba(0, 0, 0, 0.1);    font-size: 4rem;    cursor: pointer;}.chevron i.jade {    color: var(--scharff-jade);    text-shadow: 0 0 12px rgba(0, 0, 0, 0.1);    font-size: 4rem;    cursor: pointer;}.chevron i.blue {    color: var(--scharff-blue);    text-shadow: 0 0 12px rgba(0, 0, 0, 0.1);    font-size: 4rem;    cursor: pointer;}/* Chevrons-Styles: SVG dreht bei aria-expanded="true" */.chevron {    display: inline-flex;    align-items: center;    justify-content: center;    width: 40px;    height: 40px;}.chevron svg {    width: 32px;    height: 32px;    display: block;    transition: transform .18s ease;    transform-origin: center;    pointer-events: none;    border: 2px solid #fff;    border-radius: 50%;}/* Wenn der Link (ID toggle-icon) aria-expanded="true" hat, rotiert das SVG */a#toggle-icon[aria-expanded="true"] .chevron svg {    transform: rotate(180deg);}.flow {    width: 100%;    animation-name: flow;    animation-duration: 8s;    position: relative;    animation-iteration-count: 2;}@keyframes flow {    0% {left: 100%;}    100% {left: 0;}}