/* Basis voor de inhoud uit de editor, op de site en in de editor.
   De vormgeving per element staat in tp-blokken.css (gegenereerd uit het ontwerp). */

/* Knoppen en afbeeldingen: de omhullende elementen van WordPress doen niet mee in de opmaak. */
.wp-block-buttons, .wp-block-button { display: contents; }
.wp-block-button .wp-block-button__link {
  background: none; color: inherit; border: 0; border-radius: 0; padding: 0; margin: 0;
  font: inherit; letter-spacing: inherit; text-decoration: none; box-shadow: none;
  width: auto; text-align: inherit; line-height: inherit; word-break: normal;
}
figure.wp-block-image { margin: 0; }

/* Een hele kaart klikbaar: de link in de titel wordt over de kaart uitgerekt. */
.tp-kaartlink { position: relative; }
.tp-kaartlink :is(p, h1, h2, h3, h4, h5, h6) a::after { content: ""; position: absolute; inset: 0; z-index: 1; }

/* Plek voor een foto die in het ontwerp nog leeg was. */
.tp-leeg-beeld { position: absolute; inset: 0; background: rgba(127, 127, 127, .08); }

mark.has-inline-color { background: transparent; }
details.wp-block-details > summary { cursor: pointer; }

/* Hoofdmenu: bij hover schuift de oranje lijn onder het item in (zoals bij de actieve pagina). */
header nav a { position: relative; }
header nav a::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: 6px; height: 2px; border-radius: 2px;
  background: #f2a93b; transform: scaleX(0); transform-origin: left center; transition: transform .22s ease;
}
header nav a:hover::after, header nav a:focus-visible::after { transform: scaleX(1); }
/* Niet in de donkere kopbalk van de klantnotities (links naar notities en offertes). */
header nav a[href="/offertes/"]::after, header nav a[href="/notities/"]::after { display: none; }
header nav a:has(> span + span)::after { display: none; }
header nav a:hover { opacity: 1; }
@media (prefers-reduced-motion: reduce) { header nav a::after { transition: none; } }

/* Topbar: op smalle schermen alleen sterren, score en telefoon. */
.tp-topbar-kort { display: none; }
@media (max-width: 640px) {
  .tp-topbar > div { padding: 7px 16px !important; justify-content: space-between !important; flex-wrap: nowrap !important; font-size: 13px; }
  .tp-topbar-mail, .tp-topbar-lang { display: none !important; }
  .tp-topbar-kort { display: inline; }
}

/* Header op smalle schermen: logo, zoeken en een hamburgermenu (uitklapvak onder de header). */
.tp-kop-hamburger { display: none !important; }
header .tp-kop-paneel-nav a::after { display: none; }
@media (min-width: 1001px) { .tp-kop-paneel { display: none !important; } }
@media (max-width: 1000px) {
  .tp-kop-rij { padding: 12px 20px !important; flex-wrap: nowrap !important; gap: 12px !important; }
  .tp-kop-rij > a img { height: 44px !important; }
  .tp-kop-nav, .tp-kop-cta { display: none !important; }
  .tp-kop-hamburger { display: flex !important; }
}
