/* Page hierarchy and services submenu for the professional website. */
.page-intro{padding:54px 0 48px;background:var(--paper-deep);border-bottom:1px solid var(--line)}
.page-intro h1{font-size:clamp(38px,4.6vw,60px);line-height:1.12;max-width:24ch;overflow-wrap:break-word;margin:26px 0 22px;font-weight:600}
.page-intro .body-lead{max-width:64ch;font-size:21px;color:var(--muted-on-paper);margin-bottom:0}
.breadcrumbs{font-size:14px;display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:var(--muted-on-paper)}.breadcrumbs a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.service-detail{background:var(--paper);color:var(--ink)}.reading{max-width:840px}.reading p{max-width:70ch}.reading>.body-lead{font-size:21px;line-height:1.65}.reading h2{font-size:32px;margin:48px 0 18px}.reading .button{margin-top:18px}
.related{background:var(--paper-deep)}.related h2{font-size:32px}.related-links{display:flex;gap:8px 32px;flex-wrap:wrap;list-style:none;margin:0;padding:0}.related-links a{display:inline-block;padding:12px 0;text-decoration:underline;text-underline-offset:5px}
#navigatie .nav-services{position:relative;min-width:0}
#navigatie .nav-services summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:48px;padding:12px 0;list-style:none;cursor:pointer;color:inherit;font-size:16px;font-weight:500;line-height:1.4;user-select:none}
#navigatie .nav-services summary::-webkit-details-marker{display:none}
#navigatie .nav-services summary svg{flex:none;transition:transform 160ms var(--ease-out)}
#navigatie .nav-services[open] summary svg{transform:rotate(180deg)}
#navigatie .nav-services.is-current summary{text-decoration:underline;text-underline-offset:8px;text-decoration-color:var(--red);text-decoration-thickness:2px}
#navigatie .nav-services ul{position:absolute;z-index:1;top:calc(100% + 20px);left:-18px;width:304px;max-width:calc(100vw - 40px);margin:0;padding:10px 18px;list-style:none;border:1px solid var(--line);background:var(--paper);color:var(--ink)}
#navigatie .nav-services li{margin:0;padding:0}
#navigatie .nav-services li a{display:flex;align-items:center;min-height:46px;padding:11px 0;font-size:16px;line-height:1.5;color:var(--ink)}
#navigatie .nav-services li a:hover,#navigatie .nav-services li a:focus-visible{color:var(--ink);text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:4px}
#navigatie .nav-services summary:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--red)}
#navigatie .nav-services .nav-services-all{border-top:1px solid var(--line);margin-top:6px;padding-top:6px}
#navigatie [aria-current=page]{font-weight:500;text-decoration:underline;text-underline-offset:5px}
.footer-pages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 56px;padding-block:36px;margin-top:32px;border-block:1px solid #3b454b}
.footer-pages a{padding:8px 0;font-size:15px;line-height:1.5;color:#dbe0e2}.footer-pages a:hover{text-decoration:underline}
@media(min-width:1024px) and (max-width:1199px){.header-inner{gap:20px}.header nav{gap:18px}.header nav>a,#navigatie .nav-services summary{font-size:15px}.header .button-small{padding-inline:14px}.brand img{width:108px}}
@media(max-width:1023px){
 #navigatie .nav-services{width:100%;border-bottom:1px solid var(--line)}
 #navigatie .nav-services summary{font-size:16px;min-height:48px}#navigatie .nav-services summary:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--red)}
 #navigatie .nav-services ul{position:static;width:100%;max-width:none;margin:0 0 12px;padding:0 0 0 18px;border:0;background:var(--paper)}
 #navigatie .nav-services li a{font-size:15px;min-height:44px}.footer-pages{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:767px){
 .page-intro{padding:32px 0}.page-intro h1{font-size:38px;line-height:1.15;margin:22px 0 18px}.page-intro .body-lead{font-size:18px;line-height:1.6}
 .reading>.body-lead{font-size:18px}.reading h2,.related h2{font-size:28px;margin-top:36px}.related h2{margin-top:0}.related-links{display:block}.related-links a{font-size:16px}
 .footer-pages{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px;padding:16px 0 24px;margin-bottom:28px}.footer-pages a{font-size:14px}
}
@media(prefers-reduced-motion:reduce){#navigatie .nav-services summary svg{transition:none}}

.footer-group{display:flex;min-width:0;flex-direction:column;align-items:stretch;overflow-wrap:anywhere}
.footer-group h2{font:500 17px/1.5 var(--font);letter-spacing:0;margin:0 0 14px;color:#fff}
.footer-group a{display:flex;align-items:center;min-height:44px;max-width:100%;overflow-wrap:anywhere}
@media(max-width:767px){.footer-pages{grid-template-columns:repeat(auto-fit,minmax(min(100%,8.5em),1fr));gap:28px 24px;margin-top:28px;padding-block:28px}.footer-group h2{font-size:16px}.footer-group:last-child{grid-column:1/-1}}

/* The quote action leads directly to the task, before contact alternatives. */
.quote-page{padding-top:40px}
.quote-page .contact-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}
.quote-page .quote-panel h2,.quote-page .contact-copy h2{font-size:28px;line-height:1.25;margin:0 0 16px}
.quote-page .contact-copy{padding-top:24px}
@media(max-width:767px){.quote-page{padding-top:28px}.quote-page .contact-grid{grid-template-columns:minmax(0,1fr)}.quote-page .contact-copy{padding-top:0}.quote-page .quote-panel h2{font-size:26px}}
