/* Consultancy – breekpunten zoals op de live site: tablet t/m 1024px, mobiel t/m 767px. */
.consultancy-page { --cons-yellow: #ffe605; --cons-dark: #1b252f; --cons-display: "Archivo", var(--up-font-heading); --cons-sans: "Montserrat", var(--up-font-body); }

/* Knoppen: hoekig, in hoofdletters; groeien bij hover zoals op de live site. */
.consultancy-btn { --bs-btn-border-radius: 0; --bs-btn-border-width: 0; --bs-btn-color: var(--cons-yellow); --bs-btn-font-size: 18px; --bs-btn-font-weight: 800; --bs-btn-padding-x: 55px; --bs-btn-padding-y: 20px; --bs-btn-hover-bg: var(--cons-dark); --bs-btn-hover-color: #f8f812; --bs-btn-active-bg: var(--cons-dark); --bs-btn-active-color: #f8f812; font-family: var(--cons-display); text-transform: uppercase; transition: transform .3s; }
.consultancy-btn:hover, .consultancy-btn:focus-visible { transform: scale(1.1); }
.consultancy-btn--yellow { --bs-btn-bg: var(--cons-yellow); --bs-btn-border-color: #f8f812; --bs-btn-border-width: 1px; --bs-btn-color: var(--cons-dark); --bs-btn-hover-border-color: #f8f812; --bs-btn-active-border-color: #f8f812; }

/* Titel met uitklapblokken */
.consultancy-intro { background: #fcfcfc; padding: 0 10%; }
.consultancy-intro__inner { margin: 0 auto; max-width: 820px; padding: 5% 0; }
.consultancy-intro__title { color: var(--up-button); font-family: var(--cons-display); font-size: 65px; font-weight: 800; line-height: 1; margin: 0 0 70px; text-align: center; text-transform: uppercase; }
.consultancy-toggles { border-top: 3px solid var(--up-button); }
.consultancy-toggle { border-bottom: 3px solid var(--up-button); }
.consultancy-toggle + .consultancy-toggle { margin-top: 16px; }
.consultancy-toggle__heading { margin: 0; }
.consultancy-toggle__button { background: none; border: 0; color: var(--cons-yellow); display: block; font-family: var(--cons-display); font-size: 34px; font-weight: 800; letter-spacing: -.45px; line-height: 1.2; padding: 35px 0; text-align: left; text-transform: uppercase; width: 100%; }
.consultancy-toggle__button.collapsed { color: var(--up-button); }
.consultancy-toggle__icon { -webkit-text-stroke: 2.5px; float: right; font-size: 24px; letter-spacing: 0; line-height: 26px; position: relative; text-align: center; top: 1px; visibility: hidden; width: 26px; }
.consultancy-toggle__button.collapsed .consultancy-toggle__icon { visibility: visible; }
.consultancy-toggle__body { color: #54595f; font-family: var(--cons-sans); font-size: 18px; line-height: 1.2; padding: 15px; }
.consultancy-toggle__body p { margin-bottom: 20px; }

/* Onze consultants: tekst links, foto rechts over de volle hoogte. */
.consultancy-team { display: flex; min-height: 100vh; }
.consultancy-team__content { display: flex; flex: 0 0 48%; flex-direction: column; justify-content: center; min-width: 0; padding: 10px; }
.consultancy-team__title { color: var(--up-button); font-family: var(--cons-display); font-size: 47px; font-weight: 900; line-height: 1; margin: 0 0 127px; text-align: center; text-transform: uppercase; width: 98.965%; }
.consultancy-team__text { color: var(--up-button); font-family: var(--cons-sans); font-size: 26px; font-weight: 700; line-height: 38px; padding: 0 8%; text-align: center; }
.consultancy-team__text p { margin: 0 0 78px; }
.consultancy-team__text p:last-child { margin-bottom: 20px; }
.consultancy-team__action { margin-top: 100px; text-align: center; }
.consultancy-team__photo { flex: 1 1 0; position: relative; }
.consultancy-team__photo img { height: 100%; inset: 0; object-fit: cover; object-position: right top; position: absolute; width: 100%; }

/* Wil jij ons versterken? */
.consultancy-join { align-items: center; column-gap: 10%; display: flex; justify-content: space-between; padding-left: 12%; }
.consultancy-join__content { display: flex; flex: 1 0 521px; flex-direction: column; gap: 20px; justify-content: center; }
.consultancy-join__eyebrow { color: var(--up-button); font-family: var(--cons-sans); font-size: 22px; line-height: 26px; margin: 0; }
.consultancy-join__title { color: var(--up-button); font-family: var(--cons-display); font-size: 65px; font-weight: 800; line-height: 1; margin: 0; text-transform: uppercase; }
.consultancy-join__photos { display: flex; flex: 0 1 55%; flex-direction: column; gap: 20px; }
.consultancy-join__photo { display: block; width: 65.349%; }
.consultancy-join__photo--portrait { align-self: flex-end; margin-top: -181px; width: 53%; }

/* Blok met foto en verwijzing naar de medewerkers; de foto zoomt in bij hover. */
.consultancy-cta { padding: 10px; }
.consultancy-cta__box { margin: 0 auto; max-width: 1320px; }
.consultancy-cta__media { height: 200px; overflow: hidden; position: relative; }
.consultancy-cta__media img { display: block; height: 100%; object-fit: cover; transition: transform 1.5s; width: 100%; }
.consultancy-cta__media::after { background: rgba(0, 0, 0, .3); content: ""; inset: 0; opacity: 0; position: absolute; transition: opacity 1.5s; }
.consultancy-cta__box:hover .consultancy-cta__media img { transform: scale(1.2); }
.consultancy-cta__box:hover .consultancy-cta__media::after { opacity: 1; }
.consultancy-cta__content { background: #f9fafa; padding: 35px; text-align: center; }
.consultancy-cta__title { color: #3f444b; font-size: 23px; margin: 0 0 15px; }
.consultancy-cta__text { color: #3f444b; margin: 0 0 15px; }
.consultancy-cta__button { --bs-btn-border-radius: 3px; --bs-btn-border-width: 2px; --bs-btn-color: var(--cons-yellow); --bs-btn-font-size: 15px; --bs-btn-padding-x: 24px; --bs-btn-padding-y: 12px; --bs-btn-hover-bg: var(--up-button); --bs-btn-hover-border-color: var(--up-button); --bs-btn-hover-color: var(--cons-yellow); --bs-btn-active-bg: var(--up-button); --bs-btn-active-border-color: var(--up-button); --bs-btn-active-color: var(--cons-yellow); text-transform: uppercase; }

@media (max-width: 1024.98px) {
  .consultancy-intro { padding: 0 5%; }
  .consultancy-intro__inner { padding: 10% 0; }
  .consultancy-intro__title { font-size: 44px; }
  .consultancy-toggle__button { font-size: 26px; }
  .consultancy-team__content { padding: 13px; }
  .consultancy-team__title { font-size: 29px; margin-bottom: 147px; }
  .consultancy-team__text { font-size: 20px; line-height: 1.2; padding: 0; }
  .consultancy-team__text p { margin-bottom: 64px; }
  .consultancy-team__action { margin-top: 120px; }
  .consultancy-team .consultancy-btn { --bs-btn-padding-x: 25px; --bs-btn-padding-y: 15px; }
  .consultancy-team__photo img { object-position: center; }
  .consultancy-join { align-items: stretch; column-gap: 5%; padding-left: 5%; }
  .consultancy-join__content { flex-basis: 50%; }
  .consultancy-join__eyebrow { font-size: 17px; }
  .consultancy-join__title { font-size: 36px; }
  .consultancy-join .consultancy-btn { --bs-btn-padding-x: 35px; --bs-btn-padding-y: 15px; }
  .consultancy-join__photos { flex-basis: 50%; }
  .consultancy-join__photo--portrait { margin-top: -109px; }
}

@media (max-width: 767.98px) {
  .consultancy-btn { --bs-btn-font-size: 16px; }
  .consultancy-intro__inner { padding: 20% 0; }
  .consultancy-intro__title { font-size: 32px; margin-bottom: 30px; }
  .consultancy-toggle__button { font-size: 20px; line-height: 1.3; }
  .consultancy-team { flex-wrap: wrap; }
  .consultancy-team__content { flex-basis: 100%; padding: 80px 20px; }
  .consultancy-team__title { font-size: min(41px, 10.6vw); }
  .consultancy-team__text { padding: 0 5%; }
  .consultancy-team__photo { flex-basis: 100%; min-height: 350px; }
  .consultancy-join { flex-direction: column-reverse; gap: 37px; padding: 0 0 15%; }
  .consultancy-join__content { flex: 0 0 auto; padding: 0 5%; }
  .consultancy-join__eyebrow { font-size: 16px; }
  .consultancy-join__title { font-size: 32px; }
  .consultancy-join__photos { flex: 0 0 auto; }
  .consultancy-join__photo--portrait { margin-top: -105px; }
}
