/*
Theme Name: Creative Mindset
Theme URI: https://creativemindset.nl/
Author: Creative Mindset
Description: Eigen thema voor creativemindset.nl. Beeld, spraak en interactiviteit.
Version: 2.8.0
Requires at least: 6.0
Tested up to: 7.1
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: creativemindset
*/

:root{
  --inkt:#14110F;
  --papier:#FFFFFF;
  --sein:#E3361A;
  --grijs:#6E6862;
  --lijn:rgba(20,17,15,.16);

  --p-mega:clamp(50px,8.6vw,104px);
  --p-groot:clamp(32px,5.4vw,64px);
  --p-tussen:24px;
  --p-tekst:19px;
  --p-klein:14px;

  --doek:#2A2E33;
  --doekinkt:#E8E4DC;

  --ruim:64px;
  --scene:128px;
  --nauw:64px;

  --letter:'Archivo','Helvetica Neue',Arial,sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;overflow-x:clip}
body{
  margin:0;
  background:var(--papier);
  color:var(--inkt);
  font-family:var(--letter);
  font-size:var(--p-tekst);
  font-weight:300;
  line-height:1.6;
  letter-spacing:.1px;
}
body.vast{overflow:hidden}
img{max-width:100%;display:block}

h1,h2,h3{margin:0;font-weight:800}
h1 em,h1 span,h1 b,h2 em,h2 span,h2 b,h3 span{font-size:inherit;font-style:normal}

h1{font-size:var(--p-mega);line-height:.92;letter-spacing:-.022em}
h2{font-size:var(--p-groot);line-height:.92;letter-spacing:-.022em}
h3{font-size:var(--p-tussen);font-weight:700;line-height:1.2;letter-spacing:-.01em}

p{margin:0 0 1.15em}
p:last-child{margin-bottom:0}
strong{font-weight:700}
a{color:inherit}

.houd{width:min(1240px,calc(100% - 48px));margin-inline:auto}
.sectie{padding-block:var(--ruim)}
.sectie--scene{padding-block:var(--scene)}
.top0{padding-top:0}
.lees--breed{max-width:56ch}

.sc{
  font-size:var(--p-klein);font-weight:700;letter-spacing:0;
  color:var(--sein);display:flex;align-items:center;gap:12px;margin-bottom:28px;
}
.sc em{font-style:normal;text-transform:uppercase}
.sc::after{content:"";flex:1;height:1px;background:var(--lijn);max-width:120px}
.sc b{font-weight:500;color:var(--grijs)}

.timecode{
  position:fixed;left:16px;top:50%;transform:translateY(-50%);z-index:60;
  font-size:var(--p-klein);font-weight:700;letter-spacing:.02em;
  font-variant-numeric:tabular-nums;color:var(--grijs);
  writing-mode:vertical-rl;text-orientation:mixed;
  pointer-events:none;user-select:none;
}
.omgekeerd-zicht .timecode{color:rgba(255,255,255,.55)}
@media (max-width:1180px){.timecode{display:none}}

.kop{
  position:fixed;inset:0 0 auto 0;z-index:50;height:74px;display:flex;align-items:center;
  background:var(--papier);border-bottom:1px solid var(--lijn);
  transition:transform .22s ease,opacity .22s ease;
}
.kop__in,.strip__in{display:flex;align-items:center;justify-content:space-between;gap:24px}
.merk{font-weight:800;font-size:var(--p-tussen);letter-spacing:-.02em;text-decoration:none}
.merk i{font-style:normal;color:var(--sein)}
.kop nav{display:flex;gap:26px;font-size:17px;font-weight:500;letter-spacing:-.01em}
.kop nav a{text-decoration:none;color:var(--grijs);transition:color .2s ease}
.kop nav a:hover{color:var(--inkt)}

.strip{
  position:fixed;inset:0 0 auto 0;z-index:51;height:74px;display:flex;align-items:center;
  background:var(--inkt);color:var(--papier);
  transform:translateY(-100%);transition:transform .22s ease;
}
.strip .merk{color:var(--papier)}
.strip .knop{padding:10px 20px}
body.omgeslagen .kop{box-shadow:0 1px 0 0 var(--lijn)}

