/*
Theme Name: MCS Pagina-styling (los enqueued)
Doel: Over MCS (page-over-mcs.php) + Contact (page-contact.php), incl. Ninja Form.
Eigen bestand los van style.css — voorkomt botsing met parallelle agents.
Hergebruikt globale helpers (.mcs-container/.mcs-btn/.mcs-breadcrumb) + :root vars.
*/

/* Icoon-grootte normaliseren (globaal staat material-symbols op 48px) */
.mcs-over .material-symbols-outlined,
.mcs-contact .material-symbols-outlined{font-size:1em;line-height:1;vertical-align:middle;}

/* =====================================================================
   OVER MCS
   ===================================================================== */
.mcs-over-hero{position:relative;background:#f3f3f3;border-bottom:1px solid var(--mcs-outline);padding:32px 0 80px;overflow:hidden;}
.mcs-over-hero__crumb{margin-bottom:48px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;}
.mcs-over-hero__content{max-width:900px;position:relative;z-index:1;}
.mcs-over-hero__title{font-family:var(--mcs-font-head);font-size:64px;line-height:72px;letter-spacing:-.02em;font-weight:700;color:var(--mcs-navy);margin:0 0 24px;}
.mcs-over-hero__intro{font-family:var(--mcs-font-body);font-size:20px;line-height:32px;color:var(--mcs-on-surface-variant);max-width:42rem;margin:0;}
.mcs-over-hero__graphic{position:absolute;right:0;bottom:0;width:50%;height:100%;pointer-events:none;opacity:.05;background:linear-gradient(135deg,transparent 49.7%,var(--mcs-navy) 49.7%);}
@media(max-width:767px){.mcs-over-hero__graphic{display:none;}}

.mcs-over-story{background:var(--mcs-surface);padding:64px 0;}
.mcs-over-story__grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.mcs-over-story__media{border:1px solid var(--mcs-outline);border-radius:2px;overflow:hidden;aspect-ratio:16/9;background:#e8e8e8;}
.mcs-over-story__media img{width:100%!important;height:100%!important;object-fit:cover;display:block;filter:grayscale(1);transition:filter .6s;}
.mcs-over-story__media:hover img{filter:grayscale(0);}
.mcs-over-story__head{display:flex;align-items:center;gap:12px;margin-bottom:16px;}
.mcs-over-story__head .material-symbols-outlined{font-size:30px;color:var(--mcs-yellow);}
.mcs-over-story__head h2{font-family:var(--mcs-font-head);font-size:32px;line-height:40px;font-weight:600;color:var(--mcs-navy);margin:0;}
.mcs-over-story__text p{font-family:var(--mcs-font-body);font-size:16px;line-height:26px;color:var(--mcs-on-surface-variant);margin:0 0 16px;}

.mcs-over-philosophy{background:var(--mcs-surface-dim);border-top:1px solid var(--mcs-outline);border-bottom:1px solid var(--mcs-outline);padding:64px 0;}
.mcs-over-philosophy__head{text-align:center;max-width:48rem;margin:0 auto 48px;}
.mcs-over-philosophy__head h2{font-family:var(--mcs-font-head);font-size:48px;line-height:56px;font-weight:700;color:var(--mcs-navy);margin:0 0 16px;}
.mcs-over-philosophy__head p{font-family:var(--mcs-font-body);font-size:20px;line-height:32px;color:var(--mcs-on-surface-variant);margin:0;}
.mcs-over-philosophy__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.mcs-philo-card{background:var(--mcs-surface);border:1px solid var(--mcs-outline);border-radius:2px;padding:32px;transition:border-color .3s;display:flex;flex-direction:column;}
.mcs-philo-card:hover{border-color:var(--mcs-navy);}
.mcs-philo-card__icon{width:48px;height:48px;background:var(--mcs-navy);color:#fff;display:flex;align-items:center;justify-content:center;border-radius:2px;font-size:24px;margin-bottom:24px;}
.mcs-philo-card h3{font-family:var(--mcs-font-head);font-size:24px;line-height:32px;font-weight:600;color:var(--mcs-navy);margin:0 0 12px;}
.mcs-philo-card p{font-family:var(--mcs-font-body);font-size:16px;line-height:26px;color:var(--mcs-on-surface-variant);margin:0;}

.mcs-over-partners{background:var(--mcs-surface);padding:64px 0;}
.mcs-over-partners__head{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:48px;}
.mcs-over-partners__head h2{font-family:var(--mcs-font-head);font-size:32px;line-height:40px;font-weight:600;color:var(--mcs-navy);margin:0 0 8px;}
.mcs-over-partners__head p{font-family:var(--mcs-font-body);font-size:16px;color:var(--mcs-on-surface-variant);margin:0;}
.mcs-over-partners__rule{flex:1;height:1px;background:var(--mcs-outline);}
@media(max-width:767px){.mcs-over-partners__rule{display:none;}}
.mcs-over-partners__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.mcs-partner-block{background:#f3f3f3;border:1px solid var(--mcs-outline);aspect-ratio:3/2;display:flex;align-items:center;justify-content:center;padding:24px;filter:grayscale(1);transition:all .3s;}
.mcs-partner-block:hover{filter:grayscale(0);background:var(--mcs-surface);}
.mcs-partner-block span{font-family:var(--mcs-font-head);font-size:22px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--mcs-navy);}

.mcs-over-team{background:var(--mcs-navy-deep);padding:64px 0;}
.mcs-over-team__box{display:grid;grid-template-columns:5fr 7fr;border:1px solid #4b6076;border-radius:2px;overflow:hidden;}
.mcs-over-team__text{padding:48px;display:flex;flex-direction:column;justify-content:center;background:var(--mcs-navy);}
.mcs-over-team__badge{display:inline-flex;align-items:center;gap:6px;background:#4b6076;color:#fff;padding:4px 12px;border-radius:2px;width:fit-content;margin-bottom:24px;font-family:var(--mcs-font-body);font-size:14px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;}
.mcs-over-team__badge .material-symbols-outlined{font-size:16px;}
.mcs-over-team__text h2{font-family:var(--mcs-font-head);font-size:42px;line-height:50px;font-weight:700;color:#fff;margin:0 0 16px;}
.mcs-over-team__text p{font-family:var(--mcs-font-body);font-size:16px;line-height:26px;color:rgba(255,255,255,.85);margin:0 0 32px;}
.mcs-over-team__link{display:inline-flex;align-items:center;gap:8px;font-family:var(--mcs-font-body);font-size:14px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--mcs-yellow);text-decoration:none;}
.mcs-over-team__link:hover{color:#fff;}
.mcs-over-team__media{position:relative;min-height:400px;}
.mcs-over-team__media img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;}

.mcs-over-cta{background:var(--mcs-navy-deep);border-top:1px solid #4b6076;padding:56px 0;}
.mcs-over-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;}
.mcs-over-cta__inner h2{font-family:var(--mcs-font-head);font-size:32px;line-height:40px;font-weight:600;color:#fff;margin:0 0 8px;}
.mcs-over-cta__inner p{font-family:var(--mcs-font-body);font-size:16px;color:rgba(255,255,255,.8);margin:0;}

@media(max-width:880px){
  .mcs-over-story__grid{grid-template-columns:1fr;}
  .mcs-over-philosophy__grid{grid-template-columns:1fr;}
  .mcs-over-partners__grid{grid-template-columns:repeat(2,1fr);}
  .mcs-over-team__box{grid-template-columns:1fr;}
  .mcs-over-team__media{min-height:280px;}
  .mcs-over-hero__title{font-size:40px;line-height:48px;}
  .mcs-over-philosophy__head h2{font-size:36px;line-height:44px;}
}

/* =====================================================================
   CONTACT
   ===================================================================== */
.mcs-contact-crumbbar{background:#f3f3f3;border-top:1px solid var(--mcs-outline);border-bottom:1px solid var(--mcs-outline);padding:16px 0;}
.mcs-contact-head{padding:64px 0 32px;}
.mcs-contact-head__title{font-family:var(--mcs-font-head);font-size:48px;line-height:56px;font-weight:700;color:var(--mcs-navy);margin:0 0 16px;}
.mcs-contact-head__intro{font-family:var(--mcs-font-body);font-size:20px;line-height:32px;color:var(--mcs-on-surface-variant);max-width:40rem;margin:0;}
.mcs-contact-main{padding-bottom:64px;}
.mcs-contact-grid{display:grid;grid-template-columns:7fr 5fr;gap:30px;align-items:start;}
.mcs-contact-formcard{background:#fff;border:1px solid var(--mcs-outline);border-radius:2px;padding:40px;}
.mcs-contact-formcard__title{font-family:var(--mcs-font-head);font-size:32px;line-height:40px;font-weight:600;color:var(--mcs-navy);margin:0 0 24px;padding-bottom:16px;border-bottom:1px solid var(--mcs-outline);}

.mcs-contact-side{display:flex;flex-direction:column;gap:32px;}
.mcs-contact-info{background:var(--mcs-surface-dim);border:1px solid var(--mcs-outline);border-radius:2px;padding:32px;}
.mcs-contact-info h3{font-family:var(--mcs-font-head);font-size:24px;line-height:32px;font-weight:600;color:var(--mcs-navy);margin:0 0 24px;}
.mcs-contact-info__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px;}
.mcs-contact-info__row{display:flex;align-items:center;gap:12px;font-family:var(--mcs-font-body);font-size:16px;color:var(--mcs-on-surface-variant);}
.mcs-contact-info__row--top{align-items:flex-start;}
.mcs-contact-info__row .material-symbols-outlined{color:var(--mcs-navy);font-size:22px;flex-shrink:0;}
.mcs-contact-info__row--top .material-symbols-outlined{margin-top:2px;}
.mcs-contact-info__label{display:block;font-weight:700;color:var(--mcs-navy);}
.mcs-contact-info__row a{color:var(--mcs-on-surface-variant);text-decoration:none;}
.mcs-contact-info__row a:hover{color:var(--mcs-navy);}
.mcs-contact-info__block{margin-top:32px;padding-top:24px;border-top:1px solid var(--mcs-outline);}
.mcs-contact-info__block h4{font-family:var(--mcs-font-body);font-size:14px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--mcs-navy);margin:0 0 12px;}
.mcs-contact-hours{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-family:var(--mcs-font-body);font-size:14px;color:var(--mcs-on-surface-variant);}
.mcs-contact-hours li{display:flex;justify-content:space-between;}
.mcs-contact-hours__val{font-weight:700;color:var(--mcs-navy);}
.mcs-contact-socials{display:flex;gap:16px;}
.mcs-contact-socials a{width:40px;height:40px;border-radius:50%;background:var(--mcs-navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;text-decoration:none;transition:all .2s;}
.mcs-contact-socials a:hover{background:var(--mcs-yellow);color:var(--mcs-navy-deep);}

.mcs-contact-map{position:relative;display:block;border:1px solid var(--mcs-outline);border-radius:2px;overflow:hidden;height:256px;}
.mcs-contact-map iframe{width:100%;height:100%;border:0;display:block;filter:grayscale(1);opacity:.85;transition:all .5s;pointer-events:none;}
.mcs-contact-map:hover iframe{filter:grayscale(0);opacity:1;}
.mcs-contact-map__cta{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);background:#fff;padding:8px 16px;border-radius:2px;box-shadow:0 1px 4px rgba(0,0,0,.15);display:inline-flex;align-items:center;gap:6px;font-family:var(--mcs-font-body);font-size:14px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--mcs-navy);white-space:nowrap;}
.mcs-contact-map__cta .material-symbols-outlined{font-size:18px;}

.mcs-contact-support{background:var(--mcs-navy);padding:56px 0;}
.mcs-contact-support__inner{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;}
.mcs-contact-support__inner h2{font-family:var(--mcs-font-head);font-size:32px;line-height:40px;font-weight:600;color:#fff;margin:0 0 8px;}
.mcs-contact-support__inner p{font-family:var(--mcs-font-body);font-size:16px;color:#b3c9e1;max-width:36rem;margin:0;}
.mcs-contact-support__btn{display:inline-flex;align-items:center;gap:8px;border:2px solid var(--mcs-yellow);color:var(--mcs-yellow);background:transparent;font-family:var(--mcs-font-body);font-size:14px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:14px 28px;border-radius:2px;text-decoration:none;transition:all .2s;white-space:nowrap;}
.mcs-contact-support__btn:hover{background:var(--mcs-yellow);color:var(--mcs-navy-deep);}

@media(max-width:880px){
  .mcs-contact-grid{grid-template-columns:1fr;}
  .mcs-contact-head__title{font-size:40px;line-height:48px;}
  .mcs-contact-formcard{padding:28px;}
}

/* ---------------------------------------------------------------------
   NINJA FORM (id 3) binnen .mcs-contact-form — underline-velden + gele CTA.
   Brede selectors zodat het werkt ongeacht NF-wrapper-classes.
   --------------------------------------------------------------------- */
.mcs-contact-form .nf-form-title,
.mcs-contact-form .nf-form-fields-required{display:none!important;}
.mcs-contact-form .nf-field-container{margin-bottom:22px!important;}
.mcs-contact-form .nf-field-label label,
.mcs-contact-form .nf-field-label .label{font-family:var(--mcs-font-body)!important;font-size:14px!important;font-weight:700!important;letter-spacing:.1em!important;text-transform:uppercase!important;color:var(--mcs-navy)!important;margin-bottom:6px!important;}
.mcs-contact-form input:not([type=button]):not([type=submit]),
.mcs-contact-form textarea,
.mcs-contact-form select{
  background:transparent!important;border:0!important;border-bottom:2px solid var(--mcs-navy)!important;border-radius:0!important;
  padding:8px 0!important;font-family:var(--mcs-font-body)!important;font-size:16px!important;color:var(--mcs-on-surface)!important;
  box-shadow:none!important;width:100%!important;height:auto!important;
}
.mcs-contact-form .listselect-wrap .nf-field-element{
  position:relative!important;background:#ffffff!important;border:1px solid var(--mcs-outline)!important;border-bottom:2px solid var(--mcs-navy)!important;
  box-shadow:none!important;border-radius:2px!important;
}
.mcs-contact-form .listselect-wrap .nf-field-element:after{
  content:"";position:absolute;right:14px;top:50%;width:9px;height:9px;
  border-right:2px solid var(--mcs-on-surface-variant);border-bottom:2px solid var(--mcs-on-surface-variant);
  transform:translateY(-65%) rotate(45deg);pointer-events:none;z-index:2!important;
}
.mcs-contact-form select.nf-element{
  -webkit-appearance:none!important;appearance:none!important;
  background:transparent!important;background-image:none!important;
  min-height:48px!important;padding:9px 44px 9px 12px!important;
  line-height:28px!important;cursor:pointer!important;
  border:0!important;border-radius:0!important;outline:0!important;
}
.mcs-contact-form select.nf-element::-ms-expand{display:none;}
.mcs-contact-form textarea{min-height:120px!important;resize:vertical!important;}
.mcs-contact-form input:focus,
.mcs-contact-form textarea:focus,
.mcs-contact-form select:focus{border-bottom-color:var(--mcs-yellow)!important;outline:none!important;}
.mcs-contact-form .nf-field-element input[type=button],
.mcs-contact-form input[type=submit]{
  background:var(--mcs-yellow)!important;color:var(--mcs-navy-deep)!important;border:0!important;border-radius:2px!important;
  font-family:var(--mcs-font-body)!important;font-weight:700!important;letter-spacing:.1em!important;text-transform:uppercase!important;
  padding:16px 36px!important;font-size:14px!important;width:auto!important;height:auto!important;cursor:pointer;transition:filter .2s;
}
.mcs-contact-form .nf-field-element input[type=button]:hover{filter:brightness(.95)!important;}
/* Twee-koloms velden (naam/bedrijf, email/telefoon): NF zet container_class
   op .nf-field-container; halve velden inline-block naast elkaar, volle blijven block. */
.mcs-contact-form .nf-field-container.mcs-half{display:inline-block!important;width:47.5%!important;vertical-align:top;}
.mcs-contact-form .nf-field-container.mcs-half-l{margin-right:4%!important;}
@media(max-width:600px){
  .mcs-contact-form .nf-field-container.mcs-half{display:block!important;width:100%!important;margin-right:0!important;}
}
.mcs-contact-form .nf-error-msg,
.mcs-contact-form .nf-error .nf-error-msg{color:var(--mcs-signal-red,#E73B5E)!important;font-size:13px!important;}
