/*
Theme Name: Hello JSM
Template: hello-elementor
Description: Child-Theme für js-maritime.com, lädt Open Sans lokal.
Version: 1.8.0
Text Domain: hello-jsm
*/

/* Open Sans (SIL Open Font License, siehe fonts/OFL.txt) */
@font-face { font-family: "Open Sans"; font-style: normal; font-weight: 300; font-display: swap; src: url("fonts/open-sans-latin-300-normal.woff2") format("woff2"); }
@font-face { font-family: "Open Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("fonts/open-sans-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "Open Sans"; font-style: italic; font-weight: 400; font-display: swap; src: url("fonts/open-sans-latin-400-italic.woff2") format("woff2"); }
@font-face { font-family: "Open Sans"; font-style: normal; font-weight: 700; font-display: swap; src: url("fonts/open-sans-latin-700-normal.woff2") format("woff2"); }

body { background-color: #264b7f; }

/* Abstände wie im Avada-Original (gemessen am Stand 19.08.2025) */
.elementor-widget-text-editor p { margin: 0 0 20px; line-height: 1.4; }
.elementor-widget-text-editor h1 { font-size: 28px; line-height: 1.4; margin: 0.67em 0; }
.elementor-widget-text-editor h2 { font-size: 24px; line-height: 1.5; margin: 0 0 1.1em; }
.elementor-widget-text-editor h3 { font-size: 22px; line-height: 1.5; margin: 1em 0; }
.elementor-widget-text-editor ul { margin: 18px 0; padding-left: 40px; }
.elementor-widget-text-editor li { line-height: 1.4; }
.elementor-widget-text-editor img.alignnone { display: inline; vertical-align: top; }
/* Hochstellung wie Avada (Hello setzt sup ohne Zeilenhöhe) */
.elementor-widget-text-editor sup { font-size: smaller; line-height: inherit; position: static; vertical-align: super; }

/* Toggle wie Avada-Akkordeon: schlichte Zeilen mit Trennlinie, auch unter der letzten */
.elementor-widget-toggle .elementor-toggle { border: 3px solid #fff; }
.elementor-widget-toggle .elementor-toggle-item { margin: 0; border-bottom: 1px solid #e0dede; }
.elementor-widget-toggle .elementor-tab-title { box-sizing: border-box; min-height: 43.7px; }

/* Avada-Karussell: 8 px Innenabstand über und unter den Bildern */
.elementor-widget-image-carousel .elementor-image-carousel { padding: 8px 0; }

/* Avada-Videos haben das Seitenverhältnis 5:3 */
.elementor-widget-video .elementor-wrapper { aspect-ratio: 5 / 3 !important; max-width: 600px; }

/* Zwei-Klick-Lösung: Hinweis auf dem lokalen Vorschaubild, YouTube lädt erst nach Klick */
.elementor-widget-video .elementor-custom-embed-image-overlay::after {
	content: "Click to load the video from YouTube (Google). See privacy notice.";
	position: absolute; left: 0; right: 0; bottom: 0; padding: 6px 10px;
	background: rgba(0, 0, 0, .65); color: #fff; font-size: 12px; line-height: 1.4; text-align: center;
}

/* Bilder mit Avada-max_width: höchstens Spaltenbreite bzw. max_width, nie hochskaliert */
.avada-maxw img { width: auto; }
.avada-maxw-100 img { max-width: min(100%, 100px); }
.avada-maxw-200 img { max-width: min(100%, 200px); }
.avada-maxw-300 img { max-width: min(100%, 300px); }
.avada-maxw-400 img { max-width: min(100%, 400px); }

/* legacy-Spalten: 4 % Abstand rechts relativ zur Zeilenbreite; gestapelt (≤ 800 px) keiner */
.e-con.avada-legacy-gap { margin-right: 4%; }
@media (max-width: 800px) { .e-con.avada-legacy-gap { margin-right: 0; } }
