@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Sora:wght@500;600;700;800&display=swap');


:root{--red:#e00000;--black:#0a0a0a;--white:#fff;--soft:#f6f6f6;--line:#dedede;--muted:#666;--header:112px;--max:1280px;--shadow:0 22px 60px rgba(0,0,0,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#fff;color:#111}body.menu-open{overflow:hidden}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.container{width:min(var(--max),calc(100% - 64px));margin-inline:auto}.site-header{position:sticky;top:0;z-index:1000;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 5px 18px rgba(0,0,0,.04)}.nav-wrap{height:var(--header);display:flex;align-items:center;gap:32px}.brand img{height:74px;width:auto}.main-nav{display:flex;align-items:center;gap:30px;margin-left:auto}.main-nav a,.lang,.btn{font-weight:1000;text-transform:uppercase;letter-spacing:.12em;font-size:14px}.main-nav a{position:relative}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:3px;background:var(--red);transition:.2s}.main-nav a:hover:after{right:0}.lang-switch{display:flex;align-items:center;gap:8px}.lang{font-size:12px;border-bottom:3px solid transparent;padding:4px 0}.lang.active{border-color:var(--red)}.nav-actions{display:flex;align-items:center;gap:16px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border:2px solid transparent;transition:.18s;white-space:nowrap}.btn-red{background:var(--red);border-color:var(--red);color:#fff}.btn-red:hover{background:#b90000;border-color:#b90000}.btn-dark{background:#111;border-color:#111;color:#fff}.btn-dark:hover{background:var(--red);border-color:var(--red)}.btn-outline-dark{background:#fff;border-color:#111;color:#111}.btn-outline-dark:hover{background:#111;color:#fff}.btn-outline-light{background:rgba(0,0,0,.12);border-color:#fff;color:#fff}.btn-outline-light:hover{background:#fff;color:#111}.hamburger{display:none;width:48px;height:42px;background:none;border:0;padding:0;cursor:pointer}.hamburger span{display:block;height:4px;background:#111;margin:7px 0}.sharp-card{border-radius:0}.section{padding:96px 0;scroll-margin-top:calc(var(--header) + 28px)}.section.alt{background:var(--soft)}.eyebrow{margin:0 0 20px;color:var(--red);font-weight:1000;text-transform:uppercase;letter-spacing:.25em}.section-title{margin:0 0 24px;font-size:clamp(44px,6vw,90px);line-height:.94;text-transform:uppercase;font-weight:1000;letter-spacing:.03em}.section-title span,.red{color:var(--red)}.section-title.small-title{font-size:clamp(38px,4vw,62px)}.lead{font-size:21px;line-height:1.65;color:#4c4c4c;margin:0 0 28px}.lead.wide{max-width:980px}.hero{min-height:calc(100vh - var(--header));position:relative;display:flex;align-items:stretch;background:linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.57),rgba(0,0,0,.25)),url('assets/img/mclaren-podium.jpg') center/cover no-repeat;color:#fff}.hero-inner{display:flex;align-items:center;padding:72px 0}.hero-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(340px,.8fr);gap:56px;align-items:center;width:100%}.hero h1{font-size:clamp(58px,10vw,150px);line-height:.86;text-transform:uppercase;margin:0 0 30px;letter-spacing:.03em}.hero h1 span{display:block}.hero-copy{font-size:24px;line-height:1.45;max-width:760px}.hero-ctas{display:flex;gap:16px;flex-wrap:wrap;margin-top:34px}.hero-card{background:#fff;color:#111;border-left:7px solid var(--red);padding:36px;box-shadow:var(--shadow)}.hero-card h2{text-transform:uppercase;font-size:32px;line-height:1.05;margin:0 0 18px}.hero-card p{color:#444;line-height:1.55}.hero-metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px}.metric{border:1px solid var(--line);border-left:5px solid var(--red);padding:18px}.metric strong{display:block;font-size:32px}.metric span{text-transform:uppercase;font-size:12px;color:#555;font-weight:1000}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.two-col.align-start{align-items:start}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.feature-grid.one-col{grid-template-columns:1fr}.feature-card,.timeline-card{border:1px solid var(--line);border-left:7px solid var(--red);padding:28px;background:#fff}.feature-card h3,.timeline-card h3{text-transform:uppercase;font-size:25px;margin:0 0 12px}.feature-card p,.timeline-card p{color:#555;line-height:1.6}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.event-grid-three,.three-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.event-card,.news-card{background:#fff;border:1px solid var(--line);border-left:7px solid var(--red);box-shadow:var(--shadow);overflow:hidden}.event-img{height:245px;position:relative;overflow:hidden;background:#111}.event-img img{width:100%;height:100%;object-fit:cover}.date-badge{position:absolute;left:18px;top:18px;background:#fff;color:#111;padding:12px 14px;text-align:center;border-left:6px solid var(--red);box-shadow:0 10px 26px rgba(0,0,0,.18);text-transform:uppercase}.date-badge strong{display:block;font-size:28px;line-height:.9}.date-badge span{font-size:12px;font-weight:1000}.card-body{padding:26px}.card-body h3{font-size:28px;line-height:1.05;text-transform:uppercase;margin:0 0 10px}.meta{font-size:13px;color:#777;font-weight:1000;text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px}.card-body p{color:#555;line-height:1.55;margin:0 0 22px}.international-block{display:grid;grid-template-columns:1.15fr .85fr;margin-top:30px;background:#111;color:#fff;border-left:7px solid var(--red);overflow:hidden}.international-image{height:370px}.international-image img{width:100%;height:100%;object-fit:cover}.international-content{padding:44px;display:flex;flex-direction:column;justify-content:center}.international-content h3{text-transform:uppercase;font-size:46px;line-height:1;margin:0 0 16px}.international-content p{color:#ddd;font-size:19px;line-height:1.55}.b2b{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;overflow:hidden}.b2b:before{content:"";position:absolute;right:0;top:0;bottom:0;width:38%;background:linear-gradient(90deg,#fff,rgba(255,255,255,.65)),url('assets/img/paddock.jpg') center/cover no-repeat;opacity:.85}.b2b .container{position:relative;z-index:1}.b2b-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:940px;margin-top:34px}.b2b-card{padding:36px;background:#111;color:#fff;border:1px solid #111}.b2b-card:nth-child(2){background:#fff;color:#111;border-left:7px solid var(--red);border-color:var(--line)}.b2b-card h3{text-transform:uppercase;font-size:34px;margin:0 0 14px;line-height:1.05}.b2b-card p{line-height:1.6;opacity:.86}.proof-panel{border:1px solid var(--line);border-left:7px solid var(--red);padding:42px;background:#fff;box-shadow:var(--shadow)}.photo-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;grid-template-rows:240px 240px;gap:14px;margin-top:34px}.photo-grid figure{position:relative;margin:0;background:#111;overflow:hidden}.photo-grid figure:first-child{grid-row:span 2}.photo-grid img{width:100%;height:100%;object-fit:cover}.photo-grid figcaption{position:absolute;left:16px;bottom:14px;color:#fff;text-transform:uppercase;font-weight:1000;letter-spacing:.08em;text-shadow:0 2px 14px rgba(0,0,0,.8)}.evolution,.success{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.evolution-panel{position:relative}.evolution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:36px}.success-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:32px}.success-item{background:#fff;border:1px solid var(--line);border-left:7px solid var(--red);padding:26px}.success-item strong{display:block;font-size:36px;color:var(--red);font-weight:1000}.success-item span{display:block;text-transform:uppercase;font-weight:1000;font-size:12px;letter-spacing:.08em}.news-card>img{height:240px;width:100%;object-fit:cover}.team-panel{display:grid;grid-template-columns:.75fr 1.25fr;gap:0;align-items:stretch;border:1px solid var(--line);border-left:7px solid var(--red);box-shadow:var(--shadow);background:#fff}.team-image{min-height:330px}.team-image img{width:100%;height:100%;object-fit:cover}.team-content{padding:38px 46px}.team-content p:not(.eyebrow){font-size:18px;line-height:1.65;color:#555}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px}.contact-list{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}.contact-list.standalone{max-width:980px}.contact-item{border:1px solid var(--line);border-left:7px solid var(--red);background:#fff;padding:20px;box-shadow:0 8px 24px rgba(0,0,0,.04)}.contact-item small{display:block;color:#777;text-transform:uppercase;font-size:12px;font-weight:1000;letter-spacing:.13em}.contact-item strong{display:block;font-size:19px;margin-top:8px;line-height:1.25;word-break:break-word}.form-box{background:#fff;border:1px solid var(--line);border-left:7px solid var(--red);padding:32px;box-shadow:var(--shadow)}.form-grid,.subgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:12px;text-transform:uppercase;font-weight:1000;color:#555;letter-spacing:.08em}.field input,.field select,.field textarea{width:100%;border:1px solid #d2d2d2;background:#fafafa;padding:14px 15px;border-radius:0;font:inherit}.field textarea{min-height:130px}.conditional{display:none}.conditional.active{display:block}.hp{position:absolute;left:-9999px}.social-row{display:flex;gap:9px;align-items:center}.social{width:42px;height:42px;display:flex!important;align-items:center;justify-content:center;color:#fff;border-radius:0}.social img{width:21px;height:21px;filter:brightness(0) invert(1)}.linkedin{background:#0A66C2}.facebook{background:#1877F2}.instagram{background:#833AB4}.tiktok{background:#0b0b0b}.mini-socials{margin-top:12px}.site-footer{background:#060606;color:#fff;padding:56px 0 28px}.footer-grid{display:grid;grid-template-columns:1.3fr repeat(4,1fr);gap:34px}.footer-logo{height:70px;filter:invert(1);margin-bottom:18px}.footer-grid h4{text-transform:uppercase;letter-spacing:.12em;font-size:13px}.footer-grid a,.footer-grid p{display:block;color:#aaa;margin:9px 0;font-size:14px}.footer-grid a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:32px;padding-top:18px;display:flex;justify-content:space-between;color:#777;font-size:13px}.floating-whatsapp{position:fixed;right:22px;bottom:22px;z-index:1200;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:#25D366;box-shadow:0 12px 28px rgba(0,0,0,.22)}.floating-whatsapp img{width:26px;height:26px}.back-to-top{position:fixed;right:22px;bottom:84px;z-index:1199;width:46px;height:46px;background:#111;color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:1000;opacity:0;pointer-events:none;transform:translateY(10px);transition:.2s}.back-to-top.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.back-to-top:hover{background:var(--red)}.subhero{padding:calc(var(--header) + 58px) 0 70px;background:#f7f7f7}.subhero h1{font-size:clamp(54px,8vw,110px);line-height:.9;text-transform:uppercase;margin:0 0 22px}.subhero p{max-width:850px;color:#555;font-size:21px;line-height:1.55}.editable-note{padding:22px;border:1px solid var(--line);border-left:7px solid var(--red);margin-bottom:28px;background:#fff}.calendar-list,.news-list{display:grid;gap:22px}.event-list-card,.news-row{display:grid;grid-template-columns:300px 90px 1fr;gap:24px;align-items:center;border:1px solid var(--line);border-left:7px solid var(--red);padding:18px;background:#fff}.event-list-card img,.news-row img{width:100%;height:170px;object-fit:cover}.date-tile{background:#111;color:#fff;text-align:center;padding:18px 8px;text-transform:uppercase}.date-tile strong{display:block;font-size:38px;line-height:.9}.date-tile span{font-weight:1000}.event-list-card h2,.news-row h2{text-transform:uppercase;margin:0 0 10px;font-size:30px}.news-row{grid-template-columns:260px 1fr}.image-card{border-left:7px solid var(--red)}.image-card img{width:100%;height:100%;object-fit:cover;min-height:300px}.team-page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.team-person{padding:28px;border:1px solid var(--line);border-left:7px solid var(--red)}@media(max-width:1100px){.event-grid-three,.three-cards,.evolution-grid{grid-template-columns:1fr 1fr}.hero-grid,.two-col,.contact-grid,.team-panel{grid-template-columns:1fr}.team-panel{max-width:900px}.international-block{grid-template-columns:1fr}.b2b:before{display:none}.footer-grid{grid-template-columns:1fr 1fr}.event-list-card{grid-template-columns:220px 80px 1fr}.news-row{grid-template-columns:220px 1fr}}@media(max-width:900px){:root{--header:86px}.container{width:min(var(--max),calc(100% - 42px))}.brand img{height:48px}.hamburger{display:block}.company-cta{min-height:44px;padding:0 14px;font-size:12px}.main-nav{position:fixed;top:var(--header);left:0;right:0;background:#080808;color:#fff;display:none;flex-direction:column;align-items:flex-start;padding:28px 32px;border-top:1px solid #222}.main-nav.open{display:flex}.main-nav a{font-size:18px;padding:10px 0}.lang-switch{margin-left:auto}.hero{min-height:auto}.hero-inner{padding:54px 0}.hero-card{max-width:560px}.photo-grid{grid-template-columns:1fr;grid-template-rows:auto}.photo-grid figure,.photo-grid figure:first-child{height:260px;grid-row:auto}.success-grid,.feature-grid,.contact-list,.form-grid,.subgrid{grid-template-columns:1fr}.event-list-card,.news-row{grid-template-columns:1fr}.event-list-card img,.news-row img{height:230px}.date-tile{width:90px}.team-page-grid{grid-template-columns:1fr}.footer-bottom{display:block}.section-head{display:block}.section-head .btn{margin-top:20px}}@media(max-width:560px){:root{--header:78px}.container{width:min(var(--max),calc(100% - 30px))}.brand img{height:42px}.nav-wrap{gap:12px}.lang-switch{font-size:11px;gap:5px}.lang{font-size:10px}.company-cta{padding:0 10px;font-size:10px;letter-spacing:.08em;min-height:38px}.hamburger{width:36px}.hamburger span{height:3px;margin:6px 0}.hero h1{font-size:48px}.hero-copy{font-size:18px}.section{padding:68px 0}.section-title{font-size:39px}.lead{font-size:18px}.event-grid-three,.three-cards{grid-template-columns:1fr}.international-content,.proof-panel,.team-content,.form-box{padding:26px}.footer-grid{grid-template-columns:1fr}.floating-whatsapp{right:14px;bottom:14px;width:48px;height:48px}.back-to-top{right:14px;bottom:74px;width:42px;height:42px}.subhero{padding:calc(var(--header) + 38px) 0 50px}.subhero h1{font-size:48px}.subhero p{font-size:18px}}

/* === v2.1 refinements === */
.hp{display:none!important;visibility:hidden!important;position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.card-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.btn-small{min-height:44px;padding:0 18px;font-size:12px}.event-card .card-actions .btn-outline-dark{min-width:150px}.event-card .card-actions .btn-small{min-width:92px}.event-img img{transform:scale(1.01)}
.b2b-grid-three{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1120px}.b2b-card.contact-card{background:#fff;color:#111;border-left:7px solid var(--red);border-color:var(--line)}.b2b-card.contact-card .btn{margin-top:2px}
.culture-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:260px 260px!important;gap:14px}.culture-grid figure:first-child{grid-row:auto!important}.culture-grid figure{height:auto!important}.proof-copy{max-width:960px}.proof-panel{padding:48px}.proof-panel .lead{max-width:980px}
.evolution-panel{border:1px solid var(--line);border-left:7px solid var(--red);padding:44px;background:#fff;box-shadow:var(--shadow)}.evolution-bars{display:grid;grid-template-columns:1fr;gap:0;margin-top:34px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.evolution-step{display:grid;grid-template-columns:92px 1fr;gap:28px;align-items:start;padding:28px 0;border-bottom:1px solid var(--line)}.evolution-step:last-child{border-bottom:0}.step-dot{width:64px;height:64px;background:#111;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:1000;letter-spacing:.08em;border-left:7px solid var(--red)}.evolution-step h3{margin:0 0 9px;text-transform:uppercase;font-size:27px;line-height:1.05}.evolution-step p{margin:0;color:#555;line-height:1.65;max-width:820px}
.news-grid-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.news-grid-three .news-card{display:flex;flex-direction:column}.news-grid-three .news-card>img{height:205px;width:100%;object-fit:cover}.news-grid-three .card-body{display:flex;flex-direction:column;flex:1}.news-grid-three .card-body .btn{align-self:flex-start;margin-top:auto}.news-grid-three .card-body h3{font-size:25px;min-height:82px}
.contact-list.compact-contact{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.contact-item.address-combined{grid-column:span 2}.address-combined strong{font-size:16px;margin-top:12px}.address-combined span{display:block;color:#333;margin-top:4px;font-size:17px}.contact-item.social-card{grid-column:span 2}.mini-socials{display:flex;gap:12px;margin-top:16px}.social{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;overflow:hidden}.social img{width:22px!important;height:22px!important;max-width:22px!important;max-height:22px!important;object-fit:contain!important;display:block!important}.footer-socials .social{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important}.footer-socials .social img{width:19px!important;height:19px!important}.social.linkedin{background:#0A66C2!important}.social.facebook{background:#1877F2!important}.social.instagram{background:linear-gradient(135deg,#833AB4,#E1306C,#FCAF45)!important}.social.tiktok{background:#050505!important}.form-box{overflow:hidden}.field select:invalid{color:#777}.conditional{display:none!important}.conditional.active{display:block!important}.floating-whatsapp{width:52px;height:52px;border-radius:0;background:#25D366;overflow:hidden}.floating-whatsapp img{width:25px!important;height:25px!important;max-width:25px!important;object-fit:contain!important}.back-to-top{border-radius:0}.site-footer .social-row{margin-top:20px}.site-footer .social{border:1px solid rgba(255,255,255,.18)}
@media(max-width:1100px){.b2b-grid-three,.news-grid-three{grid-template-columns:1fr 1fr}.culture-grid{grid-template-rows:240px 240px!important}.contact-list.compact-contact{grid-template-columns:1fr}.contact-item.address-combined,.contact-item.social-card{grid-column:auto}}
@media(max-width:900px){.evolution-step{grid-template-columns:70px 1fr;gap:18px}.step-dot{width:56px;height:56px}.news-grid-three{grid-template-columns:1fr}.news-grid-three .card-body h3{min-height:0}.b2b-grid-three{grid-template-columns:1fr}.culture-grid{grid-template-columns:1fr!important;grid-template-rows:auto!important}.culture-grid figure{height:250px!important}.card-actions{align-items:stretch}.card-actions .btn{flex:1}}
@media(max-width:560px){.proof-panel,.evolution-panel{padding:26px}.evolution-step{grid-template-columns:1fr}.news-grid-three .news-card>img{height:190px}.mini-socials .social{width:44px!important;height:44px!important}.floating-whatsapp{width:46px;height:46px}.floating-whatsapp img{width:22px!important;height:22px!important}.card-actions .btn{width:100%}}


/* v2.2 homepage refinement */
.hero-grid{grid-template-columns:minmax(0,1.18fr) minmax(360px,430px);gap:44px;align-items:end}.hero-copybox{min-width:0;max-width:920px}.hero h1{font-size:clamp(54px,8.2vw,140px);line-height:.85;max-width:7.4ch}.hero-copy{max-width:720px}.hero-card{position:relative;z-index:2}.hero-card h2{font-size:clamp(28px,2.2vw,34px)}
.event-img{height:300px}.event-img img.event-photo{width:100%;height:100%;object-fit:cover;transform:none}.event-photo-wos{object-position:center 58%}.event-photo-scm{object-position:center 44%}.event-photo-daf{object-position:center 44%}.card-actions{margin-top:4px}.event-card .card-body h3{font-size:26px}.event-card .meta{font-size:12px;letter-spacing:.1em}.event-card .card-body p{min-height:96px}.btn-small{min-height:46px;padding:0 18px}.event-card .card-actions .btn-outline-dark{min-width:154px}.event-card .card-actions .btn-small{min-width:96px}
.contact-grid{align-items:start}.contact-list.compact-contact{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.contact-item{padding:22px 24px}.contact-item small{margin-bottom:8px}.contact-item strong{font-size:17px;line-height:1.3;word-break:normal;overflow-wrap:anywhere}.contact-item.social-card{grid-column:auto;display:flex;flex-direction:column;justify-content:center}.contact-item.social-card small{margin-bottom:14px}.mini-socials{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:0}.mini-socials .social{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;border:1px solid rgba(0,0,0,.08);box-shadow:none}.mini-socials .social img{width:18px!important;height:18px!important}.contact-item.address-combined{grid-column:1/-1;padding-top:20px;padding-bottom:20px}.address-combined strong{font-size:15px;letter-spacing:.02em;text-transform:none;margin-top:10px}.address-combined span{font-size:16px;line-height:1.45}.footer-socials{gap:8px}.footer-socials .social{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important}.footer-socials .social img{width:17px!important;height:17px!important}.social{border-radius:0}.floating-whatsapp{width:50px;height:50px;padding:0}.floating-whatsapp img{width:24px!important;height:24px!important;display:block;margin:auto}.follow-compact-note{font-size:12px;color:#888;text-transform:uppercase;letter-spacing:.12em}
@media(max-width:1320px){.hero h1{font-size:clamp(52px,7.3vw,118px);max-width:7.1ch}.hero-grid{grid-template-columns:minmax(0,1fr) minmax(320px,400px)}}
@media(max-width:1100px){.hero-grid{grid-template-columns:1fr}.hero-copybox{max-width:100%}.hero h1{max-width:none}.hero-card{max-width:620px}.event-card .card-body p{min-height:0}}
@media(max-width:900px){.event-img{height:270px}.contact-item.social-card{grid-column:auto}.mini-socials .social{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important}}
@media(max-width:560px){.hero h1{font-size:44px;line-height:.88}.hero-copy{font-size:17px}.event-img{height:250px}.contact-list.compact-contact{grid-template-columns:1fr}.contact-item.address-combined{grid-column:auto}.contact-item{padding:20px}.mini-socials .social{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important}}


/* =========================================================
   QUICKFIX 1 — homepage/header/hero polish
   ========================================================= */

:root{ --header: 92px; }

.site-header{ box-shadow: 0 4px 18px rgba(0,0,0,.045); }

.nav-wrap{
  height: var(--header);
  gap: 24px;
}

/* Nieuws v2.1: compacter, lichter en zakelijker */
.news-page-hero{background:#f4f4f2}
.news-hero-layout{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);height:350px;max-height:none;background:#f4f4f2}
.news-hero-content{min-height:0;padding:42px max(32px,calc((100vw - var(--max))/2));padding-right:44px;color:#111}
.news-hero-content h1{font-size:clamp(48px,5.2vw,78px);line-height:.9}
.news-hero-content>p:last-child{margin-top:20px;color:#555;font-size:18px;line-height:1.45}
.news-hero-image{min-height:0}
.news-hero-image:after{background:linear-gradient(90deg,rgba(244,244,242,.2),transparent 25%)}
.news-filter-wrap{margin-top:-36px}
.news-page-section{padding-top:72px}
.featured-news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:62px}
.featured-news{display:grid;grid-template-columns:44% 56%;min-height:290px;margin:0;background:#fff;color:#111;border:1px solid #ddd;box-shadow:0 15px 40px rgba(0,0,0,.07)}
.featured-news-media{min-height:290px}
.featured-news-body{padding:30px}
.featured-news-body .eyebrow{margin-bottom:10px}
.featured-news-body .news-v2-meta{color:#777!important}
.featured-news-body h2{font-size:clamp(26px,2.25vw,36px);line-height:1.02;margin-bottom:14px}
.featured-news-body>p:not(.eyebrow):not(.news-v2-meta){color:#555;font-size:15px;line-height:1.5;margin-bottom:18px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.news-pagination{display:flex;justify-content:center;gap:8px;margin-top:44px}
.news-pagination button{width:46px;height:46px;border:1px solid #ccc;background:#fff;color:#111;font:inherit;font-weight:900;cursor:pointer}
.news-pagination button:hover,.news-pagination button.active{background:var(--red);border-color:var(--red);color:#fff}
.news-pagination button:disabled{opacity:.3;cursor:default;background:#fff;color:#111}

/* Nieuwsartikel: intro en delen voor de vouw */
.news-detail-hero{padding:54px 0 34px;background:#f4f4f2}
.news-detail-hero .container{max-width:1180px}
.news-detail-hero h1{max-width:950px;font-size:clamp(42px,5.1vw,72px);line-height:.96;margin-bottom:18px}
.news-detail-hero>p,.news-detail-hero .container>p{font-size:18px}
.news-detail-section{padding-top:0;background:#f4f4f2}
.news-detail-card{max-width:1180px;margin:auto;background:transparent;box-shadow:none;border:0}
.news-detail-intro{display:grid;grid-template-columns:minmax(280px,38%) minmax(0,1fr);gap:42px;align-items:start;padding-bottom:42px;border-bottom:1px solid #ccc}
.news-detail-main-img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;margin:0}
.news-detail-intro-copy{padding-top:4px}
.news-detail-intro-copy .meta{font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#666}
.news-detail-lead{font-size:20px;line-height:1.55;color:#333;margin:20px 0}
.news-share{display:flex;align-items:center;gap:8px;margin-top:24px;flex-wrap:wrap}
.news-share-label{margin-right:8px;font-size:12px;font-weight:1000;letter-spacing:.12em;text-transform:uppercase}
.news-share a{display:grid;place-items:center;width:46px;height:46px;background:#111;border:1px solid #111}
.news-share a:hover{background:var(--red);border-color:var(--red)}
.news-share img{width:21px;height:21px;filter:brightness(0) invert(1)}
.news-share .share-mail{font-size:25px;color:#fff;text-decoration:none}
.news-article-below{max-width:820px;margin:46px auto 0}
.news-detail-text{font-size:17px;line-height:1.75}

@media(max-width:980px){
  .news-hero-layout{height:320px}
  .featured-news{grid-template-columns:1fr}
  .featured-news-media{min-height:0;aspect-ratio:16/9}
}
@media(max-width:760px){
  .news-hero-layout{height:auto;grid-template-columns:1fr}
  .news-hero-content{padding:34px 22px 30px;min-height:220px}
  .news-hero-content h1{font-size:52px}
  .news-hero-image{height:210px}
  .news-filter-wrap{margin-top:-20px}
  .featured-news-grid{grid-template-columns:1fr;gap:18px}
  .featured-news{grid-template-columns:42% 58%;min-height:230px}
  .featured-news-media{min-height:230px;aspect-ratio:auto}
  .featured-news-body{padding:22px}
  .featured-news-body h2{font-size:27px}
  .featured-news-body>p:not(.eyebrow):not(.news-v2-meta){display:none}
  .news-detail-hero{padding:34px 0 24px}
  .news-detail-hero h1{font-size:42px}
  .news-detail-intro{grid-template-columns:1fr;gap:24px}
}
@media(max-width:520px){
  .featured-news{grid-template-columns:1fr}
  .featured-news-media{min-height:0;aspect-ratio:16/9}
}

.brand img{
  height: 58px;
  width: auto;
}

.main-nav{ gap: 26px; }

.main-nav a,
.lang,
.btn{ letter-spacing: .115em; }

.main-nav a{ font-size: 13px; }

.lang-switch{ gap: 7px; }

.lang{ font-size: 12px; }

.company-cta{
  min-height: 46px;
  padding: 0 24px;
  font-size: 13px;
}

.hero{
  min-height: calc(100vh - var(--header));
}

.hero-inner{
  padding: 58px 0 54px;
}

.hero-grid{
  grid-template-columns: minmax(0, 1fr) minmax(360px, 420px);
  gap: 56px;
  align-items: center;
}

.hero-copybox{
  min-width: 0;
  max-width: 830px;
}

.hero h1{
  font-size: clamp(56px, 6.4vw, 112px);
  line-height: .88;
  letter-spacing: .025em;
  max-width: 820px;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

.hero h1 span{ display: block; }

.hero-copy{
  max-width: 710px;
  font-size: clamp(19px, 1.45vw, 24px);
}

.hero-card{
  max-width: 420px;
  padding: 34px;
  align-self: center;
}

.hero-card h2{ font-size: clamp(26px, 2vw, 32px); }

.floating-whatsapp,
.back-to-top{ right: 24px; }

.floating-whatsapp{
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.floating-whatsapp img{
  width: 23px!important;
  height: 23px!important;
  max-width: 23px!important;
  max-height: 23px!important;
  object-fit: contain;
}

@media(max-width: 1320px){
  .hero-grid{
    grid-template-columns: minmax(0,1fr) minmax(330px,390px);
    gap: 42px;
  }

  .hero-copybox{ max-width: 760px; }

  .hero h1{
    font-size: clamp(52px, 5.9vw, 94px);
    max-width: 720px;
  }

  .hero-card{
    max-width: 390px;
    padding: 30px;
  }
}

@media(max-width: 1100px){
  :root{ --header: 86px; }

  .nav-wrap{ gap: 16px; }

  .brand img{ height: 50px; }

  .hero-grid{ grid-template-columns: 1fr; }

  .hero-copybox,
  .hero h1{ max-width: none; }

  .hero-card{ max-width: 600px; }
}

@media(max-width: 900px){
  .brand img{ height: 48px; }

  .company-cta{
    min-height: 42px;
    padding: 0 14px;
    font-size: 11px;
  }

  .main-nav{ top: var(--header); }
}

@media(max-width: 560px){
  :root{ --header: 76px; }

  .brand img{ height: 40px; }

  .hero h1{
    font-size: 44px;
    line-height: .9;
  }

  .hero-inner{ padding: 42px 0; }
}


/* =========================================================
   QUICKFIX 2 — platformsectie compact + subtiele hover
   ========================================================= */

.platform.section{
  padding-top: 78px;
  padding-bottom: 82px;
}

.platform .two-col{
  grid-template-columns: minmax(0, .98fr) minmax(430px, .82fr);
  gap: 58px;
  align-items: center;
}

.platform .section-title{
  font-size: clamp(42px, 5vw, 76px);
  line-height: .94;
  max-width: 760px;
}

.platform .lead{
  font-size: clamp(18px, 1.35vw, 20px);
  line-height: 1.58;
  max-width: 760px;
}

.platform .feature-grid{ gap: 14px; }

.platform .feature-card{
  position: relative;
  overflow: hidden;
  min-height: 190px;
  padding: 26px 28px;
  isolation: isolate;
  transition: transform .22s ease, box-shadow .22s ease, border-left-width .22s ease;
}

.platform .feature-card h3,
.platform .feature-card p{
  position: relative;
  z-index: 2;
}

.platform .feature-card h3{
  font-size: 23px;
  transition: color .22s ease;
}

.platform .feature-card p{
  font-size: 16px;
  line-height: 1.52;
  margin-bottom: 0;
  transition: color .22s ease;
}

.platform .feature-card::before{
  content: "";
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transform: scale(1.04);
  transition: opacity .24s ease, transform .32s ease;
  z-index: 0;
}

.platform .feature-card::after{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255,255,255,.96), rgba(255,255,255,.86));
  opacity: 0;
  transition: opacity .24s ease;
  z-index: 1;
}

.platform .feature-card:hover{
  transform: translateY(-5px);
  box-shadow: 0 22px 50px rgba(0,0,0,.11);
  border-left-width: 9px;
}

.platform .feature-card:hover::before{
  opacity: .20;
  transform: scale(1);
}

.platform .feature-card:hover::after{ opacity: 1; }

.platform .feature-card:hover h3{ color: var(--red); }

.feature-community::before{ background-image: url("assets/img/supercar-crowd.jpg"); }
.feature-massa::before{ background-image: url("assets/img/full-grandstand.jpg"); }
.feature-beleving::before{ background-image: url("assets/img/carcatwalk.jpg"); }
.feature-zakelijk::before{ background-image: url("assets/img/indoor-overview.jpg"); }

@media(max-width: 1180px){
  .platform .two-col{
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .platform .feature-grid{ max-width: 900px; }

  .platform .section-title,
  .platform .lead{ max-width: 900px; }
}

@media(max-width: 720px){
  .platform.section{
    padding-top: 62px;
    padding-bottom: 66px;
  }

  .platform .feature-grid{ grid-template-columns: 1fr; }

  .platform .feature-card{ min-height: 160px; }
}


/* =========================================================
   QUICKFIX 3 — platform anchor + compact premium platform cards
   Basis: quickfix_1_en_2
   Files to replace in /402nieuw/: index.html + style.css
   ========================================================= */

/* Anchor: Platform landt rustiger onder de sticky header */
#platform{
  scroll-margin-top: calc(var(--header) + 72px);
}

/* Platformsectie: compacter, meer premium, minder lomp */
.platform.section{
  padding-top: 64px;
  padding-bottom: 72px;
}

.platform .two-col{
  grid-template-columns: minmax(0, 1.05fr) minmax(390px, .78fr);
  gap: 48px;
  align-items: center;
}

.platform .eyebrow{
  margin-bottom: 14px;
}

.platform .section-title{
  font-size: clamp(38px, 4.25vw, 62px);
  line-height: .92;
  letter-spacing: .025em;
  max-width: 650px;
  margin-bottom: 20px;
}

.platform .lead{
  font-size: clamp(17px, 1.18vw, 19px);
  line-height: 1.55;
  max-width: 720px;
  margin-bottom: 24px;
}

.platform .button-row .btn{
  min-height: 46px;
  padding-inline: 20px;
  font-size: 12px;
}

/* Rechter blokken: minder ruimtevreters, strakker raster */
.platform .feature-grid{
  gap: 12px;
  align-self: center;
}

.platform .feature-card{
  min-height: 154px;
  padding: 22px 24px 21px;
  border-left-width: 6px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(0,0,0,.035);
}

.platform .feature-card h3{
  font-size: 21px;
  line-height: 1;
  margin-bottom: 11px;
}

.platform .feature-card p{
  font-size: 15px;
  line-height: 1.44;
  color: #4d4d4d;
}

/* Hover iets meer beeld, maar nog steeds zakelijk en leesbaar */
.platform .feature-card::before{
  opacity: 0;
  transform: scale(1.045);
  filter: saturate(.95) contrast(1.02);
}

.platform .feature-card::after{
  background:
    linear-gradient(90deg, rgba(255,255,255,.91), rgba(255,255,255,.76)),
    linear-gradient(180deg, rgba(255,255,255,.85), rgba(255,255,255,.78));
}

.platform .feature-card:hover{
  transform: translateY(-4px);
  box-shadow: 0 20px 42px rgba(0,0,0,.105);
  border-left-width: 8px;
}

.platform .feature-card:hover::before{
  opacity: .34;
  transform: scale(1.01);
}

.platform .feature-card:hover::after{
  opacity: 1;
}

.platform .feature-card:hover h3{
  color: var(--red);
}

/* Verfijnde responsive platformpositie */
@media(max-width: 1180px){
  #platform{
    scroll-margin-top: calc(var(--header) + 54px);
  }

  .platform.section{
    padding-top: 58px;
  }

  .platform .two-col{
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .platform .section-title{
    max-width: 760px;
  }

  .platform .lead{
    max-width: 880px;
  }

  .platform .feature-grid{
    max-width: 850px;
  }
}

@media(max-width: 720px){
  #platform{
    scroll-margin-top: calc(var(--header) + 36px);
  }

  .platform.section{
    padding-top: 52px;
    padding-bottom: 58px;
  }

  .platform .section-title{
    font-size: clamp(34px, 10vw, 46px);
  }

  .platform .feature-grid{
    grid-template-columns: 1fr;
  }

  .platform .feature-card{
    min-height: 132px;
    padding: 20px 22px;
  }

  .platform .feature-card:hover{
    transform: none;
  }
}


/* =========================================================
   QUICKFIX 4 — platform hover foto blijvend zichtbaarer
   Basis: quickfix_3
   File to replace in /402nieuw/: style.css
   ========================================================= */

/* De foto onder de platformkaarten blijft nu subtiel zichtbaar bij hover.
   Overlay is minder wit, tekst blijft leesbaar. */
.platform .feature-card::after{
  background:
    linear-gradient(90deg, rgba(255,255,255,.84), rgba(255,255,255,.62)),
    linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.66));
}

.platform .feature-card:hover::before{
  opacity: .52;
  transform: scale(1.005);
  filter: saturate(1.02) contrast(1.05);
}

.platform .feature-card:hover::after{
  opacity: 1;
}

.platform .feature-card:hover h3{
  color: var(--red);
}

.platform .feature-card:hover p{
  color: #1f1f1f;
}

/* Op mobiel geen hover nodig, maar mocht touch-hover blijven hangen,
   dan houden we het rustiger. */
@media(max-width: 720px){
  .platform .feature-card:hover::before{
    opacity: .28;
  }

  .platform .feature-card::after{
    background: linear-gradient(90deg, rgba(255,255,255,.90), rgba(255,255,255,.78));
  }
}


/* =========================================================
   QUICKFIX 5 — kalender anchor + compacte kalendersectie
   Basis: latest approved = quickfix_3 index + quickfix_4 style
   Files to replace in /402nieuw/: index.html + style.css
   ========================================================= */

/* Anchor: Kalender landt rustiger onder de sticky header */
#kalender{
  scroll-margin-top: calc(var(--header) + 58px);
}

/* Kalendersectie: minder lucht, cards sneller in beeld */
.calendar.section{
  padding-top: 66px;
  padding-bottom: 76px;
}

/* Kopregel compacter en meer als functionele sectiekop */
.calendar .section-head{
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 28px;
  margin-bottom: 26px;
}

.calendar .section-head .eyebrow{
  margin-bottom: 12px;
}

.calendar .section-title{
  font-size: clamp(40px, 5vw, 72px);
  line-height: .92;
  letter-spacing: .025em;
  margin-bottom: 0;
}

.calendar .section-head .btn{
  min-height: 48px;
  padding-inline: 24px;
  font-size: 12px;
  align-self: end;
  margin-bottom: 6px;
}

/* Eventkaarten iets hoger en strakker, zonder inhoud te wijzigen */
.calendar .event-grid-three{
  gap: 22px;
}

.calendar .event-card{
  box-shadow: 0 18px 46px rgba(0,0,0,.07);
}

.calendar .event-img{
  height: 270px;
}

.calendar .card-body{
  padding: 23px 24px 24px;
}

.calendar .card-body h3{
  font-size: 25px;
  margin-bottom: 9px;
}

.calendar .meta{
  margin-bottom: 12px;
}

.calendar .card-body p{
  min-height: 88px;
  margin-bottom: 18px;
}

.calendar .card-actions{
  gap: 9px;
}

.calendar .event-card .card-actions .btn-outline-dark{
  min-width: 145px;
}

.calendar .event-card .card-actions .btn-small{
  min-width: 94px;
}

/* Internationale blok iets dichter op de drie kaarten */
.calendar .international-block{
  margin-top: 24px;
}

@media(max-width: 1100px){
  #kalender{
    scroll-margin-top: calc(var(--header) + 46px);
  }

  .calendar.section{
    padding-top: 58px;
  }

  .calendar .section-head{
    grid-template-columns: 1fr;
    gap: 16px;
    margin-bottom: 24px;
  }

  .calendar .section-head .btn{
    justify-self: start;
    margin-bottom: 0;
  }

  .calendar .event-img{
    height: 250px;
  }

  .calendar .card-body p{
    min-height: 0;
  }
}

@media(max-width: 720px){
  #kalender{
    scroll-margin-top: calc(var(--header) + 34px);
  }

  .calendar.section{
    padding-top: 52px;
    padding-bottom: 60px;
  }

  .calendar .section-title{
    font-size: clamp(34px, 10vw, 48px);
  }

  .calendar .event-grid-three{
    gap: 18px;
  }

  .calendar .event-img{
    height: 235px;
  }

  .calendar .card-body{
    padding: 21px;
  }
}


/* =========================================================
   QUICKFIX 6 — compactere overgang platform -> kalender
   Basis: quickfix_5
   File to replace in /402nieuw/: style.css
   ========================================================= */

/* Minder loze witruimte onder platform, zonder de sectie benauwd te maken */
.platform.section{
  padding-bottom: 46px;
}

/* Kalender mag eerder starten; behoud de compacte kalenderopmaak uit quickfix_5 */
.calendar.section{
  padding-top: 42px;
}

/* Iets strakkere relatie tussen kalenderkop en eventkaarten */
.calendar .section-head{
  margin-bottom: 22px;
}

/* Desktop/laptop: overgang extra netjes afstellen */
@media(max-width: 1180px){
  .platform.section{
    padding-bottom: 42px;
  }

  .calendar.section{
    padding-top: 38px;
  }
}

/* Mobiel: genoeg ademruimte houden, maar geen onnodige leegte */
@media(max-width: 720px){
  .platform.section{
    padding-bottom: 34px;
  }

  .calendar.section{
    padding-top: 34px;
  }

  .calendar .section-head{
    margin-bottom: 20px;
  }
}


/* =========================================================
   QUICKFIX 7 — internationaal blok kalendersectie
   Basis: latest approved = quickfix_5 index + quickfix_6 style
   Files to replace/add in /402nieuw/:
   - index.html
   - style.css
   - assets/img/Grand_Autoshow_International.png
   ========================================================= */

/* Internationale kalenderblok: beeld vult links volledig, geen zwarte rand */
.calendar .international-block{
  align-items: stretch;
}

.calendar .international-image{
  height: auto;
  min-height: 360px;
  background: #111;
}

.calendar .international-image img{
  width: 100%;
  height: 100%;
  min-height: 360px;
  object-fit: cover;
  object-position: center center;
}

.calendar .international-content{
  min-height: 360px;
}

/* Responsive: op mobiel niet afsnijden, maar netjes stapelen */
@media(max-width: 900px){
  .calendar .international-block{
    grid-template-columns: 1fr;
  }

  .calendar .international-image{
    height: 260px;
    min-height: 260px;
  }

  .calendar .international-image img{
    height: 260px;
    min-height: 260px;
    object-fit: cover;
    object-position: center center;
  }

  .calendar .international-content{
    min-height: auto;
    padding: 30px 26px 32px;
  }

  .calendar .international-content h3{
    font-size: clamp(34px, 8vw, 44px);
  }

  .calendar .international-content p{
    font-size: 17px;
    line-height: 1.55;
  }
}

@media(max-width: 560px){
  .calendar .international-image{
    height: 220px;
    min-height: 220px;
  }

  .calendar .international-image img{
    height: 220px;
    min-height: 220px;
  }

  .calendar .international-content{
    padding: 26px 22px 28px;
  }
}


/* =========================================================
   VERSION 2.3 — homepage journey + compact section rhythm
   Basis: complete v2.2 + approved quickfixes through quickfix_7
   ========================================================= */

/* Algemene compacte sectieritme voor homepage */
main > .section{
  padding-top: 62px;
  padding-bottom: 66px;
}

main > .section .section-title{
  font-size: clamp(38px, 4.8vw, 72px);
  line-height: .92;
  letter-spacing: .025em;
}

main > .section .eyebrow{
  margin-bottom: 13px;
}

main > .section .lead{
  font-size: clamp(17px, 1.22vw, 20px);
  line-height: 1.58;
}

/* Behoud hero eigen ritme */
.hero{
  min-height: calc(100vh - var(--header));
}

/* Platform blijft compact volgens quickfix-lijn */
.platform.section{
  padding-top: 64px;
  padding-bottom: 44px;
}

/* Niet-menu storytelling-secties: lichter, meer als zwevende bewijspanelen */
.story-panel-section{
  background: linear-gradient(180deg,#fff,#fafafa);
  padding-top: 38px!important;
  padding-bottom: 44px!important;
}

/* Sfeer & cultuur: kleiner, panel-gevoel, niet als zware navigatiesectie */
#cultuur .proof-panel{
  padding: 34px;
  border: 1px solid var(--line);
  border-left: 7px solid var(--red);
  box-shadow: 0 18px 44px rgba(0,0,0,.06);
  background: #fff;
}

#cultuur .section-title{
  font-size: clamp(34px, 4.1vw, 60px)!important;
  margin-bottom: 16px;
}

#cultuur .lead{
  max-width: 900px;
  margin-bottom: 22px;
}

#cultuur .culture-grid,
#cultuur .photo-grid{
  margin-top: 24px!important;
  grid-template-rows: 220px 220px!important;
}

/* Kalender volgt directer na sfeerblok */
.calendar.section{
  padding-top: 46px;
  padding-bottom: 54px;
}

/* Uitgelicht succes als compacte zwevende proof-card */
.success.story-panel-section{
  padding-top: 42px!important;
  padding-bottom: 50px!important;
}

.success.story-panel-section .container{
  border: 1px solid var(--line);
  border-left: 7px solid var(--red);
  background: #fff;
  box-shadow: 0 18px 44px rgba(0,0,0,.055);
  padding: 34px 38px;
}

.success .section-title{
  font-size: clamp(34px, 4.1vw, 60px)!important;
  margin-bottom: 18px;
}

.success .lead{
  margin-bottom: 20px;
}

.success-grid{
  margin-top: 24px;
}

.success-item{
  padding: 22px;
  box-shadow: none;
}

/* Nieuws direct na succes: compact, met duidelijke kop */
.news.section{
  padding-top: 54px;
  padding-bottom: 60px;
}

.news .section-head{
  margin-bottom: 26px;
}

.news .section-title{
  font-size: clamp(38px, 4.6vw, 68px)!important;
}

/* Voor bedrijven na nieuws; iets meer nadruk als conversieblok */
.b2b.section{
  padding-top: 64px;
  padding-bottom: 70px;
}

/* Team/contact blijven compact maar genoeg ademruimte */
.team.section{
  padding-top: 58px;
  padding-bottom: 58px;
}

.contact.section{
  padding-top: 58px;
}

/* Anchor offsets op nieuwe volgorde */
#platform{ scroll-margin-top: calc(var(--header) + 62px); }
#kalender{ scroll-margin-top: calc(var(--header) + 54px); }
#nieuws{ scroll-margin-top: calc(var(--header) + 54px); }
#bedrijven{ scroll-margin-top: calc(var(--header) + 54px); }
#team{ scroll-margin-top: calc(var(--header) + 54px); }
#contact{ scroll-margin-top: calc(var(--header) + 54px); }

/* Mobiel: nieuwe volgorde zonder afsnijden of enorme witvlakken */
@media(max-width: 1100px){
  main > .section{
    padding-top: 54px;
    padding-bottom: 56px;
  }

  #cultuur .culture-grid,
  #cultuur .photo-grid{
    grid-template-rows: 230px 230px!important;
  }

  .success.story-panel-section .container{
    padding: 30px;
  }
}

@media(max-width: 720px){
  main > .section{
    padding-top: 44px;
    padding-bottom: 48px;
  }

  main > .section .section-title,
  #cultuur .section-title,
  .success .section-title,
  .news .section-title{
    font-size: clamp(32px, 9vw, 44px)!important;
  }

  .story-panel-section{
    padding-top: 30px!important;
    padding-bottom: 34px!important;
  }

  #cultuur .proof-panel{
    padding: 24px;
  }

  #cultuur .culture-grid,
  #cultuur .photo-grid{
    margin-top: 20px!important;
  }

  #cultuur .culture-grid figure,
  #cultuur .photo-grid figure{
    height: 220px!important;
  }

  .success.story-panel-section .container{
    width: min(var(--max),calc(100% - 30px));
    padding: 24px;
  }

  .success-grid{
    grid-template-columns: 1fr!important;
  }

  #platform,
  #kalender,
  #nieuws,
  #bedrijven,
  #team,
  #contact{
    scroll-margin-top: calc(var(--header) + 34px);
  }
}


/* =========================================================
   402nieuw_v2.3 QUICKFIX 1 — mobiel internationaal blok
   Basis: 402nieuw_v2.3
   File to replace in /402nieuw/: style.css
   ========================================================= */

/* Extra veiligheid: internationale blok mag nooit horizontaal uitlopen */
.calendar .international-block,
.calendar .international-block *{
  box-sizing: border-box;
}

.calendar .international-block{
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}

.calendar .international-content{
  min-width: 0;
  overflow-wrap: anywhere;
}

/* Desktop blijft grotendeels gelijk, maar button blijft binnen de contentkolom */
.calendar .international-content .btn{
  max-width: 100%;
  white-space: normal;
}

/* Mobiel: volledig binnen viewport, geen afgesneden tekst of button */
@media(max-width: 900px){
  .calendar .international-block{
    width: 100%;
    max-width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    margin-left: 0;
    margin-right: 0;
    overflow: hidden;
  }

  .calendar .international-image{
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .calendar .international-image img{
    display: block;
    width: 100%;
    max-width: 100%;
    height: 260px;
    min-height: 260px;
    object-fit: cover;
    object-position: center center;
  }

  .calendar .international-content{
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding: 30px 24px 32px;
    overflow: hidden;
  }

  .calendar .international-content .eyebrow{
    font-size: 12px;
    letter-spacing: .20em;
    margin-bottom: 16px;
  }

  .calendar .international-content h3{
    max-width: 100%;
    font-size: clamp(32px, 9vw, 44px);
    line-height: .96;
    letter-spacing: .025em;
    overflow-wrap: anywhere;
    word-break: normal;
  }

  .calendar .international-content p{
    max-width: 100%;
    font-size: 17px;
    line-height: 1.52;
    overflow-wrap: anywhere;
    word-break: normal;
  }

  .calendar .international-content .btn{
    width: 100%;
    max-width: 100%;
    min-width: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 52px;
    padding: 0 16px;
    font-size: 12px;
    line-height: 1.2;
    text-align: center;
    white-space: normal;
    overflow-wrap: anywhere;
  }
}

/* Kleinere mobiele schermen zoals iPhone/Safari rond 390px */
@media(max-width: 560px){
  .calendar .international-block{
    width: 100%;
    max-width: 100%;
  }

  .calendar .international-image,
  .calendar .international-image img{
    height: 215px;
    min-height: 215px;
  }

  .calendar .international-content{
    padding: 26px 20px 28px;
  }

  .calendar .international-content h3{
    font-size: clamp(30px, 11vw, 40px);
  }

  .calendar .international-content p{
    font-size: 16px;
    line-height: 1.5;
  }

  .calendar .international-content .btn{
    min-height: 50px;
    padding-left: 12px;
    padding-right: 12px;
    font-size: 11px;
    letter-spacing: .10em;
  }
}

/* Extra krappe schermen: buttontekst blijft binnen het rode vlak */
@media(max-width: 390px){
  .calendar .international-content{
    padding-left: 18px;
    padding-right: 18px;
  }

  .calendar .international-content .btn{
    font-size: 10px;
    letter-spacing: .085em;
  }
}


/* =========================================================
   402nieuw_v2.3 QUICKFIX 2 — nieuwsbeelden + teamfoto-hover
   Basis: 402nieuw_v2.3 + quickfix_1
   Files to replace/add:
   - index.html
   - style.css
   - assets/img/news_parijs.jpg
   - assets/img/news_jesco.jpg
   - assets/img/news_superfast_straaljager.jpg
   - assets/img/teamfoto.png
   - assets/img/teamfoto_frankrijk.png
   ========================================================= */

/* Nieuwsbeelden netjes in bestaande kaarten laten vallen */
.news-card img,
.news .news-card img{
  width: 100%;
  height: 230px;
  object-fit: cover;
  object-position: center center;
  display: block;
}

/* Fijne crop per nieuwscard */
.news-card:nth-child(1) img{
  object-position: center center;
}

.news-card:nth-child(2) img{
  object-position: center center;
}

.news-card:nth-child(3) img{
  object-position: center center;
}

/* Teamfoto hover: subtiele crossfade zonder layoutverschuiving */
.team-hover-image{
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 420px;
  overflow: hidden;
  background: #111;
}

.team-hover-image .team-img{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
  transition: opacity .38s ease, transform .5s ease;
}

.team-hover-image .team-img-default{
  opacity: 1;
  z-index: 1;
}

.team-hover-image .team-img-hover{
  opacity: 0;
  z-index: 2;
  transform: scale(1.015);
}

.team-hover-image:hover .team-img-default{
  opacity: 0;
}

.team-hover-image:hover .team-img-hover{
  opacity: 1;
  transform: scale(1);
}

/* Als de bestaande team-afbeeldingscontainer een vaste img-styling heeft, blijft deze wrapper leidend */
.team figure .team-hover-image,
.team-image .team-hover-image,
.team-media .team-hover-image{
  height: 100%;
}

/* Mobiel: standaardfoto tonen, geen hover-afhankelijk gedrag nodig */
@media(max-width: 720px){
  .news-card img,
  .news .news-card img{
    height: 210px;
  }

  .team-hover-image{
    min-height: 320px;
  }

  .team-hover-image .team-img-hover{
    display: none;
  }

  .team-hover-image .team-img-default{
    opacity: 1;
    position: absolute;
  }
}


/* =========================================================
   402nieuw_v2.3 QUICKFIX 4 — mobiel internationaal blok
   + teamfoto-hover overlay
   Basis: 402nieuw_v2.3 + quickfix_1 + quickfix_2 + quickfix_3
   File to replace in /402nieuw/: style.css
   ========================================================= */

/* ---------------------------------------------------------
   Internationale events — mobiele veiligheid Chrome/Safari
   --------------------------------------------------------- */

.calendar .international-block,
.calendar .international-block *{
  box-sizing: border-box;
}

.calendar .international-block{
  max-width: 100%;
  overflow: hidden;
}

.calendar .international-content,
.calendar .international-content *{
  min-width: 0;
}

/* Voorkom rare woordbreuken zoals INTERNATIONA LE */
.calendar .international-content h3,
.calendar .international-content p,
.calendar .international-content .btn{
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

/* Mobiel/tablet: blok volledig binnen viewport houden */
@media(max-width: 900px){
  .calendar .container{
    overflow: hidden;
  }

  .calendar .international-block{
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
    overflow: hidden;
  }

  .calendar .international-image{
    width: 100%;
    max-width: 100%;
    height: 252px;
    min-height: 252px;
    overflow: hidden;
  }

  .calendar .international-image img{
    display: block;
    width: 100%;
    max-width: 100%;
    height: 252px;
    min-height: 252px;
    object-fit: cover;
    object-position: center center;
  }

  .calendar .international-content{
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding: 30px 22px 34px;
    overflow: hidden;
  }

  .calendar .international-content .eyebrow{
    font-size: 11px;
    letter-spacing: .22em;
    margin-bottom: 16px;
  }

  .calendar .international-content h3{
    width: 100%;
    max-width: 100%;
    font-size: clamp(30px, 8vw, 38px) !important;
    line-height: 1.02 !important;
    letter-spacing: .035em !important;
    white-space: normal !important;
    margin-bottom: 20px;
  }

  .calendar .international-content p{
    width: 100%;
    max-width: 100%;
    font-size: 16px !important;
    line-height: 1.52 !important;
    white-space: normal !important;
    margin-bottom: 26px;
  }

  .calendar .international-content .btn{
    width: calc(100% - 82px);
    max-width: calc(100% - 82px);
    min-width: 0;
    min-height: 52px;
    padding: 0 14px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    white-space: normal !important;
    font-size: 11px;
    line-height: 1.25;
    letter-spacing: .11em;
  }
}

/* iPhone-breedtes: titel nog iets rustiger zodat woorden heel blijven */
@media(max-width: 560px){
  .calendar .international-image,
  .calendar .international-image img{
    height: 220px;
    min-height: 220px;
  }

  .calendar .international-content{
    padding: 26px 18px 30px;
  }

  .calendar .international-content .eyebrow{
    font-size: 10px;
    letter-spacing: .20em;
  }

  .calendar .international-content h3{
    font-size: clamp(28px, 7.8vw, 33px) !important;
    line-height: 1.04 !important;
    letter-spacing: .025em !important;
  }

  .calendar .international-content p{
    font-size: 15.5px !important;
    line-height: 1.52 !important;
  }

  .calendar .international-content .btn{
    width: calc(100% - 78px);
    max-width: calc(100% - 78px);
    font-size: 10.5px;
    letter-spacing: .09em;
  }
}

@media(max-width: 390px){
  .calendar .international-content{
    padding-left: 16px;
    padding-right: 16px;
  }

  .calendar .international-content h3{
    font-size: clamp(26px, 7.5vw, 30px) !important;
    letter-spacing: .02em !important;
  }

  .calendar .international-content p{
    font-size: 15px !important;
  }

  .calendar .international-content .btn{
    width: calc(100% - 72px);
    max-width: calc(100% - 72px);
    font-size: 10px;
    letter-spacing: .075em;
    padding-left: 10px;
    padding-right: 10px;
  }
}

/* ---------------------------------------------------------
   Teamfoto-hover — exacte overlay, geen tweede foto eronder
   --------------------------------------------------------- */

.team-image{
  position: relative !important;
  overflow: hidden !important;
  min-height: 330px;
}

.team-image .team-hover-image{
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  background: #111;
}

.team-image .team-hover-image .team-img,
.team-image .team-hover-image img.team-img{
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  transition: opacity .38s ease, transform .5s ease;
}

.team-image .team-hover-image .team-img-default{
  opacity: 1 !important;
  z-index: 1;
  transform: scale(1);
}

.team-image .team-hover-image .team-img-hover{
  opacity: 0 !important;
  z-index: 2;
  transform: scale(1.015);
}

@media(hover:hover) and (pointer:fine){
  .team-image .team-hover-image:hover .team-img-default{
    opacity: 0 !important;
  }

  .team-image .team-hover-image:hover .team-img-hover{
    opacity: 1 !important;
    transform: scale(1);
  }
}

/* Mobiel: geen hovergedrag, alleen standaard teamfoto */
@media(max-width: 720px){
  .team-image{
    min-height: 360px;
  }

  .team-image .team-hover-image{
    position: absolute !important;
    inset: 0 !important;
  }

  .team-image .team-hover-image .team-img-default{
    opacity: 1 !important;
  }

  .team-image .team-hover-image .team-img-hover{
    display: none !important;
    opacity: 0 !important;
  }
}


/* =========================================================
   402nieuw_v2.3 QUICKFIX 5 — contactsectie compacter
   Basis: laatst werkende live versie + quickfix 1 t/m 4
   Files to replace in /402nieuw/:
   - index.html
   - style.css
   ========================================================= */

.contact-v5{
  padding-top: 54px;
  padding-bottom: 70px;
  background: #fff;
}

.contact-grid-v5{
  display: grid;
  grid-template-columns: minmax(280px,.86fr) minmax(460px,1.14fr);
  grid-template-areas:
    "intro form"
    "support form";
  gap: 26px 48px;
  align-items: start;
}

.contact-v5 .contact-intro{
  grid-area: intro;
}

.contact-v5 .form-box{
  grid-area: form;
}

.contact-v5 .contact-support{
  grid-area: support;
}

.contact-v5 .section-title{
  font-size: clamp(40px, 5vw, 72px);
  line-height: .92;
  margin-bottom: 22px;
}

.contact-v5 .lead{
  max-width: 650px;
  margin-bottom: 0;
  font-size: clamp(17px,1.15vw,19px);
  line-height: 1.55;
}

.contact-support{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.contact-card{
  border: 1px solid var(--line);
  border-left: 5px solid var(--red);
  background: #fff;
  padding: 18px 20px;
  min-height: 104px;
  box-shadow: 0 12px 30px rgba(0,0,0,.035);
}

.contact-card small{
  display: block;
  margin-bottom: 10px;
  color: var(--muted);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: 11px;
}

.contact-card strong,
.contact-card span{
  display: block;
  color: var(--black);
  font-size: 17px;
  line-height: 1.35;
}

.contact-card strong + strong,
.contact-card span + span{
  margin-top: 5px;
}

.contact-card-address{
  grid-column: 1 / -1;
}

.contact-card-address b{
  font-weight: 900;
}

.contact-card-social{
  grid-column: 1 / -1;
  min-height: auto;
}

.contact-socials{
  display: flex;
  gap: 10px;
  align-items: center;
}

.contact-socials .social{
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  border-radius: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  box-shadow: none;
  transition: transform .18s ease, filter .18s ease;
}

.contact-socials .social:hover{
  transform: translateY(-2px);
  filter: brightness(.96);
}

.contact-socials .social img{
  width: 18px;
  height: 18px;
  object-fit: contain;
  display: block;
}

.contact-socials .linkedin{ background:#0A66C2; }
.contact-socials .instagram{ background:linear-gradient(135deg,#833AB4,#E1306C,#FCAF45); }
.contact-socials .facebook{ background:#1877F2; }
.contact-socials .tiktok{ background:#050505; }

.contact-v5 .form-box{
  border: 1px solid var(--line);
  border-left: 6px solid var(--red);
  padding: 28px 32px 30px;
  box-shadow: 0 16px 38px rgba(0,0,0,.045);
}

.contact-v5 .form-grid{
  gap: 14px 16px;
}

.contact-v5 .field label{
  margin-bottom: 7px;
  font-size: 11px;
  letter-spacing: .14em;
}

.contact-v5 input,
.contact-v5 select,
.contact-v5 textarea{
  min-height: 46px;
  padding: 10px 14px;
  font-size: 15px;
  border-radius: 0;
}

.contact-v5 textarea{
  min-height: 132px;
  resize: vertical;
}

.contact-v5 .subgrid{
  gap: 14px 16px;
}

.contact-v5 .form-box .btn{
  min-height: 52px;
  width: 100%;
  padding: 0 22px;
}

/* Mobiel: formulier eerst, contactgegevens daarna */
@media(max-width: 900px){
  .contact-v5{
    padding-top: 42px;
    padding-bottom: 54px;
  }

  .contact-grid-v5{
    display: flex;
    flex-direction: column;
    gap: 22px;
  }

  .contact-v5 .contact-intro{
    order: 1;
  }

  .contact-v5 .form-box{
    order: 2;
    width: 100%;
  }

  .contact-v5 .contact-support{
    order: 3;
    width: 100%;
  }

  .contact-v5 .section-title{
    font-size: clamp(34px, 10vw, 48px);
    margin-bottom: 18px;
  }

  .contact-v5 .lead{
    font-size: 16px;
    line-height: 1.52;
  }

  .contact-v5 .form-box{
    padding: 22px 18px 24px;
  }

  .contact-v5 .form-grid{
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .contact-v5 .field,
  .contact-v5 .field.full{
    grid-column: 1 / -1;
  }

  .contact-v5 input,
  .contact-v5 select{
    min-height: 44px;
    padding: 9px 12px;
    font-size: 15px;
  }

  .contact-v5 textarea{
    min-height: 116px;
  }

  .contact-v5 .form-box .btn{
    min-height: 50px;
    font-size: 12px;
    letter-spacing: .13em;
  }

  .contact-support{
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .contact-card,
  .contact-card-address,
  .contact-card-social{
    grid-column: 1 / -1;
    padding: 16px 18px;
    min-height: auto;
  }

  .contact-card small{
    margin-bottom: 8px;
    font-size: 10px;
    letter-spacing: .16em;
  }

  .contact-card strong,
  .contact-card span{
    font-size: 15.5px;
  }

  .contact-socials .social{
    width: 40px;
    height: 40px;
    flex-basis: 40px;
  }

  .contact-socials .social img{
    width: 17px;
    height: 17px;
  }
}

@media(max-width: 420px){
  .contact-v5 .container{
    width: min(var(--max), calc(100% - 30px));
  }

  .contact-v5 .form-box{
    padding-left: 16px;
    padding-right: 16px;
  }

  .contact-card{
    padding-left: 16px;
    padding-right: 16px;
  }
}


/* =========================================================
   402nieuw_v2.3 QUICKFIX 6 — contact desktop alignment
   Basis: 402nieuw_v2.3_quickfix_5
   Files to replace in /402nieuw/:
   - index.html
   - style.css
   ========================================================= */

/* Desktop: contactsectie als één rustig blok laten vallen */
@media(min-width: 901px){
  .contact-v5{
    padding-top: 50px;
    padding-bottom: 66px;
  }

  .contact-grid-v5{
    grid-template-columns: minmax(410px, .92fr) minmax(520px, 1.08fr);
    grid-template-areas:
      "intro ."
      "support form";
    gap: 18px 44px;
    align-items: end;
  }

  .contact-v5 .contact-intro{
    align-self: end;
  }

  .contact-v5 .section-title{
    font-size: clamp(54px, 5.9vw, 82px);
    line-height: .91;
    letter-spacing: .045em;
    margin-bottom: 20px;
  }

  .contact-v5 .lead{
    max-width: 760px;
    font-size: 18px;
    line-height: 1.52;
  }

  .contact-v5 .form-box{
    align-self: end;
    padding: 24px 28px 26px;
    box-shadow: 0 14px 34px rgba(0,0,0,.04);
  }

  .contact-v5 .form-grid{
    gap: 12px 14px;
  }

  .contact-v5 .field label{
    margin-bottom: 6px;
    font-size: 10.5px;
    letter-spacing: .14em;
  }

  .contact-v5 input,
  .contact-v5 select{
    min-height: 42px;
    padding: 8px 12px;
    font-size: 14.5px;
  }

  .contact-v5 textarea{
    min-height: 108px;
    padding: 10px 12px;
    font-size: 14.5px;
  }

  .contact-v5 .subgrid{
    gap: 12px 14px;
  }

  .contact-v5 .form-box .btn{
    min-height: 48px;
    margin-top: 0;
  }

  .contact-support{
    align-self: end;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  .contact-card{
    padding: 15px 18px;
    min-height: 92px;
    box-shadow: 0 10px 24px rgba(0,0,0,.03);
  }

  .contact-card small{
    margin-bottom: 8px;
    font-size: 10.5px;
    letter-spacing: .16em;
  }

  .contact-card strong,
  .contact-card span{
    font-size: 15.5px;
    line-height: 1.34;
  }

  .contact-card-address{
    min-height: 94px;
  }

  .contact-card-social{
    min-height: 72px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
  }

  .contact-card-social small{
    margin-bottom: 0;
    flex: 0 0 auto;
  }

  .contact-socials{
    flex: 0 0 auto;
  }

  .contact-socials .social{
    width: 38px;
    height: 38px;
    flex-basis: 38px;
  }

  .contact-socials .social img{
    width: 16px;
    height: 16px;
  }
}

/* Medium desktop/laptop: net iets minder breed en nog steeds rustig */
@media(min-width: 901px) and (max-width: 1180px){
  .contact-grid-v5{
    grid-template-columns: minmax(360px,.95fr) minmax(460px,1.05fr);
    gap: 16px 34px;
  }

  .contact-v5 .section-title{
    font-size: clamp(48px, 5.6vw, 70px);
  }

  .contact-v5 .lead{
    font-size: 17px;
  }

  .contact-v5 .form-box{
    padding: 22px 24px 24px;
  }

  .contact-card{
    padding: 14px 16px;
  }
}

/* Mobiel intact houden, alleen expliciet geen desktop-grid erven */
@media(max-width: 900px){
  .contact-grid-v5{
    align-items: stretch;
  }

  .contact-v5 .form-box,
  .contact-v5 .contact-support{
    align-self: stretch;
  }
}


/* =========================================================
   402nieuw_v2.3 QUICKFIX 7 — contact compositie desktop
   Basis: 402nieuw_v2.3_quickfix_6
   Files to replace in /402nieuw/:
   - index.html
   - style.css
   ========================================================= */

/* Desktop: titel over de breedte, daaronder tekst/contact links en formulier rechts */
@media(min-width: 901px){
  .contact-v5{
    padding-top: 48px;
    padding-bottom: 64px;
  }

  .contact-grid-v5{
    grid-template-columns: minmax(430px, .92fr) minmax(520px, 1.08fr);
    grid-template-areas:
      "intro intro"
      "support form";
    column-gap: 48px;
    row-gap: 18px;
    align-items: start;
  }

  .contact-v5 .contact-intro{
    grid-area: intro;
    max-width: 100%;
  }

  .contact-v5 .section-title{
    max-width: 100%;
    font-size: clamp(54px, 5.9vw, 82px);
    line-height: .91;
    letter-spacing: .045em;
    margin-bottom: 26px;
  }

  .contact-v5 .lead{
    display: none;
  }

  .contact-v5 .contact-support{
    grid-area: support;
    align-self: stretch;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto auto;
    gap: 12px;
  }

  .contact-v5 .contact-support::before{
    content: "Heb je een vraag over samenwerking, partnerships, exposeren, locaties, stages, sollicitaties, vrijwilligerswerk of iets algemeens? Vul het formulier in. Dat is voor ons de snelste route om je bericht bij de juiste persoon binnen 402 Automotive te krijgen.";
    grid-column: 1 / -1;
    display: block;
    font-size: 18px;
    line-height: 1.52;
    color: var(--text);
    margin: 0 0 12px;
    max-width: 720px;
  }

  .contact-v5 .contact-card{
    padding: 15px 18px;
    min-height: 88px;
    box-shadow: 0 10px 24px rgba(0,0,0,.03);
  }

  .contact-v5 .contact-card small{
    margin-bottom: 8px;
    font-size: 10.5px;
    letter-spacing: .16em;
  }

  .contact-v5 .contact-card strong,
  .contact-v5 .contact-card span{
    font-size: 15.5px;
    line-height: 1.34;
  }

  .contact-v5 .contact-card-address{
    grid-column: 1 / -1;
    min-height: 90px;
  }

  .contact-v5 .contact-card-social{
    grid-column: 1 / -1;
    min-height: 66px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
  }

  .contact-v5 .contact-card-social small{
    margin-bottom: 0;
  }

  .contact-v5 .form-box{
    grid-area: form;
    align-self: stretch;
    margin-top: 0;
    padding: 24px 28px 26px;
    box-shadow: 0 14px 34px rgba(0,0,0,.04);
  }

  .contact-v5 .form-grid{
    gap: 12px 14px;
  }

  .contact-v5 .field label{
    margin-bottom: 6px;
    font-size: 10.5px;
    letter-spacing: .14em;
  }

  .contact-v5 input,
  .contact-v5 select{
    min-height: 42px;
    padding: 8px 12px;
    font-size: 14.5px;
  }

  .contact-v5 textarea{
    min-height: 108px;
    padding: 10px 12px;
    font-size: 14.5px;
  }

  .contact-v5 .form-box .btn{
    min-height: 48px;
  }
}

/* Desktop-variant voor iets smallere schermen */
@media(min-width: 901px) and (max-width: 1180px){
  .contact-grid-v5{
    grid-template-columns: minmax(360px,.95fr) minmax(460px,1.05fr);
    column-gap: 34px;
  }

  .contact-v5 .section-title{
    font-size: clamp(48px, 5.6vw, 70px);
  }

  .contact-v5 .contact-support::before{
    font-size: 17px;
  }

  .contact-v5 .form-box{
    padding: 22px 24px 24px;
  }

  .contact-v5 .contact-card{
    padding: 14px 16px;
  }
}

/* Mobiel: behoud quickfix 5/6 volgorde en gebruik de echte leadtekst */
@media(max-width: 900px){
  .contact-v5 .lead{
    display: block;
  }

  .contact-v5 .lead strong{
    font-weight: 900;
    color: var(--black);
  }

  .contact-v5 .contact-support::before{
    content: none;
  }
}


/* =========================================================
   402nieuw_v2.3 QUICKFIX 8 — Sfeer & cultuur homepage + landingspagina
   Basis: 402nieuw_v2.3_quickfix_7
   Files:
   - index.html
   - style.css
   - sfeer-cultuur.html
   - assets/img/sfeer-cultuur-enzo-knol.jpg
   ========================================================= */

/* Homepage: Sfeer & cultuur als commerciële, rustige entree */
.culture-home.story-panel-section{
  padding-top: 38px!important;
  padding-bottom: 46px!important;
}

.culture-home-panel{
  border: 1px solid var(--line);
  border-left: 7px solid var(--red);
  background: #fff;
  box-shadow: 0 18px 44px rgba(0,0,0,.06);
  padding: 34px;
}

.culture-home-head{
  max-width: 1040px;
  margin-bottom: 24px;
}

.culture-home .section-title{
  font-size: clamp(34px, 4.1vw, 60px)!important;
  line-height: .92;
  margin-bottom: 16px;
}

.culture-home .lead{
  max-width: 920px;
  margin-bottom: 0;
}

.culture-showcase-grid{
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, .85fr) minmax(0, .85fr);
  grid-template-rows: 210px 210px auto;
  gap: 14px;
}

.culture-tile{
  position: relative;
  display: block;
  min-height: 210px;
  overflow: hidden;
  background: #111;
  color: #fff;
  border: 1px solid rgba(0,0,0,.08);
  isolation: isolate;
}

.culture-tile-large{
  grid-row: span 2;
  min-height: 434px;
}

.culture-tile img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  transition: transform .45s ease, filter .45s ease;
}

.culture-tile-overlay{
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.68));
  z-index: 1;
}

.culture-tile-copy{
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 17px;
  z-index: 2;
}

.culture-tile-copy small,
.culture-media-cta small,
.culture-page-card small{
  display: block;
  margin-bottom: 8px;
  color: #fff;
  font-size: 11px;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .16em;
}

.culture-tile-copy h3{
  margin: 0;
  text-transform: uppercase;
  font-size: 22px;
  line-height: 1.05;
  letter-spacing: .03em;
}

.culture-tile-large .culture-tile-copy h3{
  font-size: clamp(28px, 2.8vw, 42px);
  max-width: 620px;
}

.culture-tile-copy p{
  max-width: 620px;
  margin: 10px 0 0;
  color: rgba(255,255,255,.86);
  line-height: 1.45;
}

.culture-tile:hover img{
  transform: scale(1.035);
  filter: saturate(1.05) contrast(1.04);
}

.culture-media-cta{
  border: 1px solid var(--line);
  border-left: 7px solid var(--red);
  padding: 22px;
  background: #fff;
  min-height: 150px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
}

.culture-media-cta small{
  color: var(--muted);
}

.culture-media-cta h3{
  margin: 0 0 7px;
  text-transform: uppercase;
  font-size: 26px;
  line-height: 1;
}

.culture-media-cta p{
  margin: 0 0 16px;
  color: #555;
  line-height: 1.45;
}

.culture-media-cta .btn{
  min-height: 42px;
}

/* Landingspagina sfeer-cultuur */
.culture-page-hero{
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(255,255,255,.97), rgba(255,255,255,.92), rgba(255,255,255,.62)),
    url('assets/img/indoor-overview.jpg') center/cover no-repeat;
  border-bottom: 1px solid var(--line);
}

.culture-page-hero h1{
  max-width: 980px;
}

.culture-page-hero p:not(.eyebrow){
  max-width: 860px;
}

.culture-page-ctas{
  margin-top: 28px;
}

.culture-page-section{
  padding-top: 66px;
  padding-bottom: 70px;
}

.culture-page-intro{
  max-width: 1040px;
  margin-bottom: 30px;
}

.culture-page-grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.culture-page-card{
  border: 1px solid var(--line);
  border-left: 7px solid var(--red);
  background: #fff;
  box-shadow: 0 14px 36px rgba(0,0,0,.045);
  overflow: hidden;
}

.culture-page-card-wide{
  grid-column: span 2;
}

.culture-page-card img{
  width: 100%;
  height: 240px;
  object-fit: cover;
  object-position: center center;
}

.culture-page-card-wide img{
  height: 310px;
}

.culture-page-card div{
  padding: 24px 26px 26px;
}

.culture-page-card small{
  color: var(--red);
}

.culture-page-card h3{
  margin: 0 0 12px;
  text-transform: uppercase;
  font-size: 25px;
  line-height: 1.05;
}

.culture-page-card p{
  margin: 0;
  color: #555;
  line-height: 1.56;
}

.culture-page-card-dark{
  background: #111;
  color: #fff;
}

.culture-page-card-dark p{
  color: rgba(255,255,255,.78);
}

.culture-page-card-dark small{
  color: #fff;
}

.culture-media-section{
  padding-top: 58px;
  padding-bottom: 62px;
}

.culture-media-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.culture-media-panel{
  border: 1px solid var(--line);
  border-left: 7px solid var(--red);
  background: #fff;
  padding: 34px;
  box-shadow: 0 14px 36px rgba(0,0,0,.045);
}

.culture-media-panel h2{
  margin: 0 0 12px;
  text-transform: uppercase;
  font-size: clamp(30px, 3vw, 46px);
  line-height: 1;
}

.culture-media-panel p:not(.eyebrow){
  margin: 0 0 22px;
  color: #555;
  line-height: 1.55;
}

.culture-media-panel-dark{
  background: #111;
  color: #fff;
}

.culture-media-panel-dark p:not(.eyebrow){
  color: rgba(255,255,255,.78);
}

.culture-back-section{
  padding-top: 54px;
  padding-bottom: 60px;
}

.culture-back-panel{
  border: 1px solid var(--line);
  border-left: 7px solid var(--red);
  padding: 30px 34px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.culture-back-panel .section-title{
  margin-bottom: 10px;
}

.culture-back-panel .lead{
  margin-bottom: 0;
}

@media(max-width: 1100px){
  .culture-showcase-grid{
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
  }

  .culture-tile-large{
    grid-column: 1 / -1;
    min-height: 360px;
  }

  .culture-page-grid{
    grid-template-columns: 1fr 1fr;
  }

  .culture-page-card-wide{
    grid-column: 1 / -1;
  }
}

@media(max-width: 720px){
  .culture-home.story-panel-section{
    padding-top: 30px!important;
    padding-bottom: 36px!important;
  }

  .culture-home-panel{
    padding: 24px;
  }

  .culture-showcase-grid{
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .culture-tile,
  .culture-tile-large{
    min-height: 230px;
  }

  .culture-tile-large .culture-tile-copy h3,
  .culture-tile-copy h3{
    font-size: 24px;
  }

  .culture-tile-copy p{
    display: none;
  }

  .culture-media-cta{
    min-height: auto;
    padding: 20px;
  }

  .culture-page-hero{
    background:
      linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.90)),
      url('assets/img/indoor-overview.jpg') center/cover no-repeat;
  }

  .culture-page-section{
    padding-top: 46px;
    padding-bottom: 50px;
  }

  .culture-page-grid,
  .culture-media-grid{
    grid-template-columns: 1fr;
  }

  .culture-page-card,
  .culture-page-card-wide{
    grid-column: auto;
  }

  .culture-page-card img,
  .culture-page-card-wide img{
    height: 220px;
  }

  .culture-page-card div,
  .culture-media-panel{
    padding: 22px;
  }

  .culture-back-panel{
    display: block;
    padding: 24px;
  }

  .culture-back-panel .btn{
    margin-top: 18px;
    width: 100%;
  }
}

/* =====================================================
   QUICKFIX 10 — Kalender als marktbewijs
   Basis: 402nieuw_v2.3 + quickfix 1 t/m 9
   Doel: Nederland, België, Frankrijk, Qatar en Dubai zichtbaar maken
   ===================================================== */

.calendar-head{
  align-items: end;
  margin-bottom: 22px;
}

.calendar-lead{
  max-width: 830px;
  margin: 12px 0 0;
  font-size: 19px;
  line-height: 1.55;
}

.market-strip{
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 26px;
}

.market-card{
  position: relative;
  display: block;
  min-height: 118px;
  padding: 18px 18px 17px;
  border: 1px solid var(--line);
  border-left: 6px solid var(--red);
  background: #fff;
  box-shadow: 0 12px 34px rgba(0,0,0,.045);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease, color .18s ease;
  overflow: hidden;
}

.market-card::after{
  content: "";
  position: absolute;
  inset: auto 14px 14px auto;
  width: 42px;
  height: 3px;
  background: var(--red);
  opacity: .18;
  transition: opacity .18s ease, width .18s ease;
}

.market-card span{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 32px;
  margin-bottom: 14px;
  background: #111;
  color: #fff;
  font-weight: 1000;
  letter-spacing: .08em;
  font-size: 13px;
}

.market-card strong{
  display: block;
  text-transform: uppercase;
  font-size: 18px;
  line-height: 1.05;
  margin-bottom: 8px;
}

.market-card small{
  display: block;
  color: #666;
  line-height: 1.35;
  font-size: 12px;
  font-weight: 700;
}

.market-card:hover{
  transform: translateY(-3px);
  box-shadow: 0 20px 44px rgba(0,0,0,.09);
  border-color: #111;
}

.market-card:hover::after{
  opacity: 1;
  width: 64px;
}

.country-badge{
  position: absolute;
  right: 18px;
  top: 18px;
  min-width: 46px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #111;
  color: #fff;
  border-left: 5px solid var(--red);
  font-weight: 1000;
  letter-spacing: .12em;
  font-size: 13px;
  box-shadow: 0 10px 26px rgba(0,0,0,.20);
}

.calendar .market-proof-block{
  grid-template-columns: 1fr 1fr;
  margin-top: 34px;
}

.calendar .market-proof-block .international-content{
  padding: 40px 44px;
}

.calendar .market-proof-block .international-content h3{
  max-width: 600px;
  font-size: clamp(34px, 3.8vw, 52px);
  line-height: .98;
}

.international-market-grid{
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  margin: 22px 0 24px;
}

.international-market-grid span{
  display: block;
  border: 1px solid rgba(255,255,255,.16);
  border-left: 4px solid var(--red);
  padding: 13px 11px 12px;
  background: rgba(255,255,255,.045);
}

.international-market-grid strong{
  display: block;
  color: #fff;
  font-size: 20px;
  line-height: 1;
  letter-spacing: .08em;
}

.international-market-grid em{
  display: block;
  margin-top: 8px;
  color: #fff;
  font-style: normal;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .05em;
  font-size: 10px;
  line-height: 1.15;
}

.international-market-grid small{
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.66);
  font-size: 11px;
  line-height: 1.25;
}

.international-actions{
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.international-actions .btn{
  min-height: 48px;
  font-size: 12px;
  padding-inline: 20px;
}

@media(max-width: 1100px){
  .market-strip{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .calendar .market-proof-block{
    grid-template-columns: 1fr;
  }
}

@media(max-width: 760px){
  .calendar-head{
    margin-bottom: 18px;
  }

  .calendar-lead{
    font-size: 17px;
    line-height: 1.5;
  }

  .market-strip{
    grid-template-columns: 1fr;
    gap: 10px;
    margin-bottom: 22px;
  }

  .market-card{
    min-height: auto;
    padding: 15px 16px;
  }

  .market-card span{
    min-width: 38px;
    height: 30px;
    margin-bottom: 9px;
  }

  .market-card strong{
    font-size: 17px;
  }

  .market-card small{
    font-size: 12px;
  }

  .country-badge{
    right: 14px;
    top: 14px;
    height: 38px;
    min-width: 42px;
    font-size: 12px;
  }

  .calendar .market-proof-block .international-content{
    padding: 28px 26px 30px;
  }

  .calendar .market-proof-block .international-content h3{
    font-size: clamp(31px, 10vw, 42px);
    word-break: normal;
    overflow-wrap: normal;
  }

  .international-market-grid{
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .international-market-grid span:last-child{
    grid-column: 1 / -1;
  }

  .international-actions{
    display: grid;
    grid-template-columns: 1fr;
  }

  .international-actions .btn{
    width: 100%;
    white-space: normal;
    text-align: center;
  }
}

@media(max-width: 430px){
  .calendar .market-proof-block .international-content{
    padding: 24px 22px 28px;
  }

  .calendar .market-proof-block .international-content h3{
    font-size: 30px;
    letter-spacing: .02em;
  }

  .international-market-grid{
    grid-template-columns: 1fr;
  }

  .international-market-grid span:last-child{
    grid-column: auto;
  }
}

/* =====================================================
   QUICKFIX 11 — Markticonen + Europa/Midden-Oosten verfijning
   Basis: 402nieuw_v2.3 + quickfix 1 t/m 10
   Doel: land-/regio-contouren, subtiele marktgroepering en CTA's naast elkaar
   ===================================================== */

.market-card{
  isolation: isolate;
}

.market-card::before{
  content: "";
  position: absolute;
  top: 12px;
  right: 12px;
  width: 82px;
  height: 82px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: .34;
  z-index: 0;
  pointer-events: none;
  filter: grayscale(1);
  transition: opacity .18s ease, transform .18s ease;
}

.market-card > *{
  position: relative;
  z-index: 1;
}

.market-card-nl::before{ background-image: url('assets/img/markt-nederland.png'); }
.market-card-be::before{ background-image: url('assets/img/markt-belgie.png'); }
.market-card-fr::before{ background-image: url('assets/img/markt-frankrijk.png'); }
.market-card-qa::before{ background-image: url('assets/img/markt-qatar.png'); }
.market-card-ae::before{ background-image: url('assets/img/markt-dubai-uae.png'); }

.market-card-nl,
.market-card-be,
.market-card-fr{
  border-left-color: var(--red);
  background: linear-gradient(135deg, #fff 0%, #fff 62%, #fafafa 100%);
}

.market-card-qa,
.market-card-ae{
  border-left-color: #111;
  background: linear-gradient(135deg, #fff 0%, #fbfbfb 56%, #f2f2f2 100%);
}

.market-card-qa span,
.market-card-ae span{
  background: #111;
  box-shadow: inset 0 -3px 0 var(--red);
}

.market-card-qa::after,
.market-card-ae::after{
  background: #111;
  opacity: .14;
}

.market-card:hover::before{
  opacity: .48;
  transform: translateY(-2px) scale(1.03);
}

.international-market-grid span:nth-child(-n+3){
  border-left-color: var(--red);
  background: rgba(255,255,255,.045);
}

.international-market-grid span:nth-child(n+4){
  border-left-color: rgba(255,255,255,.78);
  background: rgba(255,255,255,.075);
}

.international-market-grid span:nth-child(n+4) strong{
  color: #fff;
}

.international-market-grid span:nth-child(n+4)::after{
  content: "";
  display: block;
  width: 30px;
  height: 2px;
  margin-top: 10px;
  background: var(--red);
  opacity: .75;
}

.calendar .market-proof-block .international-actions{
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 12px;
  max-width: 620px;
}

.calendar .market-proof-block .international-actions .btn{
  width: 100%;
  min-height: 48px;
  padding-inline: 16px;
  font-size: 11px;
  letter-spacing: .105em;
  white-space: normal;
  text-align: center;
}

.calendar .market-proof-block .international-actions .btn-outline-light{
  background: rgba(0,0,0,.08);
  border-color: #fff;
  color: #fff;
}

.calendar .market-proof-block .international-actions .btn-outline-light:hover{
  background: #fff;
  color: #111;
}

@media(max-width: 760px){
  .market-card::before{
    width: 64px;
    height: 64px;
    top: 10px;
    right: 12px;
    opacity: .28;
  }

  .calendar .market-proof-block .international-actions{
    grid-template-columns: 1fr;
    max-width: none;
  }
}

/* =====================================================
   QUICKFIX 12 — Europa-accent in kalendersectie
   Basis: 402nieuw_v2.3 + quickfix 1 t/m 11
   Doel: NL / BE / FR subtiel bundelen als Europa met EU-blauw en EU-icon.
   Scope: alleen kalendersectie / internationaal marktblok.
   ===================================================== */

:root{
  --eu-blue: #003399;
}

/* Events per markt: Europa-kaarten krijgen EU-blauw in plaats van rood. */
.market-card-nl,
.market-card-be,
.market-card-fr{
  border-left-color: var(--eu-blue);
}

.market-card-nl::after,
.market-card-be::after,
.market-card-fr::after{
  background: var(--eu-blue);
  opacity: .16;
}

/* Gebruik één rustig Europa-icoon voor NL / BE / FR. */
.market-card-nl::before,
.market-card-be::before,
.market-card-fr::before{
  background-image: url('assets/icons/europa-icon.svg');
  width: 54px;
  height: 54px;
  top: 14px;
  right: 14px;
  opacity: .16;
  filter: none;
}

.market-card-nl:hover::before,
.market-card-be:hover::before,
.market-card-fr:hover::before{
  opacity: .24;
}

/* Midden-Oosten-kaarten blijven rustiger/zwarter; geen landcontouren nodig in deze versimpelde opzet. */
.market-card-qa::before,
.market-card-ae::before{
  background-image: none;
}

/* Internationale marktblok: NL / BE / FR-lijnen naar EU-blauw. */
.international-market-grid span:nth-child(-n+3){
  border-left-color: var(--eu-blue);
}

.international-market-grid span:nth-child(-n+3)::after{
  content: "";
  display: block;
  width: 30px;
  height: 2px;
  margin-top: 10px;
  background: var(--eu-blue);
  opacity: .78;
}

@media(max-width: 760px){
  .market-card-nl::before,
  .market-card-be::before,
  .market-card-fr::before{
    width: 46px;
    height: 46px;
    top: 12px;
    right: 12px;
    opacity: .14;
  }
}

/* =====================================================
   QUICKFIX 13 — Europa-icoon subtieler en strakker
   Basis: 402nieuw_v2.3 + quickfix 1 t/m 12
   Doel: EU-icoon 50% kleiner, scherper en netter in de hoek.
   Scope: alleen kalendersectie / Events per markt.
   ===================================================== */

.market-card-nl::before,
.market-card-be::before,
.market-card-fr::before{
  width: 28px;
  height: 28px;
  top: 10px;
  right: 10px;
  opacity: .42;
  filter: none;
  background-size: contain;
}

.market-card-nl:hover::before,
.market-card-be:hover::before,
.market-card-fr:hover::before{
  opacity: .52;
}

@media(max-width: 760px){
  .market-card-nl::before,
  .market-card-be::before,
  .market-card-fr::before{
    width: 24px;
    height: 24px;
    top: 9px;
    right: 9px;
    opacity: .40;
  }
}


/* =====================================================
   V3 PLATFORM TEST 1
   Scope: platformpagina + mini-copycorrectie Massa > Bereik op homepage
   ===================================================== */

.platform-page .section{
  scroll-margin-top: calc(var(--header) + 26px);
}

.platform-hero{
  padding-top: 112px;
  background:
    linear-gradient(90deg,#fff 0%,#fff 62%,#f4f4f4 62%,#f4f4f4 100%);
}

.platform-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:64px;
  align-items:center;
}

.platform-hero h1{
  margin:0 0 28px;
  font-size:clamp(54px,7vw,112px);
  line-height:.88;
  letter-spacing:.025em;
  text-transform:uppercase;
  font-weight:1000;
}

.platform-hero h1 span{
  color:var(--red);
}

.platform-hero p:not(.eyebrow):not(.lead){
  max-width:760px;
  font-size:20px;
  line-height:1.6;
  color:#444;
}

.platform-hero-image{
  border-left:8px solid var(--red);
  box-shadow:var(--shadow);
  min-height:520px;
  overflow:hidden;
  background:#111;
}

.platform-hero-image img{
  width:100%;
  height:100%;
  min-height:520px;
  object-fit:cover;
}

.platform-proof .section-head{
  align-items:start;
}

.proof-intro{
  max-width:520px;
  margin:0;
  color:#4d4d4d;
  font-size:19px;
  line-height:1.6;
}

.platform-kpi-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:16px;
}

.platform-kpi{
  background:#fff;
  border:1px solid var(--line);
  border-left:7px solid var(--red);
  padding:26px 22px;
  box-shadow:0 14px 36px rgba(0,0,0,.05);
}

.platform-kpi strong{
  display:block;
  font-size:clamp(25px,2.4vw,42px);
  line-height:.95;
  font-weight:1000;
  text-transform:uppercase;
  color:#111;
}

.platform-kpi span{
  display:block;
  margin-top:12px;
  text-transform:uppercase;
  font-size:12px;
  line-height:1.35;
  font-weight:1000;
  letter-spacing:.08em;
  color:#666;
}

.platform-timeline{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-top:38px;
}

.platform-timeline article{
  position:relative;
  background:#fff;
  border:1px solid var(--line);
  border-top:6px solid #111;
  padding:28px 24px;
  min-height:250px;
}

.platform-timeline article:before{
  content:"";
  position:absolute;
  left:24px;
  top:-6px;
  width:64px;
  height:6px;
  background:var(--red);
}

.platform-timeline span{
  display:inline-block;
  background:#111;
  color:#fff;
  padding:8px 11px;
  font-size:12px;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.1em;
}

.platform-timeline h3,
.platform-pillar-card h3,
.buy-grid h3{
  margin:18px 0 12px;
  text-transform:uppercase;
  font-size:25px;
  line-height:1.05;
}

.platform-timeline p,
.platform-pillar-card p,
.buy-grid p{
  margin:0;
  color:#555;
  line-height:1.6;
}

.platform-pillar-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.platform-pillar-card{
  background:#fff;
  border:1px solid var(--line);
  border-left:7px solid var(--red);
  padding:30px 24px;
  min-height:245px;
  box-shadow:0 14px 36px rgba(0,0,0,.05);
}

.platform-pillar-card:nth-child(2){
  border-left-color:#111;
}

.platform-pillar-card:nth-child(2) h3{
  color:var(--red);
}

.segment-card-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:22px;
  margin-top:38px;
}

.segment-card{
  position:relative;
  background:#fff;
  border:1px solid var(--line);
  border-left:8px solid var(--red);
  box-shadow:var(--shadow);
  padding:30px;
  overflow:hidden;
}

.segment-card:after{
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  width:110px;
  height:5px;
  background:var(--red);
  opacity:.18;
}

.segment-top{
  display:flex;
  gap:18px;
  align-items:flex-start;
  margin-bottom:16px;
}

.segment-number{
  flex:0 0 auto;
  background:#111;
  color:#fff;
  padding:12px 13px;
  font-weight:1000;
  letter-spacing:.08em;
}

.segment-card h3{
  margin:0;
  text-transform:uppercase;
  font-size:30px;
  line-height:.98;
}

.segment-card h3 span{
  color:var(--red);
  font-size:22px;
}

.segment-card p{
  color:#555;
  line-height:1.55;
  margin:0 0 22px;
}

.segment-bars{
  display:grid;
  gap:13px;
  margin:24px 0;
}

.segment-bars div{
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
  align-items:center;
}

.segment-bars span,
.segment-bars strong{
  font-size:12px;
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:.08em;
}

.segment-bars strong{
  color:#111;
}

.segment-bars i{
  grid-column:1/-1;
  display:block;
  height:8px;
  background:#eee;
  position:relative;
  overflow:hidden;
}

.segment-bars i:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:var(--value);
  background:linear-gradient(90deg,var(--red),#111);
}

.segment-card ul{
  margin:0 0 22px;
  padding:0;
  list-style:none;
  display:grid;
  gap:9px;
}

.segment-card li{
  position:relative;
  padding-left:18px;
  color:#444;
  line-height:1.45;
}

.segment-card li:before{
  content:"";
  position:absolute;
  left:0;
  top:.65em;
  width:8px;
  height:3px;
  background:var(--red);
}

.segment-line{
  display:block;
  border-top:1px solid var(--line);
  padding-top:16px;
  text-transform:uppercase;
  line-height:1.35;
  letter-spacing:.04em;
}

.impact-flow{
  display:grid;
  gap:14px;
  counter-reset:impact;
}

.impact-flow span{
  counter-increment:impact;
  position:relative;
  display:block;
  background:#111;
  color:#fff;
  padding:22px 24px 22px 74px;
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:.08em;
}

.impact-flow span:before{
  content:counter(impact, decimal-leading-zero);
  position:absolute;
  left:20px;
  top:50%;
  transform:translateY(-50%);
  color:var(--red);
  font-size:22px;
}

.impact-flow span:not(:last-child):after{
  content:"";
  position:absolute;
  left:36px;
  bottom:-14px;
  width:3px;
  height:14px;
  background:var(--red);
}

.buy-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-top:34px;
}

.buy-grid article{
  border:1px solid var(--line);
  border-left:7px solid var(--red);
  background:#fff;
  padding:28px 24px;
  min-height:230px;
}

.final-cta-box{
  background:#111;
  color:#fff;
  border-left:8px solid var(--red);
  padding:54px;
  box-shadow:var(--shadow);
  background-image:
    linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.82)),
    url('assets/img/supercars-crowd-outdoor.jpg');
  background-size:cover;
  background-position:center;
}

.final-cta-box h2{
  margin:0 0 18px;
  max-width:900px;
  font-size:clamp(42px,5vw,78px);
  line-height:.95;
  text-transform:uppercase;
}

.final-cta-box p:not(.eyebrow){
  max-width:780px;
  color:#e6e6e6;
  font-size:20px;
  line-height:1.55;
}

@media(max-width:1100px){
  .platform-hero-grid,
  .platform-timeline,
  .platform-pillar-grid,
  .buy-grid{
    grid-template-columns:1fr 1fr;
  }

  .platform-kpi-grid{
    grid-template-columns:repeat(3,1fr);
  }
}

@media(max-width:760px){
  .platform-hero{
    padding-top:72px;
    background:#fff;
  }

  .platform-hero-grid,
  .platform-timeline,
  .platform-pillar-grid,
  .segment-card-grid,
  .buy-grid,
  .platform-kpi-grid{
    grid-template-columns:1fr;
  }

  .platform-hero-image,
  .platform-hero-image img{
    min-height:300px;
  }

  .segment-card,
  .final-cta-box{
    padding:26px;
  }

  .segment-card h3{
    font-size:25px;
  }

  .segment-card h3 span{
    font-size:18px;
  }
}


/* =====================================================
   402nieuw_v3.1_quickfix_1 — Platformpagina verfijning
   Scope: alleen platform.html + style.css
   ===================================================== */

.platform-page .section{
  padding:78px 0;
}

.platform-hero{
  padding-top:72px;
  padding-bottom:54px;
  background:#fff !important;
  overflow:hidden;
}

.platform-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(420px,.84fr);
  gap:46px;
  align-items:center;
}

.platform-hero-copy{
  min-width:0;
}

.platform-hero h1{
  max-width:760px;
  margin:0 0 20px;
  font-size:clamp(46px,5.35vw,82px);
  line-height:.9;
  letter-spacing:.025em;
  text-transform:uppercase;
  font-weight:1000;
}

.platform-hero h1 span{
  color:var(--red);
}

.platform-hero .lead{
  max-width:760px;
  margin-bottom:16px;
  font-size:20px;
  line-height:1.5;
}

.platform-hero p:not(.eyebrow):not(.lead){
  max-width:720px;
  font-size:18px;
  line-height:1.55;
  color:#444;
}

.platform-hero .hero-ctas{
  margin-top:24px;
}

.platform-hero-image{
  border-left:7px solid var(--red);
  min-height:360px;
  max-height:420px;
  box-shadow:var(--shadow);
  overflow:hidden;
  background:#111;
}

.platform-hero-image img{
  width:100%;
  height:100%;
  min-height:360px;
  max-height:420px;
  object-fit:cover;
}

.platform-proof-head{
  align-items:start;
}

.platform-proof-head .section-title{
  max-width:780px;
}

.proof-intro{
  max-width:520px;
  margin-top:10px;
  font-size:19px;
  line-height:1.55;
}

.platform-kpi{
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.platform-kpi:hover{
  transform:translateY(-7px) scale(1.025);
  border-left-color:#111;
  box-shadow:0 28px 70px rgba(0,0,0,.12);
}

.platform-kpi strong{
  transition:letter-spacing .18s ease, color .18s ease;
}

.platform-kpi:hover strong{
  color:var(--red);
  letter-spacing:.015em;
}

.platform-timeline-section .section-title{
  max-width:1080px;
}

.brochure-line{
  grid-template-columns:repeat(3,1fr);
  align-items:stretch;
}

.brochure-line article{
  min-height:340px;
  border-top:6px solid #111;
  border-left:1px solid var(--line);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.brochure-line article:hover{
  transform:translateY(-8px) scale(1.015);
  box-shadow:0 28px 70px rgba(0,0,0,.12);
  border-top-color:var(--red);
  background:#fbfbfb;
}

.brochure-line article:hover span{
  background:var(--red);
}

.full-width-head{
  align-items:end;
}

.visual-pillars{
  grid-template-columns:repeat(4,1fr);
  align-items:stretch;
}

.visual-pillars .platform-pillar-card{
  display:flex;
  flex-direction:column;
  min-height:430px;
  padding:0;
  border-left:7px solid var(--red);
  overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.visual-pillars .platform-pillar-card:hover{
  transform:translateY(-8px) scale(1.018);
  border-left-color:#111;
  box-shadow:0 28px 70px rgba(0,0,0,.12);
}

.pillar-image{
  height:170px;
  background:#111;
  overflow:hidden;
}

.pillar-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .22s ease, opacity .22s ease;
}

.visual-pillars .platform-pillar-card:hover .pillar-image img{
  transform:scale(1.06);
  opacity:.88;
}

.pillar-content{
  padding:26px 24px 28px;
}

.pillar-content h3{
  margin:0 0 14px;
}

.compact-segments{
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:18px;
}

.compact-segments .segment-card{
  padding:24px;
  box-shadow:0 16px 42px rgba(0,0,0,.07);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.compact-segments .segment-card:hover{
  transform:translateY(-7px) scale(1.012);
  border-left-color:#111;
  box-shadow:0 28px 70px rgba(0,0,0,.12);
}

.compact-segments .segment-top{
  margin-bottom:12px;
}

.compact-segments .segment-card h3{
  font-size:25px;
}

.compact-segments .segment-card h3 span{
  font-size:18px;
}

.compact-segments .segment-card p{
  margin-bottom:14px;
  font-size:15px;
  line-height:1.48;
}

.compact-segments .segment-bars{
  margin:14px 0 16px;
  gap:9px;
}

.segment-bars strong{
  opacity:0;
  transform:translateY(3px);
  transition:opacity .18s ease, transform .18s ease;
}

.segment-bars i:before{
  width:0;
  transition:width .7s ease;
}

.segment-card:hover .segment-bars strong{
  opacity:1;
  transform:translateY(0);
}

.segment-card:hover .segment-bars i:before{
  width:var(--value);
}

.segment-events{
  margin:0 0 14px !important;
  padding:12px 0 0;
  border-top:1px solid var(--line);
  color:#111 !important;
  font-size:12px !important;
  line-height:1.55 !important;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.045em;
}

.compact-segments .segment-line{
  font-size:12px;
  padding-top:12px;
}

.platform-impact-section .lead{
  font-size:20px;
  line-height:1.5;
}

.platform-impact-section p:not(.lead):not(.eyebrow){
  font-size:18px;
  line-height:1.55;
  color:#444;
}

.impact-flow span{
  letter-spacing:.09em;
  font-size:15px;
}

.compact-buy-grid article{
  min-height:190px;
  padding:24px 22px;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.compact-buy-grid article:hover{
  transform:translateY(-7px) scale(1.018);
  border-left-color:#111;
  background:#fafafa;
  box-shadow:0 24px 60px rgba(0,0,0,.11);
}

.compact-buy-grid h3{
  margin-top:8px;
  font-size:24px;
}

.final-cta-box{
  background-image:
    linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.70)),
    url('assets/img/supercars-crowd-outdoor.jpg') !important;
  background-position:center;
}

.final-cta-box .btn-outline-light{
  color:#fff;
  border-color:#fff;
}

@media(max-width:1180px){
  .platform-hero-grid,
  .visual-pillars{
    grid-template-columns:1fr 1fr;
  }

  .brochure-line,
  .platform-kpi-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:760px){
  .platform-page .section{
    padding:62px 0;
  }

  .platform-hero-grid,
  .visual-pillars,
  .brochure-line,
  .platform-kpi-grid,
  .compact-segments,
  .compact-buy-grid{
    grid-template-columns:1fr;
  }

  .platform-hero h1{
    font-size:44px;
  }

  .platform-hero-image,
  .platform-hero-image img{
    min-height:260px;
    max-height:320px;
  }

  .brochure-line article{
    min-height:auto;
  }

  .visual-pillars .platform-pillar-card{
    min-height:auto;
  }
}


/* =====================================================
   402nieuw_v3.2_quickfix_1 — Media pagina's
   Scope: fotos.html, fotoalbum.html, videos.html + media styling
   ===================================================== */

.media-page .section{
  scroll-margin-top:calc(var(--header) + 28px);
}

.media-hero{
  padding-top:94px;
  padding-bottom:58px;
  background:#fff;
}

.media-hero h1{
  margin:0 0 22px;
  max-width:1120px;
  font-size:clamp(48px,6vw,94px);
  line-height:.9;
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:.025em;
}

.media-hero h1 span{
  color:var(--red);
}

.media-filter-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:30px;
}

.media-filter{
  appearance:none;
  border:2px solid #111;
  background:#fff;
  color:#111;
  padding:13px 17px;
  cursor:pointer;
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:.1em;
  font-size:12px;
  transition:.18s;
}

.media-filter:hover,
.media-filter.active{
  background:#111;
  color:#fff;
  border-color:#111;
}

.media-overview-section{
  padding-top:42px;
}

.media-grid{
  display:grid;
  gap:24px;
}

.media-album-grid{
  grid-template-columns:repeat(3,1fr);
}

.media-video-grid{
  grid-template-columns:repeat(2,1fr);
}

.media-album-card,
.media-video-card{
  background:#fff;
  border:1px solid var(--line);
  border-left:7px solid var(--red);
  box-shadow:var(--shadow);
  overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.media-album-card:hover,
.media-video-card:hover{
  transform:translateY(-8px) scale(1.012);
  border-left-color:#111;
  box-shadow:0 30px 76px rgba(0,0,0,.13);
}

.media-album-cover{
  position:relative;
  display:block;
  height:260px;
  background:#111;
  overflow:hidden;
}

.media-album-cover img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .22s ease, opacity .22s ease;
}

.media-album-card:hover .media-album-cover img{
  transform:scale(1.06);
  opacity:.88;
}

.media-album-cover span{
  position:absolute;
  left:18px;
  top:18px;
  background:#111;
  color:#fff;
  padding:10px 12px;
  text-transform:uppercase;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.08em;
  border-left:4px solid var(--red);
}

.media-card-body{
  padding:26px;
}

.media-event-logo{
  width:auto;
  max-width:210px;
  max-height:58px;
  object-fit:contain;
  background:#111;
  padding:10px 12px;
  margin-bottom:18px;
}

.media-card-body small{
  display:block;
  color:#666;
  text-transform:uppercase;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.11em;
  margin-bottom:10px;
}

.media-card-body h3{
  margin:0 0 12px;
  text-transform:uppercase;
  font-size:29px;
  line-height:1.02;
}

.media-card-body p{
  margin:0 0 20px;
  color:#555;
  line-height:1.55;
}

.video-frame{
  background:#111;
  overflow:hidden;
}

.video-youtube{
  aspect-ratio:16/9;
}

.video-youtube iframe,
.video-tiktok iframe{
  width:100%;
  height:100%;
  border:0;
  display:block;
}

.video-tiktok{
  height:650px;
}

.video-tiktok iframe{
  background:#111;
}

.album-detail-hero{
  padding-bottom:36px;
}

.album-gallery-section{
  padding-top:30px;
}

.album-gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}

.album-photo{
  appearance:none;
  border:0;
  padding:0;
  margin:0;
  cursor:pointer;
  height:280px;
  background:#111;
  border-left:6px solid var(--red);
  overflow:hidden;
  box-shadow:0 16px 42px rgba(0,0,0,.08);
}

.album-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .22s ease, opacity .22s ease;
}

.album-photo:hover img{
  transform:scale(1.05);
  opacity:.9;
}

.photo-lightbox{
  position:fixed;
  inset:0;
  z-index:3000;
  display:none;
  align-items:center;
  justify-content:center;
  background:rgba(0,0,0,.92);
  padding:40px;
}

.photo-lightbox.active{
  display:flex;
}

.photo-lightbox img{
  max-width:min(1200px,90vw);
  max-height:86vh;
  object-fit:contain;
  box-shadow:0 30px 80px rgba(0,0,0,.5);
}

.photo-lightbox button{
  position:absolute;
  appearance:none;
  border:0;
  background:#fff;
  color:#111;
  width:52px;
  height:52px;
  cursor:pointer;
  font-size:38px;
  line-height:1;
  font-weight:1000;
}

.photo-lightbox-close{
  right:28px;
  top:28px;
}

.photo-lightbox-prev{
  left:28px;
  top:50%;
  transform:translateY(-50%);
}

.photo-lightbox-next{
  right:28px;
  top:50%;
  transform:translateY(-50%);
}

.media-cms-note{
  padding-top:50px;
}

.media-note-box{
  background:#111;
  color:#fff;
  border-left:7px solid var(--red);
  padding:42px;
  box-shadow:var(--shadow);
}

.media-note-box h2{
  margin:0 0 14px;
  text-transform:uppercase;
  font-size:clamp(34px,4vw,58px);
  line-height:.95;
}

.media-note-box p:not(.eyebrow){
  margin:0;
  max-width:860px;
  color:#ddd;
  font-size:19px;
  line-height:1.55;
}

@media(max-width:1100px){
  .media-album-grid,
  .media-video-grid,
  .album-gallery-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:700px){
  .media-hero{
    padding-top:70px;
  }

  .media-album-grid,
  .media-video-grid,
  .album-gallery-grid{
    grid-template-columns:1fr;
  }

  .media-album-cover,
  .album-photo{
    height:240px;
  }

  .video-tiktok{
    height:560px;
  }

  .media-card-body,
  .media-note-box{
    padding:24px;
  }

  .photo-lightbox{
    padding:18px;
  }

  .photo-lightbox button{
    width:44px;
    height:44px;
    font-size:32px;
  }
}


/* =====================================================
   402nieuw_v3.2_quickfix_2 — Foto/video verfijning
   Scope: fotos.html, fotoalbum.html, videos.html + media CSS
   ===================================================== */

.media-event-logo{
  background:transparent !important;
  padding:0 !important;
  max-height:64px;
  max-width:230px;
  margin-bottom:18px;
}

.media-card-body{
  background:#fff;
}

.media-album-cover img,
.album-photo img{
  image-rendering:auto;
  backface-visibility:hidden;
  transform:translateZ(0);
}

.media-album-card:hover .media-album-cover img,
.album-photo:hover img{
  filter:none;
}

.media-page-actions{
  margin-top:22px;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.media-page-actions .btn{
  min-height:48px;
}

@media(max-width:700px){
  .media-page-actions .btn{
    width:100%;
  }
}


/* =====================================================
   402nieuw_v3.3_quickfix_1 — Kalender CMS v1
   ===================================================== */

.event-card-logo{
  display:block;
  max-width:160px;
  max-height:54px;
  object-fit:contain;
  margin:0 0 16px;
}

.empty-calendar{
  grid-column:1/-1;
  padding:28px;
  border:1px solid var(--line);
  border-left:7px solid var(--red);
  background:#fff;
  color:#555;
  font-weight:800;
}

.calendar-page-hero{
  background:#fff;
}

.calendar-country-nav{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:48px;
}

.calendar-country-nav a{
  display:inline-flex;
  align-items:center;
  min-height:46px;
  border:2px solid #111;
  color:#111;
  padding:0 16px;
  text-decoration:none;
  text-transform:uppercase;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.08em;
  transition:.18s;
}

.calendar-country-nav a:hover{
  background:#111;
  color:#fff;
}

.calendar-country-section{
  padding:44px 0 18px;
  scroll-margin-top:calc(var(--header) + 30px);
}

.dynamic-calendar-list{
  margin-top:26px;
}

.calendar-event-logo{
  display:block;
  max-width:180px;
  max-height:58px;
  object-fit:contain;
  margin:0 0 14px;
}

.calendar-description{
  max-width:720px;
  color:#555;
  line-height:1.55;
}

.event-list-card .card-actions{
  margin-top:16px;
}

@media(max-width:760px){
  .calendar-country-nav a{
    flex:1 1 auto;
    justify-content:center;
  }
}


/* =====================================================
   402nieuw_v3.3_quickfix_2 — frontend correcties
   ===================================================== */

html,
body{
  max-width:100%;
  overflow-x:hidden;
}

img,
video,
iframe{
  max-width:100%;
}

@media(max-width:760px){
  .platform-page .section-title,
  .platform-page h1,
  .platform-page h2,
  .platform-page h3{
    overflow-wrap:anywhere;
    word-break:normal;
    hyphens:auto;
  }

  .platform-page .btn,
  .final-cta-box .btn,
  .hero-ctas .btn{
    max-width:100%;
    white-space:normal;
    text-align:center;
    justify-content:center;
  }

  .platform-hero-copy h1{
    font-size:clamp(42px, 13vw, 64px);
    line-height:.92;
  }

  .section-title{
    overflow-wrap:anywhere;
  }
}

.platform-section-bottom-cta{
  display:flex;
  justify-content:flex-start;
  margin-top:34px;
}

.platform-section-bottom-cta .btn{
  width:auto;
}

.final-cta-box{
  overflow:hidden;
}

.final-cta-box .hero-ctas{
  max-width:100%;
}

.final-cta-box .btn{
  max-width:100%;
}

.newsletter-strip{
  margin-top:28px;
  border-left:7px solid var(--red);
  background:#fff;
  padding:28px;
  display:grid;
  grid-template-columns:1fr 1.1fr;
  gap:24px;
  align-items:end;
  box-shadow:var(--shadow);
}

.newsletter-strip h3{
  margin:0 0 10px;
  font-size:clamp(26px, 3vw, 42px);
  line-height:.98;
  text-transform:uppercase;
}

.newsletter-strip p{
  margin:0;
  color:#555;
  line-height:1.55;
}

.newsletter-form{
  display:grid;
  grid-template-columns:1fr 1fr auto;
  gap:10px;
  align-items:center;
}

.newsletter-form input{
  min-height:54px;
  border:2px solid #111;
  padding:0 14px;
  font-weight:800;
  background:#fff;
}

.newsletter-form .btn-dark{
  grid-column:1/-1;
  justify-self:end;
}

.news-overview-section .media-filter-bar,
.news-filter-bar{
  margin-bottom:28px;
}

.news-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:14px 0 18px;
}

.news-tags span{
  display:inline-flex;
  min-height:28px;
  align-items:center;
  padding:0 10px;
  background:#111;
  color:#fff;
  font-size:11px;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.stock-event-card .stock-event-logo{
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:170px;
  padding:24px;
}

.stock-event-card .stock-event-logo img{
  max-width:220px;
  max-height:120px;
  object-fit:contain;
}

@media(max-width:980px){
  .newsletter-strip{
    grid-template-columns:1fr;
  }
  .newsletter-form{
    grid-template-columns:1fr;
  }
  .newsletter-form .btn-dark{
    justify-self:stretch;
  }
}


/* =====================================================
   402nieuw_v3.4_quickfix_1 — Nieuws CMS v1
   Scope: nieuws.html + nieuws-item.html
   ===================================================== */

.news-detail-card{
  background:#fff;
  overflow:hidden;
  border-left:7px solid var(--red);
}

.news-detail-main-img{
  width:100%;
  max-height:560px;
  object-fit:cover;
  display:block;
}

.news-detail-body{
  padding:clamp(24px, 4vw, 56px);
}

.news-detail-text{
  max-width:850px;
  font-size:18px;
  line-height:1.72;
  color:#222;
}

.news-detail-text p{
  margin:0 0 1.2em;
}

.news-detail-gallery{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-top:30px;
}

.news-detail-gallery img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  display:block;
}

.dynamic-news-list .news-row{
  align-items:stretch;
}

.dynamic-news-list .news-row img{
  height:100%;
  min-height:260px;
  object-fit:cover;
}

@media(max-width:760px){
  .news-detail-gallery{
    grid-template-columns:1fr;
  }
  .news-detail-text{
    font-size:16px;
  }
}


/* =====================================================
   402nieuw_v3.4_quickfix_2 — Nieuws item + succes KPI
   ===================================================== */

.success-counter-grid{
  grid-template-columns:repeat(5, 1fr);
}

.success-counter{
  position:relative;
  overflow:hidden;
  padding-bottom:28px;
}

.success-counter strong{
  display:block;
}

.success-counter i{
  position:absolute;
  left:0;
  bottom:0;
  height:6px;
  width:0;
  background:var(--red);
  transition:width .2s linear;
}

.news-detail-nav,
.news-detail-bottom-nav,
.news-detail-ctas{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:22px;
}

.news-detail-ctas{
  margin:28px 0 8px;
}

.news-detail-ctas .btn{
  min-width:180px;
}

.news-detail-bottom-nav{
  border-top:1px solid var(--line);
  padding-top:24px;
  margin-top:34px;
}

@media(max-width:1100px){
  .success-counter-grid{
    grid-template-columns:repeat(2, 1fr);
  }
}

@media(max-width:700px){
  .success-counter-grid{
    grid-template-columns:1fr;
  }
  .news-detail-nav .btn,
  .news-detail-bottom-nav .btn,
  .news-detail-ctas .btn{
    width:100%;
    justify-content:center;
    text-align:center;
  }
}


/* =====================================================
   402nieuw_v3.4_quickfix_4 — exacte nieuws scroll fix
   ===================================================== */
section.news#nieuws{
  scroll-margin-top:calc(var(--header, 92px) + 18px);
}


/* =====================================================
   402nieuw_v3.4_quickfix_5 — homepage nieuws dynamisch
   ===================================================== */
#homepageNews{
  min-height:240px;
}


/* =====================================================
   402nieuw_v3.4_quickfix_6 — nieuws filters als fotoalbums
   ===================================================== */

.news-filter-block{
  background:#fff;
  border-left:7px solid var(--red);
  padding:22px 24px;
  margin:0 0 30px;
  box-shadow:var(--shadow);
}

.news-filter-block .eyebrow{
  margin-bottom:14px;
}

.news-filter-bar{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0;
}

.news-filter-bar button{
  appearance:none;
  border:2px solid #111;
  background:#fff;
  color:#111;
  min-height:46px;
  padding:0 18px;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
  transition:.18s;
}

.news-filter-bar button:hover,
.news-filter-bar button.active{
  background:#111;
  color:#fff;
}

.news-filter-bar button.active{
  border-color:#111;
}

@media(max-width:700px){
  .news-filter-block{
    padding:18px;
  }
  .news-filter-bar{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .news-filter-bar button{
    width:100%;
    justify-content:center;
  }
}


/* =====================================================
   402nieuw_v3.4_quickfix_7 — dynamische nieuws tags
   ===================================================== */
.news-filter-bar button{
  text-transform:uppercase;
}


/* =====================================================
   402nieuw_v3.4_quickfix_8 — nieuws delen + alle items
   ===================================================== */

.news-card-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

.news-card-actions .btn{
  margin-top:0;
}

.news-share-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin-top:18px;
}

.news-share-row span{
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:12px;
  color:#111;
}

.share-btn{
  appearance:none;
  border:0;
  min-height:48px;
  min-width:48px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  text-decoration:none;
  text-transform:uppercase;
  font-size:11px;
  font-weight:1000;
  letter-spacing:.08em;
  cursor:pointer;
  transition:.18s;
}

.share-btn:hover{
  transform:translateY(-2px);
  filter:brightness(.95);
}

.share-copy{
  background:#111;
}

.share-whatsapp{
  background:#25D366;
  color:#071b0d;
}

.share-linkedin{
  background:#0A66C2;
}

@media(max-width:700px){
  .news-card-actions .btn{
    flex:1 1 100%;
    justify-content:center;
    text-align:center;
  }

  .news-share-row{
    align-items:flex-start;
  }

  .news-share-row span{
    flex-basis:100%;
  }

  .share-btn{
    flex:1 1 auto;
  }
}


/* =====================================================
   402nieuw_v3.5_quickfix_1 — Bedrijven + Exposanten CMS
   ===================================================== */
.b2b.section{border-top:0!important;padding-top:54px!important;}
.centered-b2b-grid{max-width:930px;margin:28px auto 0;}
.b2b-grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.bedrijven-page section[id]{scroll-margin-top:calc(var(--header, 92px) + 28px);}
.bedrijven-subhero .hero-ctas{margin-top:22px;}
.bedrijven-partnerships .feature-card,.bedrijven-standhouder .image-card{height:100%;}
.bedrijven-standhouder .image-card img{width:100%;height:100%;min-height:360px;object-fit:cover;}
.bedrijven-exposanten-section{background:#fff;}
.exhibitor-event-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:30px;}
.exhibitor-event-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-left:7px solid var(--red);color:#111;text-decoration:none;min-height:100%;transition:.18s ease;overflow:hidden;}
.exhibitor-event-card:hover{transform:translateY(-4px);box-shadow:0 14px 36px rgba(0,0,0,.12);}
.exhibitor-event-card.is-outdoor{border-left-color:#111;}
.exhibitor-event-image{position:relative;aspect-ratio:16/10;background:#111;overflow:hidden;}
.exhibitor-event-image img{width:100%;height:100%;object-fit:cover;transition:transform .24s ease;}
.exhibitor-event-card:hover .exhibitor-event-image img{transform:scale(1.04);}
.exhibitor-event-image span{position:absolute;left:12px;top:12px;display:inline-flex;min-height:28px;align-items:center;padding:0 10px;background:var(--red);color:#fff;font-size:11px;font-weight:1000;text-transform:uppercase;letter-spacing:.08em;}
.exhibitor-event-card.is-outdoor .exhibitor-event-image span{background:#111;}
.exhibitor-event-body{padding:20px;display:flex;flex-direction:column;flex:1;}
.exhibitor-event-logo{min-height:54px;display:flex;align-items:center;margin-bottom:16px;}
.exhibitor-event-logo img{max-width:170px;max-height:54px;object-fit:contain;}
.exhibitor-event-body h3{margin:0 0 10px;font-size:clamp(24px,2vw,34px);line-height:.95;text-transform:uppercase;}
.exhibitor-event-body p{color:#555;line-height:1.5;margin:0 0 18px;}
.exhibitor-meta{display:grid;gap:6px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line);}
.exhibitor-meta span,.exhibitor-event-body strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:1000;}
.exhibitor-event-body strong{margin-top:14px;color:var(--red);font-size:14px;}
@media(max-width:1150px){.exhibitor-event-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:900px){.b2b-grid-two,.exhibitor-event-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:640px){.b2b-grid-two,.exhibitor-event-grid{grid-template-columns:1fr;}.bedrijven-standhouder .image-card img{min-height:260px;}}


/* =====================================================
   402nieuw_v3.5_quickfix_2 — bedrijven inhoud + branchetegels
   ===================================================== */

.bedrijven-page .bedrijven-subhero p{
  max-width:900px;
}

.bedrijven-button-row{
  margin-top:22px;
}

.branch-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:26px 0 18px;
}

.branch-grid article{
  background:#fff;
  border:1px solid var(--line);
  border-left:7px solid var(--red);
  padding:18px;
  min-height:150px;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.branch-grid article:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 36px rgba(0,0,0,.10);
  border-color:#111;
}

.branch-grid h3{
  font-size:clamp(20px,2vw,30px);
  line-height:.95;
  margin:0 0 10px;
}

.branch-grid p{
  margin:0;
  color:#555;
  line-height:1.45;
}

.standhouder-note{
  position:relative;
  margin:20px 0 22px;
  padding:16px 18px;
  background:#fff;
  border:1px solid var(--line);
  border-left:7px solid #111;
  font-weight:900;
  color:#111;
}

#media .bedrijven-button-row{
  margin-top:26px;
}

@media(max-width:900px){
  .branch-grid{
    grid-template-columns:1fr;
  }
}


/* =====================================================
   402nieuw_v3.5_quickfix_4 — bedrijven visuele verfijning
   ===================================================== */

.bedrijven-button-row,
.button-row.bedrijven-button-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
}

.bedrijven-button-row .btn{
  margin:0;
}

.bedrijven-intro-copy{
  margin-bottom:14px;
}

.bedrijven-body-copy{
  max-width:640px;
  color:#333;
  font-size:16px;
  line-height:1.65;
  margin:0 0 22px;
}

.bedrijven-partnerships .bedrijven-button-row,
#media .bedrijven-button-row{
  margin-top:24px;
}

@media(max-width:700px){
  .bedrijven-button-row .btn{
    width:100%;
    justify-content:center;
    text-align:center;
  }
}


/* =====================================================
   402nieuw_v3.5_quickfix_5 — Exposanten funnel maker testcase
   ===================================================== */

.funnel-page{
  background:#f3f2ef;
}

.funnel-site-header{
  position:sticky;
}

.funnel-ticker{
  background:#050505;
  color:#fff;
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:6px 14px;
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:.07em;
  font-size:13px;
}

.funnel-hero{
  --f-primary:#ffd92e;
  --f-secondary:#111;
  --f-accent:#e50000;
  background:#fff;
  border-bottom:4px solid #111;
}

.funnel-hero-grid{
  display:grid;
  grid-template-columns:1fr 1.15fr;
  gap:26px;
  align-items:stretch;
  padding-top:34px;
  padding-bottom:34px;
}

.funnel-event-logo{
  max-width:210px;
  max-height:72px;
  object-fit:contain;
  margin-bottom:16px;
}

.funnel-date{
  display:inline-flex;
  background:var(--f-primary);
  color:#111;
  padding:8px 14px;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.06em;
  margin-bottom:20px;
}

.funnel-hero-copy h1{
  font-size:clamp(58px,8vw,118px);
  line-height:.82;
  letter-spacing:-.07em;
  max-width:900px;
}

.funnel-hero-copy p:not(.eyebrow){
  font-size:20px;
  line-height:1.5;
  max-width:720px;
  font-weight:800;
}

.funnel-image-collage{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  grid-template-rows:repeat(4,110px);
  gap:8px;
  min-height:480px;
}

.funnel-image-collage img{
  width:100%;
  height:100%;
  object-fit:cover;
  border:3px solid #111;
}

.funnel-img-1{grid-column:1/4;grid-row:1/3}
.funnel-img-2{grid-column:4/7;grid-row:1/2}
.funnel-img-3{grid-column:4/7;grid-row:2/4}
.funnel-img-4{grid-column:1/3;grid-row:3/5}
.funnel-img-5{grid-column:3/7;grid-row:4/5}

.funnel-kpi-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}

.funnel-kpi-grid article{
  background:#fff;
  border-left:7px solid var(--red);
  padding:22px;
}

.funnel-kpi-grid span,
.funnel-stand-card span{
  display:block;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
}

.funnel-kpi-grid strong{
  display:block;
  font-size:clamp(34px,4vw,62px);
  line-height:.9;
  margin:8px 0;
}

.funnel-target-grid,
.funnel-block-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-top:28px;
}

.funnel-target-grid article,
.funnel-block-grid article{
  background:#fff;
  border-left:7px solid var(--red);
  padding:24px;
  transition:.18s;
}

.funnel-target-grid article:hover,
.funnel-block-grid article:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 40px rgba(0,0,0,.10);
}

.funnel-stand-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  margin-top:28px;
}

.funnel-stand-card{
  background:#fff;
  border:3px solid #111;
  padding:24px;
  min-height:260px;
  display:flex;
  flex-direction:column;
  gap:10px;
}

.funnel-stand-card h3{
  font-size:clamp(38px,4vw,62px);
  line-height:.9;
  margin:0;
}

.funnel-stand-card strong{
  margin-top:auto;
  font-size:32px;
  color:var(--red);
}

.funnel-stand-card em{
  display:inline-flex;
  align-self:flex-start;
  background:#111;
  color:#fff;
  padding:7px 10px;
  font-style:normal;
  text-transform:uppercase;
  font-weight:1000;
  font-size:11px;
}

.funnel-price-list{
  background:#fff;
  border:3px solid #111;
}

.funnel-price-list div{
  display:grid;
  grid-template-columns:1fr auto;
  gap:8px;
  align-items:center;
  padding:20px;
  border-bottom:2px solid #111;
}

.funnel-price-list div:last-child{
  border-bottom:0;
}

.funnel-price-list .highlight{
  background:#ffd92e;
}

.funnel-price-list strong,
.funnel-price-list span{
  font-size:34px;
  font-weight:1000;
}

.funnel-price-list small{
  grid-column:2;
  color:#555;
  font-weight:900;
}

.funnel-addon-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin-top:28px;
}

.funnel-addon-grid article{
  background:#fff;
  border:2px solid #111;
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 16px;
  text-transform:uppercase;
  font-weight:1000;
}

.funnel-addon-grid span{
  color:var(--red);
  white-space:nowrap;
}

.funnel-partnership-box{
  background:#050505;
  color:#fff;
  display:grid;
  grid-template-columns:1.1fr 1.5fr auto auto;
  gap:22px;
  align-items:center;
  padding:30px;
}

.funnel-partnership-box h2{
  font-size:clamp(36px,4vw,64px);
  line-height:.9;
  margin:0;
}

.funnel-partnership-box .eyebrow{
  color:#111;
  background:#ffd92e;
  display:inline-flex;
  padding:7px 10px;
  margin-bottom:14px;
}

.funnel-partnership-box strong{
  background:#ffd92e;
  color:#111;
  padding:14px 18px;
  font-size:24px;
  white-space:nowrap;
}

.funnel-form-note{
  background:#fff;
  border-left:7px solid var(--red);
  padding:22px;
  margin-top:22px;
}

.funnel-form{
  background:#fff;
  border-left:7px solid var(--red);
  padding:24px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.funnel-form .full,
.funnel-form fieldset,
.funnel-form .checkline,
.funnel-form button{
  grid-column:1/-1;
}

.funnel-form input,
.funnel-form select,
.funnel-form textarea{
  width:100%;
  min-height:52px;
  border:2px solid #111;
  padding:10px 12px;
  font-weight:800;
}

.funnel-form textarea{
  min-height:130px;
}

.funnel-form label,
.funnel-form legend{
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
}

.funnel-form fieldset{
  border:2px solid #111;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:10px;
  padding:16px;
}

.funnel-form fieldset input,
.funnel-form .checkline input{
  width:auto;
  min-height:0;
  margin-right:8px;
}

@media(max-width:1100px){
  .funnel-hero-grid,
  .funnel-partnership-box{
    grid-template-columns:1fr;
  }

  .funnel-kpi-grid,
  .funnel-stand-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .funnel-target-grid,
  .funnel-block-grid,
  .funnel-addon-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:720px){
  .funnel-hero-copy h1{
    font-size:clamp(48px,15vw,70px);
  }

  .funnel-image-collage{
    grid-template-columns:1fr;
    grid-template-rows:none;
    min-height:0;
  }

  .funnel-image-collage img{
    grid-column:auto !important;
    grid-row:auto !important;
    aspect-ratio:16/10;
  }

  .funnel-kpi-grid,
  .funnel-stand-grid,
  .funnel-target-grid,
  .funnel-block-grid,
  .funnel-addon-grid,
  .funnel-form{
    grid-template-columns:1fr;
  }
}


/* =====================================================
   402nieuw_v3.6_quickfix_1 — Team CMS
   ===================================================== */

.team-cms-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}

.team-cms-card{
  background:#fff;
  border:2px solid #111;
  border-left:7px solid var(--red);
  overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease;
}

.team-cms-card:hover{
  transform:translateY(-5px);
  box-shadow:0 18px 40px rgba(0,0,0,.12);
}

.team-cms-photo{
  aspect-ratio:3/4;
  background:#111;
  border-bottom:2px solid #111;
}

.team-cms-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.team-cms-body{
  padding:22px;
}

.team-cms-body span{
  display:inline-flex;
  color:var(--red);
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:.12em;
  font-size:12px;
  margin-bottom:12px;
}

.team-cms-body h2{
  margin:0 0 8px;
  font-size:clamp(28px,3vw,44px);
  line-height:.92;
}

.team-cms-body p{
  margin:0;
  color:#555;
  font-weight:800;
}

.team-page-actions{
  display:flex;
  gap:12px;
  margin-top:34px;
}

@media(max-width:980px){
  .team-cms-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:640px){
  .team-cms-grid{grid-template-columns:1fr}
  .team-page-actions{flex-direction:column}
  .team-page-actions .btn{justify-content:center}
}


/* =====================================================
   402nieuw_v3.6_quickfix_2 — Team zakelijker + rustiger
   ===================================================== */

.team-subhero{
  min-height:0 !important;
  padding:96px 0 64px !important;
}

.team-subhero h1{
  max-width:900px;
  font-size:clamp(48px,7vw,92px) !important;
  line-height:.9 !important;
  letter-spacing:-.055em !important;
}

.team-subhero p:not(.eyebrow){
  max-width:760px;
  font-size:18px;
  line-height:1.55;
}

.team-cms-section{
  padding-top:56px;
}

.team-cms-grid{
  gap:22px;
  align-items:start;
}

.team-cms-card{
  border:1px solid #111 !important;
  border-left:5px solid var(--red) !important;
  box-shadow:0 12px 32px rgba(0,0,0,.06);
}

.team-cms-card:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 34px rgba(0,0,0,.10);
}

.team-cms-photo{
  aspect-ratio:3/4;
  max-height:430px;
  background:#f2f2f2;
  border-bottom:1px solid #111 !important;
}

.team-cms-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.team-cms-body{
  padding:20px 22px 24px;
}

.team-cms-body span{
  margin-bottom:10px;
  font-size:11px;
}

.team-cms-body h2{
  font-size:clamp(28px,3vw,42px) !important;
  letter-spacing:-.035em;
}

.team-cms-body p{
  font-size:16px;
  line-height:1.35;
  color:#444;
}

.team-page-actions{
  margin-top:32px;
}

@media(max-width:760px){
  .team-subhero{
    padding:72px 0 46px !important;
  }

  .team-subhero h1{
    font-size:clamp(42px,15vw,66px) !important;
  }

  .team-cms-photo{
    max-height:none;
  }
}


/* =====================================================
   402nieuw_v3.6_quickfix_3 — Team refinement
   ===================================================== */

.team-subhero{
  padding:82px 0 50px !important;
}

.team-subhero h1{
  max-width:980px;
  font-size:clamp(42px,5.8vw,76px) !important;
  line-height:.92 !important;
}

.team-subhero p:not(.eyebrow){
  max-width:920px;
  font-size:18px;
  line-height:1.62;
}

.team-cms-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px !important;
}

