/* Coaching-onderdeel. Wordt alleen geladen op de keuzepagina en de coachingpagina's.
   Zoveel mogelijk wordt de bestaande opmaak van de scholingssite hergebruikt (app.css). */

/* ---------- Keuzepagina ---------- */
.page-keuze .keuze { display: flex; min-height: calc(100vh - 170px); }
.page-keuze .keuze-tile { position: relative; flex: 1 1 50%; display: flex; align-items: flex-end; overflow: hidden; color: #fff; background: #4b3671; }
.page-keuze .keuze-bg { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-size: cover; background-position: center; transition: transform .8s ease; }
.page-keuze .keuze-tile:hover .keuze-bg { transform: scale(1.04); }
.page-keuze .keuze-tile:before { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1;
	background: linear-gradient(0deg, rgba(50,29,88,.92) 0%, rgba(75,54,113,.45) 55%, rgba(75,54,113,.10) 100%); }
.page-keuze .keuze-tile + .keuze-tile { border-left: 6px solid #fff; }
.page-keuze .keuze-inner { position: relative; z-index: 2; padding: 60px 10% 80px; max-width: 680px; }
.page-keuze .keuze-label { display: block; color: #48bcbc; font-weight: 600; font-size: 16pt; text-transform: uppercase; letter-spacing: .5px; }
.page-keuze .keuze h2 { color: #fff; font-size: 36pt; font-weight: 800; margin: 8px 0 18px 0; line-height: 1.15; }
.page-keuze .keuze p { color: #fff; font-size: 14pt; margin-bottom: 28px; }
.page-keuze .keuze .btn { font-weight: 800; padding: .7em 1.2em !important; font-size: 14pt !important; }
.page-keuze .navbar-collapse, .page-keuze .hamburger { display: none !important; }
.page-keuze footer.footer { display: none; }
@media (max-width: 767px) {
	.page-keuze .keuze { flex-direction: column; min-height: 0; }
	.page-keuze .keuze-tile { min-height: 70vw; }
	.page-keuze .keuze-tile + .keuze-tile { border-left: 0; border-top: 6px solid #fff; }
	.page-keuze .keuze h2 { font-size: 24pt; }
	.page-keuze .keuze-inner { padding: 40px 24px 40px; }
}

/* ---------- Coaching ---------- */
/* Foto-banner op de home is lichter dan die van scholing: verloop links voor leesbaarheid */
.section-coaching .vc-banner:not(.with-gradient) .vc-banner-inner { background: linear-gradient(90deg, rgba(50,29,88,.78) 0%, rgba(75,54,113,.35) 55%, rgba(75,54,113,0) 100%); }
.section-coaching .vc-banner h1 { max-width: 60%; }
@media (max-width: 767px) { .section-coaching .vc-banner h1 { max-width: 100%; font-size: 30pt; } }

/* Knop naar de andere sectie: laatste li van het menu, hangt als knop aan de bovenrand boven het laatste menu-item
   (alleen links- en rechtsonder afgerond), rechts uitgelijnd met het einde van de container (15px padding buiten de menutekst). */
body .navbar.main-navbar .nav li.navbar-switch-item { position: relative; width: 0; padding: 0; margin: 0; }
body .navbar.main-navbar .nav li.navbar-switch-item a,
body .navbar.main-navbar .nav li.navbar-switch-item:hover a { position: absolute; top: -45px; right: -15px; display: block; width: max-content; white-space: nowrap;
	background: #4b3671; color: #fff; font-size: 11pt; font-weight: 600; text-transform: none; line-height: 15px; padding: 9px 20px 10px 20px; border-radius: 0 0 14px 14px; transition: background .2s; }
body .navbar.main-navbar .nav li.navbar-switch-item a:hover { background: #d24e97; color: #fff; }
body .navbar.main-navbar .nav li.navbar-switch-item i { font-size: 9pt; margin-left: 4px; }
@media (min-width: 1200px) { body .navbar.main-navbar .nav li.navbar-switch-item a, body .navbar.main-navbar .nav li.navbar-switch-item:hover a, body .navbar.main-navbar .nav li.navbar-switch-item a:hover { top: -70px; } }
@media (max-width: 991px) {
	/* In het uitklapmenu: zelfde opmaak en uitlijning als de gewone menu-items (de uitlijning komt uit het thema) */
	body .navbar.main-navbar .nav li.navbar-switch-item { width: 100%; padding: 15px; margin: 0; }
	body .navbar.main-navbar .nav li.navbar-switch-item a,
	body .navbar.main-navbar .nav li.navbar-switch-item:hover a { position: static; display: block; width: auto; white-space: normal; background: none; color: #4b3671; font-size: 13pt; font-weight: 800; text-transform: uppercase; line-height: inherit; padding: 0 10px; border-radius: 0; }
	body .navbar.main-navbar .nav li.navbar-switch-item a:hover { background: none; color: #d24e97; }
}
@media (max-width: 767px) {
	body .navbar.main-navbar .nav li.navbar-switch-item a, body .navbar.main-navbar .nav li.navbar-switch-item:hover a { padding: 0 12px; }
}

/* Het coachingmenu heeft iets meer items dan het scholingsmenu: iets minder ruimte ertussen dan 40px */
@media (min-width: 1200px) {
	.section-coaching .navbar.main-navbar .nav li a { padding: 0 13px; }
}
@media (min-width: 992px) and (max-width: 1199px) {
	.section-coaching .navbar.main-navbar .nav li a { padding: 0 10px; font-size: 11pt; }
}

/* Afbeeldingen, kaarten en tabellen in lopende tekst */
.section-coaching .wpb_single_image img { max-width: 100%; height: auto; }
/* Kaarten: zelfde opmaak als het cursusaanbod, maar niet hoger dan de inhoud, met meer ruimte ertussen */
.section-coaching .row-newslist { margin-left: -25px; margin-right: -25px; }
.section-coaching .col-simple { padding-left: 25px; padding-right: 25px; margin-bottom: 50px; }
.section-coaching .col-simple .col-class-inner { height: 100%; position: relative; padding-bottom: 20px; display: flex; flex-direction: column; }
.section-coaching .col-simple p { height: auto; min-height: 0; margin-bottom: 0; flex: 1 1 auto; }
.section-coaching .col-simple .btn { margin: 0; }
.section-coaching .col-simple .kaart-knop { margin-top: 30px; margin-bottom: -35px; }
.section-coaching .col-simple.kaart p { min-height: 90px; }
.section-coaching .col-simple.stap .col-class-inner { padding-bottom: 30px; }
.section-coaching .col-simple h4 { height: auto; min-height: 25px; margin-top: 4px; }
.section-coaching .col-simple.stap .col-class-inner { padding-top: 26px; }
.section-coaching .stap-nr { display: block; width: 42px; height: 42px; line-height: 42px; border-radius: 50%; background: #4b3671; color: #fff; text-align: center; font-weight: 800; font-size: 15pt; margin-bottom: 14px; }
.section-coaching .card.mb-5 { margin-bottom: 4rem !important; }
.section-coaching .table td, .section-coaching .table th { vertical-align: middle; padding: .9rem .75rem; }
.section-coaching .table .btn-xs { white-space: nowrap; }
.section-coaching .table tbody tr { height: 68px; }
.section-coaching .entry-content table.table { margin-bottom: 0; }
.section-coaching .entry-content p.knop { margin-top: 30px; }
.section-coaching .vc_row .wpb_text_column h2 { margin-top: 20px; }

/* Portret op de home: even hoog als het tekstblok, bovenkant gelijk met de tekst, onderkant sluit aan op de lichtpaarse rij */
.welkom-rij { margin-bottom: 0 !important; }
.welkom-rij .wpb_content_element, .welkom-rij .wpb_text_column { margin-bottom: 0; }
.welkom-rij .vc_col-sm-7 .wpb_text_column { padding-bottom: 40px; }
.portret-fade img { display: block; width: 100%; height: auto; max-width: 440px; margin-left: auto; }
@media (min-width: 768px) {
	.welkom-rij.vc_row { display: flex; align-items: stretch; }
	.welkom-rij.vc_row:before, .welkom-rij.vc_row:after { display: none; }
	.welkom-rij .vc_col-sm-5 { position: relative; }
	.welkom-rij .portret-fade { position: absolute; top: 0; bottom: 0; left: 15px; right: 15px; }
	.welkom-rij .portret-fade img { width: 100%; height: 100%; max-width: 420px; margin-left: auto; object-fit: cover; object-position: center top; }
}

/* Formulieren: zelfde opmaak als het contactformulier van scholing */
.coach-form .zed-hp { position: absolute; left: -9999px; height: 0; overflow: hidden; }
.coach-melding { padding: 14px 18px; margin-bottom: 20px; font-weight: 600; border-left: 5px solid #48bcbc; background: #fff; }
.coach-melding.fout { border-left-color: #d24e97; }
.section-coaching .wpcf7-list-item-label { font-weight: 400; }

/* Footer: menu in één kolom (alleen hoofdniveau), leesbare toestemmingstekst bij de nieuwsbrief */
.section-coaching footer.footer .widget_nav_menu ul { column-count: 1; }
.section-coaching footer.footer .widget_nav_menu .sub-menu { display: none; }
.section-coaching footer.footer .wpcf7-list-item { margin: 0; }
.section-coaching footer.footer .wpcf7-list-item-label, .section-coaching footer.footer .wpcf7-list-item-label a { color: #fff; font-size: 10pt; }
.section-coaching footer.footer .wpcf7-list-item-label a { text-decoration: underline; }
.section-coaching footer.footer .wpcf7-list-item input { margin-right: 6px; }
.section-coaching footer.footer .wpcf7-not-valid-tip { color: #ffd1e8; }

/* Tekstlinks in de footer: zelfde stijl als "Lees meer" in de footer van scholing */
.section-coaching footer.footer .textwidget a:not([href^="mailto:"]) { border-bottom: 1px solid #fff; padding-bottom: 5px; font-weight: 600; }
.section-coaching footer.footer .textwidget .wpcf7 a { border-bottom: 0; padding-bottom: 0; font-weight: inherit; }

/* Wandeling: specs als lichtpaarse badges */
.coach-badges { margin: 22px 0 18px 0; }
.coach-badge { display: inline-flex; align-items: center; background: #e5e7f2; color: #4b3671; font-weight: 600; font-size: 12pt; border-radius: 30px; padding: 9px 20px 9px 14px; margin: 0 10px 10px 0; line-height: 1.2; }
.coach-badge i { color: #4abdbd; margin-right: 10px; font-size: 14pt; }
.coach-badge i.fa-border { border: 1px solid #4abdbd; border-radius: 500px; width: 24px; height: 24px; font-size: 9pt; text-align: center; padding: 6px 0; margin-right: 10px; }

/* Banners met titel op een foto: bredere en sterkere witte vervaging zodat titel en subtitel goed leesbaar blijven */
.section-coaching .vc-banner.with-gradient .vc-banner-inner {
	background: linear-gradient(90deg, rgba(255,255,255,.97) 0%, rgba(255,255,255,.94) 38%, rgba(255,255,255,.65) 58%, rgba(255,255,255,0) 82%);
}
.section-coaching .vc-banner.with-gradient h1, .section-coaching .vc-banner.with-gradient h3 { max-width: 52%; }
@media (max-width: 767px) {
	.section-coaching .vc-banner.with-gradient .vc-banner-inner { background: rgba(255,255,255,.88); }
	.section-coaching .vc-banner.with-gradient h1, .section-coaching .vc-banner.with-gradient h3 { max-width: 100%; }
}
/* Subtitel (turquoise) iets donkerder voor betere leesbaarheid op de foto-banners */
.section-coaching .vc-banner.with-gradient h3 { color: #2f9d9d !important; }

/* Pagina's met tekst links en foto rechts: 180px tussen tekst en foto (gemeten tussen tekstrand en foto) */
@media (min-width: 992px) {
	.tekst-foto > .vc_column_container.vc_col-sm-8 > .vc_column-inner { padding-right: 172px; }
}

/* Tweede knop in de hero (wit met paarse tekst), naast de eerste */
.section-coaching .vc-banner .text-button { display: flex; flex-wrap: wrap; }
.section-coaching .vc-banner .text-button .btn { margin: 0 14px 12px 0; }
.section-coaching .vc-banner .btn.btn-second, .section-coaching .vc-banner .btn.btn-second span { background: #fff; border-color: #fff; color: #4b3671 !important; }
.section-coaching .vc-banner .btn.btn-second:hover, .section-coaching .vc-banner .btn.btn-second:hover span { background: #ecebef; border-color: #ecebef; color: #4b3671 !important; }

/* Nieuwsbrief in de footer: zichtbare verzendknop onder het invoerveld */
footer.footer input.btn.btn-newsletter, footer.footer .btn-newsletter { background: #fff !important; border-color: #fff; color: #4b3671 !important; font-weight: 800; text-transform: uppercase; font-size: 11pt; margin-top: 12px; padding: .5em 1.2em; border-radius: 30px; }
footer.footer input.btn.btn-newsletter:hover { background: #ecebef !important; border-color: #ecebef; color: #4b3671 !important; }
footer.footer .wpcf7 .ajax-loader, footer.footer .wpcf7-spinner { margin-left: 8px; }

/* Meldingen van de formulieren in de footer: klein en goed leesbaar op de paarse achtergrond */
footer.footer .wpcf7 form .wpcf7-response-output { margin: 14px 0 0 0; padding: 8px 12px; font-size: 10.5pt; line-height: 1.4; color: #fff; background: rgba(255,255,255,.08); border: 1px solid #ffd1e8; }
footer.footer .wpcf7 form.sent .wpcf7-response-output { border-color: #48bcbc; }
footer.footer .wpcf7 form.invalid .wpcf7-response-output, footer.footer .wpcf7 form.failed .wpcf7-response-output, footer.footer .wpcf7 form.unaccepted .wpcf7-response-output { border-color: #ffd1e8; }
footer.footer .wpcf7-not-valid-tip { font-size: 10.5pt; margin-top: 6px; color: #ffd1e8; }

/* Nieuwsbrief in de footer: compacte ruimte tussen het privacyvakje en de knop */
footer.footer .wpcf7 form br { display: none; }
footer.footer .wpcf7 form p { margin: 0; line-height: 1; }
footer.footer .wpcf7 form .mt-2 { margin-top: 8px !important; line-height: 1.4; }
footer.footer input.btn.btn-newsletter { margin-top: 8px; }

/* Ingesloten kaart op de contactpagina's (scholing en coaching) */
.custom-map.custom-map-embed { margin: 0; height: auto; }
.custom-map-embed iframe { display: block; width: 100%; height: 450px; border: 0; }
@media (max-width: 767px) { .custom-map-embed iframe { height: 320px; } }
