/*
 Theme Name:   YOOtheme Child
 Template:     yootheme
 Author:       Digitalagentur Von der See GmbH
 Description:  YOOtheme Child Theme
 Version:      2.37.0
 Text Domain:  yootheme-child
*/

/* UIkit 2→3 migration: accordion yellow background */
.uk-accordion-title {
    background-color: #f7c608 !important;
    color: #ffffff !important;
    padding: 15px !important;
    justify-content: space-between;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    text-transform: uppercase !important;
}
.uk-accordion-title:hover,
.uk-accordion-title:focus {
    background-color: #f7c608 !important;
    color: #373f77 !important;
    text-decoration: none;
}

/* UIkit 3 accordion icon: white fill */
.uk-accordion-title .uk-accordion-icon svg {
    fill: #ffffff !important;
}

/* Card body: UIkit 5 sets gray color on card-body; prod = navy */
.uk-card-body {
    color: #373f77 !important;
}

/* Card meta blank line between qualification groups (prod uses <br>, green uses <p>) */
.el-meta p {
    margin-bottom: 0;
}
.el-meta p + p {
    margin-top: 18px !important;
}

/* ANMELDEN (uk-button-primary): UIkit 5 = near-black Montserrat; prod = #3a437e Open Sans */
.uk-button-primary {
    background-color: #3a437e !important;
    color: #ffffff !important;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    letter-spacing: normal !important;
    line-height: 48px !important;
    padding: 0 28px !important;
}
.uk-button-primary:hover,
.uk-button-primary:focus {
    background-color: #f7c608 !important;
    color: #373f77 !important;
    border-color: transparent !important;
}

/* Card button: UIkit 5 default = Montserrat gray filled; prod = Open Sans navy outlined */
.uk-button-default {
    background: transparent !important;
    border: 0.8px solid #373f77 !important;
    color: #373f77 !important;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    letter-spacing: normal !important;
    line-height: 48px !important;
    padding: 0 28px !important;
    text-transform: uppercase !important;
}
.uk-button-default:hover,
.uk-button-default:focus {
    background: #f7c608 !important;
    color: #373f77 !important;
    border-color: #373f77 !important;
}

/* Text button: UIkit 5 = Montserrat gray; prod = Open Sans 12px/1.75 navy uppercase */
.uk-button-text {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 12px !important;
    line-height: 1.75 !important;
    font-weight: 400 !important;
    letter-spacing: normal !important;
    text-transform: uppercase !important;
    color: #373f77 !important;
}
.uk-button-text:hover {
    background: transparent !important;
    color: #373f77 !important;
}

/* Small button variant: prod = 13px / 33px line-height / 0 18px padding.
   Must come after the primary/default blocks to win the equal-specificity tie. */
.uk-button-small {
    font-size: 13px !important;
    line-height: 33px !important;
    padding: 0 18px !important;
}

/* Toolbar (top bar): UIkit 5 defaults to near-black, prod is navy #373f77 */
.tm-toolbar {
    background-color: #373f77 !important;
}

/* Toolbar grid: UIkit 5 uk-grid-medium = 20px column gap, prod UIkit 2 = 30px */
.tm-toolbar .uk-grid-medium {
    margin-left: -30px !important;
}
.tm-toolbar .uk-grid-medium > * {
    padding-left: 30px !important;
}
/* Toolbar icon list: UIkit 5 li padding = 10px, prod = 15px; ul marginLeft UIkit5=-10px vs prod=-15px */
.tm-toolbar .uk-grid-medium > div + div li {
    padding-left: 15px !important;
}
.tm-toolbar .uk-grid-medium > div + div ul {
    margin-left: -15px !important;
}

/* uk-overlay-default background: UIkit 5 default is rgba(255,255,255,.9); prod's
   own theme.1.css (YOOtheme 2.7) ships rgba(255,255,255,.8) natively. Found via
   an untracked WP Customizer "Additional CSS" hack that existed ONLY on
   alpha317-green (never migrated to Zielserver-green, invisible to file-based
   deploys and to builder-diff.js since it lives in a custom_css post, not the
   yootheme option). Fixing it here makes it a tracked, deployed value instead. */