.team-cms-card{
  border:1px solid #111 !important;
  border-left:5px solid var(--red) !important;
}

.team-cms-photo{
  aspect-ratio:3/4;
  height:auto !important;
  max-height:none !important;
  background:#f7f7f7;
}

.team-cms-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}

.team-cms-body{
  padding:18px 18px 20px !important;
}

.team-cms-body h2{
  font-size:clamp(24px,2.2vw,34px) !important;
  line-height:.95 !important;
  margin-bottom:6px;
}

.team-cms-body p{
  font-size:15px;
  line-height:1.35;
}

.team-contact-lines{
  display:grid;
  gap:4px;
  margin-top:14px;
}

.team-contact-lines a{
  color:#111;
  text-decoration:none;
  font-weight:800;
  font-size:14px;
  word-break:break-word;
}

.team-contact-lines a:hover{
  color:var(--red);
}

.team-socials{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:14px;
}

.team-social{
  width:34px;
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  text-decoration:none;
  text-transform:uppercase;
  font-size:10px;
  font-weight:1000;
  letter-spacing:.02em;
}

.team-social.linkedin{background:#0A66C2}
.team-social.instagram{background:#E4405F}
.team-social.facebook{background:#1877F2}
.team-social.tiktok{background:#111}
.team-social.whatsapp{background:#25D366;color:#071b0d}

.team-share{
  margin-top:14px;
  min-height:38px;
  padding:0 12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:2px solid #111;
  color:#111;
  text-decoration:none;
  text-transform:uppercase;
  font-weight:1000;
  font-size:11px;
  letter-spacing:.08em;
}

.team-share:hover{
  background:#111;
  color:#fff;
}

@media(max-width:1180px){
  .team-cms-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:860px){
  .team-cms-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:560px){
  .team-cms-grid{
    grid-template-columns:1fr !important;
  }
}


/* =====================================================
   402nieuw_v3.6_quickfix_4 — Teamkaarten gelijke hoogte
   ===================================================== */

.team-cms-grid{
  align-items:stretch !important;
}

.team-cms-card{
  height:100%;
  display:flex !important;
  flex-direction:column;
}

.team-cms-photo{
  flex:0 0 auto;
}

.team-cms-body{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
}

.team-cms-body h2{
  min-height:2em;
}

.team-contact-lines{
  min-height:42px;
}

.team-socials{
  min-height:34px;
}

.team-share{
  margin-top:auto !important;
  align-self:flex-start;
}

@media(max-width:560px){
  .team-cms-body h2,
  .team-contact-lines,
  .team-socials{
    min-height:0;
  }
}


/* =====================================================
   v4.3 qf3 — bedankt/cross-sell filters
   ===================================================== */

.bedankt-hero{
  border-bottom:1px solid #ddd;
}

.bedankt-crosssell .lead{
  max-width:820px;
}

.thankyou-filter-bar{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:26px 0 28px;
}

.thankyou-filter-bar button{
  min-height:42px;
  padding:8px 13px;
  border:2px solid #111;
  background:#fff;
  color:#111;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.07em;
  cursor:pointer;
}

.thankyou-filter-bar button.active,
.thankyou-filter-bar button:hover{
  background:#111;
  color:#fff;
}

.bedankt-crosssell .exhibitor-event-grid{
  margin-top:0;
}


/* =====================================================
   v4.3 qf5 — homepage header + hero rework
   ===================================================== */

body.home-page{
  --header:88px;
}

body.home-page .site-header{
  background:#fff;
  border-bottom:4px solid var(--red);
  box-shadow:0 10px 34px rgba(0,0,0,.08);
}

body.home-page .nav-wrap{
  height:88px;
  gap:26px;
}

body.home-page .brand img{
  height:56px;
}

body.home-page .main-nav{
  gap:24px;
}

body.home-page .main-nav a,
body.home-page .lang,
body.home-page .btn{
  letter-spacing:.14em;
  font-size:13px;
}

body.home-page .company-cta{
  min-height:48px;
  padding-inline:22px;
}

.hero-v43{
  min-height:calc(100vh - 88px);
  background:#050505;
  overflow:hidden;
  isolation:isolate;
}

.hero-v43 .hero-media,
.hero-v43 .hero-bg,
.hero-v43 .hero-video,
.hero-v43 .hero-overlay{
  position:absolute;
  inset:0;
}

.hero-v43 .hero-bg{
  background-position:center;
  background-size:cover;
  transform:scale(1.04);
  opacity:.82;
  z-index:-3;
  animation:heroSlowZoom 18s ease-out forwards;
}

.hero-v43 .hero-video{
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:-2;
  opacity:.76;
}

.hero-v43 .hero-overlay{
  z-index:-1;
  background:
    radial-gradient(circle at 78% 18%, rgba(224,0,0,.22), transparent 34%),
    linear-gradient(90deg, rgba(0,0,0,.93) 0%, rgba(0,0,0,.72) 46%, rgba(0,0,0,.42) 100%),
    linear-gradient(0deg, rgba(0,0,0,.34), rgba(0,0,0,.06));
}

.hero-v43:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(224,0,0,.95), transparent);
  opacity:.8;
}

.hero-v43 .hero-inner{
  position:relative;
  min-height:calc(100vh - 88px);
  display:flex;
  align-items:center;
  padding:72px 0;
}

.hero-v43 .hero-grid{
  grid-template-columns:minmax(0,1.35fr) minmax(360px,.72fr);
  gap:48px;
}

.hero-v43 .eyebrow{
  color:var(--red);
}

.hero-v43 h1{
  font-size:clamp(56px,8.7vw,132px);
  line-height:.83;
  letter-spacing:.02em;
  max-width:920px;
  text-shadow:0 18px 48px rgba(0,0,0,.42);
}

.hero-v43 h1 span:nth-child(2){
  color:#fff;
}

.hero-v43 h1 span:last-child{
  color:var(--red);
}

.hero-v43 .hero-copy{
  font-size:clamp(19px,2vw,27px);
  max-width:790px;
  margin:0;
  color:#fff;
  text-shadow:0 10px 30px rgba(0,0,0,.4);
}

.hero-proof{
  margin:24px 0 0;
  display:inline-flex;
  max-width:100%;
  color:#fff;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
  border-left:5px solid var(--red);
  background:rgba(0,0,0,.42);
  padding:12px 16px;
}

.hero-panel{
  background:rgba(8,8,8,.9);
  color:#fff;
  border:1px solid rgba(255,255,255,.22);
  border-left:7px solid var(--red);
  padding:30px;
  box-shadow:0 28px 80px rgba(0,0,0,.32);
  backdrop-filter:blur(4px);
}

.hero-panel-head h2{
  text-transform:uppercase;
  font-size:clamp(28px,3vw,46px);
  line-height:.92;
  margin:0 0 12px;
}

.hero-panel-head p{
  color:#ddd;
  font-weight:800;
  line-height:1.45;
  margin:0 0 22px;
}

.hero-metrics-v43{
  display:grid;
  gap:10px;
}

.metric-v43{
  position:relative;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:14px;
  align-items:end;
  padding:14px 0 15px;
  border-bottom:1px solid rgba(255,255,255,.18);
}

.metric-v43:last-child{
  border-bottom:0;
}

.metric-v43 strong{
  display:block;
  min-width:86px;
  font-size:clamp(30px,3.2vw,48px);
  line-height:.86;
  color:#fff;
}

.metric-v43 span{
  color:#ddd;
  text-transform:uppercase;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.07em;
}

.metric-v43 i{
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:3px;
  background:rgba(255,255,255,.14);
  overflow:hidden;
}

.metric-v43 i:after{
  content:"";
  display:block;
  width:calc(var(--bar,70) * 1%);
  height:100%;
  background:var(--red);
  transform:scaleX(0);
  transform-origin:left;
}

.hero-animate .metric-v43 i:after{
  animation:barFill .9s ease forwards;
}

@keyframes heroSlowZoom{
  from{transform:scale(1.04)}
  to{transform:scale(1.1)}
}

@keyframes barFill{
  to{transform:scaleX(1)}
}

@media(max-width:1100px){
  .hero-v43 .hero-grid{
    grid-template-columns:1fr;
  }
  .hero-panel{
    max-width:760px;
  }
}

@media(max-width:760px){
  body.home-page{
    --header:82px;
  }
  body.home-page .nav-wrap{
    height:82px;
  }
  body.home-page .brand img{
    height:50px;
  }
  .hero-v43 .hero-inner{
    min-height:auto;
    padding:54px 0;
  }
  .hero-v43 h1{
    font-size:clamp(48px,14vw,78px);
  }
  .hero-proof{
    display:block;
  }
  .hero-panel{
    padding:22px;
  }
}


/* =====================================================
   v4.3.1 — homepage hero schaal/motion fix
   ===================================================== */

body.home-page{
  --header:72px;
}

body.home-page .site-header{
  border-bottom:3px solid var(--red);
}

body.home-page .nav-wrap{
  height:72px;
  gap:22px;
}

body.home-page .brand img{
  height:44px;
}

body.home-page .main-nav{
  gap:20px;
}

body.home-page .main-nav a,
body.home-page .lang,
body.home-page .btn{
  font-size:12px;
  letter-spacing:.13em;
}

body.home-page .company-cta{
  min-height:44px;
  padding-inline:20px;
}

.hero-v43{
  min-height:calc(100vh - 72px);
}

.hero-v43 .hero-inner{
  min-height:calc(100vh - 72px);
  padding:48px 0 42px;
}

.hero-v43 .hero-grid{
  grid-template-columns:minmax(0,1fr) minmax(330px,420px);
  gap:36px;
  align-items:center;
}

.hero-v43 .hero-copybox{
  max-width:850px;
}

.hero-v43 .eyebrow{
  margin-bottom:18px;
  font-size:13px;
  letter-spacing:.34em;
}

.hero-v43 h1{
  font-size:clamp(54px,6.7vw,108px);
  line-height:.86;
  letter-spacing:.01em;
  margin-bottom:22px;
}

.hero-v43 h1 span:last-child{
  font-size:.78em;
  display:inline-block;
  margin-top:10px;
  padding:.06em .12em .03em;
  background:var(--red);
  color:#fff;
  letter-spacing:.02em;
}

.hero-v43 .hero-copy{
  font-size:clamp(18px,1.55vw,23px);
  line-height:1.42;
  max-width:650px;
}

.hero-v43 .hero-ctas{
  margin-top:26px;
}

.hero-v43 .btn{
  min-height:48px;
}

.hero-proof{
  margin-top:18px;
  font-size:11px;
  padding:10px 13px;
}

.hero-motion-strip{
  position:relative;
  display:flex;
  width:min(620px,100%);
  gap:24px;
  overflow:hidden;
  margin-top:20px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.22);
  color:rgba(255,255,255,.58);
  font-size:11px;
  font-weight:1000;
  letter-spacing:.22em;
  text-transform:uppercase;
}

.hero-motion-strip span{
  position:relative;
  animation:heroStripMove 7s ease-in-out infinite alternate;
}

.hero-motion-strip span:nth-child(2){animation-delay:.2s}
.hero-motion-strip span:nth-child(3){animation-delay:.4s}
.hero-motion-strip span:nth-child(4){animation-delay:.6s}

.hero-panel{
  padding:24px;
  max-width:420px;
  justify-self:end;
}

.hero-panel-head .eyebrow{
  margin-bottom:12px;
}

.hero-panel-head h2{
  font-size:clamp(27px,2.7vw,39px);
  line-height:.93;
  margin-bottom:10px;
}

.hero-panel-head p{
  font-size:14px;
  line-height:1.42;
  margin-bottom:18px;
}

.hero-metrics-v43{
  grid-template-columns:1fr;
  gap:0;
}

.metric-v43{
  grid-template-columns:104px 1fr;
  gap:12px;
  padding:11px 0 13px;
}

.metric-v43 strong{
  min-width:0;
  font-size:clamp(32px,3vw,42px);
}

.metric-v43 span{
  font-size:11px;
  line-height:1.2;
}

.metric-v43 i{
  height:2px;
}

.hero-animate .metric-v43 i:after{
  animation:barFill 1.8s ease forwards;
}

.hero-scroll-cue{
  position:absolute;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  color:#fff;
  font-size:10px;
  letter-spacing:.24em;
  text-transform:uppercase;
  font-weight:1000;
  opacity:.72;
  padding-bottom:18px;
}

.hero-scroll-cue:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  width:1px;
  height:13px;
  background:var(--red);
  animation:scrollCue 1.2s ease-in-out infinite;
}

@keyframes heroStripMove{
  from{transform:translateX(0); opacity:.42}
  to{transform:translateX(14px); opacity:.9}
}

@keyframes scrollCue{
  0%,100%{transform:translateY(0); opacity:.35}
  50%{transform:translateY(6px); opacity:1}
}

@media(max-width:1200px){
  .hero-v43 .hero-grid{
    grid-template-columns:1fr;
    gap:28px;
  }

  .hero-panel{
    justify-self:start;
    width:min(720px,100%);
    max-width:none;
  }

  .hero-metrics-v43{
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
  }

  .metric-v43{
    display:block;
    padding:12px 0 14px;
  }

  .metric-v43 strong{
    margin-bottom:6px;
  }
}

@media(max-width:900px){
  body.home-page{
    --header:68px;
  }

  body.home-page .nav-wrap{
    height:68px;
  }

  body.home-page .brand img{
    height:42px;
  }

  .hero-v43 .hero-inner{
    min-height:auto;
    padding:44px 0 54px;
  }

  .hero-v43 h1{
    font-size:clamp(44px,12vw,78px);
  }

  .hero-v43 h1 span:last-child{
    font-size:.82em;
  }

  .hero-metrics-v43{
    grid-template-columns:1fr 1fr;
  }

  .hero-scroll-cue{
    display:none;
  }
}

@media(max-width:560px){
  body.home-page .company-cta{
    display:none;
  }

  .hero-v43 .hero-grid{
    gap:24px;
  }

  .hero-v43 h1{
    font-size:clamp(42px,15vw,64px);
  }

  .hero-v43 .hero-copy{
    font-size:17px;
  }

  .hero-metrics-v43{
    grid-template-columns:1fr;
  }

  .hero-panel{
    padding:20px;
  }

  .hero-motion-strip{
    gap:14px;
    font-size:9px;
    letter-spacing:.16em;
  }
}


/* =====================================================
   v4.3.2 — hero copy/KPI refinement
   ===================================================== */

.hero-v43 .eyebrow{letter-spacing:.28em}

.hero-v43 h1{
  font-size:clamp(48px,5.9vw,92px);
  line-height:.9;
  max-width:760px;
  margin-bottom:20px;
}

.hero-v43 h1 span{display:block}

.hero-v43 h1 span:last-child{
  display:block;
  width:max-content;
  max-width:100%;
  margin-top:6px;
  padding:0;
  background:transparent;
  color:var(--red);
  font-size:.82em;
  line-height:.94;
}

.hero-v43 .hero-copy{
  max-width:610px;
  font-size:clamp(18px,1.45vw,22px);
}

.hero-motion-strip{
  width:min(700px,100%);
  gap:28px;
  color:rgba(255,255,255,.68);
  font-size:10px;
  letter-spacing:.19em;
}

.hero-panel{
  width:400px;
  max-width:100%;
  padding:24px 26px 26px;
}

.hero-panel-head .eyebrow{
  margin-bottom:10px;
  font-size:11px;
  letter-spacing:.25em;
}

.hero-panel-head h2{
  font-size:clamp(26px,2.45vw,34px);
  line-height:.98;
  margin-bottom:10px;
}

.hero-panel-head p{
  font-size:13px;
  line-height:1.42;
  max-width:300px;
}

.metric-v43{
  display:block;
  padding:12px 0 15px;
}

.metric-v43 strong{
  display:block;
  font-size:clamp(31px,2.7vw,41px);
  line-height:.9;
  margin-bottom:6px;
}

.metric-v43 span{
  display:block;
  font-size:10.5px;
  line-height:1.25;
  letter-spacing:.08em;
}

.metric-v43 i{height:2px}

.hero-animate .metric-v43 i:after{
  animation:barFill 3.4s cubic-bezier(.18,.8,.22,1) forwards;
}

.hero-animate .metric-v43:nth-child(2) i:after{animation-delay:.18s}
.hero-animate .metric-v43:nth-child(3) i:after{animation-delay:.36s}
.hero-animate .metric-v43:nth-child(4) i:after{animation-delay:.54s}
.hero-animate .metric-v43:nth-child(5) i:after{animation-delay:.72s}

.hero-scroll-cue{
  width:24px;
  height:24px;
  padding:0;
  bottom:17px;
  opacity:.62;
  font-size:0;
}

.hero-scroll-cue:before{
  content:"";
  position:absolute;
  left:50%;
  top:1px;
  width:8px;
  height:8px;
  border-right:2px solid #fff;
  border-bottom:2px solid #fff;
  transform:translateX(-50%) rotate(45deg);
  animation:scrollArrow 1.4s ease-in-out infinite;
}

.hero-scroll-cue:after{
  left:50%;
  height:14px;
}

@keyframes scrollArrow{
  0%,100%{transform:translate(-50%,0) rotate(45deg);opacity:.35}
  50%{transform:translate(-50%,5px) rotate(45deg);opacity:1}
}

@media(max-width:1200px){
  .hero-v43 h1{max-width:820px}
  .hero-panel{width:min(760px,100%)}
  .hero-metrics-v43{grid-template-columns:repeat(5,minmax(0,1fr))}
  .metric-v43{padding:12px 0 16px}
}

@media(max-width:900px){
  .hero-v43 h1{font-size:clamp(42px,11vw,72px)}
  .hero-v43 h1 span:last-child{width:auto}
  .hero-metrics-v43{grid-template-columns:1fr 1fr}
}

@media(max-width:560px){
  .hero-v43 h1{font-size:clamp(40px,13vw,58px)}
  .hero-motion-strip{gap:16px;font-size:9px}
  .hero-metrics-v43{grid-template-columns:1fr}
}


/* =====================================================
   v4.3.3 — hero first-screen power + KPI cards
   ===================================================== */

body.home-page{
  --header:66px;
}

body.home-page .nav-wrap{
  height:66px;
}

body.home-page .site-header{
  border-bottom:2px solid var(--red);
}

body.home-page .brand img{
  height:39px;
}

body.home-page .main-nav{
  gap:18px;
}

body.home-page .main-nav a,
body.home-page .lang,
body.home-page .btn{
  font-size:11px;
  letter-spacing:.13em;
}

body.home-page .company-cta{
  min-height:40px;
  padding-inline:18px;
}

.hero-v43{
  min-height:calc(100vh - 66px);
}

.hero-v43 .hero-inner{
  min-height:calc(100vh - 66px);
  padding:34px 0 30px;
}

.hero-v43 .hero-grid{
  grid-template-columns:minmax(0,1.08fr) minmax(330px,390px);
  gap:38px;
  align-items:center;
}

.hero-v43 .hero-copybox{
  max-width:760px;
}

.hero-v43 .eyebrow{
  margin-bottom:14px;
  font-size:12px;
  letter-spacing:.32em;
}

.hero-v43 h1{
  font-size:clamp(48px,5.45vw,84px);
  line-height:.88;
  max-width:720px;
  margin-bottom:18px;
}

.hero-v43 h1 span:last-child{
  margin-top:4px;
  font-size:.78em;
  color:var(--red);
}

.hero-v43 .hero-copy{
  max-width:590px;
  font-size:clamp(17px,1.28vw,21px);
  line-height:1.42;
}

.hero-v43 .hero-ctas{
  margin-top:22px;
  gap:12px;
}

.hero-v43 .btn{
  min-height:44px;
  padding-inline:20px;
}

.hero-proof{
  margin-top:15px;
  padding:9px 12px;
  font-size:10px;
  letter-spacing:.08em;
}

.hero-motion-strip{
  margin-top:15px;
  padding-top:11px;
  width:min(650px,100%);
  gap:22px;
  border-top:1px solid rgba(255,255,255,.18);
  color:rgba(255,255,255,.64);
}

.hero-panel{
  width:390px;
  padding:22px;
  background:rgba(7,7,7,.82);
  border-color:rgba(255,255,255,.18);
  box-shadow:0 24px 72px rgba(0,0,0,.28);
}

.hero-panel-head .eyebrow{
  font-size:10px;
  margin-bottom:9px;
  color:var(--red);
}

.hero-panel-head h2{
  font-size:clamp(24px,2.2vw,31px);
  line-height:1;
  margin-bottom:9px;
}

.hero-panel-head p{
  font-size:12.5px;
  line-height:1.38;
  margin-bottom:14px;
  max-width:310px;
  color:#e9e9e9;
}

.hero-metrics-v43{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}

.metric-v43{
  position:relative;
  min-height:86px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:12px 12px 11px;
  border:1px solid rgba(255,255,255,.18);
  border-left:4px solid var(--red);
  background:rgba(255,255,255,.035);
  overflow:hidden;
}

.metric-v43:before{
  content:"";
  position:absolute;
  inset:auto auto -34px -34px;
  width:76px;
  height:76px;
  border-radius:50%;
  background:rgba(224,0,0,.22);
  opacity:.45;
  transform:scale(.8);
}

.hero-animate .metric-v43:before{
  animation:metricPulse 4s ease-in-out infinite;
}

.hero-animate .metric-v43:nth-child(2):before{animation-delay:.25s}
.hero-animate .metric-v43:nth-child(3):before{animation-delay:.5s}
.hero-animate .metric-v43:nth-child(4):before{animation-delay:.75s}
.hero-animate .metric-v43:nth-child(5):before{animation-delay:1s}

.metric-v43 strong{
  position:relative;
  z-index:1;
  font-size:clamp(29px,2.4vw,38px);
  line-height:.9;
  margin:0;
  color:#fff;
}

.metric-v43 span{
  position:relative;
  z-index:1;
  display:block;
  font-size:9.5px;
  line-height:1.18;
  color:#ddd;
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:.07em;
}

.metric-v43 i{
  display:none !important;
}

.hero-scroll-cue{
  display:none !important;
}

@keyframes metricPulse{
  0%,100%{transform:scale(.78);opacity:.28}
  50%{transform:scale(1.18);opacity:.58}
}

/* Platformsectie direct na hero compacter, zodat sfeer/cultuur sneller in beeld komt */
.home-page #platform.section{
  padding:48px 0 42px;
}

