/**
* Theme Name: Rodiar Child
* Description: This is a child theme of Rodiar.
* Author: Designervily
* Author URI: https://designervily.com/
* Template: rodiar
* Version: 1.0
*/

/* Parent menu items that only serve as hover triggers (not clickable) */
.menu-item > a[href="#"] {
    cursor: default !important;
}

/* ─── Stahlblau + Warmweiß Farbschema ────────────────── */
/* Primary: #5D7891 | Hover: #5D7891 | Warm White: #F5F0E8 */

:root {
    --dsvy-rodiar-global-color: #5D7891;
    --dsvy-rodiar-global-color-rgb: 93, 120, 145;
    --dsvy-rodiar-secondary-color: #4A6670;
    --dsvy-rodiar-secondary-color-rgb: 74, 102, 112;
    --dsvy-rodiar-light-bg-color: #F5F0E8;
    --dsvy-rodiar-light-bg-color-rgb: 245, 240, 232;
    --dsvy-rodiar-gradient-color-first: #5D7891;
    --dsvy-rodiar-gradient-color-last: #4A6670;
    --dsvy-rodiar-link-color-hover: #5D7891;
    --dsvy-rodiar-blackish-color: #5D7891;
    --dsvy-rodiar-blackish-color-rgb: 93, 120, 145;
    --dsvy-rodiar-blackish-bg-color: #5D7891;
    --dsvy-rodiar-blackish-bg-color-rgb: 93, 120, 145;
}

/* Body & page background — subtle warm tone */
body,
body.dsvy-rodiar {
    background-color: #FAF8F4;
    font-size: 18px;
    line-height: 1.7;
}

/* Seniorengerechte Schriftgröße für Fließtext */
body p,
body li,
body td,
body th,
body label,
body .woocommerce-product-details__short-description,
body .entry-content,
body .elementor-widget-text-editor {
    font-size: 18px;
    line-height: 1.7;
}

/* Light sections use warm white */
.dsvy-bg-light,
.dsvy-bg-color-lightcolor,
section.dsvy-bg-light {
    background-color: #F5F0E8 !important;
}

/* Buttons & links: Hampton Blue */
.dsvy-btn-color-gradient,
.dsvy-btn-color-globalcolor,
a.dsvy-btn-color-gradient,
a.dsvy-btn-color-globalcolor,
.dsvy-btn-color-gradient:active,
.dsvy-btn-color-globalcolor:active {
    background: #5D7891 !important;
    border-color: #5D7891 !important;
}
.dsvy-btn-color-gradient:hover,
.dsvy-btn-color-globalcolor:hover {
    background: #4A6670 !important;
    border-color: #4A6670 !important;
}

/* WooCommerce buttons */
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
    background-color: #5D7891;
    border-color: #5D7891;
}
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
    background-color: #4A6670;
    border-color: #4A6670;
}

/* WooCommerce block cart/checkout buttons */
.wc-block-components-button:not(.is-link),
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button {
    background-color: #5D7891 !important;
    border-color: #5D7891 !important;
}
.wc-block-components-button:not(.is-link):hover {
    background-color: #4A6670 !important;
    border-color: #4A6670 !important;
}

/* Sale badge */
.woocommerce span.onsale,
.dsvy-product-badge .onsale {
    background-color: #5D7891;
}

/* Price color */
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce ul.products li.product .price {
    color: #5D7891;
}

/* Star ratings */
.woocommerce .star-rating span::before,
.star-rating span::before {
    color: #5D7891;
}

/* Footer text on dark Hampton Blue */
.dsvy-footer,
.dsvy-footer-wrapper,
.dsvy-footer a,
.dsvy-copyright-wrapper {
    color: #d5cfc5;
}
.dsvy-footer a:hover,
.dsvy-copyright-wrapper a:hover {
    color: #F5F0E8;
}

/* Titlebar text on warm background */
.dsvy-titlebar h1,
.dsvy-titlebar .dsvy-breadcrumb,
.dsvy-titlebar .dsvy-breadcrumb a {
    color: #2d3e45;
}

