/* Kopf: fest oben (vorher Sticky von Elementor Pro). */
.bsm-header { position: sticky; top: 0; z-index: 100; }
.admin-bar .bsm-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .bsm-header { top: 46px; } }
.bsm-header > .elementor { position: relative; }

/* Menü: Werte aus der früheren Pro-Vorlage (Roboto 12 px, weiß, Unterstrich, Abstand 30 px). */
.bsm-nav { font-family: Roboto, sans-serif; font-size: 12px; font-weight: 300; }
.bsm-nav__list, .bsm-nav__list ul { list-style: none; margin: 0; padding: 0; }
.bsm-nav__list { display: flex; justify-content: center; align-items: center; }
.bsm-nav__list > li { position: relative; margin: 0 15px; }
.bsm-nav__list a { display: block; color: #fff; text-decoration: none; padding: 19px 0; line-height: 1.2; position: relative; }
.bsm-nav__list > li > a::after { content: ''; position: absolute; left: 0; right: 0; bottom: 12px; height: 2px; background: #fff; opacity: 0; transform: translateY(6px); transition: opacity .2s, transform .2s; }
.bsm-nav__list > li > a:hover::after, .bsm-nav__list > li > a:focus::after,
.bsm-nav__list > .current-menu-item:not(.polylang-item) > a::after, .bsm-nav__list > .current_page_item:not(.polylang-item) > a::after { opacity: 1; transform: none; }
.bsm-nav__list > .menu-item-has-children > a { display: flex; align-items: center; gap: 6px; }
.bsm-nav__list > .menu-item-has-children > a::before { content: ''; order: 2; width: 5px; height: 5px; border: solid #fff; border-width: 0 1.5px 1.5px 0; transform: rotate(45deg) translateY(-2px); }

/* Untermenü (Sprachwahl) */
.bsm-nav .sub-menu { position: absolute; top: 100%; left: 0; min-width: 160px; background: #fff; box-shadow: 0 2px 15px rgba(0, 0, 0, .1); visibility: hidden; opacity: 0; transition: opacity .15s; z-index: 5; }
.bsm-nav li:hover > .sub-menu, .bsm-nav li:focus-within > .sub-menu { visibility: visible; opacity: 1; }
.bsm-nav .sub-menu a { color: #001E24; font-weight: 400; padding: 15px 16px; border-bottom: 1px solid #efefef; display: flex; align-items: center; }
.bsm-nav .sub-menu li:last-child a { border-bottom: 0; }
.bsm-nav .sub-menu a:hover, .bsm-nav .sub-menu a:focus { color: #1AC2E9; }

.bsm-nav__toggle { display: none; }

/* Schmale Ansicht: Burger-Knopf, Menü klappt unter dem Kopf auf (Elementor-Tablet-Breakpoint). */
@media (max-width: 1024px) {
	.bsm-nav__toggle { display: flex; margin-left: auto; padding: 18px 10px; background: transparent; border: 0; cursor: pointer; }
	.bsm-nav__burger, .bsm-nav__burger::before, .bsm-nav__burger::after { display: block; width: 25px; height: 3px; background: #fff; border-radius: 1px; content: ''; position: relative; }
	.bsm-nav__burger::before { position: absolute; top: -8px; }
	.bsm-nav__burger::after { position: absolute; top: 8px; }
	.bsm-nav__list { display: none; position: absolute; left: 0; right: 0; top: 100%; flex-direction: column; align-items: stretch; background: #fff; box-shadow: 0 2px 15px rgba(0, 0, 0, .1); }
	.bsm-nav.is-open .bsm-nav__list { display: flex; }
	.bsm-nav__list > li { margin: 0; }
	.bsm-nav__list a { color: #001E24; padding: 25px 16px; font-size: 16px; font-weight: 400; border-bottom: 1px solid #efefef; }
	.bsm-nav__list > li > a::after, .bsm-nav__list > .menu-item-has-children > a::before { display: none; }
	.bsm-nav__list a:hover, .bsm-nav__list .current-menu-item > a { color: #1AC2E9; }
	.bsm-nav .sub-menu { position: static; visibility: visible; opacity: 1; box-shadow: none; }
	.bsm-nav .sub-menu a { padding-left: 32px; }
}
@media (max-width: 767px) { .bsm-nav__list a { font-size: 13px; } }

/* Footer unterhalb gefloateter Inhalte (Bootslisten des Plugins: Suchformular und Liste sind floats). */

.bsm-footer { clear: both; }

/* Preisliste (iFrame von boatadmin, deutsch und englisch): Höhe nach Inhalt mit Reserve, schmal wird die Tabelle umbrochen und länger.

   Gemessen (Inhalt): 600 px Breite ca. 1710 px, 335 px Breite ca. 2650 px. */

iframe[src*="boatadmin.com"][src*="pricelist"] { width: 100%; max-width: 600px; height: 1900px; }

@media (max-width: 600px) { iframe[src*="boatadmin.com"][src*="pricelist"] { height: 2500px; } }

@media (max-width: 420px) { iframe[src*="boatadmin.com"][src*="pricelist"] { height: 3100px; } }
