/* OBN — shared typography, spacing and contact routes, October 2026. */
.obn-refreshed{--obn-text:#40515a;--obn-heading:#071923}
.obn-refreshed .section{padding:70px 0}
.obn-refreshed .section h2,.obn-refreshed .editorial h2,.obn-refreshed .cta h2{font-size:clamp(28px,2.7vw,38px);line-height:1.14;letter-spacing:-.028em;margin-bottom:22px}
.obn-refreshed .eyebrow{margin-bottom:18px}
.obn-refreshed .lead{font-size:18px;line-height:1.65}
.obn-refreshed .body{font-size:17px;line-height:1.7}
.obn-refreshed .actions{margin-top:28px;gap:12px}
.obn-refreshed .btn{min-height:52px;padding:13px 22px;line-height:1.4}
.obn-refreshed a:focus-visible,.obn-refreshed button:focus-visible,.obn-refreshed summary:focus-visible{outline:3px solid #a84d08;outline-offset:5px}
.obn-refreshed .page-hero-grid{min-height:0}
.obn-refreshed .page-hero-copy{padding-top:44px;padding-bottom:44px}
.obn-refreshed .page-hero-copy h1{font-size:clamp(34px,3.3vw,46px);line-height:1.12;letter-spacing:-.03em;margin-bottom:22px}
.obn-refreshed .page-hero-copy p{font-size:17px;line-height:1.7}
.obn-refreshed .page-hero-media{min-height:380px}
.obn-refreshed .copy-grid{gap:60px}
.obn-refreshed .prose h2{font-size:30px;line-height:1.2;letter-spacing:-.022em}
.obn-refreshed .prose h3{font-size:22px;line-height:1.3}
.obn-refreshed .prose p,.obn-refreshed .prose li{line-height:1.75}
.obn-refreshed .sidecard{padding:28px}
.obn-refreshed .sidecard h3{font-size:24px;line-height:1.25}
.obn-refreshed .field label{line-height:1.5}
.obn-refreshed .field input,.obn-refreshed .field select,.obn-refreshed .field textarea{font-size:16px}
.obn-refreshed .form-consent input[type="checkbox"]{width:18px;height:18px;font-size:inherit}
.obn-refreshed .footer{padding-top:52px}
.obn-refreshed .footer-grid{gap:38px}
.obn-refreshed .footer-logo{max-width:100%;width:220px;padding:12px 16px}
.obn-refreshed .footer a{overflow-wrap:anywhere}
.obn-refreshed .footer-legal{line-height:1.7}

/* Homepage: one introduction, one explanation of the working method. */
.obn-home .hero{min-height:0;grid-template-columns:minmax(0,48%) minmax(0,52%)}
.obn-home .hero-copy{padding:50px max(36px,calc((100vw - 1240px)/2)) 42px 44px!important}
.obn-home .hero h1{font-size:clamp(40px,3.5vw,50px)!important;line-height:1.08!important;letter-spacing:-.034em!important;max-width:560px!important;margin:0 0 24px}
.obn-home .hero .lead{font-size:18px!important;line-height:1.65;max-width:520px!important;color:#cfdae0}
.obn-home .hero .actions{margin-top:28px}
.obn-home .hero .eyebrow{color:#ffae6a}
.obn-home .obn-direct-contact{font-size:14px;color:#c7d4dc;margin:20px 0 0}
.obn-home .obn-direct-contact a{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.obn-home .hero-proof{margin-top:30px!important;padding-top:20px;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.obn-home .hero-proof b{font-size:13px;line-height:1.45}
.obn-home .hero-proof span{font-size:12px;line-height:1.6;color:#c1cfd7;margin-top:4px}
.obn-home .hero-media{min-height:520px}
.obn-home .hero-media img{object-position:center 44%}
.obn-home .client-section{padding:28px 0 30px}
.obn-home .client-heading{display:flex;gap:22px;align-items:baseline;margin-bottom:16px}
.obn-home .client-heading .eyebrow{flex-shrink:0;margin:0}
.obn-home .client-heading h2{font-size:22px;line-height:1.3;margin:0}
.obn-home .client-logo img[width][height]{height:76px}
.obn-home .client-logo figcaption{font-size:12px;color:#d1dce2;margin-top:4px}
.obn-home .maatwerk-section{padding:70px 0}
.obn-home .maatwerk-head{gap:55px}
.obn-home .maatwerk-head h2{font-size:clamp(28px,2.7vw,38px);line-height:1.14;letter-spacing:-.028em}
.obn-home .maatwerk-grid{margin-top:34px;gap:20px}
.obn-home .maatwerk-media{height:200px}
.obn-home .maatwerk-copy{padding:25px 22px}
.obn-home .maatwerk-copy h3{font-size:21px;line-height:1.24;letter-spacing:-.02em}
.obn-home .maatwerk-copy p{font-size:15px;color:#40515a;line-height:1.65}
.obn-home .maatwerk-link{font-size:13px;line-height:1.5}
.obn-home .obn-service-links{display:flex;flex-wrap:wrap;gap:14px 30px;margin-top:26px;font-size:14px;font-weight:700}
.obn-home .obn-service-links a{color:#243e4b;text-decoration:underline;text-decoration-color:#b5c1c7;text-underline-offset:5px}
.obn-home .sector-story{gap:48px;margin-top:30px}
.obn-home .sector-story>div:first-child img{height:440px}
.obn-home .sector-link{padding:18px 0;font-size:17px;grid-template-columns:minmax(0,1fr) 30px}
.obn-home .editorial{min-height:440px}
.obn-home .editorial .copy{padding:54px 50px}
.obn-home .editorial .photo{min-height:440px}
.obn-home .editorial .photo img{object-position:center 35%}
.obn-home .editorial.dark .btn{margin-top:22px}
.obn-home .obn-inline-links{display:flex;flex-wrap:wrap;gap:15px 24px;font-size:14px;line-height:1.6;margin-top:26px;color:#d5e0e5}
.obn-home .obn-inline-links a{text-decoration:underline;text-underline-offset:5px;text-decoration-color:#657b87}
.obn-home .coverage-head{grid-template-columns:1fr;gap:0}
.obn-home .coverage-head h2{max-width:700px}
.obn-home .location-grid{margin-top:32px;gap:22px}
.obn-home .location-card{padding:27px}
.obn-home .location-card h3{font-size:27px}
.obn-home .location-card p{font-size:15px}
.obn-home .bullet-lines{margin:24px 0}
.obn-home .bullet-line{padding:11px 0;font-size:15px}
.obn-home .knowledge-feature{gap:48px;margin-top:28px}
.obn-home .knowledge-feature>img{height:330px}
.obn-home .knowledge-copy h3{font-size:28px;line-height:1.22;letter-spacing:-.025em}
.obn-home .related-grid{gap:22px}
.obn-home .related-card h3{font-size:23px;line-height:1.25}
.obn-home .cta{background:#071923;padding:58px 0;border-top:1px solid #29414d}
.obn-home .cta-grid{grid-template-columns:minmax(0,1fr) auto;gap:60px}
.obn-home .cta p{font-size:17px;color:#c7d4dc}
.obn-home .cta h2{color:#fff}
.obn-home .obn-closing-actions{display:flex;flex-direction:column;align-items:flex-start;gap:20px;font-size:14px;font-weight:700}
.obn-home .obn-closing-actions>a:last-child{text-decoration:underline;text-underline-offset:5px;color:#fff}
.obn-home .obn-closing-actions .btn.light{background:#f47a21;color:#071923}

@media(min-width:1101px){
 .obn-home .hero{grid-template-columns:minmax(0,48%) minmax(0,52%)!important}
}
@media(min-width:1800px){
 .obn-home .hero-copy{padding-left:max(48px,calc((100vw - 1500px)/2))!important}
}
@media(max-width:1100px){
 .obn-refreshed .copy-grid{gap:34px}
 .obn-refreshed .page-hero-media{min-height:0;height:340px}
 .obn-home .hero-copy{padding:44px 36px 34px!important}
 .obn-home .hero-media{min-height:0;height:400px}
 .obn-home .hero-proof{max-width:720px}
 .obn-home .maatwerk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .obn-home .maatwerk-media{height:240px}
 .obn-home .editorial .copy{padding:42px 34px}
 .obn-home .editorial .photo{min-height:360px}
 .obn-home .sector-story{gap:30px}
}
@media(max-width:700px){
 .obn-refreshed .section{padding:44px 0}
 .obn-refreshed .section h2,.obn-refreshed .editorial h2,.obn-refreshed .cta h2{font-size:28px;line-height:1.19;letter-spacing:-.022em;margin-bottom:18px;overflow-wrap:normal;hyphens:none}
 .obn-refreshed .eyebrow{font-size:11px;letter-spacing:.065em;margin-bottom:15px}
 .obn-refreshed .lead,.obn-refreshed .body{font-size:16px;line-height:1.7}
 .obn-refreshed .page-hero-copy{padding:32px 22px}
 .obn-refreshed .page-hero-copy h1{font-size:clamp(28px,8.2vw,32px)!important;line-height:1.15!important;letter-spacing:-.025em;overflow-wrap:break-word;hyphens:manual}
 .obn-refreshed .page-hero-copy p{font-size:16px;line-height:1.7}
 .obn-refreshed .page-hero-media{height:250px}
 .obn-refreshed .prose h2{font-size:26px;line-height:1.22}
 .obn-refreshed .prose h3{font-size:21px;line-height:1.3}
 .obn-refreshed .sidecard{padding:24px}
 .obn-refreshed .footer-grid{gap:32px}
 .obn-home .hero-copy{padding:36px 22px 30px!important}
 .obn-home .hero h1{font-size:clamp(30px,9.2vw,36px)!important;line-height:1.12!important;letter-spacing:-.026em!important;max-width:100%!important;hyphens:none;overflow-wrap:normal}
 .obn-home .hero .lead{font-size:16px!important;line-height:1.7}
 .obn-home .hero .actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:24px}
 .obn-home .hero .actions .btn{width:100%;min-height:50px}
 .obn-home .obn-direct-contact{font-size:14px;margin-top:18px}
 .obn-home .hero-proof{grid-template-columns:1fr;gap:13px;margin-top:24px!important;padding-top:18px}
 .obn-home .hero-proof>div{grid-template-columns:140px minmax(0,1fr);gap:12px;align-items:baseline}
 .obn-home .hero-proof b{font-size:12px;line-height:1.5}
 .obn-home .hero-proof span{font-size:12px;line-height:1.5;margin:0}
 .obn-home .hero-media{height:270px}
 .obn-home .client-section{padding:26px 0}
 .obn-home .client-heading{display:block;margin-bottom:22px}
 .obn-home .client-heading h2{font-size:20px;margin-top:12px;line-height:1.35}
 .obn-home .client-grid{gap:20px 16px}
 .obn-home .client-logo img[width][height]{height:65px}
 .obn-home .maatwerk-section{padding:44px 0}
 .obn-home .maatwerk-head{gap:18px}
 .obn-home .maatwerk-head h2{font-size:28px;line-height:1.19}
 .obn-home .maatwerk-grid{grid-template-columns:1fr;gap:18px;margin-top:26px}
 .obn-home .maatwerk-media{height:210px}
 .obn-home .maatwerk-copy{padding:24px 22px}
 .obn-home .maatwerk-copy h3{font-size:22px}
 .obn-home .obn-service-links{display:grid;gap:16px}
 .obn-home .sector-story{grid-template-columns:1fr;gap:24px;margin-top:24px}
 .obn-home .sector-story>div:first-child img{height:240px}
 .obn-home .sector-link{font-size:16px;padding:17px 0}
 .obn-home .editorial .copy{padding:38px 22px}
 .obn-home .editorial .photo{min-height:0;height:280px}
 .obn-home .editorial .photo img{object-position:center 32%}
 .obn-home .obn-inline-links{display:grid;gap:18px;margin-bottom:0}
 .obn-home .location-grid{grid-template-columns:1fr;margin-top:26px}
 .obn-home .location-card{padding:24px}
 .obn-home .location-card h3{font-size:25px}
 .obn-home .knowledge-feature{grid-template-columns:1fr;gap:26px;margin-top:24px}
 .obn-home .knowledge-feature>img{height:240px}
 .obn-home .knowledge-copy h3{font-size:25px;line-height:1.25}
 .obn-home .related-grid{grid-template-columns:1fr;gap:16px}
 .obn-home .cta{padding:42px 0}
 .obn-home .cta-grid{grid-template-columns:1fr;gap:22px}
 .obn-home .obn-closing-actions{width:100%}
 .obn-home .obn-closing-actions .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){.obn-refreshed *{scroll-behavior:auto!important;transition:none!important}}
