/* Complete desktop content; optional, accessible compact layout on mobile. */
.mobile-fold,.mobile-fold__content{display:block}
.mobile-fold>summary{display:none}
.project-link{display:block;color:inherit;height:100%}
.project-link:focus-visible{outline:3px solid var(--accent);outline-offset:4px;border-radius:var(--radius)}
.project[id],#aanvraag,#praktijkvoorbeeld{scroll-margin-top:100px}
.business-route{display:flex;justify-content:center;gap:.6rem;flex-wrap:wrap;margin-top:1.5rem;font-size:.95rem}
.business-route a{text-decoration:underline;text-underline-offset:4px}
.form__status.is-pending{display:block;background:var(--mist);border:1px solid var(--line);color:var(--ink)}
.form [type=submit]:disabled{opacity:.65;cursor:wait}
.form:not([aria-busy]) [type=submit]:disabled{cursor:default}
.field input[type=file]{max-width:100%;font-size:.9rem}
.contact-jump{margin-top:1.4rem}
.contact-form-card{scroll-margin-top:100px}
.contact-layout,.contact-layout>*{min-width:0}
.contact-layout .info-tile{min-width:0;max-width:100%}
.contact-layout .info-tile>*{min-width:0}
.contact-layout .info-tile a,.contact-layout .info-tile p{overflow-wrap:anywhere}
.contact-form-card .form,.contact-form-card .field,.contact-form-card .form__row{min-width:0;max-width:100%}
.contact-form-card input,.contact-form-card select,.contact-form-card textarea{min-width:0;max-width:100%;width:100%;box-sizing:border-box}
.contact-form-card input[type=checkbox]{width:auto;flex-shrink:0}
.check-official{margin-block:1.4rem;line-height:1.6}
.portfolio-proof{display:grid;gap:2.5rem;grid-template-columns:minmax(0,1fr)}
.portfolio-proof h2{max-width:25ch;overflow-wrap:anywhere;hyphens:manual}
.portfolio-proof>*{min-width:0}
.portfolio-proof p{margin-block:1rem;color:var(--slate)}
.portfolio-quote{border-left:2px solid var(--accent);padding-left:1.5rem}
.portfolio-quote footer{font-weight:600;margin-bottom:1rem}
.portfolio-quote footer span{font-weight:400;font-size:.85rem;color:var(--steel);display:block}
@media(min-width:981px){.portfolio-proof:has(.portfolio-quote){grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}}
.privacy-choice{position:fixed;z-index:300;bottom:1rem;left:1rem;right:1rem;max-width:1050px;max-height:calc(100dvh - 2rem);overflow-y:auto;margin-inline:auto;padding:1.1rem 1.3rem;display:flex;flex-direction:column;align-items:stretch;gap:1rem;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);box-shadow:0 8px 35px rgba(0,0,0,.16);font-family:var(--font-body,Arial,sans-serif)}
.privacy-choice[hidden]{display:none}
.privacy-choice strong{font-size:1rem}
.privacy-choice p{font-size:.875rem;line-height:1.5;margin-top:.3rem}
.privacy-choice p a{text-decoration:underline}
.privacy-choice__actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;flex-shrink:0}
.privacy-choice button{border:1px solid #8b857a;border-radius:999px;padding:.65rem 1rem;min-height:44px;background:#fff;color:#292824;font-size:.9rem;font-weight:600;cursor:pointer}
.privacy-choice button:hover{background:#f1eee7}
.privacy-settings{color:inherit;font:inherit;text-decoration:underline;cursor:pointer;margin-left:.8rem;min-height:44px}
.privacy-choice :focus-visible,.privacy-settings:focus-visible{outline:3px solid #8b6740;outline-offset:3px}
@media(max-width:640px){.privacy-choice{gap:.75rem;padding:1rem;bottom:.6rem;left:.6rem;right:.6rem}.privacy-choice__actions{grid-template-columns:1fr}.privacy-settings{margin-left:0;margin-top:.5rem;display:block}}
@media(max-width:980px){
  .nav__menu:not(.is-open){visibility:hidden}
  .nav__menu.is-open{visibility:visible;max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain}
}
@media(max-width:760px){
  .btn{white-space:normal;line-height:1.35;max-width:100%;text-align:center;overflow-wrap:anywhere}
  .btn svg{flex-shrink:0}
  .service-hero__grid,.seo-intro,.seo-deliver,.faq-layout{grid-template-columns:minmax(0,1fr)}
  .service-hero__grid>*,.seo-intro>*,.seo-deliver>*,.faq-layout>*{min-width:0}
  .seo-intro h2,.seo-intro h3{overflow-wrap:anywhere;hyphens:manual}
  .mobile-fold{display:block;grid-column:1/-1;width:100%;border-block:1px solid var(--line)}
  .mobile-fold>summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;list-style:none;cursor:pointer;padding:1.1rem 0;font-weight:600;font-size:1rem}
  .mobile-fold>summary::-webkit-details-marker{display:none}
  .mobile-fold>summary::after{content:'+';font-size:1.4rem;flex-shrink:0;font-weight:400}
  .mobile-fold[open]>summary::after{content:'−'}
  .mobile-fold__content{display:block;padding-block:0 1.2rem}
  .mobile-fold:not([open])>.mobile-fold__content{display:none}
  .grid>.mobile-fold .mobile-fold__content{display:grid;gap:1rem}
  .mobile-compact-section{padding-block:1rem}
  .home-responsive{display:flex;flex-direction:column}
  .home-responsive>section{order:10}
  .home-responsive>.hero{order:0}
  .home-responsive>.home-routes{order:1}
  .home-responsive>.home-featured-projects{order:2}
  .home-responsive>.home-personal{order:3}
  .home-responsive>.home-reviews{order:4}
  .home-responsive>.home-secondary-services{order:5}
  .home-responsive>.home-secondary-checks{order:6}
  .home-responsive>#advies{order:7}
  .home-routes{padding-block:2.5rem}
  .home-route{padding:1.5rem}
  .home-routes .section-head{margin-bottom:1.6rem}
  .home-featured-projects{padding-block:3rem}
  .home-featured-projects .project__media{aspect-ratio:16/9}
  .home-reviews{padding-block:3rem}
  .home-personal{padding-block:3rem}
  .service-hero{padding-block:2.3rem}
  .service-hero__content .mobile-fold{margin-top:1rem;border-color:rgba(255,255,255,.24)}
  .service-hero__content .mobile-fold p{color:#c9c3b7;font-size:1.05rem}
  .service-hero__content .cta-row{margin-top:1.2rem}
  .site-footer{padding-block:2rem 1.5rem}
  .footer__grid{gap:1.1rem}
  .site-footer .mobile-fold{border-color:rgba(255,255,255,.2)}
  .site-footer .mobile-fold h4{display:none}
  .contact-layout{display:flex;flex-direction:column}
  .contact-form-column{order:-1;width:100%}
  .contact-form-card{padding:1.35rem!important}
  .contact-page .page-banner{padding-block:2rem}
  .contact-page .page-banner h1{font-size:2.2rem}
  .contact-page .section{padding-block:2rem}
  .contact-page .page-banner p{font-size:1rem}
}