.home-page #platform .two-col{
  gap:44px;
  align-items:center;
}

.home-page #platform .section-title{
  font-size:clamp(38px,4.5vw,68px);
  margin-bottom:18px;
}

.home-page #platform .lead{
  font-size:18px;
  line-height:1.55;
  margin-bottom:20px;
}

.home-page #platform .feature-card{
  padding:22px;
}

.home-page #platform .feature-card h3{
  font-size:21px;
}

.home-page #platform .feature-card p{
  line-height:1.45;
}

@media(max-width:1200px){
  .hero-v43 .hero-grid{
    grid-template-columns:1fr;
    gap:26px;
  }

  .hero-panel{
    width:min(720px,100%);
    justify-self:start;
  }

  .hero-metrics-v43{
    grid-template-columns:repeat(5,minmax(0,1fr));
  }

  .metric-v43{
    min-height:96px;
  }
}

@media(max-width:900px){
  body.home-page{
    --header:64px;
  }

  body.home-page .nav-wrap{
    height:64px;
  }

  .hero-v43 .hero-inner{
    padding:38px 0;
  }

  .hero-v43 h1{
    font-size:clamp(40px,10vw,68px);
  }

  .hero-metrics-v43{
    grid-template-columns:1fr 1fr;
  }

  .home-page #platform.section{
    padding:42px 0 36px;
  }

  .home-page #platform .two-col{
    gap:28px;
  }
}