/* Info-Sektionen (#5D7891): einheitliches Padding */
.elementor-section[style*="background-color"][class*="dsvy-text-color-white"],
.elementor-section[data-id="gv_hmv"],
.elementor-section[data-id="gv_steps"],
.elementor-section[data-id="gv_erfolg"],
.elementor-section[data-id="pv_hmv"],
.elementor-section[data-id="pv_steps"],
.elementor-section[data-id="pv_erfolg"],
.elementor-section[data-id="ws_do"],
.elementor-section[data-id="ws_features"],
.elementor-section[data-id="ws_motto"],
.elementor-section[data-id="ma_gs_hd"],
.elementor-section[data-id="ma_mv_hd"],
.elementor-section[data-id="pa_loesung"],
.elementor-section[data-id="pa_mobil"],
.elementor-section[data-id="pa_kfhd"],
.elementor-section[data-id="pa_lshd"],
.elementor-section[data-id="med_arzt"],
.elementor-section[data-id="med_forsch"],
.elementor-section[data-id="695884d"] {
    padding: 40px 0 !important;
    border-radius: 8px;
    margin-bottom: 20px !important;
}

/* Blackish sections override (Rodiar parent theme) */
.dsvy-elementor-bg-color-blackish,
.elementor-section.dsvy-elementor-bg-color-blackish,
.elementor-section.dsvy-elementor-bg-color-blackish:before,
.elementor-section.elementor-top-section.dsvy-elementor-bg-color-blackish,
.elementor-section.elementor-top-section.dsvy-elementor-bg-color-blackish:before,
.elementor-section.elementor-inner-section.dsvy-elementor-bg-color-blackish {
    background-color: #5D7891 !important;
}

/* Subtitle text in blackish sections: weiß, Strich bleibt orange */
.dsvy-elementor-bg-color-blackish .dsvy-heading-style-1 .dsvy-element-subtitle {
    color: #fff !important;
}

/* Weiße Schrift auf farbigen Sektionshintergründen */
/* Alle Sektionen mit #5D7891 Hintergrund: weiße Schrift */
.dsvy-text-color-white *,
.elementor-section[data-id="gv_hmv"] *,
.elementor-section[data-id="gv_steps"] *,
.elementor-section[data-id="gv_erfolg"] *,
.elementor-section[data-id="pv_hmv"] *,
.elementor-section[data-id="pv_steps"] *,
.elementor-section[data-id="pv_erfolg"] *,
.elementor-section[data-id="ws_do"] *,
.elementor-section[data-id="ws_features"] *,
.elementor-section[data-id="ws_motto"] *,
.elementor-section[data-id="ma_gs_hd"] *,
.elementor-section[data-id="ma_mv_hd"] *,
.elementor-section[data-id="pa_loesung"] *,
.elementor-section[data-id="pa_mobil"] *,
.elementor-section[data-id="pa_kfhd"] *,
.elementor-section[data-id="pa_lshd"] *,
.elementor-section[data-id="med_arzt"] *,
.elementor-section[data-id="med_forsch"] *,
.elementor-section[data-id="695884d"] * {
    color: #fff !important;
}
/* "Bitte beachten" Text-Boxen im gleichen hellblauen Stil */
.elementor-section[data-id="gv_note"] .elementor-widget-text-editor .elementor-widget-container,
.elementor-section[data-id="pv_note"] .elementor-widget-text-editor .elementor-widget-container {
    padding: 15px 20px;
    border: 1px solid #e5e7eb;
    border-left: 5px solid #3b82f6;
    background-color: #eff6ff;
    border-radius: 4px;
}
.elementor-section[data-id="gv_note"] h3,
.elementor-section[data-id="pv_note"] h3 {
    color: #1e40af !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
}
.elementor-section[data-id="gv_note"] ul,
.elementor-section[data-id="pv_note"] ul {
    margin: 0 !important;
    padding-left: 20px !important;
}
.elementor-section[data-id="gv_note"] li,
.elementor-section[data-id="pv_note"] li {
    color: #1e3a5f !important;
    margin-bottom: 5px;
}
.elementor-section[data-id="gv_note"] strong,
.elementor-section[data-id="pv_note"] strong {
    color: #1e3a5f !important;
}

/* Elementor Alert-Boxen einheitlich stylen */
/* Alle Alert-Boxen einheitlich: hellblau + blauer Rand */
.elementor-widget.elementor-alert-warning .elementor-alert,
.elementor-widget.elementor-alert-info .elementor-alert,
.elementor-alert-warning .elementor-alert,
.elementor-alert-info .elementor-alert {
    background-color: #eff6ff !important;
    border: 1px solid #e5e7eb !important;
    border-left: 5px solid #3b82f6 !important;
    color: #1e40af !important;
    padding: 15px 20px !important;
    border-radius: 4px !important;
}
.elementor-alert-warning .elementor-alert-title,
.elementor-alert-info .elementor-alert-title {
    color: #1e40af !important;
    font-weight: 700 !important;
    font-size: 18px !important;
    display: block !important;
    margin-bottom: 8px !important;
}
.elementor-alert-warning .elementor-alert-description,
.elementor-alert-warning .elementor-alert-description *,
.elementor-alert-info .elementor-alert-description,
.elementor-alert-info .elementor-alert-description * {
    color: #1e3a5f !important;
}

