/*
Theme Name: Riskx Manager
Theme URI: https://www.riskx.nl
Description: Child theme van Divi voor de website van Riskx Manager. Huisstijl (Poppins, navy, groen), Divi-resets voor de code-modules en responsive regels. Layouts importeren via Divi Builder > Portability, zie LEESMIJ.txt.
Author: Riskx Manager BV
Template: Divi
Version: 1.0.0
Text Domain: riskx
*/

/* 1. Merkkleuren */
:root {
    --rx-navy: #1B2A53;
    --rx-groen: #2A9D6A;
    --rx-groen-hover: #1E8E5A;
    --rx-groen-diap: #62C592;
    --rx-grijs: #EDEFF2;
    --rx-rand: #E3E8EF;
    --rx-tekst: #4A5468;
    --rx-label: #6B7385;
}

/* 2. Typografie */
body, body .et_pb_module, body input, body textarea, body select, body button, #et-boc .et-l * {
    font-family: 'Poppins', system-ui, -apple-system, sans-serif;
}
body { color: var(--rx-tekst); -webkit-font-smoothing: antialiased; }
a { color: var(--rx-groen); text-decoration: none; }
a:hover { color: var(--rx-navy); }

/* 3. Divi-resets binnen de Riskx-secties (de opmaak staat inline in de code-modules) */
.rx-section, .rx-section * { box-sizing: border-box; }
.rx-section.et_pb_section { padding: 0 !important; }
.rx-section .et_pb_row { width: 100% !important; max-width: 100% !important; padding: 0 !important; }
.rx-section .et_pb_column { padding: 0 !important; margin: 0 !important; width: 100% !important; }
.rx-section .et_pb_module { margin: 0 !important; }
.rx-section .et_pb_code_inner { line-height: normal; }
.rx-section h1, .rx-section h2, .rx-section h3, .rx-section h4 { padding: 0; font-family: 'Poppins', sans-serif; }
.rx-section p { padding: 0; }
.rx-section a, .rx-section a:hover { text-decoration: none; }
.rx-section img { max-width: 100%; }
.rx-section input, .rx-section textarea, .rx-section button { font-family: 'Poppins', sans-serif; }
.rx-section input:focus, .rx-section textarea:focus { outline: none; border-color: var(--rx-groen) !important; }
.rx-section button { cursor: pointer; }
.rx-section .rx-sec { width: 100%; }

/* 4. Hoverstaten (uit het ontwerp) */
.rx-hv-1:hover { background: #1E8E5A !important; }
.rx-hv-2:hover { border-color: #2A9D6A !important; }
.rx-hv-3:hover { background: #1B2A53 !important; color: #FFFFFF !important; }
.rx-hv-4:hover { background: #2A9D6A !important; }

/* 5. Header (Theme Builder, layouts/riskx-header.json) */
.rx-header { box-shadow: none; border-bottom: 1px solid var(--rx-rand); z-index: 50; }
.rx-header .et_pb_row { display: flex; align-items: center; min-height: 78px; }
.rx-header .et_pb_column { margin: 0 !important; }
.rx-header .rx-logo img { height: 54px; width: auto; }
.rx-header .rx-menu .et_pb_menu__menu > nav > ul > li > a { font-size: 15px; font-weight: 500; color: var(--rx-tekst); padding-bottom: 0; }
.rx-header .rx-menu .et_pb_menu__menu > nav > ul > li > a:hover { color: var(--rx-navy); opacity: 1; }
.rx-header .rx-menu .et_pb_menu__menu > nav > ul > li.current-menu-item > a { color: var(--rx-navy); font-weight: 600; }
.rx-header .rx-menu .et_pb_menu__menu > nav > ul > li > ul { border-top: none; border: 1px solid var(--rx-rand); border-radius: 14px; padding: 8px; box-shadow: none; }
.rx-header .rx-menu .et_pb_menu__menu > nav > ul > li > ul li a { border-radius: 10px; padding: 11px 14px; width: auto; font-weight: 500; }
.rx-header .rx-menu .et_pb_menu__menu > nav > ul > li > ul li a:hover { background: var(--rx-grijs); opacity: 1; }
.rx-header .rx-menu .et_mobile_menu { border-top: 1px solid var(--rx-rand); box-shadow: none; }
.rx-header .rx-menu .et_mobile_menu li a { color: var(--rx-navy); font-weight: 500; }
.rx-header .mobile_menu_bar:before { color: var(--rx-navy); }
.rx-header .rx-hdr-right a { text-decoration: none; }

/* 6. Responsive — het ontwerp is op 1240px gemaakt */
@media (max-width: 1100px) {
    .rx-header .rx-phone { display: none !important; }
    .rx-section h1 { font-size: 44px !important; }
    .rx-section h2 { font-size: 34px !important; }
}
@media (max-width: 980px) {
    .rx-header .et_pb_row { flex-wrap: wrap; padding-left: 20px !important; padding-right: 20px !important; }
    .rx-header .et_pb_column:nth-child(1) { width: 40% !important; }
    .rx-header .et_pb_column:nth-child(3) { width: 45% !important; margin-left: auto !important; }
    .rx-header .et_pb_column:nth-child(2) { width: 15% !important; order: 3; }
    .rx-header .rx-menu .et_pb_menu__wrap { justify-content: flex-end; }
}
@media (max-width: 767px) {
    .rx-section .rx-wrap { padding-left: 20px !important; padding-right: 20px !important; }
    .rx-section .rx-pt { padding-top: 60px !important; }
    .rx-section .rx-pb { padding-bottom: 60px !important; }
    .rx-section h1 { font-size: 36px !important; line-height: 1.12 !important; }
    .rx-section h1 span { font-size: 21px !important; }
    .rx-section h2 { font-size: 30px !important; }
    .rx-section p[style*="font-size: 21px"], .rx-section p[style*="font-size: 20px"] { font-size: 18px !important; }
    .rx-section [style*="padding: 64px"] { padding: 32px 24px !important; }
    .rx-section [style*="padding: 56px 64px"] { padding: 36px 28px !important; }
    .rx-section [style*="padding: 40px 44px"] { padding: 28px 24px !important; }
    .rx-section [style*="padding: 36px"] { padding: 26px !important; }
    .rx-section [style*="padding: 32px"] { padding: 24px !important; }
    .rx-section [style*="grid-template-columns: 1fr 1fr 1fr"] { grid-template-columns: 1fr !important; }
    .rx-section [style*="grid-template-columns: 56px 1fr"] { grid-template-columns: 44px 1fr !important; gap: 14px !important; }
    .rx-section [style*="riskx-x-diap"] { display: none; }
    .rx-header .rx-logo img { height: 40px; }
    .rx-header .rx-hdr-right a[href^="/contact"] { padding: 10px 14px !important; font-size: 13px !important; }
}