@media(max-width:560px){
  .hero-v43 h1{
    font-size:clamp(38px,12vw,56px);
  }

  .hero-v43 .hero-copy{
    font-size:16px;
  }

  .hero-metrics-v43{
    grid-template-columns:1fr;
  }

  .metric-v43{
    min-height:78px;
  }

  .home-page #platform .feature-grid{
    grid-template-columns:1fr;
  }
}


/* =====================================================
   v4.3.4 — hero filter + platform typography/spacing
   ===================================================== */

/* Herofoto net zichtbaarder: minder zware overlay, zonder leesbaarheid te verliezen */
.hero-v43 .hero-bg{
  opacity:.94;
}

.hero-v43 .hero-overlay{
  background:
    radial-gradient(circle at 78% 18%, rgba(224,0,0,.18), transparent 34%),
    linear-gradient(90deg, rgba(0,0,0,.84) 0%, rgba(0,0,0,.62) 46%, rgba(0,0,0,.30) 100%),
    linear-gradient(0deg, rgba(0,0,0,.24), rgba(0,0,0,.02));
}

/* Homepage typografie strakker doortrekken vanuit de hero */
.home-page .section-title,
.home-page .feature-card h3,
.home-page .timeline-card h3,
.home-page .event-card h3,
.home-page .news-card h3{
  font-family:Arial, Helvetica, sans-serif;
  font-weight:1000;
  letter-spacing:.02em;
}