.knop{
  display:inline-block;padding:14px 24px;
  font-size:17px;font-weight:700;letter-spacing:-.01em;
  text-decoration:none;cursor:pointer;font-family:inherit;
  background:var(--sein);color:var(--papier);border:2px solid var(--sein);
  transition:background-color .12s steps(1),color .12s steps(1),border-color .12s steps(1);
}
.knop:hover{background:var(--papier);color:var(--sein)}
.knop--leeg{background:transparent;color:var(--inkt);border-color:var(--inkt)}
.knop--leeg:hover{background:var(--inkt);color:var(--papier)}
.knoppen{display:flex;flex-wrap:wrap;gap:20px;margin-top:40px}

.hero{padding-top:calc(74px + var(--scene));padding-bottom:var(--scene)}
.hero__raster{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:var(--nauw);align-items:end}
.hero__beeld{position:relative;margin-right:calc((100vw - min(1240px,100vw - 48px)) / -2)}
.hero__beeld img{width:100%;height:clamp(380px,52vw,600px);object-fit:cover;object-position:50% 18%;filter:grayscale(1) contrast(1.06)}
.hero__bijschrift{
  position:absolute;left:0;bottom:0;background:var(--sein);color:var(--papier);
  padding:10px 16px;font-size:var(--p-klein);font-weight:700;letter-spacing:0;
}
.hero p.lead{margin-top:32px;max-width:44ch}

