*{box-sizing:border-box}body{margin:0;background:#f7f7ef;color:#182f29;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #d4782c;outline-offset:4px}header{max-width:1050px;margin:auto;padding:24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d9dfd3}.brand{font-size:29px;font-weight:900;letter-spacing:-1px;line-height:1;text-decoration:none;color:#143e35;display:flex;gap:9px;align-items:center}.brand span{font-size:9px;letter-spacing:1px;max-width:65px}.tag{font-size:12px;color:#52655c}main{max-width:1050px;margin:auto;padding:36px 24px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:2px;color:#5c745d}h1{font-size:clamp(38px,6vw,62px);letter-spacing:-2px;line-height:1.04;margin:12px 0 18px}.intro>p:last-child{color:#596b61;font-size:16px;line-height:1.6}.scope{display:inline-block;padding:8px 12px;background:#e8ecdf;border-radius:30px;font-size:12px;margin:5px 0 22px}.controls{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{border:1px solid #d5decd;background:#fff;border-radius:20px;padding:18px;text-align:left;color:inherit;box-shadow:0 3px 0 #e6eadd;transition:background .15s}.card[aria-pressed=true]{border-color:#58816b;background:#f4f8ee}.cardhead{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700}.number{font-size:10px;color:#748677}.switch{margin-left:auto;width:32px;height:19px;border-radius:12px;background:#c6cdc4;padding:3px}.switch:after{content:"";display:block;width:13px;height:13px;background:white;border-radius:50%;transition:transform .15s}.card[aria-pressed=true] .switch{background:#315e49}.card[aria-pressed=true] .switch:after{transform:translateX(13px)}.sign{height:160px;display:flex;align-items:center;justify-content:center}.sign img{max-width:95%;max-height:130px;object-fit:contain}.card strong{display:block;font-size:15px}.hint{display:block;font-size:11px;color:#647166;margin-top:6px}.question{background:#173f34;color:white;border-radius:22px;margin-top:24px;padding:24px}.questiontop{display:flex;justify-content:space-between;gap:15px;align-items:center}h2{font-size:18px;margin:0;font-weight:700;letter-spacing:-.3px}.questiontop>span{font-size:13px;color:#b9ccba;white-space:nowrap}.answers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.answers button{border:1px solid #7a9580;background:#edf3df;color:#16372c;border-radius:14px;font-weight:800;font-size:36px;min-height:78px}.answers button.selected{background:#dcefa2;outline:3px solid #dcefa2;outline-offset:2px}#result{margin-top:18px;min-height:44px;font-size:14px;line-height:1.6;color:#dbe7d7}#result strong{display:block;font-size:17px;color:white}.actions{display:flex;justify-content:space-between;gap:12px;margin:18px 0 28px}.actions button{border:0;background:none;color:#214a39;min-height:44px;font-size:13px;padding:8px 0;font-weight:650}details{border-top:1px solid #d3dccd;border-bottom:1px solid #d3dccd;padding:18px 0;font-size:13px;color:#596a5f;line-height:1.6}summary{cursor:pointer;font-weight:700;color:#243e30}details a{color:#295940}.share{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:28px}.share>div{margin-right:auto}.share h2{font-size:17px}.share p{font-size:13px;color:#657362}.share button{min-height:44px;border-radius:10px;border:1px solid #b7c7b5;padding:10px 16px;font-size:13px;color:#204a34;background:#f7f7ef}#share{background:#315e49;border-color:#315e49;color:#fff}#share-status{font-size:12px;width:100%}footer{max-width:1050px;margin:auto;padding:24px;border-top:1px solid #d9dfd3;color:#72816f;font-size:11px;display:flex;justify-content:space-between;gap:8px}footer a{color:inherit}@media(max-width:620px){header{padding:18px}main{padding:26px 16px}.tag{font-size:10px}.controls{grid-template-columns:1fr;gap:12px}.card{display:grid;grid-template-columns:120px 1fr;column-gap:15px;padding:14px;border-radius:15px}.cardhead{grid-column:1/-1;margin-bottom:10px}.sign{grid-column:1;grid-row:2/4;height:84px}.sign img{max-height:84px;max-width:115px}.card strong{grid-column:2;align-self:end;font-size:15px}.hint{grid-column:2;align-self:start;font-size:11px;line-height:1.4}.question{padding:20px 16px;border-radius:18px}.question h2{font-size:16px}.answers button{min-height:68px;font-size:32px}.intro>p:last-child{font-size:14px}.share>div{width:100%}.share button{flex:1}footer{padding:20px 16px;flex-wrap:wrap}}
/* Compact trainer: all four controls stay together in a two-by-two grid. */
header{padding:14px 20px}main{padding:18px 20px}.intro h1{font-size:32px;letter-spacing:-1px;margin:0 0 5px;line-height:1.15}.intro>p:last-child{margin:0;font-size:13px;line-height:1.4}.scope{font-size:11px;margin:9px 0 12px;padding:5px 10px}.controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card{padding:12px;text-align:center;border-radius:14px}.cardhead{text-align:left;font-size:12px}.sign{height:108px}.sign img{max-height:95px;max-width:90%}.card strong{font-size:13px}.hint{font-size:10px;margin-top:3px}.question{margin-top:14px;padding:16px;border-radius:16px}.question h2{font-size:16px}.answers{margin-top:12px;gap:10px}.answers button{min-height:54px;font-size:28px}#result{margin-top:10px;min-height:22px;font-size:12px;line-height:1.4}#result strong{font-size:14px}.actions{margin:6px 0 12px}.share{margin-top:18px}
@media(max-width:620px){header{padding:10px 14px}.brand{font-size:23px}.brand span{font-size:8px}.tag{font-size:10px}main{padding:12px}.intro h1{font-size:25px}.intro>p:last-child{font-size:12px}.scope{font-size:10px;margin:7px 0 10px}.controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.card{display:flex;flex-direction:column;align-items:stretch;padding:9px;min-width:0}.cardhead{margin:0;font-size:11px;gap:5px}.number{display:none}.switch{flex-shrink:0}.sign{height:88px;margin:5px 0}.sign img{max-height:84px;max-width:100%}.card strong{align-self:auto;font-size:12px;line-height:1.2}.hint{display:none}.question{margin-top:10px;padding:12px}.question h2{font-size:14px}.answers{margin-top:10px}.answers button{min-height:48px;font-size:26px}.actions button{font-size:12px}.share h2{font-size:15px}}
@media(max-height:700px) and (max-width:620px){.sign{height:72px;margin:4px 0}.sign img{max-height:70px}.intro h1{font-size:22px}header{padding-top:8px;padding-bottom:8px}.scope{margin:5px 0 8px}.answers button{min-height:44px}}

/* Use the visible phone height, including Safari's expanded toolbars. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media(max-width:620px){
 body{width:100%;min-width:0}
 header{padding:7px 12px;min-height:34px}.brand{font-size:20px}.tag{display:none}
 main{padding:8px 10px;max-width:100%}.intro h1{font-size:20px;margin:0;line-height:1.2}.intro>p:last-child{display:none}
 .scope{font-size:10px;padding:3px 8px;margin:5px 0 7px}
 .controls{gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}
 .card{padding:7px;border-radius:11px;box-shadow:none;overflow:hidden}
 .cardhead{font-size:11px;gap:4px;min-height:19px}.switch{width:32px;min-width:32px}
 .sign{height:clamp(34px,calc((var(--view-height,100svh) - 350px)/2),105px);min-height:0;margin:4px 0;flex-shrink:1}
 .sign img{display:block;width:100%;height:100%;max-height:100%;max-width:100%;object-fit:contain}
 .card strong{font-size:11px;line-height:1.2;min-height:14px}.hint{display:none}
 .question{padding:10px;margin-top:8px}.questiontop{gap:5px}.question h2{font-size:13px;line-height:1.3}.questiontop>span{font-size:11px}
 .answers{gap:8px;margin-top:8px}.answers button{min-height:44px;font-size:25px;border-radius:9px;padding:2px}
 #result{margin-top:8px;min-height:17px;max-height:76px;overflow:auto;font-size:12px;line-height:1.35}#result strong{font-size:13px}
 .actions{margin:2px 0 4px;gap:6px}.actions button{min-height:44px;font-size:11px}
 details{padding:10px 0}.share{margin-top:12px}footer{padding:14px 10px}
}
@media(max-height:440px) and (min-width:621px) and (max-width:1000px){
 header{padding:6px 12px}.brand{font-size:20px}main{padding:8px 12px}.intro h1{font-size:20px}.intro>p:last-child{display:none}.scope{margin:2px 0 6px;padding:3px 8px}
 .controls{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.card{padding:7px}.cardhead{font-size:11px}.number,.hint{display:none}.sign{height:55px}.sign img{width:100%;height:100%;max-height:55px;object-fit:contain}.card strong{font-size:11px}
 .question{margin-top:7px;padding:9px}.question h2{font-size:13px}.answers{margin-top:7px}.answers button{min-height:44px;font-size:24px}#result{margin-top:5px;max-height:45px;overflow:auto}.actions{margin:0}
}

.auto-speed{text-align:center;padding:12px}.speed-title{font-size:12px;color:#dbe7d7}.speed-value{display:flex;justify-content:center;align-items:baseline;gap:8px;line-height:1;margin:5px 0}.speed-value strong{font-size:64px;font-weight:850;letter-spacing:-2px;font-variant-numeric:tabular-nums;color:#edf3df}.speed-value span{font-size:16px;color:#dbe7d7}.auto-speed #result{margin:6px 0 0;min-height:0;max-height:none;overflow:visible;font-size:12px;line-height:1.3}
@media(max-width:620px){.auto-speed{padding:10px}.speed-value strong{font-size:54px}.speed-title{font-size:11px}.auto-speed #result{font-size:11px}}
@media(max-height:440px) and (min-width:621px){.auto-speed{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px}.speed-value{margin:0}.speed-value strong{font-size:44px}.auto-speed #result{margin:0;text-align:left}}

.controls{grid-template-columns:repeat(3,minmax(0,1fr))}.card[data-control=hump][aria-pressed=false] img{opacity:.35;filter:grayscale(1)}
@media(max-width:620px){.controls{grid-template-columns:repeat(2,minmax(0,1fr))}.sign{height:clamp(48px,calc((var(--view-height,100svh) - 300px)/3),100px)}.cardhead{font-size:11px}.card strong{font-size:11px}.speed-value strong{font-size:48px}.intro h1{font-size:19px}}

header{background:white}.brand img{width:180px;height:72px;object-fit:contain}@media(max-width:620px){header{padding:3px 10px}.brand img{width:135px;height:52px}.sign{height:clamp(44px,calc((var(--view-height,100svh) - 325px)/3),96px)}}

.card[data-control=bike] img{height:100%;width:auto;max-width:none;aspect-ratio:294 / 433;object-fit:cover;object-position:right}.card[data-control=bike][aria-pressed=true] img{object-position:left}

.card[data-control=bike] .sign{position:relative}.card[data-control=bike] img{display:none}.card[data-control=bike] .sign::before{content:"";display:block;height:100%;aspect-ratio:294 / 433;background-image:url("assets/fietszone-paar.jpeg");background-size:200% 100%;background-position:right center;background-repeat:no-repeat}.card[data-control=bike][aria-pressed=true] .sign::before{background-position:left center}

header{gap:10px;align-items:center;background:white}.brand{flex-shrink:0}.brand img{width:165px;height:72px}.header-contact{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}.school-car{width:240px;max-width:60%;height:auto;display:block}.header-contact address{font-style:normal;font-size:14px;line-height:1.5;font-weight:700;white-space:nowrap;color:#173f34}.header-contact address a{color:#b91c27;text-decoration:none}@media(max-width:620px){header{gap:5px;padding:5px 8px}.brand img{width:95px;height:50px}.header-contact{gap:5px;flex:1}.school-car{width:135px;max-width:53%}.header-contact address{font-size:10px;line-height:1.45}.sign{height:clamp(40px,calc((var(--view-height,100svh) - 345px)/3),96px)}}

.title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.title-row h1{margin:0}.whatsapp-contact{width:44px;height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;background:#128c48;border-radius:50%;box-shadow:0 2px 4px #0002}.whatsapp-contact svg{width:31px;height:31px}.whatsapp-contact:hover{background:#0b743b}.whatsapp-contact:focus-visible{outline:3px solid #d4782c;outline-offset:3px}@media(max-width:620px){.title-row h1{font-size:19px}.title-row{gap:6px}.sign{height:clamp(40px,calc((var(--view-height,100svh) - 365px)/3),96px)}}

.title-row{flex-wrap:nowrap}.title-row h1{flex:1;min-width:0}.whatsapp-contact svg{width:26px;height:26px;min-width:26px}.whatsapp-contact span{display:inline}@media(max-width:620px){.title-row h1{font-size:17px;line-height:1.2}.title-row{flex-wrap:nowrap!important}.whatsapp-contact{min-width:100px!important}.sign{height:clamp(40px,calc((var(--view-height,100svh) - 365px)/3),96px)}}

header{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr);gap:14px;align-items:center;padding:10px 20px}header .brand{justify-self:start;min-width:0}header .brand img{width:165px;max-width:100%;height:auto}header .school-car{justify-self:center;width:100%;max-width:340px;height:auto}header address{justify-self:end;font-style:normal;font-size:14px;line-height:1.5;font-weight:700;white-space:nowrap;color:#173f34}header address a{color:#b91c27;text-decoration:none}@media(max-width:620px){header{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) minmax(0,1fr);padding:8px;gap:6px}header .brand img{width:110px;height:auto}header .school-car{width:100%;max-width:170px}header address{font-size:10px;line-height:1.45}}

.exam-booking{display:flex;align-items:center;justify-content:center;gap:10px;margin:10px 0 0;padding:10px 14px;min-height:44px;border-radius:10px;background:#128c48;color:white;text-decoration:none;font-size:14px;font-weight:750}.exam-booking:hover{background:#0b743b}.exam-booking:focus-visible{outline:3px solid #d4782c;outline-offset:3px}@media(max-width:620px){.exam-booking{margin-top:6px;font-size:12px;padding:8px 10px}.sign{height:clamp(36px,calc((var(--view-height,100svh) - 415px)/3),90px)}}

.whatsapp-contact{width:auto!important;min-width:130px!important}.whatsapp-contact span{max-width:85px;line-height:1.15;text-align:left}@media(max-width:620px){.whatsapp-contact{min-width:125px!important;font-size:11px!important}.sign{height:clamp(40px,calc((var(--view-height,100svh) - 365px)/3),96px)}}