.home-page #platform .eyebrow{
  margin-bottom:14px;
  font-size:13px;
  letter-spacing:.34em;
}

.home-page #platform.section{
  padding:34px 0 16px;
}

.home-page #platform .two-col{
  gap:36px;
  align-items:center;
}

.home-page #platform .section-title{
  font-size:clamp(34px,4vw,58px);
  line-height:.92;
  margin-bottom:14px;
}

.home-page #platform .lead{
  font-size:17px;
  line-height:1.48;
  margin-bottom:18px;
  max-width:760px;
}

.home-page #platform .button-row{
  margin-top:10px;
}

.home-page #platform .feature-grid{
  gap:12px;
}

.home-page #platform .feature-card{
  min-height:176px;
  padding:20px 22px;
  border-left-width:6px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}

.home-page #platform .feature-card h3{
  font-size:20px;
  line-height:1;
  margin-bottom:12px;
}

.home-page #platform .feature-card p{
  font-size:15px;
  line-height:1.42;
  color:#333;
}

/* Volgende sectie dichter tegen het platform aan */
.home-page #sfeer,
.home-page #sfeer-cultuur,
.home-page .sfeer,
.home-page .culture,
.home-page .sfeer-cultuur{
  scroll-margin-top:calc(var(--header) + 16px);
}

.home-page #platform + .section,
.home-page #platform + section{
  margin-top:0;
  padding-top:34px;
}

@media(max-width:980px){
  .home-page #platform.section{
    padding:34px 0 20px;
  }
  .home-page #platform .two-col{
    gap:28px;
  }
  .home-page #platform .feature-card{
    min-height:150px;
  }
}

@media(max-width:760px){
  .home-page #platform .section-title{
    font-size:clamp(34px,10vw,52px);
  }
  .home-page #platform .feature-grid{
    grid-template-columns:1fr;
  }
}


/* =====================================================
   v4.3.5 — culture video loop tile
   ===================================================== */

.culture-video-tile{
  background:#111;
  overflow:hidden;
}

.culture-video-tile .culture-tile-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transform:scale(1.02);
  filter:saturate(1.05) contrast(1.04);
}

.culture-video-tile:hover .culture-tile-video{
  transform:scale(1.065);
  transition:transform .45s ease;
}

.culture-video-tile .culture-tile-overlay{
  background:
    linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.78)),
    linear-gradient(90deg,rgba(224,0,0,.18),transparent 52%);
}

.culture-video-tile .culture-tile-copy small::after{
  content:"";
  display:inline-block;
  width:7px;
  height:7px;
  margin-left:8px;
  border-radius:50%;
  background:var(--red);
  box-shadow:0 0 0 0 rgba(224,0,0,.55);
  animation:videoLivePulse 1.6s ease-in-out infinite;
}

@keyframes videoLivePulse{
  0%,100%{box-shadow:0 0 0 0 rgba(224,0,0,.45)}
  50%{box-shadow:0 0 0 7px rgba(224,0,0,0)}
}


/* =====================================================
   v4.3.6 — hero video bleed fix
   ===================================================== */

.hero-v43.has-video .hero-bg{
  opacity:0 !important;
  visibility:hidden;
}

.hero-v43.has-video .hero-video{
  opacity:1 !important;
}


/* =====================================================
   v4.3.7 — video background in Video’s CTA
   ===================================================== */

.culture-media-video-bg{
  position:relative;
  overflow:hidden;
  min-height:220px;
  color:#fff;
  background:#111;
  border-left-color:var(--red);
}

.culture-media-bg-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  z-index:0;
  filter:saturate(1.08) contrast(1.05);
}

.culture-media-video-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.42)),
    linear-gradient(180deg,rgba(0,0,0,.22),rgba(0,0,0,.80));
}

.culture-media-video-copy{
  position:relative;
  z-index:2;
}

.culture-media-video-bg small,
.culture-media-video-bg h3,
.culture-media-video-bg p{
  color:#fff;
}

.culture-media-video-bg .btn{
  background:var(--red);
  color:#fff;
  border-color:var(--red);
}

.culture-media-video-bg .btn:hover{
  background:#fff;
  color:#111;
  border-color:#fff;
}


/* =====================================================
   v4.3.8 — homepage admin color data + SEO support
   ===================================================== */

.metric-v43{
  border-left-color:var(--metric-color,var(--red)) !important;
}

.metric-v43:before{
  background:color-mix(in srgb,var(--metric-color,var(--red)) 28%,transparent) !important;
}

.success-item{
  border-left-color:var(--metric-color,var(--red)) !important;
}

.success-item i,
.success-counter i{
  background:var(--metric-color,var(--red)) !important;
}


/* =====================================================
   v4.3.9 — mobile first impression fix
   ===================================================== */

/* Desktop: mobiele CTA verborgen */
.platform-mobile-cta{
  display:none;
}

/* iOS/mobile video iets zekerder als echte cover-laag */
.hero-v43.has-video .hero-video{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  z-index:-2;
}

/* Mobiel: eerste indruk rustiger, minder datablokken, video/foto voller */
@media(max-width:760px){
  body.home-page{
    --header:76px;
  }

  body.home-page .site-header{
    position:sticky;
    top:0;
    z-index:100;
    border-bottom:3px solid var(--red);
  }

  body.home-page .nav-wrap{
    height:76px;
    padding:0;
  }

  body.home-page .brand img{
    height:58px;
  }

  body.home-page .lang-switch{
    margin-left:auto;
  }

  body.home-page .lang{
    font-size:13px;
  }

  body.home-page .hamburger{
    width:54px;
    height:42px;
  }

  body.home-page .hamburger span{
    height:4px;
  }

  .hero-v43{
    min-height:auto;
  }

  .hero-v43 .hero-bg{
    opacity:.98;
  }

  .hero-v43 .hero-overlay{
    background:
      radial-gradient(circle at 86% 12%, rgba(224,0,0,.18), transparent 38%),
      linear-gradient(90deg, rgba(0,0,0,.82) 0%, rgba(0,0,0,.50) 58%, rgba(0,0,0,.22) 100%),
      linear-gradient(0deg, rgba(0,0,0,.22), rgba(0,0,0,.04));
  }

  .hero-v43 .hero-inner{
    min-height:calc(100svh - 76px);
    padding:42px 0 34px;
    align-items:flex-start;
  }

  .hero-v43 .hero-grid{
    display:block;
  }

  .hero-v43 .hero-copybox{
    max-width:100%;
  }

  .hero-v43 .eyebrow{
    font-size:11px;
    letter-spacing:.30em;
    margin-bottom:20px;
  }

  .hero-v43 h1{
    font-size:clamp(44px,13.7vw,70px);
    line-height:.88;
    max-width:100%;
    margin-bottom:22px;
  }

  .hero-v43 h1 span:last-child{
    font-size:.82em;
    margin-top:7px;
  }

  .hero-v43 .hero-copy{
    font-size:21px;
    line-height:1.45;
    max-width:100%;
  }

  .hero-v43 .hero-ctas{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin-top:26px;
  }

  .hero-v43 .btn{
    width:100%;
    min-height:58px;
    padding:0 10px;
    font-size:13px;
    letter-spacing:.14em;
  }

  .hero-proof{
    margin-top:20px;
    font-size:12px;
    line-height:1.35;
    padding:13px 14px;
  }

  .hero-motion-strip{
    width:100%;
    gap:26px;
    overflow:hidden;
    white-space:nowrap;
    margin-top:18px;
    opacity:.78;
  }

  .hero-motion-strip span{
    flex:0 0 auto;
  }

  /* KPI-panel niet meer als grote drukke hero-kaart op mobiel */
  .hero-v43 .hero-panel{
    display:none !important;
  }

  /* Platform mobiel: eerst kop/intro, dan 4 boxen, dan CTA */
  .home-page #platform.section{
    padding:36px 0 26px;
  }

  .home-page #platform .two-col{
    display:flex;
    flex-direction:column;
    gap:22px;
  }

  .home-page #platform .section-title{
    font-size:clamp(38px,12.2vw,62px);
    line-height:.90;
    margin-bottom:18px;
  }

  .home-page #platform .lead{
    font-size:21px;
    line-height:1.48;
    margin-bottom:0;
  }

  .home-page #platform .feature-grid{
    order:2;
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
    width:100%;
  }

  .home-page #platform .feature-card{
    min-height:0;
    padding:24px 24px 24px 28px;
    border-left-width:6px;
    box-shadow:0 12px 30px rgba(0,0,0,.055);
  }

  .home-page #platform .feature-card h3{
    font-size:25px;
    margin-bottom:16px;
  }

  .home-page #platform .feature-card p{
    font-size:18px;
    line-height:1.45;
  }

  .platform-desktop-cta{
    display:none !important;
  }

  .platform-mobile-cta{
    order:3;
    display:block;
    width:100%;
    margin-top:2px;
  }

  .platform-mobile-cta .btn{
    width:100%;
    min-height:56px;
  }

  /* Floating knoppen iets minder dominant op content */
  .floating-whatsapp{
    width:54px;
    height:54px;
    right:18px;
    bottom:22px;
  }

  .back-to-top{
    width:48px;
    height:48px;
    right:22px;
    bottom:88px;
  }
}

@media(max-width:390px){
  .hero-v43 h1{
    font-size:clamp(40px,13vw,58px);
  }

  .hero-v43 .hero-copy{
    font-size:19px;
  }

  .hero-v43 .btn{
    font-size:12px;
  }

  .hero-proof{
    font-size:11px;
  }
}


/* =====================================================
   v4.3.10 — separate mobile hero media
   ===================================================== */

.hero-v43.hero-mobile-media.has-video .hero-video{
  object-position:center center;
}

@media(max-width:760px){
  .hero-v43.hero-mobile-media .hero-video,
  .hero-v43.hero-mobile-media .hero-bg{
    object-fit:cover;
    background-position:center center;
  }

  .hero-v43.hero-mobile-media.has-video .hero-video{
    min-width:100%;
    min-height:100%;
    display:block !important;
    opacity:1 !important;
    visibility:visible !important;
  }

  .hero-v43.hero-mobile-media.has-video .hero-bg{
    opacity:0 !important;
    visibility:hidden !important;
  }
}


/* =====================================================
   v4.3.12 - mandatory mobile hero video layering fix
   ===================================================== */

.hero-v43 .hero-bg{
  z-index:-3;
}

.hero-v43 .hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:-2;
  opacity:0;
  visibility:hidden;
  display:block;
}

.hero-v43.has-video .hero-bg{
  opacity:0 !important;
  visibility:hidden !important;
}

.hero-v43.has-video .hero-video{
  opacity:1 !important;
  visibility:visible !important;
  display:block !important;
}

.hero-v43.video-is-playing .hero-bg{
  opacity:0 !important;
  visibility:hidden !important;
}

@media(max-width:760px){
  .hero-v43.has-video .hero-video{
    z-index:-2 !important;
    opacity:1 !important;
    visibility:visible !important;
    display:block !important;
  }
}


/* =====================================================
   v4.4.1 — Global public visual system
   Fonts: Sora display + Manrope body
   Admin uitgesloten: admin gebruikt admin/admin.css
   ===================================================== */

:root{
  --font-display: "Sora", "Manrope", Arial, sans-serif;
  --font-main: "Manrope", Arial, sans-serif;
  --text-main: #111214;
  --text-soft: #4c4f55;
  --text-muted: #70747a;
  --ink: #111214;
  --ink-deep: #090909;
  --paper: #ffffff;
  --paper-soft: #f5f5f3;
  --line-soft: #dedede;
  --section-y: clamp(62px, 7vw, 112px);
  --section-y-tight: clamp(42px, 5vw, 76px);
  --container: 1280px;
  --h1-fluid: clamp(52px, 8vw, 126px);
  --h2-fluid: clamp(40px, 5.8vw, 90px);
  --h3-fluid: clamp(26px, 3vw, 44px);
  --body-fluid: clamp(17px, 1.25vw, 20px);
  --label-size: 12px;
  --header-height-public: 96px;
}

html{
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body{
  font-family: var(--font-main);
  color: var(--text-main);
  letter-spacing: -0.012em;
}

h1,h2,h3,h4,h5,h6,
.section-title,
.page-title,
.hero-v43 h1,
.metric-v43 strong,
.success-counter strong,
.main-nav,
.btn,
.eyebrow,
.lang-switch,
.culture-tile-copy h3,
.card h3,
.feature-card h3,
.news-title,
.event-title{
  font-family: var(--font-display);
}

p,li,input,textarea,select,button{
  font-family: var(--font-main);
}

p,
.lead,
.card p,
.feature-card p,
.event-card p,
.news-card p{
  color: var(--text-soft);
}

.eyebrow,
.section-label,
.hero-v43 .eyebrow{
  font-family: var(--font-display);
  font-size: var(--label-size);
  letter-spacing: .32em;
  font-weight: 800;
  text-transform: uppercase;
}

.section-title,
.page-title{
  color: var(--ink);
  letter-spacing: -.055em;
  font-weight: 800;
}

.section-title{
  font-size: var(--h2-fluid);
  line-height: .92;
}

.btn,
button,
input[type="submit"]{
  font-family: var(--font-display);
  font-weight: 800;
  letter-spacing: .12em;
  cursor:pointer;
}

.site-header{
  background:#fff;
  border-bottom:3px solid var(--red);
  box-shadow:0 8px 30px rgba(0,0,0,.035);
}

.nav-wrap{
  min-height: var(--header-height-public);
}

.brand img{
  height:64px;
  width:auto;
}

.main-nav a,
.lang-switch a,
.lang{
  font-family: var(--font-display);
  color:var(--ink);
  font-weight:800;
  letter-spacing:.12em;
}

.main-nav a:hover,
.lang-switch a:hover{
  color:var(--red);
}

.site-header .btn-red,
.nav-cta,
a[href*="bedrijven"].btn-red{
  font-family:var(--font-display);
}

/* Public page heroes / intro blocks gelijker trekken */
.page-hero,
.subpage-hero,
.business-hero,
.news-hero,
.media-hero,
.team-hero,
.calendar-hero{
  font-family:var(--font-main);
}

.page-hero h1,
.subpage-hero h1,
.business-hero h1,
.news-hero h1,
.media-hero h1,
.team-hero h1,
.calendar-hero h1{
  font-family:var(--font-display);
  color:var(--ink);
  letter-spacing:-.055em;
  font-weight:800;
}

/* Cards consistent scherper, maar niet kinderlijk */
.sharp-card,
.feature-card,
.event-card,
.news-card,
.team-card,
.photo-card,
.video-card,
.business-card{
  border-color:var(--line-soft);
}

.sharp-card h3,
.feature-card h3,
.event-card h3,
.news-card h3,
.team-card h3,
.photo-card h3,
.video-card h3,
.business-card h3{
  font-family:var(--font-display);
  color:var(--ink);
  font-weight:800;
  letter-spacing:-.035em;
}

/* Funnel/public forms ook meenemen, admin niet */
.funnel-page,
.funnel-v4,
.funnel-section,
.funnel-form,
.funnel-card{
  font-family:var(--font-main);
}

.funnel-page h1,
.funnel-page h2,
.funnel-page h3,
.funnel-v4 h1,
.funnel-v4 h2,
.funnel-v4 h3,
.funnel-section-title{
  font-family:var(--font-display);
  letter-spacing:-.045em;
}

@media(max-width:900px){
  :root{
    --header-height-public: 76px;
    --section-y: 54px;
    --section-y-tight: 38px;
  }

  .nav-wrap{
    min-height:76px;
  }

  .brand img{
    height:58px;
  }

  .main-nav a,
  .lang-switch a,
  .lang{
    letter-spacing:.10em;
  }
}

@media(max-width:760px){
  body{
    letter-spacing:-.006em;
  }

  .section-title,
  .page-title{
    letter-spacing:-.045em;
  }

  .eyebrow,
  .section-label,
  .hero-v43 .eyebrow{
    letter-spacing:.25em;
  }

  .hero-v43 h1{
    letter-spacing:-.07em;
  }

  .btn{
    letter-spacing:.10em;
  }
}


/* =====================================================
   v4.4 quickfix 2 — homepage polish / readability / premium light tones
   ===================================================== */

:root{
  --line:#e5e8ee;
  --soft:#fbfbfc;
  --paper-soft:#f7f8fa;
  --text-main:#13161a;
  --text-soft:#4d535b;
}

body,
main{
  background:#fbfcfd;
  color:var(--text-main);
}

.site-header{
  border-bottom:1px solid var(--line);
  box-shadow:0 10px 28px rgba(15,20,35,.04);
}

#platform.section,
#kalender.section,
#nieuws.section,
#team.section,
#contact.section,
.success.story-panel-section{
  background:#fbfcfd;
}

.culture-home.story-panel-section,
.b2b.section{
  background:#f7f8fa;
}

/* Hero — KPI-blok verfijnder, minder harde witte rand */
.hero-panel{
  background:linear-gradient(180deg,rgba(8,8,9,.86),rgba(8,8,9,.81));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 28px 72px rgba(0,0,0,.32);
}

.hero-metrics-v43{
  gap:10px;
}

.metric-v43{
  border:1px solid rgba(255,255,255,.12);
  border-left:4px solid var(--red);
  background:rgba(255,255,255,.03);
}

.metric-v43:before{
  opacity:.32;
}

/* Platform — vier blokken weer helder rood en lichter / premium */
#platform .feature-card,
#platform .timeline-card{
  background:#fff;
  border:1px solid var(--line);
  border-left:6px solid var(--red)!important;
  box-shadow:0 16px 38px rgba(15,20,35,.045);
}

#platform .feature-card h3,
#platform .timeline-card h3{
  color:#101216;
}

#platform .feature-card p,
#platform .timeline-card p{
  color:var(--text-soft);
}

/* Sfeer & cultuur — overlays/text weer goed leesbaar */
.culture-home-panel{
  background:#fff;
  border:1px solid var(--line);
  border-left:1px solid var(--line);
  box-shadow:0 18px 44px rgba(15,20,35,.055);
}

.culture-tile,
.culture-media-cta,
.culture-page-card{
  border-color:var(--line);
}

.culture-tile-overlay{
  background:linear-gradient(180deg,rgba(5,8,12,.10),rgba(5,8,12,.58) 56%,rgba(5,8,12,.82));
}

.culture-tile img{
  filter:saturate(1.02) contrast(1.01) brightness(.94);
}

.culture-tile-copy h3,
.culture-tile-copy p,
.culture-tile-copy small,
.culture-media-video-copy h3,
.culture-media-video-copy p,
.culture-media-video-copy small{
  color:#fff !important;
  text-shadow:0 3px 16px rgba(0,0,0,.58);
}

.culture-media-video-overlay{
  background:linear-gradient(180deg,rgba(5,8,12,.18),rgba(5,8,12,.58) 60%,rgba(5,8,12,.80));
}

/* Kalender / cards — koelere lijnkleur voor premium gevoel */
.market-card,
.event-card,
.news-card,
.event-list-card,
.news-row,
.newsletter-strip,
.contact-item,
.form-box,
.team-panel,
.proof-panel,
.market-proof-block,
.contact-v5 .contact-intro,
.b2b-card,
.success-item,
.success.story-panel-section .container{
  border-color:var(--line);
}

.market-card,
.event-card,
.news-card,
.event-list-card,
.news-row{
  box-shadow:0 14px 32px rgba(15,20,35,.045);
}

/* Internationaal blok — tekst weer wit en contrast goed */
.market-proof-block,
.international-block{
  background:#09090a;
  box-shadow:0 24px 58px rgba(0,0,0,.16);
}

.international-content h3,
.international-content .eyebrow,
.international-content p,
.international-market-grid strong,
.international-market-grid em,
.international-market-grid small{
  color:#fff !important;
}

.international-content p{
  color:rgba(255,255,255,.84) !important;
}

.international-market-grid span{
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.03);
}

.international-market-grid small{
  color:rgba(255,255,255,.72) !important;
}

/* Voor bedrijven — zwarte kaart weer sprekend en leesbaar */
.b2b-card{
  box-shadow:0 20px 48px rgba(15,20,35,.06);
}

.b2b-card:first-child{
  background:linear-gradient(180deg,#111214,#090a0c);
  border:1px solid #15171b;
}

.b2b-card:first-child h3,
.b2b-card:first-child p{
  color:#fff !important;
}

.b2b-card:first-child p{
  opacity:.9;
}

.b2b-card h3{
  font-size:clamp(36px,3vw,48px);
  line-height:.96;
  margin-bottom:16px;
}

.b2b-card:nth-child(2){
  background:#fff;
  border:1px solid var(--line);
  border-left:6px solid var(--red);
}

/* Uitgelicht succes — linker rode streep weg op section-panel */
.success.story-panel-section .container{
  border-left:1px solid var(--line);
  background:#fff;
}

/* Donkere copy op donkere vlakken uitsluiten van globale font-kleurregels */
.hero-panel-head p,
.metric-v43 span,
.hero-proof,
.b2b-card:first-child p,
.b2b-card:first-child h3,
.international-content p,
.international-content h3,
.international-content .eyebrow,
.international-market-grid em,
.international-market-grid small,
.culture-tile-copy p,
.culture-tile-copy h3,
.culture-tile-copy small,
.culture-media-video-copy p,
.culture-media-video-copy h3,
.culture-media-video-copy small{
  color:inherit;
}

@media(max-width:900px){
  .hero-panel{
    width:min(390px,100%);
  }

  .b2b-card h3{
    font-size:clamp(32px,7vw,42px);
  }
}


/* =====================================================
   v4.4 quickfix 3 — homepage light premium tone + global accent stripe control
   ===================================================== */
body.home-page{
  --homepage-bg:#fbfcfe;
  --homepage-bg-alt:#f6f8fb;
  --homepage-line:#e4e8ef;
  --homepage-box-accent:var(--red,#D21000);
  background:var(--homepage-bg);
}

body.home-page main{
  background:var(--homepage-bg);
}

body.home-page .platform,
body.home-page .calendar,
body.home-page .news,
body.home-page .team,
body.home-page .contact{
  background:var(--homepage-bg);
}

body.home-page .culture-home,
body.home-page .success,
body.home-page .b2b{
  background:var(--homepage-bg-alt) !important;
}

body.home-page .success.story-panel-section{
  border-top:0 !important;
}

body.home-page .success.story-panel-section .container{
  background:#fff;
  border:1px solid var(--homepage-line) !important;
  border-left:0 !important;
  box-shadow:0 18px 42px rgba(16,24,40,.045);
}

body.home-page .culture-home-panel,
body.home-page .proof-panel,
body.home-page .team-panel,
body.home-page .form-box,
body.home-page .contact-item,
body.home-page .event-card,
body.home-page .news-card,
body.home-page .market-card,
body.home-page .b2b-card,
body.home-page .event-list-card,
body.home-page .news-row,
body.home-page .feature-card,
body.home-page .timeline-card,
body.home-page .success-item{
  border-color:var(--homepage-line) !important;
  box-shadow:0 14px 34px rgba(16,24,40,.045);
}

body.home-page .event-card,
body.home-page .news-card,
body.home-page .market-card,
body.home-page .b2b-card:nth-child(2),
body.home-page .feature-card,
body.home-page .timeline-card,
body.home-page .proof-panel,
body.home-page .team-panel,
body.home-page .contact-item,
body.home-page .form-box,
body.home-page .event-list-card,
body.home-page .news-row,
body.home-page .image-card,
body.home-page .success-item,
body.home-page .metric-v43,
body.home-page .date-badge,
body.home-page .international-block,
body.home-page .contact-item{
  border-left-color:var(--homepage-box-accent) !important;
}

body.home-page .metric-v43:before{
  background:color-mix(in srgb,var(--homepage-box-accent) 26%,transparent) !important;
}

body.home-page .success-item strong{
  color:var(--homepage-box-accent) !important;
}

body.home-page .success-item i,
body.home-page .success-counter i,
body.home-page .international-market-grid .active-line,
body.home-page .date-badge:before{
  background:var(--homepage-box-accent) !important;
}

body.home-page .platform .feature-card,
body.home-page .platform .timeline-card,
body.home-page .calendar .market-card,
body.home-page .calendar .event-card,
body.home-page .news .news-card,
body.home-page .contact .contact-item,
body.home-page .contact .form-box,
body.home-page .team .team-panel,
body.home-page .b2b-card:nth-child(2),
body.home-page .success-item{
  background:#fff;
}

body.home-page .international-block,
body.home-page .b2b-card:first-child{
  box-shadow:0 20px 54px rgba(0,0,0,.14);
}

body.home-page .b2b:before{
  background:linear-gradient(90deg,rgba(246,248,251,1) 0%,rgba(246,248,251,.78) 38%,rgba(246,248,251,0) 100%),url('assets/img/paddock.jpg') center/cover no-repeat;
  opacity:1;
}

body.home-page .section-title,
body.home-page .card-body h3,
body.home-page .feature-card h3,
body.home-page .timeline-card h3,
body.home-page .b2b-card h3,
body.home-page .international-content h3{
  color:#111319;
}

body.home-page .lead,
body.home-page .card-body p,
body.home-page .feature-card p,
body.home-page .timeline-card p,
body.home-page .contact-item strong,
body.home-page .team-content p:not(.eyebrow){
  color:#4b5563;
}


/* =====================================================
   v4.4 quickfix 4 — stronger premium white base + stripe consistency + tighter header
   ===================================================== */
:root{
  --header-height-public:84px;
}

.site-header{
  box-shadow:0 8px 24px rgba(15,20,35,.03);
}

.nav-wrap{
  min-height:84px;
}

.brand img{
  height:54px;
}

.main-nav a,
.lang-switch a,
.lang,
.site-header .btn,
.nav-cta{
  font-size:12px;
  letter-spacing:.11em;
}

body.home-page{
  --homepage-bg:#ffffff;
  --homepage-bg-alt:#fafbfd;
  --homepage-line:#e7ebf1;
}

body.home-page,
body.home-page main,
body.home-page #platform.section,
body.home-page #kalender.section,
body.home-page #nieuws.section,
body.home-page #team.section,
body.home-page #contact.section,
body.home-page .success.story-panel-section{
  background:#ffffff !important;
}

body.home-page .culture-home.story-panel-section,
body.home-page .b2b.section,
body.home-page .section.alt{
  background:var(--homepage-bg-alt) !important;
}

body.home-page .culture-home-panel,
body.home-page .proof-panel,
body.home-page .team-panel,
body.home-page .form-box,
body.home-page .contact-item,
body.home-page .event-card,
body.home-page .news-card,
body.home-page .market-card,
body.home-page .b2b-card,
body.home-page .event-list-card,
body.home-page .news-row,
body.home-page .feature-card,
body.home-page .timeline-card,
body.home-page .success-item,
body.home-page .success.story-panel-section .container,
body.home-page .culture-media-cta,
body.home-page .culture-page-card{
  background:#fff;
  border-color:var(--homepage-line) !important;
}

body.home-page .culture-home-panel,
body.home-page .feature-card,
body.home-page .timeline-card,
body.home-page .event-card,
body.home-page .news-card,
body.home-page .market-card,
body.home-page .event-list-card,
body.home-page .news-row,
body.home-page .proof-panel,
body.home-page .team-panel,
body.home-page .contact-item,
body.home-page .form-box,
body.home-page .success-item,
body.home-page .b2b-card:nth-child(2),
body.home-page .culture-media-cta,
body.home-page .culture-page-card,
body.home-page .image-card,
body.home-page .date-badge,
body.home-page .international-block{
  border-left-color:var(--homepage-box-accent) !important;
}

body.home-page .culture-home-panel{
  border-left-width:6px !important;
}

body.home-page .success.story-panel-section .container{
  border-left:0 !important;
}

body.home-page .culture-media-cta small{
  color:#6b7280;
}

body.home-page .culture-media-cta h3,
body.home-page .culture-media-cta p,
body.home-page .culture-page-card h3,
body.home-page .culture-page-card p{
  color:#111319;
}

body.home-page .culture-media-cta p,
body.home-page .culture-page-card p{
  color:#4b5563;
}

@media(max-width:1100px){
  :root{
    --header-height-public:78px;
  }
  .nav-wrap{
    min-height:78px;
  }
  .brand img{
    height:50px;
  }
}

@media(max-width:760px){
  :root{
    --header-height-public:76px;
  }
  .nav-wrap{
    min-height:76px;
  }
  .brand img{
    height:48px;
  }
}


/* =====================================================
   v4.4 quickfix 6 — herstel backgrounds / internationaal / bodyfont presets
   ===================================================== */

/* Extra body fonts for future template feel */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Source+Sans+3:wght@400;500;600;700;800&family=Urbanist:wght@400;500;600;700;800&display=swap');

body.home-page[data-body-font="manrope"]{ --font-main:"Manrope", Arial, sans-serif; }
body.home-page[data-body-font="inter"]{ --font-main:"Inter", Arial, sans-serif; }
body.home-page[data-body-font="plus-jakarta"]{ --font-main:"Plus Jakarta Sans", Arial, sans-serif; }
body.home-page[data-body-font="urbanist"]{ --font-main:"Urbanist", Arial, sans-serif; }
body.home-page[data-body-font="source-sans"]{ --font-main:"Source Sans 3", Arial, sans-serif; }

body.home-page{
  --homepage-bg:#ffffff;
  --homepage-bg-soft:#f1f2f4;
  --homepage-line:#e0e3e8;
  background:#fff !important;
}

body.home-page main{
  background:#fff !important;
}

/* Rustig sectieritme: harde blokken, geen flauwe lijntjes/gradients */
body.home-page main > .section,
body.home-page .story-panel-section,
body.home-page .b2b,
body.home-page .success,
body.home-page .evolution{
  border-top:0 !important;
  border-bottom:0 !important;
  background-image:none !important;
}

body.home-page #platform.section,
body.home-page #kalender.section,
body.home-page #nieuws.section,
body.home-page #team.section,
body.home-page #contact.section{
  background:#fff !important;
}

body.home-page .culture-home.story-panel-section,
body.home-page .success.story-panel-section,
body.home-page .b2b.section{
  background:var(--homepage-bg-soft) !important;
}

/* kaarten: premium rustig */
body.home-page .culture-home-panel,
body.home-page .success.story-panel-section .container,
body.home-page .proof-panel,
body.home-page .team-panel,
body.home-page .form-box,
body.home-page .contact-item,
body.home-page .event-card,
body.home-page .news-card,
body.home-page .market-card,
body.home-page .event-list-card,
body.home-page .news-row,
body.home-page .feature-card,
body.home-page .timeline-card,
body.home-page .success-item,
body.home-page .culture-media-cta,
body.home-page .culture-page-card,
body.home-page .image-card{
  background:#fff !important;
  border-color:var(--homepage-line) !important;
  box-shadow:0 14px 34px rgba(17,22,32,.045) !important;
}

/* internationale blok expliciet herstellen */
body.home-page .international-block{
  display:grid !important;
  grid-template-columns:1.1fr .9fr !important;
  background:#0b0c0f !important;
  color:#fff !important;
  border:0 !important;
  box-shadow:0 22px 58px rgba(0,0,0,.16) !important;
  overflow:hidden !important;
}

body.home-page .international-image{
  background:#111 !important;
}

body.home-page .international-image img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}

body.home-page .international-content{
  background:#0b0c0f !important;
  color:#fff !important;
}

body.home-page .international-content h3,
body.home-page .international-content p,
body.home-page .international-content .eyebrow,
body.home-page .international-market-grid strong,
body.home-page .international-market-grid em,
body.home-page .international-market-grid small{
  color:#fff !important;
  opacity:1 !important;
  visibility:visible !important;
}

body.home-page .international-content p{
  color:rgba(255,255,255,.84) !important;
}

body.home-page .international-market-grid span{
  display:block !important;
  min-height:auto !important;
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  border-left:4px solid var(--homepage-box-accent) !important;
  padding:14px 14px 13px !important;
}

body.home-page .international-market-grid small{
  color:rgba(255,255,255,.72) !important;
}

/* bedrijven: foto behouden, kaart leesbaar */
body.home-page .b2b.section{
  position:relative !important;
  overflow:hidden !important;
}

