.elementor-kit-5{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.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);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@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 { --po-orange:#FF7A00; --po-orange-dark:#FF7A00; --po-orange-light:#FF9A3D; --po-orange-tint:#FFF1E5; --po-anthracite:#2B2F33; --po-grey-text:#5B626A; --po-grey-soft:#C9CDD1; --po-grey-bg:#F4F5F6; --po-line:#E3E5E8; --po-white:#FFFFFF; --po-whatsapp:#25D366; --po-font:Roboto; --po-radius:12px; --po-radius-btn:8px; --po-fs-h1:clamp(40px, 5.6vw, 66px); --po-fs-h2:clamp(28px, 3.4vw, 40px); }
/* Start custom CSS *//* =========================================================
   PhysioOrange – site-brede aanvullende CSS
   Alleen wat Elementor niet native kan: hover-states van
   kind-elementen, lijn-iconen, accordion-icoon, mobiele tegels,
   sticky header en navigatie-styling.
   ========================================================= */

/* Lijn-iconen: geen vulling, alleen lijn */
.elementor .e-svg-base svg { fill: none; }
.elementor .po-icon-fill svg { fill: currentColor; stroke: none; }

/* Anker-offset voor sticky header + focus */
.elementor [id] { scroll-margin-top: 96px; }
.elementor :is(a, summary):focus-visible { outline: 3px solid var(--po-orange); outline-offset: 3px; border-radius: 4px; }
.elementor #termin a:focus-visible { outline-color: var(--po-anthracite); }
.elementor :is(.po-h2, .po-h3) { text-wrap: balance; }

/* Hero-titel: keyword-regel + oranje accent */
.elementor .po-hero-title span { display: block; margin-bottom: 18px; font-size: 14px; font-weight: 500; line-height: 1.4; letter-spacing: .1em; text-transform: uppercase; color: var(--po-orange-light); }
.elementor .po-hero-title em { font-style: normal; color: var(--po-orange); }
.elementor .po-hero-title br { display: none; }

/* Angebot-landingspagina's: hero-accent in knoporanje */
.elementor .pol-hero .pol-hero__title em { color: var(--po-orange); }

/* Knoppen: pijl schuift mee */
.elementor :is(.po-btn, .po-btn-outline) .po-icon { transition: transform .25s ease; }
.elementor :is(.po-btn, .po-btn-outline):not(.po-hdr-tel):hover .po-icon { transform: translateX(3px); }

/* Leistungen-tegels */
.elementor .po-tile:is(:hover, :focus-visible) .po-tile-desc { color: #D5D9DD; }
.elementor .po-tile:is(:hover, :focus-visible) .po-tile-more { color: var(--po-orange-light); }
.elementor .po-tile:hover .po-tile-ico { transform: scale(1.08); }
.elementor .po-tile:hover .po-arrow-sm { transform: translateX(3px); }

/* CTA-tegels */
.elementor .po-cta-tile:hover .po-small { color: #D5D9DD; }
.elementor .po-cta-tile:hover .po-circle-icon { background-color: rgba(255,122,0,.18); color: var(--po-orange); }

/* FAQ: plus draait naar kruisje */
.elementor .e-accordion-item-base[open] > summary .e-accordion-item-icon-base svg { transform: rotate(45deg); }

/* Mobiel: compacte lijstweergave voor Leistungen */
@media (max-width: 767px) {
  .elementor .po-tile { position: relative; display: grid; grid-template-columns: 32px minmax(0, 1fr) 16px; grid-template-rows: auto auto; align-items: center; gap: 2px 14px; }
  .elementor .po-tile:hover, .elementor .po-cta-tile:hover { transform: none; }
  .elementor .po-tile .po-tile-ico { grid-row: 1 / span 2; }
  .elementor .po-tile .po-tile-title, .elementor .po-tile .po-tile-desc { grid-column: 2; }
  .elementor .po-tile .po-tile-desc { font-size: 14.5px; line-height: 1.45; }
  .elementor .po-tile .po-tile-more { grid-column: 3; grid-row: 1 / span 2; margin: 0; padding: 0; }
  .elementor .po-tile .po-tile-more-txt { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
}

/* =========================================================
   HEADER
   Desktop:  [logo]  —  menu (gecentreerd)  —  [☎ nummer] [Termin vereinbaren]
   Laptop ≤1240: telefoonknop wordt icoon-knop (nummer blijft voor screenreaders)
   Tablet ≤1024: [logo] ........ [☎] [Termin vereinbaren] [☰]
   Mobiel ≤767:  [logo] ........ [☎] [Termin] [☰]
   ========================================================= */
.elementor-location-header { position: sticky; top: 0; z-index: 100; }
.admin-bar .elementor-location-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .elementor-location-header { top: 46px; } }

/* V4-flexboxen erven van de V3-klasse .e-con standaard width:100%;
   in de header horen knoppen en groepen op inhoud-breedte te staan */
.elementor-location-header .e-con.e-atomic-element { --width: auto; }

/* Logo: krimpt nooit */
.elementor.elementor-location-header .e-image-link-base { flex: 0 0 auto; line-height: 0; }

/* Menu: vult de ruimte tussen logo en knoppen, items gecentreerd */
.elementor-location-header .elementor-widget-nav-menu.elementor-widget { flex: 1 1 auto; min-width: 0; margin: 0; }
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu { justify-content: center; gap: 36px; flex-wrap: nowrap; }
.elementor-location-header .elementor-widget-nav-menu.elementor-widget .elementor-nav-menu--main .elementor-item { position: relative; margin: 0; padding: 8px 0; font-family: var(--po-font); font-size: 16px; font-weight: 500; line-height: 1.4; white-space: nowrap; color: var(--po-anthracite); }
.elementor-location-header .elementor-widget-nav-menu.elementor-widget .elementor-nav-menu--main .elementor-item:is(:hover, :focus, .elementor-item-active, .highlighted) { color: var(--po-anthracite); fill: var(--po-anthracite); }
.elementor-location-header .elementor-widget-nav-menu.elementor-widget .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item::before,
.elementor-location-header .elementor-widget-nav-menu.elementor-widget .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item::after { height: 2px; background-color: var(--po-anthracite); }

/* CTA-knoppen: nooit afbreken, telefoon-icoon oranje */
.elementor.elementor-location-header :is(.po-hdr-tel, .po-btn) { white-space: nowrap; flex: 0 0 auto; }
.elementor.elementor-location-header .po-hdr-tel .po-icon { color: var(--po-orange); }

/* Laptop: minder ruimte → menu compacter, telefoon als icoon-knop */
@media (max-width: 1240px) {
  .elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu { gap: 24px; }
  .elementor.elementor-location-header .po-hdr-tel { width: 44px; padding: 0; }
  .elementor.elementor-location-header .po-hdr-tel-txt { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
}
@media (max-width: 767px) {
  .elementor.elementor-location-header .po-hdr-tel { width: 40px; }
  .elementor.elementor-location-header .po-hdr-termin-txt span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
}

/* Tablet/mobiel: burger helemaal rechts */
@media (max-width: 1024px) {
  .elementor-location-header .elementor-widget-nav-menu.elementor-widget { order: 3; flex: 0 0 auto; }
}
.elementor-location-header .elementor-widget-nav-menu .elementor-menu-toggle { width: 44px; height: 44px; padding: 0; justify-content: center; border-radius: var(--po-radius-btn); background: transparent; color: var(--po-anthracite); font-size: 26px; }
.elementor-location-header .elementor-widget-nav-menu .elementor-menu-toggle:hover { background: var(--po-grey-bg); }
@media (max-width: 767px) { .elementor-location-header .elementor-widget-nav-menu .elementor-menu-toggle { width: 40px; height: 40px; font-size: 24px; } }

/* Dropdown */
.elementor-location-header .elementor-widget-nav-menu.elementor-widget .elementor-nav-menu--dropdown { background: var(--po-white); border-top: 1px solid var(--po-line); box-shadow: 0 12px 24px rgba(43,47,51,.08); margin-top: 0; }
.elementor-location-header .elementor-widget-nav-menu.elementor-widget .elementor-nav-menu--dropdown .elementor-item { padding: 14px 24px; font-family: var(--po-font); font-size: 17px; font-weight: 500; color: var(--po-anthracite); background: transparent; border-bottom: 1px solid var(--po-line); }
.elementor-location-header .elementor-widget-nav-menu.elementor-widget .elementor-nav-menu--dropdown .elementor-item:is(:hover, :focus, .elementor-item-active, .highlighted) { background: var(--po-anthracite); color: var(--po-white); }
@media (max-width: 767px) { .elementor-location-header .elementor-widget-nav-menu.elementor-widget .elementor-nav-menu--dropdown .elementor-item { padding: 14px 16px; } }

@media (prefers-reduced-motion: reduce) {
  .elementor * { transition: none !important; }
}/* End custom CSS */