/*
Theme Name: Boxed 2026
Theme URI: https://advance-media.de/
Author: Patrick Schlak
Author URI: https://advance-media.de
Description: Wordpress Theme based on ACF and Gutenberg. PageSpeed-Optimierung 11/2026 (Nachfolger von boxed-theme)
Version: 2026.11
License: GNU General Public License v2
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: themebase, acf, gutenberg
Text Domain: 
*/


/* DEFAULT THEME STYLING */

/* Google Fonts lokal */
/* Variable Fonts (Fontsource, OFL) – je Familie eine Datei für alle Schnitte, nur latin + latin-ext.
   latin-ext wird über unicode-range nur geladen, wenn solche Zeichen auf der Seite vorkommen. */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url('includes/fonts/OpenSansVariable/open-sans-latin-wght-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url('includes/fonts/OpenSansVariable/open-sans-latin-ext-wght-normal.woff2') format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 300 800;
  font-display: swap;
  src: url('includes/fonts/OpenSansVariable/open-sans-latin-wght-italic.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 300 800;
  font-display: swap;
  src: url('includes/fonts/OpenSansVariable/open-sans-latin-ext-wght-italic.woff2') format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('includes/fonts/RalewayVariable/raleway-latin-wght-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('includes/fonts/RalewayVariable/raleway-latin-ext-wght-normal.woff2') format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Raleway';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url('includes/fonts/RalewayVariable/raleway-latin-wght-italic.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Raleway';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url('includes/fonts/RalewayVariable/raleway-latin-ext-wght-italic.woff2') format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

/* Ersatzschrift während des Ladens (font-display: swap): Arial auf die Maße der Webfont angeglichen,
   damit das Layout beim Schriftwechsel nicht springt. Werte aus den Font-Metriken berechnet. */
@font-face {
  font-family: 'Open Sans Fallback';
  src: local('Arial'), local('ArialMT');
  size-adjust: 104.80%;
  ascent-override: 101.99%;
  descent-override: 27.95%;
  line-gap-override: 0%;
}
/* Raleway wird nur für h1 (bold) genutzt, daher gegen Arial Bold angeglichen */
@font-face {
  font-family: 'Raleway Fallback';
  font-weight: 700;
  src: local('Arial Bold'), local('Arial-BoldMT');
  size-adjust: 100.16%;
  ascent-override: 93.85%;
  descent-override: 23.36%;
  line-gap-override: 0%;
}

/* Icons für CSS (ersetzt Font Awesome) – Font Awesome Free 6.2.1, Icons: CC BY 4.0, https://fontawesome.com/license/free
   Verwendung als Maske, damit das Icon die Textfarbe übernimmt (siehe Slider-Pfeile in den Blocks) */
:root {
  --icon-angle-left: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M41.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 256 246.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z'/%3E%3C/svg%3E");
  --icon-angle-right: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z'/%3E%3C/svg%3E");
}

/* Bilder mit width/height-Attributen (boxed_img, Hero) behalten ihr Seitenverhältnis, wenn CSS nur die Breite vorgibt.
   :where() = Spezifität 0, damit jede bestehende Höhenregel im Theme weiterhin Vorrang hat. */
:where(img[width][height]) {
  height: auto;
}

/* Consent-Platzhalter für Inhalte von Drittanbietern (Google Maps, YouTube, Elfsight) – siehe mainscripts.js.
   Blockierte iframes (noch ohne src) ausblenden, bis zugestimmt wurde. */
iframe[data-usercentrics]:not([src]) {
  display: none;
}
.consent-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  padding: 30px 20px;
  background: #f0f4ff;
  border: 1px solid #d6dff5;
  border-radius: 5px;
  color: #555;
  text-align: center;
}
.consent-placeholder-icon {
  width: 36px;
  height: 36px;
  fill: #0A1F63;
}
.consent-placeholder-title {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  color: #0A1F63;
}
.consent-placeholder-text {
  max-width: 420px;
  margin: 0;
  font-size: 15px;
  line-height: 1.5;
}
.consent-placeholder-accept {
  margin-top: 5px;
}
.consent-placeholder-settings {
  font-size: 14px;
  color: #0A1F63;
  text-decoration: underline;
  text-underline-offset: 4px;
}