/* Kontakt-Box auf Hotline-Seite: #5D7891 + weiß */
.elementor-element-d9bb1ff {
    background: #5D7891 !important;
    border-radius: 8px !important;
    padding: 40px 30px !important;
    margin-bottom: 40px !important;
}
.elementor-element-d9bb1ff * {
    color: #fff !important;
}
.elementor-element-d9bb1ff div[style] {
    background: transparent !important;
}
.elementor-element-d9bb1ff p[style*="color:#999"],
.elementor-element-d9bb1ff p:last-child {
    color: #c5d0da !important;
}

/* Google Reviews Section: Padding */
.mrm-grev__section {
    padding: 40px 20px;
}
.mrm-grev__quotes {
    margin-top: 30px;
}

/* HMV-Nummer behält originales Rot */
.elementor-section[data-id="gv_hmv"] p[style*="color:var(--dsvy-rodiar-global"],
.elementor-section[data-id="gv_hmv"] p[style*="color:var(--dsvy-rodiar-global"] strong {
    color: #ea693f !important;
}

/* Default-Subtitle "This is Subtitle" ausblenden + Abstand korrigieren */
h4.dsvy-element-subtitle {
    display: none !important;
}
.dsvy-heading-subheading {
    margin-bottom: 10px !important;
}

/* Selection color */
::selection {
    background: #5D7891;
    color: #fff;
}

/* Navigation dropdown background */
.dsvy-navbar > div > ul ul,
.dsvy-navbar ul ul,
body:not(.dsvy-max-mega-menu-override) .dsvy-navbar > div > ul ul,
body:not(.dsvy-max-mega-menu-override) .dsvy-navbar ul ul,
.mega-menu-wrap > ul > li.mega-menu-flyout > ul.mega-sub-menu,
.mega-menu-wrap > ul > li.mega-menu-megamenu > ul.mega-sub-menu,
#mega-menu-wrap-designervily-top ul.mega-sub-menu {
    background-color: #F5F0E8 !important;
}
.dsvy-navbar > div > ul ul li > a,
.dsvy-navbar ul ul li > a,
.mega-menu-wrap > ul > li > ul.mega-sub-menu li a {
    color: #2d3e45 !important;
}
.dsvy-navbar > div > ul ul li:hover > a,
.dsvy-navbar ul ul li:hover > a,
.mega-menu-wrap > ul > li > ul.mega-sub-menu li a:hover {
    background-color: #5D7891 !important;
    color: #fff !important;
}

/* Scrollbar (webkit) */
::-webkit-scrollbar-thumb {
    background: #5D7891;
}
::-webkit-scrollbar-thumb:hover {
    background: #4A6670;
}

/* Client element icons (orange banner) — uniform size */
.dsvy-client-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 200px;
    padding: 20px;
}
.dsvy-client-wrapper img {
    max-width: 160px;
    max-height: 160px;
    width: auto;
    height: auto;
    object-fit: contain;
}

/* Cross-sells heading */
.cross-sells > h2,
.wp-block-woocommerce-cart-cross-sells-block h2,
.wc-block-cart__cross-sells h2,
.wp-block-woocommerce-product-collection h2.wp-block-heading,
.wp-block-woocommerce-cart-items-block h2.wp-block-heading {
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #2d3e45 !important;
    margin-top: 40px !important;
    margin-bottom: 20px !important;
    padding-bottom: 12px !important;
    border-bottom: 2px solid #5D7891 !important;
}

/* Empty cart: replace sad emoji with custom image */
.with-empty-cart-icon::before,
h2.with-empty-cart-icon::before,
.wc-block-cart__empty-cart__title.with-empty-cart-icon::before {
    mask-image: none !important;
    -webkit-mask-image: none !important;
    background-color: transparent !important;
    background-image: url('/wp-content/uploads/2026/04/warenkorb-leer.jpg') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    width: 100% !important;
    max-width: 600px !important;
    height: 400px !important;
    border-radius: 12px;
}

/* Service element icons — uniform size */
.dsvy-service-icon-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    overflow: hidden;
}
.dsvy-service-icon-wrapper img {
    width: 56px;
    height: 56px;
    object-fit: contain;
}
.dsvy-service-icon-wrapper i,
.dsvy-service-icon-wrapper svg {
    font-size: 48px;
    width: 48px;
    height: 48px;
}