/* Keep the document fixed to the visual viewport on touchscreens. The
   section navigation remains its own horizontal scroll container. */
html{width:100%;max-width:100%;overflow-x:clip;overscroll-behavior-x:none;background:var(--paper)}
body{width:100%;max-width:100%;overflow-x:clip;overscroll-behavior-x:none;position:relative}
.site-header,main,.site-footer{max-width:100%;overflow-x:clip}
@supports not (overflow:clip){html,body,.site-header,main,.site-footer{overflow-x:hidden}}

/* Shared additions for the photo pages and the expanded footer. */
.footer-main.footer-contact-layout{grid-template-columns:minmax(170px,.65fr) minmax(260px,.8fr) minmax(300px,1.25fr);align-items:start;gap:clamp(34px,6vw,82px)}
.footer-intro{display:grid;gap:18px}
.footer-contact-list{display:grid;gap:7px}
.footer-contact-list a{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:13px;min-height:52px;color:#ffffffc7;padding:5px 8px 5px 0;transition:color .18s,transform .18s}
.footer-contact-list a:hover{color:var(--lime);transform:translateX(3px)}
.footer-contact-icon{width:42px;height:42px;border:1px solid #ffffff2b;color:var(--lime);display:grid;place-items:center}
.footer-contact-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.footer-contact-icon .brand-icon{fill:currentColor;stroke:none}
.footer-contact-text{display:grid;gap:2px;min-width:0}
.footer-contact-text small{color:#ffffff73;font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.footer-contact-text strong{font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.footer-bottom .footer-credit{justify-self:end}
@media (width<=900px){.footer-main.footer-contact-layout{grid-template-columns:1fr 1.6fr}.footer-intro{grid-column:1}.footer-contact-list{grid-column:2;grid-row:1}.footer-bottom .footer-credit{justify-self:start}}
@media (width<=600px){.footer-main.footer-contact-layout{grid-template-columns:1fr}.footer-intro,.footer-contact-list{grid-column:auto;grid-row:auto}.footer-contact-list{margin-top:6px}.footer-contact-list a{min-height:50px}.footer-bottom .footer-credit{justify-self:start}}

/* Prevent competing smooth-scroll animations when a mobile anchor is used. */
@media (width<=850px){.mobile-section-nav{scroll-behavior:auto;padding-inline:10px}}

body.menu-scroll-locked{overflow:hidden!important;touch-action:none}
.plain-mobile-menu{visibility:hidden;position:fixed;inset:0;z-index:120;pointer-events:none;overflow:hidden}
.plain-mobile-menu.is-open{visibility:visible;pointer-events:auto}
.plain-mobile-menu-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:#050c25a8;opacity:0;transition:opacity .2s}
.plain-mobile-menu.is-open .plain-mobile-menu-backdrop{opacity:1}
.plain-mobile-menu-panel{position:absolute;top:0;right:0;width:min(88vw,420px);height:100%;overflow-y:auto;color:#fff;background:var(--navy);transform:translateX(100%);transition:transform .22s ease}
.plain-mobile-menu.is-open .plain-mobile-menu-panel{transform:translateX(0)}
.plain-mobile-menu-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #ffffff26}
.plain-mobile-menu-header img{width:auto;height:58px;background:var(--paper);padding:6px 8px}
.plain-mobile-menu-close{display:grid;place-items:center;width:48px;height:48px;border:1px solid #ffffff52;color:#fff;background:transparent;font-size:30px;line-height:1;cursor:pointer}
.plain-mobile-menu-title{margin:0;padding:20px 22px;font-family:var(--display);font-size:31px;font-weight:800;text-transform:uppercase;border-bottom:1px solid #ffffff26}
.plain-mobile-menu-links{display:grid}
.plain-mobile-menu-links a{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:14px;min-height:66px;padding:13px 22px;border-bottom:1px solid #ffffff1f}
.plain-mobile-menu-links span{color:#ffffff4d;font-family:var(--display);font-size:18px;font-weight:800}
.plain-mobile-menu-links strong{font-family:var(--display);font-size:23px;font-weight:700;text-transform:uppercase}
.plain-mobile-menu-links b{color:var(--lime);font-size:18px}
@media (width>850px){.plain-mobile-menu{display:none}}
@media (prefers-reduced-motion:reduce){.plain-mobile-menu-backdrop,.plain-mobile-menu-panel{transition:none}}

/* Legal links and the non-blocking cookie notice. */
.footer-legal-links{display:flex;flex-wrap:wrap;gap:10px 24px;padding-top:18px;padding-bottom:26px;border-top:1px solid #ffffff21;color:#ffffff9c;font-size:12px;font-weight:700;letter-spacing:.04em}
.footer-legal-links a,.footer-legal-links button{color:inherit;text-decoration:none;background:none;border:0;padding:4px 0;font:inherit;cursor:pointer}
.footer-legal-links a:hover,.footer-legal-links button:hover,.footer-legal-links a:focus-visible,.footer-legal-links button:focus-visible{color:var(--lime)}
.form-privacy a{color:var(--blue);font-weight:800;text-decoration:underline;text-underline-offset:2px}
.cookie-notice{position:fixed;z-index:140;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));width:min(540px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:22px;border:1px solid #ffffff26;background:var(--navy,#050c25);color:#fff;box-shadow:0 18px 55px #02061859;opacity:0;transform:translateY(16px);transition:opacity .2s ease,transform .2s ease}
.cookie-notice[hidden]{display:none}
.cookie-notice.is-visible{opacity:1;transform:translateY(0)}
.cookie-notice-copy{display:grid;gap:7px}
.cookie-notice-copy strong{font-family:var(--display,"Arial Narrow",sans-serif);font-size:25px;line-height:1;text-transform:uppercase}
.cookie-notice-copy p{margin:0;color:#ffffffbd;font-size:14px;line-height:1.6}
.cookie-notice-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 18px;margin-top:17px}
.cookie-notice-actions a{color:#fff;font-size:13px;font-weight:750;text-decoration:underline;text-underline-offset:4px}
.cookie-notice-actions button{min-height:46px;padding:10px 23px;border:0;background:var(--lime,#c9f33a);color:var(--navy,#050c25);font:800 14px/1 var(--body,Manrope,sans-serif);cursor:pointer}
.cookie-notice-actions button:hover,.cookie-notice-actions button:focus-visible{background:#fff}
@media (width<=600px){.footer-legal-links{gap:8px 18px;padding-bottom:26px}.has-mobile-action-bar .footer-legal-links{padding-bottom:calc(98px + env(safe-area-inset-bottom))}.cookie-notice{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));width:auto;padding:18px}.has-mobile-action-bar .cookie-notice{bottom:calc(78px + env(safe-area-inset-bottom));max-height:calc(100dvh - 92px - env(safe-area-inset-bottom))}.cookie-notice-actions{align-items:stretch}.cookie-notice-actions a,.cookie-notice-actions button{display:grid;place-items:center;min-height:44px}.cookie-notice-actions button{flex:1 1 130px}}
@media (orientation:landscape) and (max-height:520px){.cookie-notice{width:min(720px,calc(100% - 28px));max-height:calc(100dvh - 24px);padding:14px 18px}.has-mobile-action-bar .cookie-notice{bottom:calc(68px + env(safe-area-inset-bottom));max-height:calc(100dvh - 82px - env(safe-area-inset-bottom))}.cookie-notice-copy strong{font-size:21px}.cookie-notice-copy p{font-size:12px;line-height:1.45}.cookie-notice-actions{margin-top:10px}.cookie-notice-actions button{min-height:40px}}
@media (prefers-reduced-motion:reduce){.cookie-notice{transition:none}}
/* Beheerbare foto bij Over Bryan */
.coach-mark>img{width:100%!important;height:100%!important;max-height:none!important;object-fit:cover;object-position:50% 48%;opacity:1!important;position:absolute!important;inset:0!important;transform:none!important}
.coach-mark:before{z-index:1;opacity:1!important;background-image:linear-gradient(180deg,rgba(5,19,55,.08) 28%,rgba(5,19,55,.34) 62%,rgba(5,19,55,.93) 100%),linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px)!important;background-size:auto,42px 42px,42px 42px!important}
.coach-mark span,.coach-mark strong{text-shadow:0 2px 18px rgba(0,0,0,.55)}
@media(max-width:760px){.coach-mark>img{object-position:50% 45%}.coach-mark:before{background-image:linear-gradient(180deg,rgba(5,19,55,.05) 20%,rgba(5,19,55,.3) 58%,rgba(5,19,55,.94) 100%),linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px)!important}}