body.home-page .b2b:before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 0 0 auto !important;
  width:46% !important;
  background:linear-gradient(90deg,rgba(241,242,244,1),rgba(241,242,244,.82) 38%,rgba(241,242,244,.18)),url('assets/img/paddock.jpg') center/cover no-repeat !important;
  opacity:1 !important;
}

body.home-page .b2b .container{
  position:relative !important;
  z-index:1 !important;
}

body.home-page .b2b-card:first-child{
  background:#0b0c0f !important;
  color:#fff !important;
  border:1px solid #0b0c0f !important;
}

body.home-page .b2b-card:first-child h3,
body.home-page .b2b-card:first-child p{
  color:#fff !important;
}

body.home-page .b2b-card:first-child p{
  color:rgba(255,255,255,.88) !important;
}

body.home-page .b2b-card:nth-child(2){
  background:#fff !important;
}

body.home-page .b2b-card:nth-child(2) h3{
  color:#111319 !important;
}

body.home-page .b2b-card:nth-child(2) p{
  color:#5b6270 !important;
}

/* Geen losse rode streep op het succes-buitenpaneel */
body.home-page .success.story-panel-section .container{
  border-left:1px solid var(--homepage-line) !important;
}

/* Header terug strak */
body.home-page .site-header .nav-wrap,
.site-header .nav-wrap{
  min-height:78px !important;
  height:78px !important;
}

body.home-page .site-header .brand img,
.site-header .brand img{
  height:48px !important;
}

body.home-page .main-nav a,
body.home-page .lang-switch a,
body.home-page .lang,
body.home-page .site-header .btn{
  font-size:12px !important;
  letter-spacing:.11em !important;
}

/* Mobiele hero-video behouden */
@media(max-width:760px){
  body.home-page .hero-v43.has-video .hero-bg{
    opacity:0 !important;
    visibility:hidden !important;
  }
  body.home-page .hero-v43.has-video .hero-video{
    display:block !important;
    opacity:1 !important;
    visibility:visible !important;
    z-index:-2 !important;
  }
  body.home-page .site-header .nav-wrap,
  .site-header .nav-wrap{
    min-height:74px !important;
    height:74px !important;
  }
  body.home-page .site-header .brand img,
  .site-header .brand img{
    height:46px !important;
  }
}

@media(max-width:1100px){
  body.home-page .international-block{
    grid-template-columns:1fr !important;
  }
  body.home-page .international-image{
    min-height:320px !important;
  }
}


/* =====================================================
   v4.4 quickfix 8 — sitewide font/accent variables
   ===================================================== */