.uk-overlay-default {
    background: rgba(255, 255, 255, 0.8) !important;
}

/* Overlay/padding token: UIkit 5 = 20px, prod = 30px. Costs 20px of height per
   overlay card, which shifts everything below it and reads as a full-page diff. */
.uk-overlay {
    padding: 30px !important;
}
.uk-padding {
    padding: 30px !important;
}

/* uk-grid-small gutter: UIkit 5 = 10px, prod = 15px (footer icon → address/phone/mail spacing) */
.uk-grid-small {
    margin-left: -15px !important;
}
.uk-grid-small > * {
    padding-left: 15px !important;
}
/* :not(.uk-margin) — an element carrying both classes keeps .uk-margin's 20px on
   prod. Without the exclusion this rule flattens those to 15px (cost 15px on the
   contact form). */
.uk-grid-small > .uk-grid-margin:not(.uk-margin) {
    margin-top: 15px !important;
}

/* Accordion gap: UIkit 5 adds 20px; prod (UIkit 2) shows 5px white gap → match exactly */
.uk-accordion-default > :nth-child(n+2) {
    padding-top: 0 !important;
    margin-top: 5px !important;
    border-top: none !important;
}

/* Filter/nav tabs: UIkit 5 adds weight 500 + letter-spacing 2px + a padding 10px extra */
/* Prod (UIkit 2): li padding-left 20px (gap between items), a padding 0px */
.el-nav a {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    letter-spacing: normal !important;
    color: #373f77 !important;
    line-height: 21px !important;
    padding: 1px 0 !important;
}

/* Top nav pipe divider (UIkit 2→3: no longer auto-generated) */
.pipe {
    border-right: 1px solid #ffffff;
    padding-right: 20px;
}

/* Mobile-Menü (< 960px): eigenes uk-modal mit uk-nav-Links, nicht von der
   globalen h1-h6-Regel oder .el-nav getroffen — YOOtheme 5s Default
   "Playfair Display" + normale Groß-/Kleinschreibung blieb stehen. Prod
   (UIkit 2) zeigt Open Sans in Großbuchstaben. Gefunden 2026-08-20 beim
   Mobile-Vergleich gegen bbs1emden.de. */
.uk-modal-body .uk-nav a {
    font-family: 'Open Sans', sans-serif !important;
    text-transform: uppercase !important;
    letter-spacing: normal !important;
    color: #373f77 !important;
}

/* === YOOtheme 5.x → 2.7.0 visual parity: typography overrides === */

/* Base html: match prod (Open Sans 15px, lh 1.75, navy #373f77) */
html {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
    color: #373f77 !important;
}

/* All headings: prod global heading reset */
h1, h2, h3, h4, h5, h6,
.uk-h1, .uk-h2, .uk-h3, .uk-h4, .uk-h5, .uk-h6,
.uk-heading-small, .uk-heading-medium, .uk-heading-large,
.uk-heading-xlarge, .uk-heading-2xlarge, .uk-heading-3xlarge {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 400 !important;
    color: #373f77 !important;
    text-transform: uppercase !important;
    letter-spacing: 0 !important;
    font-style: normal !important;
}

/* Borlabs Cookie dialog/widget: exempt from the global heading reset above.
   Borlabs' own <h2> title matched the blanket h1-h6 selector and rendered
   ALL CAPS in our navy — real prod (Borlabs 2.2.42, untouched by our CSS)
   shows its own default styling. Reset to "unset" so Borlabs' own stylesheet
   (loaded after ours, see wp_head priority) decides, not our theme. */
