.elementor-kit-5{--e-global-color-primary:#3C3728;--e-global-color-secondary:#645B43;--e-global-color-text:#3C3728;--e-global-color-accent:#800000;--e-global-typography-primary-font-family:"RT Archivo";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"RT Archivo";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"RT Literata";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"RT Archivo";--e-global-typography-accent-font-weight:600;background-color:#FFFFFF;font-family:"RT Literata", Sans-serif;font-weight:400;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --rt-turf:#3C3728; --rt-schors:#645B43; --rt-oker:#B79B48; --rt-halm:#786E50; --rt-pluim:#ACA283; --rt-kalk:#E2DCDC; --rt-mist:#EEEAE6; --rt-rood:#800000; --rt-wit:#FFFFFF; --font-heading:RT Archivo; --font-body:RT Literata; --rt-nok:#2A2619; }
/* Start custom CSS *//* Rietdekkersbedrijf Thijs: zelf gehoste variabele fonts (latin) */
@font-face { font-family: 'RT Archivo'; font-style: normal; font-weight: 100 900; font-stretch: 62% 125%; font-display: swap; src: url('/wp-content/uploads/fonts/archivo-var-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'RT Literata'; font-style: normal; font-weight: 400 900; font-display: swap; src: url('/wp-content/uploads/fonts/literata-var-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'RT Archivo Fallback'; src: local('Arial'), local('Liberation Sans'); size-adjust: 106%; ascent-override: 88%; descent-override: 21%; line-gap-override: 0%; }
@font-face { font-family: 'RT Literata Fallback'; src: local('Georgia'), local('DejaVu Serif'); size-adjust: 104%; ascent-override: 92%; descent-override: 25%; line-gap-override: 0%; }
:root { --font-heading: 'RT Archivo', 'RT Archivo Fallback', Arial, sans-serif; --font-body: 'RT Literata', 'RT Literata Fallback', Georgia, serif; }
body { background-color: #FFFFFF; color: #3C3728; font-family: 'RT Literata', 'RT Literata Fallback', Georgia, serif; }
h1.e-heading-base, h2.e-heading-base, h3.e-heading-base, h4.e-heading-base, .e-button-base, .elementor-nav-menu a { font-family: 'RT Archivo', 'RT Archivo Fallback', Arial, sans-serif !important; font-stretch: 112%; }
h1.e-heading-base, h2.e-heading-base, h3.e-heading-base, h4.e-heading-base { color: #3C3728; letter-spacing: -0.01em; font-weight: 700; text-wrap: balance; }
h1.e-heading-base { font-size: clamp(2.2rem, 1.4rem + 2.6vw, 3.4rem); line-height: 1.06; } h2.e-heading-base { font-size: clamp(1.7rem, 1.3rem + 1.3vw, 2.35rem); line-height: 1.14; } h3.e-heading-base { font-size: 1.3rem; line-height: 1.3; }
p.e-paragraph-base, .e-paragraph-base, input, textarea, select { font-family: 'RT Literata', 'RT Literata Fallback', Georgia, serif; }
p.e-paragraph-base, .e-paragraph-base { color: #3C3728; font-size: 1.08rem; line-height: 1.72; max-width: 72ch; text-wrap: pretty; }
/* links: geen onderstreping; in lopende tekst onderscheid door kleur en gewicht, duidelijke hover en focus */
.e-paragraph-base a { color: #800000; font-weight: 700; text-decoration: none; transition: color .2s ease; } .e-paragraph-base a:hover { color: #645B43; }
a.e-button-base, .rt-actie, .elementor-nav-menu a { text-decoration: none !important; }
.e-paragraph-base:empty { display: none; }
/* de gevel: foto in een steil zadeldak-silhouet */
.rt-gevel, .rt-gevel img { clip-path: polygon(50% 0, 100% 40%, 100% 100%, 0 100%, 0 40%); }
.rt-gevelvoet { position: relative; }
/* de dekking: fijne verticale rietarcering op donkere vlakken */
.rt-dekking { background-image: repeating-linear-gradient(90deg, rgba(172,162,131,0.09) 0 1px, transparent 1px 9px); }
/* rietgangen (diensten) */
.rt-gang .rt-gang-pijl { transition: background-color .2s cubic-bezier(.23,1,.32,1), transform .25s cubic-bezier(.23,1,.32,1); }
.rt-gang:focus-visible .rt-gang-pijl { background-color: #B79B48; }
@media (hover: hover) and (pointer: fine) { .rt-gang:hover .rt-gang-pijl { background-color: #B79B48; transform: translateX(4px); } }
.rt-gang h3.e-heading-base { transition: color .2s ease; } .rt-gang:hover h3.e-heading-base { color: #800000; }
/* ladder: sport per stap */
.rt-sport { position: relative; } .rt-sport::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 6px; background-color: #B79B48; }
.rt-ladder > .e-flexbox:last-child .rt-sport, .rt-ladder > div:last-child .rt-sport { border-bottom: 0; }
/* skip-link */
.rt-skip { position: absolute !important; left: -9999px !important; top: 8px; z-index: 2000; }
.rt-skip:focus, .rt-skip:focus-visible { left: 16px !important; }
/* gesplitste header: desktopmenu's links en rechts van het logo, mobiel alleen het hoofdmenu */
@media (max-width: 1199px) { .rt-navdesk { display: none !important; } .rt-hdrrow { grid-template-columns: 1fr auto !important; } }
@media (min-width: 1200px) { .rt-navmob { display: none !important; } }
.rt-navdesk .elementor-nav-menu { flex-wrap: nowrap !important; } .rt-navdesk .elementor-nav-menu > li { flex: 0 0 auto; }
.rt-actie { white-space: nowrap; }
/* sticky header */
.elementor-location-header { position: sticky; top: 0; z-index: 1000; }
/* menu in de witte header */
.elementor-nav-menu--main .elementor-item { font-weight: 600 !important; font-size: 15px !important; color: #3C3728 !important; padding: 12px 8px !important; white-space: nowrap; background: transparent !important; }
.elementor-nav-menu--main .elementor-item:hover, .elementor-nav-menu--main .elementor-item:focus { padding: 12px 8px !important; color: #800000 !important; }
.elementor-nav-menu--main .elementor-item:before, .elementor-nav-menu--main .elementor-item:after { display: none !important; content: none !important; }
.elementor-nav-menu--main .elementor-item.elementor-item-active, .elementor-nav-menu--main li.current-menu-ancestor > .elementor-item { color: #800000 !important; }
.elementor-nav-menu--main .sub-menu { background: #FFFFFF !important; border-top: 3px solid #B79B48; border-radius: 0; padding: 8px !important; min-width: 280px; box-shadow: 0 18px 30px rgba(60,55,40,0.14); }
.elementor-nav-menu--main .sub-menu a.elementor-sub-item { font-size: 15px !important; font-weight: 600 !important; color: #3C3728 !important; padding: 10px 14px !important; background: transparent !important; border-radius: 0; }
.elementor-nav-menu--main .sub-menu a.elementor-sub-item:hover, .elementor-nav-menu--main .sub-menu a.elementor-sub-item.elementor-item-active { background: #EEEAE6 !important; color: #800000 !important; }
/* mobiel menu als paneel onder de header */
.elementor-widget-nav-menu { position: static !important; }
.elementor-menu-toggle { width: 48px; height: 48px; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background-color: #3C3728 !important; color: #FFFFFF !important; transition: background-color .2s cubic-bezier(.23,1,.32,1), transform .16s cubic-bezier(.23,1,.32,1); }
.elementor-menu-toggle:hover, .elementor-menu-toggle:focus, .elementor-menu-toggle.elementor-active { background-color: #645B43 !important; color: #FFFFFF !important; }
.elementor-menu-toggle:active { transform: scale(.97); }
.elementor-menu-toggle svg { width: 22px !important; height: 22px !important; fill: currentColor !important; }
nav.elementor-nav-menu--dropdown.elementor-nav-menu__container { position: fixed !important; left: 0 !important; right: 0 !important; top: var(--rt-header-h, 72px) !important; bottom: 0 !important; width: auto !important; height: auto !important; max-height: none !important; margin: 0 !important; z-index: 300; background-color: #FFFFFF !important; border-top: 4px solid #B79B48; padding: 12px 16px 40px !important; overflow-y: auto !important; }
nav.elementor-nav-menu--dropdown .elementor-nav-menu { width: 100% !important; }
.elementor-menu-toggle + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container { transform-origin: top center; transition: opacity .2s cubic-bezier(.23,1,.32,1), transform .25s cubic-bezier(.23,1,.32,1), visibility 0s linear .25s !important; }
.elementor-menu-toggle:not(.elementor-active) + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container { transform: translateY(-8px) !important; opacity: 0; visibility: hidden; max-height: none !important; }
.elementor-menu-toggle.elementor-active + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container { transform: none !important; opacity: 1; visibility: visible; transition: opacity .2s cubic-bezier(.23,1,.32,1), transform .25s cubic-bezier(.23,1,.32,1), visibility 0s !important; }
nav.elementor-nav-menu--dropdown .elementor-nav-menu li { border-bottom: 1px solid #E2DCDC !important; }
nav.elementor-nav-menu--dropdown .elementor-item { display: flex !important; align-items: center; }
nav.elementor-nav-menu--dropdown a.elementor-item { font-weight: 700 !important; font-size: 1.15rem !important; color: #3C3728 !important; padding: 14px 8px !important; border: 0 !important; justify-content: flex-start; text-align: left; background-color: transparent !important; }
nav.elementor-nav-menu--dropdown a.elementor-sub-item { font-weight: 600 !important; font-size: 1.02rem !important; padding: 11px 8px 11px 24px !important; }
nav.elementor-nav-menu--dropdown a.elementor-item:hover, nav.elementor-nav-menu--dropdown a.elementor-item.elementor-item-active, nav.elementor-nav-menu--dropdown a.elementor-item.highlighted { background-color: #EEEAE6 !important; color: #800000 !important; }
nav.elementor-nav-menu--dropdown .sub-arrow { padding: 10px 14px !important; margin-left: auto; }
nav.elementor-nav-menu--dropdown a.elementor-item:before, nav.elementor-nav-menu--dropdown a.elementor-item:after { display: none !important; }
@media (max-width: 767px) { :root { --rt-header-h: 64px; } }
/* accordion */
.e-accordion-item-icon { transition: transform .25s cubic-bezier(.23,1,.32,1), background-color .2s ease; }
details[open] > summary .e-accordion-item-icon { transform: rotate(180deg); background-color: #B79B48 !important; }
/* formulier */
.rt-form input::placeholder, .rt-form textarea::placeholder { color: #786E50; opacity: 1; }
.rt-form input, .rt-form textarea, .rt-form select { border: 2px solid #786E50 !important; }
.rt-form input:focus, .rt-form textarea:focus, .rt-form select:focus { border-color: #3C3728 !important; }
/* focus */
a:focus-visible, button:focus-visible, .e-button-base:focus-visible, summary:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible, .elementor-menu-toggle:focus-visible { outline: 3px solid #800000 !important; outline-offset: 3px; }
.rt-cta a:focus-visible, .rt-dekking a:focus-visible { outline-color: #FFFFFF !important; }
.rt-cta a:focus-visible { outline-color: #3C3728 !important; }
/* lange woorden op mobiel */
@media (max-width: 767px) { h1.e-heading-base, h2.e-heading-base, h3.e-heading-base { hyphens: auto; -webkit-hyphens: auto; overflow-wrap: break-word; } }
.e-button-base, .e-paragraph-base { max-width: 100%; min-width: 0; overflow-wrap: break-word; }
.e-svg-base svg { display: block; }
.rt-plaatsen { column-gap: 36px !important; }
.rt-slotzin { font-stretch: 112%; text-wrap: balance; max-width: none !important; }
.e-accordion-item-icon svg { width: 14px !important; height: 14px !important; }
@media (max-width: 767px) { h1.e-heading-base, h2.e-heading-base, h3.e-heading-base { hyphens: manual !important; -webkit-hyphens: manual !important; } h1.e-heading-base { font-size: 2rem; } h2.e-heading-base { font-size: 1.55rem; } .rt-hero h1.e-heading-base { font-size: 1.8rem; } }
#site-header .e-button-base, .rt-cta .e-button-base { white-space: nowrap; }
html { scroll-behavior: smooth; scroll-padding-top: 96px; }
/* reduced motion: alleen beweging uit, kleurovergangen blijven */
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation: none !important; } .e-button-base:active, .elementor-menu-toggle:active { transform: none !important; } .rt-gang:hover .rt-gang-pijl, details[open] > summary .e-accordion-item-icon { transform: none !important; } .elementor-nav-menu--main .elementor-item:after { transform: none !important; } .elementor-menu-toggle + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container { transform: none !important; } }/* End custom CSS */