.film{position:relative;display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;text-align:left;font-family:inherit;color:inherit}
.film img{width:100%;object-fit:cover;filter:grayscale(1) contrast(1.05);transition:filter .25s ease}
.film:hover img{filter:grayscale(0) contrast(1)}
.film__groot img{height:clamp(240px,34vw,420px)}
.film__laag{position:absolute;inset:auto 0 0 0;padding:28px;background:linear-gradient(to top,rgba(20,17,15,.82),rgba(20,17,15,0))}
.film__laag span{display:block;color:#fff;font-weight:700;font-size:var(--p-tussen);line-height:1.2;letter-spacing:-.01em;max-width:26ch}
.speel{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:88px;height:88px;border-radius:50%;background:var(--sein);color:#fff;
  display:grid;place-items:center;font-size:26px;line-height:1;
  transition:transform .18s ease;
}
.film:hover .speel{transform:translate(-50%,-50%) scale(1.08)}

.strook{
  display:flex;gap:28px;margin-top:var(--nauw);
  overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x proximity;
  padding-bottom:20px;
  margin-right:calc((100vw - min(1240px,100vw - 48px)) / -2);
  padding-right:calc((100vw - min(1240px,100vw - 48px)) / 2);
  scrollbar-width:thin;
}
.strook > article{flex:0 0 clamp(210px,22vw,268px);scroll-snap-align:start}
.strook::-webkit-scrollbar{height:6px}
.strook::-webkit-scrollbar-thumb{background:var(--lijn)}
.film__staand img{aspect-ratio:9/16;height:auto}
.strook h3{margin:20px 0 8px}
.strook p.uitleg{color:var(--grijs);font-size:17px}

.lichtbak{
  position:fixed;inset:0;z-index:100;display:none;
  background:rgba(20,17,15,.94);
  padding:24px;overflow-y:auto;-webkit-overflow-scrolling:touch;
}
.lichtbak[open],.lichtbak.aan{display:grid;place-items:center}
.lichtbak__kader{width:min(1100px,100%);margin:auto}
.lichtbak__kader iframe{width:100%;aspect-ratio:16/9;border:0;display:block;background:#000}
.lichtbak__kader.staand{width:min(430px,100%)}
.lichtbak__kader.staand iframe{aspect-ratio:9/16;width:100%}
.lichtbak__balk{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:16px;color:#fff}
.lichtbak__balk p{margin:0;font-weight:700;font-size:var(--p-tussen);letter-spacing:-.01em}
.dicht{
  background:none;border:1px solid rgba(255,255,255,.5);color:#fff;cursor:pointer;font-family:inherit;
  padding:10px 18px;font-size:17px;font-weight:700;letter-spacing:-.01em;
  transition:background-color .18s ease;flex:none;
}
.dicht:hover{background:var(--sein);border-color:var(--sein)}

.drie{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--nauw);margin-top:var(--nauw)}
.drie h3{margin:24px 0 12px}
.bol{width:74px;height:74px;border-radius:50%;background:var(--sein);color:var(--papier);display:grid;place-items:center;font-size:var(--p-tussen);font-weight:800}
.bol--leeg{background:transparent;color:var(--inkt);border:1px solid var(--inkt)}

.maak{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--nauw);margin-top:var(--nauw)}
.maak article{border-top:1px solid var(--lijn);padding-top:24px}
.maak h3{margin-bottom:10px}
.maak .num{font-size:var(--p-tussen);font-weight:800;color:var(--sein);display:block;margin-bottom:8px;font-variant-numeric:tabular-nums}

.omgekeerd{background:var(--inkt);color:var(--papier)}
.doek{background:var(--doek);color:var(--doekinkt)}
.doek p{color:rgba(232,228,220,.86)}
.doek .stap{border-top-color:rgba(232,228,220,.24)}
.doek .stap p{color:rgba(232,228,220,.78)}
.doek .sc b{color:rgba(232,228,220,.6)}
.doek h2{color:#fff}
.omgekeerd .sc b{color:rgba(255,255,255,.55)}
.stappen{margin-top:var(--nauw);border-top:1px solid rgba(255,255,255,.22)}
.stap{display:grid;grid-template-columns:150px minmax(0,1fr);gap:0 28px;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.22)}
.stap span{align-self:start;grid-column:1;grid-row:1 / span 2}
.stap h3{grid-column:2;margin-bottom:6px}
.stap p{grid-column:2}
.stap p{max-width:64ch}
@media (max-width:700px){
  .stap{grid-template-columns:1fr;gap:4px}
  .stap span,.stap h3,.stap p{grid-column:1;grid-row:auto}
}
.stap span{display:block;font-size:var(--p-klein);font-weight:700;color:var(--sein);margin-bottom:12px}
.stap h3{margin-bottom:10px}
.stap p{color:rgba(255,255,255,.78)}

.werk{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--nauw);margin-top:var(--nauw)}
.werk figure{margin:0}
.werk img{width:100%;height:280px;object-fit:cover;object-position:top center;border:2px solid var(--inkt)}
.werk figcaption{margin-top:20px}
.werk h3{margin-bottom:8px}

.aanvraag{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--nauw);align-items:start}
form{display:grid;gap:24px}
.veld{display:grid;gap:8px}
label{font-size:var(--p-klein);font-weight:700}
input,textarea{
  font-family:inherit;font-size:var(--p-tekst);font-weight:300;color:var(--inkt);
  background:var(--papier);border:0;border-bottom:1px solid var(--inkt);padding:12px 0;
}
input:focus,textarea:focus{outline:2px solid var(--sein);outline-offset:4px}
textarea{resize:vertical;min-height:120px;border:1px solid var(--inkt);padding:12px}
.duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}