#BorlabsCookieBox h1, #BorlabsCookieBox h2, #BorlabsCookieBox h3,
#BorlabsCookieBox h4, #BorlabsCookieBox h5, #BorlabsCookieBox h6,
#BorlabsCookieWidget h1, #BorlabsCookieWidget h2, #BorlabsCookieWidget h3,
#BorlabsCookieWidget h4, #BorlabsCookieWidget h5, #BorlabsCookieWidget h6,
.brlbs-cmpnt-container h1, .brlbs-cmpnt-container h2, .brlbs-cmpnt-container h3,
.brlbs-cmpnt-container h4, .brlbs-cmpnt-container h5, .brlbs-cmpnt-container h6 {
    font-family: unset !important;
    font-weight: unset !important;
    color: unset !important;
    text-transform: unset !important;
    letter-spacing: unset !important;
    font-style: unset !important;
}

/* h1 / article-title: 28.9px base, 34px desktop.
   .uk-h1 must be listed too — it is used on h2 elements (e.g. "Kontaktformular"),
   where the h2 rule would otherwise win and render 28px instead of 34px. */
h1, .uk-h1, .uk-article-title {
    font-size: 28.9px !important;
    line-height: 1.2 !important;
}
@media (min-width: 960px) {
    h1, .uk-h1, .uk-article-title {
        font-size: 34px !important;
    }
}

/* h2: 23.8px base, 28px desktop */
h2, .uk-h2 {
    font-size: 23.8px !important;
    line-height: 1.3 !important;
}
@media (min-width: 960px) {
    h2, .uk-h2 {
        font-size: 28px !important;
    }
}

/* h3: 22px */
h3, .uk-h3 {
    font-size: 22px !important;
    line-height: 1.35 !important;
}

/* h4/h5/h6: prod scale — h4 18px, h5 15px BOLD, h6 12px */
h4, .uk-h4 {
    font-size: 18px !important;
    line-height: 1.4 !important;
}
h5, .uk-h5 {
    font-size: 15px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
}
h6, .uk-h6 {
    font-size: 12px !important;
    line-height: 1.4 !important;
}

/* Text utility classes: UIkit 5 defaults to grays/Montserrat/Playfair; prod values below.
   Placed after the heading rules so equal-specificity ties resolve in favour of utilities. */
.uk-text-lead {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 18px !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    text-transform: none !important;
    color: #373f77 !important;
}
.uk-text-meta {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    color: #373f77 !important;
}
/* Card title: prod = 18px lh1.4 regardless of underlying h-tag */
.uk-card-title {
    font-size: 18px !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;
}

/* Section/tile/card background tokens: UIkit 5 ships its own palette (secondary = near-black).
   Prod theme palette: secondary = yellow #f7c608, primary = navy. */