:root{
  --site-accent:var(--red,#D21000);
}

body[data-body-font="manrope"]{ --font-main:"Manrope", Arial, sans-serif; }
body[data-body-font="inter"]{ --font-main:"Inter", Arial, sans-serif; }
body[data-body-font="plus-jakarta"]{ --font-main:"Plus Jakarta Sans", Arial, sans-serif; }
body[data-body-font="urbanist"]{ --font-main:"Urbanist", Arial, sans-serif; }
body[data-body-font="source-sans"]{ --font-main:"Source Sans 3", Arial, sans-serif; }

body,
body p,
body li,
body input,
body textarea,
body select,
body button,
body .lead,
body .card p,
body .feature-card p,
body .event-card p,
body .news-card p{
  font-family:var(--font-main);
}

.site-header{
  border-bottom-color:var(--site-accent);
}

.main-nav a:after,
.btn-red,
.company-cta,
.back-to-top:hover{
  background:var(--site-accent);
  border-color:var(--site-accent);
}

.eyebrow,
.section-title span,
.red{
  color:var(--site-accent);
}

/* Alleen echte accenten meebewegen; rustige card-randen blijven grijs/premium */
.metric-v43,
.date-badge,
.success-item,
.hero-card,
.international-market-grid span{
  border-left-color:var(--site-accent);
}

.metric-v43:before,
.success-item i,
.success-counter i{
  background:var(--site-accent);
}


/* =====================================================
   v5.0 qf2 — subtle homepage reviews
   ===================================================== */
.home-reviews{padding:54px 0;background:#f5f6f7;border-top:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb}
.home-reviews-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:22px}
.home-reviews-head .section-title{margin-bottom:0;font-size:clamp(30px,4vw,52px)}
.home-reviews-head .lead{max-width:720px;margin-top:10px}
.home-review-stage{display:grid;grid-template-columns:repeat(var(--review-columns,3),minmax(0,1fr));gap:14px;transition:opacity .18s ease,transform .18s ease}
.home-review-stage.is-changing{opacity:0;transform:translateY(4px)}
.home-review-card{min-height:178px;display:flex;flex-direction:column;padding:20px;background:#fff;border:1px solid #e1e4e8;border-top:3px solid #d6d8dc;box-shadow:0 8px 24px rgba(16,24,40,.035)}
.home-review-top{display:flex;justify-content:space-between;gap:14px;align-items:center;min-height:34px}
.home-review-top img{display:block;max-width:82px;max-height:30px;object-fit:contain;object-position:left center}
.home-review-stars{font-size:13px;letter-spacing:2px;color:var(--site-accent,var(--red,#D21000));white-space:nowrap}
.home-review-stars i{font-style:normal;color:#d7d9dd}
.home-review-card blockquote{margin:18px 0 20px;font-size:16px;line-height:1.48;color:#282d34}
.home-review-card footer{margin-top:auto;display:flex;gap:8px;align-items:baseline;font-size:13px}
.home-review-card footer strong{color:#111}.home-review-card footer span{color:#707782}
.home-review-dots{display:flex;justify-content:center;gap:7px;margin-top:18px}
.home-review-dots button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:#c7cbd1;cursor:pointer}
.home-review-dots button.active{background:var(--site-accent,var(--red,#D21000))}
@media(max-width:720px){.home-reviews{padding:40px 0}.home-review-stage{grid-template-columns:1fr}.home-review-card{min-height:168px}.home-reviews-head{margin-bottom:16px}}


/* =====================================================
   v5.1 — uniforme publieke header + mobiel menu
   ===================================================== */
.site-header,
body.home-page .site-header{
  position:sticky !important;
  top:0 !important;
  z-index:1200 !important;
  background:#fff !important;
  border-bottom:3px solid var(--site-accent,var(--red,#D21000)) !important;
  box-shadow:0 5px 18px rgba(0,0,0,.045) !important;
}
.site-header .nav-wrap,
body.home-page .site-header .nav-wrap{
  min-height:78px !important;
  height:78px !important;
  display:flex !important;
  align-items:center !important;
  gap:24px !important;
}
.site-header .brand img,
body.home-page .site-header .brand img{
  height:48px !important;
  width:auto !important;
}
.site-header .main-nav,
body.home-page .site-header .main-nav{
  margin-left:auto !important;
}
.site-header .main-nav a,
.site-header .lang,
.site-header .btn,
body.home-page .site-header .main-nav a,
body.home-page .site-header .lang,
body.home-page .site-header .btn{
  font-size:12px !important;
  letter-spacing:.11em !important;
}
@media(max-width:900px){
  .site-header .nav-wrap,
  body.home-page .site-header .nav-wrap{
    min-height:74px !important;
    height:74px !important;
    gap:12px !important;
  }
  .site-header .brand img,
  body.home-page .site-header .brand img{height:46px !important}
  .site-header .main-nav,
  body.home-page .site-header .main-nav{
    position:fixed !important;
    top:74px !important;
    left:0 !important;
    right:0 !important;
    bottom:auto !important;
    display:none !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
    padding:12px 20px 18px !important;
    background:#fff !important;
    color:#111 !important;
    border-top:1px solid #e5e7eb !important;
    border-bottom:3px solid var(--site-accent,var(--red,#D21000)) !important;
    box-shadow:0 18px 34px rgba(0,0,0,.12) !important;
    max-height:calc(100vh - 74px) !important;
    overflow:auto !important;
  }
  .site-header .main-nav.open,
  body.home-page .site-header .main-nav.open{display:flex !important}
  .site-header .main-nav a,
  body.home-page .site-header .main-nav a{
    display:block !important;
    padding:14px 4px !important;
    color:#111 !important;
    font-size:14px !important;
    border-bottom:1px solid #eceef1 !important;
    opacity:1 !important;
  }
  .site-header .main-nav a:after,
  body.home-page .site-header .main-nav a:after{display:none !important}
  .site-header .hamburger,
  body.home-page .site-header .hamburger{display:block !important}
  .site-header .hamburger span,
  body.home-page .site-header .hamburger span{background:#111 !important}
}
@media(max-width:560px){
  .site-header .nav-wrap,
  body.home-page .site-header .nav-wrap{
    min-height:74px !important;
    height:74px !important;
    gap:9px !important;
  }
  .site-header .brand img,
  body.home-page .site-header .brand img{height:45px !important}
  .site-header .company-cta,
  body.home-page .site-header .company-cta{
    min-height:40px !important;
    padding:0 12px !important;
    font-size:10px !important;
  }
  .site-header .lang-switch,
  body.home-page .site-header .lang-switch{gap:5px !important}
  .site-header .lang,
  body.home-page .site-header .lang{font-size:10px !important}
}

/* v5.1 — sfeer/icons tile kan optioneel video gebruiken */
.culture-icons-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.culture-icons-video[hidden]{display:none !important}
.culture-icons-has-video > img{display:none}
.culture-icons-has-video .culture-icons-video{display:block !important}

/* v5.1 — reviewsectie zakelijk, licht zwevend */
.home-reviews{overflow:hidden}
.home-reviews-head .section-title span{color:var(--site-accent,var(--red,#D21000))}
.home-review-viewport{overflow:hidden;padding:10px 10px 18px;margin:-10px}
.home-review-stage{
  display:flex !important;
  gap:16px !important;
  will-change:transform;
  transition:transform .58s cubic-bezier(.22,.78,.25,1) !important;
}
.home-review-card{
  flex:0 0 calc((100% - 32px)/3);
  min-width:0;
  min-height:188px;
  border:1px solid #dfe3e8 !important;
  border-top:3px solid #d5d9df !important;
  box-shadow:0 13px 30px rgba(16,24,40,.07) !important;
  transform:translateY(0);
  transition:box-shadow .25s ease,transform .25s ease;
}
.home-review-card:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(16,24,40,.1) !important}
.home-review-top{align-items:flex-start}
.home-review-stars{display:inline-flex;gap:2px;letter-spacing:0 !important}
.review-star{position:relative;display:inline-block;color:#d5d9df;line-height:1}
.review-star.full{color:var(--site-accent,var(--red,#D21000))}
.review-star.half{color:#d5d9df}
.review-star.half:before{content:'★';position:absolute;left:0;top:0;width:50%;overflow:hidden;color:var(--site-accent,var(--red,#D21000))}
.home-review-controls{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:16px}
.home-review-arrow{width:34px;height:34px;border:1px solid #ccd1d8;background:#fff;color:#111;display:inline-flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer}
.home-review-arrow:hover{border-color:var(--site-accent,var(--red,#D21000));color:var(--site-accent,var(--red,#D21000))}
.home-review-dots{margin:0 !important}
.home-review-average{margin:20px auto 0;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;color:#31363e;font-size:14px;text-align:center}
.home-review-average strong{font-size:15px;color:#111}
.home-review-average .home-review-stars{font-size:16px}
.home-review-average small{color:#737b87}
@media(max-width:900px){.home-review-card{flex-basis:calc((100% - 16px)/2)}}
@media(max-width:720px){
  .home-review-card{flex-basis:100%;min-height:190px}
  .home-review-viewport{padding:7px 7px 15px;margin:-7px}
  .home-review-average{font-size:13px;gap:8px}
}


/* =====================================================
   v5.1 quickfix 1 — iPhone 15 / Chrome mobile readability
   ===================================================== */

/* Betrouwbare ankerlanding onder vaste header */
#platform,
#kalender,
#nieuws,
#team,
#contact,
#bedrijven,
#cultuur{
  scroll-margin-top:calc(var(--header-height-public, 78px) + 16px);
}

/* Reviews — mobiel rustiger, geen afgekapt statement */
@media(max-width:720px){
  .home-reviews{
    padding-left:0 !important;
    padding-right:0 !important;
  }
  .home-reviews .container{
    width:100% !important;
    padding-left:16px !important;
    padding-right:16px !important;
  }
  .home-review-viewport{
    margin:0 !important;
    padding:6px 0 14px !important;
    overflow:hidden !important;
  }
  .home-review-stage{
    gap:12px !important;
  }
  .home-review-card{
    flex:0 0 100% !important;
    min-width:100% !important;
    min-height:0 !important;
    padding:22px 20px !important;
  }
  .home-review-controls{
    margin-top:14px !important;
    gap:12px !important;
  }
  .home-review-arrow{
    width:38px !important;
    height:38px !important;
  }
  .home-review-average{
    width:100% !important;
    max-width:520px !important;
    margin:22px auto 0 !important;
    padding:0 18px 6px !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    justify-items:center !important;
    gap:8px !important;
    line-height:1.35 !important;
    overflow:visible !important;
  }
  .home-review-average strong{
    display:block !important;
    max-width:330px !important;
    font-size:16px !important;
    line-height:1.35 !important;
    text-align:center !important;
  }
  .home-review-average .home-review-stars{
    font-size:17px !important;
  }
  .home-review-average small{
    display:block !important;
    max-width:320px !important;
    font-size:13px !important;
    line-height:1.35 !important;
    white-space:normal !important;
    text-align:center !important;
  }
}

/* Voor bedrijven — mobiele hero leesbaar en binnen schermbreedte */
@media(max-width:760px){
  .bedrijven-subhero{
    padding:54px 0 44px !important;
    overflow:hidden !important;
  }
  .bedrijven-subhero .container{
    width:calc(100% - 32px) !important;
  }
  .bedrijven-subhero h1{
    max-width:100% !important;
    font-size:clamp(44px,13.5vw,64px) !important;
    line-height:.9 !important;
    letter-spacing:-.055em !important;
    overflow-wrap:anywhere !important;
    word-break:normal !important;
    hyphens:auto !important;
    margin-bottom:22px !important;
  }
  .bedrijven-subhero > .container > p:not(.eyebrow){
    max-width:100% !important;
    font-size:18px !important;
    line-height:1.55 !important;
    color:#4f555d !important;
  }
  .bedrijven-subhero .hero-ctas{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    margin-top:24px !important;
  }
  .bedrijven-subhero .hero-ctas .btn{
    width:100% !important;
    min-height:54px !important;
    padding:0 18px !important;
    justify-content:center !important;
    text-align:center !important;
  }
}

/* Nieuws — mobiele overzichtskaarten weer echte kaarten, geen tekst over foto */
@media(max-width:760px){
  .news-overview-section{
    padding-top:34px !important;
  }
  .dynamic-news-list{
    gap:18px !important;
  }
  .dynamic-news-list .news-row,
  .news-list .news-row{
    display:flex !important;
    flex-direction:column !important;
    grid-template-columns:none !important;
    gap:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    background:#fff !important;
    border:1px solid var(--line) !important;
    border-left:5px solid var(--site-accent,var(--red,#D21000)) !important;
    box-shadow:0 12px 28px rgba(16,24,40,.07) !important;
  }
  .dynamic-news-list .news-row > img,
  .news-list .news-row > img{
    position:relative !important;
    inset:auto !important;
    display:block !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:16/10 !important;
    object-fit:cover !important;
    opacity:1 !important;
    filter:none !important;
  }
  .dynamic-news-list .news-row > div,
  .news-list .news-row > div{
    position:relative !important;
    inset:auto !important;
    z-index:1 !important;
    display:block !important;
    background:#fff !important;
    color:#111 !important;
    padding:22px 20px 20px !important;
  }
  .dynamic-news-list .news-row .meta,
  .news-list .news-row .meta{
    color:#6a717b !important;
    font-size:11px !important;
    line-height:1.4 !important;
    margin-bottom:10px !important;
  }
  .dynamic-news-list .news-row h2,
  .news-list .news-row h2{
    color:#111 !important;
    font-size:clamp(28px,9vw,42px) !important;
    line-height:.96 !important;
    letter-spacing:-.04em !important;
    margin:0 0 12px !important;
    overflow-wrap:anywhere !important;
  }
  .dynamic-news-list .news-row p,
  .news-list .news-row p{
    color:#4f5660 !important;
    font-size:16px !important;
    line-height:1.5 !important;
    margin:0 0 16px !important;
  }
  .dynamic-news-list .news-tags,
  .news-list .news-tags{
    margin:10px 0 16px !important;
  }
  .dynamic-news-list .news-card-actions,
  .news-list .news-card-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:9px !important;
  }
  .dynamic-news-list .news-card-actions .btn,
  .news-list .news-card-actions .btn{
    width:100% !important;
    justify-content:center !important;
  }
}

/* Team — korte hero, uitleg als los inhoudsblok */
.team-page-intro-detail{
  margin:0 0 30px;
  padding:24px 28px;
  background:#fff;
  border:1px solid var(--line);
  border-left:5px solid var(--site-accent,var(--red,#D21000));
  box-shadow:0 12px 28px rgba(16,24,40,.05);
}
.team-page-intro-detail p{
  max-width:900px;
  margin:0;
  color:#4f5660;
  font-size:18px;
  line-height:1.6;
}
@media(max-width:760px){
  .team-subhero{
    padding:52px 0 38px !important;
  }
  .team-subhero .container{
    width:calc(100% - 32px) !important;
  }
  .team-subhero .eyebrow{
    margin-bottom:14px !important;
  }
  .team-subhero h1{
    max-width:100% !important;
    font-size:clamp(42px,12.5vw,62px) !important;
    line-height:.9 !important;
    letter-spacing:-.055em !important;
    margin:0 0 18px !important;
    overflow-wrap:anywhere !important;
  }
  .team-subhero p:not(.eyebrow){
    max-width:100% !important;
    margin:0 !important;
    color:#525962 !important;
    font-size:18px !important;
    line-height:1.5 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
    font-weight:500 !important;
  }
  .team-cms-section{
    padding-top:30px !important;
  }
  .team-page-intro-detail{
    margin-bottom:24px !important;
    padding:20px !important;
  }
  .team-page-intro-detail p{
    font-size:16px !important;
    line-height:1.55 !important;
  }
}


/* =====================================================
   v5.1 quickfix 2 — kalenderkop en 2027-placeholder
   ===================================================== */
.calendar-page-hero h1 span{
  color:var(--site-accent,var(--red,#D21000));
}
.stock-date-tile strong{
  font-size:34px !important;
  letter-spacing:-.05em;
}

/* =====================================================
   v6.0 — event cards: media, USP's, partners en accent
   Alleen homepage-eventkaarten
   ===================================================== */
body.home-page .calendar .event-card{
  --event-accent:#D5D9DF;
  display:flex;
  flex-direction:column;
  border-left-color:var(--event-accent) !important;
}
body.home-page .calendar .event-card .date-badge{
  border-left-color:var(--event-accent) !important;
}
body.home-page .calendar .event-card .date-badge:before{
  background:var(--event-accent) !important;
}
body.home-page .calendar .event-card .card-body{
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
}
body.home-page .calendar .event-loop{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
body.home-page .calendar .event-photo.is-logo-fallback{
  object-fit:contain;
  padding:46px;
  background:#fff;
}
body.home-page .calendar .event-date-line{
  margin:-3px 0 14px;
  color:#707782;
  font-size:12px;
  line-height:1.35;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}
body.home-page .calendar .event-intro{
  min-height:0 !important;
  margin-bottom:15px !important;
}
body.home-page .calendar .event-usps{
  display:grid;
  gap:7px;
  margin:0 0 16px;
  padding:0;
  list-style:none;
}
body.home-page .calendar .event-usps li{
  position:relative;
  padding-left:17px;
  color:#292f37;
  font-size:13px;
  line-height:1.35;
  font-weight:800;
}
body.home-page .calendar .event-usps li:before{
  content:"";
  position:absolute;
  left:0;
  top:.52em;
  width:7px;
  height:3px;
  background:var(--event-accent);
}
body.home-page .calendar .event-closing{
  min-height:0 !important;
  margin:0 0 18px !important;
  padding-top:13px;
  border-top:1px solid #e5e8ec;
  color:#111 !important;
  font-size:14px;
  line-height:1.45;
  font-weight:900;
}
body.home-page .calendar .event-partners{
  margin:0 0 18px;
}
body.home-page .calendar .event-partners-label{
  display:block;
  margin-bottom:9px;
  color:#6f7680;
  font-size:10px;
  font-weight:1000;
  letter-spacing:.13em;
  text-transform:uppercase;
}
body.home-page .calendar .event-partner-row{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:7px;
  align-items:start;
}
body.home-page .calendar .event-partner-row > a,
body.home-page .calendar .event-partner-row > span{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  color:#111;
  text-decoration:none;
  text-align:center;
}
body.home-page .calendar .event-partner-row img{
  width:100%;
  height:34px;
  display:block;
  object-fit:contain;
}
body.home-page .calendar .event-partner-row small{
  width:100%;
  margin-top:4px;
  overflow:hidden;
  color:#747b85;
  font-size:8px;
  line-height:1.15;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.home-page .calendar .event-partner-row strong{
  font-size:10px;
  line-height:1.2;
}
body.home-page .calendar .event-card .card-actions{
  margin-top:auto;
}
@media(max-width:1100px){
  body.home-page .calendar .event-partner-row{grid-template-columns:repeat(5,minmax(44px,1fr));}
}
@media(max-width:720px){
  body.home-page .calendar .event-partner-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
  body.home-page .calendar .event-partner-row img{height:38px;}
  body.home-page .calendar .event-photo.is-logo-fallback{padding:36px;}
}


/* =====================================================
   v6.0 quickfix 1 — KPI kleuren + verticale tellerlijn
   ===================================================== */
.success-counter{
  position:relative;
  overflow:hidden;
  padding-bottom:28px;
}
.success-counter i,
.success-item i,
body.home-page .success-counter i,
body.home-page .success-item i{
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  bottom:auto !important;
  width:6px !important;
  height:0;
  background:var(--metric-color,var(--site-accent,var(--red,#D21000))) !important;
  transition:none !important;
  z-index:2;
}
.success-counter strong,
.success-item strong{
  color:var(--metric-color,var(--site-accent,var(--red,#D21000))) !important;
}


/* =====================================================
   v6.0 quickfix 2 — KPI animatiestabiliteit
   ===================================================== */

/* Houdt de hoogte vast tijdens het laden, maar verbergt oude rode fallbackdata. */
[data-home-success-items].is-loading{
  visibility:hidden;
}
[data-home-success-items].is-ready{
  visibility:visible;
}

/* Voorkom browser-scrollankering tijdens het vervangen en animeren. */
[data-home-success],
[data-home-success-items]{
  overflow-anchor:none;
}

/* De gekozen KPI-kleur vervangt de bestaande grijze/algemene linker rand. */
body.home-page [data-home-success-items] .success-item,
body.home-page [data-home-success-items] .success-counter{
  position:relative !important;
  border-left:7px solid transparent !important;
}

/* Eén verticale lijn, in de gekozen kleur, van boven naar beneden. */
body.home-page [data-home-success-items] .success-item i,
body.home-page [data-home-success-items] .success-counter i{
  position:absolute !important;
  left:-7px !important;
  top:-1px !important;
  bottom:auto !important;
  width:7px !important;
  height:calc(100% + 2px) !important;
  background:var(--metric-color,var(--site-accent,var(--red,#D21000))) !important;
  transform:scaleY(0);
  transform-origin:top center;
  opacity:0;
  transition:none !important;
  will-change:transform;
  pointer-events:none;
}

/* Het getal gebruikt direct dezelfde gekozen kleur; geen rode tussenstatus. */
body.home-page [data-home-success-items] .success-item strong,
body.home-page [data-home-success-items] .success-counter strong{
  color:var(--metric-color,var(--site-accent,var(--red,#D21000))) !important;
}
\n\n/* =====================================================
   v6.0 quickfix 3 — KPI kleur alleen op de accentlijn
   ===================================================== */
body.home-page [data-home-success-items] .success-item strong,
body.home-page [data-home-success-items] .success-counter strong{
  color:var(--site-accent,var(--red,#D21000)) !important;
}


/* =====================================================
   v6.0 quickfix 4 — exacte KPI-accentlijn
   ===================================================== */

/* Verwijder de oude grijze linker border zonder ruimte of verschuiving achter te laten. */
body.home-page [data-home-success-items] .success-item,
body.home-page [data-home-success-items] .success-counter{
  position:relative !important;
  overflow:hidden !important;
  border-left:0 !important;
}

/* De ingestelde kleur staat exact op de oorspronkelijke plek van de grijze lijn. */
body.home-page [data-home-success-items] .success-item > i,
body.home-page [data-home-success-items] .success-counter > i{
  display:block !important;
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  bottom:auto !important;
  width:7px !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  background:var(--metric-color,var(--site-accent,var(--red,#D21000))) !important;
  transform:scaleY(0);
  transform-origin:top left !important;
  opacity:1 !important;
  z-index:5 !important;
  pointer-events:none !important;
}

/* KPI-waarde en label blijven in de gewone huisstijl. */
body.home-page [data-home-success-items] .success-item strong,
body.home-page [data-home-success-items] .success-counter strong{
  color:var(--site-accent,var(--red,#D21000)) !important;
}
body.home-page [data-home-success-items] .success-item span,
body.home-page [data-home-success-items] .success-counter span{
  color:#111 !important;
}


/* =====================================================
   v6.0 quickfix 5 — gelijke eventbuttons
   ===================================================== */
body.home-page .calendar .event-card .event-card-actions{
  display:grid !important;
  width:100%;
  gap:9px !important;
  align-items:stretch !important;
  margin-top:auto !important;
}
body.home-page .calendar .event-card .event-card-actions.has-1{
  grid-template-columns:minmax(0,1fr);
}
body.home-page .calendar .event-card .event-card-actions.has-2{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
body.home-page .calendar .event-card .event-card-actions.has-3{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
body.home-page .calendar .event-card .event-card-actions .btn{
  width:100% !important;
  min-width:0 !important;
  min-height:52px !important;
  padding:0 10px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  line-height:1.15 !important;
}
@media(max-width:720px){
  body.home-page .calendar .event-card .event-card-actions{
    gap:7px !important;
  }
  body.home-page .calendar .event-card .event-card-actions .btn{
    min-height:48px !important;
    padding:0 7px !important;
    font-size:10px !important;
    letter-spacing:.06em !important;
  }
}


/* =====================================================
   v6.1 — eerste vouw en platform KPI-paneel
   ===================================================== */
.hero-v43 .hero-overlay{
  opacity:var(--hero-overlay-opacity,.55) !important;
}
.hero-v43 .hero-video{
  opacity:.92 !important;
}
.hero-v43 .hero-bg{
  opacity:.92 !important;
}
.hero-v43 .hero-grid{
  grid-template-columns:minmax(0,1fr) !important;
}
.hero-v43 .hero-copybox{
  max-width:980px;
}
.platform .two-col{
  align-items:center;
}
.platform-kpi-panel{
  display:flex;
  justify-content:flex-end;
}
.platform-kpi-panel .hero-panel{
  width:100%;
  max-width:520px;
  padding:28px;
  background:#09090a;
  color:#fff;
  border:1px solid #17181b;
  box-shadow:0 24px 60px rgba(0,0,0,.16);
}
.platform-kpi-panel .hero-panel-head h2,
.platform-kpi-panel .hero-panel-head p,
.platform-kpi-panel .metric-v43 strong,
.platform-kpi-panel .metric-v43 span{
  color:#fff;
}
.platform-kpi-panel .hero-panel-head p{
  color:rgba(255,255,255,.82);
}
.platform-kpi-panel .metric-v43{
  border-color:rgba(255,255,255,.16);
}
@media(max-width:900px){
  .platform-kpi-panel{justify-content:stretch;}
  .platform-kpi-panel .hero-panel{max-width:none;}
}
@media(max-width:760px){
  .hero-v43 .hero-overlay{opacity:var(--hero-overlay-opacity,.55) !important;}
  .platform-kpi-panel .hero-panel{padding:22px;}
}


/* =====================================================
   v6.1 — Homepage event-first restructure
   ===================================================== */
.event-first-hero{position:relative;min-height:clamp(560px,76vh,820px);overflow:hidden;background:#090a0c;color:#fff}
.event-hero-stage,.event-hero-slide,.event-hero-media,.event-hero-overlay{position:absolute;inset:0}
.event-hero-slide{opacity:0;visibility:hidden;transition:opacity .65s ease;z-index:1}.event-hero-slide.is-active{opacity:1;visibility:visible;z-index:2}
.event-hero-media img,.event-hero-media video{width:100%;height:100%;object-fit:cover}.event-hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,var(--slide-overlay,.45)) 0%,rgba(0,0,0,.24) 58%,rgba(0,0,0,.12) 100%)}
.event-hero-content{position:relative;z-index:3;height:100%;min-height:clamp(560px,76vh,820px);display:flex;align-items:flex-end;padding-bottom:74px}.event-hero-copy{max-width:760px}.event-hero-copy h1{font-size:clamp(56px,8vw,116px);line-height:.84;letter-spacing:-.065em;text-transform:uppercase;margin:0 0 20px}.event-hero-copy>p:not(.eyebrow){font-size:clamp(18px,2vw,25px);max-width:680px;line-height:1.42}.event-hero-meta{position:absolute;right:0;top:60px;display:grid;justify-items:end;gap:7px;text-transform:uppercase;font-weight:900;letter-spacing:.08em}.event-hero-meta img{max-width:190px;max-height:72px;object-fit:contain;filter:drop-shadow(0 4px 12px rgba(0,0,0,.4))}.event-hero-controls{position:absolute;z-index:6;right:max(24px,calc((100vw - var(--max))/2));bottom:26px;display:flex;gap:10px;align-items:center}.event-hero-controls>button{width:42px;height:42px;border:1px solid rgba(255,255,255,.5);background:rgba(0,0,0,.35);color:#fff;font-size:26px}.event-hero-controls [data-hero-dots]{display:flex;gap:7px}.event-hero-controls [data-hero-dots] button{width:28px;height:3px;border:0;background:rgba(255,255,255,.4);padding:0}.event-hero-controls [data-hero-dots] button.active{background:var(--site-accent)}
.event-first-calendar{background:#fff}.event-first-head{max-width:900px;margin-bottom:34px}.event-first-head .btn{margin-top:18px}.event-grid-four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.event-highlight-card{display:flex;flex-direction:column;min-width:0;border-left:6px solid var(--event-accent)}.event-highlight-card .event-img{aspect-ratio:4/3;height:auto}.countdown-badge{position:absolute;left:14px;top:14px;background:#111;color:#fff;padding:10px 13px;font-size:13px;font-weight:1000;letter-spacing:.07em;text-transform:uppercase}.event-highlight-card .card-body{display:flex;flex-direction:column;flex:1;padding:20px}.event-highlight-card h3{font-size:clamp(25px,2.2vw,34px)}.event-highlight-card .event-intro{font-size:15px;line-height:1.5}.event-place a{color:inherit;text-decoration:none;border-bottom:1px solid currentColor}.event-highlight-card .event-usps{margin:12px 0 16px}.event-highlight-card .event-usps li{font-size:13px}.event-highlight-card .event-partner-row img{max-height:28px}.event-highlight-card .event-card-actions{margin-top:auto}.markets-compact-head{margin:58px 0 20px;max-width:760px}.markets-compact-head p:last-child{color:#555;line-height:1.6}.market-strip-seven{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.market-strip-seven .market-card{min-height:108px;padding:15px}.market-strip-seven .market-card small{font-size:10px}.event-first-calendar .international-block{margin-top:34px}.event-first-calendar .international-market-grid{display:none}
.platform-premium{padding:82px 0;background:linear-gradient(135deg,#fff 0 61%,#f0f2f5 61%)}.platform-premium .two-col{grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);align-items:center;gap:0}.platform-premium .two-col>div:first-child{position:relative;z-index:2;padding:50px 64px 50px 0}.platform-premium .platform-kpi-panel{position:relative;z-index:3;transform:translateX(-18px)}.platform-premium .hero-panel{box-shadow:0 34px 80px rgba(0,0,0,.22);border-left:7px solid var(--site-accent)}
#kalender,#platform,#cultuur,#reviews,#nieuws,#succes,#bedrijven,#team,#contact{scroll-margin-top:calc(var(--header-height-public,82px) + 14px)}
@media(max-width:1200px){.event-grid-four{grid-template-columns:repeat(2,1fr)}.market-strip-seven{grid-template-columns:repeat(4,1fr)}.platform-premium .two-col{grid-template-columns:1fr}.platform-premium .platform-kpi-panel{transform:none}.platform-premium .two-col>div:first-child{padding-right:0}}
@media(max-width:720px){.event-first-hero,.event-hero-content{min-height:620px}.event-hero-content{padding-bottom:90px}.event-hero-copy h1{font-size:clamp(48px,15vw,72px)}.event-hero-meta{top:28px;right:0;align-items:end}.event-hero-meta img{max-width:130px}.event-grid-four{grid-template-columns:1fr}.market-strip-seven{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.market-strip-seven .market-card{min-width:150px;scroll-snap-align:start}.platform-premium{background:#fff;padding:54px 0}.platform-premium .two-col>div:first-child{padding:0 0 28px}.event-hero-controls{right:18px}}
@media(prefers-reduced-motion:reduce){.event-hero-slide{transition:none}.event-hero-slide video{display:none}.event-hero-slide .event-hero-media{background:#111}}


/* =====================================================
   v6.1 quickfix 1 — hero, compacte events en KPI-herstel
   ===================================================== */
.event-first-hero{
  min-height:calc(100svh - var(--header-height-public,82px)) !important;
  height:calc(100svh - var(--header-height-public,82px));
}
.event-hero-stage,.event-hero-slide,.event-hero-media,.event-hero-overlay{height:100%}
.event-hero-overlay{
  background:linear-gradient(90deg,rgba(0,0,0,calc(var(--slide-overlay,.42) + .10)) 0%,rgba(0,0,0,.20) 56%,rgba(0,0,0,.06) 100%) !important;
}
.event-hero-fixed-content{
  position:relative;z-index:5;height:100%;min-height:inherit;display:flex;align-items:flex-end;padding-bottom:70px;pointer-events:none;
}
.event-hero-fixed-panel{
  width:min(760px,72vw);padding:28px 32px 30px;background:linear-gradient(90deg,rgba(5,6,8,.82),rgba(5,6,8,.58));
  border-left:6px solid var(--site-accent,var(--red,#D21000));box-shadow:0 20px 60px rgba(0,0,0,.18);pointer-events:auto;
}
.event-hero-fixed-panel h1{margin:0 0 16px;color:#fff;font-size:clamp(52px,6.5vw,96px);line-height:.88;letter-spacing:-.055em;text-transform:uppercase}
.event-hero-fixed-panel h1 span{color:var(--site-accent,var(--red,#D21000))}
.event-hero-fixed-panel>p:not(.eyebrow){max-width:680px;margin:0 0 22px;color:rgba(255,255,255,.92);font-size:clamp(17px,1.55vw,22px);line-height:1.45}
.event-hero-event-meta{position:absolute;z-index:4;right:0;top:50px;display:grid;justify-items:end;gap:7px;color:#fff;text-transform:uppercase;font-weight:900;letter-spacing:.08em}
.event-hero-event-meta img{max-width:175px;max-height:66px;object-fit:contain;filter:drop-shadow(0 4px 12px rgba(0,0,0,.42))}
.event-hero-controls{right:max(18px,calc((100vw - var(--max))/2));bottom:18px;gap:7px;opacity:.36;transition:opacity .2s ease}
.event-hero-controls:hover,.event-hero-controls:focus-within{opacity:.85}
.event-hero-controls>button{width:30px;height:30px;border-color:rgba(255,255,255,.28);background:rgba(0,0,0,.18);font-size:18px}
.event-hero-controls [data-hero-dots] button{width:16px;height:2px;background:rgba(255,255,255,.28)}

.event-first-calendar{padding-top:58px !important;padding-bottom:64px !important}
.event-first-head{max-width:none;margin-bottom:24px}
.event-first-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:28px}
.event-first-title-row .section-title{margin-bottom:0}
.event-calendar-cta{flex:0 0 auto;margin:0 0 7px !important;min-height:48px;padding:0 20px}
.event-first-head .calendar-lead{max-width:900px;margin-top:14px;font-size:18px;line-height:1.5}
.event-grid-four{gap:14px}
.event-highlight-card .event-img{aspect-ratio:16/11}
.event-highlight-card .card-body{padding:17px 16px 16px}
.event-highlight-card h3{font-size:clamp(22px,1.8vw,29px);margin-bottom:8px}
.event-highlight-card .event-intro{font-size:14px;line-height:1.45}
.event-highlight-card .event-usps{margin:9px 0 12px}
.event-highlight-card .event-closing{font-size:13px;margin:8px 0 12px}
.event-highlight-card .event-card-actions{display:grid !important;grid-template-columns:repeat(var(--button-count,1),minmax(0,1fr));gap:8px}
.event-highlight-card .event-card-actions.has-1{--button-count:1}.event-highlight-card .event-card-actions.has-2{--button-count:2}.event-highlight-card .event-card-actions.has-3{--button-count:3}
.event-highlight-card .event-card-actions .btn{min-width:0;width:100%;min-height:48px;padding:0 7px;font-size:10px;letter-spacing:.06em;white-space:nowrap;overflow:hidden}

/* De dynamische succes-KPI's mogen nooit verborgen blijven wanneer de legacy hero ontbreekt. */
[data-home-success-items].is-loading{min-height:170px}

@media(max-width:760px){
  .event-first-hero{height:calc(100svh - var(--header-height-public,74px));min-height:620px !important}
  .event-hero-fixed-content{padding-bottom:72px;align-items:flex-end}
  .event-hero-fixed-panel{width:calc(100% - 32px);padding:22px 20px 24px}
  .event-hero-fixed-panel h1{font-size:clamp(43px,13vw,66px)}
  .event-hero-event-meta{top:24px;right:16px}.event-hero-event-meta img{max-width:120px;max-height:48px}.event-hero-event-meta span{max-width:260px;text-align:right;font-size:10px}
  .event-first-title-row{display:block}.event-calendar-cta{margin-top:16px !important;width:100%;justify-content:center}
  .event-first-calendar{padding-top:46px !important}.event-first-head .calendar-lead{font-size:17px}
  .event-highlight-card .event-card-actions.has-3{grid-template-columns:repeat(2,minmax(0,1fr))}.event-highlight-card .event-card-actions.has-3 .btn:last-child{grid-column:1/-1}
}


/* =====================================================
   v6.1 quickfix 2 — zelfstandige hero-slots / premium hero
   ===================================================== */
.event-hero-fixed-content{align-items:flex-end!important;padding-bottom:clamp(48px,7vh,78px)!important}
.event-hero-fixed-panel{width:min(660px,calc(100% - 40px))!important;padding:24px 30px 28px!important;background:linear-gradient(90deg,rgba(5,6,8,.86),rgba(5,6,8,.64) 72%,rgba(5,6,8,.18))!important;border-left:5px solid var(--site-accent)!important;box-shadow:0 20px 58px rgba(0,0,0,.2)!important}
.event-hero-fixed-panel h1{font-size:clamp(52px,6.1vw,92px)!important;line-height:.84!important;margin-bottom:14px!important}
.event-hero-fixed-panel .hero-line{display:block}
.event-hero-fixed-panel .hero-line-white{color:#fff!important}
.event-hero-fixed-panel .hero-line-accent{color:var(--site-accent,var(--red,#D21000))!important}
.event-hero-fixed-panel>p:not(.eyebrow){font-size:clamp(16px,1.35vw,20px)!important;max-width:600px!important}
.event-hero-event-meta{right:max(42px,calc((100vw - var(--max))/2 + 28px))!important;top:58px!important;max-width:390px!important}
.event-hero-event-meta img{max-width:180px!important;max-height:70px!important;margin-bottom:6px}
.event-hero-event-meta strong,.event-hero-event-meta span{text-shadow:0 2px 12px rgba(0,0,0,.7)}
.event-hero-controls{opacity:.18!important;right:max(28px,calc((100vw - var(--max))/2 + 20px))!important;bottom:22px!important}
.event-hero-controls:hover,.event-hero-controls:focus-within{opacity:.68!important}
.event-hero-controls>button{width:25px!important;height:25px!important;font-size:15px!important;background:rgba(0,0,0,.14)!important}
.event-hero-controls [data-hero-dots] button{width:12px!important}
.event-hero-mobile-media{display:none!important}
.event-hero-desktop-media{position:absolute;inset:0}
.event-hero-desktop-media img,.event-hero-desktop-media video,.event-hero-mobile-media img,.event-hero-mobile-media video{width:100%;height:100%;object-fit:cover}
@media(max-width:720px){
  .event-hero-desktop-media{display:none!important}.event-hero-mobile-media{display:block!important;position:absolute;inset:0}
  .event-hero-fixed-content{padding-bottom:64px!important}
  .event-hero-fixed-panel{width:calc(100% - 32px)!important;padding:20px 20px 23px!important}
  .event-hero-fixed-panel h1{font-size:clamp(46px,14vw,68px)!important}
  .event-hero-event-meta{right:22px!important;top:24px!important;max-width:230px!important}
  .event-hero-event-meta img{max-width:115px!important;max-height:48px!important}
  .event-hero-event-meta strong{font-size:11px}.event-hero-event-meta span{font-size:9px;max-width:210px;text-align:right}
  .event-hero-controls{right:14px!important;bottom:12px!important}
}


/* v6.1 quickfix 3 — hoofdhero + eventfotocarrousel + admin cleanup */
.main-402-hero{position:relative;min-height:calc(100vh - var(--header-height-public,86px));overflow:hidden;background:#090a0b;color:#fff;display:flex;align-items:flex-end}
.main-hero-media,.main-hero-media img,.main-hero-media video,.main-hero-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.main-hero-fallback{background-size:cover;background-position:center}.main-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,var(--main-overlay,.55)) 0%,rgba(0,0,0,.25) 62%,rgba(0,0,0,.12) 100%)}
.main-hero-content{position:relative;z-index:2;padding-bottom:clamp(54px,8vh,92px)}.main-hero-copy{max-width:720px;padding:32px 36px 34px;background:linear-gradient(90deg,rgba(5,6,7,.82),rgba(5,6,7,.55) 72%,transparent);border-left:5px solid var(--site-accent,#D21000)}.main-hero-copy h1{font-size:clamp(56px,6.7vw,104px);line-height:.87;margin:10px 0 22px;text-transform:uppercase;letter-spacing:-.065em}.main-hero-copy h1 span,.main-hero-copy h1 strong{display:block}.main-hero-copy h1 strong{color:var(--site-accent,#D21000)}.main-hero-copy>p{max-width:650px;font-size:clamp(18px,1.6vw,24px);line-height:1.45;color:#fff}
.event-photo-carousel{position:relative;height:min(70vh,720px);min-height:480px;background:#0b0d0f;overflow:hidden}.event-photo-stage,.event-photo-slide,.event-photo-slide picture,.event-photo-slide img{position:absolute;inset:0;width:100%;height:100%}.event-photo-slide{opacity:0;visibility:hidden;overflow:hidden;transition:opacity .8s ease;color:#fff}.event-photo-slide.is-active{opacity:1;visibility:visible;z-index:2}.event-photo-slide img{object-fit:cover;transform:scale(1.06)}.event-photo-slide.is-active.motion-zoom-in img{animation:heroZoomIn 9s linear both}.event-photo-slide.is-active.motion-zoom-out img{animation:heroZoomOut 9s linear both}.event-photo-slide.is-active.motion-pan-right img{animation:heroPanRight 9s linear both}.event-photo-slide.is-active.motion-pan-left img{animation:heroPanLeft 9s linear both}@keyframes heroZoomIn{to{transform:scale(1.16)}}@keyframes heroZoomOut{from{transform:scale(1.16)}to{transform:scale(1.04)}}@keyframes heroPanRight{from{transform:scale(1.12) translateX(-2.5%)}to{transform:scale(1.12) translateX(2.5%)}}@keyframes heroPanLeft{from{transform:scale(1.12) translateX(2.5%)}to{transform:scale(1.12) translateX(-2.5%)}}
.event-photo-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.1),rgba(0,0,0,var(--event-slide-overlay,.3)))}.event-photo-meta{position:absolute;right:max(7vw,54px);top:clamp(50px,9vh,95px);z-index:3;display:flex;flex-direction:column;align-items:flex-end;gap:10px;text-align:right;text-transform:uppercase;font-style:normal}.event-photo-meta img{position:static;width:auto;height:auto;max-width:260px;max-height:100px;object-fit:contain;transform:none!important;animation:none!important}.event-photo-meta strong{font-size:18px;letter-spacing:.08em}.event-photo-meta em{font-style:normal;font-size:16px;font-weight:900;letter-spacing:.06em}.event-photo-controls{position:absolute;right:max(5vw,34px);bottom:28px;z-index:5;display:flex;gap:10px;align-items:center}.event-photo-controls>button{width:34px;height:34px;border:1px solid rgba(255,255,255,.3);background:rgba(0,0,0,.18);color:rgba(255,255,255,.65);font-size:20px}.event-photo-controls [data-event-photo-dots]{display:flex;gap:7px}.event-photo-controls [data-event-photo-dots] button{width:18px;height:2px;border:0;background:rgba(255,255,255,.35);padding:0}.event-photo-controls [data-event-photo-dots] button.active{background:var(--site-accent,#D21000)}
@media(max-width:720px){.main-402-hero{min-height:calc(100svh - 74px)}.main-hero-content{padding-bottom:34px}.main-hero-copy{padding:24px 20px 26px;max-width:92%}.main-hero-copy h1{font-size:clamp(48px,15vw,72px)}.event-photo-carousel{height:64svh;min-height:430px}.event-photo-meta{right:22px;top:34px;max-width:72%}.event-photo-meta img{max-width:190px;max-height:76px}.event-photo-controls{right:18px;bottom:18px}}
@media(prefers-reduced-motion:reduce){.event-photo-slide img{animation:none!important;transform:scale(1.04)!important}}
.event-carousel-admin-grid{grid-template-columns:1fr!important}.event-carousel-admin-grid .hero-slot-card{max-width:none}


/* =====================================================
   v6.1 quickfix 4 — compacte, gecentreerde hoofdhero
   ===================================================== */

/* Tekstblok ongeveer half zo dominant en midden-links geplaatst. */
.main-402-hero{
  align-items:center !important;
}
.main-hero-content{
  display:flex !important;
  align-items:center !important;
  min-height:calc(100vh - var(--header-height-public,86px)) !important;
  padding-top:clamp(54px,7vh,84px) !important;
  padding-bottom:clamp(44px,6vh,72px) !important;
}
.main-hero-copy{
  width:min(560px,46vw) !important;
  max-width:560px !important;
  margin-left:clamp(18px,2vw,34px) !important;
  padding:22px 26px 24px !important;
  background:linear-gradient(90deg,rgba(5,6,7,.82),rgba(5,6,7,.56) 78%,rgba(5,6,7,.06)) !important;
  border-left:4px solid var(--site-accent,#D21000) !important;
}
.main-hero-copy .eyebrow{
  margin-bottom:12px !important;
  font-size:12px !important;
  letter-spacing:.3em !important;
}
.main-hero-copy h1{
  font-size:clamp(34px,3.75vw,58px) !important;
  line-height:.9 !important;
  margin:4px 0 16px !important;
  letter-spacing:-.045em !important;
}
.main-hero-copy>p{
  max-width:510px !important;
  font-size:clamp(15px,1.15vw,18px) !important;
  line-height:1.45 !important;
}
.main-hero-copy .hero-ctas{
  margin-top:20px !important;
  gap:10px !important;
}
.main-hero-copy .hero-ctas .btn{
  min-height:46px !important;
  padding:0 18px !important;
  font-size:11px !important;
}

/* Voorkomt optisch kruis met de rode lijn onder de header. */
.main-hero-copy{
  transform:translateY(3vh);
}

@media(max-width:900px){
  .main-hero-content{
    min-height:calc(100svh - 78px) !important;
    align-items:center !important;
    padding-top:44px !important;
    padding-bottom:34px !important;
  }
  .main-hero-copy{
    width:min(520px,72vw) !important;
    max-width:72vw !important;
    margin-left:0 !important;
    transform:translateY(2vh) !important;
  }
}

@media(max-width:560px){
  .main-hero-content{
    align-items:flex-end !important;
    padding-top:36px !important;
    padding-bottom:28px !important;
  }
  .main-hero-copy{
    width:calc(100% - 18px) !important;
    max-width:calc(100% - 18px) !important;
    margin-left:0 !important;
    padding:18px 18px 20px !important;
    transform:none !important;
  }
  .main-hero-copy h1{
    font-size:clamp(34px,10.5vw,48px) !important;
  }
  .main-hero-copy>p{
    font-size:15px !important;
  }
}


/* =====================================================
   v6.1 quickfix 6 — werkende eventcarrousel in hoofdhero
   ===================================================== */
.main-402-hero{
  isolation:isolate;
  position:relative;
}
.main-402-hero .main-hero-media{z-index:0}
.main-402-hero .main-hero-overlay{z-index:1;pointer-events:none}
.main-402-hero .main-hero-content{position:relative;z-index:4;pointer-events:none}
.main-402-hero .main-hero-copy{pointer-events:auto}

.main-402-hero .hero-event-overlay{
  position:absolute !important;
  z-index:3 !important;
  right:clamp(28px,4.5vw,82px) !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:min(42vw,660px) !important;
  height:min(58vh,590px) !important;
  min-height:360px !important;
  overflow:hidden !important;
  background:#090b0d !important;
  border:1px solid rgba(255,255,255,.22) !important;
  box-shadow:0 28px 75px rgba(0,0,0,.42) !important;
  pointer-events:auto !important;
}
.main-402-hero .hero-event-overlay::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:4;
  pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
}
.main-402-hero .hero-event-overlay .event-photo-stage,
.main-402-hero .hero-event-overlay .event-photo-slide{
  height:100% !important;
}
.main-402-hero .hero-event-overlay .event-photo-slide{
  display:block;
  pointer-events:none;
  cursor:pointer;
}
.main-402-hero .hero-event-overlay .event-photo-slide.is-active{
  pointer-events:auto;
}
.main-402-hero .hero-event-overlay .event-photo-meta{
  right:28px !important;
  top:28px !important;
  max-width:72% !important;
  pointer-events:none;
}
.main-402-hero .hero-event-overlay .event-photo-meta img{
  max-width:210px !important;
  max-height:82px !important;
}
.main-402-hero .hero-event-overlay .event-photo-meta strong{font-size:15px !important}
.main-402-hero .hero-event-overlay .event-photo-meta em{font-size:13px !important}
.main-402-hero .hero-event-overlay .event-photo-controls{
  right:18px !important;
  bottom:16px !important;
  z-index:8 !important;
  opacity:.34 !important;
  pointer-events:auto !important;
}
.main-402-hero .hero-event-overlay .event-photo-controls:hover,
.main-402-hero .hero-event-overlay .event-photo-controls:focus-within{opacity:.9 !important}
.main-402-hero .hero-event-overlay.has-single-slide .event-photo-controls{display:none !important}

@media(min-width:1181px){
  .main-402-hero .main-hero-copy{max-width:min(520px,37vw) !important;width:min(520px,37vw) !important}
}
@media(min-width:901px) and (max-width:1180px){
  .main-402-hero .hero-event-overlay{width:40vw !important;height:52vh !important;min-height:330px !important;right:24px !important}
  .main-402-hero .main-hero-copy{max-width:46vw !important;width:46vw !important}
}
@media(max-width:900px){
  .main-402-hero .hero-event-overlay{
    top:22px !important;
    left:18px !important;
    right:18px !important;
    transform:none !important;
    width:auto !important;
    height:39svh !important;
    min-height:270px !important;
    max-height:390px !important;
  }
  .main-402-hero .main-hero-content{z-index:5 !important;align-items:flex-end !important;padding-top:calc(39svh + 46px) !important}
  .main-402-hero .hero-event-overlay .event-photo-meta{right:18px !important;top:18px !important}
  .main-402-hero .hero-event-overlay .event-photo-meta img{max-width:145px !important;max-height:58px !important}
  .main-402-hero .hero-event-overlay .event-photo-meta strong{font-size:11px !important}
  .main-402-hero .hero-event-overlay .event-photo-meta em{font-size:10px !important}
}
@media(max-width:560px){
  .main-402-hero .hero-event-overlay{height:35svh !important;min-height:235px !important;left:12px !important;right:12px !important;top:14px !important}
  .main-402-hero .main-hero-content{padding-top:calc(35svh + 36px) !important}
  .main-402-hero .hero-event-overlay .event-photo-controls{right:10px !important;bottom:10px !important}
}


/* =====================================================
   v6.1 quickfix 7 — één fullscreen hero-slider
   ===================================================== */
.unified-hero{
  position:relative !important;
  min-height:calc(100vh - var(--header-height-public,86px)) !important;
  height:calc(100vh - var(--header-height-public,86px)) !important;
  overflow:hidden !important;
  background:#090a0b !important;
  color:#fff !important;
}
.unified-hero-stage,
.unified-hero-slide,
.unified-hero-slide picture,
.unified-hero-slide picture img,
.unified-hero-slide .main-hero-media,
.unified-hero-slide .main-hero-media img,
.unified-hero-slide .main-hero-media video,
.unified-hero-slide .main-hero-fallback{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
}
.unified-hero-slide{
  opacity:0 !important;
  visibility:hidden !important;
  transition:opacity .85s ease !important;
  overflow:hidden !important;
  z-index:0 !important;
}
.unified-hero-slide.is-active{
  opacity:1 !important;
  visibility:visible !important;
  z-index:2 !important;
}
.unified-hero-main .main-hero-content{
  position:relative !important;
  z-index:3 !important;
  height:100% !important;
  display:flex !important;
  align-items:center !important;
}
.unified-hero-main .main-hero-copy{
  width:min(560px,46vw) !important;
  max-width:560px !important;
  margin-left:clamp(18px,2vw,34px) !important;
  transform:translateY(3vh) !important;
}
.unified-event-link{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  color:#fff !important;
  text-decoration:none !important;
}
.unified-event-link picture img{
  object-fit:cover !important;
  transform:scale(1.06);
}
.unified-event-shade{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  background:linear-gradient(90deg,rgba(0,0,0,.1),rgba(0,0,0,var(--event-slide-overlay,.3))) !important;
  pointer-events:none !important;
}
.unified-event-meta{
  position:absolute !important;
  z-index:3 !important;
  top:clamp(40px,6vh,78px) !important;
  right:clamp(44px,5vw,92px) !important;
  width:min(340px,34vw) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  gap:8px !important;
  text-align:right !important;
  color:#fff !important;
  text-shadow:0 2px 16px rgba(0,0,0,.72) !important;
}
.unified-event-meta img{
  max-width:min(280px,28vw) !important;
  max-height:110px !important;
  object-fit:contain !important;
  object-position:right center !important;
  margin-bottom:6px !important;
}
.unified-event-meta strong{
  font-size:clamp(15px,1.35vw,21px) !important;
  line-height:1.15 !important;
  text-transform:uppercase !important;
  letter-spacing:.045em !important;
}
.unified-event-meta em{
  font-style:normal !important;
  font-size:clamp(13px,1.1vw,18px) !important;
  line-height:1.2 !important;
  text-transform:uppercase !important;
  font-weight:800 !important;
  letter-spacing:.04em !important;
}
.unified-hero-controls{
  position:absolute !important;
  z-index:8 !important;
  right:clamp(22px,3vw,52px) !important;
  bottom:clamp(20px,3vh,36px) !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  opacity:.34 !important;
  transition:opacity .2s ease !important;
}
.unified-hero:hover .unified-hero-controls,
.unified-hero:focus-within .unified-hero-controls{opacity:.78 !important}
.unified-hero-controls>button{
  width:38px !important;
  height:38px !important;
  border:1px solid rgba(255,255,255,.42) !important;
  background:rgba(0,0,0,.34) !important;
  color:#fff !important;
  font-size:27px !important;
  line-height:1 !important;
  cursor:pointer !important;
}
.unified-hero-dots{display:flex !important;gap:7px !important;align-items:center !important}
.unified-hero-dots button{
  width:22px !important;
  height:3px !important;
  padding:0 !important;
  border:0 !important;
  background:rgba(255,255,255,.42) !important;
  cursor:pointer !important;
}
.unified-hero-dots button.active{background:var(--site-accent,#D21000) !important}
.unified-hero-event.is-active.motion-zoom-in img{animation:heroZoomIn 9s linear both}
.unified-hero-event.is-active.motion-zoom-out img{animation:heroZoomOut 9s linear both}
.unified-hero-event.is-active.motion-pan-right img{animation:heroPanRight 9s linear both}
.unified-hero-event.is-active.motion-pan-left img{animation:heroPanLeft 9s linear both}

/* Verwijder alle oude paneel-/overlayregels. */
.hero-event-overlay,.event-photo-carousel{display:none !important}

@media(max-width:720px){
  .unified-hero{
    min-height:calc(100svh - 74px) !important;
    height:calc(100svh - 74px) !important;
  }
  .unified-hero-main .main-hero-content{
    align-items:flex-end !important;
    padding-bottom:28px !important;
  }
  .unified-hero-main .main-hero-copy{
    width:calc(100% - 18px) !important;
    max-width:calc(100% - 18px) !important;
    margin-left:0 !important;
    transform:none !important;
  }
  .unified-event-meta{
    top:24px !important;
    right:20px !important;
    width:min(260px,72vw) !important;
  }
  .unified-event-meta img{
    max-width:200px !important;
    max-height:78px !important;
  }
  .unified-hero-controls{
    right:14px !important;
    bottom:14px !important;
    opacity:.52 !important;
  }
}

@media(prefers-reduced-motion:reduce){
  .unified-hero-slide,.unified-hero-slide img{animation:none !important;transition:none !important}
}

/* v6.1.2 — eventslider videoloops */
.unified-hero-event .unified-event-link>video{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}
.unified-hero-event.media-video.is-active video{animation:none!important;transform:none!important}


/* Homepage v2 – premium, zakelijke platforminteractie */
.platform-premium{position:relative;overflow:hidden;isolation:isolate}
.platform-premium::before{content:"";position:absolute;inset:-35% -10%;z-index:-1;background:radial-gradient(circle at 72% 45%,rgba(224,0,0,.12),transparent 28%),linear-gradient(115deg,transparent 35%,rgba(0,0,0,.035) 52%,transparent 68%);animation:platformAmbient 11s ease-in-out infinite alternate;pointer-events:none}
.platform-premium::after{content:"";position:absolute;right:8%;top:12%;width:360px;height:360px;border:1px solid rgba(224,0,0,.11);transform:rotate(45deg);pointer-events:none}
.platform-premium .platform-kpi-panel{perspective:1100px}
.platform-premium .platform-kpi-panel .hero-panel{--platform-rx:0deg;--platform-ry:0deg;--platform-mx:70%;--platform-my:40%;position:relative;overflow:hidden;transform:rotateX(var(--platform-rx)) rotateY(var(--platform-ry)) translateZ(0);transform-style:preserve-3d;transition:transform .18s ease,box-shadow .3s ease;border:1px solid rgba(255,255,255,.13);background:linear-gradient(145deg,#090a0c,#15171b 70%,#0b0c0f)}
.platform-premium .platform-kpi-panel .hero-panel::before{content:"";position:absolute;inset:-1px;background:radial-gradient(circle at var(--platform-mx) var(--platform-my),rgba(224,0,0,.28),transparent 34%);opacity:.65;animation:platformGlow 7s ease-in-out infinite alternate;pointer-events:none}
.platform-premium .platform-kpi-panel .hero-panel::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 0 42%,rgba(255,255,255,.045) 50%,transparent 58% 100%);transform:translateX(-120%);animation:platformSheen 9s ease-in-out infinite;pointer-events:none}
.platform-premium .platform-kpi-panel .hero-panel>*{position:relative;z-index:1}
.platform-premium .metric-v43{transition:transform .25s ease,background .25s ease,border-color .25s ease}
.platform-premium .metric-v43:hover{transform:translateY(-4px);background:rgba(255,255,255,.07);border-color:rgba(224,0,0,.45)}
.platform-premium .btn{transition:transform .2s ease,box-shadow .2s ease}
.platform-premium .btn:hover{transform:translateY(-2px)}
@keyframes platformAmbient{0%{transform:translate3d(-2%,0,0) scale(.98);opacity:.55}100%{transform:translate3d(2%,-1%,0) scale(1.04);opacity:1}}
@keyframes platformGlow{0%{opacity:.35;transform:scale(.92)}100%{opacity:.9;transform:scale(1.08)}}
@keyframes platformSheen{0%,62%{transform:translateX(-120%)}82%,100%{transform:translateX(120%)}}
@media(prefers-reduced-motion:reduce){.platform-premium::before,.platform-premium .platform-kpi-panel .hero-panel::before,.platform-premium .platform-kpi-panel .hero-panel::after{animation:none}.platform-premium .platform-kpi-panel .hero-panel{transform:none!important}}
@media(max-width:720px){.platform-premium::after{width:220px;height:220px;right:-90px;top:10%}.platform-premium .platform-kpi-panel .hero-panel{transform:none!important}}


/* v6.3.2 – Platform KPI hartslag: zes beheersbare KPI's met eigen kleur */
.platform-premium .hero-metrics-v43{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.platform-premium .metric-v43{
  --metric-color:#D21000;
  min-height:92px;
  isolation:isolate;
  border:1px solid rgba(255,255,255,.16) !important;
  border-left:5px solid var(--metric-color) !important;
  background:rgba(255,255,255,.035);
  overflow:hidden;
}
.platform-premium .metric-v43::before{
  content:"";
  position:absolute;
  z-index:0;
  left:-46px;
  top:50%;
  width:118px;
  height:138%;
  border-radius:50%;
  transform:translateY(-50%) scaleX(.55) scaleY(.72);
  transform-origin:left center;
  opacity:.28;
  background:radial-gradient(ellipse at left center,
    color-mix(in srgb,var(--metric-color) 72%,transparent) 0%,
    color-mix(in srgb,var(--metric-color) 34%,transparent) 42%,
    transparent 72%);
  filter:blur(1px);
  animation:platformHeartbeat 3.2s cubic-bezier(.45,0,.25,1) infinite;
  pointer-events:none;
}
.platform-premium .metric-v43::after{
  content:"";
  position:absolute;
  z-index:0;
  left:0;
  top:14%;
  bottom:14%;
  width:1px;
  background:var(--metric-color);
  box-shadow:0 0 12px var(--metric-color),0 0 24px color-mix(in srgb,var(--metric-color) 58%,transparent);
  opacity:.9;
  animation:platformEdgeBeat 3.2s cubic-bezier(.45,0,.25,1) infinite;
  pointer-events:none;
}
.platform-premium .metric-v43:nth-child(2)::before,
.platform-premium .metric-v43:nth-child(2)::after{animation-delay:.22s}
.platform-premium .metric-v43:nth-child(3)::before,
.platform-premium .metric-v43:nth-child(3)::after{animation-delay:.44s}
.platform-premium .metric-v43:nth-child(4)::before,
.platform-premium .metric-v43:nth-child(4)::after{animation-delay:.66s}
.platform-premium .metric-v43:nth-child(5)::before,
.platform-premium .metric-v43:nth-child(5)::after{animation-delay:.88s}
.platform-premium .metric-v43:nth-child(6)::before,
.platform-premium .metric-v43:nth-child(6)::after{animation-delay:1.1s}
.platform-premium .metric-v43 strong,
.platform-premium .metric-v43 span{position:relative;z-index:2}
.platform-premium .metric-v43:hover{
  border-color:color-mix(in srgb,var(--metric-color) 55%,rgba(255,255,255,.16)) !important;
  box-shadow:0 10px 30px color-mix(in srgb,var(--metric-color) 16%,transparent);
}
@keyframes platformHeartbeat{
  0%,35%,100%{transform:translateY(-50%) scaleX(.50) scaleY(.68);opacity:.20}
  43%{transform:translateY(-50%) scaleX(.92) scaleY(.92);opacity:.52}
  50%{transform:translateY(-50%) scaleX(.62) scaleY(.75);opacity:.30}
  58%{transform:translateY(-50%) scaleX(.82) scaleY(.86);opacity:.44}
  70%{transform:translateY(-50%) scaleX(.50) scaleY(.68);opacity:.20}
}
@keyframes platformEdgeBeat{
  0%,35%,100%{opacity:.62;box-shadow:0 0 7px var(--metric-color),0 0 14px color-mix(in srgb,var(--metric-color) 35%,transparent)}
  43%{opacity:1;box-shadow:0 0 14px var(--metric-color),0 0 34px color-mix(in srgb,var(--metric-color) 72%,transparent)}
  50%{opacity:.72;box-shadow:0 0 9px var(--metric-color),0 0 19px color-mix(in srgb,var(--metric-color) 45%,transparent)}
  58%{opacity:.95;box-shadow:0 0 12px var(--metric-color),0 0 29px color-mix(in srgb,var(--metric-color) 64%,transparent)}
  70%{opacity:.62;box-shadow:0 0 7px var(--metric-color),0 0 14px color-mix(in srgb,var(--metric-color) 35%,transparent)}
}
@media(max-width:720px){
  .platform-premium .hero-metrics-v43{grid-template-columns:1fr 1fr;gap:8px}
  .platform-premium .metric-v43{min-height:84px;padding:11px 10px}
}
@media(max-width:430px){
  .platform-premium .hero-metrics-v43{grid-template-columns:1fr 1fr}
  .platform-premium .metric-v43 strong{font-size:27px}
  .platform-premium .metric-v43 span{font-size:8.5px}
}
@media(prefers-reduced-motion:reduce){
  .platform-premium .metric-v43::before,
  .platform-premium .metric-v43::after{animation:none}
}


/* v6.3.3 — iOS hero-video autoplay hardening */
.unified-hero-slide video,
.main-hero-media video{
  width:100%;
  height:100%;
  object-fit:cover;
  pointer-events:none;
}
.unified-hero-slide video::-webkit-media-controls,
.main-hero-media video::-webkit-media-controls,
.unified-hero-slide video::-webkit-media-controls-start-playback-button,
.main-hero-media video::-webkit-media-controls-start-playback-button{
  display:none !important;
  -webkit-appearance:none;
  opacity:0;
}

/* v6.4 Platform integration + homepage event CTA structure */
.platform-premium .two-col{
  grid-template-columns:minmax(0,.82fr) minmax(600px,1.18fr);
  gap:28px;
}
.platform-premium .two-col>div:first-child{padding-right:18px}
.platform-premium .platform-kpi-panel{transform:none}
.platform-premium .platform-kpi-panel .hero-panel{
  width:100%;
  max-width:none;
  padding:34px 34px 28px;
}
.platform-premium .hero-panel-head{max-width:620px}
.platform-premium .hero-metrics-v43{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.platform-premium .metric-v43{min-height:112px;padding:18px 16px}
.platform-premium .platform-panel-footer{
  margin:22px 0 0;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.12);
  color:rgba(255,255,255,.64);
  font-size:11px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.platform-premium .button-row{display:flex;flex-wrap:wrap;gap:10px}
.platform-premium .platform-cta-secondary[hidden]{display:none!important}
.platform-premium .platform-cta-secondary{background:#111;color:#fff;border-color:#111}
.platform-premium .platform-cta-secondary:hover{background:var(--site-accent);border-color:var(--site-accent)}

body.home-page .calendar .event-card .event-card-actions{
  display:flex!important;
  flex-direction:column;
  gap:8px;
  margin-top:auto;
}
body.home-page .calendar .event-card .event-main-cta{
  width:100%;
  min-height:54px;
  background:var(--site-accent);
  color:#fff;
  border-color:var(--site-accent);
}
body.home-page .calendar .event-card .event-optional-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}
body.home-page .calendar .event-card .event-optional-actions.has-2{grid-template-columns:repeat(2,minmax(0,1fr))}
body.home-page .calendar .event-card .event-optional-actions .btn{width:100%;min-width:0;min-height:50px}
body.home-page .calendar .event-card .event-optional-actions .btn-outline-dark{background:#fff;color:#111;border-color:#111}
body.home-page .calendar .event-card .event-optional-actions .btn-dark{background:#111;color:#fff;border-color:#111}
.event-card-logo-picture{display:block;width:max-content;max-width:100%;margin-bottom:16px}
.event-card-logo-picture .event-card-logo{display:block;margin:0;max-width:100%}

@media(max-width:1200px){
  .platform-premium .two-col{grid-template-columns:1fr;gap:26px}
  .platform-premium .two-col>div:first-child{padding-right:0}
}
@media(max-width:720px){
  .platform-premium .hero-metrics-v43{grid-template-columns:repeat(2,minmax(0,1fr))}
  .platform-premium .platform-kpi-panel .hero-panel{padding:24px 20px 20px}
  .platform-premium .metric-v43{min-height:88px;padding:12px 10px}
  .platform-premium .platform-panel-footer{font-size:9px;line-height:1.6}
  .platform-premium .button-row .btn{flex:1 1 100%}
  body.home-page .calendar .event-card .event-optional-actions.has-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.home-page .calendar .event-card .event-optional-actions .btn{font-size:11px;letter-spacing:.05em;padding-inline:6px}
}

/* v6.4.1 Platform CTA alignment and duplicate mobile CTA fix */
.platform-premium .two-col{
  align-items:stretch;
}
.platform-premium .two-col>div:first-child{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.platform-premium .platform-kpi-panel,
.platform-premium .platform-kpi-panel .hero-panel{
  height:100%;
}
.platform-premium .platform-desktop-cta{
  margin-top:auto;
  padding-top:30px;
}
.platform-premium .platform-desktop-cta .btn{
  min-height:52px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.platform-premium .platform-cta-secondary{
  background:var(--site-accent);
  border-color:var(--site-accent);
  color:#fff;
}
.platform-premium .platform-cta-secondary:hover{
  background:#111;
  border-color:#111;
  color:#fff;
}
.platform-premium .platform-mobile-cta{
  display:none;
}

@media(max-width:1200px){
  .platform-premium .platform-desktop-cta{display:none}
  .platform-premium .platform-mobile-cta{
    display:flex;
    grid-column:1/-1;
    margin-top:0;
  }
  .platform-premium .platform-mobile-cta .btn{
    flex:1 1 0;
    min-height:52px;
  }
}
@media(max-width:720px){
  .platform-premium .platform-mobile-cta{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .platform-premium .platform-mobile-cta .btn{width:100%;min-width:0;padding-inline:8px}
}

/* v6.4.2 Platform composition refinement */
@media(min-width:1201px){
  .platform-premium{
    padding-top:72px;
    padding-bottom:68px;
  }
  .platform-premium .platform-layout{
    grid-template-columns:minmax(0,.9fr) minmax(620px,1.1fr);
    column-gap:42px;
    row-gap:0;
    align-items:stretch;
  }
  .platform-premium .platform-section-eyebrow{
    grid-column:1/-1;
    margin:0 0 18px;
  }
  .platform-premium .platform-copy{
    display:flex;
    flex-direction:column;
    min-width:0;
    padding:0 8px 0 0;
  }
  .platform-premium .platform-copy .section-title{
    margin:0;
    max-width:610px;
    font-size:clamp(54px,4.15vw,70px);
    line-height:.92;
    letter-spacing:-.035em;
  }
  .platform-premium .platform-copy .lead{
    max-width:590px;
    margin-top:22px;
    margin-bottom:0;
  }
  .platform-premium .platform-kpi-panel{
    align-self:stretch;
  }
  .platform-premium .platform-kpi-panel .hero-panel{
    height:100%;
    min-height:0;
    padding:30px 32px 24px;
    display:flex;
    flex-direction:column;
  }
  .platform-premium .hero-panel-head h2{
    margin-bottom:8px;
  }
  .platform-premium .hero-metrics-v43{
    flex:1 1 auto;
    grid-auto-rows:minmax(102px,1fr);
    margin-top:22px;
  }
  .platform-premium .metric-v43{
    min-height:102px;
    padding:16px 14px;
  }
  .platform-premium .platform-panel-footer{
    margin-top:18px;
    padding-top:16px;
  }
  .platform-premium .platform-desktop-cta{
    margin-top:auto;
    padding-top:28px;
    align-items:stretch;
  }
  .platform-premium .platform-desktop-cta .btn{
    min-height:56px;
  }
}

@media(max-width:1200px){
  .platform-premium .platform-section-eyebrow{
    grid-column:1/-1;
    margin-bottom:16px;
  }
  .platform-premium .platform-copy{
    min-width:0;
  }
}
.calendar-page-hero{min-height:0;padding:72px 0 62px;background:#f3f3f1;border-bottom:1px solid #ddd}
.calendar-page-hero .container{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);align-items:end;gap:56px}
.calendar-page-hero h1{max-width:760px;margin-bottom:0;font-size:clamp(54px,6.2vw,90px);letter-spacing:-.035em}
.calendar-page-hero h1 span{color:var(--red)}
.calendar-hero-copy{grid-row:1/3;align-self:center}
.calendar-hero-copy .eyebrow{margin:0 0 10px}
.calendar-hero-intro{grid-column:2;margin:0;max-width:520px;font-size:clamp(17px,1.35vw,21px);line-height:1.55}
.calendar-hero-actions{grid-column:2;padding-bottom:2px}
.calendar-share-status{display:block;min-height:20px;margin-top:10px;font-size:13px;text-align:center;color:#555}
.calendar-page-section{padding-top:0}
.calendar-country-nav{position:sticky;top:var(--header);z-index:20;display:flex;gap:0;overflow-x:auto;margin:0 calc(50% - 50vw) 20px;padding:0 max(24px,calc((100vw - var(--max))/2));background:#fff;border-bottom:1px solid #ddd;scrollbar-width:none}
.calendar-country-nav::-webkit-scrollbar{display:none}
.calendar-country-nav a{flex:0 0 auto;padding:21px 18px;border:0;border-bottom:3px solid transparent;font-size:12px;letter-spacing:.09em}
.calendar-country-nav a:hover{border-color:var(--red);background:transparent;color:#111}
.calendar-country-section{padding:74px 0 20px;scroll-margin-top:calc(var(--header) + 56px)}
.calendar-country-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px;padding-bottom:22px;border-bottom:1px solid #d8d8d8}
.calendar-country-head .eyebrow{margin:0 0 8px}
.calendar-country-head h2{margin:0;font-size:clamp(36px,5vw,68px);line-height:.95;text-transform:uppercase;letter-spacing:-.025em}
.calendar-country-head h2 span{color:var(--red)}
.calendar-country-head>p{margin:0 0 5px;color:#777;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.09em}
.calendar-event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px}
.calendar-event-card{display:flex;min-width:0;flex-direction:column;background:#fff;border:1px solid #d9d9d9;scroll-margin-top:calc(var(--header) + 74px);transition:transform .2s ease,box-shadow .2s ease}
.calendar-event-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(0,0,0,.08)}
.calendar-card-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:#111}
.calendar-card-media>img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.calendar-event-card:hover .calendar-card-media>img{transform:scale(1.025)}
.calendar-card-date{position:absolute;left:0;bottom:0;min-width:74px;padding:12px 14px;background:#fff;border-top:5px solid var(--red);color:#111;text-align:center;text-transform:uppercase}
.calendar-card-date strong{display:block;font-size:27px;line-height:1;font-weight:1000}
.calendar-card-date span{display:block;margin-top:4px;font-size:11px;font-weight:900}
.calendar-card-body{display:flex;flex:1;flex-direction:column;padding:23px}
.calendar-logo-wrap{display:flex;align-items:center;height:42px;margin-bottom:18px}
.calendar-logo-wrap .calendar-event-logo{width:auto;max-width:150px;height:auto;max-height:42px;object-fit:contain}
.calendar-card-location{min-height:16px;margin:0 0 8px;color:#6b6b6b;font-size:11px;font-weight:900;line-height:1.4;text-transform:uppercase;letter-spacing:.08em}
.calendar-card-body h3{margin:0;font-size:clamp(24px,2.1vw,34px);line-height:1;text-transform:uppercase;overflow-wrap:anywhere}
.calendar-tags{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0 24px}
.calendar-tags span{padding:7px 9px;background:#f0f0ee;color:#333;font-size:10px;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.06em}
.calendar-card-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px 16px;margin-top:auto;padding-top:20px;border-top:1px solid #e2e2e2}
.calendar-card-actions a{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.calendar-card-actions a:hover{color:var(--red)}
.calendar-card-actions .calendar-primary-link{margin-right:auto;color:#111;font-size:12px}
.calendar-primary-link span{color:var(--red);font-size:16px}
.calendar-country-empty{display:flex;align-items:center;gap:20px;min-height:110px;padding:24px 28px;background:#f3f3f1;border-left:5px solid #cfcfcb}
.calendar-country-empty img{width:72px;height:auto;filter:grayscale(1);opacity:.28}
.calendar-country-empty strong,.calendar-country-empty span{display:block}
.calendar-country-empty strong{font-size:22px;text-transform:uppercase}
.calendar-country-empty span{margin-top:4px;color:#777}
.calendar-load-error{padding:28px;border-left:6px solid var(--red);background:#f3f3f1}
@media(max-width:1050px){.calendar-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-page-hero .container{grid-template-columns:1fr;gap:22px}.calendar-hero-copy{grid-row:auto}.calendar-hero-intro,.calendar-hero-actions{grid-column:1}.calendar-hero-actions{margin-top:4px}.calendar-share-status{text-align:left}}
@media(max-width:680px){.calendar-page-hero{padding:46px 0 40px}.calendar-country-nav{top:var(--header);padding-left:15px;padding-right:15px}.calendar-country-nav a{padding:17px 13px}.calendar-country-section{padding-top:56px}.calendar-country-head{align-items:flex-start}.calendar-country-head>p{display:none}.calendar-event-grid{grid-template-columns:1fr;gap:18px}.calendar-card-body{padding:20px}.calendar-card-body h3{font-size:28px}.calendar-card-media{aspect-ratio:16/9}.calendar-country-empty{padding:20px}.calendar-page-hero h1 span{display:inline}.calendar-hero-actions .btn{width:100%}}

/* Kalender v5 — compacte editorial hero met filters direct in beeld */
.calendar-page-hero{
  padding:0;
  overflow:visible;
  background:#f4f4f1;
  border-bottom:0;
}
.calendar-hero-layout{
  display:grid;
  grid-template-columns:minmax(420px,42%) minmax(0,58%);
  min-height:390px;
  max-height:440px;
}
.calendar-hero-content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:48px max(42px,calc((100vw - var(--max))/2)) 52px;
}
.calendar-page-hero .calendar-hero-copy{
  align-self:auto;
}
.calendar-page-hero h1{
  max-width:none;
  margin:0;
  font-size:clamp(58px,6vw,88px);
  line-height:.86;
  letter-spacing:-.055em;
}
.calendar-page-hero .eyebrow{
  margin:0 0 14px;
  color:#575757;
  font-size:12px;
  letter-spacing:.26em;
}
.calendar-page-hero .calendar-hero-intro{
  max-width:480px;
  margin:22px 0 0;
  font-size:clamp(16px,1.2vw,19px);
  line-height:1.5;
  color:#4c4c4c;
}
.calendar-share-link{
  align-self:flex-start;
  margin-top:20px;
  padding:0 0 5px;
  border:0;
  border-bottom:2px solid #111;
  background:none;
  color:#111;
  font:inherit;
  font-size:11px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
  cursor:pointer;
}
.calendar-link-arrow{
  position:relative;
  display:inline-block;
  width:11px;
  height:11px;
  margin-left:5px;
}
.calendar-link-arrow:before{
  content:"";
  position:absolute;
  top:1px;
  right:0;
  width:7px;
  height:7px;
  border-top:2px solid var(--red);
  border-right:2px solid var(--red);
}
.calendar-link-arrow:after{
  content:"";
  position:absolute;
  left:1px;
  bottom:1px;
  width:10px;
  height:2px;
  background:var(--red);
  transform:rotate(-45deg);
  transform-origin:left center;
}
.calendar-share-status{
  margin-top:8px;
  text-align:left;
}
.calendar-hero-image{
  position:relative;
  min-width:0;
  min-height:390px;
  margin:0;
  overflow:hidden;
  background:#111;
}
.calendar-hero-image:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.03),rgba(0,0,0,.08));
  pointer-events:none;
}
.calendar-hero-image>img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:50% 48%;
}
.calendar-page-hero .calendar-filter-wrap{
  display:block;
  position:relative;
  z-index:12;
  margin-top:0;
}
.calendar-filter-panel{
  display:grid;
  grid-template-columns:170px minmax(0,1fr) 200px;
  align-items:center;
  min-height:94px;
  background:#fff;
  border-top:4px solid var(--red);
  border-bottom:1px solid #d8d8d5;
}
.calendar-filter-heading{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-self:stretch;
  padding:15px 22px;
  background:#111;
  color:#fff;
}
.calendar-filter-heading span{
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.calendar-filter-heading strong{
  margin-top:6px;
  color:#aaa;
  font-size:11px;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.calendar-filter-group{
  min-width:0;
  padding:12px 20px;
}
.calendar-filter-label{
  display:block;
  margin:0 0 6px 10px;
  color:#777;
  font-size:10px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.calendar-category-row{
  position:relative;
  display:flex;
  align-items:center;
  min-width:0;
}
.calendar-category-filter{
  display:flex;
  align-items:center;
  gap:4px;
  width:100%;
  overflow-x:auto;
  padding:0;
  scrollbar-width:none;
  scroll-behavior:smooth;
}
.calendar-category-filter::-webkit-scrollbar{display:none}
.calendar-category-filter button{
  flex:0 0 auto;
  min-height:38px;
  padding:0 12px;
  border:1px solid transparent;
  background:transparent;
  color:#555;
  font-size:11px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  cursor:pointer;
}
.calendar-category-filter button:hover{color:#111}
.calendar-category-filter button.active{
  border-color:#111;
  background:#111;
  color:#fff;
}
.calendar-category-next{
  position:absolute;
  z-index:2;
  right:-1px;
  top:50%;
  width:42px;
  height:42px;
  padding:0;
  border:0;
  background:linear-gradient(90deg,rgba(255,255,255,0),#fff 35%);
  transform:translateY(-50%);
  cursor:pointer;
}
.calendar-category-next[hidden]{display:none}
.calendar-category-next span{
  position:absolute;
  right:8px;
  top:50%;
  width:9px;
  height:9px;
  border-top:2px solid #111;
  border-right:2px solid #111;
  transform:translateY(-50%) rotate(45deg);
}
.calendar-country-filter{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-self:stretch;
  padding:15px 20px;
  border-left:1px solid #ddd;
}
.calendar-country-filter span{
  margin-bottom:5px;
  color:#777;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.calendar-country-filter select{
  width:100%;
  border:0;
  background:#fff;
  color:#111;
  font:inherit;
  font-size:13px;
  font-weight:900;
  outline:none;
}
.calendar-page-section{padding:24px 0 90px;scroll-margin-top:var(--header)}
.calendar-country-section{padding:64px 0 14px}
.calendar-event-card[hidden],
.calendar-country-section[hidden]{display:none}
.calendar-no-results{
  margin:70px 0;
  padding:50px;
  background:#f2f2ef;
  text-align:center;
}
.calendar-no-results strong,.calendar-no-results span{display:block}
.calendar-no-results strong{font-size:30px;text-transform:uppercase}
.calendar-no-results span{margin-top:8px;color:#666}
.calendar-no-results button{
  margin-top:22px;
  padding:12px 18px;
  border:0;
  border-bottom:2px solid var(--red);
  background:none;
  font-weight:900;
  text-transform:uppercase;
  cursor:pointer;
}
@media(max-width:1050px){
  .calendar-hero-layout{grid-template-columns:1fr 1.08fr;min-height:370px}
  .calendar-hero-content{padding:42px 32px 46px}
  .calendar-hero-image{min-height:370px}
  .calendar-page-hero .calendar-hero-intro{grid-column:auto}
  .calendar-filter-panel{grid-template-columns:165px minmax(0,1fr)}
  .calendar-country-filter{grid-column:1/-1;min-height:58px;flex-direction:row;align-items:center;justify-content:flex-start;gap:18px;border-top:1px solid #ddd;border-left:0}
  .calendar-country-filter span{margin:0}
  .calendar-country-filter select{width:auto;min-width:160px}
}
@media(max-width:760px){
  .calendar-hero-layout{grid-template-columns:1fr;max-height:none}
  .calendar-hero-content{min-height:300px;padding:38px 22px 34px}
  .calendar-page-hero h1{font-size:clamp(54px,17vw,78px)}
  .calendar-page-hero .calendar-hero-intro{margin-top:18px;font-size:16px}
  .calendar-hero-image{min-height:210px}
  .calendar-filter-wrap{width:100%;margin-top:0}
  .calendar-filter-panel{display:block}
  .calendar-filter-heading{min-height:62px}
  .calendar-filter-group{padding:12px 14px}
  .calendar-filter-label{margin-left:8px}
  .calendar-category-filter{padding-right:34px}
  .calendar-category-filter button{min-height:42px;padding:0 13px}
  .calendar-category-next{display:block}
  .calendar-category-next[hidden]{display:none}
  .calendar-country-filter{padding:15px 18px}
  .calendar-page-section{padding-top:16px}
  .calendar-country-section{padding-top:46px}
}
/* =========================================================
   NIEUWSPAGINA V2 — kalenderfamilie
   ========================================================= */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.news-page-hero{background:#f3f3f1;border-bottom:1px solid #ddd}
.news-hero-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);max-height:500px;overflow:hidden;background:#111}
.news-hero-content{min-height:430px;padding:clamp(48px,6vw,86px) max(32px,calc((100vw - var(--max))/2));padding-right:clamp(34px,5vw,76px);display:flex;flex-direction:column;justify-content:center;color:#fff}
.news-hero-content .eyebrow{margin:0 0 12px}
.news-hero-content h1{margin:0;font-size:clamp(58px,7.2vw,108px);line-height:.86;text-transform:uppercase;letter-spacing:-.045em;max-width:650px}
.news-hero-content h1 span{display:block;color:var(--red)}
.news-hero-content>p:last-child{max-width:620px;margin:26px 0 0;color:#ddd;font-size:clamp(17px,1.35vw,21px);line-height:1.55}
.news-hero-image{position:relative;margin:0;min-height:430px;overflow:hidden}
.news-hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,17,17,.34),transparent 36%),linear-gradient(0deg,rgba(0,0,0,.15),transparent 45%)}
.news-hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 54%}
.news-filter-wrap{margin-top:-1px}
.news-filter-panel{display:grid;grid-template-columns:210px minmax(260px,.55fr) minmax(0,1fr);align-items:stretch;background:#fff;border:1px solid #d9d9d9;box-shadow:0 18px 50px rgba(0,0,0,.08)}
.news-filter-heading{padding:20px 24px;background:#111;color:#fff;display:flex;flex-direction:column;justify-content:center}
.news-filter-heading span{font-size:11px;font-weight:1000;letter-spacing:.16em;text-transform:uppercase;color:#aaa}
.news-filter-heading strong{margin-top:5px;font-size:17px;text-transform:uppercase}
.news-search{position:relative;display:flex;align-items:center;border-right:1px solid #ddd}
.news-search input{width:100%;height:100%;min-height:82px;border:0;background:#fff;padding:0 54px 0 24px;font:inherit;font-size:15px;outline:none}
.news-search input:focus{box-shadow:inset 0 0 0 2px var(--red)}
.news-search-icon{position:absolute;right:22px;width:17px;height:17px;border:2px solid #111;border-radius:50%}
.news-search-icon:after{content:"";position:absolute;width:8px;height:2px;background:#111;right:-6px;bottom:-3px;transform:rotate(45deg)}
.news-category-row{position:relative;display:flex;min-width:0;align-items:center;padding:14px 12px 14px 18px}
.news-category-filter{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;min-width:0;scroll-behavior:smooth;padding-right:8px}
.news-category-filter::-webkit-scrollbar{display:none}
.news-category-filter button{flex:0 0 auto;border:1px solid #d6d6d6;background:#fff;min-height:42px;padding:0 15px;font:inherit;font-size:11px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.news-category-filter button:hover,.news-category-filter button.active{background:#111;border-color:#111;color:#fff}
.news-category-filter button.active{box-shadow:inset 0 -4px 0 var(--red)}
.news-category-next{flex:0 0 42px;width:42px;height:42px;border:0;background:#111;cursor:pointer;margin-left:3px;position:relative}
.news-category-next span:before,.news-category-next span:after{content:"";position:absolute;right:14px;width:12px;height:2px;background:#fff}
.news-category-next span:before{top:16px;transform:rotate(45deg)}
.news-category-next span:after{top:24px;transform:rotate(-45deg)}
.news-page-section{padding:52px 0 96px;scroll-margin-top:var(--header)}
.featured-news{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);background:#111;color:#fff;overflow:hidden;margin-bottom:72px;box-shadow:0 24px 60px rgba(0,0,0,.13)}
.featured-news-media{min-height:440px;overflow:hidden}
.featured-news-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.featured-news:hover .featured-news-media img{transform:scale(1.025)}
.featured-news-body{padding:clamp(36px,4.5vw,66px);display:flex;flex-direction:column;justify-content:center}
.featured-news-body .eyebrow{margin-bottom:16px}
.news-v2-meta{display:flex;gap:12px;align-items:center;margin:0 0 14px!important;color:#777!important;font-size:12px!important;font-weight:1000;letter-spacing:.08em;text-transform:uppercase}
.news-v2-meta span{border-left:3px solid var(--red);padding-left:12px;color:var(--red)}
.featured-news-body .news-v2-meta{color:#aaa!important}
.featured-news-body h2{font-size:clamp(36px,4vw,58px);line-height:.98;text-transform:uppercase;margin:0 0 20px}
.featured-news-body>p:not(.eyebrow):not(.news-v2-meta){color:#ccc;font-size:18px;line-height:1.6;margin:0 0 28px}
.featured-news-body .btn{align-self:flex-start}
.news-overview-head{margin-bottom:28px}
.news-overview-head .eyebrow{margin-bottom:10px}
.news-overview-head h2{margin:0;font-size:clamp(38px,5vw,66px);line-height:.95;text-transform:uppercase}
.news-overview-head h2 span{color:var(--red)}
.news-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.news-v2-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #ddd;box-shadow:0 16px 40px rgba(0,0,0,.06);transition:transform .2s ease,box-shadow .2s ease}
.news-v2-card:hover{transform:translateY(-4px);box-shadow:0 24px 50px rgba(0,0,0,.11)}
.news-v2-media{display:block;aspect-ratio:16/9;overflow:hidden;background:#111}
.news-v2-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.news-v2-card:hover .news-v2-media img{transform:scale(1.035)}
.news-v2-body{padding:25px 26px 28px;display:flex;flex:1;flex-direction:column}
.news-v2-body h3{margin:0 0 14px;font-size:clamp(25px,2vw,31px);line-height:1.02;text-transform:uppercase}
.news-v2-body>p:not(.news-v2-meta){margin:0 0 22px;color:#555;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.news-v2-link{margin-top:auto;font-size:13px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase}
.news-v2-link span{color:var(--red);margin-left:5px;font-size:18px}
.news-no-results,.news-load-error{padding:42px;border:1px solid #ddd;border-left:6px solid var(--red);background:#fff}
.news-no-results strong{display:block;font-size:28px;text-transform:uppercase}
.news-no-results span{display:block;margin:8px 0 20px;color:#666}
.news-no-results button{border:0;background:#111;color:#fff;padding:14px 18px;font:inherit;font-weight:1000;text-transform:uppercase;cursor:pointer}
@media(max-width:1100px){
  .news-hero-layout{grid-template-columns:1fr 1.08fr;max-height:none}
  .news-hero-content,.news-hero-image{min-height:370px}
  .news-filter-panel{grid-template-columns:180px minmax(240px,.65fr) minmax(0,1fr)}
  .featured-news{grid-template-columns:1fr 1fr}
  .news-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  .news-hero-layout{grid-template-columns:1fr}
  .news-hero-content{min-height:300px;padding:42px 22px 38px}
  .news-hero-content h1{font-size:clamp(52px,15vw,78px)}
  .news-hero-image{min-height:230px}
  .news-filter-wrap{width:100%}
  .news-filter-panel{display:grid;grid-template-columns:170px 1fr}
  .news-category-row{grid-column:1/-1;border-top:1px solid #ddd;padding:12px 14px}
  .news-search input{min-height:72px}
  .featured-news{grid-template-columns:1fr}
  .featured-news-media{min-height:0;aspect-ratio:16/9}
}
@media(max-width:560px){
  .news-hero-content{min-height:275px}
  .news-hero-content h1{font-size:50px}
  .news-hero-content>p:last-child{margin-top:18px;font-size:16px}
  .news-hero-image{min-height:205px}
  .news-filter-panel{display:block}
  .news-filter-heading{min-height:65px;padding:15px 18px}
  .news-search{border-right:0;border-bottom:1px solid #ddd}
  .news-search input{min-height:62px;padding-left:18px}
  .news-category-row:after{content:"";position:absolute;right:56px;top:12px;bottom:12px;width:34px;pointer-events:none;background:linear-gradient(90deg,transparent,#fff)}
  .news-page-section{padding:28px 0 70px}
  .featured-news{margin-bottom:54px}
  .featured-news-body{padding:28px 24px 32px}
  .featured-news-body h2{font-size:34px}
  .featured-news-body>p:not(.eyebrow):not(.news-v2-meta){font-size:16px}
  .news-card-grid{grid-template-columns:1fr;gap:18px}
  .news-v2-body{padding:22px}
}

/* Eindcorrecties nieuws v2.1 */
body .news-hero-layout{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);height:350px;max-height:none;background:#f4f4f2}
body .news-hero-content{min-height:0;padding:42px max(32px,calc((100vw - var(--max))/2));padding-right:44px;color:#111}
body .news-hero-content h1{font-size:clamp(48px,5.2vw,78px);line-height:.9}
body .news-hero-content>p:last-child{margin-top:20px;color:#555;font-size:18px}
body .news-hero-image{min-height:0}
body .featured-news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:62px}
body .featured-news{grid-template-columns:44% 56%;min-height:290px;margin:0;background:#fff;color:#111;border:1px solid #ddd;box-shadow:0 15px 40px rgba(0,0,0,.07)}
body .featured-news-media{min-height:290px}
body .featured-news-body{padding:30px}
body .featured-news-body h2{font-size:clamp(26px,2.25vw,36px);line-height:1.02}
body .featured-news-body>p:not(.eyebrow):not(.news-v2-meta){color:#555;font-size:15px;line-height:1.5}
body .news-detail-card{max-width:1180px;background:transparent;box-shadow:none;border:0}
body .news-detail-main-img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;margin:0}
@media(max-width:980px){
  body .featured-news{grid-template-columns:1fr}
  body .featured-news-media{min-height:0;aspect-ratio:16/9}
}
@media(max-width:760px){
  body .news-hero-layout{height:auto;grid-template-columns:1fr}
  body .news-hero-content{padding:34px 22px 30px;min-height:220px}
  body .news-hero-content h1{font-size:52px}
  body .news-hero-image{height:210px;min-height:210px}
  body .featured-news-grid{grid-template-columns:1fr;gap:18px}
  body .featured-news{grid-template-columns:42% 58%;min-height:230px}
  body .featured-news-media{min-height:230px;aspect-ratio:auto}
  body .featured-news-body{padding:22px}
  body .featured-news-body h2{font-size:27px}
  body .featured-news-body>p:not(.eyebrow):not(.news-v2-meta){display:none}
}
@media(max-width:520px){
  body .featured-news{grid-template-columns:1fr}
  body .featured-news-media{min-height:0;aspect-ratio:16/9}
}

/* =========================================================
   NIEUWS V3 — definitieve detail- en herocorrecties
   Bewust als laatste blok: voorkomt overschrijven door legacy CSS.
   ========================================================= */
body .news-hero-layout{
  height:430px;
  grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);
}
body .news-hero-content{
  padding-top:54px;
  padding-bottom:68px;
}
body .news-hero-image{
  height:430px;
}

body .news-detail-page{
  background:#f4f4f2;
}
body .news-detail-page .news-detail-hero{
  padding:38px 0 24px;
  background:#f4f4f2;
}
body .news-detail-page .news-detail-hero .container{
  width:min(1180px,calc(100% - 64px));
  max-width:1180px;
}
body .news-detail-page .news-detail-hero .eyebrow{
  margin-bottom:12px;
  font-size:14px;
}
body .news-detail-page .news-detail-hero h1{
  max-width:1040px;
  margin:0;
  font-size:clamp(34px,3.45vw,54px);
  line-height:1.01;
  letter-spacing:-.025em;
  overflow-wrap:normal;
  word-break:normal;
}
body .news-detail-page .news-detail-section{
  padding:0 0 86px;
  background:#f4f4f2;
}
body .news-detail-page .news-detail-section>.container{
  width:min(1180px,calc(100% - 64px));
}
body .news-detail-page .news-detail-card{
  width:100%;
  max-width:none;
  margin:0;
  overflow:visible;
}
body .news-detail-page .news-detail-intro{
  display:grid;
  grid-template-columns:minmax(300px,39%) minmax(0,1fr);
  gap:42px;
  align-items:start;
  padding:22px 0 38px;
  border-bottom:1px solid #ccc;
}
body .news-detail-page .news-detail-main-img{
  display:block;
  width:100%;
  height:310px;
  aspect-ratio:auto;
  object-fit:cover;
}
body .news-detail-page .news-detail-intro-copy{
  min-width:0;
  padding:2px 0 0;
}
body .news-detail-page .news-detail-lead{
  margin:15px 0 13px;
  font-size:18px;
  line-height:1.48;
}
body .news-detail-page .news-tags{
  margin:10px 0 16px;
}
body .news-detail-page .news-tags span{
  background:#fff;
  color:#111;
  border:1px solid #bbb;
}
body .news-detail-top-nav{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:10px 0 16px;
}
body .news-detail-top-nav .btn{
  min-height:44px;
  padding:0 17px;
  font-size:11px;
}
body .news-detail-page .news-share{
  gap:7px;
  margin-top:0;
}
body .news-detail-page .news-share-label{
  flex:0 0 100%;
  margin:0 0 2px;
}
body .news-detail-page .news-share a{
  width:40px;
  height:40px;
}
body .news-detail-page .news-share img{
  width:18px;
  height:18px;
}
body .news-detail-page .news-share .share-mail{
  font-size:21px;
}

/* Nieuws v4: compacte uitgelichte kaarten */
body .featured-news-grid{
  width:100%;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:30px;
  margin-bottom:56px;
}
body .featured-news{
  width:100%;
  min-width:0;
  min-height:330px;
  grid-template-columns:minmax(0,44%) minmax(0,56%);
  overflow:hidden;
}
body .featured-news-media{
  min-width:0;
  min-height:330px;
}
body .featured-news-body{
  min-width:0;
  padding:28px 30px;
  justify-content:center;
}
body .featured-news-body .eyebrow{
  margin-bottom:12px;
}
body .featured-news-body h2{
  max-width:100%;
  margin-bottom:22px;
  font-size:clamp(25px,1.75vw,32px);
  line-height:1.02;
  overflow-wrap:anywhere;
  word-break:normal;
}
body .featured-news-body>p:not(.eyebrow):not(.news-v2-meta){
  display:none;
}
body .featured-news-body .news-v2-link{
  margin-top:0;
}

@media(max-width:1100px){
  body .featured-news-grid{gap:20px}
  body .featured-news{
    min-height:0;
    grid-template-columns:1fr;
  }
  body .featured-news-media{
    min-height:0;
    aspect-ratio:16/8;
  }
  body .featured-news-body{padding:24px}
}

@media(max-width:700px){
  body .featured-news-grid{
    grid-template-columns:1fr;
    gap:18px;
    margin-bottom:44px;
  }
  body .featured-news{
    grid-template-columns:42% 58%;
  }
  body .featured-news-media{
    min-height:220px;
    aspect-ratio:auto;
  }
  body .featured-news-body{padding:20px}
  body .featured-news-body h2{
    font-size:24px;
    margin-bottom:18px;
  }
}

@media(max-width:480px){
  body .featured-news{grid-template-columns:1fr}
  body .featured-news-media{
    min-height:0;
    aspect-ratio:16/9;
  }
}
body .news-detail-page .news-article-below{
  max-width:820px;
  margin:42px auto 0;
}

@media(max-width:820px){
  body .news-hero-layout{
    height:auto;
  }
  body .news-hero-image{
    height:245px;
  }
  body .news-detail-page .news-detail-hero .container,
  body .news-detail-page .news-detail-section>.container{
    width:min(1180px,calc(100% - 42px));
  }
  body .news-detail-page .news-detail-intro{
    grid-template-columns:1fr;
    gap:24px;
  }
  body .news-detail-page .news-detail-main-img{
    height:auto;
    aspect-ratio:16/9;
  }
}

@media(max-width:560px){
  body .news-hero-content{
    padding-top:38px;
    padding-bottom:42px;
  }
  body .news-hero-image{
    height:220px;
  }
  body .news-detail-page .news-detail-hero{
    padding:28px 0 18px;
  }
  body .news-detail-page .news-detail-hero .container,
  body .news-detail-page .news-detail-section>.container{
    width:min(1180px,calc(100% - 30px));
  }
  body .news-detail-page .news-detail-hero h1{
    font-size:clamp(31px,9.6vw,42px);
  }
  body .news-detail-page .news-detail-intro{
    padding-top:14px;
  }
  body .news-detail-top-nav .btn{
    flex:1 1 180px;
  }
}
/* Partnerships landing page */
.partnership-teaser{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);gap:56px;align-items:center}.partnership-teaser-image{position:relative;min-height:430px;border-left:7px solid var(--red);overflow:hidden}.partnership-teaser-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.partnership-teaser-image>div{position:absolute;left:0;right:0;bottom:0;padding:24px 28px;background:linear-gradient(0deg,rgba(0,0,0,.92),rgba(0,0,0,.25));color:#fff}.partnership-teaser-image strong,.partnership-teaser-image span{display:block}.partnership-teaser-image strong{text-transform:uppercase;font-size:24px}.partnership-teaser-image span{margin-top:6px;color:#ddd}
.partnership-page{--partner-ink:#101216;--partner-soft:#f3f5f7}.partnership-page section[id]{scroll-margin-top:calc(var(--header) + 22px)}.partnership-hero{min-height:690px;position:relative;display:flex;align-items:center;background:#090a0c;color:#fff;overflow:hidden}.partnership-hero-media{position:absolute;inset:0}.partnership-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,6,8,.96) 0%,rgba(5,6,8,.78) 52%,rgba(5,6,8,.18) 100%)}.partnership-hero-media img{width:100%;height:100%;object-fit:cover}.partnership-hero-inner{position:relative;z-index:1;padding:92px 0}.partnership-hero-copy{max-width:850px}.partnership-hero h1{max-width:900px;margin:0;font-size:clamp(54px,7.6vw,110px);line-height:.88;letter-spacing:-.035em;text-transform:uppercase}.partnership-hero-copy>p:not(.eyebrow){max-width:710px;font-size:21px;line-height:1.55;color:#e4e4e4}
.model-intro{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start;margin-bottom:42px}.model-rule{padding:26px 28px;border-left:7px solid var(--red);background:#111;color:#fff}.model-rule strong,.model-rule span{display:block}.model-rule strong{text-transform:uppercase;font-size:20px;margin-bottom:8px}.model-rule span{color:#d4d4d4;line-height:1.55}.partner-statuses{display:grid;grid-template-columns:1.08fr 1fr .94fr;gap:18px;align-items:stretch}.partner-status{position:relative;padding:34px 30px 30px;border:1px solid var(--line);border-top:7px solid #171717;background:#fff;display:flex;flex-direction:column}.partner-status.naming{border-top-color:var(--red);box-shadow:0 22px 52px rgba(0,0,0,.11)}.partner-status.event{border-top-color:#444}.status-number{position:absolute;right:22px;top:22px;color:#ddd;font-size:44px;font-weight:1000}.status-label{margin:0 0 10px;color:var(--red);font-size:12px;letter-spacing:.14em;font-weight:1000;text-transform:uppercase}.partner-status h3{position:relative;max-width:82%;font-size:31px;line-height:1;text-transform:uppercase;margin:0 0 18px}.partner-status p{color:#555;line-height:1.55}.partner-status ul,.module-adoption ul{margin:12px 0 28px;padding-left:20px;color:#383838;line-height:1.55}.partner-status li+li,.module-adoption li+li{margin-top:7px}.status-price{margin-top:auto;border-top:1px solid var(--line);padding-top:18px;font-size:17px}.price-note{margin:20px 0 0;color:#686868;font-size:14px;line-height:1.5}
.basis-list{display:grid;gap:12px}.basis-list>div{padding:22px 24px;border:1px solid var(--line);border-left:6px solid var(--red);background:#fff}.basis-list strong,.basis-list span{display:block}.basis-list strong{text-transform:uppercase;margin-bottom:6px}.basis-list span{color:#555;line-height:1.5}.module-adoption{display:grid;grid-template-columns:1.06fr .94fr;margin:40px 0 22px;border:1px solid var(--line);border-left:8px solid var(--red);background:#fff;overflow:hidden;box-shadow:var(--shadow)}.module-adoption>div{padding:40px}.module-adoption img{width:100%;height:100%;min-height:500px;object-fit:cover}.module-index{display:block;color:#ccc;font-size:42px;font-weight:1000}.module-adoption h3,.module-primary-grid h3,.module-ticketing h3,.module-compact-grid h3,.hospitality-block h3{font-size:32px;line-height:1;text-transform:uppercase;margin:8px 0 16px}.module-adoption>div>strong,.module-primary-grid strong,.module-ticketing>strong,.module-compact-grid strong,.hospitality-block>strong{color:var(--red);font-size:18px}.module-primary-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.module-primary-grid article{padding:34px;border:1px solid var(--line);border-top:6px solid #111}.module-primary-grid article>span,.module-compact-grid article>span{color:#bbb;font-weight:1000;font-size:28px}.module-primary-grid p,.module-compact-grid p{color:#555;line-height:1.55}.module-primary-grid small{display:block;margin-top:8px;color:#777}.module-ticketing{display:flex;align-items:center;justify-content:space-between;gap:30px;margin:22px 0;padding:30px 34px;background:#111;color:#fff;border-left:8px solid var(--red)}.module-ticketing h3{margin-bottom:8px}.module-ticketing p{margin:0;color:#ccc}.module-compact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.module-compact-grid article{padding:28px;border:1px solid var(--line);background:#fafafa}.hospitality-block{display:grid;grid-template-columns:1fr auto;gap:10px 40px;align-items:center;margin-top:22px;padding:30px 34px;border:1px solid var(--line);border-left:7px solid #777}.hospitality-block p{max-width:840px;color:#555;line-height:1.55}.hospitality-block small{grid-column:1/-1;color:#777}.hospitality-block .eyebrow{margin-bottom:6px}
.value-grid,.example-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}.value-grid article,.example-grid article{padding:30px;border:1px solid var(--line);border-left:7px solid var(--red);background:#fff}.value-grid span,.example-grid span{color:var(--red);font-size:12px;font-weight:1000;text-transform:uppercase;letter-spacing:.14em}.value-grid h3,.example-grid h3{font-size:26px;text-transform:uppercase;margin:10px 0}.value-grid p,.example-grid p{color:#555;line-height:1.55}.price-summary{border:1px solid var(--line);border-left:7px solid var(--red);background:#fff;padding:30px}.price-summary>div{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.price-summary span{font-weight:1000;text-transform:uppercase}.price-summary strong{color:var(--red);text-align:right}.price-summary small{display:block;margin-top:20px;color:#777;line-height:1.5}.partnership-contact{background:linear-gradient(135deg,#f6f6f6 0 56%,#eceff2 56%)}.partnership-form .consent-copy small{color:#666;line-height:1.5}.partnership-form .consent-copy a{text-decoration:underline}.partnership-form button{width:100%}
@media(max-width:1100px){.partnership-teaser,.partner-statuses,.module-adoption{grid-template-columns:1fr}.partnership-teaser-image{min-height:360px}.partner-statuses{gap:14px}.module-adoption img{min-height:360px}.model-intro{grid-template-columns:1fr}.partner-status h3{max-width:none}}
@media(max-width:760px){.partnership-hero{min-height:620px}.partnership-hero-inner{padding:62px 0}.partnership-hero h1{font-size:clamp(46px,13vw,68px);overflow-wrap:anywhere}.partnership-hero-copy>p:not(.eyebrow){font-size:18px}.partnership-hero .hero-ctas{display:grid;grid-template-columns:1fr}.partnership-hero .btn{width:100%;white-space:normal;text-align:center}.partner-statuses,.module-primary-grid,.module-compact-grid,.value-grid,.example-grid{grid-template-columns:1fr}.module-adoption>div{padding:28px 24px}.module-adoption img{min-height:250px}.module-ticketing{display:block}.module-ticketing>strong{display:block;margin-top:18px}.hospitality-block{grid-template-columns:1fr;padding:26px}.hospitality-block small{grid-column:auto}.price-summary>div{display:block}.price-summary strong{display:block;text-align:left;margin-top:6px}.partnership-contact{background:#f5f5f5}.partnership-teaser{gap:30px}.partnership-teaser-image{min-height:300px}}
@media(max-width:390px){.partner-status,.module-primary-grid article,.module-compact-grid article,.price-summary{padding-left:22px;padding-right:22px}.status-number{font-size:34px}.partner-status h3{font-size:27px}.partnership-hero h1{font-size:44px}}

/* Partnerships v2 — pakketkiezer */
.partnership-page .partnership-hero{min-height:620px}
.partnership-page .partnership-hero h1{max-width:940px;font-size:clamp(50px,6.7vw,94px)}
.package-lead{max-width:900px;margin-bottom:34px}
.package-slider{overflow:hidden;border:1px solid var(--line);background:#f4f5f6;box-shadow:0 24px 60px rgba(0,0,0,.09)}
.package-slider-nav{display:grid;grid-template-columns:54px 1fr 54px;align-items:stretch;background:#111;color:#fff}
.package-arrow,.package-tabs button,.package-dots button{appearance:none;border:0;font:inherit;cursor:pointer}
.package-arrow{background:#111;color:#fff;font-size:24px;transition:background .2s ease}
.package-arrow:hover,.package-arrow:focus-visible{background:var(--red)}
.package-tabs{display:grid;grid-template-columns:repeat(3,1fr)}
.package-tabs button{min-height:70px;padding:12px 18px;background:#111;color:#aaa;border-left:1px solid #333;border-right:1px solid #333;font-size:13px;font-weight:1000;letter-spacing:.055em;text-transform:uppercase}
.package-tabs button[aria-selected="true"]{background:var(--red);color:#fff}
.package-viewport{overflow:hidden;touch-action:pan-y}
.package-track{display:flex;width:300%;transform:translateX(-33.333333%);transition:transform .5s cubic-bezier(.22,.8,.22,1)}
.package-slide{flex:0 0 33.333333%;width:33.333333%;padding:38px}
.package-slide-head{display:grid;grid-template-columns:minmax(280px,.8fr) 1.2fr;gap:50px;align-items:end;margin-bottom:28px}
.package-slide-head span,.package-level{display:block;color:var(--red);font-size:11px;font-weight:1000;letter-spacing:.14em;text-transform:uppercase}
.package-slide-head h3{margin:6px 0 0;font-size:clamp(32px,4vw,52px);line-height:.95;text-transform:uppercase}
.package-slide-head p{margin:0;color:#555;line-height:1.55}
.package-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}
.package-cards article{display:flex;flex-direction:column;min-width:0;padding:28px;background:#fff;border-top:6px solid #222}
.package-cards article.featured{border-top-color:var(--red);box-shadow:0 18px 42px rgba(0,0,0,.1)}
.package-cards h4{margin:8px 0 13px;font-size:25px;line-height:1;text-transform:uppercase}
.package-cards p{margin:0 0 24px;color:#555;line-height:1.5}
.package-cards strong{display:block;margin-top:auto;padding-top:17px;border-top:1px solid var(--line);color:var(--red);font-size:20px}
.package-dots{display:flex;justify-content:center;gap:9px;padding:0 20px 24px}
.package-dots button{width:28px;height:4px;padding:0;background:#bbb}
.package-dots button.active{background:var(--red)}
.package-explain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}
.package-explain-grid article{padding:30px;background:#fff;border-left:6px solid #222}
.package-explain-grid article:nth-child(2){border-left-color:var(--red)}
.package-explain-grid span{color:#ccc;font-size:36px;font-weight:1000}
.package-explain-grid h3{margin:8px 0 12px;font-size:27px;text-transform:uppercase}
.package-explain-grid p{margin:0;color:#555;line-height:1.55}
.partnership-value .btn{margin-top:18px}
.partner-outcomes{display:grid;gap:12px}
.partner-outcomes>div{padding:21px 24px;background:#111;color:#fff;border-left:6px solid var(--red)}
.partner-outcomes strong,.partner-outcomes span{display:block}
.partner-outcomes strong{text-transform:uppercase;margin-bottom:5px}
.partner-outcomes span{color:#ccc;line-height:1.45}
@media(max-width:900px){.package-slide{padding:28px}.package-slide-head{grid-template-columns:1fr;gap:12px}.package-cards{grid-template-columns:1fr}.package-explain-grid{grid-template-columns:1fr}.package-cards article{min-height:0}.package-tabs button{font-size:11px;padding:10px}}
@media(max-width:600px){.partnership-page .partnership-hero{min-height:570px}.partnership-page .partnership-hero h1{font-size:clamp(42px,12vw,58px)}.package-slider-nav{grid-template-columns:44px 1fr 44px}.package-tabs{display:flex;overflow:hidden}.package-tabs button{display:none;flex:1;border:0}.package-tabs button[aria-selected="true"]{display:block}.package-slide{padding:22px 18px}.package-slide-head h3{font-size:34px}.package-cards h4{font-size:23px}.package-cards article{padding:24px 22px}.package-explain-grid article{padding:26px 23px}}
@media(prefers-reduced-motion:reduce){.package-track{transition:none}}
