:root {
  --global-palette1:#2B6CB0;
  --global-palette2:#215387;
  --global-palette3:#1A202C;
  --global-palette4:#2D3748;
  --global-palette5:#4A5568;
  --global-palette6:#718096;
  --global-palette7:#EDF2F7;
  --global-palette8:#F7FAFC;
  --global-palette9:#ffffff;
  --global-content-width:1290px;
  --brand-header-bg:#191f3b;
  --brand-cta-bg:#21d05f;
  --brand-cta-color:#ffffff;
}

/* header ------------------------------------------------------- */
#masthead,
#masthead .kadence-sticky-header.item-is-fixed:not(.item-at-start):not(.site-header-row-container):not(.site-main-header-wrap),
#masthead .kadence-sticky-header.item-is-fixed:not(.item-at-start) > .site-header-row-container-inner { background:#ffffff; }
.site-main-header-wrap .site-header-row-container-inner { background:var(--brand-header-bg); }
.site-branding a.brand img { max-width:150px; }
@media (max-width:1024px) { .site-branding a.brand img { max-width:120px; } }
@media (max-width:767px)  { .site-branding a.brand img { max-width:80px;  } }
.site-branding { padding:0; }
.header-navigation .header-menu-container > ul > li > a { color:#ffffff; white-space:nowrap; }
.header-navigation .header-menu-container > ul > li > a:hover { color:var(--brand-cta-bg); }
/* Kadence ships .menu with flex-wrap:wrap + justify-content:center, so a menu
   one item too wide (German) drops that item onto a second, centred row.
   Keep the primary nav on one line, right-aligned, in every language. */
#primary-menu { flex-wrap:nowrap; justify-content:flex-end; flex-grow:0; }
.site-header-main-section-right { flex-wrap:nowrap; }
@media (min-width:1025px) and (max-width:1300px) {
  .header-navigation .header-menu-container > ul > li > a {
    font-size:14px; padding-left:calc(0.8em / 2); padding-right:calc(0.8em / 2); }
  #main-header .header-button { font-size:14px; padding:.5em 1em; }
}
.header-navigation .header-menu-container ul ul.sub-menu {
  background:var(--global-palette3); box-shadow:0 2px 13px 0 rgba(0,0,0,.1); }
.header-navigation .header-menu-container ul ul li.menu-item > a {
  width:200px; padding-top:1em; padding-bottom:1em; color:var(--global-palette8); font-size:12px; }
.header-navigation .header-menu-container ul ul li.menu-item > a:hover {
  color:var(--global-palette9); background:var(--global-palette4); }
.header-navigation .pll-parent-menu-item > a img,
.header-navigation .pll-parent-menu-item ul img { display:inline-block; vertical-align:middle; }
.header-navigation .pll-parent-menu-item ul li a { display:flex; align-items:center; gap:.4em; }
#main-header .header-button,
.mobile-header-button-wrap .mobile-header-button-inner-wrap .mobile-header-button {
  font-style:normal; font-weight:500; border-radius:12px; white-space:nowrap;
  background:var(--brand-cta-bg); color:var(--brand-cta-color);
  box-shadow:0 0 0 -7px rgba(0,0,0,0); }
#main-header .header-button:hover { box-shadow:0 15px 25px -7px rgba(0,0,0,.1); }
.mobile-toggle-open-container .menu-toggle-open,
.mobile-toggle-open-container .menu-toggle-open:focus {
  color:var(--global-palette9); padding:.4em .6em; font-size:14px; }
.mobile-toggle-open-container .menu-toggle-open .menu-toggle-icon { font-size:20px; }

/* hero --------------------------------------------------------- */
.content-title-style-above .page-hero-section .entry-hero-container-inner {
  background-repeat:no-repeat; background-size:cover; background-position:center;
  min-height:300px; }
.content-title-style-above .page-hero-section .entry-hero-container-inner .entry-header {
  justify-content:top; }
.entry-hero .entry-title { margin-top:20px; color:#ffffff; }

/* body --------------------------------------------------------- */
body { background:var(--global-palette8); }
.content-bg, body.content-style-unboxed .site { background:var(--global-palette9); }

/* footer ------------------------------------------------------- */
.site-middle-footer-inner-wrap,
.site-top-footer-inner-wrap { padding-top:30px; padding-bottom:30px; grid-column-gap:30px; grid-row-gap:30px; }
.site-bottom-footer-inner-wrap { padding-top:30px; padding-bottom:30px; grid-column-gap:30px; }
.site-footer .widget_nav_menu ul { list-style:none; margin:0; padding:0; }
.site-footer .widget_nav_menu li { margin:0 0 .6em; }
.site-footer .widget_nav_menu a { color:var(--global-palette4); text-decoration:none; }
.site-footer .widget_nav_menu a:hover { color:var(--global-palette1); }
.site-bottom-footer-inner-wrap { text-align:center; font-size:14px; color:var(--global-palette5); }

.teaser-card { background:#fff; border:1px solid var(--global-palette7);
  border-radius:4px; padding:22px 24px; height:100%; }
.teaser-card h3 { margin:0 0 .6em; font-size:20px; }
.teaser-card p { font-size:14px; color:var(--global-palette5); margin:0 0 .8em; }
.teaser-card a { font-size:14px; }

.footer-social-inner-wrap { display:flex; gap:.3em; }
.footer-social-inner-wrap .social-button {
  display:inline-flex; align-items:center; justify-content:center;
  width:34px; height:34px; border-radius:3px;
  background:var(--global-palette3); color:#fff; text-decoration:none; }
.footer-contact-list { margin:0; padding-left:1.1em; font-size:14px; }

/* breadcrumbs --------------------------------------------------- */
.kadence-breadcrumbs { max-width:var(--global-content-width); margin:14px auto 0; padding:0 1.5rem; }
.breadcrumb-list { list-style:none; display:flex; flex-wrap:wrap; gap:.4em; margin:0; padding:0;
  font-size:13px; color:rgba(255,255,255,.75); }
.breadcrumb-list li + li:before { content:"/"; margin-right:.4em; opacity:.55; }
.breadcrumb-list a { color:rgba(255,255,255,.85); text-decoration:none; }
.breadcrumb-list a:hover { color:#fff; text-decoration:underline; }
.breadcrumb-list [aria-current] { color:#fff; }


/* tile grid ----------------------------------------------------- */
.tile-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:14px; margin:24px 0; }
.tile-grid .wp-block-column { flex-basis:auto !important; margin:0 !important; }
.tile-grid figure { margin:0; }
.tile-grid img { width:100%; height:auto; border-radius:10px; display:block;
  transition:transform .15s ease; }
.tile-grid a:hover img { transform:translateY(-3px); }
@media (max-width:900px) { .tile-grid { grid-template-columns:repeat(3,1fr); } }
@media (max-width:480px) { .tile-grid { grid-template-columns:repeat(2,1fr); } }

/* key-facts table + callouts ------------------------------------ */
.key-facts { width:100%; border-collapse:collapse; margin:24px 0; font-size:15px; }
.key-facts th, .key-facts td { border:1px solid var(--global-palette7); padding:10px 14px;
  text-align:left; vertical-align:top; }
.key-facts thead th { background:var(--global-palette7); font-weight:600; }
.key-facts tbody th { background:var(--global-palette8); font-weight:600; }
.wp-block-table { overflow-x:auto; }
.note-box { border-left:4px solid var(--global-palette1); background:var(--global-palette8);
  padding:14px 18px; margin:22px 0; border-radius:0 6px 6px 0; font-size:15px; }
.note-box.is-warning { border-left-color:#f5a524; }

/* FAQ accordion ------------------------------------------------- */
.schema-faq-question { cursor:pointer; position:relative; padding-right:1.6em; }
.schema-faq-question:after { content:"\002B"; position:absolute; right:0; font-weight:400;
  color:var(--global-palette6); }
.schema-faq-question.active:after { content:"\2212"; }

/* 404 ---------------------------------------------------------- */
.error-404 { text-align:center; padding:80px 20px; }
.error-404 h2 { margin-bottom:.4em; }