.uk-section-default { background-color: #ffffff !important; }
.uk-section-muted   { background-color: #f6f6f6 !important; }
.uk-section-primary { background-color: #373f77 !important; }
.uk-section-secondary {
    background-color: #f7c608 !important;
    color: #373f77 !important;
}
.uk-tile-default   { background-color: #ffffff !important; }
.uk-tile-muted     { background-color: #f6f6f6 !important; }
.uk-tile-primary   { background-color: #414a8c !important; }
.uk-tile-secondary { background-color: #d0a603 !important; }
.uk-card-default   { background-color: #ffffff !important; color: #373f77 !important; }
.uk-card-primary   { background-color: #3a437e !important; color: #ffffff !important; }
.uk-card-secondary { background-color: #d6b101 !important; color: #ffffff !important; }

/* Divider/border token: UIkit 5 = rgb(229,229,231) neutral gray; prod = rgba(38,36,76,.2) navy tint */
.uk-card-default,
hr,
.uk-hr,
.uk-divider-icon,
.uk-article-divider,
.uk-modal-header,
.uk-modal-footer {
    border-color: rgba(38, 36, 76, 0.2) !important;
}
.uk-table th,
.uk-table td,
.uk-table caption,
.uk-table-divider > :not(:first-child) > tr,
.uk-table-divider > tr:not(:first-child),
.uk-list-divider > li:nth-child(n+2),
.uk-nav-divider,
.uk-subnav-divider > * > :before,
.uk-navbar-dropdown-grid > :not(.uk-first-column)::before {
    border-color: rgba(38, 36, 76, 0.2) !important;
}

/* Slider dots + arrows: UIkit 5 uses gray/white alphas; prod tints everything navy */
.uk-dotnav > * > * {
    background-color: rgba(55, 63, 119, 0.2) !important;
}
.uk-dotnav > * > :hover,
.uk-dotnav > .uk-active > * {
    background-color: rgba(55, 63, 119, 0.6) !important;
}
.uk-dotnav > * > :active {
    background-color: rgba(55, 63, 119, 0.2) !important;
}
.uk-slidenav {
    background-color: transparent !important;
    color: rgba(55, 63, 119, 0.5) !important;
}
.uk-slidenav:hover { color: rgba(55, 63, 119, 0.9) !important; }
.uk-slidenav:active { color: rgba(55, 63, 119, 0.5) !important; }

/* Same widgets inside light/toolbar contexts use slightly stronger alphas on prod */
.tm-toolbar-default .uk-dotnav > * > *,
.uk-light .uk-dotnav > * > * {
    background-color: rgba(55, 63, 119, 0.5) !important;
}
.tm-toolbar-default .uk-dotnav > * > :hover,
.tm-toolbar-default .uk-dotnav > .uk-active > *,
.uk-light .uk-dotnav > * > :hover,
.uk-light .uk-dotnav > .uk-active > * {
    background-color: rgba(55, 63, 119, 0.9) !important;
}
/* Prod wraps every slider/slideshow nav in .uk-dark.uk-light (0.7 alpha); YOOtheme 5 omits
   that wrapper, so scope on the slider itself to reach the same set of arrows. */
.tm-toolbar-default .uk-slidenav,
.uk-light .uk-slidenav,
.uk-slider .uk-slidenav,
.uk-slideshow .uk-slidenav {
    color: rgba(55, 63, 119, 0.7) !important;
}
.tm-toolbar-default .uk-slidenav:hover,
.uk-light .uk-slidenav:hover,
.uk-slider .uk-slidenav:hover,
.uk-slideshow .uk-slidenav:hover {
    color: rgba(55, 63, 119, 0.95) !important;
}

/* .uk-light: UIkit 5 = rgba(255,255,255,.7); prod theme configures it navy */
.uk-light { color: #373f77 !important; }

/* Class-less anchors: UIkit 5 gives them its own gray; prod renders them navy.
   :where() keeps specificity at 0 so every other !important rule still wins. */
:where(a:not([class]), a[class=""]) { color: #373f77 !important; }

/* Skip link: YOOtheme 5 renders it as a permanently visible notification; prod has none.
   Hide it visually but keep it reachable by keyboard (revealed on focus). */
.uk-notification-message:has(> a[href="#tm-main"]) {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
}
.uk-notification-message:has(> a[href="#tm-main"]:focus) {
    width: auto !important;
    height: auto !important;
    padding: 15px !important;
    overflow: visible !important;
    clip: auto !important;
}

/* Pagination: UIkit 5 = Montserrat 11px w500 gray; prod = Open Sans 15px/1.75 navy uppercase */
.uk-pagination > * > * {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
    color: #373f77 !important;
}
.uk-pagination > * > :hover,
.uk-pagination > .uk-active > *,
.uk-pagination > .uk-disabled > * {
    color: #373f77 !important;
}

/* Form controls: UIkit 5 = white bg, gray text, gray border; prod = tinted gold bg, navy, no border */
.uk-input,
.uk-textarea,
.uk-select {
    background: rgba(229, 190, 1, 0.04) !important;
    color: #373f77 !important;
    border: none !important;
    border-radius: 0 !important;
    font-size: 15px !important;
    font-family: 'Open Sans', sans-serif !important;
}
.uk-input {
    height: 50px !important;
    padding: 0 10px !important;
}
.uk-textarea {
    padding: 6px 10px !important;
}
.uk-checkbox,
.uk-radio {
    background-color: rgba(229, 190, 1, 0.09) !important;
    border: none !important;
}
.uk-radio { border-radius: 50% !important; }

/* Blockquote: UIkit 5 = Playfair Display 20px gray; prod = Open Sans 18px/1.5 navy */
blockquote,
blockquote p {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 18px !important;
    line-height: 1.5 !important;
    font-style: normal !important;
    font-weight: 400 !important;
    color: #373f77 !important;
}

/* Blockquote attribution: UIkit 5 = Montserrat 11px w500 gray, ls 2px, 40px gap.
   Prod = Open Sans 13px/1.5 navy, no letter-spacing, 10px gap; cite stays italic. */
blockquote footer,
.el-footer,
.uk-blockquote-footer {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    font-style: normal !important;
    letter-spacing: normal !important;
    text-transform: uppercase !important;
    color: #373f77 !important;
    margin-top: 10px !important;
}
/* Em dash before the attribution — UIkit 5 dropped this rule */
blockquote footer::before,
.el-footer::before {
    content: "— ";
}

blockquote cite,
.el-author {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    font-style: italic !important;
    letter-spacing: normal !important;
    text-transform: uppercase !important;
    color: #373f77 !important;
}

/* Social/link icons: UIkit 5 = gray, 40% white in toolbar; prod = navy, solid white in toolbar */
.uk-icon-link {
    color: #373f77 !important;
}
.uk-icon-link:hover,
.uk-active > .uk-icon-link,
.uk-icon-link:active {
    color: #ffffff !important;
}
.tm-toolbar-default .uk-icon-link,
.uk-light .uk-icon-link {
    color: #ffffff !important;
}
.tm-toolbar-default .uk-active > .uk-icon-link,
.tm-toolbar-default .uk-icon-link:active {
    color: #ffffff !important;
}
.tm-toolbar-default .uk-icon-link:hover {
    color: #d0a603 !important;
}

.uk-text-muted { color: #373f77 !important; }
.uk-text-emphasis { color: #373f77 !important; }
.uk-text-primary { color: #07080e !important; }
.uk-text-secondary { color: #e5be01 !important; }
.uk-text-background { color: #07080e !important; }

/* Navbar layout: UIkit 5 adds column-gap 30px on navbar-right + no negative margin on navbar-left */
/* Prod (UIkit 2): column-gap none, navbar-left margin-right -25px */
.uk-navbar-nav {
    column-gap: 0 !important;
    gap: 0 !important;
}
.uk-navbar-right {
    column-gap: 0 !important;
    gap: 0 !important;
    margin-right: -25px !important;
}
.uk-navbar-left {
    margin-right: -25px !important;
}

/* Active/hover navbar underline: UIkit 2 uses ::before bar; UIkit 5 has none */
.uk-navbar-nav > li > a {
    position: relative;
}
.uk-navbar-nav > li > a::before {
    content: "";
    display: block;
    position: absolute;
    bottom: 38px;
    height: 2px;
    background-color: transparent;
    left: 25px;
    right: calc(102% - 25px);
    transition: right 0.3s ease-in-out, background-color 0.3s ease-in-out;
}
.uk-navbar-nav > li.uk-active > a::before,
.uk-navbar-nav > li:hover > a::before {
    right: 25px;
    background-color: #373f77;
}

/* Main navbar: Open Sans, uppercase, navy, 13px base → 22px desktop */
.uk-navbar-nav > li > a,
.uk-navbar-toggle {
    min-height: 100px !important;
    padding: 0 25px !important;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    letter-spacing: 0 !important;
    color: #373f77 !important;
}
/* prod navbar stays 13px at all viewports — no desktop override */

/* Topbar subnav items: UIkit 5 = 11px rgba(255,255,255,.7); prod = 13px, colour from toolbar */
.uk-subnav > * {
    font-size: 13px !important;
    line-height: 22.75px !important;
    color: #373f77 !important;
}

/* Topbar subnav: white, 13px, no transform (toolbar above main nav) */
.uk-subnav > * > :first-child {
    color: #fff !important;
    font-size: 13px !important;
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 400 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

