/*
Theme Name: IAM Institute
Theme URI: https://iam-institute.eu
Author: IAM Institute
Description: Licht, zakelijk en warm thema voor IAM-Institute.eu. Zonder page builder of scroll-animaties, zodat de IAM-tools (Quick Scan, Cbw-Kompas, Vendorscan) zonder workarounds draaien. Homepage-inhoud en afbeeldingen zijn aan te passen via Weergave › Customizer › IAM Institute.
Version: 1.3.0
Requires at least: 6.0
Requires PHP: 7.4
License: Proprietary
Text Domain: iam-institute
*/

/* ---------- Fonts (zelf gehost, AVG-vriendelijk) ---------- */
@font-face{font-family:"Carlito";font-style:normal;font-weight:400;font-display:swap;src:url("assets/fonts/carlito-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Carlito";font-style:italic;font-weight:400;font-display:swap;src:url("assets/fonts/carlito-latin-400-italic.woff2") format("woff2")}
@font-face{font-family:"Carlito";font-style:normal;font-weight:700;font-display:swap;src:url("assets/fonts/carlito-latin-700-normal.woff2") format("woff2")}

/* ---------- Tokens ---------- */
:root{
  --iam-warm:#EE943C;      /* overschreven via Customizer */
  --iam-ink:#15171C;
  --iam-ink-2:#23262E;
  --iam-ink-3:#2E323B;
  --iam-text:#3A3D45;
  --iam-muted:#5C5F68;
  --iam-cream:#FBF3EA;
  --iam-cream-2:#EDE2D4;
  --iam-line:#E2DDD5;
  --iam-link:#9A3A06;
  --iam-link-hover:#6B2804;
  --iam-font:Calibri,Carlito,Arial,sans-serif;
  --iam-wrap:1280px;
}

/* ---------- Basis ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--iam-ink);font-family:var(--iam-font);font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:var(--iam-link)}
a:hover{color:var(--iam-link-hover)}
h1,h2,h3,h4{font-family:var(--iam-font);font-weight:700;color:inherit;margin:0 0 .5em;line-height:1.15}
p{margin:0 0 1em}
:focus-visible{outline:3px solid var(--iam-ink);outline-offset:3px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip-link:focus{position:fixed;left:16px;top:16px;z-index:1000;width:auto;height:auto;clip:auto;background:#fff;padding:10px 16px;border-radius:6px}
.iam-wrap{max-width:var(--iam-wrap);margin:0 auto;padding-left:24px;padding-right:24px}
.iam-section{padding:96px 0}
.iam-section--cream{background:var(--iam-cream)}
.iam-section--ink{background:var(--iam-ink);color:#fff}
.iam-h2{font-size:40px;line-height:1.15;max-width:760px;margin-bottom:48px}
.iam-section__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:48px}
.iam-section__head .iam-h2{margin-bottom:0}

/* ---------- Knoppen ---------- */
.iam-btn{display:inline-block;padding:15px 26px;border-radius:6px;font-weight:700;text-decoration:none;line-height:1.2;border:0;font-family:inherit;font-size:17px;cursor:pointer}
.iam-btn--ink{background:var(--iam-ink);color:#fff}
.iam-btn--ink:hover{background:#000;color:#fff}
.iam-btn--white{background:#fff;color:var(--iam-ink)}
.iam-btn--warm{background:var(--iam-warm);color:var(--iam-ink)}
.iam-btn--warm:hover{background:var(--iam-ink);color:#fff}
.iam-btn--white:hover{background:var(--iam-cream);color:var(--iam-ink)}
.iam-btn--sm{padding:11px 18px;font-size:16px}
.iam-link-arrow{font-weight:700;text-decoration:none}
.iam-link-arrow:hover{text-decoration:underline}
.iam-tag{display:inline-block;font-size:13px;font-weight:700;padding:3px 12px;border-radius:6px;line-height:1.5}
.iam-tag--ink{background:var(--iam-ink);color:#fff}
.iam-tag--warm{background:var(--iam-warm);color:var(--iam-ink)}
.iam-tag--white{background:#fff;color:var(--iam-ink)}

/* ---------- Header ---------- */
.iam-header{background:#fff;border-bottom:1px solid var(--iam-line);position:relative;z-index:20}
.iam-header__inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;padding-bottom:20px}
.iam-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--iam-ink)}
.iam-brand:hover{color:var(--iam-ink)}
.iam-brand__mark{width:44px;height:44px;border-radius:8px;background:var(--iam-ink);color:var(--iam-warm);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:17px;flex:0 0 44px}
.iam-brand__text{display:flex;flex-direction:column;line-height:1.15}
.iam-brand__name{font-weight:700;font-size:20px}
.iam-brand__sub{font-size:14px}
.iam-brand .custom-logo{max-height:52px;width:auto}
.iam-nav{display:flex;align-items:center;gap:24px}
.iam-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 26px}
.iam-nav li{position:relative}
.iam-nav ul a{color:var(--iam-ink);text-decoration:none;font-weight:700;font-size:17px}
.iam-nav ul a:hover,.iam-nav .current-menu-item>a,.iam-nav .current_page_item>a{text-decoration:underline;text-underline-offset:5px}
.iam-nav .sub-menu{display:none;position:absolute;left:-14px;top:100%;background:#fff;border-radius:8px;padding:10px 0;min-width:240px;box-shadow:0 8px 24px rgba(0,0,0,.12);flex-direction:column;gap:0}
.iam-nav .sub-menu a{display:block;padding:8px 18px;font-weight:400}
.iam-nav li:hover>.sub-menu,.iam-nav li:focus-within>.sub-menu{display:flex}
.iam-nav__toggle{display:none;background:var(--iam-ink);color:#fff;border:0;border-radius:6px;padding:10px 14px;font:inherit;font-weight:700;cursor:pointer}
@media (max-width:1080px){
  .iam-nav__toggle{display:inline-block}
  .iam-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;box-shadow:0 12px 24px rgba(0,0,0,.08);padding:8px 24px 24px;flex-direction:column;align-items:flex-start}
  .iam-nav.is-open{display:flex}
  .iam-nav ul{flex-direction:column;gap:0;width:100%}
  .iam-nav li a{display:block;padding:10px 0;border-bottom:1px solid var(--iam-line)}
  .iam-nav .sub-menu{display:flex;position:static;box-shadow:none;background:transparent;padding:0 0 0 16px;min-width:0}
  .iam-nav .sub-menu a{padding:8px 0}
}

/* ---------- Hero ---------- */
.iam-hero{background:var(--iam-warm);overflow:hidden}
.iam-hero__inner{display:flex;flex-wrap:wrap;align-items:flex-end;gap:32px;padding-top:56px}
.iam-hero__copy{flex:1 1 540px;min-width:0;padding-bottom:88px}
.iam-hero__copy .iam-tag{font-size:14px;padding:6px 14px;margin-bottom:20px}
.iam-hero h1{font-size:54px;line-height:1.12;margin:0 0 24px}
.iam-hero__lead{font-size:21px;max-width:560px;margin:0 0 36px}
.iam-hero__ctas{display:flex;flex-wrap:wrap;gap:12px}
.iam-hero__media{flex:1 1 520px;min-width:0;position:relative}
.iam-hero__media img{display:block;width:100%;height:620px;object-fit:cover;object-position:62% center}
.iam-hero__badge{position:absolute;left:0;bottom:32px;background:#fff;border-radius:10px;padding:18px 22px;max-width:290px}
.iam-hero__badge strong{display:block;font-size:28px;line-height:1}
.iam-hero__badge span{font-size:15px}
@media (max-width:700px){
  .iam-hero h1{font-size:40px}
  .iam-hero__copy{padding-bottom:40px}
  .iam-hero__media img{height:420px}
}

/* ---------- Actueel-balk ---------- */
.iam-news{background:var(--iam-ink);color:#fff}
.iam-news__inner{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;padding-top:16px;padding-bottom:16px;font-size:16px}
.iam-news a{color:var(--iam-warm);font-weight:700}

/* ---------- Klantreis ---------- */
.iam-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));border-top:1px solid #D9D3CA}
.iam-step{padding:28px 28px 32px 0;display:flex;flex-direction:column;gap:10px;color:var(--iam-ink);text-decoration:none}
.iam-step:hover{color:var(--iam-ink)}
.iam-step:hover .iam-step__title{text-decoration:underline}
.iam-step__num{font-size:44px;font-weight:700;line-height:1;color:var(--iam-warm)}
.iam-step__title{font-size:26px;font-weight:700}
.iam-step__text{color:var(--iam-muted);font-size:17px}

/* ---------- Tools ---------- */
.iam-tools__meta{font-size:16px;color:#C8C9CE}
.iam-tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}
.iam-tool{background:var(--iam-ink-2);border-radius:10px;padding:32px;display:flex;flex-direction:column;gap:14px;color:#fff}
.iam-tool h3{font-size:26px;margin:0}
.iam-tool p{margin:0;font-size:17px;color:#D7D8DC}
.iam-tool a.iam-link-arrow{margin-top:auto;color:var(--iam-warm)}
.iam-tool--featured{background:var(--iam-warm);color:var(--iam-ink)}
.iam-tool--featured p{color:var(--iam-ink)}
.iam-tool--featured .iam-tag{align-self:flex-start}
.iam-tool--featured .iam-btn{margin-top:auto;align-self:flex-start}

/* ---------- Opleiding ---------- */
.iam-course{display:flex;flex-wrap:wrap;gap:64px;align-items:center}
.iam-course__media{flex:1 1 440px;min-width:0;position:relative}
.iam-course__media img{display:block;width:100%;height:520px;object-fit:cover;object-position:55% center;border-radius:12px}
.iam-course__media figcaption{margin-top:10px;font-size:15px;color:var(--iam-muted)}
.iam-course__label{position:absolute;right:-16px;top:32px;background:var(--iam-warm);border-radius:10px;padding:16px 20px;font-weight:700;font-size:20px;line-height:1.15}
.iam-course__body{flex:1 1 520px;min-width:0}
.iam-course__body .iam-h2{margin-bottom:20px}
.iam-course__lead{color:var(--iam-text);font-size:19px;margin-bottom:28px}
.iam-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 32px;padding:0;list-style:none}
.iam-chips li{background:#fff;border-radius:6px;padding:7px 14px;font-size:16px}
.iam-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;padding:24px 0;border-top:1px solid #D9D3CA;border-bottom:1px solid #D9D3CA;margin:0 0 32px}
.iam-facts dt{font-size:14px;color:var(--iam-muted)}
.iam-facts dd{margin:0;font-size:21px;font-weight:700}
.iam-course__ctas{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.iam-course__note{margin:16px 0 0;font-size:15px;color:var(--iam-muted)}
@media (max-width:700px){.iam-course__label{right:12px}.iam-course__media img{height:360px}}

/* ---------- Advies ---------- */
.iam-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.iam-card{border:1px solid var(--iam-line);border-radius:10px;padding:28px;display:flex;flex-direction:column;gap:10px;background:#fff}
.iam-card h3{font-size:22px;margin:0}
.iam-card p{margin:0;color:var(--iam-muted);font-size:17px}
.iam-card svg{width:32px;height:32px}

/* ---------- Onafhankelijk ---------- */
.iam-indep{display:flex;flex-wrap:wrap;gap:48px;align-items:flex-start}
.iam-indep__text{flex:1 1 480px;min-width:0}
.iam-indep__text .iam-h2{margin-bottom:24px}
.iam-indep__text p{font-size:19px}
.iam-indep__box{flex:1 1 400px;min-width:0;background:#fff;border-radius:12px;padding:36px}
.iam-indep__box h3{font-size:26px;margin-bottom:12px}
.iam-indep__box p{color:var(--iam-muted);font-size:17px}

/* ---------- Kennisbank ---------- */
.iam-posts{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.iam-post{background:var(--iam-cream);border-radius:10px;padding:28px;display:flex;flex-direction:column;gap:14px;min-height:220px;color:var(--iam-ink);text-decoration:none}
.iam-post:hover{color:var(--iam-ink)}
.iam-post:hover .iam-post__title{text-decoration:underline}
.iam-post .iam-tag{align-self:flex-start}
.iam-post__title{font-size:23px;font-weight:700;line-height:1.2}
.iam-post__more{margin-top:auto;font-weight:700;color:var(--iam-link)}
.iam-post--media{padding-top:0;overflow:hidden}
.iam-post__img{display:block;margin:0 -28px 4px;aspect-ratio:16/10;overflow:hidden;background:var(--iam-cream-2)}
.iam-post__img img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0;transition:transform .3s ease}
.iam-post--media:hover .iam-post__img img{transform:scale(1.03)}
.iam-post__noimg{display:flex;width:100%;height:100%;align-items:center;justify-content:center;font-weight:700;font-size:40px;color:var(--iam-warm);background:var(--iam-ink)}
@media (prefers-reduced-motion:reduce){.iam-post__img img{transition:none}}
.iam-post--webinar{background:var(--iam-ink);color:#fff}
.iam-post--webinar:hover{color:#fff}
.iam-post--webinar .iam-post__date{font-size:16px;color:#C8C9CE}
.iam-post--webinar .iam-post__more{color:var(--iam-warm)}

/* ---------- Footer ---------- */
.iam-footer{background:var(--iam-ink);color:#D7D8DC;font-size:17px}
.iam-footer a{color:#D7D8DC}
.iam-footer a:hover{color:#fff}
.iam-cta{background:var(--iam-warm);color:var(--iam-ink);border-radius:12px;padding:40px;display:flex;flex-wrap:wrap;gap:24px;align-items:flex-end;justify-content:space-between}
.iam-cta h2{font-size:30px;margin:0 0 8px}
.iam-cta p{margin:0}
.iam-cta__text{flex:1 1 380px;min-width:0}
.iam-cta__form{flex:1 1 400px;min-width:0}
.iam-cta__form form{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.iam-field{flex:1 1 240px;display:flex;flex-direction:column;gap:6px}
.iam-field label{font-size:15px;font-weight:700}
.iam-field input{padding:14px 16px;border-radius:6px;border:0;background:#fff;color:var(--iam-ink);font-size:17px;font-family:inherit}
.iam-footer__top{padding-top:72px}
.iam-footer__cols{display:flex;flex-wrap:wrap;gap:48px;padding-top:56px;padding-bottom:32px}
.iam-footer__brand{flex:2 1 320px;min-width:0}
.iam-footer__brand strong{font-size:28px;color:#fff}
.iam-footer__brand p{margin-top:8px;max-width:360px}
.iam-footer__col{flex:1 1 200px;min-width:0;display:flex;flex-direction:column;gap:6px}
.iam-footer__col strong{color:#fff}
.iam-footer__col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.iam-footer__bottom{border-top:1px solid var(--iam-ink-3);padding-top:20px;padding-bottom:32px;font-size:15px;color:#A3A5AB}

/* ---------- Binnenpagina's ---------- */
.iam-pagehead{background:var(--iam-cream);padding:64px 0 48px}
.iam-pagehead h1{font-size:46px;margin:0;max-width:900px}
.iam-pagehead__meta{margin-top:12px;color:var(--iam-muted);font-size:16px}
.iam-banner img{display:block;width:100%;height:clamp(260px,38vw,560px);object-fit:cover}
.iam-content{max-width:860px;margin:0 auto;padding:64px 24px 96px}
.iam-content--wide{max-width:var(--iam-wrap)}
.iam-content--full{max-width:none;padding:0}
.entry-content>*:first-child{margin-top:0}
.entry-content h2{font-size:32px;margin-top:1.6em}
.entry-content h3{font-size:24px;margin-top:1.4em}
.entry-content img{border-radius:8px}
.entry-content blockquote{margin:1.5em 0;padding:4px 0 4px 24px;border-left:4px solid var(--iam-warm);font-size:21px}
.entry-content table{border-collapse:collapse;width:100%}
.entry-content th,.entry-content td{border-bottom:1px solid var(--iam-line);padding:10px 8px;text-align:left}
.alignwide{max-width:1100px;margin-left:auto;margin-right:auto}
.alignfull{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw)}
.wp-block-button__link{background:var(--iam-ink);color:#fff;border-radius:6px;padding:14px 24px;font-weight:700;text-decoration:none}

/* Archief / kennisbank */
.iam-archive{padding:64px 0 96px}
.iam-pagination{margin-top:48px;display:flex;gap:8px;flex-wrap:wrap}
.iam-pagination .page-numbers{padding:8px 14px;border-radius:6px;border:1px solid var(--iam-line);text-decoration:none;color:var(--iam-ink)}
.iam-pagination .current{background:var(--iam-ink);color:#fff;border-color:var(--iam-ink)}

/* Formulieren algemeen (o.a. contactformulieren) */
input[type=text],input[type=email],input[type=tel],input[type=url],input[type=search],textarea,select{font-family:inherit;font-size:17px;padding:12px 14px;border:1px solid #C9C4BC;border-radius:6px;background:#fff;color:var(--iam-ink);max-width:100%}
button,input[type=submit]{font-family:inherit}
