/* Ronde 3 – uniforme header/footer, mobile-first, toegankelijkheid en stabiliteit */
:root{--r3-green:#0C2820;--r3-olive:#697354;--r3-olive-light:#F0F0E9;--r3-white:#FDFDFC;--r3-brown:#734116;--r3-border:#D8D9D2;--r3-focus:#A44F00}
*,*::before,*::after{box-sizing:border-box}
html,body{max-width:100%;overflow-x:clip}
body{min-width:0}
.shell{width:min(calc(100% - 32px),1480px)!important;max-width:1480px!important;margin-inline:auto!important;min-width:0!important}
main,section,article,aside,header,footer,nav,form,fieldset,div{min-width:0}
img,svg,video,canvas,iframe{max-width:100%;height:auto}
input,select,textarea,button{font:inherit;max-width:100%}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--r3-focus)!important;outline-offset:3px!important}
.skip-link{position:fixed!important;z-index:100000!important;left:12px!important;top:12px!important;transform:translateY(-150%);background:#fff!important;color:var(--r3-green)!important;padding:12px 16px!important;border:2px solid var(--r3-green)!important;border-radius:8px!important}
.skip-link:focus{transform:none!important}
.button--primary,.header-cta,.btn-primary,.cta-primary,[class*="button--primary"]{background:var(--r3-brown)!important;color:#fff!important}
.button--primary:hover,.header-cta:hover,.btn-primary:hover,.cta-primary:hover{background:#5F330E!important;color:#fff!important}
.eyebrow{color:#663912}
:is(.section--dark,.dark-section,.hero--dark,.bg-dark,[class*="dark"]) .eyebrow{color:#F4E6D4!important}
.usp-topbar{background:var(--r3-olive)!important;color:#fff!important;overflow:hidden!important}
.usp-topbar__track{width:100%!important;max-width:1480px!important;display:flex!important;gap:0!important;overflow-x:auto!important;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:none;padding-inline:0!important}
.usp-topbar__track::-webkit-scrollbar{display:none}
.usp-topbar__item{flex:1 0 180px!important;min-width:180px!important;color:#fff!important;scroll-snap-align:start;justify-content:center!important}
.usp-topbar__item img{flex:0 0 auto}
.site-header{position:sticky!important;top:0!important;z-index:9000!important;background:#fff!important;color:var(--r3-green)!important;box-shadow:0 8px 24px rgba(12,40,32,.08)}
.header-inner{width:min(calc(100% - 32px),1480px)!important;max-width:1480px!important;min-height:92px!important;display:flex!important;align-items:center!important;gap:24px!important}
.brand{flex:0 0 auto!important}
.brand img{display:block!important;width:220px!important;height:auto!important}
.desktop-nav{display:flex!important;align-items:center!important;justify-content:center!important;gap:clamp(14px,1.7vw,32px)!important;flex:1 1 auto!important}
.desktop-nav a,.nav-mega-trigger{color:var(--r3-green)!important;font-weight:600!important;white-space:nowrap!important}
.desktop-nav a[aria-current="page"],.nav-mega-trigger.is-active{color:#663912!important;text-decoration-thickness:2px!important;text-underline-offset:7px!important;text-decoration-line:underline!important}
.header-actions{display:flex!important;align-items:center!important;gap:10px!important;flex:0 0 auto!important}
.icon-button{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
.icon-button img{max-width:25px!important;max-height:25px!important}
.menu-button{display:none!important}
.mega-menu[hidden],.mobile-menu[hidden]{display:none!important}
.mega-menu{position:absolute!important;left:0!important;right:0!important;top:100%!important;z-index:9100!important}
.mega-menu__card{background:#fff!important;border:1px solid var(--r3-border)!important;box-shadow:0 18px 50px rgba(12,40,32,.16)!important;border-radius:0 0 18px 18px!important;padding:28px!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:24px!important}
.mega-column a{min-height:30px!important;display:flex!important;align-items:center!important}
.mobile-menu{position:absolute!important;top:100%!important;left:0!important;right:0!important;z-index:9200!important;background:#fff!important;border-top:1px solid var(--r3-border)!important;box-shadow:0 20px 40px rgba(12,40,32,.18)!important;max-height:calc(100vh - 72px)!important;overflow:auto!important;padding:12px 16px 24px!important}
.mobile-menu nav>a,.mobile-menu summary{min-height:48px!important;display:flex!important;align-items:center!important;padding:10px 4px!important;color:var(--r3-green)!important;font-weight:650!important}
.mobile-menu summary{cursor:pointer!important}
.mobile-submenu{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;padding:10px 0 18px!important}
.mobile-submenu-group a{display:block!important;padding:7px 0!important;color:var(--r3-green)!important}
/* Footer conform goedgekeurde layout */
.usp-band--footer{background:#F4F3EC!important;overflow:hidden!important}
.usp-band--footer .usp-band__grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;width:min(calc(100% - 32px),1480px)!important;max-width:1480px!important;margin-inline:auto!important;gap:0!important;padding:20px 0!important}
.usp-band--footer article{min-width:0!important;display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;gap:14px!important;padding:0 24px!important;border-right:1px solid var(--r3-border)!important}
.usp-band--footer article:last-child{border-right:0!important}
.usp-band--footer h2{color:var(--r3-green)!important;font-size:14px!important;line-height:1.25!important;margin:0 0 4px!important}
.usp-band--footer p{color:#33433C!important;font-size:14px!important;line-height:1.45!important;margin:0!important}
.usp-band--footer .usp-band__icon{width:58px!important;height:58px!important;display:grid!important;place-items:center!important}
.usp-band--footer .usp-band__icon img{width:52px!important;height:52px!important;object-fit:contain!important}
.r3-site-footer{background:#fff!important;color:var(--r3-green)!important}
.r3-footer-grid{display:grid!important;grid-template-columns:1.25fr repeat(3,minmax(150px,1fr)) 1.15fr!important;gap:clamp(24px,3vw,58px)!important;padding-top:38px!important;padding-bottom:38px!important;align-items:start!important}
.r3-footer-brand>a img{display:block!important;width:min(220px,100%)!important;height:auto!important;margin-bottom:20px!important}
.r3-footer-brand-contact{display:grid!important;gap:12px!important}
.r3-footer-brand-contact a,.r3-footer-contact a{display:flex!important;align-items:flex-start!important;gap:12px!important;color:var(--r3-green)!important;text-decoration:none!important;overflow-wrap:anywhere}
.r3-footer-brand-contact img,.r3-footer-contact img{width:24px!important;height:24px!important;flex:0 0 24px!important}
.r3-site-footer .footer-column{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important}
.r3-site-footer .footer-column h2{font-size:13px!important;line-height:1.3!important;letter-spacing:.01em!important;color:var(--r3-green)!important;margin:0 0 6px!important}
.r3-site-footer .footer-column>a{display:flex!important;min-height:28px!important;align-items:center!important;color:#263A32!important;text-decoration:none!important;line-height:1.45!important}
.r3-site-footer .footer-column>a:hover,.r3-footer-brand-contact a:hover{text-decoration:underline!important;text-underline-offset:3px!important}
.r3-footer-contact strong{display:block!important;color:#263A32!important;font-weight:500!important}
.r3-footer-contact small{display:block!important;color:#3F5149!important;margin-top:4px!important;font-size:13px!important}
.r3-site-footer .legal-bar{background:var(--r3-olive)!important;color:#fff!important}
.r3-site-footer .legal-bar__inner{min-height:52px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:24px!important}
.r3-site-footer .legal-bar nav{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:clamp(20px,6vw,90px)!important;flex:1!important}
.r3-site-footer .legal-bar a{color:#fff!important;text-decoration:none!important;min-height:44px!important;display:flex!important;align-items:center!important}
/* Werkende zoeklaag */
.site-search-dialog{width:min(760px,calc(100% - 28px))!important;max-height:min(82vh,760px)!important;border:0!important;border-radius:20px!important;padding:0!important;background:#fff!important;color:var(--r3-green)!important;box-shadow:0 24px 80px rgba(12,40,32,.28)!important;overflow:hidden!important}
.site-search-dialog::backdrop{background:rgba(12,40,32,.56);backdrop-filter:blur(3px)}
.site-search-panel{padding:clamp(22px,4vw,38px)!important;max-height:min(82vh,760px)!important;overflow:auto!important}
.site-search-heading{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important;margin-bottom:22px!important}
.site-search-heading h2{margin:0!important;color:var(--r3-green)!important;font-size:clamp(24px,4vw,34px)!important;line-height:1.15!important}
.site-search-eyebrow{margin:0 0 6px!important;color:#663912!important;font-weight:750!important;text-transform:uppercase!important;font-size:12px!important;letter-spacing:.08em!important}
.site-search-close{width:44px!important;height:44px!important;border-radius:50%!important;border:1px solid var(--r3-border)!important;background:#fff!important;color:var(--r3-green)!important;font-size:30px!important;line-height:1!important;cursor:pointer!important;flex:0 0 44px!important}
.site-search-form label{display:block!important;font-weight:700!important;margin-bottom:8px!important;color:var(--r3-green)!important}
.site-search-input-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important}
.site-search-input-row input{width:100%!important;min-height:52px!important;border:1px solid #69766F!important;border-radius:10px!important;padding:12px 14px!important;color:var(--r3-green)!important;background:#fff!important}
.site-search-input-row button{min-height:52px!important;border:0!important;border-radius:10px!important;background:var(--r3-brown)!important;color:#fff!important;font-weight:750!important;padding:10px 22px!important;cursor:pointer!important}
.site-search-status{color:#46574F!important;margin:14px 0!important;font-size:14px!important}
.site-search-results{display:grid!important;gap:10px!important}
.site-search-result{display:block!important;padding:15px 16px!important;border:1px solid var(--r3-border)!important;border-radius:12px!important;color:var(--r3-green)!important;text-decoration:none!important;background:#fff!important}
.site-search-result:hover{border-color:var(--r3-olive)!important;background:#F8F8F4!important}
.site-search-result strong{display:block!important;font-size:16px!important;margin-bottom:4px!important}
.site-search-result span{display:block!important;color:#46574F!important;font-size:14px!important;line-height:1.45!important}
/* Formulieren en touch targets */
form :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){min-height:44px}
button,[role="button"],summary{min-height:44px}
/* Voorkom bekende mobiele overflow */
#price-table-1,#price-table-2{width:100%!important;height:auto!important}
.sf-part-grid{min-width:0!important}
.sf-part{min-width:0!important;width:auto!important}
.sf-part>span,.sf-part__image{width:100%!important;min-width:0!important}
.sf-part__image img{width:100%!important;height:auto!important;object-fit:contain!important}
.round-steps,.round-step,.ship-note,.round-example{max-width:100%!important;min-width:0!important}
@media(max-width:1150px){
 .desktop-nav{display:none!important}.header-cta{display:none!important}.menu-button{display:inline-flex!important}
 .header-inner{min-height:74px!important;gap:10px!important}.brand img{width:190px!important}.header-actions{margin-left:auto!important}
 .mega-menu{display:none!important}
 .usp-band--footer .usp-band__grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;row-gap:20px!important}
 .usp-band--footer article:nth-child(3){border-right:0!important}.usp-band--footer article:nth-child(n+4){border-top:1px solid var(--r3-border)!important;padding-top:20px!important}
 .r3-footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.r3-footer-brand{grid-column:1/-1!important;display:grid!important;grid-template-columns:minmax(180px,260px) minmax(200px,1fr)!important;gap:32px!important;align-items:start!important}.r3-footer-contact{grid-column:auto!important}
}
@media(max-width:767px){
 .shell{width:min(calc(100% - 28px),1480px)!important}
 .usp-topbar__track{width:100%!important;margin:0!important;padding-left:10px!important}
 .usp-topbar__item{flex-basis:156px!important;min-width:156px!important;font-size:13px!important;padding:8px 10px!important}
 .usp-topbar__item img{width:21px!important;height:21px!important}
 .header-inner{width:calc(100% - 24px)!important;min-height:68px!important;padding:6px 0!important}.brand img{width:150px!important}.header-actions{gap:4px!important}.icon-button{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important}
 .cart-count{font-size:10px!important}
 .mobile-submenu{grid-template-columns:1fr!important}
 .usp-band--footer .usp-band__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:18px 0!important}
 .usp-band--footer article{padding:14px!important;border-right:0!important;border-top:1px solid var(--r3-border)!important;grid-template-columns:48px minmax(0,1fr)!important;gap:10px!important}
 .usp-band--footer article:nth-child(1),.usp-band--footer article:nth-child(2){border-top:0!important}
 .usp-band--footer article:nth-child(odd){border-right:1px solid var(--r3-border)!important}
 .usp-band--footer article:last-child{grid-column:1/-1!important;border-right:0!important}
 .usp-band--footer .usp-band__icon{width:46px!important;height:46px!important}.usp-band--footer .usp-band__icon img{width:44px!important;height:44px!important}
 .r3-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px 20px!important;padding-top:30px!important;padding-bottom:30px!important}.r3-footer-brand{grid-column:1/-1!important;grid-template-columns:1fr!important;gap:6px!important}.r3-footer-contact{grid-column:1/-1!important}
 .r3-site-footer .legal-bar__inner{padding-block:12px!important;flex-direction:column!important;align-items:flex-start!important;gap:5px!important}.r3-site-footer .legal-bar nav{width:100%!important;display:grid!important;grid-template-columns:1fr!important;gap:0!important}.r3-site-footer .legal-bar a{min-height:40px!important}
 .site-search-dialog{width:100%!important;max-width:none!important;max-height:100dvh!important;height:100dvh!important;border-radius:0!important;margin:0!important}.site-search-panel{max-height:100dvh!important;height:100%!important;padding:20px 16px!important}.site-search-input-row{grid-template-columns:1fr!important}.site-search-input-row button{width:100%!important}
 .sf-part-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
 .sf-part{width:100%!important}.sf-part__image{min-height:100px!important}
 table{display:block!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
}
@media(max-width:420px){
 .brand img{width:132px!important}.search-button,.cart-button,.menu-button{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important}
 .r3-footer-grid{grid-template-columns:1fr!important}.r3-footer-brand,.r3-footer-contact{grid-column:auto!important}
 .usp-band--footer .usp-band__grid{grid-template-columns:1fr!important}.usp-band--footer article,.usp-band--footer article:nth-child(odd),.usp-band--footer article:last-child{grid-column:auto!important;border-right:0!important;border-top:1px solid var(--r3-border)!important}.usp-band--footer article:first-child{border-top:0!important}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Ronde 3 contrastcorrecties na render-audit */
.button--secondary{background:#F0F0E9!important;color:#0C2820!important;border-color:#0C2820!important}
.rt2-breadcrumb span{color:#5C6761!important}
.rt2-anchor a{color:#FFFFFF!important}
.rt2-colours .rt2-colour-copy h3{color:#FFFFFF!important}
.rt2-size,.rt2-size p,.rt2-size small,.rt2-size-note{color:#FFFFFF!important}
.rt2-section--dark .rt2-eyebrow{color:#F4E6D4!important}
.material-badge{background:#0C2820!important;color:#FFFFFF!important}
.sf-type em{color:#5F330E!important}
.sf-field small,.sf-field>p,.sf-input-unit>span,#priceNote,.sf-pole-option small{color:#526158!important}
.product-hero__visual figcaption span{color:#43534D!important}
.product-steps article>span{color:#697354!important}

/* Ronde 3 contrastcorrecties – tweede controle */
a.button.button--secondary{background:#F0F0E9!important;color:#0C2820!important;border:1px solid #0C2820!important}
.rt2-anchor{background:#697354!important}
.rt2-anchor a{color:#FFFFFF!important}
.room-split__panel h2,.room-cta__box h2{color:#FFFFFF!important}
.product-section--green,.product-section--project,.product-final-cta{background:#697354!important}
.product-section--green :is(p,h2,h3,.eyebrow),.product-section--project :is(p,h2,h3,.eyebrow),.product-final-cta :is(p,h2,h3,.eyebrow){color:#FFFFFF!important}
a.button.button--light{background:#FFFFFF!important;color:#0C2820!important;border:1px solid #0C2820!important}
a.button.button--outline-light{color:#FFFFFF!important;border-color:#FFFFFF!important}

/* Ronde 3 contrastcorrecties – kaartcomponenten */
.product-section--green .product-fabric-card :is(p,h2,h3,.product-mini-eyebrow){color:#0C2820!important}
.product-section--project .product-copy--light :is(p,h2,h3,.eyebrow){color:#0C2820!important}


/* R5.3.12 – gerichte WCAG-contrastcorrectie.
   Geen achtergrond- of lay-outwijziging: alleen tekst in bestaande donkere blokken. */
.room-tech-box,
.room-tech-box h2,
.room-tech-box h3,
.room-tech-box p,
.room-tech-box .eyebrow,
.room-tech-box .room-measures strong,
.room-tech-box .room-measures span {
  color:#FFFFFF !important;
  opacity:1 !important;
}
.room-cta__box .eyebrow {
  color:#FFFFFF !important;
  opacity:1 !important;
}
.mount-section--olive .mount-heading .eyebrow,
.mount-section--olive .mount-after-card strong,
.mount-section--olive .mount-after-card p {
  color:#FFFFFF !important;
  opacity:1 !important;
}


/* R5.3.18 SEO & conversie-update */
.seo-content-section,.seo-next-step{padding:clamp(48px,6vw,86px) 0;background:#f5f6f0}
.seo-content-section__inner,.seo-next-step__inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(24px,4vw,56px);align-items:center}
.seo-content-section h2,.seo-next-step h2{margin:.35rem 0 .75rem;color:#0c2820;font-size:clamp(1.7rem,3vw,2.65rem);line-height:1.08}
.seo-content-section p,.seo-next-step p{max-width:760px;color:#42524c}
.seo-next-step__actions,.seo-content-section__actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}
.seo-support-links{margin:18px 0 0;font-size:.91rem;line-height:1.65;color:#52615b}
.seo-support-links strong{color:#0c2820}
.seo-support-links a,.faq-answer .seo-inline-link{color:#3f5228;font-weight:800;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px}
.seo-support-links a:hover,.faq-answer .seo-inline-link:hover{color:#0c2820}
.seo-support-links a:focus-visible,.faq-answer .seo-inline-link:focus-visible{outline:3px solid rgba(103,115,84,.32);outline-offset:3px;border-radius:3px}
.seo-keyword-list{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}
.seo-keyword-list li{padding:7px 10px;border:1px solid #cfd7c4;border-radius:999px;background:#fff;color:#405048;font-size:.85rem;font-weight:750}
@media(max-width:760px){.seo-content-section__inner,.seo-next-step__inner{grid-template-columns:1fr}.seo-next-step__actions,.seo-content-section__actions{justify-content:flex-start}.seo-next-step__actions .button,.seo-content-section__actions .button{width:100%;justify-content:center}}