.voet{background:var(--inkt);color:var(--papier)}
.voet a{color:var(--papier)}
.voet .sc b{color:rgba(255,255,255,.55)}
.voet__raster{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--nauw);align-items:center}
.voet img{width:100%;height:clamp(300px,34vw,420px);object-fit:cover;object-position:50% 22%;filter:grayscale(1)}
.voet h2{margin-bottom:24px}
.voet p{color:rgba(255,255,255,.78)}
.voet .groot{font-size:var(--p-tussen);font-weight:700;color:var(--papier);letter-spacing:-.01em}
.slot{
  border-top:1px solid rgba(255,255,255,.2);margin-top:32px;padding-top:28px;
  display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;
  font-size:var(--p-klein);color:rgba(255,255,255,.55);
}
.slot a{color:rgba(255,255,255,.55);text-decoration:none}
.slot a:hover{color:#fff}

@media (max-width:980px){
  :root{--ruim:48px;--scene:88px;--nauw:44px}
  .hero__raster,.aanvraag,.voet__raster{grid-template-columns:1fr}
  .hero__beeld{margin-right:0;order:-1}
  .drie,.maak,.stappen,.werk{grid-template-columns:1fr}
  .strook > article{flex-basis:64vw}
  .kop nav{display:none}
  .kop{height:64px}
  .hero{padding-top:calc(64px + var(--nauw))}
  .werk img{height:auto}

  .lichtbak__kader.staand iframe{aspect-ratio:9/16;width:100%;max-height:none}
}
@media (max-width:560px){
  .duo{grid-template-columns:1fr}
  .knoppen .knop{width:100%;text-align:center}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

.honing{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cm-melding{margin:20px 0 0;font-size:17px;min-height:1.6em}
.cm-melding--bezig{color:var(--grijs)}
.cm-melding--goed{color:#136c39;font-weight:700}
.cm-melding--fout{color:var(--sein);font-weight:700}
.wp-block-image img{height:auto}

.wijzer{border:2px solid var(--inkt);background:var(--papier);margin-top:var(--nauw)}
.wijzer__balk{display:flex;border-bottom:1px solid var(--inkt)}
.wijzer__balk span{flex:1;height:6px;background:transparent;border-right:1px solid var(--lijn)}
.wijzer__balk span:last-child{border-right:0}
.wijzer__balk span.klaar{background:var(--sein)}
.wijzer__binnen{padding:clamp(24px,4vw,48px)}
.wijzer__tel{font-size:var(--p-klein);font-weight:700;color:var(--sein);margin:0 0 20px}
.wijzer h2:focus{outline:none}
.wijzer h2:focus-visible{outline:2px solid var(--sein);outline-offset:6px}
.wijzer h2{font-size:var(--p-groot);line-height:.95;letter-spacing:-.022em;font-weight:800;margin-bottom:16px}
.wijzer .waarom{color:var(--grijs);max-width:52ch;margin-bottom:28px}
.wijzer textarea,.wijzer input[type=text]{width:100%;border:1px solid var(--inkt);padding:14px;font-family:inherit;font-size:var(--p-tekst);font-weight:300}
.wijzer .teller{font-size:var(--p-klein);font-weight:700;color:var(--grijs);margin-top:10px}
.wijzer .teller.vol{color:var(--sein)}
.keuzes{display:grid;gap:12px;margin-top:4px}
.keuze{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--lijn);padding:16px 18px;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}
.keuze:hover{border-color:var(--inkt)}
.keuze input{margin:4px 0 0;accent-color:var(--sein);flex:none}
.keuze b{display:block;font-weight:700}
.keuze small{color:var(--grijs);font-size:17px;line-height:1.5}
.keuze:has(input:checked){border-color:var(--inkt);background:rgba(227,54,26,.06)}
.wijzer__voet{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:32px}
.terug{background:none;border:0;font-family:inherit;font-size:17px;font-weight:500;letter-spacing:-.01em;color:var(--grijs);cursor:pointer;padding:16px 0}
.terug:hover{color:var(--inkt)}
.gevolg{border-left:3px solid var(--sein);padding:2px 0 2px 18px;margin-top:24px;color:var(--grijs)}
.gevolg b{color:var(--inkt)}

.uitslag h2{margin-bottom:24px}
.uitslag dl{margin:0;border-top:1px solid var(--lijn)}
.uitslag dt{font-size:var(--p-klein);font-weight:700;color:var(--sein);padding-top:20px}
.uitslag dd{margin:6px 0 20px;border-bottom:1px solid var(--lijn);padding-bottom:20px}
.uitslag dd:last-of-type{border-bottom:0}

@media (max-width:560px){
  .wijzer__voet{gap:10px}
  .wijzer__voet .knop{width:100%;text-align:center}
}
@media print{
  .kop,.strip,.leeslijn,.wijzer__voet,.voet,form{display:none!important}
  .wijzer{box-shadow:none}
}

.reken{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:var(--nauw);align-items:start;margin-top:var(--nauw)}
.reken fieldset{border:0;padding:0;margin:0 0 32px}
.reken legend{padding:0;font-size:17px;font-weight:700;letter-spacing:-.01em;color:var(--sein);margin-bottom:14px}
.uitkomst{border:2px solid var(--inkt);position:sticky;top:110px}
.uitkomst__kop{background:var(--inkt);color:var(--papier);padding:20px 24px}
.uitkomst__kop p{margin:0;font-size:17px;font-weight:700;letter-spacing:-.01em}
.uitkomst__binnen{padding:24px}
.groot{font-size:clamp(40px,6vw,72px);line-height:.92;font-weight:800;letter-spacing:-.022em;display:block}
.groot small{display:block;font-size:17px;font-weight:500;color:var(--grijs);margin-top:8px}
.uitkomst hr{border:0;border-top:1px solid var(--lijn);margin:24px 0}
.split{display:flex;justify-content:space-between;gap:16px;padding:8px 0;font-size:17px}
.split b{font-weight:700;white-space:nowrap}
.aanname{font-size:17px;color:var(--grijs);line-height:1.55}
.aanname b{color:var(--inkt);font-weight:700}

@media (max-width:980px){
  .reken{grid-template-columns:1fr}
  .uitkomst{position:static}
}

.shotlist{margin-top:var(--nauw);border-top:1px solid var(--lijn)}
.shotlist > div{display:grid;grid-template-columns:56px minmax(0,1fr);gap:0 20px;padding:18px 0;border-bottom:1px solid var(--lijn)}
.shotlist .nr{font-size:var(--p-tussen);font-weight:800;color:var(--sein);line-height:1.1;font-variant-numeric:tabular-nums}
.shotlist h3{margin-bottom:8px}
.shotlist p{max-width:62ch}
.shotlist--stap .nr{color:var(--sein)}
@media (max-width:560px){
  .shotlist > div{grid-template-columns:1fr;gap:6px}
}

.kruis{margin-top:var(--nauw);border-top:1px solid var(--lijn);padding-top:28px}
.kruis p{max-width:64ch}
.kruis a{font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.kruis a:hover{color:var(--sein)}

.vragen{margin-top:var(--nauw);columns:2;column-gap:var(--nauw)}
.vragen > div{break-inside:avoid;margin-bottom:32px}
.vragen h3{margin-bottom:8px}
.vragen p{max-width:52ch}
@media (max-width:900px){.vragen{columns:1}}

/* Bij een portret snijdt cover door het hoofd zodra het vak lager wordt dan de foto.
   Daarom staat de uitsnede bij mensen altijd hoog. */
.hero__beeld img,
.voet img,
.film__staand img{object-position:50% 18%}

.shotlist--donker{border-top-color:rgba(232,228,220,.24);margin-top:32px}
.shotlist--donker > div{border-bottom-color:rgba(232,228,220,.24);grid-template-columns:170px minmax(0,1fr)}
.shotlist--donker .nr{color:#fff;font-size:var(--p-tussen);font-weight:800;letter-spacing:-.01em}
.shotlist--donker h3{color:#fff}
@media (max-width:560px){.shotlist--donker > div{grid-template-columns:1fr}}

.shotlist--donker{border-top-color:rgba(232,228,220,.24);margin-top:32px}
.shotlist--donker > div{border-bottom-color:rgba(232,228,220,.24);grid-template-columns:170px minmax(0,1fr)}
.shotlist--donker .nr{color:#fff;font-size:var(--p-tussen);font-weight:800;letter-spacing:-.01em}
.shotlist--donker h3{color:#fff}
@media (max-width:560px){.shotlist--donker > div{grid-template-columns:1fr}}

.shotlist--donker .nr small{display:block;font-size:17px;font-weight:500;color:rgba(232,228,220,.62);margin-top:6px;letter-spacing:0}
